Errata exists for this version of the document.
The state of alarms is affected by the state of the process, equipment, system or plant. For example, when a tank is taken out of service, the level alarms associated with the tank would be no longer used, until the tank is returned to service. This section describes a StateMachine that can be deployed as part of a system designed and used to reflect the current state of the system, process, equipment or item. Customized version of this model can be implemented for any system, this sample is just an illustration.
The current state from the StateMachine is applied to all items in the HasNotifier hierarchy below the object with which the StateMachine is associated. The SystemState StateMachine can be used to automatically disable, enable, suppress or un-suppress Alarms related to the Object (with in the hierarchy of alarms from the given object). The StateMachine can also be used by advanced alarming software to adjust the setpoint, limits or other items related to the Alarms in the hierarchy.
Optionally, multiple SystemState StateMachines can be deployed.
Figure F.1 - SystemState transitions
The SystemStateStateMachineType includes a hierarchy of sub-states. It supports multiple transitions between Operating, StartingUp, ShuttingDown, Shutdown, OutOfService and Maintenance.
The state machine is illustrated in Figure F.2 and formally defined in Table 51.
Figure F.2 - SystemStateStateMachineType Model
Table F.1 – SystemStateStateMachineType definition
Attribute |
Value |
||||||
BrowseName |
SystemStateStateMachineType |
||||||
IsAbstract |
False |
||||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
||
Subtype of the FiniteStateMachineType defined in OPC 10000-5 |
|
||||||
|
|
|
|
|
|
||
HasComponent |
Object |
Operating |
|
StateType |
|
||
HasComponent |
Object |
ShuttingDown |
|
StateType |
|
||
HasComponent |
Object |
StartingUp |
|
StateType |
|
||
HasComponent |
Object |
Shutdown |
|
StateType |
|
||
HasComponent |
Object |
OutOfService |
|
StateType |
|
||
HasComponent |
Object |
Maintenance |
|
StateType |
|
||
|
|
|
|
|
|
||
HasComponent |
Object |
ShutdownToOperating |
|
TransitionType |
|
||
HasComponent |
Object |
OperatingToShutdown |
|
TransitionType |
|
||
HasComponent |
Object |
ShuttingdownToShutdown |
|
TransitionType |
|
||
HasComponent |
Object |
OperatingToShuttingdown |
|
TransitionType |
|
||
HasComponent |
Object |
StartingUpToOperating |
|
TransitionType |
|
||
HasComponent |
Object |
ShutdownToStartingUp |
|
TransitionType |
|
||
HasComponent |
Object |
OutofServiceToShutdown |
|
TransitionType |
|
||
HasComponent |
Object |
ShutdownToOutOfService |
|
TransitionType |
|
||
HasComponent |
Object |
OutofServiceToOperating |
|
TransitionType |
|
||
HasComponent |
Object |
OperatingToOutofService |
|
TransitionType |
|
||
HasComponent |
Object |
MaintenanceToOutOfService |
|
TransitionType |
|
||
HasComponent |
Object |
OutOfServiceToMaintenance |
|
TransitionType |
|
||
|
|
|
|
|
|
||
HasComponent |
Method |
Start |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
Maintain |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
Stop |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
PlaceOutOfservice |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
QuickShutdown |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
QuickStart |
Defined in Clause XXX |
Optional |
|||
HasComponent |
Method |
OutOfServiceShutdown |
Defined in Clause XXX |
Optional |
|||
|
|
|
|
|
The actual selection of States and Transitions would depend on the deployment of the StateMachine. If the StateMachine were being applied to a tank or other part of a process it might have a different set of States then if it was applied to a meter or instrument. The meter may only have Operating, OutOfService and Maintenance, while the tank may have all of the described States and Transitions.
The StateMachine supports six possible states including: Operating, ShuttingDown, StartingUp, Shutdown, OutOfService, Maintenance. It supports 12 possible Transitions and 7 possible Methods.
Table F.2 - SystemStateStateMachineType transitions
BrowseName |
References |
BrowseName |
TypeDefinition |
|
|||
Transitions |
|||
ShutdownToOperating |
FromState |
Shutdown |
StateType |
|
ToState |
Operating |
StateType |
|
HasCause |
QuickStart |
|
OperatingToShutdown |
FromState |
Operating |
StateType |
|
ToState |
Shutdown |
StateType |
|
HasCause |
QuickShutdown |
|
ShuttingdownToShutdown |
FromState |
ShuttingDown |
StateType |
|
ToState |
Shutdown |
StateType |
OperatingToShuttingdown |
FromState |
Operating |
StateType |
|
ToState |
ShuttingDown |
StateType |
|
HasCause |
Stop |
|
StartingUpToOperating |
FromState |
StartingUp |
StateType |
|
ToState |
Operating |
StateType |
ShutdownToStartingUp |
FromState |
Shutdown |
StateType |
|
ToState |
StartingUp |
StateType |
|
HasCause |
Start |
|
OutofServiceToShutdown |
FromState |
OutOfService |
StateType |
|
ToState |
Shutdown |
StateType |
|
HasCause |
OutOfServiceShutdown |
|
ShutdownToOutOfService |
FromState |
Shutdown |
StateType |
|
ToState |
OutOfService |
StateType |
|
HasCause |
OutOfServiceShutdown |
|
OutOfServiceToOperating |
FromState |
OutOfService |
StateType |
|
ToState |
Operating |
StateType |
|
HasCause |
PlaceOutOfService |
|
OperatingToOutofService |
FromState |
Operating |
StateType |
|
ToState |
OutOfService |
StateType |
|
HasCause |
PlaceOutOfService |
|
MaintenanceToOutofService |
FromState |
Maintenance |
StateType |
|
ToState |
OutOfService |
StateType |
|
HasCause |
Maintain |
|
OutOfServiceToMaintenance |
FromState |
OutOfService |
StateType |
|
ToState |
Maintenance |
StateType |
|
HasCause |
Maintain |
|
|
|
|
|
|
|
|
|
The system can always generate additional HasCause References, such as internal code. No HasEffect References are defined, but an implementation might define HasEffect References (such as HasEffectDisable) for disabling or enabling Alarms, suppressing Alarms or adjusting setpoints or limits of Alarms. The targets of the reference might be an individual Alarm or portion of a plant or piece of equipment. See section 7 for a list of HasEffect References that could be used.
______________