exponenta event banner

Настройка адаптивной генерации кода AUTOSAR

Для создания описания кода C++ и компонента ARXML, совместимого с AUTOSAR, из модели, настроенной для платформы AUTOSAR Adaptive:

  1. В диалоговом окне «Параметры конфигурации» на панели «Создание кода» > «Параметры создания кода AUTOSAR» настройте параметры создания кода AUTOSAR.

  2. Настройте параметры экспорта AUTOSAR XML с помощью функций AUTOSAR Dictionary или AUTOSAR property.

  3. При необходимости настройте режим ведения журнала во время выполнения для адаптивного приложения.

  4. Создайте модель.

Выбор схемы AUTOSAR

Для импорта и экспорта ARXML-файлов и создания AUTOSAR-совместимого кода C++, AUTOSAR Blockset поддерживает следующие версии схемы адаптивной платформы AUTOSAR:

  • 00048 (R19-11)

  • 00047 (R19-03)

  • 00046 (R18-10)

При первом выборе целевого файла адаптивной системы AUTOSAR для модели для параметра версии схемы устанавливается значение по умолчанию. 00048 (R19-11).

При импорте файлов ARXML в Simulink ® импортер ARXML обнаруживает и использует версию схемы. Он задает параметр версии схемы в модели. Например, при импорте файлов ARXML на основе схемы 00048 (R19-11) импортер устанавливает соответствующую версию схемы в модели.

При построении адаптивной модели AUTOSAR генератор кода экспортирует описания ARXML и генерирует код C++, соответствующий текущему значению версии схемы AUTOSAR.

Перед экспортом программного компонента AUTOSAR проверьте выбранную версию схемы. Если необходимо изменить выбранную версию схемы, используйте параметр конфигурации модели Generate XML file for schema version (Embedded Coder).

Примечание

Задайте для параметров конфигурации модели AUTOSAR одинаковые значения для моделей верхнего уровня и ссылочных моделей. Это руководство применяется к формату XML-файла для версии схемы (встроенный кодер), максимальной длины SHORT-NAME (встроенный кодер), транспортного уровня (встроенный кодер), IP-адреса (встроенный кодер), порта (встроенный кодер), подробной версии (встроенный кодер) и использования пользовательского подчиненного XCP (встроенный кодер).

Укажите максимальную длину SHORT-NAME

Стандарт AUTOSAR указывает, что максимальная длина SHORT-NAME XML-элементы содержат 128 символов.

Задание максимальной длины для SHORT-NAME элементы, экспортируемые генератором кода, установите параметр конфигурации модели Maximum SHORT-NAME length (Embedded Coder) в целочисленное значение от 32 до 128 включительно. Значение по умолчанию - 128 символов.

Определение уровня подчиненного транспортного сервера XCP

XCP - сетевой протокол, исходящий от ASAM для подключения калибровочных систем к электронным блокам управления. Он обеспечивает доступ для чтения и записи к переменным и содержимому памяти систем микроконтроллеров во время выполнения. Как двухуровневый протокол, XCP разделяет протоколы и транспортные уровни и придерживается концепции «один ведущий/несколько ведомых». Выбор транспортного уровня не влияет на уровень протокола XCP.

В настоящее время ASAM определяет следующие транспортные уровни как стандартные:

  • XCP на CAN

  • XCP на Sxl

  • XCP в Ethernet (TCP/IP или UDP/IP)

  • XCP на USB

  • XCP на Flex Ray

Для выбора транспортного уровня, используемого адаптивным приложением AUTOSAR (подчиненное устройство XCP), используйте параметр конфигурации модели Транспортный уровень (встроенный кодер). Выбор транспортного уровня XCP активизирует другие параметры XCP.

Дополнительные сведения см. в разделе Настройка адаптивных данных AUTOSAR для измерения и калибровки во время выполнения.

Укажите IP-адрес подчиненного сервера XCP

Протокол IP является основным протоколом связи для ретрансляции дейтаграмм через границы сети. Интернет-протокол отвечает за адресацию интерфейсов хоста, инкапсуляцию данных в дейтаграммы и маршрутизацию дейтаграмм от интерфейса хоста-источника к интерфейсам хоста-получателя по одной или нескольким IP-сетям.

