The Variable specific Attributes of OPC UA Address Space Nodes and their mapping from IEC 61131-3 are defined in Table 33.
Table 33 – Variable Node Attributes
Attribute |
Use |
DataType |
Description |
Value |
Mandatory |
Defined by DataType |
The most recent value of the Variable that the server has. Its data type is defined by the DataType, ValueRank and ArrayDimension Attribute. |
DataType |
Mandatory |
NodeId |
The DataType of the Variable Value. It defines the type specific content of the Value together with the ValueRank and the ArrayDimension Attributes, The mapping is defined in 9.2. |
ValueRank |
Mandatory |
Int32 |
This Attribute indicates whether the Value of the Variable is an array and how many dimensions the array has. Ctrl Variables declared as scalar type have the ValueRank -1. Ctrl Variables declared with the key word ARRAY…OF have a ValueRank that indicates the number of dimension of the array declared for the Ctrl Variable. |
ArrayDimensions |
Optional |
UInt32[] |
This Attribute specifies the length of each dimension for an array value. The Attribute is intended to describe the capability of the Variable, not the current size. The dimension entries have the length defined with the key word ARRAY…OF. |
AccessLevel |
Mandatory |
Byte |
The AccessLevel Attribute is used to indicate how the Value of a Variable can be accessed (read/write) and if it contains current and/or historic data. The handling of access to historic data is server specific and is not part of this specification. The mapping of the read and write access part of the AccessLevel is defined in 9.3.2 |
UserAccessLevel |
Mandatory |
Byte |
The user specific settings for the AccessLevel. |
MinimumSamplingInterval |
Optional |
Duration |
The MinimumSamplingInterval Attribute indicates how “current” the Value of the Variable will be kept. It specifies (in milliseconds) how fast the server can reasonably sample the value for changes. A MinimumSamplingInterval of 0 indicates that the server is to monitor the item continuously. A MinimumSamplingInterval of -1 means indeterminate. The value of this Attribute is server specific. |
Historizing |
Mandatory |
Boolean |
Indicates if the server is currently collecting history for the Variable Value. The support of value history is server specific. |
If the IEC attribute CONSTANT is set, the Access Level shall be read only.
The IEC standard does not define a key word to set the Access Level for a Ctrl Variable. The configuration in a programming system is vendor specific but it is recommended to provide a configuration option for the OPC UA Access Level.
When using the PLCopen XML format the AccessLevel shall be provided in PLCopen XML Additional Data in the XML element addData using the XML element UaAccessLevel as part of the XML element representing the variable. The value is a bit mask where the first bit indicates the read access and the second bit indicates the write access.