Alarmscan be modelled with multiple exclusive sub-states and assigned limits or they may be modelled with nonexclusive limits that can be used to group multiple states together.

The LimitAlarmTypeis used to provide a base Typefor AlarmConditionTypeswith multiple limits. The LimitAlarmTypeis illustrated in Figure 18.

image021.png

Figure 18– LimitAlarmType

The LimitAlarmTypeis formally defined in Table 92.

Table 92– LimitAlarmType definition

Attribute

Value

BrowseName

LimitAlarmType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the AlarmConditionType defined in clause 5.8.2.

HasSubtype

ObjectType

ExclusiveLimitAlarmType

Defined in Clause 5.8.19.3

HasSubtype

ObjectType

NonExclusiveLimitAlarmType

Defined in Clause 5.8.20

HasProperty

Variable

HighHighLimit

Double

PropertyType

Optional

HasProperty

Variable

HighLimit

Double

PropertyType

Optional

HasProperty

Variable

LowLimit

Double

PropertyType

Optional

HasProperty

Variable

LowLowLimit

Double

PropertyType

Optional

HasProperty

Variable

BaseHighHighLimit

Double

PropertyType

Optional

HasProperty

Variable

BaseHighLimit

Double

PropertyType

Optional

HasProperty

Variable

BaseLowLimit

Double

PropertyType

Optional

HasProperty

Variable

BaseLowLowLimit

Double

PropertyType

Optional

HasProperty

Variable

SeverityHighHigh

UInt16

PropertyType

Optional

HasProperty

Variable

SeverityHigh

UInt16

PropertyType

Optional

HasProperty

Variable

SeverityLow

UInt16

PropertyType

Optional

HasProperty

Variable

SeverityLowLow

UInt16

PropertyType

Optional

HasProperty

Variable

HighHighDeadband

Double

PropertyType

Optional

HasProperty

Variable

HighDeadband

Double

PropertyType

Optional

HasProperty

Variable

LowDeadband

Double

PropertyType

Optional

HasProperty

Variable

LowLowDeadband

Double

PropertyType

Optional

ConformanceUnits

A & C Exclusive Limit

A & C Non-Exclusive Limit

Four optional limits are defined that configure the states of the derived limit AlarmTypes. These Propertiesshall be set for any Alarmlimits that are exposed by the derived limit Alarmtypes. These Propertiesare listed as optional but at least one is required. For cases where an underlying system cannot provide the actual value of a limit, the limit Propertyshall still be provided, but will have its AccessLevelset to not readable. It is assumed that the limits are described using the same Engineering Unit that is assigned to the variable that is the source of the Alarm. For Rate of change limit Alarms, it is assumed this rate is units per second unless otherwise specified. The limits shall follow the following inequality HighHigh > High > Low > LowLow. If Deadband properties are provided then:

  • HighHighLimit - HighHighDeadband > HighLimit
  • HighLimit – HighDeadband > LowLimit
  • LowLimit + LowDeadband < HighLimit
  • LowLowLimit + LowLowDeadband < LowLimit

image022.png

Four optional base limits are defined that are used for AdaptiveAlarming. They contain the configured Alarmlimit. If a Serversupports AdaptiveAlarmingfor Alarmlimits, the corresponding base Alarmlimit shall be provided for any limits that are exposed by the derived limit Alarm types. The value of this property is the value of the limit to which an AdaptiveAlarmcan be reset if any algorithmic changes need to be discarded.

The Alarmlimits listed may cause an Alarmto be generated when a value equals the limit or it may generate the Alarmwhen the limit is exceeded, (i.e. the Value is above the limit for HighLimitand below the limit for LowLimit). The exact behaviour when the value is equal to the limit is Serverspecific.

The Variablethat is the source of the LimitAlarmType Alarmshall be a scalar. This LimitAlarmTypecan be subtyped if the Variablethat is the source is an array. The subtype shall describe the expected behaviour with respect to limits and the array values. Some possible options:

  • if any element of the array exceeds the limit an Alarmis generated,
  • if all elements exceed the limit an Alarmis generated,
  • the limits may also be an array, in which case if any array limit is exceeded by the corresponding source array element, an Alarmis generated.

The four optional severity Properties, if defined, provided the severity for each of the limits.

The four optional deadband Properties, if they are defined, are used to delay the return to normal until the value is within the limit by the value of the deadband. For example, if a Value exceeds a HighLimit of 20, and there is a HighDeadband define of 1, the value will remain in alarm until the Value drops below 19. An Alarmdeadband can be used to limit Alarmsin a system where values may bounce or have some noise (i.e. the value is jumping up and down by 0.2). They keep the Alarmfrom being reactivated until it has dropped enough to not retrigger by noise.

In the event of a restart of an AlarmManager, the AlarmManagershall recover the LimitAlarm state, this also applies to all subtypes.