В графиках, включенных входными событиями вызова функции в модели Simulink®, вы управляете поведением состояний путем установки свойства диаграммы States When Enabling. В зависимости от значения этого свойства, когда входное событие повторно включает график, утверждает, или поддержите их новые значения или вернитесь к их начальным значениям. Изменить свойство:
Откройте диалоговое окно Свойств диаграммы.
Установите свойство States When Enabling на одну из этих опций.
| Установка | Описание |
|---|---|
Held | Поддержите новые значения состояний. |
Reset | Вернитесь к начальным значениям состояний. |
Inherit | Наследуйтесь сходящий с родительской подсистемы. |
Для новых графиков настройкой по умолчанию является Held. Для получения дополнительной информации смотрите, Активируют диаграмму Stateflow путем Отправки Входных Событий.
Если родительский элемент графика является образцовым корнем, то установка States When Enabling к Inherit эквивалентна установке свойства к Held. То, когда вызов функции ввел событие, повторно включает график, график поддерживает новые значения своих состояний. Например, в этой модели, график Caller использует событие E, чтобы проснуться и выполнить график Callee.

График Caller содержит два состояния, A и B.

Когда вы связываете E с A:
Ввод A включает график Callee.
Выход из A отключает график Callee.
Возвращение в A повторно включает график Callee.
Каждый раз, когда график Callee выполняется, выходные данные шаг y одним.

Эта таблица приводит ключевые поведения модели.
| Временной интервал | График вызывающей стороны | График вызываемого |
|---|---|---|
| t = 0 к t = 10 | A состояния активен и включает Callee. | A состояния выполняется путем постепенного увеличения y. |
| t = 10 к t = 20 | B состояния активен и отключает Callee. | A состояния не выполняется. |
| t = 20 к t = 30 | A состояния активен и повторно включает Callee. | A состояния выполняется путем постепенного увеличения y. |
| t = 30 к t = 40 | B состояния активен и отключает Callee. | A состояния не выполняется. |
| t = 40 к t = 50 | A состояния активен и повторно включает Callee. | A состояния выполняется путем постепенного увеличения y. |
Inherit или HeldВ диалоговом окне Свойств диаграммы для Callee States When Enabling является Inherit. Поскольку родительский элемент этого графика является образцовым корнем, поведение эквивалентно, когда States When Enabling является Held. Во время симуляции вывод y поддерживает свое новое значение, когда входное событие вызова функции повторно включает график в t = 20 и t = 40.

ResetПредположим, что вы изменяете свойство States When Enabling для Callee к Reset. Во время симуляции y возвращается к своему начальному значению нуля, когда входное событие вызова функции повторно включает график в t = 20 и t = 40.

Если график в блоке Model, то установка States When Enabling к Inherit эквивалентна установке свойства к Reset. То, когда вызов функции ввел событие, повторно включает график, график возвращается к начальным значениям его состояний. Например, эта модель содержит блок Model.

В блоке Model график Caller использует событие E, чтобы проснуться и выполнить график Callee, как в предыдущем примере.

Эта таблица приводит ключевые поведения модели.
| Временной интервал | График вызывающей стороны | График вызываемого |
|---|---|---|
| t = 0 к t = 10 | A состояния активен и включает Callee. | A состояния выполняется путем постепенного увеличения y. |
| t = 10 к t = 20 | B состояния активен и отключает Callee. | A состояния не выполняется. |
| t = 20 к t = 30 | A состояния активен и повторно включает Callee. | A состояния выполняется путем постепенного увеличения y. |
| t = 30 к t = 40 | B состояния активен и отключает Callee. | A состояния не выполняется. |
| t = 40 к t = 50 | A состояния активен и повторно включает Callee. | A состояния выполняется путем постепенного увеличения y. |
Inherit или ResetВ диалоговом окне Свойств диаграммы для Callee States When Enabling является Inherit. Поскольку этот график в блоке Model, поведение эквивалентно, когда States When Enabling является Reset. Во время симуляции вывод y возвращается к своему начальному значению нуля, когда входное событие вызова функции повторно включает график в t = 20 и t = 40.

HeldПредположим, что вы изменяете свойство States When Enabling для Callee к Held. Во время симуляции y поддерживает свое новое значение, когда входное событие вызова функции повторно включает график в t = 20 и t = 40.
