exponenta event banner

Создание элементов управления исполнениями с помощью класса перечисления в памяти

Каждый вариант выбора в модели Simulink ® связан с условным выражением, называемым элементом управления вариантом. Элемент управления исполнениями, который вычисляет значение true, определяет активный вариант выбора в модели. В этом примере показано, как создать элементы управления исполнениями в модели с помощью класса перечисления в памяти. Перечисление создается с помощью Simulink.VariantConfigurationData функция. Не требуется сохранять перечисление в файле MATLAB ®. При создании кода перечисляемые типы улучшают читаемость, поскольку значения условий представлены как значимые имена, а не литеральные значения.

Изучение модели

Открытие модели 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.

См. также