Каждая дейтаграмма имеет два компонента: заголовок и полезную нагрузку. IP-заголовок включает в себя IP-адрес источника, IP-адрес назначения и другие метаданные, необходимые для маршрутизации и доставки дейтаграммы. Полезная нагрузка - это передаваемые данные.

Чтобы указать IP-адрес компьютера, на котором выполняется адаптивное приложение AUTOSAR (подчиненное устройство XCP), используйте IP-адрес параметра конфигурации модели (встроенный кодер). Параметр IP-адреса активируется путем выбора значения для транспортного уровня (встроенный кодер).

Дополнительные сведения см. в разделе Настройка адаптивных данных AUTOSAR для измерения и калибровки во время выполнения.

Укажите подчиненный порт XCP

Номер порта - это логический адрес каждого приложения или процесса, который использует сеть или Интернет для связи. Номер порта в первую очередь помогает в передаче данных между сетью и приложением. Для этого номера портов работают в сотрудничестве с сетевыми протоколами.

Номер порта однозначно идентифицирует сетевое приложение на компьютере. Каждому приложению назначается 16-битный целый номер порта. Этот номер присваивается операционной системой, устанавливается вручную пользователем или устанавливается по умолчанию.

Чтобы указать сетевой порт, на котором адаптивное приложение AUTOSAR (подчиненное устройство XCP) обслуживает команды XCP Master, используйте параметр конфигурации модели Port (Embedded Coder). Параметр Port активируется путем выбора значения для транспортного уровня (Embedded Coder).

Дополнительные сведения см. в разделе Настройка адаптивных данных AUTOSAR для измерения и калибровки во время выполнения.

Включить проверку полноты подчиненных сообщений XCP

Полнота - это уровень технической детализации, включенный в программные сообщения. Подробные сообщения могут помочь в отладке и понимании связи XCP.

Чтобы включить подробные сообщения для адаптивного приложения AUTOSAR (подчиненное устройство XCP), выберите параметр конфигурации модели Verbose (встроенный кодер). Параметр Verbose активируется путем выбора значения для транспортного слоя (встроенный кодер).

Дополнительные сведения см. в разделе Настройка адаптивных данных AUTOSAR для измерения и калибровки во время выполнения.

Использовать пользовательский подчиненный XCP

По умолчанию для связи используется подчиненное устройство MathWorks ® XCP. Для транспортного уровня Ethernet (TCP/IP) можно использовать пользовательский подчиненный сервер XCP. Для установки интерфейса требуется пользовательская реализация ведомого сервера XCP. Определение реализации в файле заголовкаxcp_slave.h в папке matlabroot/toolbox/coder/autosar/adaptive.

Чтобы включить использование пользовательского подчиненного сервера XCP, выберите параметр конфигурации модели Use custom XCP Slave (Embedded Coder). Параметр Use custom XCP Slave активизируется путем выбора значения для транспортного уровня (встроенный кодер).

Дополнительные сведения см. в разделе Настройка адаптивных данных AUTOSAR для измерения и калибровки во время выполнения.

Проверка параметров адаптивного XML AUTOSAR

Проверьте параметры XML, настроенные с помощью словаря AUTOSAR. Если параметры еще не настроены, см. раздел Настройка параметров AUTOSAR Adaptive XML.

Настройка режима ведения журнала во время выполнения

При необходимости сконфигурируйте ara::log основанное на ведении журнала во время выполнения адаптивного приложения AUTOSAR.

Как определено в AUTOSAR Specification of Diagnostic Log and Traceадаптивные приложения могут пересылать информацию регистрации событий в консоль, файл или сеть. Это позволяет сопоставлять и анализировать данные журнала из нескольких приложений. По умолчанию приложение регистрирует сообщения о событиях на локальной консоли.

Чтобы изменить поведение журнала выполнения по умолчанию для адаптивной модели, используйте функции свойств AUTOSAR, включая set. Создание кода экспортирует указанные свойства ведения журнала в файл манифеста выполнения ARXML. При построении исполняемого файла Linux из адаптивной модели можно создать файл манифеста выполнения JSON, который изменяет поведение журнала по умолчанию для исполняемого файла. Дополнительные сведения см. в разделе Настройка ведения журнала выполнения адаптивных исполняемых файлов AUTOSAR.

