Conditions are used in specific application domains like Maintenance, System or Process. The ConditionClass hierarchy is used to specify domains and is orthogonal to the ConditionType hierarchy. The ConditionClassId Property of the ConditionType is used to assign a Condition to a ConditionClass. Clients can use this Property to filter out essential classes. OPC UA defines the base ObjectType for all ConditionClasses and a set of common classes used across many industries. Figure 21 informally describes the hierarchy of ConditionClass Types defined in this standard.

image024.png

Figure 21 – ConditionClass type hierarchy

ConditionClasses are not representations of Objects in the underlying system and, therefore, only exist as Type Nodes in the Address Space.

BaseConditionClassType is used as class whenever a Condition cannot be assigned to a more concrete class. Servers should use a more specific ConditionClass, if possible. All ConditionClass Types derive from BaseConditionClassType. It is formally defined in Table 79.

Table 79 – BaseConditionClassType definition

Attribute

Value

BrowseName

BaseConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseObjectType defined in OPC 10000-5.

The ProcessConditionClassType is used to classify Conditions related to the process itself. Examples of a process would be a control system in a boiler or the instrumentation associated with a chemical plant or paper machine. The ProcessConditionClassType is formally defined in Table 80.

Table 80 – ProcessConditionClassType definition

Attribute

Value

BrowseName

ProcessConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.

The MaintenanceConditionClassType is used to classify Conditions related to maintenance. Examples of maintenance would be Asset Management systems or conditions, which occur in process control systems, which are related to calibration of equipment. The MaintenanceConditionClassType is formally defined in Table 81. No further definition is provided here. It is expected that other standards groups will define domain-specific sub-types.

Table 81 – MaintenanceConditionClassType definition

Attribute

Value

BrowseName

MaintenanceConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.

The SystemConditionClassType is used to classify Conditions related to the System. It is formally defined in Table 82. System Conditions occur in the controlling or monitoring system process. Examples of System related items could include available disk space on a computer, Archive media availability, network loading issues or a controller error, No further definition is provided here. It is expected that other standards groups or vendors will define domain-specific sub-types.

Table 82 – SystemConditionClassType definition

Attribute

Value

BrowseName

SystemConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.

The SafetyConditionClassType is used to classify Conditions related to safety. It is formally defined in Table 82.

Safety Conditions occur in the controlling or monitoring system process. Examples of safety related items could include, emergency shutdown systems or fire suppression systems.

Table 83 – SafetyConditionClassType definition

Attribute

Value

BrowseName

SafetyConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.

In Alarm systems some Alarms may be classified as highly managed Alarms. This class of Alarm requires special handling that varies according to the individual requirements. It might require individual acknowledgement or not allow suppression or any of a number of other special behaviours. The HighlyManagedAlarmConditionClassType is used to classify Conditions as highly managed Alarms. It is formally defined in Table 84.

Table 84 – HighlyManagedAlarmConditionClassType definition

Attribute

Value

BrowseName

HighlyManagedAlarmConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.

The TrainingConditionClassType is used to classify Conditions related to training system or training exercises. It is formally defined in Table 85. These Conditions typically occur in a training system or are generated as part of a simulation for a training exercise. Training Conditions might be process or system conditions. It is expected that other standards groups or vendors will define domain-specific sub-types.

Table 85 – TrainingConditionClassType definition

Attribute

Value

BrowseName

TrainingConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause.

The StatisticalConditionClassType is used to classify Conditions related that are based on statistical calculations. It is formally defined in Table 86. These Conditions are generated as part of a statistical analysis. They might be any of an Alarm number of types.

Table 86 – StatisticalConditionClassType definition

Attribute

Value

BrowseName

StatisticalConditionClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause.

The TestingConditionSubClassType is used to classify Conditions related to testing of an Alarm system or Alarm function. It is formally defined in Table 87. Testing Conditions might include a condition to test an alarm annunciation such as a horn or other panel. It might also be used to temporarily reclassify a Condition to check response times or suppression logic. It is expected that other standards groups or vendors will define domain-specific sub-types.

Table 87 – TestingConditionSubClassType definition

Attribute

Value

BrowseName

TestingConditionSubClassType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseConditionClassType defined in clause 5.9.2.