6.8.1 Process Value Qualifier and StatusCode Relationship for RIOforPA

RIOforPA status information is conveyed to the Client as copy of the original status transmitted in the telegram signal. The value of the RioPaProcessValueQualifierVariableType Variable and the Qualifier member of the RioPaAnalogValueDataType and the RioPaDigitalValueDataType shall contain the original status. In addition to this, the status can be encoded into additional qualifier values encoded as RioQualityEnumeration, RioSpecifierEnumeration and RioQualifierEnumeration enumeration values.

6.8.1.1 Condensed Status restricted to NE 107

If the Device generates condensed status codes restricted to NE 107 (See [PCD] chapter 5.4.3.2), the status information delivered for one Process Value and the OPC UA StatusCode shall be set consistent as defined in Table 13.

Table 13 – Condensed status restricted to NE 107
NE 107Status Byte Values Description according to ProfileOPC UA Status CodeRioQuality
Enumeration
RioSpecifier
Enumeration
RioQualifierEnumeration
Failure (F)0x24,
0x26
BAD - maintenance alarm, more diagnosis available Bad, 0x80000000BADFAILUREBAD_MAINTENANCE_ALARM
0x25, 0x27BAD_MAINTENANCE_ALARM_
SIMULATION_ACTIVE
Check(C)0x3C, 0x3EBAD - function check / local override Bad, 0x80000000BADFUNCTION_
CHECK
BAD_FUNCTION_CHECK
0x3D, 0x3FBAD_FUNCTION_CHECK_
SIMULATION_ACTIVE
Out of Specification (S)0x78, 0x7AUNCERTAIN - process related, no maintenance Uncertain, 0x40000000UNCERTAINOUT_OF_
SPECIFICATION
UNCERTAIN_NO_MAINTENANCE
0x79, 0x7BUNCERTAIN_NO_MAINTENANCE_
SIMULATION_ACTIVE
Maintenance (M)0xA4, 0xA6GOOD - maintenance required Good, 0x00000000GOODMAINTENANCE_
REQUEST
GOOD_MAINTENANCE_REQUIRED
0xA5, 0xA7GOOD_MAINTENANCE_REQUIRED_
SIMULATION_ACTIVE
0xA8, 0xAAGOOD - maintenance demanded Good, 0x00000000GOODMAINTENANCE_
REQUEST
GOOD_MAINTENANCE_DEMANDED
0xA9, 0xABGOOD_MAINTENANCE_DEMANDED_SIMULATION_ACTIVE
Good (G)0x80GOOD - ok Good, 0x00000000GOODNORMALGOOD
Check (C)0x81GOOD - simulation active GoodEdited, 0x00DC0000GOODFUNCTION_
CHECK
GOOD_SIMULATION_ACTIVE
Good (G)0x82GOOD - update event Good, 0x00000000GOODNORMALUPDATE

The two values for status bytes consider the possible appearance of the update bit as defined in [PCD]. The update bit is not mapped further into separate status values. In contrast, the appearance of the “simulation active” bit is mapped to special values of the RioQualifierEnumeration.

6.8.1.2 Status with detailed Information

If the Server generates status codes with detailed information (See [PCD] chapter 5.4.3.3), the status information delivered for one Process Value and the OPC UA StatusCode shall be set consistent as defined in Table 14.

Table 14 – Condensed status with detailed information
NE 107Status Byte RangeDescription according to ProfileOPC UA Status CodeRioQuality
Enumeration
RioSpecifier
Enumeration
RioQualifierEnumeration
Failure (F)0x00BAD - non specific

Bad,

0x80000000

BADFAILUREBAD_NON_SPECIFIC
Failure (F)0x08, 0x0ABAD - not connected

BadNotConnected,

0x808A0000

BADFAILUREBAD_NOT_CONNECTED
0x09, 0x0B

BAD_NOT_CONNECTED_

SIMULATION_ACTIVE

Failure (F)0x20, 0x22BAD - passivated

BadOutOfService,

0x808D0000

