Fieldbus connection for CANopen CX1500-FB510

Objects and Data

Device type

Device type

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1000
0
Device type
Unsigned32
ro
N
0x00000000
Statement of device type

The 32 bit value is divided into two 16 bit fields:

MSB
LSB
Additional information
Device profile number
0000 0000 0000 wxyz
0x191 (401dez)

The additional information contains data related to the signal type of the I/O device:
z=1 signifies digital inputs,
y=1 signifies digital outputs,
x=1 signifies analog inputs,
w=1 signifies analog outputs.
A BK5120 with digital and analog inputs, but with no outputs, thus returns 0x00 05 01 91.

Special terminals (such as serial interfaces, PWM outputs, incremental encoder inputs) are not considered. A Coupler that, for example, only has KL6001 serial interface terminals plugged in, thus returns 0x00 00 01 91.

The device type supplies only a rough classification of the device. The terminal identifier register of the Bus Coupler can be read for detailed identification of the Bus Couplers and the attached terminals (for details see register communication index 0x4500).

Error register

Error register

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1001
0
Error register
Unsigned8
ro
N
0x00
Error register

The 8 bit value is coded as follows:

 
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ManSpec.
reserved
reserved
Comm.
reserved
reserved
reserved
Generic

ManSpec. Manufacturer-specific error, specified more precisely in object 1003.

Comm. Communication error (CAN overrun)

Generic An error that is not more precisely specified has occurred (the flag is set at every error message)

Error store

Error store

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1003
0x00
Predefined error field (Error store)
Unsigned8
rw
N
0x00
Object 1003h contains a description of the error that has occurred in the device - sub-index 0 has the number of error states stored.
1
Actual error
Unsigned32
ro
N
None
Last error state to have occurred
...
...
...
--
...
...
...
10
Standard error field
Unsigned32
ro
N
None
A maximum of 10 error states are stored.

The 32 bit value in the error store is divided into two 16 bit fields:

MSB
LSB
Additional code
Error Code

The additional code contains the error trigger (see emergency object) and thereby a detailed error description.

New errors are always saved at sub-index 1, all the other sub-indices being appropriately incremented. The whole error store is cleared by writing a 0 to sub-index 0.

If there has not been an error since power up, then object 0x1003 only consists of sub-index 0 with a 0 entered into it. The error store is cleared by a reset or a power cycle.

As is usual in CANopen, the LSB is transferred first, followed by the MSB.

Sync Identifier

Sync Identifier

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1005
0
COB-ID Sync Message
Unsigned32
rw
N
0x80000080
Identifier of the SYNC message

The bottom 11 bits of the 32 bit value contain the identifier (0x80=128 dec). Bit 30 indicates whether the device sends the SYNC telegram (1) or not (0). The CANopen I/O devices receive the SYNC telegram, and accordingly bit 30=0. For reasons of backwards compatibility, bit 31 has no significance.

Sync Interval

Sync Interval

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1006
0
Communication cycle period
Unsigned32
rw
N
0x00000000
Length of the SYNC interval in µs.

If a value other than zero is entered here, the bus node will go into the fault state if, during synchronous PDO operation, no SYNC telegram is received within the watchdog time. The watchdog time corresponds here to 1.5 times the communication cycle period that has been set - the planned SYNC interval can therefore be entered.

The I/O update is carried out at the Beckhoff CANopen bus nodes immediately after reception of the SYNC telegram, provided the following conditions are satisfied:

- Firmware status C0 or above (CANopen Version 4.01 or higher).

- All PDOs that have data are set to synchronous communication (0..240).

- The sync interval has been entered in object 0x1006 and (sync interval x lowest PDO transmission type) is less than 90ms.

The modules are then synchronised throughout.

Device name 

Device name

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1008
0
Manufacturer Device Name
Visible String
ro
N
BK51x0, LC5100,
IPxxxx-B510 or ILxxxx-B510
Device name of the bus node

Since the returned value is longer than 4 bytes, the segmented SDO protocol is used for transmission.

Hardware version

Hardware version

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1009
0
Manufacturer hardware-version
Visible String
ro
N
-
Hardware version number of the bus node

Since the returned value is longer than 4 bytes, the segmented SDO protocol is used for transmission.

Software version

Software version

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x100A
0
Manufacturer software-version
Visible String
ro
N
-
Software version number of the bus node

Since the returned value is longer than 4 bytes, the segmented SDO protocol is used for transmission.

Node number

Node number

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x100B
0
Node-ID
Unsigned32
ro
N
none
Set node number

The node number is supported for reasons of compatibility.

Guard time

Guard time

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x100C
0
Guard time [ms]
Unsigned16
rw
N
0
Interval between two guard telegrams. Is set by the NMT master or configuration tool.

Life time factor

Life time factor

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x100D
0
Life time factor
Unsigned8
rw
N
0
Life time factor x guard time = life time (watchdog for life guarding)

If a guarding telegram is not received within the life time, the node enters the error state. If the life time factor and/or guard time = 0, the node does not carry out any life guarding, but can itself be monitored by the master (node guarding).

Guarding identifier

Guarding identifier

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x100 E
0
COB-ID guarding protocol
Unsigned32
ro
N
0x000007xy, xy = NodeID
Identifier of the guarding protocol

The guarding identifier is supported for reasons of compatibility. Changing the guarding identifier has no longer been permitted since version 4 of CANopen.

Save parameters

Save parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1010
0
Store Parameter
Unsigned8
ro
N
1
Number of store options
1
store all parameters
Unsigned32
rw
N
1
Stores all (storable) parameters

By writing the string save in ASCII code (hexadecimal 0x65766173) to sub-index 1, the current parameters are placed into non-volatile storage. (The byte sequence on the bus including the SDO protocol: 0x23 0x10 0x10 0x01 0x73 0x61 0x76 0x65).

The storage process takes about 3 seconds, and is confirmed, if successful, by the corresponding TxSDO (0x60 in the first byte). Since the Bus Coupler is unable to send or receive any CAN telegrams during the storage process, saving is only possible when the node is in the pre-operational state. It is recommended that the entire network is placed into the pre-operational state before such storage. This avoids a buffer overflow.

Data saved includes:

