Образцовые реактивные системы в Stateflow

Идентифицируйте системные атрибуты

Прежде чем вы создадите график Stateflow® в модели Simulink®, идентифицируете ваши системные атрибуты путем ответа на эти вопросы:

  1. Каковы ваши интерфейсы?

    1. Что триггеры события, на который реагирует ваша система?

    2. Что входные параметры к вашей системе?

    3. Каковы выходные параметры от вашей системы?

  2. Ваша система имеет какие-либо рабочие режимы?

    1. Если ответ да, каковы рабочие режимы?

    2. Между которыми режимами можно перейти? Есть ли какие-либо рабочие режимы, которые запускаются параллельно?

    Если ваша система не имеет никаких рабочих режимов, системой является stateless. Если ваша система имеет рабочие режимы, системой является modal.

Выберите тип конечного автомата

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

  • Классика — тип машины по умолчанию. Обеспечивает полный набор семантики для графиков MATLAB и графиков C.

  • Мучнистый — тип Машины, в котором вывод является функцией входных параметров и состояния.

  • Мур — Тип машины, в котором вывод является функцией состояния.

Для получения дополнительной информации смотрите, Как Объекты Stateflow Взаимодействуют Во время Выполнения, Различий Между MATLAB и C как Синтаксис языка Действия и Обзор Машин Мура и Мучнистых.

Задайте условия перехода и акты государственной власти

После того, как вы создаете пустой график, отвечаете на следующие вопросы:

  1. Для каждого состояния, каковы действия, которые вы хотите выполнить?

  2. Каковы правила для перехода между вашими состояниями? Если ваш график не имеет никаких состояний, каковы правила для перехода между ответвлениями вашей логики потока?

Используя ваши ответы на те вопросы, задайте условия перехода и акты государственной власти:

  1. Чертите состояния, чтобы представлять ваши рабочие режимы, если таковые имеются. Смотрите Представляют Рабочие режимы при помощи состояний.

  2. Реализуйте акты государственной власти путем добавления меток состояния, которые используют соответствующий синтаксис. Смотрите Типы Акта государственной власти.

  3. Чертите переходы, чтобы представлять направление логики потока между состояниями или между ответвлениями вашей блок-схемы. Смотрите Переход Между Рабочими режимами.

  4. Реализуйте условия перехода путем добавления меток перехода, которые используют соответствующий синтаксис. Смотрите Типы Действия Перехода.

Задайте персистентные данные, чтобы сохранить переменные состояния

После добавления актов государственной власти и условий перехода к вашему графику, определите, требует ли график, чтобы какие-либо локальные или персистентные данные сохранили переменные состояния. Если так, выполните эти шаги:

  1. Добавьте локальные данные в соответствующий уровень иерархии графика. Смотрите Добавляют Данные Stateflow.

    Можно также использовать Мастер Символа, чтобы добавить данные в график. Смотрите Символы Твердости Через Мастер Символа.

  2. Задайте тип, размер, сложность и другие свойства данных. Смотрите Свойства данных Набора.

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

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

  • Блок-схема — Инкапсулирует блок-схемы, содержащие, "если затем еще", случай переключателя, поскольку, в то время как, или делают - в то время как шаблоны.

  • MATLAB Напишите ориентированные на матрицу алгоритмы; вызовите функции MATLAB для анализа данных и визуализации.

  • Simulink — Вызовите подсистемы вызова функций Simulink непосредственно, чтобы оптимизировать проект и улучшить удобочитаемость.

  • Таблица истинности — Представляет комбинационную логику для приложений принятия решений, таких как обнаружение отказа и переключение режимов.

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

Если четыре типа функций Stateflow не работают, можно записать собственный C или Код С++ для интеграции с графиком. Для получения дополнительной информации об интегрировании пользовательского кода, см. Пользовательский код Повторного использования в диаграммах Stateflow.

Проверяйте, что ваше системное представление завершено

Ваша диаграмма Stateflow, полностью специальная логические или событийно-управляемые компоненты вашей системы?

  • Если ответ да, вы сделаны.

  • Если ответ не, можно создать отдельный график или добавить иерархию в текущую диаграмму.

    • Чтобы создать новый график, повторите все шаги в этом основном рабочем процессе.

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