Синтаксис состояний и переходов

Выразите поведение диаграммы при помощи действий и условий

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

Блоки

расширить все

ChartРеализуйте логику управления с конечным конечным автоматом
State Transition TableПредставление модальной логики в табличном формате
Truth TableПредставление логического поведения при принятии решений с условиями, решениями и действиями

Синтаксис языка Stateflow

расширить все

Обнаружение изменений

changeСгенерируйте неявное событие, когда данные изменяют значение
hasChangedОбнаружение изменения данных с момента последнего временного шага
hasChangedFromОбнаружение изменения данных от заданного значения
hasChangedToОбнаружение изменения данных до заданного значения

Действие сообщений

discardОтменить сообщение
forwardПереслать сообщение
isvalidОпределите, является ли сообщение действительным
lengthОпределите длину очереди сообщений
receiveИзвлечение сообщения из очереди
sendШироковещательное сообщение или событие

Деятельность в состоянии

enterСгенерируйте неявное событие, когда состояние становится активным
exitСгенерируйте неявное событие, когда состояние становится неактивным
inПроверяйте активность состояния в Stateflow

Манипуляция строками

ascii2strПреобразуйте массив типов uint8 натягивать
str2asciiПреобразуйте строку в массив типов uint8
str2doubleПреобразуйте строку в значение двойной точности
strcatКонкатенация строк
strcmpСравнение строк
strcpyПрисвоение строкового значения
strlenОпределите длину строки
substrИзвлечение подстроки из строки
tostringПреобразуйте числовое значение в строку

Временная логика

afterВыполните график после трансляции события или заданного времени
atВыполните график в широковещательной передаче события или указанное время
beforeВыполните график перед трансляцией события или заданным временем
countГрафик, во время которого допустимо условие
durationВремя, в течение которого условие действительно
elapsedВремя, прошедшее с момента активации состояния
everyВыполняйте график через регулярные интервалы
temporalCountКоличество событий, графика казней или время, прошедшее с тех пор, как состояния стали активными

Темы

Инструкции по присвоению имен объектам Stateflow

Зарезервированные ключевые слова, ограничения по длине имен и ограничения по именованию.

Устранение избыточного кода путем объединения состояний активности

Объедините entry, during, и exit действия в состоянии.

Управляйте Подсистемами вызова функций при помощи действий привязки

Связать вызов функции выходное событие с активностью состояния.

Объединение переходов и соединений для создания путей ветвления

Создайте точки принятия решений в путях перехода.

Поддерживаемые операции для данных графика

Выполните математические расчеты в диаграммах Stateflow.

Поддерживаемые символы в действиях

Специальные символы, доступные для действий состояния и перехода.

Вызов внешних функций MATLAB в диаграммах Stateflow

Доступ к MATLAB® функции, которые не поддерживаются для генерации кода.

Доступ к функциям MATLAB и данным рабочей области в графиках С

Вызов встроенных функций MATLAB при помощи ml оператор.

Вызов функций библиотеки C в графиках C

Доступ к функциям C в метках состояния и перехода.

Проверяйте активность состояния при помощи оператора in

Определите, является ли состояние активным во время выполнения графика.

Обнаружение изменений в значениях данных

Задайте поведение графика, когда данные изменяют значение между временными шагами.

Управление выполнением диаграммы при помощи временной логики

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

Диаграмма управления при помощи неявных Событий

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

Управляйте колебаниями при помощи оператора длительности

Упростите логику отторжения в графиках, которые имеют переходные сигналы.

Связанная информация

Рекомендуемые примеры

Modeling an Automatic Transmission Controller

Моделирование контроллера автоматической коробки передач

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