The terminals currently inserted (the number of each terminal category)
All PDO parameters (identifier, transmission type, inhibit time, mapping).
 
NoteThe stored identifiers apply afterwards, not the default identifiers derived from the node addresses. Changes to the DIP switch setting no longer affects the PDOs!
All SYNC parameters
All guarding parameters
Limit values, delta values and interrupt enables for analog inputs

Parameters directly stored in the terminals by way of register communication are immediately stored there in non-volatile form.

Load default values

Load default values

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1011
0
Restore Parameter
Unsigned8
ro
N
4
Number of reset options
1
Restore all parameters
Unsigned32
rw
N
1
Resets all parameters to their default values
4
Set manufacturer Defaults
Unsigned32
rw
N
1
Resets all coupler parameters to manufacturer’s settings (including registers)

Writing the string load in ASCII code (hexadecimal 0x64616F6C) into sub-index 1 resets all parameters to default values (as initially supplied) at the next boot (reset).

(The byte sequence on the bus including the SDO protocol: 0x23 0x11 0x10 0x01 0x6C 0x6F 0x61 0x64).

This makes the default identifiers for the PDOs active again.

Emergency identifier

Emergency identifier

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1014
0
COB-ID Emergency
Unsigned32
rw
N
0x00000080, + NodeID
Identifier of the emergency telegram

The bottom 11 bits of the 32 bit value contain the identifier (0x80=128 dec). The MSBit can be used to set whether the device sends (1) the emergency telegram or not (0).

Alternatively, the bus node's diagnostic function can also be switched off using the Device diagnostics bit in the K-Bus configuration (see object 0x4500).

Consumer heartbeat time

Consumer heartbeat time

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1016
0
Number of elements
Unsigned8
ro
N
2
The consumer heartbeat time describes the expected heartbeat cycle time and the node ID of the monitored node
1
Consumer heartbeat time
Unsigned32
rw
N
0
Watchdog time in ms and node ID of the monitored node

The 32-bit value is used as follows:

MSB
LSB
Bit 31...24
Bit 23...16
Bit 15...0
Reserved (0)
Node ID (unsigned8)
Heartbeat time in ms (unsigned16)

The monitored identifier can be obtained from the node ID by means of the default identifier allocation: Guard-ID = 0x700 + Node-ID.

As is usual in CANopen, the LSB is transferred first, followed by the MSB.

Producer heartbeat time

Producer heartbeat time

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1017
0
Producer heartbeat time
Unsigned16
rw
N
0
Interval in ms between two transmitted heartbeat telegrams

Device identifier (identity object)

Device identifier (identity object)

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1018
0
Identity Object: Number of elements
Unsigned8
ro
N
4
The identity object contains general information about the type and version of the device.
1
Vendor ID
Unsigned32
ro
N
0x00000002
Manufacturer identifier. Beckhoff has vendor ID 2
2
Product Code
Unsigned32
ro
N
Depends on the product
Device identifier
3
Revision Number
Unsigned32
ro
N
-
Version number
4
Serial Number
Unsigned32
ro
N
-
Production date
low word, high byte: calendar week (dec), low word, low byte: calendar year
Product
Product Code
BK5120
0x11400
BK5110
0x113F6
LC5100
0x113EC
IPwxyz-B510
0x2wxyz
IL2301-B510
0x2008FD

Server SDO parameters

Server SDO parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1200
0
Number of elements
Unsigned8
ro
N
2
Communication parameters of the server SDO. Sub-index 0: number of following parameters
1
COB-ID Client ->Server
Unsigned32
ro
N
0x000006xy, xy=Node-ID
COB-ID RxSDO (Client -> Server)
2
COB-ID Server ->Client
Unsigned32
ro
N
0x00000580 + Node-ID
COB-ID TxSDO (Client -> Server)

This is contained in the object directory for reasons of backwards compatibility.

Communication parametersfor the 1st RxPDO

for the 1st RxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1400
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the first receive PDO. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x000002xy, xy=Node-ID
COB-ID (Communication Object Identifier) RxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Present for reasons of backwards compatibility, but not used in the RxPDO.
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer. Watchdog time defined for monitoring reception of the PDO.

Sub-index 1 (COB-ID): The bottom 11 bits of the 32 bit value (bits 0-10) contain the CAN identifier. The MSB (bit 31) indicates whether the PDO exists currently (0) or not (1). Bit 30 indicates whether an RTR access to this PDO is permissible (0) or not (1). Changing the identifier (bits 0-10) is not allowed while the object exists (bit 31=0). Sub-index 2 contains the type of the transmission (see introduction to PDOs).

Communication parametersfor the 2nd RxPDO

for the 2nd RxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1401
0
Number of elements
Unsigned8
ro
N
5
Communication parameter for the second receive PDO.
1
COB-ID
Unsigned32
rw
N
0x000003xy, xy=Node-ID
COB-ID (Communication Object Identifier) RxPDO2
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Present for reasons of backwards compatibility, but not used in the RxPDO.
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer. Watchdog time defined for monitoring reception of the PDO.

Communication parametersfor the 3rd RxPDO

for the 3rd RxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1402
0
Number of elements
Unsigned8
ro
N
5
Communication parameter for the third receive PDO.
1
COB-ID
Unsigned32
rw
N
0x000004xy, xy=Node-ID
COB-ID (Communication Object Identifier) RxPDO3
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Present for reasons of backwards compatibility, but not used in the RxPDO.
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer. Watchdog time defined for monitoring reception of the PDO.

Communication parametersfor the 4th RxPDO

for the 4th RxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1403
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the fourth receive PDO.
1
COB-ID
Unsigned32
rw
N
0x000005xy, xy=Node-ID
COB-ID (Communication Object Identifier) RxPDO4
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Present for reasons of backwards compatibility, but not used in the RxPDO.
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer. Watchdog time defined for monitoring reception of the PDO.

Communication parametersfor the 5th-16th RxPDOs

for the 5th-16th RxPDOsCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1404 - 0x140F (depending on the device type)
0
Number of elements
Unsigned8
ro
N
5
Communication parameter for the 5th to 16th receive PDOs.
1dth="5%">1
COB-ID
Unsigned32
rw
N
0x8000000
COB-ID (Communication Object Identifier) RxPDO5...16
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Present for reasons of backwards compatibility, but not used in the RxPDO.
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer. Watchdog time defined for monitoring reception of the PDO.

