Подходы, чтобы управлять активным вариантом различного блока

Этот пример показывает разные подходы, чтобы управлять активным выбором встроенных различных и Различных блоков Subsystem от маски или рабочего пространства модели. Для получения дополнительной информации о Различных блоках смотрите то, Что Является Вариантами и Когда Использовать Их.

Модель

В этом примере четыре модели Simulink® подсвечены в зеленом, и одна модель подсвечена в красном. Модели зеленого цвета представляют рекомендуемые подходы, чтобы управлять активным выбором Различных блоков. Эти подходы позволяют вам ограничить осциллограф различной контрольной переменной, избежать конфликтов по совпадению имен и установить ясное владение переменной между Различными блоками. Они также позволяют вам использовать те же имена для переменных в различных осциллографах.

open_system([matlabroot '/examples/simulink_variants/main/slexVariantSubsystemCtrlFromMaskandModelWks'])

Ограничения в рекомендуемых подходах

  • Работа, только если Различный параметр режима управления устанавливается на Expression и Различный параметр времени активации устанавливается на update diagram.

  • Не поддерживайте использование Simulink.Variant объекты или Simulink.Parameter как различные контрольные переменные.

  • Не поддерживайте переменные аргументов модели использования как различные контрольные переменные.

  • Количество символов в различной контрольной переменной не должно превышать 40.

  • Различная контрольная переменная, происходящая из рабочей области маски, не должна запускаться с SLMASK.

Приблизьтесь 1: используйте параметр маски в качестве различной контрольной переменной

Этот раздел объясняет, как управлять активным вариантом Различных блоков Subsystem и встроить различные блоки при помощи параметра маски.

Управляйте Активным Выбором Различного блока Subsystem с помощью Параметра Маски

Считайте модель с Различным блоком Subsystem VSS1. Подсистема VSS1 задает два потенциальных варианта, x2 и x3. Выражением управления для x2 является B == 1 и поскольку x3 является B == 2. Переменная B параметр маски. Просмотреть свойства B:

1. Щелкните правой кнопкой по подсистеме VSS1.

2. Выберите Mask> Edit Mask. В панели Parameters & Dialog, под Параметрами, Быстрый столбец задает метку параметра на диалоговом окне маски, и столбец Имени задает имя параметра маски. В этом примере Подсказка задана как Enter the choice, и Имя задано как B.

3. Чтобы открыть диалоговое окно маски, дважды кликните подсистему VSS1. В процессе моделирования индекс значения, которое вы задаете здесь, сопоставлен с основной переменной B, который затем используется, чтобы оценить различные выражения условия, сопоставленные с блоком. В этом примере Входит значение по умолчанию, выбором является 2. Когда вы симулируете эту модель, различное условие B == 2 оценивает к true. x2 подсистема становится неактивной, и x3 подсистема становится активной.

4. Чтобы изменить активный выбор, задайте значение как 1 в диалоговом окне маски затем симулируйте модель снова. В процессе моделирования, значение B установлен в 1 который в свою очередь оценивает Различное условие, B == 1 к true. x2 подсистема становится активной, и x3 подсистема становится неактивной.

Управляйте Активным Выбором Встроенных Различных Блоков с помощью Параметра Маски

Считайте модель с блоком Subsystem маскированным SS1. Подсистема SS1 имеет параметр маски VC это используется в качестве различной контрольной переменной в базовом Различном Исходном блоке Vsrc. Первый входной порт сопоставлен с выражением управления VC == 1 и второй входной порт сопоставлен с выражением управления VC == 2. Просмотреть свойства VC:

1. Щелкните правой кнопкой по подсистеме SS1.

2. Выберите Edit Mask. В панели Parameters & Dialog, под Параметрами, Быстрый столбец задает метку параметра на диалоговом окне маски, и столбец Имени задает имя параметра маски. В этом примере Подсказка задана как Choose the signal, и Имя задано как VC.

