Для Классических компонентов программного обеспечения Платформы AUTOSAR, которые содержат несколько runnables, AUTOSAR, Синхронизация спецификации Расширений задает ограничения порядка выполнения. Эти ограничения задают порядок выполнения выполнимых сущностей в компоненте. Можно просмотреть и управлять ограничениями на уровне компонента или, в моделях архитектуры AUTOSAR, на уровне Шины виртуальной функции (VFB).
В Simulink® вы можете:
Компонент импорта - и ограничения порядка выполнения VFB-уровня из файлов ARXML.
Откройте компонент AUTOSAR или модель архитектуры и используйте Редактор Расписания, чтобы изменить порядок выполнения runnables.
Компонент экспорта - и ограничения порядка выполнения VFB-уровня к файлам ARXML.
В модели компонента обновите ограничения порядка выполнения путем импорта изменений ARXML.
В модели компонента программного обеспечения AUTOSAR используйте Редактор Расписания, чтобы запланировать и задать порядок выполнения runnables, принадлежащего тому компоненту. Редактор Расписания отображает разделы в модели, связях данных между ними и порядке тех разделов. В моделях компонента AUTOSAR разделы соответствуют выполнимым сущностям, которые выполняются независимо. В редакторе вы можете:
Просмотрите графическое представление runnables как разделы в компоненте AUTOSAR.
Создайте разделы и сопоставьте их с AUTOSAR runnables.
Непосредственно задайте порядок выполнения runnables.
Редактор Расписания поддерживает несколько стилей моделирования, включая моделирование основанного на уровне и экспорта функций. Для получения дополнительной информации смотрите Используя Редактор Расписания и Создайте Разделы. Можно также использовать Редактор Расписания в моделировании архитектуры AUTOSAR. Смотрите Конфигурируют Планирование AUTOSAR и Симуляцию.
В автономной модели компонента AUTOSAR, чтобы открыть Редактор Расписания, открывают вкладку Modeling и выбирают Schedule Editor. Для runnables в модели компонента AUTOSAR Редактор Расписания первоначально отображает неявные разделы, созданные на основе стиля моделирования компонента. Можно просмотреть и сконфигурировать неявные разделы или создать явные разделы и сопоставить их с новым или существующим AUTOSAR runnables.
Просмотреть и сконфигурировать неявные разделы:
Откройте модель autosar_swc_expfcns
в качестве примера AUTOSAR, то, которое использует Simulink, экспортировало функции в модель AUTOSAR runnables.
Откройте вкладку Modeling и выберите Schedule Editor. Редактор Расписания отображает периодические экспортируемые функции, которые сопоставляют с AUTOSAR runnables как неявные разделы.
Используйте средства управления редактором, чтобы переупорядочить разделы. Например, в разделе Order, кликните по стрелкам-указателям или перетащите записи таблицы.
Создать явный раздел в компоненте программного обеспечения AUTOSAR:
Откройте модель
в качестве примера AUTOSARmatlabroot
, какие модели периодические runnables, которые имеют несколько частот дискретизации./help/toolbox/autosar/examples/mAutosarMultitasking.slx
Первоначально, из Редактора Расписания перспектива, модель содержит неявные разделы D1, D2, D3 и D4.
Чтобы создать раздел, откройте диалоговое окно параметров блоков для подсистемы SS1. С Treat as atomic unit выбранный, установленный параметр Schedule as к Periodic partition
. Задайте имя раздела, такое как P1 и шаг расчета 1. Нажмите Apply. Обновите диаграмму модели.
Откройте вкладку Modeling и выберите Schedule Editor. Редактор Расписания отображает явный периодический раздел в модели.
В окне модели откройте редактор Отображений Кода и выберите вкладку Functions. Сопоставьте функцию раздела P1 с выполнимым AUTOSAR.
Если настройка не содержит выполнимое AUTOSAR, чтобы сопоставить, добавьте выполнимое. Откройте Словарь AUTOSAR, представление Runnables, и нажмите кнопку Add. В данном примере создайте выполнимый Runnable_P1
. Затем выберите выполнимое и создайте событие синхронизации.
Во вкладке Functions, карте P1 к Runnable_P1
.
Создавание модели AUTOSAR, которая содержит ограничения порядка выполнения, экспортирует время выполнения компонента. Если вы устанавливаете Словарь AUTOSAR опция XML Exported XML File Packaging к Modular
, время выполнения экспортируется в файл
. Этот код ARXML показывает ограничение порядка выполнения, экспортируемое для runnables в modelname
_timing.arxmlmAutosarMultitasking
, на основе Редактора Расписания настройка.
<SWC-TIMING UUID="..."> <SHORT-NAME>mAutosarMultitasking</SHORT-NAME> <TIMING-REQUIREMENTS> <EXECUTION-ORDER-CONSTRAINT UUID="..."> <SHORT-NAME>EOC</SHORT-NAME> <ORDERED-ELEMENTS> <EOC-EXECUTABLE-ENTITY-REF UUID="..."> <SHORT-NAME>Runnable_Step</SHORT-NAME> <EXECUTABLE-REF DEST="RUNNABLE-ENTITY"> /pkg/swc/mAutosarMultitasking/IB/Runnable_Step </EXECUTABLE-REF> <SUCCESSOR-REFS> <SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF"> /Timing/mAutosarMultitasking/EOC/Runnable_P1 </SUCCESSOR-REF> </SUCCESSOR-REFS> </EOC-EXECUTABLE-ENTITY-REF> <EOC-EXECUTABLE-ENTITY-REF UUID="..."> <SHORT-NAME>Runnable_P1</SHORT-NAME> <EXECUTABLE-REF DEST="RUNNABLE-ENTITY"> /pkg/swc/mAutosarMultitasking/IB/Runnable_P1 </EXECUTABLE-REF> <SUCCESSOR-REFS> <SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF"> /Timing/mAutosarMultitasking/EOC/Runnable_Step1 </SUCCESSOR-REF> </SUCCESSOR-REFS> </EOC-EXECUTABLE-ENTITY-REF> <EOC-EXECUTABLE-ENTITY-REF UUID="..."> <SHORT-NAME>Runnable_Step1</SHORT-NAME> <EXECUTABLE-REF DEST="RUNNABLE-ENTITY"> /pkg/swc/mAutosarMultitasking/IB/Runnable_Step1 </EXECUTABLE-REF> <SUCCESSOR-REFS> <SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF"> /Timing/mAutosarMultitasking/EOC/Runnable_Step2 </SUCCESSOR-REF> </SUCCESSOR-REFS> </EOC-EXECUTABLE-ENTITY-REF> <EOC-EXECUTABLE-ENTITY-REF UUID="..."> <SHORT-NAME>Runnable_Step2</SHORT-NAME> <EXECUTABLE-REF DEST="RUNNABLE-ENTITY"> /pkg/swc/mAutosarMultitasking/IB/Runnable_Step2 </EXECUTABLE-REF> <SUCCESSOR-REFS> <SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF"> /Timing/mAutosarMultitasking/EOC/Runnable_Step3 </SUCCESSOR-REF> </SUCCESSOR-REFS> </EOC-EXECUTABLE-ENTITY-REF> <EOC-EXECUTABLE-ENTITY-REF UUID="..."> <SHORT-NAME>Runnable_Step3</SHORT-NAME> <EXECUTABLE-REF DEST="RUNNABLE-ENTITY"> /pkg/swc/mAutosarMultitasking/IB/Runnable_Step3 </EXECUTABLE-REF> </EOC-EXECUTABLE-ENTITY-REF> </ORDERED-ELEMENTS> </EXECUTION-ORDER-CONSTRAINT> </TIMING-REQUIREMENTS> <BEHAVIOR-REF DEST="SWC-INTERNAL-BEHAVIOR"> /pkg/swc/mAutosarMultitasking/IB </BEHAVIOR-REF> </SWC-TIMING>