Используйте модели, подсистемы и функции Simulink ® для моделирования компонентов атомарного программного обеспечения AUTOSAR и их исполняемых объектов.
Открыть пример модели autosar_swc.slx.
open_system('autosar_swc')Модель показывает реализацию атомарного программного компонента AUTOSAR (ASWC). Две периодические таблицы выполнения, Runnable_1s и Runnable_2s, моделируются с несколькими частотами выборки: 1 секунда (In1_1s) и 2 секунды (In2_2s). Для максимизации эффективности выполнения модель настроена на многозадачность.
Модель включает блок Initialize Function, который инициализирует интегратор в Runnable_2s до значения 1.
Чтобы отобразить закодированные цветом частоты дискретизации с аннотациями и легендой, на вкладке Отладка (Debug) выберите Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors).

Соответствующие настройки параметров конфигурации модели
Решатель > Тип имеет значение Fixed-step.
Решатель > Решатель имеет значение discrete (no continuous states).
Решатель > Фиксированный размер шага (время основной выборки): auto.
Решатель > Рассматривать каждую дискретную скорость как отдельную выбранную задачу.
Планирование
В окне модели включите цветовое кодирование времени выборки, выбрав вкладку Отладка (Debug) и выбрав Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors). Условное обозначение времени выборки показывает неявную группировку скорости. Красный - самая быстрая дискретная скорость. Зеленый цвет представляет вторую самую быструю дискретную скорость. Желтый цвет представляет смесь двух скоростей.
Поскольку модель имеет несколько скоростей и выбран параметр Решатель (Solver) Рассматривать каждую дискретную скорость как отдельную задачу, модель моделируется в многозадачном режиме. Модель обрабатывает переход скорости для In2_2s явно с блоком Rate Transition.
Для упрощения интеграции в среду выполнения AUTOSAR очищается параметр блока «Rate Transition».
Созданный код для спецификации модели подрейтов в модели. В этом примере скорость для блока Inport In2_2sзеленая скорость является субскоростью. Созданный код правильно переносит данные между задачами, которые выполняются с различными скоростями.
Создание кода и отчета (встроенный кодер)
При наличии программного обеспечения Simulink Coder и Embedded Coder создайте код и отчет о создании кода. Пример модели создает отчет.
Созданный код соответствует AUTOSAR, что позволяет запланировать код в среде выполнения AUTOSAR.
Просмотреть созданный код
В отчете по созданию кода просмотрите созданный код.
autosar_swc.c содержит точки входа для кода, реализующего алгоритм модели. Этот файл содержит код планирования скорости.
autosar_swc.h объявляет структуры данных модели и открытый интерфейс с точками входа модели и структурами данных.
autosar_swc_private.h содержит локальные define константы и локальные данные, необходимые для модели и подсистем.
autosar_swc_types.h предоставляет форвардные объявления для структуры данных модели в реальном времени и структуры данных параметров.
rtwtypes.h определяет типы данных, структуры и макросы, необходимые для созданного кода.
autosar_swc_component.arxml, autosar_swc_datatype.arxml, autosar_swc_implementation.arxml, и autosar_swc_interface.arxml содержат элементы и объекты, представляющие программные компоненты, порты, интерфейсы, типы данных и пакеты AUTOSAR. Файлы ARXML интегрируются в среду выполнения AUTOSAR. Файлы ARXML можно импортировать в среду Simulink с помощью средства импорта AUTOSAR ARXML.
Compiler.h, Platform_Types.h, Rte_ASWC.h, Rte_Type.h, и Std_Types.h содержат заглушки функций среды выполнения AUTOSAR. Эти файлы используются для тестирования сгенерированного кода в Simulink, например, при моделировании тестируемого компонента ПО в цикле (SIL) или процессора в цикле (PIL).
Интерфейс кода
Откройте и просмотрите отчет по кодовому интерфейсу. Эта информация записывается в файлы ARXML. Генератор среды выполнения использует описания ARXML для сопряжения кода с средой выполнения AUTOSAR.
Входные порты:
Требуется порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Требуется порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Функции точки входа:
Инициализация функции начальной точки, void Runnable_Initialize(void). При запуске вызовите эту функцию один раз.
Вывод и обновление функции начального уровня, void Runnable_1s(void). Периодически вызывайте эту функцию с самой высокой скоростью в модели. Для этой модели вызовите функцию каждую секунду. Чтобы обеспечить выполнение в реальном времени, подключите эту функцию к таймеру.
Вывод и обновление функции начального уровня, void Runnable_2s(void). Периодически вызывайте эту функцию со второй самой быстрой скоростью в модели. Для этой модели вызовите функцию каждые 2 секунды. Чтобы обеспечить выполнение в реальном времени, подключите эту функцию к таймеру.
Выходные порты:
Предоставить порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Предоставить порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Открыть пример модели autosar_swc_fcncalls.slx.
open_system('autosar_swc_fcncalls')Модель показывает реализацию атомарного программного компонента AUTOSAR (ASWC). Модель использует асинхронный функциональный вызов с возможностью выполнения, Runnable_Trigger, которое инициируется внешним событием. Модель также включает периодическую управляемую скорость, Runnable_1s. Блоки Rate Transition представляют собой переменные, допускающие межпроходное переключение (IRV).
Этот подход используется для моделирования бета-архитектуры модели комплексного управления JMAAB. В бета-моделировании типа JMAAB на верхнем уровне управляющей модели слои функций размещаются над слоями планирования.
Модель включает блок Initialize Function, который инициализирует единичную задержку в Runnable_1s до значения 0.
Чтобы отобразить закодированные цветом частоты дискретизации с аннотациями и легендой, на вкладке Отладка (Debug) выберите Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors).

