Руководства по моделированию для диаграмм Stateflow

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

Используйте сигналы совпадающего типа данных для входных событий

Когда вы используете несколько входных событий, чтобы инициировать график, проверить, что все входные сигналы используют совпадающий тип данных. В противном случае остановки симуляции и сообщение об ошибке появляются. Для получения дополнительной информации смотрите Типы данных, Допускавшие Входные События.

Используйте переход по умолчанию, чтобы отметить первое состояние, чтобы стать активными среди исключительного (OR) состояния

Эта инструкция предотвращает ошибки несоответствия состояния во время выполнения графика.

Используйте действия условия вместо действий перехода, когда это возможно,

Действия условия выполняются, как только условие оценивает к истине. Действия перехода не выполняются, пока путь к переходу не завершен к завершающему работу соединению или состоянию.

Если задержка выполнения не необходима, используйте действия условия вместо действий перехода.

Используйте явное упорядоченное расположение, чтобы управлять порядком тестирования группы исходящих переходов

Можно задать явное или неявное упорядоченное расположение переходов. По умолчанию график использует явное упорядоченное расположение. Если вы переключаетесь на неявное упорядоченное расположение, порядок тестирования перехода может измениться, когда графические объекты перемещаются.

Проверьте предназначенное поведение отслеживания в обратном порядке в блок-схемах

Если ваш график содержит непреднамеренное поведение отслеживания в обратном порядке, предупреждающее сообщение появляется с инструкциями относительно того, как избежать той проблемы. Для получения дополнительной информации смотрите Лучшие практики для Создания Блок-схем.

Используйте сверхсостояние, чтобы заключить подсостояния, которые совместно используют те же состояния активности

Когда у вас есть несколько исключительные (OR) состояния, которые выполняют те же состояния активности, группируют эти состояния в сверхсостоянии и задают состояния активности на том уровне.

Эта инструкция включает повторное использование состояний активности, которые применяются к нескольким подсостояниям. Вы пишете состояния активности только однажды, вместо того, чтобы написать им отдельно в каждом подсостоянии.

Примечание

Вы не можете использовать поля с этой целью, потому что поля не поддерживают состояния активности.

Используйте функции MATLAB для выполнения численных расчетов в графике

MATLAB® функции лучше в обработке численных расчетов, чем графические функции, таблицы истинности или Simulink® функции.

Используйте описательные имена в функциональных подписях

Описательные имена функций улучшают удобочитаемость объектов диаграммы.

Используйте соединения истории, чтобы записать историю состояния

Если возвращение к состоянию с исключительным (OR), разложение зависит от ранее активного подсостояния, используйте соединение истории. Этот тип соединения записывает активное подсостояние, когда график выходит из состояния. Если вы не записываете ранее активное подсостояние, переход по умолчанию происходит, и неправильное подсостояние может стать активным после возвращения состояния.

Не используйте соединения истории в состояниях с параллелью (AND) разложение

Эта инструкция предотвращает ошибки времени компиляции. Поскольку все параллельные состояния на уровне иерархии активны одновременно, соединения истории не имеют никакого значения.

Используйте явное упорядоченное расположение, чтобы управлять порядком выполнения параллели (AND) состояния

Можно задать явное или неявное упорядоченное расположение параллельных состояний. По умолчанию график использует явное упорядоченное расположение. Если вы переключаетесь на неявное упорядоченное расположение, порядок выполнения может измениться, когда параллель утверждает перемещение.