3. Чтобы открыть диалоговое окно маски, дважды кликните подсистему SS1. В процессе моделирования индекс значения, которое вы выбираете здесь, сопоставлен с основной переменной VC, который затем используется, чтобы оценить различные выражения условия, сопоставленные с блоком Vsrc. В этом примере Выбирает значение по умолчанию, сигналом является Sine Wave. Когда вы симулируете эту модель, индекс Sine Wave, 2, сопоставлен с VC. Различное условие VC == 2 оценивает к true. В результате первый входной порт блока Vsrc, который сопоставлен с VC == 1 становится неактивным и второй входной порт, который сопоставлен с VC == 2 становится активным.

4. Чтобы изменить активный выбор, выберите значение как Constant в диалоговом окне маски затем симулируйте модель снова. В процессе моделирования, значение VC установлен в 1 который в свою очередь оценивает различное условие, VC == 1 к true. Первый входной порт блока Vsrc становится активным, и второй входной порт становится неактивным.

Приблизьтесь 2: используйте переменную инициализации маски в качестве различной контрольной переменной

Этот раздел объясняет, как управлять активным вариантом Различных блоков Subsystem с помощью переменной инициализации маски. Можно следовать за этим подходом, чтобы управлять активным вариантом встроенных различных блоков также.

Считайте модель с Различным блоком Subsystem VSS2. 1. В подсистеме VSS2 выражением управления для x2 является A == 1 и поскольку x3 является A == 2. Переменная A используемый в выражении управления регулярная переменная MATLAB®, которая задана во вкладке Initialization рабочей области маски. Просмотреть свойства A:

a. Щелкните правой кнопкой по подсистеме VSS2.

b. Выберите Mask> Edit Mask. Во вкладке Initialization, при командах Инициализации, значении A установлен в 1.

В процессе моделирования это значение используется, чтобы оценить различные выражения условия, сопоставленные с блоком. Когда вы симулируете эту модель, различное условие A == 1 оценивает к true. x2 подсистема становится активной, и x3 подсистема становится неактивной.

3. Чтобы изменить активный выбор, задайте значение A как 2 во вкладке Initialization затем симулируйте модель снова. В процессе моделирования, A == 2 оценивает к true. x2 подсистема становится активной, и x3 подсистема становится неактивной.

Приблизьтесь 3: используйте переменную рабочего пространства модели в качестве различной контрольной переменной в различном блоке Subsystem

Этот раздел объясняет, как управлять активным вариантом Различных блоков Subsystem с помощью переменной рабочего пространства модели. Можно следовать за этим подходом, чтобы управлять активным вариантом встроенных различных блоков также.

Считайте модель с Различным блоком Subsystem VSS3. 1. В подсистеме VSS3 выражением управления для x2 является C == 1 и для x3 C == 2. Переменная C используемый в выражении условия регулярная переменная MATLAB®, которая задана в рабочем пространстве модели. Просмотреть свойства C:

a. На вкладке Modeling нажмите Model Explorer.

b. В панели Иерархии модели нажмите Model Workspace. Значение C установлен в 1.

В процессе моделирования это значение используется, чтобы оценить различные выражения условия, сопоставленные с блоком. Когда вы симулируете эту модель, различное условие C == 1 оценивает к true. x2 подсистема становится активной, и x3 подсистема становится неактивной. Чтобы изменить активный выбор, задайте значение C как 2, затем симулируйте модель снова. В процессе моделирования, Различное условие C == 2 оценивает к true. x2 подсистема становится активной, и x3 подсистема становится неактивной.

Приблизьтесь 4: используйте скрипт инициализации маски, чтобы управлять активными вариантами различного блока Subsystem

Этот подход не рекомендуется для управления активным вариантом Различных Подсистем. Однако, если Различный режим управления подсистемы установлен в Label режим, можно следовать за этим подходом. Для получения дополнительной информации смотрите Маску Различная Подсистема.

Смотрите также

Управляйте активным выбором заблокированной пользовательской подсистемы варианта библиотеки Используя параметр маски

Для просмотра документации необходимо авторизоваться на сайте