OPC quality flags
- Last UpdatedJul 10, 2024
- 4 minute read
OPC clients show a variety of possible quality flags for an item’s data value. These clients typically show quality flags in one of the two forms: textual description or hexadecimal value.
If your OPC client shows quality flags in textual form, see the "Description" table below for descriptions of these flags. If your OPC client shows quality flags in hexadecimal form, see the "Hexadecimal Quality Code Cross-Reference" table below.
For descriptions of hexadecimal quality flags, first check the hex value in the "Hexadecimal Quality Code Cross-Reference" table. Then, use the three numbers in associated Description Cross-Reference column to find the Textual Quality Words and Description in the "Description" table.
The three descriptions provide a complete explanation for the quality code shown in your OPC client. For example, hex quality code 0x001B (1, 10, 20 cross-reference numbers) is described as follows:
-
1 Bad quality - The Value is not useful.
-
10 Comm failure - Communication has failed. There is no last known value available.
-
20 Constant - The value is a constant and cannot move.
Hexadecimal Quality Flag
Description Cross-Reference
0x0000
1, 4, 17
0x0001
1, 4, 18
0x0002
1, 4, 19
0x0003
1, 4, 20
0x0004
1, 5, 17
0x0005
1, 5, 18
0x0006
1, 5, 19
0x0007
1, 5, 20
0x0008
1, 6, 17
0x0009
1, 6, 18
0x000A
1, 6, 19
0x000B
1, 6, 20
0x000C
1, 7, 17
0x000D
1, 7, 18
0x000E
1, 7, 19
0x000F
1, 7, 20
0x0010
1, 8, 17
0x0011
1, 8, 18
0x0012
1, 8, 19
0x0013
1, 8, 20
0x0014
1, 9, 17
0x0015
1, 9, 18
0x0016
1, 9, 19
0x0017
1, 9, 20
0x0018
1, 10, 17
0x0019
1, 10, 18
0x001A
1, 10, 19
0x001B
1, 10, 20
0x001C
1, 11, 17
0x001D
1, 11, 18
0x001E
1, 11, 19
0x001F
1, 11, 20
0x0040
2, 4, 17
0x0041
2, 4, 18
0x0042
2, 4, 19
0x0043
2, 4, 20
0x0044
2, 12, 17
0x0045
2, 12, 18
0x0046
2, 12, 19
0x0047
2, 12, 20
0x0050
2, 13, 17
0x0051
2, 13, 18
0x0052
2, 13, 19
0x0053
2, 13, 20
0x0054
2, 14, 17
0x0055
2, 14, 18
0x0056
2, 14, 19
0x0057
2, 14, 20
0x0058
2, 15, 17
0x0059
2, 15, 18
0x005A
2, 15, 19
0x005B
2, 15, 20
0x00C0
3, 4, 17
0x00C1
3, 4, 18
0x00C2
3, 4, 19
0x00C3
3, 4, 20
0x00D8
3, 16, 17
0x00D9
3, 16, 18
0x00DA
3, 16, 19
0x00DB
3, 16, 20
Description Table for Cross References
|
Cross Reference |
Textual Quality Words |
Description |
|
1 |
Bad |
The Value is not useful. |
|
2 |
Uncertain |
The quality of the value is uncertain. |
|
3 |
Good |
The quality of the value is good. |
|
4 |
Non-specific |
There is no specific reason for the quality state. |
|
5 |
Configuration error |
There is some server specific problem with the configuration. For example, the item in question has been deleted from the configuration. |
|
6 |
Not connected |
The input must be logically connected to some entity but it is not. This quality may reflect that no value is available at this time. For example, the value may not have been provided by the data source. |
|
7 |
Device failure |
A device failure has been detected. |
|
8 |
Sensor failure |
A sensor failure has been detected. (Numbers 17 through 20 in this table may provide additional diagnostic information in some situations.) |
|
9 |
Last known value |
The communication has failed. However, the last known value is available. The "age" of the value may be determined from the time stamp in the OPCITEMSTATE. |
|
10 |
Comm failure |
The communication has failed. There is no last known value available. |
|
11 |
Out of service |
The block is offscan or otherwise locked. This quality is also used when the active state of the item or the group containing the item is inactive. |
|
12 |
Last usable value |
Whatever device was writing this value has stopped doing so. The returned value should be regarded as "stale." This differs from Bad quality (No. 1) with Last Known Value (No. 9). The later status is associated specifically with a detectable communications error on a "fetched" value. The former status is associated with the failure of some external source to "put" something into the value within an acceptable period of time. The "age" of the value can be determined from the TIME STAMP in OPCITEMSTATE. |
|
13 |
Sensor not accurate |
Either the value has "clamped" at one of the sensor limits (related to No. 18 or 19) or the sensor is out of calibration through some form of internal diagnostics (related to No. 17). |
|
14 |
Engineering units exceeded |
The returned value is outside the limits defined for this parameter. In this case (per the Fieldbus Specification) the Limits descriptions (No. 17 - 20) indicate which limit has exceeded but they do not necessarily imply that the value cannot move farther out of range. |
|
15 |
Sub-normal |
The value is derived from multiple sources and has less than the required number of good sources. |
|
16 |
Local override |
The value has been overridden. Typically, this means that the input has been disconnected and a manually entered value has been "forced. " |
|
17 |
Not limited |
The value is free to move up or down. |
|
18 |
Low limited |
The value has "clamped" at some lower limit. |
|
19 |
High limited |
The value has "clamped" at some high limit. |
|
20 |
Constant |
The value is a constant and cannot move. |