Активные данные состояния могут упростить проект некоторых графиков Stateflow®, потому что вы не должны поддерживать данные, которые высоко сопоставляются к иерархии графика. Когда вы включаете активные данные состояния, действие состояния отчетов Stateflow через выходной порт к Simulink® или как локальные данные в вашем графике. Этот пример показывает, как упростить проект диаграммы Stateflow путем добавления активных выходных данных состояния. Для получения дополнительной информации смотрите Действие Состояния монитора Через Активные Данные состояния.
В устаревшей модели old_sf_car
диаграмма Stateflow shift_logic отслеживает дочернее действие состояния в gear_state
путем обновления значения выходных данных gear
.
Путем слияния активных данных состояния модель sf_car
избегает ручных обновлений данных, отражающих действие графика. Вместо этого график выходной дочерний элемент утверждает действие автоматически посредством активного вывода gear
состояния.
Чтобы упростить проект модели old_sf_car
, устраните данные, которые высоко сопоставляются к иерархии графика, и включите автоматический контроль дочернего действия состояния в gear_state
.
Откройте модель old_sf_car
.
Откройте окно Symbols путем выбора View> Symbols.
В каждом подсостоянии gear_state
удалите действие entry
, присваивающее значение переменной gear
выходных данных.
В окне Symbols щелкните правой кнопкой по выходной переменной gear
и выберите Delete
.
Откройте Property Inspector путем выбора View> Property Inspector.
В холсте редактора Stateflow выберите gear_state
состояния.
В Property Inspector установите флажок Create output for monitoring и выберите Child activity
.
В поле Data name введите имя gear
активных данных состояния.
В зарегистрированном Enum name введите имя gearType
типа данных перечисления для активных данных состояния.
В модели Simulink повторно подключите выходной сигнал gear
от графика shift_logic
до подсистем Вычисления Передачи и Порога.
Вывод gear
является перечислимым типом, управляемым Stateflow. Можно просмотреть активный выходной сигнал состояния gear
во время симуляции путем соединения графика с блоком Scope. Имена перечисляемых значений совпадают с именами состояний в gear_state
. Дополнительное перечисляемое значение None
указывает, когда никакой дочерний элемент не активен.