exponenta event banner

Класс AUTOSAR.DualScaledParameter

Пакет: AUTOSAR
Суперклассы:

Укажите метод вычисления, значение калибровки, тип данных и другие свойства параметра с двойным масштабированием AUTOSAR

Для выполнения калибровки данных AUTOSAR R2018b и R2019a внедрили графическое отображение элементов модели на параметры и переменные компонента AUTOSAR. В редакторе Сопоставления кодов (Code Mappings) выберите параметр Simulink ® model-workspace или внутренний сигнал, состояние или хранилище данных. Выбранный элемент сопоставляется с параметром или переменной компонента AUTOSAR и изменяются его атрибуты калибровки AUTOSAR. Если в настоящее время параметры или переменные AUTOSAR моделируются с помощью параметра AUTOSAR или сигнальных объектов в базовой рабочей области, рекомендуется перейти в рабочий процесс редактора сопоставлений кодов. Дополнительные сведения см. в разделе Сопоставление элементов AUTOSAR для создания кода.

Описание

Этот класс расширяет AUTOSAR.Parameter чтобы можно было определить объект, в котором хранятся два масштабированных значения одного и того же физического значения. Например, для измерения температуры можно сохранить шкалу по Фаренгейту и шкалу по Цельсию с преобразованием, определенным предоставленным методом расчета. Учитывая одно масштабированное значение, AUTOSAR.DualScaledParameter может вычислять другое масштабированное значение с помощью метода вычисления.

Параметр с двойным масштабированием имеет:

  • Калибровочное значение. Значение, которое вы предпочитаете использовать.

  • Главное значение. Реальная ценность, которую использует Simulink.

  • Внутреннее сохраненное целое значение. Значение, используемое во встроенном коде.

Вы можете использовать AUTOSAR.DualScaledParameter объекты в модели для моделирования и создания кода. Параметр вычисляет внутреннее значение перед генерацией кода с помощью метода вычисления. Это автономное вычисление приводит к более экономному сгенерированному коду.

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

y = ax + bcx + d

  • x - калибровочное значение.

  • y является основным значением.

  • a и b - коэффициенты вычислительного числителя CalToMain.

  • c и d - коэффициенты вычислительного знаменателя CalToMain.

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

Определение AUTOSAR.DualScaledParameter в окне команд MATLAB ® создайте экземпляр объекта и присвойте ему имя.

param = AUTOSAR.DualScaledParameter;

Откройте объект рабочей области для просмотра и изменения его свойств.

Диалоговое окно «Свойства»

Вкладка «Основные атрибуты»

На этой вкладке показаны свойства, унаследованные от AUTOSAR.Parameter класс. Дополнительные сведения см. в разделе AUTOSAR.Parameter.

Вкладка «Атрибуты калибровки»

Калибровочное значение

Калибровочное значение параметра. Значение, которое вы предпочитаете использовать. Значение по умолчанию: [] (не указано). Задайте конечное, вещественное, двойное значение.

Перед заданием значения Calibration необходимо указать числитель CalToMain и знаменатель CalToMain, чтобы определить метод вычисления. Параметр использует метод вычисления и значение калибровки для вычисления реального значения, используемого Simulink.

Минимум калибровки

Минимальное значение параметра калибровки. Значение по умолчанию: [] (не указано). Задайте конечное, вещественное, двойное скалярное значение.

Перед определением минимума калибровки необходимо указать числитель CalToMain и знаменатель CalToMain, чтобы определить метод вычисления. Параметр использует метод вычисления и минимальное значение калибровки для вычисления минимального или максимального значения, используемого Simulink. Рациональная функция первого порядка является строго монотонной, либо увеличивающейся, либо уменьшающейся. Если она увеличивается, то при установке минимального значения калибровки устанавливается основное минимальное значение. Если она уменьшается, то установка минимума калибровки устанавливает основной максимум.

Если значение параметра меньше минимального значения или минимальное значение выходит за пределы диапазона типа данных параметра, Simulink генерирует предупреждение. В этих случаях при обновлении диаграммы или запуске моделирования Simulink генерирует ошибку.

