For Devices generating classic status codes, OPC UA Servers shall set the status information delivered for one Process Value and the OPC UA StatusCode consistent as defined in Table 15.
Table 15 – Classic status codes
Sub-status |
Description |
OPC UA Status Code |
Status Byte |
RioQualityEnumeration |
RioSpecifier Enumeration UNSPECIFIED |
RioQualifierEnumeration |
Quality BAD |
||||||
0 |
non-specific |
Bad, 0x80000000 |
0x00.. 0x03 |
BAD |
|
BAD_NOT_SPECIFIC |
1 |
configuration error |
BadConfigurationError, 0x80890000 |
0x04.. 0x07 |
BAD_NOT_SPECIFIC |
||
2 |
not connected |
BadNotConnected, 0x808A0000 |
0x08.. 0x0B |
BAD_NOT_CONNECTED |
||
3 |
device failure |
BadDeviceFailure, 0x808B0000 |
0x0C.. 0x0F |
BAD_NOT_SPECIFIC |
||
4 |
sensor failure |
BadSensorFailure, 0x808C0000 |
0x10.. 0x13 |
BAD_NOT_SPECIFIC |
||
5 |
no communication (LUV) |
BadCommunicationError, 0x80050000 |
0x14.. 0x17 |
BAD_NOT_SPECIFIC |
||
6 |
no communication (no LUV) |
BadNoCommunication, 0x80310000 |
0x18.. 0x1B |
BAD_NOT_SPECIFIC |
||
7 |
out of service |
BadOutOfService, 0x808D0000 |
0x1C.. 0x1F |
BAD_PASSIVATED |
||
Quality UNCERTAIN |
||||||
0 |
non specific |
Uncertain, 0x40000000 |
0x40.. 0x43 |
UNCERTAIN |
|
UNCERTAIN_NO_ MAINTENANCE |
1 |
last usable value (LUV) |
UncertainLastUsableValue, 0x40900000 |
0x44.. 0x47 |
UNCERTAIN_NO_ MAINTENANCE |
||
2 |
substitute value |
UncertainSubstituteValue, 0x40910000 |
0x48.. 0x4B |
UNCERTAIN_SUBSTITUTE_SET |
||
3 |
initial value |
UncertainInitialValue, 0x40920000 |
0x4C.. 0x4F |
UNCERTAIN_INITIAL_VALUE |
||
4 |
sensor conversion not accurate |
UncertainSensorNotAccurate, 0x40930000 |
0x50.. 0x53 |
UNCERTAIN_NO_ MAINTENANCE |
||
5 |
engineering unit violation |
UncertainEngineeringUnits Exceeded, 0x40940000 |
0x54.. 0x57 |
UNCERTAIN_NO_ MAINTENANCE |
||
6 |
sub normal |
UncertainSubNormal, 0x40950000 |
0x58.. 0x5B |
UNCERTAIN_NO_ MAINTENANCE |
||
7 |
configuration error |
UncertainConfigurationError, 0x420F0000 |
0x5C.. 0x5F |
UNCERTAIN_NO_ MAINTENANCE |
||
8 |
simulated value |
UncertainSimulatedValue, 0x42090000 |
0x60.. 0x63 |
UNCERTAIN_NO_ MAINTENANCE_SIMULATION_ACTIVE |
||
9 |
sensor calibration |
UncertainSensorCalibration, 0x420A0000 |
0x64.. 0x67 |
UNCERTAIN_NO_ MAINTENANCE |
||
Quality GOOD (Non Cascade) |
||||||
0 |
ok |
Good, 0x00000000 |
0x80.. 0x83 |
GOOD |
|
GOOD |
1 |
update event |
Good, 0x00000000 |
0x84.. 0x87 |
GOOD |
||
2 |
active advisory alarm |
GoodFaultStateActive, 0x04070000 |
0x88.. 0x8B |
GOOD |
||
3 |
active critical alarm |
GoodFaultStateActive, 0x04070000 |
0x8C.. 0x8F |
GOOD |
||
4 |
unacknowledged update event |
Good, 0x00000000 |
0x90.. 0x93 |
GOOD |
||
5 |
unacknowledged advisory alarm |
GoodFaultStateActive, 0x04070000 |
0x94.. 0x97 |
GOOD |
||
6 |
unacknowledged critical alarm |
GoodFaultStateActive, 0x04070000 |
0x98.. 0x9B |
GOOD |
||
7 |
reserved |
- |
|
|
|
|
8 |
initiate fail safe |
GoodInitiateFaultState, 0x04080000 |
0xA0 |
GOOD |
GOOD_INITIATE_ FAULT_STATE |
|
9 |
maintenance required |
Good, 0x00000000 |
0xA4.. 0xA7 |
GOOD_MAINTENANCE_ REQUIRED |
||
Quality GOOD (Cascade) |
||||||
0 |
ok |
GoodCascade, 0x04090000 |
0xC0.. 0xC3 |
GOOD |
|
GOOD |
1 |
initialization acknowledged |
GoodCascadeInitializationAcknowledged, 0x04010000 |
0xC4.. 0xC7 |
GOOD |
||
2 |
initialization request |
GoodCascadeInitializationRequest, 0x04020000 |
0xC8.. 0xCB |
GOOD |
||
3 |
not invited |
GoodCascadeNotInvited, 0x04030000 |
0xCC.. 0xCF |
GOOD |
||
4 |
reserved |
- |
|
|
|
|
5 |
do not select |
GoodCascadeNotSelected, 0x04040000 |
0xD4.. 0xD7 |
GOOD |
GOOD |
|
6 |
local override |
GoodLocalOverride, 0x00960000 |
0xD8.. 0xDB |
GOOD_LOCAL_OVERRIDE |
||
7 |
reserved |
- |
|
- |
|
|
8 |
initial fail safe |
GoodInitiateFaultState, 0x04080000 |
0xE0 |
GOOD |
GOOD_INITIATE_ FAULT_STATE |
According to [PCD PB] chapter 5.3.4.2.1, the classic status codes shall be supported for legacy Devices requiring backward compatibility only. Otherwise, only condensed status generation or condensed status with detailed information as defined in 6.8.1.1 and 6.8.1.2 is required.