Name | Description |
---|---|
FirstExample | A first simple StateGraph example |
FirstExample_Variant2 | A variant of the first simple StateGraph example |
FirstExample_Variant3 | A variant of the first simple StateGraph example |
ExecutionPaths | Example to demonstrate parallel and alternative execution paths |
ShowCompositeStep | Example to demonstrate parallel activities described by a StateGraph |
ShowExceptions | Example to demonstrate how a hierarchically structured StateGraph can suspend and resume actions on different levels |
ControlledTanks | Demonstrating the controller of a tank filling/emptying system |
Utilities | Utility components for the examples |
This is an example to demonstrate in which way parallel activities can be modelled by a StateGraph. When transition1 fires (after 1 second), two branches are executed in parallel. After 6 seconds the two branches are synchronized in order to arrive at step6.
Before simulating the model, try to figure out whether which branch of the alternative sequence is executed. Note, that alternatives have priorities according to the port index (alternative.split[1] has a higher priority to fire as alternative.split[2]).
Extends from Modelica.Icons.Example (Icon for runnable examples).This is the same example as "ExecutionPaths". The only difference is that the alternative paths are included in a "CompositeStep".
Extends from Modelica.Icons.Example (Icon for runnable examples).CompositeStep "compositeStep" is a hierarchical StateGraph consisting of two other subgraphs. Whenever component "compositeStep" is suspended, all steps with in "compositeStep" are deactivated. By entering "compositeStep" via its "resume" port, all steps within "compositeStep" are activated according to their setting before leaving the "compositeStep" via its "suspend" port.
Extends from Modelica.Icons.Example (Icon for runnable examples).With this example the controller of a tank filling/emptying system is demonstrated. This example is from Dressler (2004), see Literature. The basic operation is to fill and empty the two tanks:
The above "normal" process can be influenced by three buttons: