FB_EcGetSlaveTopologyInfo

FB_EcGetSlaveTopologyInfo 1:

The function block FB_EcGetSlaveTopolgyInfo can be used to determine topology information.

FB_EcGetSlaveTopologyInfo 2: Inputs

VAR_INPUT
    sNetId    :  T_AmsNetId; (*AmsNetId of the EtherCAT master device*)
    pAddrBuf  :  POINTER TO ARRAY [0..EC_MAX_SLAVES] OF ST_TopologyDataEx; (*Contains the address of the buffer the topology data are copied to.*)
    cbBufLen  :  UDINT; (*Size of the buffer pAddrBuf. The size of the buffer must be at least nSlave * 64 Bytes*)
    bExecute  :  BOOL; (*Function block execution is triggered by a rising edge at this input*)
    tTimeout  :  TIME; (*States the time before the function is cancelled*)
END_VAR

Name

Type

Description

sNetId

T_AmsNetId

String containing the AMS network ID of the EtherCAT master device. (Type: T_AmsNetId)

pAddrBuf

POINTER TO ARRAY 
[0..EC_MAX_SLAVES] OF ST_TopologyDataEx

Address of an array of structures of type ST_TopologyDataEx, which contains the topology data.

cbBufLen

UDINT

Maximum available buffer size (in bytes) for the data to be read

bExecute

BOOL

The function block is activated by a positive edge at this input.

tTimeout

TIME

Maximum time allowed for the execution of the function block.

FB_EcGetSlaveTopologyInfo 3: Outputs

VAR_OUTPUT
    bBusy   : BOOL;
    bError  : BOOL;
    nErrId  : UDINT;
    nSlaves : UINT; 
END_VAR

Name

Type

Description

bBusy

BOOL

This output is set when the function block is activated, and remains set until a feedback is received.

bError

BOOL

This output is set after the bBusy output has been reset when an error occurs in the transmission of the command.

nErrId

UDINT

Supplies the ADS error code associated with the most recently executed command if the bError output is set. Error 1798 (0x706) indicates a null pointer at the buffer address. Error 1797 (0x705) indicates inadequate buffer size.

nSlaves

UINT

The number of slaves connected to the master.

Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT v3.1.0

PC or CX (x86, x64, ARM)

Tc2_EtherCAT