exponenta event banner

Настройка энергонезависимой передачи данных AUTOSAR

Стандарт AUTOSAR определяет энергонезависимую (NV) передачу данных на основе портов, при которой программный компонент AUTOSAR считывает и записывает данные в энергонезависимые компоненты AUTOSAR. Для реализации передачи данных NV компоненты программного обеспечения AUTOSAR определяют предоставление и требование к портам, которые отправляют и принимают данные NV.

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

Для создания интерфейса и портов данных NV в Simulink:

  1. Добавьте в модель интерфейс AUTOSAR NV. Откройте словарь AUTOSAR и выберите NV Interfaces. Нажмите кнопку «Добавить». В диалоговом окне «Добавление интерфейсов» укажите имя интерфейса и количество связанных элементов данных NV.

  2. Выберите и разверните новый интерфейс NV. Выберите DataElements и измените атрибуты элемента данных.

  3. Добавьте в модель порты AUTOSAR NV. Разверните узел AtomicComponents и разверните компонент. Выберите и используйте ракурсы NvPorts, NvSenderPorts и NvSenderPorts для добавления необходимых портов NV. Для каждого порта NV выберите созданный интерфейс NV.

  4. Сопоставьте входы и выходы Simulink с созданными портами AUTOSAR NV. Откройте редактор сопоставлений кода. Выберите и используйте вкладки Inports и Outports для сопоставления портов. Для каждого порта ввода или вывода выберите порт AUTOSAR, элемент данных и режим доступа к данным.

Для программной настройки элементов передачи данных AUTOSAR NV используйте свойство AUTOSAR и функции отображения. Например, следующий код MATLAB ® добавляет интерфейс данных AUTOSAR NV и порт приемника NV в открытую модель. Затем он сопоставляет входной порт Simulink с портом приемника AUTOSAR NV.

% Add AUTOSAR NV data interface myNvInterface with NV data element DE3
arProps = autosar.api.getAUTOSARProperties(hModel);
addPackageableElement(arProps,'NvDataInterface','/pkg/if','myNvInterface');
add(arProps,'myNvInterface','DataElements','DE3');

% Add AUTOSAR NV receiver port NvRPort, associated with myNvInterface
add(arProps,'ASWC','NvReceiverPorts','NvRPort','Interface','myNvInterface');

% Map Simulink inport NvRPort_DE3 to AUTOSAR port/element pair NvRPort and DE3
slMap = autosar.api.getSimulinkMapping(hModel);
mapInport(slMap,'NvRPort_DE3','NvRPort','DE3','ImplicitReceive');

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

Подробнее