Работа с вариантами

Каждый вариант в вашей модели сопоставлен с названным различным управлением условного выражения. Путем вы указываете, что ваши различные средства управления определяют активный вариант. параметр Variant control mode, доступный в диалоговом окне параметров блоков, позволяет вам выбирать режим Expression или Label для моделирования Различных блоков.

Это изображение показывает диалоговое окно параметров блоков Различного блока Subsystem, который содержит четыре варианта:

  • Предпочтительный вариант комментируется путем добавления символа % перед различным управлением.

  • Второй выбор является (default) и активируется, когда никакое различное управление не оценивает к true.

  • Третий выбор активируется, когда выражение mode==3 && version==2 оценивает к true.

  • Четвертый выбор активируется, когда выражение mode==2 && version==1 оценивает к true.

Вариант по умолчанию

Можно задать самое большее один вариант как значение по умолчанию для модели. Как показано в изображении выше, подсистема Linear Controller задана как вариант по умолчанию. Во время образцовой компиляции, если Simulink® находит, что никакое различное управление не оценивает к true, он использует выбор по умолчанию.

В диалоговом окне выберите вариант и измените его свойство Variant control на (default).

Активный вариант

В то время как каждый вариант сопоставлен с различным управлением, только одно различное управление может оценить к true за один раз. Когда различное управление оценивает к true, Simulink активирует вариант, который соответствует тому различному управлению. Самое большее один вариант может быть активным. Активный вариант не может быть изменен, если модель скомпилирована.

В этом примере можно активировать или вариант Model или вариант Nonlinear Controller путем определения соответствующих значений для mode и version.

Значение modeЗначение versionАктивный вариант
21Nonlinear Controller
32Model

Можно задать значения mode и version в Командном окне MATLAB®.

Неактивный вариант

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

Пустой вариант

Когда вы моделируете варианты, можно создать пустые блоки Subsystem без вводов или выводов в Различном блоке Subsystem. Пустая подсистема воссоздает ситуацию, в которой та подсистема неактивна без потребности в том, чтобы полностью смоделировать вариант.

Для пустого варианта можно или задать различное условие активации или прокомментировать различное условие путем размещения символа % перед условием.

Если этот вариант активен во время симуляции, Simulink игнорирует пустой вариант. Однако Simulink продолжает выполнять коллбэки блока в пустых вариантах.

Откройте активный вариант

Когда вы открываете модель, различные блоки отображают имя варианта, который был активен в прошлый раз когда вы сохраненный ваша модель. Используйте меню Variant, чтобы открыть активный вариант. Щелкните правой кнопкой по блоку и выберите Variant> Open. Затем выберите активный вариант.

Используйте эту команду, чтобы найти текущий активный выбор:

get_param(gcb,'CompiledActiveChoiceControl')

Используйте эту команду, чтобы найти путь к текущему активному выбору:

get_param(gcb,'CompiledActiveChoiceBlock')

Примечание

  • Параметр CompiledActiveChoiceBlock поддерживается только для Различного блока Subsystem.

  • Активный вариант не может быть изменен, если модель скомпилирована.

Связанные примеры

Больше о