Калибровочный максимум

Максимальное значение параметра калибровки может иметь. Значение по умолчанию: [] (не указано). Задайте конечное вещественное двойное скалярное значение.

Перед определением максимума калибровки необходимо указать числитель CalToMain и знаменатель CalToMain для определения метода вычисления. Параметр использует метод вычисления и максимальное значение калибровки для вычисления соответствующего максимального или минимального значения, используемого Simulink. Рациональная функция первого порядка является строго монотонной, либо увеличивающейся, либо уменьшающейся. Если она увеличивается, установка максимума калибровки устанавливает основное максимальное значение. Если она уменьшается, установка калибровочного максимума устанавливает основной минимум.

Если значение параметра меньше минимального значения или минимальное значение выходит за пределы диапазона типа данных параметра, Simulink генерирует предупреждение. В этих случаях при обновлении диаграммы или запуске моделирования Simulink генерирует ошибку.

CalToОсновной вычислительный числитель

Укажите числительные коэффициенты a и b линейного уравнения первого порядка:

y = ax + bcx + d

Значение по умолчанию: [] (не указано). Задайте конечные, вещественные двойные скалярные значения для a и b. Например, [1 1] или, для взаимного масштабирования, 1.

После применения вычислительного числителя CalToMain изменить его невозможно.

Вычислительный знаменатель CalToMain

Укажите коэффициенты знаменателя c и c линейного уравнения первого порядка:

y = ax + bcx + d

Значение по умолчанию: [] (не указано). Задайте конечные, вещественные, двойные скалярные значения для c и d. Например, [1 1].

После применения вычислительного знаменателя CalToMain изменить его невозможно.

Наименование калибровки

Укажите имя параметра калибровки. Значение по умолчанию: ''. Укажите текстовое значение, например: 'T1'.

Единицы калибровки

Укажите единицы измерения для этого значения калибровки. Это поле предназначено для использования при документировании этого параметра. Значение по умолчанию: ''. Укажите текстовое значение, например: 'Seconds'.

Допустима ли конфигурация

Simulink указывает, является ли конфигурация допустимой. Значение по умолчанию: true. Если Simulink обнаруживает проблему с конфигурацией, в этом поле устанавливается значение false и предоставляет информацию в поле Диагностическое сообщение. Невозможно установить это поле.

Диагностическое сообщение

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

Свойства

Имя

Доступ

Описание

CalibrationValue

RW

Калибровочное значение этого параметра. (См. вкладку «Атрибуты калибровки» > «Значение калибровки».)

CalibrationMin

RW

Минимальное калибровочное значение этого параметра. (См. вкладку «Атрибуты калибровки» > «Минимум калибровки».)

CalibrationMax

RW

Максимальное калибровочное значение этого параметра. (См. вкладку «Атрибуты калибровки» > «Максимум калибровки».)

CalToMainCompuNumerator

RW

Числительные коэффициенты метода вычисления. (См. вкладку «Атрибуты калибровки» > CalToГлавный вычислительный числитель.)

После подачи заявки CalToMainCompuNumerator, вы не можете изменить его.

CalToMainCompuDenominator

RW

Коэффициенты знаменателя метода вычисления. (См. вкладку «Атрибуты калибровки» > Вычислительный знаменатель CalToMain.)

После подачи заявки CalToMainCompuDenominator, вы не можете изменить его.

CalibrationName

RW

Имя калибровочного параметра. (См. вкладку «Атрибуты калибровки» > «Имя калибровки».)

CalibrationDocUnits

RW

Единицы измерения для значения этого калибровочного параметра. (См. вкладку «Атрибуты калибровки» > «Единицы калибровки».)

IsConfigurationValid

RO

Информация о достоверности конфигурации. (См. вкладку «Атрибуты калибровки» > Допустима ли конфигурация.)

DiagnosticMessage

RO

Если конфигурация недопустима, диагностические сведения помогут устранить проблему. (См. вкладку «Атрибуты калибровки» > Диагностическое сообщение.)

