Таблицы переходов состояний в Stateflow

Таблица изменения состояния является альтернативным способом выразить последовательную модальную логику. Вместо того, чтобы чертить состояния и переходы графически в графике Stateflow®, используйте таблицы переходов состояний, чтобы выразить модальную логику в табличном формате. Таблицы переходов состояний поддерживаются только как блоки в модели Simulink®.

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

  • Простота моделирования как будто обучает машину состояний, где модальная логика включает переходы от одного состояния до его соседа

  • Краткий, компактный формат для конечного автомата

  • Уменьшаемое обслуживание графических объектов

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

Таблицы переходов состояний поддерживают использование MATLAB® и C как язык действия. Для получения дополнительной информации о различиях между этими языками действия, смотрите Различия Между MATLAB и C как Синтаксис языка Действия.

Следующая таблица изменения состояния содержит модальную логику для поддержания температуры бойлера между двумя сетболами:

Эта диаграмма Stateflow представляет ту же модальную логику:

Правила для Использования таблиц переходов состояний

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

  • Таблицы переходов состояний должны иметь по крайней мере одну строку состояния и один столбец перехода.

Различия между таблицами переходов состояний и графиками

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

  • Суперпереходы

  • Параллель (AND) разложение

  • Локальные события

  • Блок-схемы

  • Использование функций уровня графика (графический, таблица истинности, MATLAB и Simulink)

Анатомия таблицы изменения состояния

Таблица изменения состояния содержит следующие компоненты:

Каждый столбец перехода содержит следующую межгосударственную информацию о переходе:

  • Условие

  • Действие условия

  • Целевое состояние

Составьте таблицу изменения состояния и задайте свойства

Как составить новую таблицу изменения состояния

В командной строке MATLAB, введите:

sfnew('-STT')

От браузера библиотеки Simulink:

  1. Выберите библиотеку Stateflow.

  2. Перетащите таблицу изменения состояния в свою модель.

Свойства для таблиц переходов состояний

К свойствам доступа, в редакторе Stateflow, во вкладке Modeling, нажимают Table Properties.

Эти свойства совпадают с теми для графиков, которые используют MATLAB в качестве языка действия. Для описания каждого свойства смотрите Specify Properties для диаграмм Stateflow.

Сгенерируйте схемы из таблиц переходов состояний

Программное обеспечение Stateflow автоматически генерирует диаграмму переходов состояний только для чтения из таблицы изменения состояния, которую вы составляете. При вводе изменения в таблице изменения состояния, Stateflow инкрементно обновляет схему также. Чтобы видеть самую актуальную версию базовой схемы, во вкладке Debug, нажимают Show Auto Chart.

Смотрите также

Похожие темы