FB-Name

UA_ReadList

This Function Block is used to read values of multiple nodes using a list of node handles.

VAR_INPUT

B

Execute

BOOL

On rising edge node information will be read.

B

ConnectionHdl

DWORD

Connection handle.

B

NodeHdlCount

UINT

Number of valid elements in the array to read.

B

NodeHdls

ARRAY OFDWORD

Array of Node Handles.

Length is vendor-specific (MAX_ELEMENTS_NODELIST). See Constants of Array Lengths Shall be same size like the Variables array length.

B

NodeAddInfos

ARRAY OFUANodeAdditionalInfo

See UANodeAdditionalInfo. Array of UANodeAdditionalInfo. Specifies the attribute and IndexRange.

Length is vendor-specific (MAX_ELEMENTS_NODELIST). See Constants of Array Lengths Shall be same size like the Variables array length.

This parameter is optional. If not existing the UAAI_Value (13) will be taken from internal implementation.

B

Timeout

TIME

Time to response.

VAR_OUTPUT

B

Done

BOOL

FB has completed its task.

B

Busy

BOOL

The FB is not finished and new output values are to be expected

B

Error

BOOL

Signals that an error has occurred within the FB. Set to TRUE if either ErrorID or any of the NodeErrorIDs indicates an error.

B

ErrorID

DWORD

Error code for the OPC UA service call.

B

NodeErrorIDs

ARRAY OFDWORD

Array of DWORD. Contains an error code for each valid element of the Variables array.

Length is vendor-specific (MAX_ELEMENTS_NODELIST). See Constants of Array Lengths Shall be same size like the Variables array length.

B

TimeStamps

ARRAY OFVendor specific

Shall be DT or LDT. The recommendation for new implementation is to use LDT. Contains a TimeStamp for each valid element of the Variables array.

Length is vendor-specific (MAX_ELEMENTS_NODELIST). Constants of Array Lengths Constants of Array LengthsShall be same size like the Variables array length.

This parameter is optional. If not existing the internal client implementation shall not ask for any timestamp from server side.

VAR_IN_OUT

B

Variables

ARRAY OFVendor specific

Vendor specific. Length is vendor-specific (MAX_ELEMENTS_NODELIST). See Constants of Array Lengths

Notes: Vendors can handle “Variables” in a vendor specific way. Independent of the vendor specific solution the mapping of the controller data type and OPC UA data type shall be handled in the function block.

VAR_IN_OUT: “Variables” as would provide best type save solution for users: The client firmware is able to map the UA memory layout to the controller layout. The firmware client can receive the type definition from the OPC UA Server.Workaround would be to provide a byte array as “Variables” and the firmware client just provide the blob (UA memory layout – so called “raw data”) into that byte array.

A “Variable” could be the name of the variable so the internal firmware can get address, length, data type of variable.

UA_ReadList

BOOL

Execute

Done

BOOL

DWORD

ConnectionHdl

Busy

BOOL

UINT

NodeHdlCount

Error

BOOL

ARRAY OF DWORD

NodeHdls

ErrorID

DWORD

ARRAY OF STRUCT

NodeAddInfos

NodeErrorIDs

ARRAY OF DWORD

TIME

Timeout

TimeStamps

ARRAY OF Vendor specific

ARRAY OF Vendor specific

Variables

Variables

ARRAY OF Vendor specific