Выполнение алгоритма управления Используя перечислимый сигнал

Этот пример показывает, как использовать сигнал перечислимого типа данных управлять выполнением блочного алгоритма. Для основной информации об использовании перечислимых типов данных в моделях смотрите Использование Перечислимые Данные в Моделях Simulink.

Задайте перечислимый тип

Скопируйте определение перечислимого типа ex_SwitchCase_MyColors в файл скрипта в вашей текущей папке.

classdef ex_SwitchCase_MyColors < Simulink.IntEnumType
  enumeration
    Red(0)
    Yellow(1)
    Blue(2)
    Mauve(3)
  end
end

Также можно использовать функциональный Simulink.defineIntEnumType, чтобы задать тип.

Simulink.defineIntEnumType('ex_SwitchCase_MyColors',...
{'Red','Yellow','Blue','Mauve'},[0;1;2;3])

Исследуйте модель в качестве примера

Откройте модель в качестве примера ex_enum_switch_case.

open_system('ex_enum_switch_case')

Откройте диалоговое окно блока Enumerated Constant. Постоянным выходным значением является ex_SwitchCase_MyColors.Blue.

Откройте диалоговое окно блока Switch Case. Поле условий Случая задано как массив ячеек, содержащий трех из четырех возможных участников перечисления. Блок имеет четыре выходных параметров, соответствующие трем заданным участникам перечисления и случаю по умолчанию.

Откройте блоки Подсистемы Действия Случая Переключателя. Подсистемы каждый содержит блок Constant, который использует различное постоянное значение.

Управляйте выполнением во время моделирования

Моделируйте модель. Блок Display показывает значению 5, который соответствует случаю ex_SwitchCase_MyColors.Blue.

В диалоговом окне блока Enumerated Constant задайте Значение как ex_SwitchCase_MyColors.Red и нажмите Apply. Блок Display показывает 19.

Задайте Значение как ex_SwitchCase_MyColors.Mauve и нажмите Apply. Блок Display показывает 3, который соответствует случаю по умолчанию.

Была ли эта тема полезной?