The OPC UA function blocks require that you create large variable structures. Many of these structures can be set as constants in the Data Editor. These can be used to configure the blocks.

Using constant attributes locates these variables in the application memory, and not the data memory. The application memory area is much larger than the data memory area.

The following example presents array structures you can create for frequently used OPC UA derived data types. Each array consists of:

  • Structure Name

  • Size (in bytes)

  • Is Constant (a BOOL that indicates if the item is a constant

  • Number of Instances (the number of insatances for this item, as determined by your application's needs)

  • Total Data Size (Amount of data memory required, if constants are not used)

  • Total Application Size (Amount of application memory required, if constants not used)

This example assumes that 64 server connections and 128 nodes for each connection is required (i.e. the number of UANodeID instances). Four (4) instances of this type are required to describe 128 (4*32) NodeID to read in the addressed UA server.

Structure Name

Size

Is Constant
(see NOTE)

Number of Instances

Total Data Size

Total Application Size

AUAMonitoredvariables 

25100

 

64

1 606 400

0

UASessionConnectInfo

1836

x

64

0

117 504

AUANodeAdditionalInfo

4016

x

64

0

257 024

AUANodeID

8320

x

256

0

2 129 920

AUAMonitoringParameter

4016

x

64

0

257 024

Total

x

1 606 400

2 761 472

NOTE: X = a constant; blank = not a constant