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

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

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

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

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

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

Симуляция базовых сервисных вызовов программного обеспечения

Для платформы AUTOSAR Classic Platform, AUTOSAR Blockset предоставляет блоки Basic Software (BSW), которые позволяют моделировать вызовы программных компонентов к службам BSW, выполняемым в окружение выполнения AUTOSAR. К услугам BSW относятся NVRAM Manager (NvM), Diagnostic Event Manager (Dem) и Function Inhibition Manager (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').)

Планируйте выполняемые компоненты

Для компонентов программного обеспечения AUTOSAR Classic Platform, которые содержат несколько исполняемых элементов, спецификация AUTOSAR Timing Extensions определяет ограничения порядка выполнения. Эти ограничения задают порядок выполнения выполняемых сущностей в компоненте. Можно просматривать и управлять ограничениями на уровне компонентов или, в моделях архитектуры AUTOSAR, на уровне виртуальной функциональной шины (VFB).

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

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

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

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

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

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

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

  • Непосредственно задайте порядок выполнения 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>

См. также

| |

Похожие темы