8 l_canpdoreceive - receiving a can object, 8 l_canpdoreceive − receiving a can object, System bus (can) for lenze plc devices – Lenze DDS System bus CAN for PLC User Manual

Page 154: Lenzecandrv.lib function library

Advertising
background image

10.8

L_CanPdoReceive − receiving a CAN object

System bus (CAN) for Lenze PLC devices

LenzeCanDrv.lib function library

10−12

L

PLC−Systembus EN 2.0

10.8

L_CanPdoReceive − receiving a CAN object

Function block

This FB serves to receive data via the system bus interface according to CANopen.

Tip!

An overload with regard to the receive process can occur if due to a high bus utilisation or very fast
transmission activities of the other nodes further receive telegrams already arrive while a receive
telegram is processed.

The operating system responds to this with an overflow error:

·

A corresponding error message is output (see chapter "Error messages" in the Manual for the
respective PLC, e. g. 9300 Servo PLC, Drive PLC, or ECSxA).

·

Furthermore the CAN driver is deactivated for the free CAN objects and has to be reinitialised
via the function L_CanInit.

L_CanPdoReceive

wDrvNr
byLen
dwCobId
pIOAdress

nState

bNewMessage

Identifier

Data type

Variable type

Possible settings

Information

wDrvNr

Word

VAR_INPUT

10

System bus

byLen

Byte

VAR_INPUT

0...8

Telegram length (in bytes)

dwCobID

Double Word

VAR_INPUT

0...2047

CAN identifier

pIOAdress

Pointer to Byte

VAR_INPUT

Pointer to the address in the
memory from which the data
bytes received are stored.

The address of a variable can be determined via
the address function ADR.

bNewMessage

Bool

VAR_OUTPUT

Is set to TRUE if data have been received, and
only is reset to FALSE by calling the following
action:
<Instance
name>.

ResetNewMessage

·

If no reset is carried out, data can furthermore
be received, but data reception is not
displayed.

nState

Integer

VAR_OUTPUT

Displays the current receive status.

·

See the following table
"Receive state (nState)"

Note!

With regard to the allocation of the CAN identifier (dwCobId) please be sure that it is not already used
by one of the other CAN objects CAN1_IO ... CAN3_IO, as otherwise incorrect data are received!

Advertising