UA_Write

UA_Write 1:

This function block writes values to a given node and connection handle.

UA_Write 2: Inputs

VAR_INPUT
    Execute        : BOOL;
    ConnectionHdl  : DWORD;
    NodeHdl        : DWORD;
    stNodeAddInfo  : ST_UANodeAdditionalInfo;
    pVariable      : PVOID;
    cbData         : UDINT;    
    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.

NodeHdl

DWORD

Node handle that was previously output by the function block UA_NodeGetHandle.

stNodeAddInfo

ST_UANodeAdditionalInfo

Defines additional information, e.g. which IndexRange or which attribute is to be written (by default, the' Value' attribute is used). Specified by STRUCT ST_UANodeAdditionalInfo.

pVariable

PVOID

Pointer to data to be written.

cbData

UDINT

Sets the size of the values to be written.

Timeout

TIME

Time until the function is aborted. DEFAULT_ADS_TIMEOUT is a global constant, set to 5 seconds.

UA_Write 3: Outputs

VAR_OUTPUT
    Done      : BOOL;
    Busy      : BOOL;
    Error     : BOOL;
    ErrorID   : DWORD;
END_VAR

Name

Type

Description

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 included in ErrorID.

ErrorID

DWORD

Contains the command-specific ADS error code of the most recently executed command.

Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT 3.1

Win32, Win64, CE-X86, CE-Arm®

Tc3_PLCopen_OpcUa