Variable Quality Codes
A quality code associated with a variable value provides some information about the reliability and validity of the value, offering indicators of accuracy, precision, completeness, and timeliness. These codes, which fit into the broad categories of "Good", "Uncertain", and "Bad", allow users to differentiate between high-quality, questionable, and unreliable data.
Quality codes can be assigned to a variable value by the physical device, the device driver, the Iotellect server, or a user defined expression (such as in a binding). A variable with a value, the “quality” property, and the “timestamp” property, has the three attributes necessary for conforming to the OPC Data Access specification for communicating real time data. The quality codes used by Iotellect are typically the same as the quality codes defined by the OPC DA specification, but differences can exist.
Quality Codes Used by Iotellect Core and Iotellect Device Drivers
The following table indicates the quality codes that can be assigned by the Iotellect core system and Iotellect device drivers in the case that a remote device does not assign a quality code for a value. If a remote device provides a quality code for a value received by Iotellect, that quality code will be saved with the value.
Integer Value | Name of Code | Typical Usage in Iotellect |
---|---|---|
4 | Bad [Configuration Error] | Indicates a configuration error in the Iotellect device which prevented a value from being retrieved. |
8 | Bad [Not Connected] | Assigned when the Iotellect device provided a default value for the variable, indicating that the Iotellect device was not able to connect to the remote device. |
12 | Bad [Device Failure] | Assigned when there was a communication error between the Iotellect device and the remote device, for example a socket reset or disconnection error. |
28 | Bad [Out of Service] | Indicates that the Connection Status of the Iotellect device is suspended. |
192 | Good [Non-Specific] | Assigned when the remote device provided a value for the variable but did not assign any quality code. |
Typical Quality Codes
The below table lists common quality codes provided by remote devices that communicate according to the OPC Data Access specification. This table is intended to be used only as a reference of typical codes provided by devices. Consult the technical specifications provided by the manufacturer of each remote device in order to understand exactly which quality codes can be assigned by the device, and the meaning assigned of each code.
Integer Value | Quality Code Name |
---|---|
0 | Bad [Non-Specific] |
4 | Bad [Configuration Error] |
8 | Bad [Not Connected] |
12 | Bad [Device Failure] |
16 | Bad [Sensor Failure] |
20 | Bad [Last Known Value] |
24 | Bad [Communication Failure] |
28 | Bad [Out of Service] |
64 | Uncertain [Non-Specific] |
65 | Uncertain [Non-Specific] (Low Limited) |
66 | Uncertain [Non-Specific] (High Limited) |
67 | Uncertain [Non-Specific] (Constant) |
68 | Uncertain [Last Usable] |
69 | Uncertain [Last Usable] (Low Limited) |
70 | Uncertain [Last Usable] (High Limited) |
71 | Uncertain [Last Usable] (Constant) |
80 | Uncertain [Sensor Not Accurate] |
81 | Uncertain [Sensor Not Accurate] (Low Limited) |
82 | Uncertain [Sensor Not Accurate] (High Limited) |
83 | Uncertain [Sensor Not Accurate] (Constant) |
84 | Uncertain [EU Exceeded] |
85 | Uncertain [EU Exceeded] (Low Limited) |
86 | Uncertain [EU Exceeded] (High Limited) |
87 | Uncertain [EU Exceeded] (Constant) |
88 | Uncertain [Sub-Normal] |
89 | Uncertain [Sub-Normal] (Low Limited) |
90 | Uncertain [Sub-Normal] (High Limited) |
91 | Uncertain [Sub-Normal] (Constant) |
192 | Good [Non-Specific] |
193 | Good [Non-Specific] (Low Limited) |
194 | Good [Non-Specific] (High Limited) |
195 | Good [Non-Specific] (Constant) |
216 | Good [Local Override] |
217 | Good [Local Override] (Low Limited) |
218 | Good [Local Override] (High Limited) |
219 | Good [Local Override] (Constant) |
Was this page helpful?