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
|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|
|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|
|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|
|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 )|
|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.|
|EnumStrings||EnumStrings which is a string lookup table corresponding to sequential numeric values (0, 1, 2, etc.)
”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