Примеры

свернуть все

Создание AUTOSAR.DualScaledParameter объект, который сохраняет значение как время и частоту.

T1Rec = AUTOSAR.DualScaledParameter;

Задайте метод вычисления.

T1Rec.CalToMainCompuNumerator = [1];  
T1Rec.CalToMainCompuDenominator = [1 0];

Этот метод вычисления указывает, что значение, используемое Simulink, является взаимностью значения, которое требуется использовать.

Задайте значение, которое требуется просмотреть.

T1Rec.CalibrationValue = 1/7
T1Rec = 

  DualScaledParameter with properties:

             CalibrationValue: 0.1429
               CalibrationMin: []
               CalibrationMax: []
      CalToMainCompuNumerator: 1
    CalToMainCompuDenominator: [1 0]
              CalibrationName: ''
          CalibrationDocUnits: ''
         IsConfigurationValid: 1
            DiagnosticMessage: ''
                        Value: 7
                    CoderInfo: [1×1 Simulink.CoderInfo]
                  Description: ''
                     DataType: 'auto'
                          Min: []
                          Max: []
                         Unit: ''
                   Complexity: 'real'
                   Dimensions: [1 1]

AUTOSAR.DualScaledParameter вычисляет T1Rec.Value которое является значением, используемым Simulink. T1Rec.CalibrationValue является 1/7, так T1Rec.Value является 7.

Назовите это значение и укажите единицы измерения.

T1Rec.CalibrationName = 'T1';
T1Rec.CalibrationDocUnits = 'Seconds';

Установите минимальное и максимальное значения калибровки.

T1Rec.CalibrationMin = 0.001;
T1Rec.CalibrationMax = 1;

Если указать значение за пределами этого допустимого диапазона, Simulink генерирует предупреждение.

Укажите единицы измерения, используемые Simulink.

T1Rec.Unit = 'Hz';

Откройте диалоговое окно AUTOSAR.DualScaledParameter.

open T1Rec

На вкладке Атрибуты калибровки (Calibration Attributes) отображается указанное значение калибровки и метод расчета.

В диалоговом окне перейдите на вкладку «Основные атрибуты».

На этой вкладке отображается информация о значении, используемом Simulink.

Создайте параметр с двойным масштабированием. Настройте класс хранения таким образом, чтобы при создании кода экспортированный код ARXML включал параметр с двойным масштабированием.

Создайте параметр с двойным масштабированием.

T1Rec = AUTOSAR.DualScaledParameter;
T1Rec.CalToMainCompuNumerator = [1];  
T1Rec.CalToMainCompuDenominator = [1 0];
T1Rec.CalibrationValue = 1/7;
T1Rec.CalibrationName = 'T1';
T1Rec.CalibrationDocUnits = 'Seconds';
T1Rec.CalibrationMin = 0.001;
T1Rec.CalibrationMax = 1
T1Rec = 

  DualScaledParameter with properties:

             CalibrationValue: 0.1429
               CalibrationMin: 1.0000e-03
               CalibrationMax: 1
      CalToMainCompuNumerator: 1
    CalToMainCompuDenominator: [1 0]
              CalibrationName: 'T1'
          CalibrationDocUnits: 'Seconds'
         IsConfigurationValid: 1
            DiagnosticMessage: ''
                        Value: 7
                    CoderInfo: [1×1 Simulink.CoderInfo]
                  Description: ''
                     DataType: 'auto'
                          Min: 1
                          Max: 1000
                         Unit: ''
                   Complexity: 'real'
                   Dimensions: [1 1]

Установите класс хранения параметра таким образом, чтобы созданный код ARXML включал параметр.

T1Rec.CoderInfo.StorageClass = 'Custom';
T1Rec.CoderInfo.CustomStorageClass = 'InternalCalPrm';

Теперь этот параметр можно использовать в модели Simulink. При настройке модели для AUTOSAR при создании кода для модели генератор кода создает код ARXML, содержащий информацию о параметре с двойным масштабированием.