The quality of a given OPC tag is used to represent the validity of the tag's value (in other words, whether or not an OPC client can trust the data). OPC quality is divided into three main categories: Good (generally indicates the data is valid), Bad (generally indicates the data is not valid), or Uncertain (generally indicates the data is speculative in some manner). Each category is further divided into sub-categories; the exact criteria for using a particular sub-category may vary depending on the end protocol and vendor, however the list below provides a good starting point for further investigation.
OPC DA Quality Codes
0 | 0x00000000 | Bad [Non-Specific] |
4 | 0x00000004 | Bad [Configuration Error] |
8 | 0x00000008 | Bad [Not Connected] |
12 | 0x0000000c | Bad [Device Failure] |
16 | 0x00000010 | Bad [Sensor Failure] |
20 | 0x00000014 | Bad [Last Known Value] |
24 | 0x00000018 | Bad [Communication Failure] |
28 | 0x0000001C | Bad [Out of Service] |
64 | 0x00000040 | Uncertain [Non-Specific] |
65 | 0x00000041 | Uncertain [Non-Specific] (Low Limited) |
66 | 0x00000042 | Uncertain [Non-Specific] (High Limited) |
67 | 0x00000043 | Uncertain [Non-Specific] (Constant) |
68 | 0x00000044 | Uncertain [Last Usable] |
69 | 0x00000045 | Uncertain [Last Usable] (Low Limited) |
70 | 0x00000046 | Uncertain [Last Usable] (High Limited) |
71 | 0x00000047 | Uncertain [Last Usable] (Constant) |
80 | 0x00000050 | Uncertain [Sensor Not Accurate] |
81 | 0x00000051 | Uncertain [Sensor Not Accurate] (Low Limited) |
82 | 0x00000052 | Uncertain [Sensor Not Accurate] (High Limited) |
83 | 0x00000053 | Uncertain [Sensor Not Accurate] (Constant) |
84 | 0x00000054 | Uncertain [EU Exceeded] |
85 | 0x00000055 | Uncertain [EU Exceeded] (Low Limited) |
86 | 0x00000056 | Uncertain [EU Exceeded] (High Limited) |
87 | 0x00000057 | Uncertain [EU Exceeded] (Constant) |
88 | 0x00000058 | Uncertain [Sub-Normal] |
89 | 0x00000059 | Uncertain [Sub-Normal] (Low Limited) |
90 | 0x0000005a | Uncertain [Sub-Normal] (High Limited) |
91 | 0x0000005b | Uncertain [Sub-Normal] (Constant) |
192 | 0x000000c0 | Good [Non-Specific] |
193 | 0x000000c1 | Good [Non-Specific] (Low Limited) |
194 | 0x000000c2 | Good [Non-Specific] (High Limited) |
195 | 0x000000c3 | Good [Non-Specific] (Constant) |
216 | 0x000000d8 | Good [Local Override] |
217 | 0x000000d9 | Good [Local Override] (Low Limited) |
218 | 0x000000da | Good [Local Override] (High Limited) |
219 | 0x000000db | Good [Local Override] (Constant) |
OPC HDA Quality Codes
65536 | 0x00010000 | Bad [Non-Specific] : Extra Data |
65540 | 0x00010004 | Bad [Configuration Error] : Extra Data |
65544 | 0x00010008 | Bad [Not Connected] : Extra Data |
65548 | 0x0001000c | Bad [Device Failure] : Extra Data |
65552 | 0x00010010 | Bad [Sensor Failure] : Extra Data |
65556 | 0x00010014 | Bad [Last Known Value] : Extra Data |
65560 | 0x00010018 | Bad [Communication Failure] : Extra Data |
65564 | 0x0001001c | Bad [Out of Service] : Extra Data |
65600 | 0x00010040 | Uncertain [Non-Specific] : Extra Data |
65601 | 0x00010041 | Uncertain [Non-Specific] (Low Limited) : Extra Data |
65602 | 0x00010042 | Uncertain [Non-Specific] (High Limited) : Extra Data |
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article