Simulink.VariantControl class

Пакет: Simulink

Создайте различный объект контрольной переменной

Описание

Simulink.VariantControl класс создает различный объект контрольной переменной сопоставить значение различной контрольной переменной с различным временем активации. Используйте Simulink.VariantControl объект определить активное значение различного параметра в процессе моделирования.

Создание

variantControlVariable = Simulink.VariantControl создает различный объект контрольной переменной без значения и 'ActivationTime' установите на 'update diagram'.

variantControlVariable = Simulink.VariantControl(Name,Value) создает различный объект контрольной переменной, как задано Name,Value парные аргументы. Используя этот синтаксис, вы создаете объект и сопоставляете его значение с различным временем активации.

Входные параметры

развернуть все

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Value', 1, 'ActivationTime', 'update diagram'

Значение различной контрольной переменной возражает в виде скалярных переменных и перечислимых типов.

Пример: 'Value', 1

Время активации активного значения различного параметра в виде 'update diagram', 'update diagram analyze all choices', или 'code compile'. Это свойство также определяет, включать ли только активное значение или и активные и неактивные значения различного параметра в сгенерированном коде.

Установите время активации как:

  • 'update diagram' – Simulink® устанавливает активные значения различных параметров во время схемы обновления перед распространением атрибутов сигнала. Неактивный выбор удален до распространения атрибутов сигнала. Атрибуты сигнала, такие как размерность и тип данных не анализируются для непротиворечивости через модель. Сгенерированный код содержит только активное значение различных параметров.

  • 'update diagram analyze all choices'– Simulink устанавливает активные значения различных параметров во время схемы обновления после распространения атрибутов сигнала. Атрибуты сигнала распространены и к активным и к неактивным значениям. Атрибуты сигнала, такие как размерность и тип данных анализируются для непротиворечивости через модель. Сгенерированный код содержит только активное значение различных параметров.

  • 'code compile' – Simulink устанавливает активный выбор во время компиляции кода. Атрибуты сигнала распространены и к активным и к неактивным значениям. Атрибуты сигнала, такие как размерность и тип данных анализируются для непротиворечивости через модель. Сгенерированный код содержит и активные и неактивные значения различных параметров. В сгенерированном коде значения заключены в условные выражения препроцессора #if и #elseif.

Пример: 'ActivationTime', 'code compile'

Методы

развернуть все

Примеры

свернуть все

Скалярные переменные MATLAB позволяют вам значениям варианта быстрого прототипирования, когда вы все еще создаете свою модель. Они помогают вам фокусироваться больше на создании ваших различных значений, чем на разработке выражений, которые активируют тот выбор.

В редакторе MATLAB задайте варианты в их самой простой форме как скалярные переменные в Simulink.VariantVariable объект.

vpObj = Simulink.VariantVariable('Choices',{'VCtrl==1', 1000, 'VCtrl==2', 2000})
vpObj = 
VariantVariable with 2 choices:

 Condition 	Value
__________	_____
VCtrl == 1	1000
VCtrl == 2	2000

Specification: ''

Use getChoice, setChoice, addChoice, removeChoice to access, modify, add or
remove choices

Активируйте одно из различных значений путем определения контрольной переменной, VCtrl, и устанавливание его значения к 1 в Simulink.VariantControl объект. Это условие активирует значение 1000 и присвоения это значение к vpObj.

VCtrl = Simulink.VariantControl('Value', 1, 'ActivationTime', 'update diagram')
VCtrl = 
  VariantControl with properties:

             Value: 1
    ActivationTime: 'update diagram'

Если вы изменяете значение VCtrl к 2, Simulink® устанавливает значение vpObj к 2000.

VCtrl.Value = 2;

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

В Редакторе MATLAB® задайте классы, которые сопоставляют перечисляемые значения с понятными именами.

Задайте имена как варианты в Simulink.VariantVariable объект.

vpObj = Simulink.VariantVariable('Choices', {'VCtrl == EngType.Small',3.5,'VCtrl == EngType.Big',8.5})
vpObj = 
VariantVariable with 2 choices:

       Condition       	Value
______________________	_____
VCtrl == EngType.Big  	8.5000
VCtrl == EngType.Small	3.5000

Specification: ''

Use getChoice, setChoice, addChoice, removeChoice to access, modify, add or
remove choices

Активируйте одно из различных значений путем определения контрольной переменной VCtrl и устанавливание его значения к EngType.Small в Simulink.VariantControl объект. Это условие активирует значение 3.5 и присвоения это значение к vpObj.

VCtrl = Simulink.VariantControl('Value',EngType.Small,'ActivationTime','code compile')
VCtrl = 
  VariantControl with properties:

             Value: Small
    ActivationTime: 'code compile'

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

Введенный в R2021a