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