Stateflow® объекты расположены в иерархии, основанной на содержании. То есть один объект Stateflow может содержать другие объекты Stateflow.
Самым высоким объектом в иерархии Stateflow является машина Stateflow. Машина Stateflow содержит все диаграммы Stateflow в Simulink® модель. В сложение машина Stateflow для модели может содержать свои собственные данные.
Диаграммы Stateflow могут содержать состояния, рамки, функции, данные, события, сообщения, переходы, соединения и аннотации. Состояния, рамки и функции могут содержать другие состояния, рамки, функции, переходы, соединения, аннотации, данные, события и сообщения. Уровни вложенности могут продолжаться до бесконечности.
Для управления графическими объектами используйте Редактор Stateflow. В этой таблице перечислены каждый тип графического объекта и значок палитры, используемый для рисования объекта.
Тип графического объекта | Значок палитры | Ссылка |
---|---|---|
Государство |
| Представление рабочих режимов при помощи состояний |
Переход | Не применяется. Наведите и перетащите мышью из исходного состояния в целевое состояние. | Переход между рабочими режимами |
Соединительное соединение |
| Объединение переходов и соединений для создания путей ветвления |
Переход по умолчанию |
| Переходы по умолчанию |
Коробка |
| Сгруппировать объекты графика при помощи полей |
Состояние на основе Simulink |
| Подсистемы Simulink как состояния |
Функция Simulink |
| Повторно используйте компоненты Simulink в диаграммах Stateflow |
Графическая функция |
| Повторно используйте логические шаблоны путем определения графических функций |
MATLAB® функция |
| Повторно используйте код MATLAB путем определения функций MATLAB |
Функция таблицы истинности |
| Используйте таблицы истинности для моделирования комбинаторной логики |
Историческое соединение |
| Запись активности состояния при помощи исторических соединений |
Аннотация |
| Добавление описательных комментариев в график |
Можно задать объекты данных, событий и сообщений, которые не отображаются графически в редакторе Stateflow. Для управления неграфическими объектами используйте панель «Символы» или Model Explorer. Для получения дополнительной информации смотрите:
Диаграмма Stateflow хранит и извлекает данные, которые она использует для управления ее выполнением. Stateflow данные находятся в его собственной рабочей области, но можно также получить доступ к данным, которые находятся извне в модели Simulink или приложении, которое встраивает машину Stateflow. Необходимо задать все внутренние или внешние данные, которые вы используете в диаграмме Stateflow.
Событие является объектом Stateflow, который может инициировать целую диаграмму Stateflow или отдельные действия в графике. Поскольку диаграммы Stateflow выполняются путем реакции на события, вы задаете и программируете события в свои графики, чтобы контролировать их выполнение. Можно транслировать события каждому объекту в области объекта, отправляющего событие, или можно отправить событие конкретному объекту. Можно задать явные события, которые вы задаете непосредственно, или можно задать неявные события, которые происходят при выполнении определенных действий, таких как вход в состояние. Для получения дополнительной информации смотрите Синхронизация компонентов модели посредством широковещательных событий.
Объекты сообщений Stateflow являются объектами в очереди, которые могут нести данные. Можно отправить сообщение от одной диаграммы Stateflow к другой для связи между графиками. Можно также отправлять локальные сообщения на графике. Тип данных сообщения определяется пользователем. Можно просмотреть спасательную линию сообщения в блоке Sequence Viewer. Для получения дополнительной информации см. Раздел «Связь с диаграммами Stateflow путем отправки сообщений».