Сконфигурируйте планирование AUTOSAR и симуляцию

Чтобы сконфигурировать планирование и симуляцию для модели архитектуры AUTOSAR, вы можете:

  • Добавьте Basic Software (BSW) блоки, чтобы симулировать вызовы сервисов BSW.

  • Создайте модель тестовой обвязки, чтобы соединить входные параметры и элементы объекта к модели архитектуры.

  • Используйте Редактор Расписания, чтобы запланировать и задать порядок выполнения компонента runnables.

Чтобы симулировать поведение агрегированных компонентов в модели открытой архитектуры, нажмите Run.

Симулируйте основные вызовы программного сервиса

Для Классической Платформы AUTOSAR AUTOSAR Blockset обеспечивает Basic Software (BSW) блоки, которые позволяют вам моделировать вызовы компонента программного обеспечения сервисов BSW, которые запускаются в среде выполнения AUTOSAR. Сервисы BSW включают менеджера NVRAM (NvM), Диагностический менеджер событий (DEM) и Функциональный менеджер по Ингибированию (FiM). В среде выполнения, компоненты программного обеспечения AUTOSAR обычно доступ сервисы BSW, использующие клиент-сервер или коммуникация приемника отправителя.

Чтобы симулировать компоненты AUTOSAR, которые вызывают сервисы BSW, вы создаете содержание архитектуры, состава или модели тестовой обвязки и добавляете предварительно сконфигурированные сервисные блоки компонента BSW. Блоки обеспечивают ссылочные реализации сервисных операций BSW.

Если компоненты в вашей модели архитектуры используют блоки вызывающей стороны BSW, убедитесь, что модель архитектуры содержит реализации услуги BSW. Для получения дополнительной информации смотрите AUTOSAR Модели Основные Вызовы Программного сервиса и Симулируйте Основные Программные сервисы AUTOSAR и Среду выполнения.

Для примера использования блоков BSW в модели архитектуры AUTOSAR смотрите Автора Составы AUTOSAR и Компоненты в Модели Архитектуры.

Соедините тестовую обвязку

После того, как вы разрабатываете модель архитектуры, можно соединить ее с моделью тестовой обвязки, которая обеспечивает значимые входные значения и элементы модели объекта управления. Например, рассмотрите модель autosar_tpc_composition архитектуры от Автора в качестве примера Составы AUTOSAR и Компоненты в Модели Архитектуры. Модель имеет три, требуют (вход) портов, и каждый обеспечивает (выход) порт.

Вот модель тестовой обвязки для симуляции модели autosar_tpc_composition архитектуры. Тестовая обвязка содержит модель объекта управления с входным блоком педали и сигналами, которые соответствуют модели архитектуры, требуют и обеспечивают порты. Эта модель была адаптирована из модели autosar_tpc_system в качестве примера.

Соединять модель архитектуры с тестовой обвязкой:

  1. Вставьте блок Model.

  2. Сконфигурируйте блок Model, чтобы сослаться на модель архитектуры.

  3. В диалоговом окне блока Model выберите опцию Schedule rates. Для связанного параметра Schedule rates with выберите Schedule Editor. Компоненты модели архитектуры имеют явные разделы, которые можно запланировать с Редактором Расписания.

  4. Соедините порты модели архитектуры с сигналами тестовой обвязки.

Чтобы просмотреть и запустить завершенную модель тестовой обвязки, откройте модель autosar_tpc_system в качестве примера. (Чтобы открыть модель в локальной рабочей папке, использовать openExample('autosar_tpc_system').)

Запланируйте Runnables Компонента

Для Классических компонентов программного обеспечения Платформы AUTOSAR, которые содержат несколько runnables, AUTOSAR, Синхронизация спецификации Расширений задает ограничения порядка выполнения. Эти ограничения задают порядок выполнения выполнимых сущностей в компоненте. Можно просмотреть и управлять ограничениями на уровне компонента или, в моделях архитектуры AUTOSAR, на уровне Шины виртуальной функции (VFB).

В моделях архитектуры вы можете:

  • Импортируйте ограничения порядка выполнения VFB-уровня из файлов ARXML.

  • Используйте Редактор Расписания, чтобы изменить порядок выполнения компонента AUTOSAR runnables. Редактор отображает каждое выполнимое в каждом компоненте в иерархии состава.

  • Как часть экспорта состава, экспортируйте ограничения порядка выполнения VFB-уровня в ARXML синхронизация модуля, modelname_timing.arxml.