The number of RxPDOs for each bus node type can be found in the technical data.

Mapping parametersfor the 1st RxPDO

for the 1st RxPDOMapping parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1600
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameter of the first receive PDO; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x62000108
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x62000208
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
0x62000808
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The first receive PDO (RxPDO1) is provided by default for digital output data. Depending on the number of outputs inserted, the necessary length of the PDO is automatically determined, and the corresponding objects are mapped. Since the digital outputs are organised in bytes, the length of the PDO in bytes can be found directly at sub-index 0.

Changes to the mapping

 

The following sequence must be observed in order to change the mapping (specified as from CANopen, version 4):

1.
Delete PDO (set bit 31 in the identifier entry (sub-index 1) of the communication parameters to 1)
2.
Deactivate mapping (set sub-index 0 of the mapping entry to 0)
3.
Change mapping entries (sub-indices 1...8)
4.
Activate mapping (set sub-index 0 of the mapping entry to the correct number of mapped objects)
5.
Create PDO (set bit 31 in the identifier entry (sub-index 1) of the communication parameters to 0)

Mapping parametersfor the 2nd RxPDO

for the 2nd RxPDOMapping parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1601
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameter of the second receive PDO; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x64110110
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x64110210
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
0x00000000
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The second receive PDO (RxPDO2) is provided by default for analog outputs. Depending on the number of outputs inserted, the necessary length of the PDO is automatically determined, and the corresponding objects are mapped. Since the analog outputs are organised in words, the length of the PDO in bytes can be found directly at sub-index 0.

A specific sequence must be observed in order to change the mapping (see object index 0x1600).

Mapping parametersfor the 3rd-16th RxPDO

for the 3rd-16th RxPDOMapping parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1602- 0x160F (depending on the device type)
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameters for the third to sixteenth receive PDOs; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x00000000 (see text)
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x00000000 (see text)
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
0x00000000 (see text)
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The 3rd to 16th receive PDOs (RxPDO3ff) are automatically given a default mapping by the bus node depending on the attached terminals (or depending on the extension modules). The procedure is described in the section on PDO Mapping.

A specific sequence must be observed in order to change the mapping (see object index 0x1600).

 
NoteDS401 V2 specifies analog input and/or output data as the default mapping for PDOs 3+4. This corresponds to Beckhoff's default mapping when less than 65 digital inputs or outputs are present. In order to ensure backwards compatibility, the Beckhoff default mapping is retained - the mapping behaviour of the devices therefore corresponds to DS401 V1, where in all other respects they accord with DS401 V2.

Communication parametersfor the 1st TxPDO

for the 1st TxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1800
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the first transmit PDO. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x00000180 + Node-ID
COB-ID (Communication Object Identifier) TxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Repetition delay [value x 100 µs]
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer

Sub-index 1 (COB-ID): The bottom 11 bits of the 32 bit value (bits 0-10) contain the CAN identifier. The MSB (bit 31) indicates whether the PDO exists currently (0) or not (1). Bit 30 indicates whether an RTR access to this PDO is permissible (0) or not (1). Changing the identifier (bits 0-10) is not allowed while the object exists (bit 31=0). Sub-index 2 contains the type of transmission, sub-index 3 the repetition delay between two PDOs of the same type, while sub-index 5 contains the event timer. Sub-index 4 is retained for reasons of compatibility, but is not used. (See also the introduction to PDOs.)

Communication parametersfor the 2nd TxPDO

for the 2nd TxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1801
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the second transmit PDO. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x00000280 + Node-ID
COB-ID (Communication Object Identifier) TxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Repetition delay [value x 100 µs]
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer

The second transmit PDO is provided by default for analog inputs, and is configured for event-driven transmission (transmission type 255). Event-driven mode must first be activated (see object 0x6423), otherwise the inputs can only be interrogated (polled) by remote transmission request (RTR).

Communication parametersfor the 3rd TxPDO

for the 3rd TxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1802
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the third transmit PDO. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x00000380 + Node-ID
COB-ID (Communication Object Identifier) TxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Repetition delay [value x 100 µs]
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer

The third transmit PDO contains analog input data as a rule (see Mapping). It is configured for event-driven transmission (transmission type 255). Event-driven mode must first be activated (see object 0x6423), otherwise the inputs can only be interrogated (polled) by remote transmission request (RTR).

Communication parametersfor the 4th TxPDO

for the 4th TxPDOCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1803
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the fourth transmit PDO. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x00000480 + Node-ID
COB-ID (Communication Object Identifier) TxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Repetition delay [value x 100 µs]
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer

The fourth transmit PDO contains analog input data as a rule (see Mapping). It is configured for event-driven transmission (transmission type 255). Event-driven mode must first be activated (see object 0x6423), otherwise the inputs can only be interrogated (polled) by remote transmission request (RTR).

Communication parametersfor the 5th-16th TxPDOs

for the 5th-16th TxPDOsCommunication parameters

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1804- 0x180F (depending on the device type)
0
Number of elements
Unsigned8
ro
N
5
Communication parameters for the 5th to 16th transmit PDOs. Sub-index 0: number of following parameters
1
COB-ID
Unsigned32
rw
N
0x0000000
COB-ID (Communication Object Identifier) TxPDO1
2
Transmission Type
Unsigned8
rw
N
255
Transmission type of the PDO
3
Inhibit Time
Unsigned16
rw
N
0
Repetition delay [value x 100 µs]
4
CMS Priority Group
Unsigned8
rw
N
-
Present for reasons of backwards compatibility, but not used.
5
Event Timer
Unsigned16
rw
N
0
Event-Timer

Mapping 1st TxPDO

Mapping 1st TxPDO

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1A00
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameter of the first transmit PDO; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x60000108
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x60000208
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
0x60000808
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The first transmit PDO (TxPDO1) is provided by default for digital input data. Depending on the number of inputs inserted, the necessary length of the PDO is automatically determined, and the corresponding objects are mapped. Since the digital inputs are organised in bytes, the length of the PDO in bytes can be found directly at sub-index 0.

