Errata exists for this version of the document.
The PubSubDiagnosticsType is the base type for the diagnostics objects and is formally defined in Table 134.
Table 134 – PubSubDiagnosticsType
Attribute |
Value |
||||
BrowseName |
PubSubDiagnosticsType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType defined in OPC 10000-5. |
|||||
HasComponent |
Variable |
DiagnosticsLevel |
DiagnosticsLevel |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
TotalInformation |
UInt32 |
PubSubDiagnosticsCounterType |
Mandatory |
HasComponent |
Variable |
TotalError |
UInt32 |
PubSubDiagnosticsCounterType |
Mandatory |
HasComponent |
Method |
Reset |
Defined in 9.1.11.3. |
Mandatory |
|
HasComponent |
Variable |
SubError |
Boolean |
BaseDataVariableType |
Mandatory |
HasComponent |
Object |
Counters |
|
BaseObjectType |
Mandatory |
HasComponent |
Object |
LiveValues |
|
BaseObjectType |
Mandatory |
The DiagnosticsLevel Variable configures the current diagnostics level used for the Object. The DiagnosticsLevel DataType is defined in 9.1.11.4.
The TotalInformation Variable provides the sum of all counters in this in the Object diagnostics counters with classification Information_0.
The TotalError Variable provides the sum of all counters in this in the Object diagnostics counters with classification Error_1.
The SubError Variable indicates if any statistics Object of the next PubSub layer Objects shows a value > 0 in TotalError.
The Object Counters contains all diagnostics counters for the diagnostics Object. The counters use the VariableType PubSubDiagnosticsCounterType defined in 9.1.11.5. The counter Variables of the PubSubDiagnosticsType are defined in Table 135.
Table 135 – Counters for PubSubDiagnosticsType
BrowseName |
Modelling Rule |
Diagnostics Level |
Class |
Description |
StateError |
Mandatory |
Basic_0 |
Error_1 |
PubSubState state machine defined in 6.2.1 changed to Error_3 state |
StateOperationalByMethod |
Mandatory |
Basic_0 |
Information_0 |
State changed to Operational_2 state triggered by Enable Method call. |
StateOperationalByParent |
Mandatory |
Basic_0 |
Information_0 |
State changed to Operational_2 state triggered by an operational parent |
StateOperationalFromError |
Mandatory |
Basic_0 |
Information_0 |
State changed from Error_3 to Operational_2. |
StatePausedByParent |
Mandatory |
Basic_0 |
Information_0 |
State changed to Paused_1 state triggered by a paused or disabled parent. |
StateDisabledByMethod |
Mandatory |
Basic_0 |
Information_0 |
State changed to Disabled_0 state triggered by Disable Method call. |
The Object LiveValues contains all live values of the diagnostics Object. If not further specified, the live values Variables use the VariableType BaseDataVariableType.
The nodes in the Objects Counters and LiveValues may be activated/deactivated by the parameter DiagnosticsLevel in the PubSubDiangosticsType.
The value of a node in the Object Counters shall be set to 0 whenever the counter changes from inactive to active.
The Server should dynamically remove inactive nodes from the Address Space in order to avoid confusion of the user by long lists of counters where only a few of them might be active. In case inactive nodes cannot be removed from the Address Space the Server shall set the StatusCode of the Variable Value to Bad_OutOfService.