Дополнительный: сгенерируйте адаптивный код компонента программного обеспечения AUTOSAR (требует Embedded Coder),

Если у вас есть доступ к Simulink® Coder™ и программному обеспечению Embedded Coder®, можно создать адаптивную модель AUTOSAR. Когда вы создаете адаптивную модель AUTOSAR, генератор кода производит Код С++, который выполняет стандарт AUTOSAR для Адаптивной Платформы и описания ARXML.

  1. Если не уже открытый, откройте свою сконфигурированную версию модели my_autosar_LaneGuidance.

  2. Инициируйте генерацию кода путем нажатия Ctrl+B. Генератор кода производит Код С++ и файлы ARXML. Сгенерированный код выполняет стандарт AUTOSAR так, чтобы можно было запланировать код со средой выполнения AUTOSAR.

    Генератор кода также производит и отображает отчет генерации кода.

  3. В отчете генерации кода рассмотрите сгенерированный код. В вашей текущей папке MATLAB®, my_autosar_LaneGuidance_autosar_adaptive папка содержит первичные файлы, перечисленные в этой таблице.

    Файлы сгенерированного кода

    ФайлыОписание
    my_autosar_LaneGuidance.cppСодержит точки входа для кода, который реализует алгоритм модели. Этот файл включает код планирования уровня.
    my_autosar_LaneGuidance.hОбъявляет структуры данных модели и открытый интерфейс к точкам входа модели и структурам данных.
    rtwtypes.hЗадает типы данных, структуры и макросы, которых требует сгенерированный код.
    my_autosar_LaneGuidance_component.arxml
    my_autosar_LaneGuidance_datatype.arxml
    my_autosar_LaneGuidance_interface.arxml
    Содержите элементы и объекты, которые представляют компоненты программного обеспечения AUTOSAR, порты, интерфейсы, типы данных и пакеты. Вы интегрируете файлы ARXML в среду выполнения AUTOSAR. Можно импортировать файлы ARXML в окружение Simulink при помощи инструмента средства импорта AUTOSAR ARXML.
    main.cpp
    MainUtils.hpp
    Служите основой для выполнения адаптивного служебного кода компонента программного обеспечения.
  4. Откройте и рассмотрите Отчет Интерфейса Кода. Эта информация получена в файлах ARXML. Генератор среды выполнения использует описания ARXML, чтобы соединить интерфейсом с кодом в среду выполнения AUTOSAR.

    Функции точки входа

    • Функция точки входа инициализации — void my_autosar_LaneGuidanceModelClass::initialize(). При запуске вызовите эту функцию однажды.

    • Выведите функцию точки входа — void my_autosar_LaneGuidanceModelClass::step(). Вызывайте эту функцию периодически каждую 0.1 секунды.

    • Функция точки входа завершения — void my_autosar_LaneGuidanceModelClass::terminate(). При завершении работы вызовите эту функцию однажды.

    Input port:

    • Блокируйте leftLaneDistance — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    • Блокируйте leftTurnIndicator — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    • Блокируйте rightLaneDistance — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    • Блокируйте rightTurnIndicator — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    • Блокируйте leftCarInBlindSpot — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    • Блокируйте rightCarInBlindSpot — порт Require, интерфейс: приемник отправителя типа, действительного-T из 1 размерности

    Выходные порты:

    • Блокируйте leftHazardIndicator — Порт, заданный внешне типа, действительного-T из 1 размерности

    • Блокируйте rightHazardIndicator — Порт, заданный внешне типа, действительного-T из 1 размерности

  5. Проверяйте, появляются ли изменения конфигурации, которые вы сделали, в сгенерированном коде при помощи Сигнального полотнища в перспективе Кода. Чтобы открыть Сигнальное полотнище, на вкладке AUTOSAR, нажимают View Code. Сигнальное полотнище открывается справа от модели.

    С файлом my_autosar_LaneGuidance.cpp выбранный, в поле поиска, company типа (одно из значений пространства имен, которые вы задали для сервисных интерфейсов). Представление кода подсвечивает экземпляры company, показ, как символы пространства имен применяются в коде.

  6. Используйте перспективное Сигнальное полотнище Кода, чтобы исследовать другие аспекты сгенерированного кода. Например, если вы выбираете файл my_autosar_LaneGuidance.cpp, и затем щелкните в поле поиска, список ссылок на элементы кода появляются. Используйте ссылки, чтобы быстро перейти к ключевым областям сгенерированного кода.

Похожие темы