A specific sequence must be observed in order to change the mapping (see object index 0x1600).

Mapping 2nd TxPDO

Mapping 2nd TxPDO

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1A01
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameter of the second transmit PDO; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x64010110
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x64010210
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
 
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The second transmit PDO (TxPDO2) is provided by default for analog input data. Depending on the number of inputs inserted, the necessary length of the PDO is automatically determined, and the corresponding objects are mapped. Since the analog inputs are organised in words, the length of the PDO in bytes can be found directly at sub-index 0.

A specific sequence must be observed in order to change the mapping (see object index 0x1600).

Mapping 3rd-16th TxPDO

Mapping 3rd-16th TxPDO

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x1A02- 0x1A0F (depending on the device type)
0
Number of elements
Unsigned8
rw
N
Depending on type and fittings
Mapping parameters for the third to sixteenth transmit PDOs; sub-index 0: number of mapped objects.
1
1st mapped object
Unsigned32
rw
N
0x00000000 (see text)
1st mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
2
2nd mapped object
Unsigned32
rw
N
0x00000000 (see text)
2nd mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)
...
...
...
...
...
...
...
8
8th mapped object
Unsigned32
rw
N
0x00000000 (see text)
8th mapped application object (2 bytes index, 1 byte sub-index, 1 byte bit width)

The 3rd to 16th transmit PDOs (TxPDO3ff) are automatically given a default mapping by the bus node depending on the attached terminals (or depending on the extension modules). The procedure is described in the section on PDO Mapping.

A specific sequence must be observed in order to change the mapping (see object index 0x1600).

 
NoteDS401 V2 specifies analog input and/or output data as the default mapping for PDOs 3+4. This corresponds to Beckhoff's default mapping when less than 65 digital inputs or outputs are present. In order to ensure backwards compatibility, the Beckhoff default mapping is retained - the mapping behavior of the devices therefore corresponds to DS401 V1, where in all other respects they accord with DS401 V2.

For the sake of completeness, the following object entries are also contained in the object directory (and therefore also in the EDS files):

Index
Meaning
0x2000
Digital inputs (function identical to object 0x6000)
0x2100
Digital outputs (function identical to object 0x6100)
0x2200
1-byte special terminals, inputs (at present no terminals corresponding to this type are included in the product range)
0x2300
1-byte special terminals, outputs (at present no terminals corresponding to this type are included in the product range)
0x2400
2-byte special terminals, inputs (at present no terminals corresponding to this type are included in the product range)
0x2500
2-byte special terminals, outputs (at present no terminals corresponding to this type are included in the product range)
0x2E00
7-byte special terminals, inputs (at present no terminals corresponding to this type are included in the product range)
0x2F00
7-byte special terminals, outputs (at present no terminals corresponding to this type are included in the product range)

3-byte special terminals, input data

3-byte special terminals, input data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2600
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 3-byte special channels, inputs
1
1st input block
Unsigned24
ro
Y
0x000000
1st input channel
...
...
...
...
...
...
...
0X80
128th input block
Unsigned24
ro
Y
0x000000
128th input channel

Example of special terminals with 3-byte input data (in the default setting): KL2502 (PWM outputs, 2 x 3 bytes)

3-byte special terminals, output data

3-byte special terminals, output data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2700
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 3-byte special channels, outputs
1
1st output block
Unsigned24
rww
Y
0x000000
1st output channel
...
...
...
...
...
...
...
0X80
128th output block
Unsigned24
rww
Y
0x000000
128th output channel

Example of special terminals with 3-byte output data (in the default setting): KL2502 (PWM outputs, 2 x 3 bytes)

4-byte special terminals, input data

4-byte special terminals, input data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2800
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 4-byte special channels, inputs
1
1st input block
Unsigned32
ro
Y
0x00000000
1st input channel
...
...
...
...
...
...
...
0X80
128th input block
Unsigned32
ro
Y
0x00000000
128th input channel

Examples of special terminals with 4-byte input data (in the default setting): KL5001, KL6001, KL6021, KL6051

4-byte special terminals, output data

4-byte special terminals, output data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2900
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 4-byte special channels, outputs
1
1st output block
Unsigned32
rww
Y
0x00000000
1st output channel
...
...
...
...
...
...
...
0X80
128th output block
Unsigned32
rww
Y
0x00000000
128th output channel

Examples of special terminals with 4-byte output data (in the default setting): KL5001, KL6001, KL6021, KL6051

5-byte special terminals, input data

5-byte special terminals, input data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2A00
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 5-byte special channels, inputs
1
1st input block
Unsigned40
ro
Y
0x0000000000
1st input channel
...
...
...
...
...
...
...
0X40
64th input block
Unsigned40
ro
Y
0x0000000000
64th input channel

Example of special terminals with 5-byte input data (in the default setting): KL1501

5-byte special terminals, output data

5-byte special terminals, output data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2B00
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 5-byte special channels, outputs
1
1st output block
Unsigned40
rww
Y
0x0000000000
1st output channel
...
...
...
...
...
...
...
0X40
64th output block
Unsigned40
rww
Y
0x0000000000
64th output channel

Example of special terminals with 5-byte output data (in the default setting): KL1501

6-byte special terminals, input data

6-byte special terminals, input data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2C00
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 6-byte special channels, inputs
1
1st input block
Unsigned48
ro
Y
0x0000000000
1st input channel
...
...
...
...
...
...
...
0X40
64th input block
Unsigned48
ro
Y
0x0000000000
64th input channel

Example of special terminals with 6-byte input data (in the default setting): KL5051, KL5101, KL5111

6-byte special terminals, output data

6-byte special terminals, output data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x2D00
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 6-byte special channels, outputs
1
1st output block
Unsigned48
rww
Y
0x0000000000
1st output channel
...
...
...
...
...
...
...
0X40
64th output block
Unsigned48
rww
Y
0x0000000000
64th output channel

Example of special terminals with 6-byte output data (in the default setting): KL5051, KL5101, KL5111

8-byte special terminals, input data