Соответствующие настройки параметров конфигурации модели
Решатель > Тип имеет значение Fixed-step.
Решатель > Решатель имеет значение discrete (no continuous states).
Решатель > Фиксированный размер шага (время основной выборки), установленный равным 1.
Решатель > Обработка каждой дискретной скорости как отдельной очищенной задачи.
Планирование
В окне модели включите цветовое кодирование времени выборки, выбрав вкладку Отладка (Debug) и выбрав Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors). Условное обозначение времени выборки показывает неявную группировку скорости. Красный цвет представляет дискретную скорость. Пурпурный представляет асинхронный триггер функции. Желтый цвет представляет собой смесь двух скоростей.
Асинхронный триггер запускается с асинхронными скоростями (параметр Sample time type блока function-call подсистемы Trigger имеет значение | triggered]), в то время как периодический триггер выполняется с заданной дискретной скоростью. Сгенерированный код управляет тарифами с использованием предположений однозадачности. Для моделей с одной дискретной скоростью генератор кода не создает код планирования, поскольку существует только одна скорость для выполнения. Этот метод используется для односкоростного приложения при наличии одного периодического запуска.
Модель обрабатывает переходы между асинхронной и дискретной скоростями подключенных исполняемых объектов с помощью двух блоков Rate Transition. Для упрощения интеграции в среду выполнения AUTOSAR очищается параметр блока «Rate Transition».
Создание кода и отчета (встроенный кодер)
При наличии программного обеспечения Simulink Coder и Embedded Coder создайте код и отчет о создании кода. Пример модели создает отчет.
Созданный код соответствует AUTOSAR, что позволяет запланировать код в среде выполнения AUTOSAR.
Просмотреть созданный код
В отчете по созданию кода просмотрите созданный код.
autosar_swc_fcncalls.c содержит точки входа для кода, реализующего алгоритм модели. Этот файл содержит код планирования скорости.
autosar_swc_fcncalls.h объявляет структуры данных модели и открытый интерфейс с точками входа модели и структурами данных.
autosar_swc_fcncalls_private.h содержит локальные define константы и локальные данные, необходимые для модели и подсистем.
autosar_swc_fcncalls_types.h предоставляет форвардные объявления для структуры данных модели в реальном времени и структуры данных параметров.
rtwtypes.h определяет типы данных, структуры и макросы, необходимые для созданного кода.
autosar_swc_fcncalls_component.arxml, autosar_swc_fcncalls_datatype.arxml, autosar_swc_fcncalls_implementation.arxml, и autosar_swc_fcncalls_interface.arxml содержат элементы и объекты, представляющие программные компоненты, порты, интерфейсы, типы данных и пакеты AUTOSAR. Файлы ARXML интегрируются в среду выполнения AUTOSAR. Файлы ARXML можно импортировать в среду Simulink с помощью средства импорта AUTOSAR ARXML.
Compiler.h, Platform_Types.h, Rte_ASWC.h, Rte_Type.h, и Std_Types.h содержат заглушки функций среды выполнения AUTOSAR. Эти файлы используются для тестирования сгенерированного кода в Simulink, например, при моделировании тестируемого компонента ПО в цикле (SIL) или процессора в цикле (PIL).
Интерфейс кода
Откройте и просмотрите отчет по кодовому интерфейсу. Эта информация записывается в файлы ARXML. Генератор среды выполнения использует описания ARXML для сопряжения кода с средой выполнения AUTOSAR.
Входной порт:
Требуется порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Функции точки входа:
Инициализация функции начальной точки, void Runnable_Initialize(void). При запуске вызовите эту функцию один раз.
Функция Simulink, void Runnable_1s(void). Периодически вызывайте эту функцию с самой высокой скоростью в модели. Для этой модели вызовите функцию каждую секунду. Чтобы обеспечить выполнение в реальном времени, подключите эту функцию к таймеру.
Экспортированная функция, void Runnable_Trigger(void). Вызовите эту функцию в любое время из внешнего триггера.
Выходной порт:
Предоставить порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Открыть пример модели autosar_swc_slfcns.slx.
open_system('autosar_swc_slfcns')Модель показывает реализацию атомарного программного компонента AUTOSAR (ASWC). Модель включает в себя одну периодическую скорость, выполняемую, Runnable_1s, которая использует подсистему вызова функций, SS1. Модель также включает функцию Simulink, readData, для предоставления значения (CurVal) клиентам, которые его запрашивают.
Модель включает блок Initialize Function, который инициализирует единичную задержку в подсистеме RollingCounter до значения 0.
Чтобы отобразить закодированные цветом частоты дискретизации с аннотациями и легендой, на вкладке Отладка (Debug) выберите Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors).

