modelLoopBreakingTransition
Information
Every loop in a StateGraph2 model needs to have at least one delayed transition. If this is not the case, a delay needs to be introduced at one transition of a loop. The "LoopBreakingTransition" is designed to replace an (immediate) Transition by a Transition that fires immediately, and then waits in an internal step for the defined delay time. The semantics is therefore slightly different if a Transition with "delayedTransition = true" is used. In the latter case, the transition only fires after the delay time and the fire condition must remain true during this time period.
A LoopBreakingTransition is just a convenient short hand notation for the combination of a Transition, a Step, and a delayed Transition as shown in the following table:
LoopBreakingTransition Equivalent system
In the following table different configurations of a LoopBreakingTransition are shown:
Parameter setting Icon Description Default transition The LoopBreakingTransition fires when the preceding step is active and the expression "condition" in the parameter menu is true. After a "waitTime" (here: 0.001 s) the succeding step is activated. use_conditionPort = true The LoopBreakingTransition fires when the preceding step is active and connector "conditionPort" is true. After a "waitTime" (here: 0.001 s) the succeding step is activated. use_firePort = true Connector "firePort" is true when the LoopBreakingTransition fires and the internal Step of this element is activated. Actions may be triggered, e.g., by connecting block MultiSwitch to the firePort.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | use_conditionPort | false | = true, if conditionPort enabled |
| Boolean | use_firePort | false | = true, if firePort enabled |
| Modelica.Units.SI.Time | waitTime | 0.001 | Time to wait in internal step after transition fired |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica_StateGraph2.Internal.Interfaces.Transition_in | inPort | Input port of transition (exactly one connection to this port is required) | |
| Modelica_StateGraph2.Internal.Interfaces.Transition_out | outPort | Output port of transition (exactly one connection from this port is required) | |
| Modelica.Blocks.Interfaces.BooleanInput | conditionPort | Fire condition as Boolean input. | |
| Modelica.Blocks.Interfaces.BooleanOutput | firePort | = true, if transition fires |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | condition | true | Fire condition (time varying Boolean expression) |
| Boolean | fire | = true, if transition fired (afterwards, there will be a delay time of waitTime) |