8-byte special terminals, input data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x3000
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 6-byte special channels, inputs
1
1st input block
Unsigned64
ro
Y
0x0000000000
1st input channel
...
...
...
...
...
...
...
0x40
64th input block
Unsigned64
ro
Y
0x0000000000
64th input channel

Example for special terminals with 8-byte input data: KL5101 (with word alignment, not according to the default setting)

8-byte special terminals, output data

8-byte special terminals, output data

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x3100
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available 6-byte special channels, outputs
1
1st output block
Unsigned64
rww
Y
0x0000000000
1st output channel
...
...
...
...
...
...
...
0X40
64th output block
Unsigned64
rww
Y
0x0000000000
64th output channel

Example for special terminals with 8-byte output data: KL5101 (with word alignment, not according to the default setting)

Bus node register communication

Bus node register communication

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x4500
0   
Register Access
Unsigned32
rw
N
none
Access to internal bus node registers

The 32 bit value is composed as follows:

MSB
 
 
LSB
Access (bit 7) + table number (bits 6...0)
Register number
High byte register value
Low byte register value
[0..1] + [0...0x7F]
[0...0xFF]
[0...0xFF]
[0...0xFF]

As is usual in CANopen, the LSB is transferred first, followed by the MSB.

Accessing index 0x4500 allows any registers in the bus station to be written or read. The channel number and the register are addressed here with a 32 bit data word.

Reading the register value

The coupler must first be informed of which register is to be read. This requires an SDO write access to the appropriate index/sub-index combination, with:
- table number (access bit = 0) in byte 3
- register address in byte 2 of the 32-bit data value.

Bytes 1 and 0 are not evaluated if the access bit (MSB of byte 3) equals 0. The register value can then be read with the same combination of index and sub-index.

After the writing of the register address to be read, the coupler sets the access bit to 1 until the correct value is available. Thus an SDO read access must check that the table number lies in the range from 0...0x7F.

An access error during register communication is indicated by the corresponding return value in the SDO protocol (see the SDO section, Breakdown of parameter communication).

An example of reading register values

It is necessary to determine which baud rate index has been assigned to switch setting 1,1 (DIP 7,8). (See the section covering Network addresses and baud rates). To do this, the value in table 100, register 3, must be read. This means that the following SDO telegrams must be sent:

Write access (download request) to index 4500, sub-index 0, with the 32 bit data value 0x64 03 00 00.

    Id=0x600+Node-ID DLC=8; Data=23 00 45 00 00 00 03 64

Then a read access (upload request) to the same index/sub-index. The data value sent here is irrelevant (00 is used here).

    Id=0x600+Node-ID DLC=8; Data=40 00 45 00 00 00 00 00

The coupler responds with the upload response telegram:

    Id=0x580+Node-ID DLC=8; Data=43 00 45 00 04 00 03 64

This tells us that the value contained in this register is 4, and this baud rate index corresponds to 125 kbit/s (the default value).

Writing register values

SDO write access to the corresponding combination of index and sub-index with:
- table number + 0x80 (access bit = 1) in byte 3
- register address in byte 2
- high byte register value in byte 1
- low byte register value in byte 0 of the 32-bit data value.

Remove coupler write protection

Before the registers of the Bus Coupler can be written, the write protection must first be removed. In order to do this, the following values must be written in the given sequence to the corresponding registers:

 
Step
Table
Register
Value
Corresponding SDO download value (0x4500/0)
1.
99   
2
45054 (0xAFFE)
0xE3 02 AF FE (0xE3=0x63(=99)+0x80)
2.
99
1
1 (0x0001)
0xE3 01 00 01
3.
99
0
257 (0x0101)
0xE3 00 01 01

Remove coupler write protection (CAN representation)

In order to remove the coupler write protection, the following SDO telegrams (download requests) must thus be sent to the coupler:

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 FE AF 02 E3

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 01 00 01 E3

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 01 01 00 E3

An example of writing register values

After the write protection has been removed, the baud rate index for DIP switch setting 1,1 is to be set to the value 7. This will assign a baud rate of 20 kbaud to this switch setting.

This requires the value 7 to be written into table 100, register 3. This is done with an SDO write access (download request) to index 0x4500, sub-index 0 with the 32 bit value E4 03 00 07 (0xE4 = 0x64+0x80):

Id=0x600+Node-ID DLC=8; Data=23 00 45 00 07 00 03 E4

Identify terminals

The identifier of the coupler (or of the bus station) and of the attached Bus Terminals can be read from the Bus Coupler's table 9. Register 0 then contains the identifier of the Bus Coupler itself, register 1 the identifier of the first terminal and register n the identification of the nth terminal:

Table number
Register number
Description
Value range
9
0
Bus station identifier
0 - 65535
9
1-255
Identifier of the extension module/bus terminal
0 - 65535

The Bus Coupler description in register number 0 contains 5120 = 0x1400 for the BK5120, 5110 = 0x13F6 for the BK5110 and 5100 = 0x13EC for the LC5100. The Fieldbus Box modules contain the identifier 510 dec = 0x1FE in register 0.

In the case of analog and special terminals, the terminal identifier (dec) is contained in the extension module identifier or the terminal description.
Example: if a KL3042 is plugged in as the third terminal, then register 3 contains the value 3042dec (0x0BE2).

The following bit identifier is used for digital terminals:

 
MSB
LSB
1
s6
s5
s4
s3
s2
s1
s0
0
0
0
0
0
0
a
e

s6...s1: data width in bits; a=1: output terminal; e=1: input terminal

This identifier scheme results in the terminal descriptions listed below:

Extension module identifier
Meaning
0x8201
2 bit digital input terminal, e.g. KL1002, KL1052, Kl9110, KL9260
0x8202
2 bit digital output terminal, e.g. KL2034, KL2612, KL2702
0x8401
4 bit digital input terminal, e.g. KL1104, KL1124, KL1194
0x8402
4 bit digital output terminal, e.g. KL2124, KL2134, KL2184
0x8403
4 bit digital input/output terminal, e.g. KL2212

General coupler configuration (table 0)

Table 0 of the Bus Coupler contains the data for the general coupler configuration. It is not, as a general rule, necessary to change this; however, for special applications it is possible to change the settings using the KS2000 configuration software, or through direct access via register communication. The write protection must first be removed in order to do this (see above).