BADFAILUREBAD_PASSIVATED
0x21, 0x23BAD_PASSIVATED_SIMULATION_ACTIVE
Failure (F) 0x24, 0x26BAD - maintenance alarm, more diagnosis available

Bad,

0x80000000

BADFAILUREBAD_MAINTENANCE_ALARM
0x25, 0x27

BAD_MAINTENANCE_ALARM_

SIMULATION_ACTIVE

Failure (F)0x28, 0x2ABAD - process related, no maintenance

Bad,

0x80000000

BADFAILUREBAD_PROCESS
0x29, 0x2BBAD_PROCESS_SIMULATION_ACTIVE
Check(C) 0x3C, 0x3EBAD - function check / local override

Bad,

0x80000000

BADFUNCTION_
CHECK
BAD_FUNCTION_CHECK
0x3D, 0x3F

BAD_FUNCTION_CHECK_

SIMULATION_ACTIVE

Failure (F)0x48, 0x4AUNCERTAIN - substitute set UncertainSubstituteValue, 0x40910000UNCERTAINFAILUREUNCERTAIN_SUBSTITUTE_SET
0x49, 0x4B

UNCERTAIN_SUBSTITUTE_SET_

SIMULATION_ACTIVE

Check (C)0x4C, 0x4EUNCERTAIN - initial value UncertainInitialValue, 0x40920000UNCERTAINFUNCTION_
CHECK
UNCERTAIN_INITIAL_VALUE
0x4D, 0x4F

UNCERTAIN_INITIAL_VALUE_

SIMULATION_ACTIVE

Maintenance (M)0x68, 0x6AUNCERTAIN - maintenance demanded Uncertain, 0x40000000UNCERTAINMAINTENANCE_
REQUEST

UNCERTAIN_MAINTENANCE_

DEMANDED

0x69, 0x6B

UNCERTAIN_MAINTENANCE_

DEMANDED_SIMULATION_ACTIVE

Out of Specification (S) 0x78, 0x7AUNCERTAIN - process related, no maintenance Uncertain, 0x40000000UNCERTAINOUT_OF_
SPECIFICATION
UNCERTAIN_NO_MAINTENANCE
0x79, 0x7B

UNCERTAIN_NO_MAINTENANCE_

SIMULATION_ACTIVE

Good (G) 0x80, 0x82GOOD

Good,

0x00000000

GOODNORMALGOOD
0x81, 0x83GOOD_SIMULATION_ACTIVE
Good (G)0xA0GOOD - initiate fail safe

GoodInitiateFault

State, 0x04080000

GOODNORMALGOOD_INITIATE_FAULT_STATE
Maintenance (M) 0xA4, 0xA6GOOD - maintenance required

Good,

0x00000000

GOODMAINTENANCE_
REQUEST
GOOD_MAINTENANCE_REQUIRED
0xA5, 0xA7

GOOD_MAINTENANCE_REQUIRED_

SIMULATION_ACTIVE

0xA8, 0xAAGOOD - maintenance demanded

Good,

0x00000000

GOODMAINTENANCE_
REQUEST
GOOD_MAINTENANCE_DEMANDED
0xA9, 0xAB

GOOD_MAINTENANCE_DEMANDED_

SIMULATION_ACTIVE

Good (G)0x9C, 0x9EGOOD - local override GoodLocalOverride, 0x00960000GOODNORMALGOOD_LOCAL_OVERRIDE
0x9D, 0x9F

GOOD_LOCAL_OVERRIDE_

SIMULATION_ACTIVE

Good (G)0xBC, 0xBEGOOD - function check

Good,

0x00000000

GOODNORMALGOOD_FUNCTION_CHECK
0xBD, 0xBF

GOOD_FUNCTION_CHECK_

SIMULATION_ACTIVE

6.8.1.3 Classic Status

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
DescriptionOPC UA Status CodeStatus ByteRioQuality
Enumeration

RioSpecifier

Enumeration UNSPECIFIED

RioQualifierEnumeration
Quality BAD
0non-specific

Bad,

0x80000000

