Этот пример показов, как использовать сигнал перечисленного типа данных для управления выполнением алгоритма блоков. Для получения основных сведений об использовании перечисленных типов данных в моделях, смотрите Использование перечисленных данных в моделях 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')
Откройте перечисленное постоянное диалоговое окно блока. Постоянное выходное значение ex_SwitchCase_MyColors.Blue
.
Откройте диалоговое окно блока Switch Case. Поле Case conditions задается как массив ячеек, содержащий три из четырёх возможных представителей перечисления. Блок имеет четыре выхода, соответствующих трём заданным представителям перечисления, и случай по умолчанию.
Откройте блоки Switch Case Action Subsystem. Каждая из подсистем содержит блок Constant, который использует разное постоянное значение.
Симулируйте модель. Блок Display показывает значение 5
, что соответствует случаю ex_SwitchCase_MyColors.Blue
.
В Перечисляемом Постоянном диалоговом окне блока задайте Значение следующим ex_SwitchCase_MyColors.Red
и нажмите Применить. Блок Display показывает 19
.
Задайте значение следующим ex_SwitchCase_MyColors.Mauve
и нажмите Применить. Блок Display показывает 3
, что соответствует случаю по умолчанию.