User Documentation

Table Of Contents
OPC UA Server
System manual
2696790000/02/04.2020
67
<ArrayDimension ValuePath="APPL.system.vBoolArray"/>
<Variable/>
Optionally, a subrange of an array can be specified for variable mapping.
The following attributes are required for this:
Attribute Description
ArrayOffset
Specifies the start value of the array subrange (left index).
ArrayLength
Desired length of the array subrange.
In the following example, a subrange of the IEC array is instantiated in the
server as an OPC UA array. In the IEC an array from 1 to 100 is defined. In
the OPC UA server only the sector from 10 to 15 is mapped.
<Variable DataType="0:Types.0:DataTypes.0:BaseDataType.0:Boolean"
NodeId="i=10" BrowseName="bool array" DisplayName="bool array"
AccessLevel="0x03" ValueRank="1">
<ArrayDimension ArrayOffset="9" ArrayLength="5"
ValuePath="APPL.system.vBoolArray"/>
<Variable/>
Example of a complete XML file
<OpcUAInformationModel>
<!-- Declaration of namespace URIs -->
<NamespaceUris>
<Uri ns="1" isDefaultNs="1">http://www.company.com</Uri>
<Uri ns="2">MyNamespace</Uri>
</NamespaceUris>
<!-- Declaration of instances -->
<!-- add child instances to parent Root/Objects node -->
<Instances Parent="0:Objects">
<!-- create folder My Variables -->
<Object DataType="0:Types.0:ObjectTypes.0:BaseObjectType.0:FolderType"
NodeId="1:i=1000" BrowseName="My Variables" DisplayName="My Variables">
<!-- add a UInt8 variable to My Variables folder -->
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:UInteger.0:Byte"
NodeId="1:i=1003" BrowseName="MyUInt8" DisplayName="MyUInt8"
ValuePath="APPL.system.vUSINT" AccessLevel="0x03"/>
<!-- variable is read- and writeable -->
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:UInteger.0:UInt16"
NodeId="1:i=1004" BrowseName="MyUInt16" DisplayName="MyUInt16"
ValuePath="APPL.system.vUINT" AccessLevel="0x03"/>
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:UInteger.0:UInt32"
NodeId="1:i=1005" BrowseName="MyUInt32" DisplayName="MyUINt32"
ValuePath="APPL.system.vUDINT" AccessLevel="0x03"/>
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:UInteger.0:UInt64"
NodeId="1:i=1006" BrowseName="MyUInt64" DisplayName="MyUInt64"
ValuePath="APPL.system.vULINT" AccessLevel="0x03"/>
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:Integer.0:SByte"
NodeId="1:i=1008" BrowseName="MyInt8" DisplayName="MyInt8"
ValuePath="APPL.system.vSINT" AccessLevel="0x01"/>
<!-- variable is only readable -->