The ExclusiveLimitStateMachineType defines the state machine used by AlarmConditionTypes that handle multiple mutually exclusive limits. It is illustrated in Figure 17.
Figure 17 – ExclusiveLimitStateMachineType
It is created by extending the FiniteStateMachineType. It is formally defined in Table 61 and the state transitions are described in Table 62.
Table 61 – ExclusiveLimitStateMachineType definition
Attribute |
Value |
||||
BrowseName |
ExclusiveLimitStateMachineType |
||||
IsAbstract |
False |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the FiniteStateMachineType |
|||||
HasComponent |
Object |
HighHigh |
|
StateType |
|
HasComponent |
Object |
High |
|
StateType |
|
HasComponent |
Object |
Low |
|
StateType |
|
HasComponent |
Object |
LowLow |
|
StateType |
|
HasComponent |
Object |
LowToLowLow |
|
TransitionType |
|
HasComponent |
Object |
LowLowToLow |
|
TransitionType |
|
HasComponent |
Object |
HighToHighHigh |
|
TransitionType |
|
HasComponent |
Object |
HighHighToHigh |
|
TransitionType |
|
Table 62 – ExclusiveLimitStateMachineType transitions
BrowseName |
References |
BrowseName |
TypeDefinition |
|
|||
Transitions |
|||
HighHighToHigh |
FromState |
HighHigh |
StateType |
|
ToState |
High |
StateType |
|
HasEffect |
AlarmConditionType |
|
HighToHighHigh |
FromState |
High |
StateType |
|
ToState |
HighHigh |
StateType |
|
HasEffect |
AlarmConditionType |
|
LowLowToLow |
FromState |
LowLow |
StateType |
|
ToState |
Low |
StateType |
|
HasEffect |
AlarmConditionType |
|
LowToLowLow |
FromState |
Low |
StateType |
|
ToState |
LowLow |
StateType |
|
HasEffect |
AlarmConditionType |
|
The ExclusiveLimitStateMachineType defines the sub state machine that represents the actual level of a multilevel Alarm when it is in the Active state. The sub state machine defined here includes High, Low, HighHigh and LowLow states. This model also includes in its transition state a series of transition to and from a parent state, the inactive state. This state machine as it is defined shall be used as a sub state machine for a state machine which has an Active state. This Active state could be part of a “level” Alarm or “deviation” Alarm or any other Alarm state machine.
The LowLow, Low, High, HighHigh are typical for many industries. Vendors can introduce sub-state models that include additional limits; they may also omit limits in an instance. If a model omits states or transitions in the StateMachine, it is recommended that they provide the optional Property AvailableStates and/or AvailableTransitions (see OPC 10000-5).