This clause describes the state machine and the base AlarmType behaviour for AlarmConditionTypeswith multiple mutually exclusive limits.

The ExclusiveLimitStateMachineTypedefines the state machine used by AlarmConditionTypesthat handle multiple mutually exclusive limits. It is illustrated in Figure 19.

image023.png

Figure 19– ExclusiveLimitStateMachineType

It is created by extending the FiniteStateMachineType. It is formally defined in Table 93and the state transitions are described in Table 94.

Table 93– 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

ConformanceUnits

A & C Exclusive Limit

Table 94– ExclusiveLimitStateMachineType Additional References

SourceBrowsePath

References

IsForward

TargetBrowsePath

HighHighToHigh

FromState

True

HighHigh

ToState

True

High

HasEffect

True

AlarmConditionType

HighToHighHigh

FromState

True

High

ToState

True

HighHigh

HasEffect

True

AlarmConditionType

LowLowToLow

FromState

True

LowLow

ToState

True

Low

HasEffect

True

AlarmConditionType

LowToLowLow

FromState

True

Low

ToState

True

LowLow

HasEffect

True

AlarmConditionType

The component Variablesof the ExclusiveLimitStateMachineTypehave additional Attributesdefined in Table 95.

Table 95 ExclusiveLimitStateMachineType Attribute values for child Nodes

BrowsePath

Value Attribute

HighHigh

0:StateNumber

1

High

0:StateNumber

2

Low

0:StateNumber

3

LowLow

0:StateNumber

4

LowToLowLow

0:TransitionNumber

34

LowLowToLow

0:TransitionNumber

43

HighToHighHigh

0:TransitionNumber

21

HighHighToHigh

0:TransitionNumber

12

The ExclusiveLimitStateMachineTypedefines the sub state machine that represents the actual level of a multilevel Alarm when it is in the Activestate. The sub state machine defined here includes High, Low, HighHighand LowLowstates. 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 Activestate. This Activestate could be part of a “level” Alarmor “deviation” Alarmor any other Alarmstate machine.

The LowLow, Low, High, HighHighare 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 AvailableStatesand/or AvailableTransitions(see 10000-16).

The ExclusiveLimitAlarmTypeis used to specify the common behaviour for Alarm Typeswith multiple mutually exclusive limits. The ExclusiveLimitAlarmTypeis illustrated in Figure 20.

image024.png

Figure 20– ExclusiveLimitAlarmType

The ExclusiveLimitAlarmTypeis formally defined in Table 96.

Table 96– ExclusiveLimitAlarmType definition

Attribute

Value

BrowseName

ExclusiveLimitAlarmType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the LimitAlarmType defined in clause 5.8.18.

HasSubtype

ObjectType

ExclusiveLevelAlarmType

Defined in Clause 5.8.21.3

HasSubtype

ObjectType

ExclusiveDeviationAlarmType

Defined in Clause 5.8.22.3

HasSubtype

ObjectType

ExclusiveRateOfChangeAlarmType

Defined in Clause 5.8.23.3

HasComponent

Object

LimitState

ExclusiveLimitStateMachineType

Mandatory

ConformanceUnits

A & C Exclusive Limit

The LimitStateis a sub state of the ActiveState and has an IsTrueSubStateOfreference to the ActiveState. The LimitStaterepresents the actual limit that is violated in an instance of ExclusiveLimitAlarmType. When the ActiveStateof the AlarmConditionTypeis inactive the LimitStateshall not be available and shall return NULL on read. Any Eventsthat subscribe for fields from the LimitStatewhen the ActiveStateis inactive shall return a NULL for these unavailable fields.