CM579EcatSoeRead (FB)

FUNCTION_BLOCK CM579EcatSoeRead EXTENDS CM579EcatBase

Function block to read a SOE object of an EtherCAT slave, which supports the SOE protocol

InOut:

Scope

Name

Type

Initial

Comment

Inherited from

Input

Execute

BOOL

FALSE

A rising edge starts a single operation, the output Busy goes to TRUE. In the first cycle all other inputs are read and stored, afterwards they are ignored. A falling edge does not stop the operation. After Done = TRUE or Error = TRUE and Execute = FALSE all outputs will be reset. For executing another operation the Execute input needs to be retriggered by another rising edge!

AbbETrig3

Output

Done

BOOL

FALSE

Operation is completed without error (while outputs Busy and Error are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE

AbbETrig3

Busy

BOOL

FALSE

Operation is running (while outputs Done and Error are FALSE)

AbbETrig3

Error

BOOL

FALSE

Operation is stopped with error (while outputs Busy and Done are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE. The output ErrorID gives more details about the error.

AbbETrig3

Input

Device

IDeviceCM579EtherCAT

CM579-ECAT coupler device

CM579EcatBase

Output

ErrorID

ERROR_ID

Error code describing error condition

CM579EcatBase

AddErrNo

UDINT

Additional error code for detailed error description, will be set if ErrorID = ERROR_ID.ADDITIONAL_ERROR_INFO.

CM579EcatBase

Input

Node

UINT

0

NODE ID

DriveNr

BYTE

0

Number of the drive, starts with 0

SercosID

UINT

0

Sercos Identification number

Flag

BYTE

0

Read flag to determine, which attribute of the object shall be read

MaxLen

UINT

0

Maximum length of the data array, max value is 1024 bytes

Data

POINTER TO BYTE

0

Address of the data array, where the received data is copied to

Timeout

UDINT

0

Timeout in milliseconds until data is received

Output

Len

UDINT

0

Length of the received data in bytes