Создание адаптивных файлов C++ и XML AUTOSAR

После настройки генерации кода AUTOSAR и параметров XML создайте код. Для создания кода C++ и экспорта XML-описаний создайте адаптивную модель компонента.

Процесс сборки создает в папке сборки модели AUTOSAR-совместимый код C++ и XML-описания AUTOSAR. Экспортированные XML-файлы включают:

  • Один или несколько modelname*.arxml файлы, в зависимости от того, задано ли для параметра Экспортированная упаковка XML-файлов значение Single file или Modular.

  • Манифесты для исполняемых файлов AUTOSAR и экземпляров службы.

  • При импорте файлов ARXML в Simulink обновляются версии этих файлов.

В этой таблице перечислены modelname*.arxml файлы, создаваемые на основе значения параметра упаковки экспортированных XML-файлов, настроенного в словаре AUTOSAR.

Экспортированное значение упаковки XML-файловИмя экспортированного файлаСодержимое по умолчанию
Single filemodelname.arxmlЭлементы AUTOSAR для адаптивных программных компонентов, типов данных и интерфейсов.
modelname_ExecutionManifest.arxmlИнформация, связанная с развертыванием адаптивных приложений, включая исполняемые файлы, наборы сопоставлений «процесс-машина» и процессы.
modelname_ServiceInstanceManifest.arxmlКонфигурация сервисно-ориентированной связи, включая развертывания сервисного интерфейса, экземпляры служб и экземпляры служб для сопоставлений портов.
Modularmodelname_component.arxml

Адаптивные программные компоненты, включая требуемые и предоставляемые порты.

Это основной файл ARXML, экспортируемый для модели Simulink. В дополнение к компонентам программного обеспечения файл компонентов содержит упакованные элементы, которые экспортер не перемещает в файлы типа данных или интерфейса на основе категории элементов AUTOSAR.

modelname_datatype.arxml

Типы данных и связанные с ними элементы, включая:

  • Типы данных приложения

  • Стандартные типы данных внедрения Cpp

  • Постоянные спецификации

  • Физические ограничения данных

  • Единицы и группы единиц

  • Макеты записей программного обеспечения

modelname_interface.arxmlАдаптивные интерфейсы, включая требуемые и предоставляемые сервисные интерфейсы с пространствами имен и событиями.
modelname_ExecutionManifest.arxmlИнформация, связанная с развертыванием адаптивных приложений, включая исполняемые файлы, наборы сопоставлений «процесс-машина» и процессы.
modelname_ServiceInstanceManifest.arxmlКонфигурация сервисно-ориентированной связи, включая развертывания сервисного интерфейса, экземпляры служб и экземпляры служб для сопоставлений портов.

Описания адаптивных XML-компонентов AUTOSAR можно объединить в средство разработки AUTOSAR. Информация компонента AUTOSAR разделяется на отдельные файлы для упрощения объединения. Секционирование пытается минимизировать количество необходимых слияний. Не требуется объединять файл типа данных с инструментом разработки, поскольку типы данных определяются на ранних этапах процесса проектирования. Необходимо объединить внутренний файл поведения, поскольку эта информация является частью реализации модели.

Для поддержки двухстороннего перехода элементов AUTOSAR между инструментом разработки AUTOSAR (AAT) и средой проектирования на основе модели Simulink генератор кода сохраняет элементы AUTOSAR и их универсальные уникальные идентификаторы (UUID) для импорта и экспорта ARXML. Дополнительные сведения см. в разделе Сохранение структуры файлов и информации об элементах AUTOSAR XML в обоих направлениях.

Пример создания AUTOSAR-совместимого кода C++ и экспорта описаний XML-компонентов AUTOSAR из модели Simulink см. в разделе Создание AUTOSAR-адаптивного кода C++ и XML-описаний.

См. также

(встроенный кодер) | (встроенный кодер) | (встроенный кодер) | (встроенный кодер) | (встроенный кодер) | (встроенный кодер) | (встроенный кодер)

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

Подробнее