Создайте модель, которая содержит различные блоки. Например, см. sldemo_variant_subsystems, который содержит блок Variant Subsystem (Controller
).
Задайте различные контрольные переменные, которые определяют условие, при котором различный выбор активен.
Щелкните правой кнопкой по различному блоку и нажмите Block Parameters. Диалоговое окно Block Parameters для различного блока открывается.
Чтобы выбрать активный Вариант на основе оценки Различных условий, используйте режим Expression
, еще выбирают режим Label
. Когда вы выбираете Различный режим управления как Label
, режим Label, активная опция выбора доступна. В режиме Label
Различное управление не должно быть создано в глобальной рабочей области. Можно выбрать активный Различный выбор из режима Label активные опции выбора.
Используйте опции, доступные на диалоговом окне Block Parameter, чтобы добавить различные средства управления и его соответствующее различное условие.
Демонстрационный снимок экрана для режима Expression
:
Демонстрационный снимок экрана для режима Label
:
Переменные, используемые, чтобы задать различное управление и различное условие, должны быть заданы в глобальной рабочей области или словаре данных для модели.
Задайте различное условие по умолчанию, которое будет использоваться, когда не будет никакого активного различного выбора. Используйте Различное выпадающее меню управления, чтобы задать значение по умолчанию.
Чтобы активировать различный выбор, введите различный выбор в командном окне MATLAB®. Например, введите VSS_MODE = 2
.
Чтобы моделировать модель, нажмите Simulation> Run. Модель моделирует для заданного активного выбора.
Измените активный выбор и моделируйте модель снова при необходимости.
Сгенерируйте код для модели вариантов с условными выражениями препроцессора.
У вас должна быть Встроенная лицензия Coder®, чтобы сгенерировать код.
В диалоговом окне Block Parameters выберите Analyze, весь выбор во время обновления схематически изображает и генерирует условный флажок препроцессора.
Откройте диалоговые окна Subsystem Block Parameters. Выберите Treat как атомарный модульный параметр.
В разделе Code Generation диалогового окна Configuration Parameters задайте Системный конечный файл как ert.tlc
.
В Образцовом Проводнике задайте переменные, используемые, чтобы задать различный выбор как переменную MATLAB или как Simulink.Parameter
. Тип данных Simulink.Parameter
может иметь тип Integer
, Boolean
, или Enumerated
и классом памяти может быть или importedDefine(Custom)
, Define(Custom)
или CompilerFlag
.
Для вариантов, которые заданы в глобальной рабочей области, экспорт контрольные переменные к MAT-файлу. Например, введите следующее в окне команды MATLAB:
save <MAT-File Name> <Variable Name>
PostLoadCallback > load <MAT-File Name>
Чтобы обновить или обновить активные модели, которые содержат Различные блоки Подсистемы, нажмите Diagram> Refresh Blocks (Ctrl + K) или Simulink> Схема Обновления (Ctrl + D) в Simulink®.