Пакет: Simulink
Задайте условия которые управляют выбором варианта
Объект Simulink.Variant класс представляет условное выражение, называемое вариантом управления. Объект позволяет вам задать логическое выражение, которое активирует выбор определенного варианта, когда он вычисляет, чтобы true.
Управление вариантом содержит одну или несколько переменных управления вариантом, заданных с помощью MATLAB® переменные или Simulink.Parameter объекты.
Вы задаете элементы управления вариантом для каждого варианта, представленного в Variant Subsystem или Model Variant блоке. Для данного Variant Subsystem или Model Variant блока только один вариант управления может вычислить, чтобы true за раз. Когда исполнительное управление вычисляет, чтобы true, Simulink® активизирует выбор варианта, который соответствует этому элементу управления варианта.
создает управление вариантом.variantControl = Simulink.Variant(conditionExpression)
Используйте переменный MATLAB, когда вы хотите симулировать модель, но не рассматриваете генерацию кода.
Создайте переменный MATLAB со скалярными буквальными значениями.
Fuel = 3; Emission = 1; Ratio = 3;
Разрабатывайте условные выражения с помощью переменных.
Variant1 = Simulink.Variant('Fuel==1 && Emission==2'); Variant2 = Simulink.Variant('(Fuel==2 || Emission==1) && Ratio==2'); Variant3 = Simulink.Variant('Fuel==3 || Ratio==4');
Simulink.Parameter ОбъектыЕсли вы хотите сгенерировать предварительные условия для генерации кода, используйте Simulink.Parameter объекты.
Создайте варианты Simulink.Parameter объекты со скалярными буквальными значениями.
Fuel = Simulink.Parameter(3); Emission = Simulink.Parameter(1); Ratio = Simulink.Parameter(3);
Задайте пользовательский класс памяти для этих объектов следующим ImportedDefine так, чтобы значения задавались файлом внешнего заголовка.
Другие допустимые значения для пользовательского класса памяти Define и CompilerFlag.
Fuel.CoderInfo.StorageClass = 'Custom'; Fuel.CoderInfo.CustomStorageClass = 'ImportedDefine'; Emission.CoderInfo.StorageClass = 'Custom'; Emission.CoderInfo.CustomStorageClass = 'ImportedDefine'; Ratio.CoderInfo.StorageClass = 'Custom'; Ratio.CoderInfo.CustomStorageClass = 'ImportedDefine';
Разрабатывайте условные выражения с помощью переменных и создавайте элементы управления вариантом.
Variant1 = Simulink.Variant('Fuel==1 && Emission==2'); Variant2 = Simulink.Variant('(Fuel==2 || Emission==1) && Ratio==2'); Variant3 = Simulink.Variant('Fuel==3 || Ratio==4');