Сконфигурируйте адаптивную генерацию кода AUTOSAR

Сгенерировать AUTOSAR-совместимый Код С++ и описания компонента ARXML из модели, сконфигурированной для Адаптивной платформы AUTOSAR:

  1. В диалоговом окне Configuration Parameters, на Code Generation> панель AUTOSAR Code Generation Options, конфигурируют параметры генерации кода AUTOSAR.

  2. Сконфигурируйте опции экспорта AUTOSAR XML при помощи функций свойства AUTOSAR Dictionary или AUTOSAR.

  3. Опционально, сконфигурируйте поведение логгирования времени выполнения для адаптивного приложения.

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

Выберите AUTOSAR Schema

Для импорта и экспорта файлов ARXML и генерации AUTOSAR-совместимого Кода С++, 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 и генерирует Код С++, которые совместимы с текущим значением версии схемы AUTOSAR.

Прежде, чем экспортировать ваш компонент программного обеспечения AUTOSAR, проверяйте выбранную версию схемы. Если необходимо изменить выбранную версию схемы, использование, параметр конфигурации модели Генерирует XML-файл для версии схемы (Embedded Coder).

Примечание

Установите параметры конфигурации модели AUTOSAR на те же значения для главных и моделей, на которые ссылаются. Эта инструкция применяется к Generate XML file for schema version (Embedded Coder), Maximum SHORT-NAME length (Embedded Coder), Transport layer (Embedded Coder), IP address (Embedded Coder), Port (Embedded Coder), Verbose (Embedded Coder) и Use custom XCP Slave (Embedded Coder).

Задайте максимальную длину КРАТКОГО НАЗВАНИЯ

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

Задавать максимальную длину для SHORT-NAME элементы экспортированы генератором кода, набор длина КРАТКОГО НАЗВАНИЯ Максимума параметра конфигурации модели (Embedded Coder) к целочисленному значению между 32 и 128, включительно. Значением по умолчанию являются 128 символов.

Задайте ведомый транспортный уровень XCP

XCP является сетевым протоколом, происходящим из ASAM для соединения калибровочных систем к электронным блокам управления. Это включает доступ для чтения и доступ для записи к переменным и содержанию памяти микро систем контроллера во времени выполнения. Как протокол 2D слоя, XCP разделяет протокол и транспортные уровни и придерживается концепции Single-Master/Multi-Slave. Выбор транспортного уровня не влияет на слой протокола XCP.

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

  • XCP на CAN

  • XCP на Sxl

  • XCP на Ethernet (TCP/IP или UDP/IP)

  • XCP на USB

  • XCP на луче Flex

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

Для получения дополнительной информации смотрите, Конфигурируют Адаптивные Данные AUTOSAR для Измерения Во время выполнения и Калибровки.

Задайте ведомый IP-адрес XCP

Межсетевой протокол (IP) является основным коммуникационным протоколом для передачи дейтаграмм через сетевые контуры. Межсетевой протокол ответственен за обращение к интерфейсам хоста, инкапсуляцию данных в дейтаграммы, и маршрутизация дейтаграмм от исходного интерфейса хоста до конечного хоста взаимодействует через интерфейс через одну или несколько сетей IP.

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

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

Для получения дополнительной информации смотрите, Конфигурируют Адаптивные Данные AUTOSAR для Измерения Во время выполнения и Калибровки.

Задайте ведомый порт XCP

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

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

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

Для получения дополнительной информации смотрите, Конфигурируют Адаптивные Данные AUTOSAR для Измерения Во время выполнения и Калибровки.

Включите ведомое многословие сообщения XCP

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

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

Для получения дополнительной информации смотрите, Конфигурируют Адаптивные Данные AUTOSAR для Измерения Во время выполнения и Калибровки.

Используйте пользовательское ведомое устройство XCP

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

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

Для получения дополнительной информации смотрите, Конфигурируют Адаптивные Данные AUTOSAR для Измерения Во время выполнения и Калибровки.

Смотрите адаптивные опции XML AUTOSAR

Исследуйте опции XML, которые вы сконфигурировали при помощи Словаря AUTOSAR. Если вы еще не сконфигурировали опции, смотрите, Конфигурируют Адаптивные Опции XML AUTOSAR.

Сконфигурируйте поведение логгирования времени выполнения

Опционально, сконфигурируйте ara::log основанное поведение логгирования времени выполнения для адаптивного приложения AUTOSAR.

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

Чтобы изменить поведение логгирования времени выполнения по умолчанию для адаптивной модели, вы используете функции свойства AUTOSAR, включая set. Генерация кода экспортирует заданные свойства логгирования в файл манифеста выполнения ARXML. Если вы создаете исполняемый файл Linux из адаптивной модели, можно сгенерировать файл манифеста выполнения JSON, который изменяет поведение логгирования значения по умолчанию для исполняемого файла. Для получения дополнительной информации смотрите, Конфигурируют Логгирование Времени выполнения для Адаптивных Исполняемых файлов AUTOSAR.

Сгенерируйте адаптивный C++ AUTOSAR и XML-файлы

После конфигурирования генерации кода AUTOSAR и опций XML, сгенерируйте код. Чтобы сгенерировать Код С++ и экспортировать XML-описания, создайте адаптивную модель компонента.

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

  • Один или несколько modelname*.arxml файлы, на основе того, устанавливаете ли вы Exported XML file packaging на Single file или Modular.

  • Декларации для исполняемых файлов AUTOSAR и сервисных экземпляров.

  • Если вы импортировали файлы ARXML в Simulink, обновленные версии тех файлов.

Эта таблица приводит modelname*.arxml файлы, которые сгенерированы на основе значения опции Exported XML file packaging, сконфигурированной в Словаре AUTOSAR.

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

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

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

modelname_datatype.arxml

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

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

  • Стандартные типы данных реализации Cpp

  • Постоянные технические требования

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

  • Модули и модульные группы

  • Размещения записи программного обеспечения

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

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

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

Для примера того, как сгенерировать AUTOSAR-совместимый Код С++ и экспортировать описания компонента XML AUTOSAR из модели Simulink, смотрите, Генерируют Адаптивный Код С++ AUTOSAR и XML-описания.

Смотрите также

(Embedded Coder) | (Embedded Coder) | (Embedded Coder) | (Embedded Coder) | (Embedded Coder) | (Embedded Coder) | (Embedded Coder)

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

Больше о