7.18 UA_ReadList

FB-Name UA_ReadList
This Function Block is used to read values of multiple nodes using a list of node handles.
VAR_INPUT
BExecuteBOOLOn rising edge node information will be read.
BConnectionHdlDWORDConnection handle.
BNodeHdlCountUINTNumber of valid elements in the array to read.
BNodeHdlsARRAY OF
DWORD

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.

BNodeAddInfosARRAY OF
UANodeAdditionalInfo

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.

BTimeoutTIMETime to response.
VAR_OUTPUT
BDoneBOOLFB has completed its task.
BBusyBOOLThe FB is not finished and new output values are to be expected
BErrorBOOLSignals that an error has occurred within the FB. Set to TRUE if either ErrorID or any of the NodeErrorIDs indicates an error.
BErrorIDDWORDError code for the OPC UA service call.
BNodeErrorIDsARRAY OF
DWORD

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.

BTimeStampsARRAY OF
Vendor 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 Lengths
Shall 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
BVariablesARRAY OF
Vendor 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
BOOLExecuteDoneBOOL
DWORDConnectionHdlBusyBOOL
UINTNodeHdlCountErrorBOOL
ARRAY OF DWORDNodeHdlsErrorIDDWORD
ARRAY OF STRUCTNodeAddInfosNodeErrorIDsARRAY OF DWORD
TIMETimeoutTimeStampsARRAY OF Vendor specific
ARRAY OF Vendor specificVariablesVariablesARRAY OF Vendor specific