Чтобы запланировать и задать порядок выполнения компонента AUTOSAR runnables, используйте Редактор Расписания. От автономной модели компонента или модели архитектуры, вы можете:

  • Просмотрите графическое представление компонента runnables как разделы в компоненте AUTOSAR или модели архитектуры.

  • Создайте разделы и сопоставьте их с AUTOSAR runnables.

  • Непосредственно задайте порядок выполнения runnables.

Редактор Расписания поддерживает несколько стилей моделирования, включая моделирование основанного на уровне и экспорта функций. Для получения дополнительной информации смотрите Используя Редактор Расписания и Создайте Разделы. Для примеров модели компонента AUTOSAR смотрите, Конфигурируют Выполнимый Порядок выполнения AUTOSAR.

В модели архитектуры AUTOSAR, чтобы открыть Редактор Расписания, открывают вкладку Modeling и выбирают Design Tools> Schedule Editor. Редактор отображает каждое выполнимое в каждом компоненте в иерархии состава. Вот представление порядка выполнения, когда вы открываете Редактор Расписания из модели autosar_tpc_composition архитектуры в качестве примера. Используйте средства управления редактором, чтобы изменить порядок выполнения runnables.

Экспорт состава из модели архитектуры AUTOSAR экспортирует ограничения порядка выполнения VFB-уровня в файл modelname_timing.arxml. Модуль ARXML агрегировал время выполнения от целой иерархии состава. Этот код ARXML показывает ограничение порядка выполнения, экспортируемое для runnables в autosar_tpc_composition, на основе Редактора Расписания настройка.

<VFB-TIMING UUID="...">
  <SHORT-NAME>TPC_Composition</SHORT-NAME>
  <TIMING-REQUIREMENTS>
    <EXECUTION-ORDER-CONSTRAINT UUID="...">
      <SHORT-NAME>EOC</SHORT-NAME>
      <BASE-COMPOSITION-REF DEST="COMPOSITION-SW-COMPONENT-TYPE">
        /Components/TPC_Composition
      </BASE-COMPOSITION-REF>
      <ORDERED-ELEMENTS>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>PedalSensor_PedalSensor_Step</SHORT-NAME>
          <COMPONENT-IREF>
            <TARGET-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">
              /Components/Sensors/PedalSensor
            </TARGET-COMPONENT-REF>
          </COMPONENT-IREF>
          <EXECUTABLE-REF DEST="RUNNABLE-ENTITY">
            /Components/PedalSensor/PedalSensor_IB/PedalSensor_Step
          </EXECUTABLE-REF>
          <SUCCESSOR-REFS>
            <SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF">
              /Timing/TPC_Composition/EOC/TPS_Primary_ThrottleSensor1_Step
            </SUCCESSOR-REF>
          </SUCCESSOR-REFS>
        </EOC-EXECUTABLE-ENTITY-REF>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>TPS_Primary_ThrottleSensor1_Step</SHORT-NAME>
          ...
        </EOC-EXECUTABLE-ENTITY-REF>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>TPS_Secondary_ThrottleSensor2_Step</SHORT-NAME>
        ...
        </EOC-EXECUTABLE-ENTITY-REF>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>Monitor_ThrottleSensorMonitor_Step</SHORT-NAME>
          ...
        </EOC-EXECUTABLE-ENTITY-REF>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>Ctrl_Controller_Step</SHORT-NAME>
          ...
        </EOC-EXECUTABLE-ENTITY-REF>
        <EOC-EXECUTABLE-ENTITY-REF UUID="...">
          <SHORT-NAME>Actuator_Actuator_Step</SHORT-NAME>
          <COMPONENT-IREF>
            <TARGET-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">
              /Components/TPC_Composition/Actuator
            </TARGET-COMPONENT-REF>
          </COMPONENT-IREF>
          <EXECUTABLE-REF DEST="RUNNABLE-ENTITY">
            /Components/Actuator/Actuator_IB/Actuator_Step
          </EXECUTABLE-REF>
        </EOC-EXECUTABLE-ENTITY-REF>
      </ORDERED-ELEMENTS>
    </EXECUTION-ORDER-CONSTRAINT>
  </TIMING-REQUIREMENTS>
  <COMPONENT-REF DEST="COMPOSITION-SW-COMPONENT-TYPE">
    /Components/TPC_Composition
  </COMPONENT-REF>
</VFB-TIMING>

Смотрите также

| |

Похожие темы