...
PlantUML Macro | ||||
---|---|---|---|---|
| ||||
@startuml state UNINITIALIZED state PASSIVE state RUNNING [*] --> UNINITIALIZED: Created by\nACM Runtime UNINITIALIZED --> PASSIVE: Initialize (Success) UNINITIALIZED --> UNINITIALIZED_ERROR: Initialize (Error) UNINITIALIZED_ERROR --> UNINITIALIZED: UnitializeReset Initializing PASSIVE(Success) UNINITIALIZED_ERROR --> RUNNINGUNINITIALIZED_ERROR: Activating RUNNING UnitializeReset (Error) PASSIVE --> UNINITIALIZED: Uninitialize (Success) PASSIVE --> PASSIVE_ERROR: Uninitialize (Error) PASSIVE_ERROR --> PASSIVE: PassiveReset (Success) PASSIVE_ERROR --> PASSIVE_ERROR: PassiveReset (Failure) PASSIVE_ERROR --> UNINITIALIZED: Uninitialize (Success) PASSIVE_ERROR --> UNINITIALIZED_ERROR: Uninitialize (Error) PASSIVE --> RUNNING: Activate (Success) PASSIVE --> PASSIVE_ERROR: Activate (Failure) RUNNING --> PASSIVE: Passivate (Success) RUNNING --> RUNNING_ERROR: Passivate (Error) RUNNING --> RUNNING_ERROR: RuntimeError (Error) RUNNING_ERROR --> RUNNING: RuntimeReset RUNNING_ERROR --> RUNNING: ClearRuntimeError RUNNING_ERROR --> PASSIVE: Passivating PASSIVEPassivate (Success) RUNNING_ERROR --> UNINITIALIZEDPASSIVE_ERROR: Uninitializing Passivate (Error) @enduml |
Then, a Control Loop Element can be running a number of operations, each of which has an operational state:
Operational State | From State | To State | Description |
---|---|---|---|
No_Operation | None | None | No operation in progress |
InitializeInitializing | UNINITIALIZED UNINITIALIZED Unitialized | PASSIVE PassiveUNINITIALIZED_ERROR | Triggered by ACM Runtime to prepare an ACM Element for operation |
UnitializeReset | UNINITIALIZED_ERROR UNINITIALIZED_ERROR | UNINITIALIZED_ERROR UNINITIALIZED | Triggered by ACM Runtime to clear an uninitialization error on an ACM Element for operation |
Uninitializing | Passive | Uninitiated | Triggered by ACM Runtime to bring an ACM Element out of operation |
Activating | Passive | Running | Triggered by the Participant to bring an ACM element into service |
Passivating | Running | Passive | Triggered by the Participant to bring an ACM element out of service |
...