IOF_GetBoxAddrByNameEx
The function block IOF_GetBoxAddrByNameEx permits determination of the fieldbus address of a box (box = slave, module, station) from the box identifier and the device identifier. If no fieldbus address is available, the function block returns a physical or a logical address. (In the case of the Beckhoff Lightbus, for instance, it is the physical box number in the optical fibre ring, while in Profibus it is the station address). The box identifier and the device identifier are passed as strings to the function block, and can be specified by the user during the configuration in the TwinCAT System Manager. Internally to the function block an instance of the ADSRDWRT function block is called.
VAR_INPUT
VAR_INPUT
NETID : T_AmsNetId;
DEVICENAME : T_MaxString;
BOXNAME : T_MaxString;
START : BOOL;
TMOUT : TIME;
END_VAR
NETID: It is possible here to provide the AmsNetId of the TwinCAT computer on which the function to be executed. If it is to be run on the local computer, an empty string can be entered.
DEVICENAME: The device identifier of an I/O device as a string.
BOXNAME: The box identifier as a string.
START: The function block is activated by a positive edge at this input.
TMOUT: States the length of the timeout that may not be exceeded by execution of the ADS command.
VAR_OUTPUT
VAR_OUTPUT
BUSY : BOOL;
ERR : BOOL;
ERRID : UDINT;
BOXADDR : UINT;
END_VAR
BUSY: When the function block is activated this output is set. It remains set until and acknowledgement is received.
ERR: If an ADS error should occur during the transfer of the command, then this output is set once the BUSY output is reset.
ERRID: Supplies the ADS error number when the ERR output is set.
BOXADDR: The fieldbus address of the box.
Requirements
Development environment | Target system type | IO hardware | PLC libraries to include |
---|---|---|---|
TwinCAT v2.7.0 | PC (i386) | All IO devices | Standard.Lib; PLCSystem.Lib; TcPLCAds.Lib; TcPlcIoFunctions.Lib |
TwinCAT v2.8.0 | PC (i386) | All IO devices | TcIoFunctions.Lib ( Standard.Lib; TcBase.Lib; TcSystem.Lib; TcUtilities.Lib are included automatically ) |