Используйте подсистемы вызова функций:
Когда трудно или невозможно указать системные события в модели Simulink.
Для обеспечения сложного многоскоростного планирования запускаемых объектов. Моделирование каждой скорости как отдельной подсистемы вызова функций.
Соответствующие настройки параметров конфигурации модели
Решатель > Тип имеет значение Fixed-step.
Решатель > Решатель имеет значение discrete (no continuous states).
Решатель > Фиксированный размер шага (время основной выборки), установленный равным 1.
Решатель > Рассматривать каждую дискретную скорость как отдельную выбранную задачу.
Планирование
В окне модели включите цветовое кодирование времени выборки, выбрав вкладку Отладка (Debug) и выбрав Диагностика (Diagnostics) > Информационные наложения (Information Overlays) > Цвета (Colors). Условное обозначение времени выборки показывает неявную группировку скорости. Красный цвет обозначает дискретную скорость. Magenta определяет скорости, унаследованные от экспортированных функций, указывая, что их выполнение находится вне контекста планирования Simulink.
Среда выполнения должна планировать сгенерированный код функции и обрабатывать перенос данных между функциями.
Создание кода и отчета (встроенный кодер)
При наличии программного обеспечения Simulink Coder и Embedded Coder создайте код и отчет о создании кода. Пример модели создает отчет.
Генератор кода:
Создает функцию AUTOSAR, выполняемую для подсистемы вызова функций на корневом уровне модели.
Реализует сигнальные соединения между выполняемыми модулями в виде межпроходных переменных AUTOSAR (IRV).
Созданный код соответствует AUTOSAR, что позволяет запланировать код в среде выполнения AUTOSAR.
Просмотреть созданный код
В отчете по созданию кода просмотрите созданный код.
autosar_swc_slfcns.c содержит точки входа для кода, реализующего алгоритм модели. Этот файл содержит код планирования скорости.
autosar_swc_slfcns.h объявляет структуры данных модели и открытый интерфейс с точками входа модели и структурами данных.
autosar_swc_slfcns_private.h содержит локальные define константы и локальные данные, необходимые для модели и подсистем.
autosar_swc_slfcns_types.h предоставляет форвардные объявления для структуры данных модели в реальном времени и структуры данных параметров.
readData_private.h содержит локальные define константы и локальные данные, требуемые функцией Simulink.
rtwtypes.h определяет типы данных, структуры и макросы, необходимые для созданного кода.
autosar_swc_slfcns_component.arxml, autosar_swc_slfcns_datatype.arxml, autosar_swc_slfcns_implementation.arxml, и autosar_swc_slfcns_interface.arxml содержат элементы и объекты, представляющие программные компоненты, порты, интерфейсы, типы данных и пакеты AUTOSAR. Файлы ARXML интегрируются в среду выполнения AUTOSAR. Файлы ARXML можно импортировать в среду Simulink с помощью средства импорта AUTOSAR ARXML.
Compiler.h, Platform_Types.h, Rte_ASWC.h, Rte_Type.h, и Std_Types.h содержат заглушки функций среды выполнения AUTOSAR. Эти файлы используются для тестирования сгенерированного кода в Simulink, например, при моделировании тестируемого компонента ПО в цикле (SIL) или процессора в цикле (PIL).
Интерфейс кода
Откройте и просмотрите отчет по кодовому интерфейсу. Эта информация записывается в файлы ARXML. Генератор среды выполнения использует описания ARXML для сопряжения кода с средой выполнения AUTOSAR.
Входные порты:
Требуется порт, интерфейс: отправитель-получатель типа uint16-T 1 размерности
Требуется порт, интерфейс: отправитель-получатель типа real-T 1 размерности
Функции точки входа:
Инициализация функции начальной точки, void Runnable_Init(void). При запуске вызовите эту функцию один раз.
Экспортированная функция, void Runnable_1s(void). Вызывайте эту функцию периодически, каждую секунду.
Функция Simulink, Std_ReturnType readData(real_T Data[2]). Вызовите эту функцию в любое время.
Выходные порты:
Предоставить порт, интерфейс: отправитель-получатель типа uint16-T 1 размерности