Импорт программного компонента AUTOSAR

В Simulink®можно импортировать описание программного компонента AUTOSAR из файлов ARXML и создать модель, представляющую программный компонент AUTOSAR. Вы используете импортер AUTOSAR ARXML, который реализован как arxml.importer объект. Для получения дополнительной информации см. раздел AUTOSAR ARXML Importer.

Использование arxml.importer функционирует в следующем порядке:

  1. Вызовите 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 расположен по адресу matlabroot/ examples/autosarblockset/data, который находится на MATLAB по умолчанию® путь поиска файлов.

    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'
  2. Чтобы импортировать анализируемый атомарный программный компонент или композицию в модель Simulink, вызовите функцию createComponentAsModel, createCompositionAsModel, или updateModel. Если вы не указали все зависимости для компонентов, вы увидите ошибки.

    • createComponentAsModel - Создайте представление Simulink элементарного программного компонента AUTOSAR ARXML.

      Для примера:

      createComponentAsModel(ar,'/Company/Components/Controller',...
        'ModelPeriodicRunnablesAs','AtomicSubsystem')

      The ModelPeriodicRunnablesAs свойство контролирует, моделирует ли импортер периодические runnables 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 страница с описанием, Импорт обновлений программного компонента AUTOSAR и пример Импорт компонента AUTOSAR в Simulink.

После импорта программного компонента или композиции в Simulink можно разработать поведение и строение модели компонента или композиции. Для уточнения строения компонента см. раздел «Строение компонента AUTOSAR».

Для настройки генерации кода AUTOSAR опций и XML экспорта опций см. раздел «Настройка генерации кода AUTOSAR».

Чтобы помочь поддержать перемещение элементов AUTOSAR между инструментом разработки AUTOSAR (AAT) и окружение модельно-ориентированного проектирования Simulink, импорт ARXML сохраняет импортированную авто-РСА XML-структуру файла, элементы и универсальные уникальные идентификаторы элементов (UUID) для экспорта ARXML. Для получения дополнительной информации см. раздел «Сохранение файлов AUTOSAR XML и информация об элементах».

См. также

Похожие примеры

Подробнее о