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

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

В Simulink® можно смоделировать сторону приемника основанной на порте коммуникации параметра AUTOSAR. Сконфигурировать атомарный компонент программного обеспечения AUTOSAR как приемник параметра:

  1. В модели компонента AUTOSAR, в Словаре AUTOSAR, создают интерфейс параметра AUTOSAR, элементы данных параметра и порт приемника параметра.

  2. В рабочем пространстве модели Simulink создайте параметр, отметьте его как аргумент и установите начальное значение. Можно использовать параметр Simulink, интерполяционную таблицу, и установить точки останова объекты.

  3. Сопоставьте параметр рабочего пространства модели Simulink или интерполяционную таблицу к порту приемника параметра AUTOSAR и элементу данных интерфейса параметра. Используйте вкладку Parameters редактора Отображений Кода или mapParameter функция.

В этом примере показано, как сконфигурировать компонент программного обеспечения AUTOSAR как приемник для коммуникации параметра.

  1. Откройте модель, сконфигурированную для генерации кода AUTOSAR, в которой компонент программного обеспечения требует основанного на порте доступа к данным о параметре.

  2. Откройте Словарь AUTOSAR. Чтобы добавить интерфейс параметра в модель, выберите представление Parameter Interfaces и нажмите кнопку Add. В диалоговом окне Add Interfaces задайте имя нового интерфейса и установите Number of Data Elements на 1. Нажмите Add.

  3. Расширьте Parameter Interfaces и выберите представление DataElements. Исследуйте и измените свойства связанного элемента данных, который вы создали, включая его имя.

  4. Расширьте AtomicComponents и расширьте компонент. Чтобы добавить порт приемника параметра в модель, перейдите к представлению ParameterReceiverPorts и нажмите кнопку Add. В диалоговом окне Add Ports задайте имя нового порта и установите Interface на имя интерфейса параметра, который вы создали. Нажмите Add.

  5. В рабочем пространстве модели Simulink создайте объект данных для параметра. Например, используйте Model Explorer. С выбранным объектом данных, устанавливает поля Name и Value. Сконфигурировать параметр в качестве аргумента модели (то есть, уникальный для каждого экземпляра модели мультиэкземпляра), устанавливают флажок Argument.

    Сошлитесь на имя объекта данных в модели. Например, введите k1 в поле параметра Gain блока Gain.

  6. Откройте редактор Отображений Кода и выберите вкладку Parameters. В группе Model Parameter Arguments выберите объект данных параметра, который вы создали. В меню Mapped To выберите тип параметра AUTOSAR PortParameter.

  7. Чтобы просмотреть или изменить другой код и калибровочные атрибуты для параметра, используйте Property Inspector.

    1. Установите Port на имя порта приемника параметра, который вы сконфигурировали в Словаре AUTOSAR.

    2. Установите DataElement на имя элемента данных интерфейса параметра, который вы сконфигурировали в Словаре AUTOSAR.

    Для получения дополнительной информации смотрите Параметры Рабочего пространства модели Карты к Параметрам Компонента AUTOSAR.

  8. Когда вы генерируете код для модели компонента AUTOSAR:

    • Экспортируемые файлы ARXML содержат описания компонента приемника параметра, интерфейса параметра, элемента данных параметра и порта приемника параметра.

      <PARAMETER-INTERFACE UUID="...">
          <SHORT-NAME>myParamInterface</SHORT-NAME>
          <IS-SERVICE>false</IS-SERVICE>
          <PARAMETERS>
              <PARAMETER-DATA-PROTOTYPE UUID="...">
                  <SHORT-NAME>ParamElement</SHORT-NAME>
              ...
              </PARAMETER-DATA-PROTOTYPE>
          </PARAMETERS>
      </PARAMETER-INTERFACE>
    • Сгенерированный код C содержит параметр порта AUTOSAR Rte вызовы функции.

      /* Model step function */
      void mArPortParam_Step(void)
      {
      ...
        Rte_IWrite_mArPortParam_Step_Out2_Out2(Rte_Prm_myParamPort_ParamElement() *
          Rte_IRead_mArPortParam_Step_In2_In2());
      }

    Во время выполнения программное обеспечение может получить доступ к элементу данных параметра как к основанному на порте параметру.

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

|

Связанные примеры

Больше о