This OPC UA ObjectType must be used for reporting alarms of the CNC system. CncAlarmType must derived from DiscreteAlarmType.

The CncAlarmType extends the DiscreteAlarmType as followed:

  • HelpSource: To provide additional information to the alarm that is not covered by the message text (Message), the HelpSource parameter may be used. HelpSource is specified as BaseDataType. In case a URI is provided to reference additional information through an external source, the HelpSource has to be defined as String. In case a help text is provided, the data type shall be defined as LocalizedText.
  • AlarmIdentifier: CNC systems mostly provide a unique error number for all alarms. For this purpose AlarmIdentifier shall be used.
  • AuxParameters: CNC systems may want to provide information (e.g. textual or numerical) in dynamically changeable parts. As an example, this could be used to allow UIs to build their own alarm message by combining the different information fragments provided by this parameter.

As CncAlarmType is derived from the OPC UA DiscreteAlarmType, it shall be used in most parts as specified in OPC 10000-5. However, the following explanations give further instructions on how to specifically use the CncAlarmType.

  • Severity is, as defined in OPC 10000-5, an indication of the urgency of the Event and ranges between a value of 1 and 1000. Regarding the severity levels, this OPC UA companion standard does not prescribe the severity levels in detail but expects the lowest alarm severity to be set to 1, the highest severity level to 1000. By this it is secured that the lowest and the highest alarm severity can be clearly identified without knowing about the precise realization of the severities.Example 1: If a CNC system uses three severity levels (e.g. Information, Warning, Error), the Information severity level is set to 1, the Warning severity level ranges between 2 and 999 and the Error severity level is set to 1000.Example 2: If a CNC system uses five severity levels (e.g. Information, Warning, Error, Critical, Fatal), the Information severity level is set to 1, the Warning severity level ranges from 2 to 333, the Error severity level ranges from 334 to 666, the Critical severity level ranges from 667 to 999 and the Fatal severity level is set to 1000.
  • ConditionName provides alarm classification, so technically the textual alarm severity (e.g. Warning, Error, Fatal…).
  • SourceName and SourceNode: As described in chapter 4.1 several components constitute a CNC system. Contents of SourceName and SourceNode shall be as detailed as possible, meaning that if the alarm source and its name could explicitly be determined, SourceNode and SourceName should hold this information (e.g. SourceName is set to Channel1, SourceNode is referencing to the Channel1 Object). If it is not possible for a CNC system to provide this information in detail, the SourceName should provide the main component responsible for this alarm (e.g. CNC, PLC or even Channel), the SourceNode shall at least reference the root of the CNC machine interface (CncInterface Object).
  • AckedState may be set by default to true if no alarm acknowledge is required. If an alarm acknowledge is required AckedState is set to false and changes in case of the acknowledge action.
  • Retain and ActiveState shall be kept synchronized. Both parameters indicate that an alarm is still pending in case of true.

Figure 18 gives an overview on CncAlarmType. It is formally defined in Table 16.


Figure 18 – CncAlarmType