Сохранение туда и обратно структуры XML-файла AUTOSAR и информации об элементе

Чтобы поддержать цикл обработки элементов AUTOSAR между Инструментом разработки AUTOSAR (AAT) и Simulink®, консервы импорта ARXML импортировали структуру XML-файла AUTOSAR и содержимое для экспорта ARXML. Когда вы импортируете файлы ARXML для компонента AUTOSAR в Simulink, консервы средства импорта:

  • Структура XML-файла AUTOSAR. Можно сравнить файлы ARXML, которые вы импортируете с соответствующими файлами ARXML, которые вы экспортируете.

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

  • AUTOSAR универсальные уникальные идентификаторы (UUIDs) для идентифицируемых элементов. Если импортированный элемент не имеет UUID, ни один не создается.

После импорта можно просмотреть и сконфигурировать элементы компонента программного обеспечения AUTOSAR и свойства в Словаре AUTOSAR. Используйте Словарь AUTOSAR, чтобы сконфигурировать элементы AUTOSAR. Свойства, которые вы изменяете, отражаются в экспортируемых описаниях ARXML и потенциально в сгенерированном AUTOSAR-совместимом коде C or C++. Для получения дополнительной информации смотрите, Конфигурируют Элементы AUTOSAR и Свойства или Конфигурируют Адаптивные Элементы AUTOSAR и Свойства.

Элементы AUTOSAR, которые вы создаете в Simulink, экспортируют в один или несколько modelname*.arxml файлы, которые являются отдельными от импортированных XML-файлов. Вы управляете упаковкой файла новых элементов путем конфигурирования опций XML в Словаре AUTOSAR. Например, можно установить опцию XML Exported XML file packaging на Single file или Modular. Для получения дополнительной информации смотрите, Конфигурируют Опции AUTOSAR XML или Конфигурируют Адаптивные Опции XML AUTOSAR.

Когда вы экспортируете файлы ARXML из модели Simulink, генератор кода сохраняет импортированную структуру XML-файла, информацию об элементе и UUIDs, при применении модификаций. Экспортируемые файлы включают:

  • Обновленные версии тех же файлов ARXML, которые вы импортировали.

  • Один или несколько modelname*.arxml файлы, на основе того, устанавливаете ли вы Exported XML file packaging на Single file или Modular. modelname*.arxml файлы включают:

    • Описания реализации.

    • Если вы добавили интерфейс AUTOSAR или связанные с данными элементы в Simulink, интерфейс и описания данных.

  • Для Адаптивной Платформы, деклараций для исполняемых файлов AUTOSAR и сервисных экземпляров.

Предположим, что в рабочей папке вы создаете модель Simulink под названием Controller.slx из примера файл ARXML matlabroot/help/toolbox/autosar/examples/ThrottlePositionController.arxml.

% Create Controller model from AUTOSAR component
addpath(fullfile(matlabroot,'help','toolbox','autosar','examples'));
ar = arxml.importer('ThrottlePositionController.arxml');
createComponentAsModel(ar,'/Company/Components/Controller','ModelPeriodicRunnablesAs','AtomicSubsystem');

В созданной модели добавьте метод адреса программного обеспечения AUTOSAR (SwAddrMethod) под названием КОД и сошлитесь на него от выполнимой функции AUTOSAR.

% In AUTOSAR model, add SwAddrMethod CODE to SwAddrMethods package
arProps = autosar.api.getAUTOSARProperties('Controller');
addPackageableElement(arProps,'SwAddrMethod',...
    '/AUTOSAR_Platform/SwAddrMethods','CODE','SectionType','Code')
% Map step runnable function to SwAddrMethod CODE 
slMap = autosar.api.getSimulinkMapping('Controller');
mapFunction(slMap,'StepFunction','Runnable_Step','SwAddrMethod','CODE')
% Display SwAddrMethod CODE path and step function mapping information
swAddrMethodPath = find(arProps,[],'SwAddrMethod','PathType','FullyQualified',...
    'SectionType','Code')
[arRunnableName,arRunnableSwAddrMethod] = getFunction(slMap,'StepFunction')
swAddrMethodPath =
    {'/AUTOSAR_Platform/SwAddrMethods/CODE'}

arRunnableName =
    'Runnable_Step'

arRunnableSwAddrMethod =
    'CODE'

Можно просмотреть модификации в Словаре AUTOSAR, представление SwAddrMethods, и редактор Отображений Кода, вкладку Functions.

Создайте модель, например, при помощи команды rtwbuild('Controller'). Если модели установили Exported XML file packaging на Modular, сборка экспортирует эти файлы ARXML:

  • ThrottlePositionController.arxml — Обновленная версия файла ARXML, из которого была создана модель. Чтобы отследить изменения, можно сравнить более ранние версии файла ARXML с новой экспортируемой версией.

  • Controller_implementation.arxml — Информация о реализации компонента (всегда генерируемый).

  • Controller_datatype.arxml — Связанная с данными информация, которая отражает ваши изменения SwAddrMethod в модели компонента. В файле, пакет AUTOSAR /AUTOSAR_Platform/SwAddrMethods содержит КОД SwAddrMethod.

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

Больше о