0x00.. 0x03BADBAD_NOT_SPECIFIC
1configuration error BadConfigurationError, 0x808900000x04.. 0x07BAD_NOT_SPECIFIC
2not connected BadNotConnected, 0x808A00000x08.. 0x0BBAD_NOT_CONNECTED
3device failure BadDeviceFailure, 0x808B00000x0C.. 0x0FBAD_NOT_SPECIFIC
4sensor failure BadSensorFailure, 0x808C00000x10.. 0x13BAD_NOT_SPECIFIC
5no communication (LUV) BadCommunicationError, 0x800500000x14.. 0x17BAD_NOT_SPECIFIC
6no communication (no LUV) BadNoCommunication, 0x803100000x18.. 0x1BBAD_NOT_SPECIFIC
7out of service

BadOutOfService,

0x808D0000

0x1C.. 0x1FBAD_PASSIVATED
Quality UNCERTAIN
0non specific

Uncertain,

0x40000000

0x40.. 0x43UNCERTAIN

UNCERTAIN_NO_

MAINTENANCE

1last usable value (LUV) UncertainLastUsableValue, 0x409000000x44.. 0x47

UNCERTAIN_NO_

MAINTENANCE

2substitute value UncertainSubstituteValue, 0x409100000x48.. 0x4BUNCERTAIN_SUBSTITUTE_SET
3initial value UncertainInitialValue, 0x409200000x4C.. 0x4FUNCERTAIN_INITIAL_VALUE
4sensor conversion not accurate UncertainSensorNotAccurate, 0x409300000x50.. 0x53

UNCERTAIN_NO_

MAINTENANCE

5engineering unit violation

UncertainEngineeringUnits

Exceeded, 0x40940000

0x54.. 0x57

UNCERTAIN_NO_

MAINTENANCE

6sub normal UncertainSubNormal, 0x409500000x58.. 0x5B

UNCERTAIN_NO_

MAINTENANCE

7configuration error UncertainConfigurationError, 0x420F00000x5C.. 0x5F

UNCERTAIN_NO_

MAINTENANCE

8simulated value UncertainSimulatedValue, 0x420900000x60.. 0x63

UNCERTAIN_NO_

MAINTENANCE_
SIMULATION_ACTIVE

9sensor calibration UncertainSensorCalibration, 0x420A00000x64.. 0x67

UNCERTAIN_NO_

MAINTENANCE

Quality GOOD (Non Cascade)
0ok

Good,

0x00000000

0x80.. 0x83GOODGOOD
1update event

Good,

0x00000000

0x84.. 0x87GOOD
2active advisory alarm GoodFaultStateActive, 0x040700000x88.. 0x8BGOOD
3active critical alarm GoodFaultStateActive, 0x040700000x8C.. 0x8FGOOD
4unacknowledged update event

Good,

0x00000000

0x90.. 0x93GOOD
5unacknowledged advisory alarm GoodFaultStateActive, 0x040700000x94.. 0x97GOOD
6unacknowledged critical alarm GoodFaultStateActive, 0x040700000x98.. 0x9BGOOD
7reserved -   
8initiate fail safe GoodInitiateFaultState, 0x040800000xA0GOOD

GOOD_INITIATE_

FAULT_STATE

9maintenance required

Good,

0x00000000

0xA4.. 0xA7

GOOD_MAINTENANCE_

REQUIRED

Quality GOOD (Cascade)
0ok

GoodCascade,

0x04090000

0xC0.. 0xC3GOODGOOD
1initialization acknowledged GoodCascadeInitialization
Acknowledged, 0x04010000
0xC4.. 0xC7GOOD
2initialization request GoodCascadeInitialization
Request, 0x04020000
0xC8.. 0xCBGOOD
3not invited GoodCascadeNotInvited, 0x040300000xCC.. 0xCFGOOD
4reserved-   
5do not select GoodCascadeNotSelected, 0x040400000xD4.. 0xD7GOODGOOD
6local override GoodLocalOverride, 0x009600000xD8.. 0xDBGOOD_LOCAL_OVERRIDE
7reserved- - 
8initial fail safe GoodInitiateFaultState, 0x040800000xE0GOOD

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.