Instruction Manual
Table Of Contents
- System bus (CAN) for Lenze PLC devices
- This documentation is valid for ...
- Contents
- 1 Preface and general information
- 2 General information on the system bus (CAN)
- 2.1 Introduction
- 2.2 Interfaces of the Lenze PLCs for system bus connection
- 2.3 Identification of the nodes
- 2.4 Structure of the CAN telegram
- 2.5 Network management (NMT)
- 2.6 Transmission of process data
- 2.7 Transmitting parameter data
- 2.8 Free CAN objects
- 2.9 Application recommendations for the different CAN objects
- 2.10 Monitoring mechanisms
- 3 Configuration (system bus - CAN interface)
- 3.1 CAN baud rate
- 3.2 CAN boot-up
- 3.3 Node address (node ID)
- 3.4 Identifiers of the process data objects
- 3.5 Cycle time (CAN2_OUT/CAN3_OUT)
- 3.6 Delay time (CAN2_OUT/CAN3_OUT)
- 3.7 Synchronisation
- 3.8 Reset node
- 3.9 System bus management
- 3.10 Mapping indexes to codes
- 3.11 Remote parameterisation (gateway function)
- 3.12 Monitoring processes
- 3.13 Diagnostics
- 4 Configuration (AIF interface)
- 5 Configuration (FIF interface)
- 6 Configuration (CAN-AUX system bus interface)
- 7 CAN system blocks
- 8 FIF-CAN system blocks (only Drive PLC)
- 9 CAN-AUX system blocks (only ECSxA)
- 10 LenzeCanDrv.lib function library
- 10.1 Overview
- 10.2 Version identifiers of the function library
- 10.3 L_CanInit - initialising the CAN driver
- 10.4 L_CanClose - deactivating the CAN driver
- 10.5 L_CanGetStatus - querying the driver status
- 10.6 L_CanGetRelocCobId - querying the COB-ID range
- 10.7 L_CanPdoTransmit - transmitting a CAN object
- 10.8 L_CanPdoReceive - receiving a CAN object
- 11 LenzeCanDSxDrv.libfunction library
- 11.1 Overview
- 11.2 Version identifiers of the function library
- 11.3 L_CanDSxInitIndexCode - Configuration of index mapping
- 11.4 L_CanDSxOpen - initialising the CanDSx driver
- 11.5 L_CanDSxClose - deactivating the index mapping
- 11.6 L_CanDSxOpenHeartBeat - initialising a "Heartbeat"
- 11.7 L_CanDSxHeartBeat - carrying out a "Heartbeat"
- 11.8 L_CanDSxCloseHeartBeat - deactivating the "Heartbeat"
- 11.9 L_CanDSxOpenNodeGuarding - initialising the "Node Guarding"
- 11.10 L_CanDSxNodeGuarding - carrying out a "Node guarding"
- 11.11 L_CanDSxCloseNodeGuarding - deactivating the "Node Guarding"
- 12 Index

10.3 L_CanInit − initialising the CAN driver
System bus (CAN) for Lenze PLC devices
LenzeCanDrv.lib function library
10−2
L
PLC−Systembus EN 2.0
10.3 L_CanInit − initialising the CAN driver
Function
DWORD L_CanInit (wDrvNr, dwRelocCobIdArea)
Before it is possible to work with the free CAN objects, an initialisation of the CAN driver has to be
carried out.
· By repeatedly calling this function, the CAN driver in the initialised state can be switched over
to other parameters.
– The acceptance of the new parameters is effected immediately and therefore can have an
impact on transmission and reception jobs which are still pending. Thus, the function may
not be called cyclically.
L_CanInit
wDrvNr
dwRelocCobId
Transfer parameters
Identifier Data type Possible settings Information
wDrvNr Word 10 System bus
dwRelocCobIdArea Double Word
0
192...319
832...1344
1664...1728
1856...1984
Identifier area − Only relevant for 9300 Servo PLC!
dwRelocCobIdArea = 832 (Lenze setting)
Free range 1
Free range 2
Free range 3
Free range 4
Return value
Data type Bit Value Meaning Priority
Double Word 0
0 Driver is initialised. −
1 Error during initialisation.
· In this case the bits 1 ... 31 are all set to "1" and therefore are invalid.
1
0 Setting dwRelocCobIdAreaOK.
1 Setting dwRelocCobIdAreanot OK.
· The identifier area featuring 64 objects overlaps with another area or is settled
beyond the limits 0 ... 2047.
2
0 Free object found.
1 No free object found.
Remedy:
· Do not use one of the CAN objects CAN1_IN ... CAN3_IN or CAN1_OUT ... CAN3_OUT.
· Set C2118 to 0" (write parameters via SDO2).
PLEASE NOTE: at C2118 = 0 the SDO2 channel is no longer available!
· Switch off generation of the sync object (C0369 = 0).
3−15 Reserved for future supplements (bits are set to "0").
16−31 Version of the LenzeCanDrv.lib
function library
Format: main version/subversion (e. g. 0103hex = version 1.03)