Блок-схемы в Stateflow

Блок-схема Stateflow® является графическим построением что шаблоны логики моделей, такие как деревья решений и итерационные циклы. Блок-схемы представляют комбинаторную логику, в которой результат не зависит от предшествующих результатов. Вы создаете блок-схемы путем объединения соединительных соединений и переходов, не используя состояний. Соединения обеспечивают ветви решения между различными путями к переходу. Выполнение блок-схемы начинается при переходе по умолчанию и концах на завершающем работу перекрестке (соединение, которое не имеет никаких допустимых исходящих переходов).

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

Пример блок-схемы, что модели простая логика If-Else:

Блок-схема моделирует этот код:

if u > 0
   y = 1;
else
   y = 0;
end

Чертите блок-схему

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

  1. Откройте график.

  2. Из панели инструментов редактора перетащите одно или несколько соединительных соединений в график с инструментом Connective Junction:

  3. Добавьте пути к переходу между соединениями.

  4. Пометьте переходы.

  5. Добавьте переход по умолчанию к соединению, где выполнение блок-схемы запускается.

Лучшие практики для создания блок-схем

Примените эти лучшие методы, чтобы создать эффективные, точные блок-схемы:

 Используйте только один переход по умолчанию

 Обеспечьте только одно завершающее работу соединение

 Сходитесь все пути к переходу к завершающему работу соединению

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

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

Пример, который иллюстрирует эти лучшые практики:

Похожие темы