Data collection methods

The OPC-UA collector has 3 methods to collect measurement data, which are referred to as the collection type of a measurement.

Polling

Polled measurements are read every x milliseconds (minimum of 1000ms), which is the collection interval. This data collection method should be used for measurements for which the value changes regularly over time. Configure the interval depending on how frequent you want to collect data points for this measurement.

Monitoring

Monitored measurements collect data on every change of the measurements value. This data collection method uses a subscription on the OPC-UA server that notifies the collector whenever a change occurs (Note that this depends on the scanning frequency of the OPC-UA device). Typically, monitored measurements are configured for boolean or string data types that indicate an equipments state, f.e. for a valve that opens and/or closes only a few times per hour.

More information

Events

Event measurements collect all OPC-UA Alarms & Conditions events from the OPC-UA server. This data collection method uses a subscription on the OPC-UA server that notifies the collector of all events that occur under the configured node. Measurements of this collection method need to set their datatype to raw.

More information

Timestamps

In case of polled measurements, the source of the timestamp is taken from the system where the collector is running on. In case of monitored and event measurements, the timestamp is taken from the update message received from the OPC-UA server, in which case that is used. We cannot take the timestamp of insertion, as in the case of buffering that can be days later than the actual sampling.

Collector health

OPC-UA Specific collector health messages. See here for all generic collector health messages.

You can find the collector health and the collector history in the detail view on the right, when selecting a collector in the historian admin webpage.

Collector health history

Error initializing collector

An error occurred when initializing the OPC-UA collector. This indicates a collector setting hasn’t been configured correctly or the OPC-UA server isn’t reachable during initialization.

Error connecting to OPC-UA server

The OPC-UA server isn’t reachable for an initialized collector on a connection attempt.

Disconnected: timeout heartbeat

The collector lost connection to the OPC-UA server.

Common OPC-UA status codes

When reading points for a measurement from the OPC-UA server, the collector can receive status codes that indicate the quality of the data point. The collector uses these status codes to determine if the data point is valid or not. StatusOk(0x00) is the only status code that indicates a valid data point by default. However other status codes can be configured to be considered as valid data points in the collector’s advanced setting ‘StatusGood’ .

A list of all OPC-UA status codes and their description can be found here

In some cases we set custom status codes to indicate the quality of the data point. These custom status codes are:

Custom Status Code Description
BadFactryOPCUARegisterNodesFailed The collector failed to register the nodes with the OPC-UA server.
BadFactryOPCUATooManyOpenReadRequests The collector has too many open read requests with the OPC-UA server.
BadInvalidNodeID The nodeID specified in the measurement settings is invalid.
BadNoValueAtArrayIndex The array index specified in the measurement settings is out of bounds.
UnknownStatusCode_0xXXX The status code received from the OPC-UA server is unknown.