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.
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
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.