Объекты 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 путем Отправки сообщений.