В Simulink ® можно моделировать параметры калибровки AUTOSAR и таблицы поиска, которые поддерживают настройку приложения AUTOSAR во время выполнения с помощью инструментов измерения и калибровки.
Калибровочный параметр - это значение в электронном блоке управления (ECU). Эти параметры настраиваются или изменяются с помощью инструмента управления данными калибровки или автономного инструмента калибровки.
Стандарт AUTOSAR определяет следующие типы параметров калибровки:
Калибровочные параметры, относящиеся к калибровочному компоненту (ParameterSwComponent), к которым могут обращаться программные компоненты AUTOSAR.
Внутренние калибровочные параметры, определяемые и доступные только одним программным компонентом AUTOSAR.
Чтобы предоставить модели Simulink доступ к параметрам калибровки, укажите параметры калибровки в параметрах блока.
Чтобы сопоставить объекты параметров Simulink в рабочем пространстве модели с параметрами калибровки AUTOSAR, откройте ракурс кода AUTOSAR и используйте редактор Сопоставления кодов (Code Mappings) на вкладке Параметры (Parameters). Используйте инспектор свойств для настройки кода параметра и атрибутов калибровки. Дополнительные сведения см. в разделе Сопоставление параметров рабочего пространства модели с параметрами компонента AUTOSAR.
Для приложений AUTOSAR можно моделировать таблицы поиска по стандартной оси (STD_AXIS) и общей оси (COM_AXIS). Приложения AUTOSAR могут использовать таблицы подстановки одним или обоими способами:
Быстрое выполнение операций поиска.
Поддержка настройки приложения с помощью средств измерения и калибровки.
Таблица поиска использует массив данных для сопоставления входных значений с выходными значениями, аппроксимируя математическую функцию. Один -мерная таблица поиска может аппроксимировать n-мерная функция. Таблица поиска COM_AXIS - это таблица, в которой настраиваемые точки останова (точки оси) совместно используются несколькими осями таблицы.n
Стандарт AUTOSAR определяет категории параметров калибровки для STD_AXIS и COM_AXIS данных таблицы поиска:
Параметры CURVE, MAP и CUBOID представляют данные таблицы 1-D, 2-D и 3-D соответственно.
Параметры COM_AXIS представляют данные оси.
В Simulink можно:
Импорт файлов ARXML, содержащих таблицы поиска AUTOSAR в конфигурациях STD_AXIS и COM_AXIS:
Для таблицы подстановки в конфигурации STD_AXIS импортер создает блок таблицы подстановки и инициализирует его с помощью Simulink.LookupTable объект.
Для таблицы подстановки в конфигурации COM_AXIS импортер создает блок предварительного подключения, инициализированный с помощью Simulink.Breakpoint объект и блок интерполяции, использующий предварительную блокировку, инициализированный Simulink.LookupTable объект.
Импортер сопоставляет каждую созданную таблицу поиска Simulink параметрам AUTOSAR с атрибутами кода и калибровки.
Если код ARXML определяет входные переменные, измеряющие входные данные таблицы поиска, импортер создает соответствующее содержимое модели. Если входные переменные являются глобальными переменными, импортер подключает статические глобальные сигналы к входам блоков таблицы поиска. Если входные переменные являются входами корневого уровня, то импортер подключает входы корневого уровня к входам блоков таблицы поиска.
Создайте таблицы поиска STD_AXIS и COM_AXIS и сопоставьте их с параметрами AUTOSAR. Объекты таблицы подстановки сопоставляются с параметрами AUTOSAR с помощью редактора сопоставлений кодов на вкладке «Параметры».
Чтобы смоделировать таблицу поиска AUTOSAR в конфигурации STD_AXIS, создайте блок кривой или карты блоксчета AUTOSAR.
Откройте каждый блок таблицы поиска и настройте его для создания подпрограммы из библиотеки замены кода AUTOSAR 4.0 (CRL). При изменении параметров блока в диалоговом окне блока обновляется имя целевой подпрограммы AUTOSAR.
Чтобы сохранить данные, создайте один Simulink.LookupTable в рабочем пространстве модели. Используйте объект в блоке «Кривая» или «Карта».
Данные отображаются в сгенерированном коде C как поля одной структуры. Для управления характеристиками типа структуры, например его именем, используйте свойства объекта.
Чтобы смоделировать таблицу поиска AUTOSAR в COM_AXIS конфигурации, создайте один или несколько блоков Prelookup набора блоков AUTOSAR. Объедините каждое предварительное соединение с кривой блоксчета AUTOSAR, использующей предварительное соединение, или сопоставьте с помощью блока предварительного соединения.
Откройте каждый блок таблицы поиска и настройте его для создания подпрограммы из библиотеки замены кода AUTOSAR 4.0 (CRL). При изменении параметров блока в диалоговом окне блока обновляется имя целевой подпрограммы AUTOSAR.
Чтобы сохранить каждый набор данных таблицы, создайте Simulink.LookupTable в рабочем пространстве модели. Чтобы сохранить каждый вектор точки останова, создайте Simulink.Breakpoint в рабочем пространстве модели. Использовать каждый Simulink.LookupTable объект в кривой с использованием блока Prelookup или Map с использованием блока Prelookup и каждый Simulink.Breakpoint объект в Prelookup блок. Можно уменьшить потребление памяти путем совместного использования данных точек останова между таблицами подстановки.
Каждый набор данных таблицы отображается в сгенерированном коде C как отдельная переменная. Если размер таблицы настраивается, каждый вектор точки останова отображается как структура с одним полем для хранения данных точки останова и, при необходимости, одним полем для сохранения длины вектора. Второе поле позволяет настроить эффективный размер таблицы. Если размер таблицы не может быть настроен, каждый вектор точки останова отображается как массив.
Добавьте операционные точки AUTOSAR в таблицы подстановки. Подключите входные данные корневого уровня к блокам Curve, Map или Prelookup. Либо настройте входные сигналы для блоков Curve, Map или Prelookup со статической глобальной памятью.
Чтобы сопоставить объекты таблицы поиска Simulink в рабочем пространстве модели с параметрами калибровки AUTOSAR, откройте ракурс кода AUTOSAR и используйте редактор «Сопоставления кодов» на вкладке «Параметры». Используйте инспектор свойств для настройки кода параметра и атрибутов калибровки. Дополнительные сведения см. в разделе Сопоставление параметров рабочего пространства модели с параметрами компонента AUTOSAR
Настройте макет массива для многомерных таблиц подстановки. В диалоговом окне «Параметры конфигурации Simulink» на панели «Интерфейс» установите для параметра «Макет массива» (кодер Simulink) значение Column-major (значение по умолчанию) или Row-major. Выбор макета массива влияет на создание кода, включая код C и экспортированный ARXML SwRecordLayout описания.
Если выбрана компоновка основной строки, перейдите на панель Математика и типы данных (Math and Data Types) и выберите опцию конфигурации Использовать алгоритмы, оптимизированные для компоновки основной строки. Выбор алгоритма влияет на моделирование и формирование кода.
В диалоговом окне «Параметры конфигурации» на панели «Интерфейс» выберите библиотеку замены кода AUTOSAR 4.0 для генерации кода C.
Создайте код ARXML и C с содержимым таблицы поиска STD_AXIS и COM_AXIS.
Созданный код C содержит необходимые Ifl и Ifx вызовы функции поиска и Rte вызов функции доступа к данным.
Созданные ARXML-файлы содержат информацию для поддержки калибровки во время выполнения настраиваемых параметров таблицы поиска, включая:
Параметры калибровки таблицы поиска, которые ссылаются на типы данных приложения - категории CURVE, MAP или CUBOID для данных таблицы или категории COM_AXIS для данных оси.
Типы данных приложения CURVE, MAP, CUBOID и COM_AXIS с настроенными свойствами калибровки данных. Свойства включают SwCalibrationAccess, DisplayFormat и SwAddrMethod.
Макеты записей программного обеспечения (SwRecordLayouts), на которые ссылаются типы данных приложения категории CURVE, MAP, CUBOID и COM_AXIS.
Дополнительные сведения см. в разделе Настройка таблиц поиска для измерений и калибровки AUTOSAR.
Кривая | Кривая с использованием Prelookup | getParameter | Карта | Карта с использованием Prelookup | mapParameter | Предварительный поиск | Simulink.Breakpoint | Simulink.LookupTable