An asset might have several reasons why it’s not operating as expected, which often are dependent on each other. For example, the asset MyMachine might indicate the faults that a pump is not working and the oil pressure is too low. The second fault is caused by the first fault. To manage assets, it is desirable to identify the root causes of failures. In order to provide the root cause of why an asset is not operating as expected, the interface IRootCauseIndicationType is defined (see 9.4.2). Servers providing this information shall use AlarmTypes implementing this interface for alarms indicating asset specific information on failures.

The IRootCauseIndicationType is an interface and should be applied to AlarmTypes. It is formally defined in Table 16.

Note: The IRootCauseIndicationType cannot only be applied to AlarmTypes, but in general to subtypes of 0:ConditionType.

Table 16 – IRootCauseIndicationType Definition

Attribute

Value

BrowseName

IRootCauseIndicationType

IsAbstract

True

Description

Information on the root cause of conditions, should be applied to alarms (AlarmType or subtypes)

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

Subtype of the 0:BaseInterfaceType Type defined in OPC 10000-5

0:HasProperty

Variable

PotentialRootCauses

RootCauseDataType[]

PropertyType

M

Conformance Units

AMB Asset Health Status Root Causes

The mandatory Property PotentialRootCauses contains an array of potential root causes of the alarm. This is intended to be a hint to the client and might be a local view on the potential root causes of the alarm. The list might not contain all potential root causes, that is, other potential root causes might exist as well. If the alarm itself is considered to be the root cause, the array shall be empty. If no potential root causes have been identified, there shall be at least one entry in the array indicating that the root cause is unknown.

The child Nodes of the IRootCauseIndicationType have additional Attribute values defined in Table 17.

Table 17 – IRootCauseIndicationType Attribute values for child Nodes

BrowsePath

Value Attribute

Description Attribute

PotentialRootCauses

-

An array of potential root causes of the alarm. This is intended to be a hint to the client and might be a local view on the potential root causes of the alarm. The list might not contain all potential root causes, that is, other potential root causes might exist as well. If the alarm itself is considered to be the root cause, the array shall be empty. If no potential root causes have been identified, there shall be at least one entry in the array indicating that the root cause is unknown.

This structure contains information about the root cause of an alarm. The structure is defined in Table 18.

Table 18 – RootCauseDataType Structure

Name

Type

Description

RootCauseDataType

structure

RootCauseId

0:NodeId

The NodeId of the root cause of an alarm. This can point to another Node in the AddressSpace or a ConditionId, that is not necessarily represented as Object in the AddressSpace. Ideally, this points directly to the root cause. Potentially, it points to an alarm that has an additional root cause. Clients shall expect that they need to follow a path to find the root cause. If the root cause is unknown, the NodeId shall be set to NULL.

RootCause

0:LocalizedText

Localized description of the root cause of an alarm. This can be the DisplayName of the Node referenced by RootCauseId or a more descriptive text. If the root cause is unknown, this should be described in the text.

Its representation in the AddressSpace is defined in Table 19.

Table 19 – RootCauseDataType Definition

Attribute

Value

BrowseName

RootCauseDataType

IsAbstract

False

Description

Root cause of an alarm

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

Subtype of the Structure DataType defined in OPC 10000-5

Conformance Units

AMB Asset Health Status Root Causes