Каждый вариант выбора в модели Simulink ® связан с условным выражением, называемым элементом управления вариантом. Элемент управления исполнениями, который вычисляет значение true, определяет активный вариант выбора в модели. В этом примере показано, как создать элементы управления исполнениями в модели с помощью класса перечисления в памяти. Перечисление создается с помощью функция. Не требуется сохранять перечисление в файле MATLAB ®. При создании кода перечисляемые типы улучшают читаемость, поскольку значения условий представлены как значимые имена, а не литеральные значения.Simulink.VariantConfigurationData
Открытие модели slexVariantSetupUsingInMemoryEnums. Он содержит два варианта выбора, Linear controller и Nonlinear controller. Для реализации областей исполнения используются блоки «Приемник исполнения» и «Источник исполнения».
open_system('slexVariantSetupUsingInMemoryEnums');

PreLoad Обратный вызов моделиВ этом примере класс перечисления Controller определяется в модели PreLoad функция обратного вызова. Класс перечисления определяет два элемента перечисления, Linear и Nonlinear, с базовыми целочисленными значениями 0 и 1. Определение перечисления экспортируется в файл заголовка с именем Controller.h при формировании кода. Переменная MATLAB V используется в качестве переменной управления исполнениями для хранения текущего активного варианта.
Simulink.defineIntEnumType('Controller',... {'Linear', 'Nonlinear'}, [0;1], 'Description', 'Controller',... 'DefaultValue', 'Linear', 'HeaderFile', 'Controller.h', 'DataScope',... 'Exported'); V = Controller.Linear;
Можно задать элементы управления исполнениями в Диспетчере исполнений. Чтобы открыть Диспетчер исполнения, щелкните правой кнопкой мыши значок исполнения в блоке «Приемник исполнения» или «Источник исполнения» и выберите «Открыть в Диспетчере исполнения».
Можно увидеть, как элементы перечисления и управляющая переменная используются для создания выражений условий. V == ControllerChoice.Linear и V == ControllerChoice.Nonlinear. Для построения выражения условия можно использовать все поддерживаемые перечисления Simulink. Сведения о перечислениях в Simulink см. в разделе Перечисления Simulink.