The relevant register entries are described below:

K-Bus configuration

Table 0, register 2, contains the K-Bus configuration, and is coded as follows (default value: 0x0006):

 
MSB
LSB
0
0
0
0
0
0
0
0
0
0
0
0
0
D
G
A

A: Auto-reset

If there is a K-Bus error, attempts are made cyclically to start the K-Bus up again through a reset. If emergency telegrams and guarding are not evaluated, activation of auto-reset can lead to output and input information being lost without that loss being noticed.

0: No auto-reset (default)

1: Auto-reset active

G: Device diagnostics

 Reporting (by means of emergency telegram), that, for example
- a current input is open circuit (with diagnostics)
- 10 V exceeded at a 1-10V input terminal

0: Device diagnostics switched off

1: Device diagnostics active (default)

D: Diagnostic data

from digital terminals is included in the process image (e.g. KL2212). This flag is only evaluated when device diagnostics is active (see above).

0: Do not display

1: Display (default)

Process image description

Table 0, register 3, contains the process image description, and is coded as follows (default value: 0x0903):

 
MSB
LSB
0
0
0
0
k1
k0
f1
f0
0
0
a
0
d
k
1
1

k0...k1: Reaction to K-Bus errors

0,2: Inputs remain unchanged (default = 2);

1: Set inputs to 0 (TxPDO with zeros is sent)

f0...f1: Reaction to fieldbus error

0: Stop the K-Bus cycles, watchdog in the terminals triggers, fault output values become active. The old output values are initially set during a restart.

1: Set outputs to 0, then stop the K-Bus cycles (default). 2: Outputs remain unchanged.

a: Word alignment (of analog and special terminals)

0: No alignment (default)

1: Map data to word boundaries (process data always starts on an even address in the PDO)

d: Data format for complex terminals (analog and special terminals)

0: Intel format (default)

1: Motorola format

k: Evaluation of complex terminals (analog and special terminals)

0: User data only (default)

1: Complete evaluation (note: analog channels then, for example, need 3 input and 3 output bytes instead of, e.g., 2 input bytes; instead of 4 channels per PDO, 2 channels require a RxPDO and a TxPDO)

Bus Terminal / Extension Box register communication

Bus Terminal / Extension Box register communication

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x4501
0
Access Terminal Register
Unsigned8
ro
N
none
Index 0x4501 allows access to all the registers in the bus terminal or extension module. Sub-index 0 contains the number of attached bus terminals.
1
Access Reg. Terminal 1
Unsigned32
rw
N
none
Access to bus terminal or extension module register 1
...
...
...
...
...
...
...
0XFE
Access Reg. Terminal 254
Unsigned32
rw
N
none
Access to bus terminal or extension module register 254

The 32 bit value is composed as follows:

MSB
 
 
LSB
Access (bit 7) + channel number (bits 6...0)
Register number
High byte register value
Low byte register value
[0..1] + [0...0x7F]
[0...0xFF]
[0...0xFF]
[0...0xFF]

As is usual in CANopen, the LSB is transferred first, followed by the MSB.

Accessing index 0x4501 allows the user registers in the bus terminal or extension module to be written or read. The modules have a set of registers for each input or output channel. The modules are addressed by means of the sub-index; the channel number and register are addressed in the 32-bit data value. Channel number 0 corresponds here to the first channel, 1 to the second channel, and so forth.

Reading the register value

The coupler must first be informed of which register is to be read. This requires an SDO write access to the appropriate index/sub-index combination, with:
- channel number (access bit = 0) in byte 3
- register address in byte 2 of the 32-bit data value.

Bytes 1 and 0 are not evaluated if the access bit (MSB of byte 3) equals 0. The register value can then be read with the same combination of index and sub-index.

After the writing of the register address to be read, the coupler sets the access bit to 1 until the correct value is available. Thus an SDO read access must check that the table number lies in the range from 0...0x7F.

An access error during register communication is indicated by the corresponding return value in the SDO protocol (see the SDO section, Breakdown of parameter communication).

An example of reading register values

The thermocouple type to which the second input channel of a KL3202 Thermocouple Input Terminal has been set is to be determined. This requires feature register 32 to be read. The terminal is located in the fifth slot, next to the Bus Coupler. This means that the following SDO telegrams must be sent:

Write access (download request) to index 4501, sub-index 5 with 32 bit data value 01 20 00 00 (0x01 = 2nd channel, 0x20 = register 32)
Id=0x600+Node-ID DLC=8; Data=23 01 45 05 00 00 20 01

Then a read access (upload request) to the same index/sub-index. The data value sent here is irrelevant (0x00 is used here).
Id=0x600+Node-ID DLC=8; Data=40 01 45 05 00 00 00 00

The coupler responds with the upload response telegram:
Id=0x580+Node-ID DLC=8; Data=43 01 45 05 06 31 20 01

This means that the feature register contains the value 31 06. The upper 4 bits indicate the thermocouple type. Their value here is 3, which means that PT500 is the type that has been set for this channel (see the KL3202 documentation).

Writing register values

SDO write access to the corresponding combination of index and sub-index with:
- channel number + 0x80 (access bit = 1) in byte 3
- register address in byte 2
- high byte register value in byte 1
- low byte register value in byte 0 of the 32-bit data value.

 
Note
WarningIf the write protection is not removed (as a result, for instance, of a faulty codeword), then although a write access to the terminal register will be confirmed (SDO download response), the value is not in fact entered into the register. It is therefore recommended that the value is read back after writing and compared.

Remove terminal write protection

Before the user registers in the Bus Terminal (register 32-xx, depending on terminal type or extension module) can be written to, it is first necessary for write protection to be removed. The following codeword is written for this purpose into register 31 of the channel concerned:

 
Write protection
Channel
Register
Value
Corresponding SDO download value (0x4500/0)
 
1,2, 3 or 4
31 (0x1F)
4661 (0x1235)
8y 1F 12 35 (y = channel number)

Remove terminal write protection (CAN representation)

In order to remove the terminal's write protection, the following SDO telegram must thus be sent to the coupler:

Id=600 + Node-ID DLC=8; Data=23 01 45 xx 35 12 1F 8y

