exponenta event banner

Программная настройка и сопоставление компонента AUTOSAR

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

Свойства AUTOSAR и функции карты

Для программной настройки представления Simulink программного компонента AUTOSAR можно использовать свойства AUTOSAR и функции отображения. Например:

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

  • Функции сопоставления AUTOSAR используются для сопоставления элементов модели Simulink с элементами AUTOSAR и возврата информации сопоставления AUTOSAR для элементов модели.

Свойства AUTOSAR и функции отображения также проверяют синтаксис и семантику для запрошенных изменений свойств AUTOSAR и отображения.

Полный список функций свойств и карт см. в разделе Функции, перечисленные в разделе Разработка компонентов.

Например, сценарии см. в разделе Примеры свойств и функций карты AUTOSAR.

Примечание

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

Древовидное представление конфигурации AUTOSAR

В следующем древовидном представлении конфигурации AUTOSAR показаны типы элементов AUTOSAR, к которым можно применить свойства AUTOSAR и функции отображения. Это представление соответствует отображению дерева словаря AUTOSAR, но включает элементы, которые могут присутствовать не во всех конфигурациях. Имена, показанные в italics выбраны пользователем.

  • AUTOSAR

    • AtomicComponents

      • MyComponent

        • ReceiverPorts

        • SenderPorts

        • SenderReceiverPorts

        • ModeReceiverPorts

        • ModeSenderPorts

        • ClientPorts

        • ServerPorts

        • NvReceiverPorts

        • NvSenderPorts

        • NvSenderReceiverPorts

        • ParameterReceiverPorts

        • TriggerReceiverPorts

        • Runnables

        • IRV

        • Параметры

    • Интерфейсы S-R

      • SRInterface1

        • DataElements

    • Интерфейсы M-S

      • MSInterface1

    • Интерфейсы C-S

      • CSInterface1

        • Операции

          • operation1

            • Аргументы

    • Интерфейсы NV

      • NVInterface1

        • DataElements

    • Интерфейсы параметров

      • ParameterInterface1

        • DataElements

    • Триггерные интерфейсы

      • TriggerInterface1

        • Спусковые механизмы

    • CompuMethods

    • Параметры XML

Свойства элементов AUTOSAR

В следующей таблице перечислены свойства, связанные с элементами AUTOSAR.

Класс элементов AUTOSARСвойства
AtomicComponent
  • ReceiverPorts (добавление/удаление)

  • SenderPorts (добавление/удаление)

  • SenderReceiverPorts (добавление/удаление)

  • ModeReceiverPorts (добавление/удаление)

  • ClientPorts (добавление/удаление)

  • ServerPorts (добавление/удаление)

  • NvReceiverPorts (добавление/удаление)

  • NvSenderPorts (добавление/удаление)

  • NvSenderReceiverPorts (добавление/удаление)

  • ParameterReceiverPorts (добавление/удаление)

  • TriggerReceiverPorts (добавление/удаление)

  • Behavior (добавление/удаление)

  • Kind

  • Name

ApplicationComponentBehavior
  • Runnables (добавление/удаление)

  • Events (добавление/удаление)

  • PIM (добавление/удаление)

  • IRV (добавление/удаление)

  • Parameters (добавление/удаление)

  • IncludedDataTypeSets

  • DataTypeMapping

  • Name

DataReceiverPort
DataSenderPort
DataSenderReceiverPort
ClientPort
ServerPort
ModeReceiverPort
NvDataReceiverPort
NvDataSenderPort
NvDataSenderReceiverPort
ParameterReceiverPort
TriggerReceiverPort
  • Interface

  • Name

Runnable
  • symbol

  • canBeInvokedConcurrently

  • SwAddrMethod

  • Name

TimingEvent
  • Period

  • StartOnEvent

  • DisabledMode

  • Name

DataReceivedEvent
DataReceiveErrorEvent
OperationInvokedEvent
  • Trigger

  • StartOnEvent

  • DisabledMode

  • Name

