Внутреннее поведение программного компонента AUTOSAR реализуется набором выполняемых сущностей (runnables). Runnable - это последовательность операций, предоставляемых компонентом, которая может быть запущена средой во время выполнения (RTE). Компонент конфигурирует событие, чтобы активировать каждый запуск - например, событие синхронизации, полученные данные, запрос клиента, изменение режима, запуск или завершение работы компонента или триггер.
В Simulink®можно настроить эти типы событий AUTOSAR.
| Тип события | Рабочий процесс | Пример |
|---|---|---|
DataReceivedEvent | Коммуникация отправитель-получатель (S-R) | Сконфигурируйте события для активации с возможностью выполнения |
DataReceiveErrorEvent | Коммуникация отправитель-получатель (S-R) | Сконфигурируйте порт приемника AUTOSAR для DataReceiveErrorEvent |
ExternalTriggerOccurredEvent | Связь с событием внешнего триггера | Сконфигурируйте приемник для передачи событий внешнего триггера AUTOSAR |
InitEvent | Активация инициализации, выполняемой | Сконфигурируйте AUTOSAR Initialization Runnable (R4.1) |
ModeSwitchEvent | Связь переключателя режима (M-S) | Сконфигурируйте коммуникацию режим-коммутатор AUTOSAR |
OperationInvokedEvent | Коммуникация клиент-сервер (C-S) | Сконфигурируйте коммуникацию клиент-сервер AUTOSAR |
TimingEvent | Периодическая активация runnable | Сконфигурируйте AUTOSAR TimingEvent для периодического выполнения |
Чтобы настроить выполнение AUTOSAR в Simulink:
Откройте модель, которая сконфигурирована для генерации кода AUTOSAR. Этот пример использует копию примера модели с возможностью записи autosar_swc.
В модели создайте или идентифицируйте подсистему или функцию Simulink корневого уровня, которая реализует последовательность операций. Подсистема или функция должны сгенерировать функцию точки входа в коде С В autosar_swcПодсистема SS1 генерирует пошаговую функцию модели на основе скорости Runnable_1s.

Создайте или идентифицируйте AUTOSAR, на который будет отображена функция точки входа Simulink. Откройте словарь AUTOSAR. Разверните AtomicComponents, разверните компонент и выберите Runnables вид. Если необходимо создать новую версию AUTOSAR, щелкните на знаке плюс. Модель autosar_swc содержит периодическую выполняемую Runnable_1s.
Выберите строку, содержащую возможность выполнения, и сконфигурируйте ее свойства, включая имя и символ. Заданное имя символа выполнения AUTOSAR экспортируется в описаниях ARXML и коде С Для сервера AUTOSAR, выполняемого, задайте свойство runnable canBeInvokedConcurrently для определения необходимости применения ограничений параллелизма. Для nonserver runnables, оставьте canBeInvokedConcurrently установлено на false. Дополнительные сведения см. в разделе Ограничения параллелизма для выполняемых функций AUTOSAR Server.
Сконфигурируйте событие, чтобы активировать runnable. Перейдите на панель Events для выбранного runnable. Если необходимо создать событие, нажмите Add Event. Введите имя события и установите тип события.
Шаги настройки события зависят от типа события. Если событие основывается на коммуникационном интерфейсе, таком как полученные данные (отправитель-получатель) или запрос клиента (клиент-сервер), необходимо сначала сконфигурировать коммуникационный интерфейс перед конфигурированием события.
В модель autosar_swc, периодическое выполняемое Runnable_1s активируется посредством TimingEvent именованные Event_1s.

Сопоставьте функцию точки входа Simulink с выполняемой функцией AUTOSAR. Откройте редактор Отображения и выберите вкладку Functions. Для autosar_swc модели, выберите периодическую функцию с шагом расчета 1s и сопоставьте ее с выполняемой AUTOSAR Runnable_1s.

Чтобы увидеть результаты выполнения AUTOSAR и строения события в описаниях ARXML и коде С, создайте модель.
Если модель программного компонента AUTOSAR содержит несколько исполняемых элементов, можно сконфигурировать порядок выполнения. Для получения дополнительной информации см. раздел «Настройка порядка выполнения запуска AUTOSAR».