exponenta event banner

(Необязательно) Создание кода адаптивного программного компонента AUTOSAR (требуется встроенный кодер)

При наличии доступа к программному обеспечению Simulink ® Coder™ и Embedded Coder ® можно создать адаптивную модель AUTOSAR. При построении адаптивной модели AUTOSAR генератор кода создает код C++, соответствующий стандарту AUTOSAR для описаний Adaptive Platform и ARXML.

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

  2. Инициируйте создание кода, нажав клавиши Ctrl + B. Генератор кода создает файлы C++ и 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(). При завершении работы вызовите эту функцию один раз.

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

    • Block LeftleDistance - требуется порт, интерфейс: отправитель-получатель типа real-T измерения 1

    • Block leftTurnIndicator - требуется порт, интерфейс: отправитель-получатель типа real-T измерения 1

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

    • Block riveTurnIndicator - требуется порт, интерфейс: отправитель-получатель типа real-T измерения 1

    • Block leftCarInBlindSpot - требуется порт, интерфейс: отправитель-получатель типа real-T измерения 1

    • Block reyCarInBlindSpot - требуется порт, интерфейс: отправитель-получатель типа real-T измерения 1

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

    • Block leftLeft Indicator - Порт, определенный снаружи типа real-T размера 1

    • Block rightTaridIndicator - Порт, определенный снаружи типа real-T размера 1

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

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

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

Связанные темы