В Simulink ® можно импортировать описание программного компонента AUTOSAR из файлов ARXML и создать модель, представляющую программный компонент AUTOSAR. Используется средство импорта AUTOSAR ARXML, реализованное как arxml.importer объект. Дополнительные сведения см. в разделе Импортер AUTOSAR ARXML.
Использовать arxml.importer функции в следующем порядке:
Позвоните в arxml.importer для создания объекта импортера, представляющего информацию о программном компоненте в указанном XML-файле или файлах. Например, этот вызов определяет основной файл программного компонента AUTOSAR, mr_component.arxmlи связанные зависимые файлы, содержащие информацию о типе данных, реализации и интерфейсе, которая завершает описание программного компонента.
ar = arxml.importer({'mr_component.arxml','mr_datatype.arxml',...
'mr_implementation.arxml','mr_interface.arxml'})Этот вызов определяет файл ARXML, ThrottlePositionControlComposition.arxml, которая описывает программный состав AUTOSAR и его агрегированные компоненты AUTOSAR. Файл ARXML находится в , который находится в пути поиска MATLAB ® по умолчанию.matlabroot/examples/autosarblockset/data
ar = arxml.importer('ThrottlePositionControlComposition.arxml')При вводе arxml.importer вызов функции без завершающей точки с запятой (;), импортер перечисляет содержимое AUTOSAR указанного XML-файла или файлов. Информация включает пути к компонентам программного обеспечения в структуре пакета AUTOSAR, которые будут использоваться на следующем шаге.
В этом примере путь к составу программного обеспечения ThrottlePositionControlComposition является /Company/Components/ThrottlePositionControlComposition. Путь к компоненту программного обеспечения Controller является /Company/Components/Controller.
ar =
The file "path/ThrottlePositionControlComposition.arxml" contains:
1 Composition-Software-Component-Type:
'/Company/Components/ThrottlePositionControlComposition'
2 Application-Software-Component-Type:
'/Company/Components/Controller'
'/Company/Components/ThrottlePositionMonitor'
3 Sensor-Actuator-Software-Component-Type:
'/Company/Components/AccelerationPedalPositionSensor'
'/Company/Components/ThrottlePositionActuator'
'/Company/Components/ThrottlePositionSensor'Для импорта проанализированного атомарного программного компонента или композиции в модель Simulink вызовите функцию createComponentAsModel, createCompositionAsModel, или updateModel. Если для компонентов не указаны все зависимости, появятся ошибки.
createComponentAsModel - Создание представления Simulink атомарного программного компонента AUTOSAR ARXML.
Например:
createComponentAsModel(ar,'/Company/Components/Controller',... 'ModelPeriodicRunnablesAs','AtomicSubsystem')
ModelPeriodicRunnablesAs свойство управляет тем, моделирует ли импортер периодические подсистемы AUTOSAR как атомарные подсистемы с периодическими скоростями (по умолчанию) или подсистемы вызова функций с периодическими скоростями. Определить AtomicSubsystem если только ваша конструкция не требует использования подсистем функционального вызова. Дополнительные сведения см. в разделе Импорт программного компонента AUTOSAR с несколькими модулями выполнения.
Для импорта объектов данных Simulink для данных AUTOSAR в словарь данных Simulink можно установить DataDictionary свойство при создании модели. Если указанный словарь еще не существует, его создает импортер.
Чтобы явно обозначить выполняемый AUTOSAR как выполняемый при инициализации компонент, используйте команду InitializationRunnable свойство при создании модели.
Дополнительные сведения см. в разделе createComponentAsModel и пример Импорт компонента AUTOSAR в Simulink.
createCompositionAsModel - Создание Simulink-представления состава программного обеспечения AUTOSAR ARXML.
Например:
createCompositionAsModel(ar,'/Company/Components/ThrottlePositionControlComposition')Чтобы включить существующие модели компонентов атомарного программного обеспечения Simulink в модель композиции, используйте ComponentModels в создании модели композиции.
Дополнительные сведения см. в разделе createCompositionAsModel и пример Импорт композиции AUTOSAR в Simulink.
updateModel - Обновление модели AUTOSAR с изменениями ARXML.
Например:
open_system('Controller') ar2 = arxml.importer('ThrottlePositionControlComposition_updated.arxml'); updateModel(ar2,'Controller');
Дополнительные сведения см. в разделе updateModel страница ссылок «Import AUTOSAR Software Component Updates» и пример «Import AUTOSAR Component to Simulink».
После импорта программного компонента или композиции в Simulink можно разработать поведение и конфигурацию компонента или модели композиции. Для уточнения конфигурации компонента см. раздел Конфигурация компонента AUTOSAR.
Сведения о настройке параметров генерации кода AUTOSAR и параметров экспорта XML см. в разделе Настройка генерации кода AUTOSAR.
Для поддержки двухстороннего перехода элементов AUTOSAR между инструментом разработки AUTOSAR (AAT) и средой проектирования на основе модели Simulink импорт ARXML сохраняет импортированную структуру файлов AUTOSAR XML, элементы и универсальные уникальные идентификаторы элементов (UUID) для экспорта ARXML. Дополнительные сведения см. в разделе Сохранение структуры файлов и информации об элементах AUTOSAR XML в обоих направлениях.