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

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

  1. В диалоговом окне Параметров конфигурации на панели Code Generation > AUTOSAR Code Generation Options настройте параметры генерации кода AUTOSAR.

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

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

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

Выбор схемы AUTOSAR

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

  • 00048 (R19-11)

  • 00047 (R19-03)

  • 00046 (R18-10)

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

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

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

Перед экспортом программного компонента AUTOSAR проверьте выбранную версию схемы. Если необходимо изменить выбранную версию схемы, используйте параметр конфигурации модели Generate 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).

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

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

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

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

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

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

  • XCP на CAN

  • XCP на Sxl

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

  • XCP на USB

  • XCP на Flex Ray

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

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

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

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

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

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

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

Настройка ведомого порта XCP

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Сгенерируйте файлы AUTOSAR Adaptive C++ и XML

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

Процесс сборки генерирует совместимый с AUTOSAR код C++ и описания AUTOSAR XML в папку сборки модели. Экспортированные 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. В дополнение к программным компонентам файл компонента содержит упаковываемые элементы, которые экспортер не перемещает в файлы типа данных или интерфейсов на основе категории элемента 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 Кодов С++ и экспорта авто-РСА XML-описаний компонентов из модели Simulink см. в разделах Генерация адаптивных Кодах С++ AUTOSAR и XML-описаний.

См. также

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

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

Подробнее о