UA_NodeGetHandleList

This function block queries node handles for nodes in the UA namespace.
 Inputs
VAR_INPUT
    Execute          : BOOL;
    ConnectionHdl    : DWORD;
    NodeIDCount      : UINT;
    NodeIDs          : ARRAY[1..nMaxNodeIDsInList] OF ST_UANodeID;
    Timeout          : TIME := DEFAULT_ADS_TIMEOUT;    
END_VAR Name  | Type  | Description  | 
|---|---|---|
Execute  | BOOL  | The command is triggered by a rising edge at this input.  | 
ConnectionHdl  | DWORD  | Connection handle previously output by the function block UA_Connect.  | 
NodeIDCount  | UINT  | Number of nodes for which a node handle is required.  | 
NodeIDs  | ARRAY  | Array of NodeIDs created with struct ST_UANodeID.  | 
Timeout  | TIME  | Time until the function is aborted. DEFAULT_ADS_TIMEOUT is a global constant, set to 5 seconds.  | 
 Outputs
VAR_OUTPUT
    NodeHdls     : ARRAY[1..nMaxNodeIDsInList] OF DWORD;
    NodeErrorIDs : ARRAY[1..nMaxNodeIDsInList] OF DWORD;
    cbData_R     : UDINT;
    Done         : BOOL;
    Busy         : BOOL;
    Error        : BOOL;
    ErrorID      : DWORD;
END_VAR Name  | Type  | Description  | 
|---|---|---|
NodeHdls  | ARRAY  | Array of requested node handles.  | 
NodeErrorIDs  | ARRAY  | Array of error IDs if no node handles are available.  | 
cbData_R  | UDINT  | Size of the data read.  | 
Done  | BOOL  | Switches to TRUE if the function block was executed successfully.  | 
Busy  | BOOL  | TRUE until the function block has executed a command, at the most for the duration of the "Timeout" at the input. The inputs accept no new command as long as Busy = TRUE. It is not the connection time that is monitored but the reception time.  | 
Error  | BOOL  | Switches to TRUE if an error occurs while executing a command. The command-specific error code is in nErrID.  | 
ErrorID  | DWORD  | Contains the error ID if an error occurs.  | 
Requirements
Development environment  | Target platform  | PLC libraries to include  | 
|---|---|---|
TwinCAT 3.1  | Win32, Win64, CE-X86, CE-Arm®  | Tc3_PLCopen_OpcUa  |