Реакции состояния отображения при помощи матрицы Грина

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

Матрица Грина

Матрица Грина является альтернативным представлением таблицы изменения состояния. В матрице Грина можно легко видеть, как модель реагирует на каждое условие и событие из таблицы изменения состояния.

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

Создайте матрицу Грина

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

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

Порядок выполнения появляется в верхнем правом углу каждой ячейки перехода. Порядок выполнения является красным, если он не работает относительно столбцов события. Например, в Warmup состояния, условие doneWarmup тестируется перед after(10, sec). Поскольку столбец after(10, sec) перед столбцом doneWarmup порядок выполнения для каждой соответствующей ячейки отображают красным.

Если вы изменяете таблицу изменения состояния, необходимо регенерировать матрицу Грина.

Фильтр по имени состояния

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

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

Трассируемость к таблице изменения состояния

В ячейках матрицы Грина имена состояния, действия, условия и места назначения являются гиперссылками. Чтобы видеть соответствующее состояние, действие, условие или место назначения, подсвеченное в таблице изменения состояния, кликает по одной из этих гиперссылок. Чтобы удалить выделение на таблице изменения состояния, выберите Display> Remove Highlighting.

Для получения дополнительной информации о трассируемости и сгенерированном коде C/C++, смотрите Трассировку Элементы Stateflow в Сгенерированном коде (Embedded Coder). Для получения дополнительной информации о трассируемости и сгенерированном HDL-коде, смотрите, Перешли Между Моделью Simulink и HDL-кодом при помощи Трассируемости (HDL Coder).

Похожие темы