where xx is the terminal's slot, and y indicates the channel.

An example of removing write protection

Suppose that a KL3202 Thermocouple Input Terminal is inserted into slot 5 of a BK5120 that has node address 3, then the write protection for the first channel can be removed as follows:

Id=0x603 DLC=8; Data=23 01 45 05 35 12 1F 80

The following telegram is sent for the second channel:

Id=0x603 DLC=8; Data=23 01 45 05 35 12 1F 81

An example of writing register values

The type of thermocouple attached to the second channel of the KL3202 Terminal in slot 5 is now to be changed to PT1000. For this purpose, the value 2 must be written into the upper 4 bits (the upper nibble) of the feature register. It is assumed to that the default values are to be supplied for all the other bits in the feature register. Once the write protection has been removed, SDO write access (download request) is used to write the following 32 bit value into index 0x4501, sub-index 05: 81 20 21 06 (0x81=01+0x80; 0x20=32;0x2106 = register value).

The corresponding telegram on the bus looks like this:

Id=0x600+Node-ID DLC=8; Data=23 01 45 05 06 21 20 81

Activate PDOs

Activate PDOs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x5500
0   
Activate PDO Defaults
Unsigned32
rw
N
0x00000000
sets PDO communication parameters for PDOs 2...11

CANopen defines default identifiers for 4 transmit (Tx) and 2 receive (Rx) PDOs, all other PDOs being initially deactivated after the nodes have started up. Index 0x5500 can activate all the PDOs that, in accordance with the terminals inserted, are filled with process data (manufacturer-specific default mapping). A manufacturer-specific default identifier allocation is carried out here for PDO5…11, while the transmission type and a uniform inhibit time is set for PDO2…11. PDOs that do not have process data (and which are thus superfluous in the present configuration) are not activated.

 
NoteThis object can only be written in the pre-operational state!

The 32-bit value is used as follows:

MSB
 
 
LSB
Transmission Type RxPDOs
Transmission Type TxPDOs
High byte inhibit time
Low byte inhibit time

As is usual in CANopen, the LSB is transferred first, followed by the MSB.

Example

Activate PDOs for bus node number 1, set inhibit time to 10ms (=100 x 100µs), set transmission type for TxPDOs to 255, and set transmission type for RxPDOs to 1. The following telegram must be sent:
Id=0x601 DLC=8; Data=23 00 55 00 64 00 FF 01

The node responds with the following telegram:
Id=0x601 DLC=8; Data=60 00 55 00 00 00 00 00

Identifiers used

The default identifier allocation for the additional PDOs leaves the pre-defined regions for guarding, SDOs etc. free, assumes a maximum of 64 nodes in the network with PDO6 as the next node, and proceeds according to the following scheme:

Object
Function code
Resulting COB ID (hex)
Resulting COB ID (dec)
TxPDO5
1101
0x681 - 0x6BF
1665 - 1727
RxPDO5
1111
0x781 - 0x7BF
1921- 1983
TxPDO6
00111
0x1C1 - 0x1FF
449 - 511
RxPDO6
01001
0x241 - 0x27F
577 - 639
TxDPO7
01011
0x2C1 - 0x2FF
705 - 767
RxPDO7
01101
0x341 - 0x37F
833 - 895
TxPDO8
01111
0x3C1- 0x3FF
961 - 1023
RxPDO8
10001
0x441 - 0x47F
1089 - 1151
TxPDO9
10011
0x4C1 - 0x4FF
1217 - 1279
RxPDO9
10101
0x541 - 0x57F
1345 - 1407
TxDPO10
10111
0x5C1 - 0x5FF
1473 - 1535
RxPDO10
11001
0x641 - 0x67F
1601- 1663
TxPDO11
11011
0x6C1 - 0x6FF
1729 - 1791
RxPDO11
11101
0x741 - 0x77F
1857 - 1919
 
Note
WarningEnsure that index 0x5500 is not used if Bus Couplers with more than 5 PDOs are present in networks with node addresses > 64, otherwise identification overlaps can occur. In that case, the PDO identifiers must be set individually.

For the sake of clarity, the default identifiers defined according to CANopen are also listed here:

Object
Function code
Resulting COB ID (hex)
Resulting COB ID (dec)
Emergency
0001
0x81 - 0xBF [0xFF]
129 - 191 [255]
TxPDO1
0011
0x181 - 0x1BF [0x1FF]
385 - 447 [511]
RxPDO1
0100
0x201 - 0x23F [0x27F]
513 - 575 [639]
TxPDO2
0101
0x281 - 0x2BF [0x2FF]
641 - 676 [767]
RxPDO2
0110
0x301 - 0x33F [0x37F]
769 - 831 [895]
TxDPO3
0111
0x381 - 0x3BF [0x3FF]
897 - 959 [1023]
RxPDO3
1000
0x401 - 0x43F [0x47F]
1025 - 1087 [1151]
TxPDO4
1001
0x481 - 0x4BF [0x4FF]
1153 - 1215 [1279]
RxPDO4
1010
0x501 - 0x53F [0x57F]
1281- 1343 [1407]
SDO (Tx)
1011
0x581 - 0x5BF [0x5FF]
1409 - 1471 [1535]
SDO (Rx)
1100
0x601 - 0x63F [0x67F]
1537 - 1599 [1663]
Guarding / Heartbeat/ Bootup
1110
0x701 - 0x73F [0x77F]
1793 - 1855 [1919]

The identifiers that result from the DIP switch settings on the coupler are given, as are the identifier regions for the node addresses 64...127 (not settable in Bus Couplers BK5110, BK5120 and LC5100) in square brackets. Addresses 1…99 can be set for the Fieldbus Box modules and the BK515x Bus Couplers.

The appendix contains a tabular summary of all the identifiers.

Digital inputs

Digital inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6000
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available digital 8-bit input data blocks
1
1st input block
Unsigned8
ro
Y
0x00
1st input channel
...
...
...
...
...
...
...
0XFE
254th input block
Unsigned8
ro
Y
0x00
254th input channel

Interrupt mask

