Parameters which hold simple data like a single numerical value, string value or a time-stamp value are represented by BaseDataVariableType defined in [OPC 10000-5] or one of its subtypes.

Variables which hold simple data like a single numerical value, string value or a time-stamp value are represented by BaseDataVariableType defined in [OPC 10000-5]. Those Variables typically represent some configuration Parameters, status, states or acquisition results of an analyser.

If a Variable represents simple data which is obtained “live” from an analyser, DataItem VariableType or one of its subtypes will be used. For example, AnalogItemType shall be used when there is a need for a specific Property of the AnalogItemType such as EURange and EngineeringUnits [OPC 10000-8].

Table 72 describes how each Attribute of super/sub class of DataItem is used in the ADI context.

Table 113 - ADI DataItem Attributes

Attributes/Properties

Description

Base NodeClass

DisplayName

Localized user readable name of this DataItem

BrowseName

The programmatic name of this DataItem

Description

Localized user readable description

WriteMask

Supports access control implementation

UserWriteMask

Supports access control implementation

Variable NodeClass

Value

The Parameter value itself

DataType

DataType of Value

ValueRank

The number of dimensions of value

ArrayDimensions

The size of each value dimensions

AccessLevel

Supports access control implementation of Value

UserAccessLevel

Supports access control implementation of Value

MinimumSamplingInterval

Defined how fast Value may be updated

DataItemType

Definition

Vendor-specific, human readable string that specifies how the value of this DataItem is calculated. Definition is non-localized and will often contain an equation that can be parsed by certain Clients. Example Definition ::= “(TempA – 25) + TempB”

ValuePrecision

The maximum precision that the Server can maintain for the item based on restrictions in the target environment

AnalogItemType

InstrumentRange

The value range that can be returned by the instrument

EURange

The value range likely to be obtained in normal operation. It is intended for such use as automatically scaling a bar graph display

EngineeringUnits

The units for the DataItem’s value (e.g., DEGC, hertz, seconds )

TwoStateDiscreteItemType

TrueState

String to be associated with this DataItem when it is TRUE. This is typically used for a contact when it is in the closed (non-zero) state. e.g. "RUN", "CLOSE", "ENABLE", "SAFE“, etc.

FalseState

String to be associated with this DataItem when it is FALSE. This is typically used for a contact when it is in the open (zero) state.e.g. "STOP", "OPEN", "DISABLE", "UNSAFE“, etc.

MultiStateDiscreteItemType

EnumStrings

EnumStrings which is a string lookup table corresponding to sequential numeric values (0, 1, 2, etc.)

Example:

”OPEN”

”CLOSE”

”IN TRANSIT” etc

The other source of information is the OPC UA Read Service described in [OPC 10000-4]. It provides:

  • The current value itself
  • Quality of the value
  • The time of the last update

The SemanticsChanged bit in StatusCode