Создание модели выключателя лампы
В качестве примера ниже описывается последовательность шагов, которые следует выполнить, чтобы создать простейший автомат с помощью Stateflow.
Создайте в среде Simulink модель выключателя лампы, показанную на рис. 7.1.
Рис. 7.1. Simulink-модель выключателя лампы
Блок On_off модели представляет собой диаграмму Stateflow (chart), находящуюся в соответствующей библиотеке. При двойном щелчке мыши на этом блоке откроется редактор Stateflow-диаграмм, с помощью которого создайте диаграмму, показанную на рис. 7.2.
Рис. 7.2. Stateflow-диаграмма выключателя лампы
При создании диаграммы используются первая и третья кнопки панели инструментов для создания меток состояния (блоки со скругленными углами) и перехода по умолчанию (стрелка с жирной точкой) соответственно. Переходы между метками состояния создаются путем протаскивания мышью в соответствующем направлении. При этом первоначально указатель мыши помещается на одну из сторон блока-источника. После того, как указатель превратиться в перекрестие, он протаскивается при нажатой левой клавише мыши к одной из сторон блока-приемника. Названия состояниям и переходам вводятся в области, обозначенные вопросительными знаками. Эти названия впоследствии можно передвигать и редактировать.
Рис. 7.3. Определение входного события
Далее следует определить входное событие, присвоив ему имя Switch. Для этого нужно открыть Explore (Обозреватель) в меню Tools и добавить событие с помощью пункта меню Add/Event. После чего следует заполнить поля события так, как это показано на рис. 7.3.
После создания моделей им следует присвоить имена и сохранить в своей директории.
Следующий этап - синтаксический анализ (Parsing) Stateflow-диаграммы. Синтаксический анализ гарантирует, что система обозначений, которые вы определили, корректна. Чтобы проанализировать диаграмму Stateflow, выберите Parse Diagram из меню Tools графического редактора. Информационное сообщение
Parsing successful for chart: "On_off"(#18)
будет отображено в появившемся окне. Любые сообщения об ошибках отображаются красным цветом. Если сообщений об ошибках нет, операция синтаксического анализа выполнена успешна.
Запустите созданную модель на выполнение. Для этого необходимо:
1. Открыть окна Stateflow диаграммы и блока Scope модели. Для этого дважды щелкните на блоках On_off Stateflow и Scope, чтобы отобразить StateFlow диаграмму и входной сигнал.
2. Запустить программу в режиме отладки с помощью пункта меню Tools/Debug… При выборе этого пункта появится окно отладчика, показанное на рис. 7.4. Stateflow Debugger (Отладчик) поддерживает такие функции, как обеспечение пошагового продвижения, анимацию и остановку в контрольных точках.
Рис. 7.4. Окно отладчика
Нажмите на кнопкуStart, чтобы запустить моделирование. При этом надпись Startзаменится надписью Continue. Пронаблюдайте процесс моделирования в режиме Start/Continue и в режиме Start/Step выполнения программы. Изменение значений переменной Light можно посмотреть при выполнении программы в автоматическом режиме (без точек останова) в командном окне MATLAB.