В этом примере показано, как изменить активные значения и время активации различных параметров в модели Simulink®.
В этом примере вы будете учиться как:
Измените активные значения различных выражений условия варианта использования параметров.
Измените время определения активного времени активации варианта использования значений.
Различные параметры могут иметь несколько значений. Каждое значение различного параметра сопоставлено с различным выражением управления. В процессе моделирования значение различного параметра сопоставлено с условием, которое оценивает к true
активное значение различного параметра. Значение сопоставило с условием, которое оценивает к false
неактивное значение параметра. Чтобы переключиться между активными значениями, измените значение различной контрольной переменной. Для получения дополнительной информации смотрите Параметры Варианта Использования к Параметрам блоков Повторного использования с Различными Значениями.
Прежде чем вы начнете с этого примера, мы рекомендуем, чтобы вы завершились, Создают Простую Различную Модель Параметра.
1. Откройте модель.
open_system([matlabroot '/examples/simulink_variants/main/slexVariantParameters'])
В этой модели параметр Усиления блоков Усиления является различными параметрами, которые заданы как Simulink.VariantVariable
объекты K1
и K2
. Объекты заданы в slexVariantParameterData.m
файл.
2. Откройте slexVariantParameterData.m
файл. Файл загружается в коллбэке PostLoadFcn Моделирования> Настройки Model> Model Properties.
В файле, объекты K1
и K2
имейте несколько значений, сопоставленных с различными выражениями управления V==1
и V==2
. В дополнение к значению можно задать атрибуты, такие как размерность, тип данных, и так далее для каждого объекта с помощью параметра Спецификации объекта.
Различная контрольная переменная: значение Simulink.VariantControl
объект V
определяет который значения K1
и K2
активны в процессе моделирования. Если V==1
оценивает к true
, значения сопоставлены с V==1
станьте активными, и все значения, сопоставленные с V==2
станьте неактивными. Активное значение K1
присвоен параметру Усиления блока Gain1, и активное значение K2 присвоено параметру Усиления блока Gain2. Точно так же, когда V==2
оценивает к true
, все значения сопоставлены с V==1
станьте неактивными, и все значения, сопоставленные с V==2
станьте активными. Для получения дополнительной информации о различных средствах управления смотрите Различные Средства управления в Различных Параметрах.
Различное время активации: Simulink может установить активное значение различного Усиления параметра на различных этапах рабочего процесса генерации кода и симуляции. На основе этапа вы задаете как различное время активации, Simulink определяет, должен ли сгенерированный код содержать только активные значения или и активные и неактивные значения K1
и K2
. Различное время активации также определяет, анализировать ли все значения K1
и K2
для несовместимостей в атрибутах сигнала.
В этом примере, значении V
задан как 1
, и различное время активации задано как update diagram
. Когда вы симулируете эту модель, V==1
оценивает к true
. Значение K1
установлен в 3.5
и значение K2
установлен в 4.5
. Simulink определяет активные значения во время схемы обновления. Когда вы генерируете код из этой модели, код содержит только активные значения K1
и K2
.
Значение различной контрольной переменной определяет активное значение различных параметров в процессе моделирования. Чтобы переключить активные значения, измените значение различной контрольной переменной.
1. На панели инструментов Simulink нажмите Run. В процессе моделирования, V==1
оценивает к true
. Как значения 3.5
и 4.5
сопоставлены с V==1
, эти значения присвоены K1
и K2
, соответственно. Впоследствии, значения присвоены параметрам Усиления блоков Усиления.
2. Чтобы изменить значение параметров Усиления, измените значение V
к 2
, затем симулируйте модель снова.
V.Value = 2;
В процессе моделирования все значения сопоставлены с V==2
присвоены K1
и K2
. Впоследствии, значения присвоены параметрам Усиления блоков Усиления.
Simulink может установить активное значение различных параметров на различных этапах рабочего процесса генерации кода и симуляции. На основе этапа вы задаете как различное время активации, Simulink определяет, должен ли сгенерированный код содержать только активные значения или и активные и неактивные параметры варианта значений. Различное время активации также определяет, анализировать ли все значения различные параметры для несовместимостей в атрибутах сигнала.
Например, чтобы задать время активации V
как update diagram
, введите эту команду в Командном окне MATLAB®. Затем симулируйте модель снова.
V.ActivationTime = 'update diagram';
Simulink устанавливает активные значения K1
и K2
во время схемы обновления перед распространением атрибутов сигнала. Атрибуты сигнала, такие как размерность и тип данных не анализируются для непротиворечивости через модель. Сгенерированный код содержит только активное значение K1
и K2
. Для получения информации о других временах активации смотрите, Активируют Вариант Во время Различных Этапов Рабочего процесса Симуляции и Генерации кода.