Interrupt mask

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6126
0
Number of elements
Unsigned8
ro
N
Depending on type
The number of 32-bit interrupt masks = 2 x the number of TxDPOs
1
IR-Mask0 TxPDO1
Unsigned32
rw
N
0xFFFFFFFF
IR-mask bytes 0...3 TxPDO1
2
IR-Mask1 TxPDO1
Unsigned32
rw
N
0xFFFFFFFF
IR-mask bytes 4...7 TxPDO1
3
IR-Mask0 TxPDO2
Unsigned32
rw
N
0xFFFFFFFF
IR-mask bytes 0...3 TxPDO2
 
...
...
...
...
...
...
...
 
0x20
IR-Mask1 TxPDO16
Unsigned32
rw
N
0xFFFFFFFF
IR-mask bytes 4...7 TxPDO16

By default, every change in the value in an event-driven PDO causes a telegram to be sent. The interrupt mask makes it possible to determine which data changes are evaluated for this purpose. By clearing the appropriate ranges within the PDOs they are masked out for event-driving purposes (interrupt control). The interrupt mask does not just govern all the PDOs with digital inputs, but all the TxPDOs that are present. If the TxPDOs are shorter than 8 bytes, then the superfluous part of the IR mask is not evaluated.

The interrupt mask only has an effect on TxPDOs with transmission types 254 and 255. It is not stored in the device (not even through object 0x1010). Changes to the mask at runtime (when the status is operational) are possible, and are evaluated starting from the next change of input data.

The interrupt mask for TxPDOs with analog input data is not evaluated if either limit values (0x6424, 0x6425) or the delta function (0x6426) have been activated for the inputs.

This entry has been implemented in firmware C3 and above.

Example of data assignment

 index0x6126

Application example

The value contained in a fast counter input is only to be transmitted when bits in the status word (the latch input, for instance) have changed. This requires the 32 bit counter value to be masked out (zeroed) in the interrupt mask. The status is located in byte 0, while the counter value is, by default, contained in bytes or 1..4 of the corresponding PDOs (TxPDO3 in this example, because < 65 digital and < 5 analog inputs are present).
This means that index 0x6126, sub-index5 must receive the value 0x0000 00FF and that sub-index6 must have 0xFFFF FF00 written into it.

The corresponding SDOs therefore appear as follows:

 
11 bit identifier
8 bytes of user data
0x600+ node ID
0x22
0x26
0x61
0x05
0xFF
0x00
0x00
0x00
11 bit identifier
8 bytes of user data
0x600+ node ID
0x22
0x26
0x61
0x06
0x00
0xFF
0xFF
0xFF

Digital outputs

Digital outputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6200
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of available digital 8-bit output data blocks
1
1st input block
Unsigned8
rw
Y
0x00
1st output channel
...
...
...
...
...
...
...
0XFE
254th input block
Unsigned8
rw
Y
0x00
254th output channel

Analog inputs

Analog inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6401
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of analog input channels available
1
1st input
Unsigned16
ro
Y
0x0000
1st input channel
...
...
...
...
...
...
...
0XFE
254th input
Unsigned16
ro
Y
0x0000
254th input channel

The analog signals are displayed left aligned. The representation in the process image is therefore independent of the actual resolution. Detailed information on the data format can be found at the relevant signal type.

Analog outputs

Analog outputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6411
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of analog output channels available
1
1st input block
Unsigned16
rw
Y
0x0000
1st output channel
...
...
...
...
...
...
...
0XFE
254th input block
Unsigned16
rw
Y
0x0000
254th output channel

The analog signals are displayed left aligned. The representation in the process image is therefore independent of the actual resolution. Detailed information on the data format can be found at the relevant signal type.

Event driven analog inputs

Event driven analog inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6423
0   
Global Interrupt Enable
Boolean
rw
N
FALSE (0)
Activates the event-driven transmission of PDOs with analog inputs.

Although, in accordance with CANopen, the analog inputs in TxPDO2..4 are by default set to transmission type 255 (event driven), the event (the alteration of an input value) is suppressed by the event control in object 0x6423, in order to prevent the bus from being swamped with analog signals. It is recommended that the flow of data associated with the analog PDOs is controlled either through synchronous communication or through using the event timer. In event-driven operation, the transmission behavior of the analog PDOs can be parameterized before activation by setting the inhibit time (object 0x1800ff, sub-index 3) and/or limit value monitoring (objects 0x6424 + 0x6425) and/or delta function (object 0x6426).

Upper limit value analog inputs

Upper limit value analog inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6424
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of analog input channels available
1
upper limit 1st input
Unsigned16
rw
Y
0x0000
Upper limit value for 1st input channel
...
...
...
...
...
...
...
0XFE
upper limit 254th input
Unsigned16
rw
Y
0x0000
Upper limit value for 254th input channel

Values different from 0 activate the upper limit value for this channel. A PDO is then transmitted if this limit value is exceeded. In addition, the event driven mode must be activated (object 0x6423). The data format corresponds to that of the analog inputs.

Lower limit value analog inputs

Lower limit value analog inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6425
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of analog input channels available
1
lower limit 1st input
Unsigned16
rw
Y
0x0000
Lower limit value for 1st input channel
...
...
...
...
...
...
...
0XFE
lower limit 254th input
Unsigned16
rw
Y
0x0000
Lower limit value for 254th input channel

Values different from 0 activate the lower limit value for this channel. A PDO is then transmitted if the value falls below this limit value. In addition, the event driven mode must be activated (object 0x6423). The data format corresponds to that of the analog inputs.

Delta function for analog inputs

Delta function for analog inputs

 
Index
Sub-index
Name
Type
Attri­bute
Mapping
Default value
Meaning
0x6426
0
Number of elements
Unsigned8
ro
N
Depending on type and fittings
Number of analog input channels available
1
delta value 1st input
Unsigned16
rw
Y
0x0000
Delta value for the 1st input channel
...
...
...
...
...
...
...
0XFE
delta value 254th input
Unsigned16
rw
Y
0x0000
Delta value for the 254th input channel

Values different from 0 activate the delta function for this channel. A PDO is then transmitted if the value has changed by more than the delta value since the last transmission. In addition, the event driven mode must be activated (object 0x6423). The data format corresponds to that of the analog inputs (delta value: can only have positive values).