ModeSwitchEvent
  • Trigger

  • Activation

  • StartOnEvent

  • DisabledMode

  • Name

InitEvent
  • StartOnEvent

  • Name

IrvData
  • Type

  • SwAddrMethod

  • SwCalibrationAccess

  • DisplayFormat

  • SwAlignment

  • Name

ParameterData
  • Type

  • SwAddrMethod

  • SwCalibrationAccess

  • DisplayFormat

  • SwAlignment

  • Kind

  • Name

SenderReceiverInterface
NvDataInterface
ParameterInterface
  • DataElements (добавление/удаление)

  • IsService

  • Name

FlowData
  • Type

  • SwAddrMethod

  • SwCalibrationAccess

  • DisplayFormat

  • SwAlignment

  • Name

ModeSwitchInterface
  • ModeGroup (добавление/удаление)

  • IsService

  • Name

ModeDeclarationGroupElement
  • ModeGroup

  • SwCalibrationAccess

  • Name

ClientServerInterface
  • Operations (добавление/удаление)

  • IsService

  • Name

TriggerInterface
  • Triggers (добавление/удаление)

  • IsService

  • Name

Укажите расположение элемента AUTOSAR

Функции свойств AUTOSAR обычно требуют указания имени и местоположения элемента. Расположение элемента AUTOSAR в иерархии пакетов и объектов AUTOSAR можно однозначно указать с помощью полного пути. Полный путь может включать иерархию пакетов и расположение элементов в иерархии объектов, например:

/pkgLevel1/pkgLevel2/pkgLevel3/grandParentName/parentName/childName

Для функций свойств AUTOSAR, отличных от addPackageableElement, можно указать частично определенный путь, который не включает иерархию пакетов, например:

grandParentName/parentName/childName

Следующий код устанавливает IsService свойство для интерфейса отправителя-получателя, расположенного по пути Interface1 в примерной модели autosar_swc_expfcns кому true. В этом случае укажите имя Interface1 достаточно для определения местоположения элемента.

hModel = 'autosar_swc_expfcns';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);
arProps = autosar.api.getAUTOSARProperties(hModel);
set(arProps,'Interface1','IsService',true);

Ниже приведен результат просмотра в ракурсе S-R Interfaces словаря AUTOSAR.

При добавлении интерфейса отправитель-получатель в пакет компонентов необходимо указать полный путь, например:

hModel = 'autosar_swc_expfcns';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);
arProps = autosar.api.getAUTOSARProperties(hModel);
addPackageableElement(arProps,'SenderReceiverInterface','/pkg/if','Interface3',...
   'IsService',true);

Потенциальное преимущество использования частично квалифицированного пути, а не полностью квалифицированного пути, заключается в упрощении построения частично квалифицированного пути из представления AUTOSAR Dictionary компонента AUTOSAR. Потенциальным недостатком является то, что частично квалифицированный путь может относиться к более чем одному элементу в конфигурации AUTOSAR. Например, путь s/r возможно, можно обозначить как элемент данных интерфейса отправителя-получателя, так и запускаемый компонент. При возникновении конфликта программа отображает ошибку и перечисляет полные пути.

Большинство элементов AUTOSAR имеют свойства, состоящие из нескольких деталей (составных). Например, атомарный программный компонент имеет составные свойства, такие как ReceiverPorts, SenderPorts, и InternalBehavior. Для элементов, имеющих составные свойства, которыми можно управлять, например свойства ReceiverPorts для компонента дочерние элементы именуются и уникально определяются в родительском элементе. Чтобы найти дочерний элемент в составном свойстве, используйте путь родительского элемента и имя дочернего элемента без имени свойства. Например, если указан путь родительского атомарного программного компонента /A/B/SWC, и дочерний порт приемника имеет имя RPort1, местоположение порта приемника: /A/B/SWC/RPort1.