OPC HDA Quality Values
Industrial Communication Toolbox™ software uses specific quality attributes defined by the OPC Foundation, based on a major quality value, a substatus for that major quality value, and a limit status indicating how the value is limited. This topic describes the standard quality attributes defined by the OPC Foundation that are used in the toolbox, and describes any special extensions that the toolbox uses.
OPC HDA quality values identify the quality or integrity of retrieved historical data.
The quality is returned as a 32-bit number. The upper 16 bits relating specifically to
HDA quality and the next 8 bits represent the vendor-specific quality information. The
lower 8 bits are arranged in QQSSSSLL format, where
QQ represents the major quality, SSSS
represents the quality substatus, and LL represents the limit
status.
Upper 16-bit HDA Quality Values
This table lists quality values represented by the upper 16 bits that relate to HDA quality.
| Quality Values | Description | Mask Value | Associated DA Quality |
|---|---|---|---|
OPCHDA_EXTRADATA | More than one piece of data that might be hidden exists at the same timestamp. | 0x00010000 | Good, Bad, Quest |
OPCHDA_INTERPOLATED | Interpolated data value. | 0x00020000 | Good, Bad, Quest |
OPCHDA_RAW | Raw data value. | 0x00040000 | Good, Bad, Quest |
OPCHDA_CALCULATED | Calculated data value, as returned by
ReadProcessed. | 0x00080000 | Good, Bad, Quest |
OPCHDA_NOBOUND | No data found to provide upper or lower bound value. | 0x00100000 | Bad |
OPCHDA_NODATA | No data collected; archiving not active (for item or all items). | 0x00200000 | Bad |
OPCHDA_DATALOST | Collection started, stopped, or lost. | 0x00400000 | Bad |
OPCHDA_CONVERSION | Scaling or conversion error. | 0x00800000 | Bad, Quest |
OPCHDA_PARTIAL | Aggregate value is for an incomplete interval. | 0x01000000 | Good, Bad, Quest |
Major Quality Values
This table lists the major quality values represented in bits 7 and 8 of the quality value.
Value | Quality Text | Description |
|---|---|---|
0 |
| The value is not useful for the reason indicated by the substatus. The table Bad Quality Substatus Values contains information about the substatus for bad quality. |
1 |
| The quality of the value is uncertain for reasons indicated by the substatus. The table Uncertain Quality Substatus Values contains information about the substatus for uncertain quality. |
3 |
| The quality of the value is good. The table Good Quality Substatus Values contains information about the substatus for good quality. |
N/A |
| The value repeats a previously known value for this item. This value is specific to Industrial Communication Toolbox and occurs only when you request data in array formatted values. |
Quality Substatus
Each major quality status has an additional substatus that describes the quality of the value in more detail. These tables describe the quality substatus for each major quality.
Good Quality Substatus Values
Value | Substatus Text | Description |
|---|---|---|
0 |
| The value is good. There are no special conditions. |
6 |
| The value has been overridden. Typically, this means that the device has been disconnected from the OPC server (either physically, or through software) and a manually entered value has been forced. |
Uncertain Quality Substatus Values
Value | Substatus Text | Description |
|---|---|---|
0 |
| The server has not published a specific reason for why the value is uncertain. |
1 |
| Regard the value as stale because the data source has
stopped writing the value. Unlike |
4 |
| The value has either pegged at one of the sensor limits, or the sensor has been diagnosed as out of calibration. |
5 |
| The returned value is outside the limits defined for this value. This substatus does not imply that the value is pegged at some upper limit. The value may exceed the engineering units even further in future updates. |
6 |
| The value is derived from multiple sources and has less than the required number of good sources. |
Bad Quality Substatus Values
Value | Substatus Text | Description |
|---|---|---|
0 |
| The value is bad but no specific reason is known. |
1 |
| There is some server-specific problem with the configuration. For example, the item in question is deleted from the running server configuration. |
2 |
| The input is required to be logically connected to something, but is not connected. This quality can reflect that no value is available at this time, possibly because the data source has not yet provided one. |
3 |
| A device failure has been detected. |
4 |
| A sensor failure has been detected. |
5 |
| Communication between the device and the server has failed.
However, the last known value is available. The age of the last
known value can be determined from the
|
6 |
| Communication between the device and server has failed. No last-known value is available. |
7 |
| The |
Limit Status
The limit status represented by the lower 2 bits of the quality value is not dependent on the major quality and substatus value.
This table lists the limit status values and texts used in Industrial Communication Toolbox.
Value | Limit Status Text | Description |
|---|---|---|
0 |
| The value is free to move. When the limit status has this value, it is omitted from any quality attribute in the toolbox. |
1 |
| The value is fixed at some lower limit. |
2 |
| The value is fixed at some upper limit. |
3 |
| The value is a constant and cannot change. |