![RoboteQ CANBus Series User'S Reference Manual Download Page 31](http://html1.mh-extra.com/html/roboteq/canbus-series/canbus-series_users-reference-manual_1471291031.webp)
CANopen Message Types
CANBus Networking Manual
31
RPDO
Object Index-Sub
Size
Default Object Mapped
RPDO3
0x2005-13
S32
User VAR 13
0x2005-14
User VAR 14
RPDO4
0x2005-15
S32
User VAR 15
0x2005-16
User VAR 16
S32: signed 32-bit word
PDO Mapping
The Process Data Object (PDO) service allows exchanging one or several process vari-
ables in one single CAN message. The PDO mapping parameter describes which objects
in the CANopen object dictionary are transmitted by the sender. The PDO receiver uses
also a PDO mapping parameter, which specifies where to store the received process data
in the CANopen object dictionary. The PDO mapping parameter of the transmitter and
the sender may use different pointers (16-bit index and 8-bit sub-index) depending on the
CANopen profile.
In some simple devices, the user does not have the possibility to configure the PDO
mapping parameters. This is called static PDO mapping, but our controllers provide vari-
able PDO mapping. This means the system designer can re-configure the default PDO
mapping or generate new PDOs. Normally, this is done in the NMT pre-operational state,
when the PDOs are disabled. Of course, the user can also reconfigure the PDO mapping
in the NMT operational state, but then it is necessary to avoid inconsistencies in the PDO
mapping on the producer and the consumer side. To avoid this, the PDO must not be pro-
duced until the entire reconfiguration is finished.
The CiA 301 application layer specification requires a dedicated re-mapping procedure:
1. “Destroy” the PDO by setting the valid bit to 1
b
of sub-index 01
h
of the PDO communi-
cation parameter.
2. Disable PDO mapping by setting the sub-index 00h of the PDO mapping parameter to
00
h
.
3. Modify PDO mapping by changing the values of the corresponding sub-indices of the
PDO mapping parameters.
4. Enable PDO mapping by setting the sub-index 00
h
to the number mapped process
data.
5. “Create” a PDO by setting the valid bit to 0
b
of sub-index 01
h
of the PDO communica-
tion parameter.
If the controller detects that the index and subindex of the mapped object does not exist
or the object cannot be mapped during step 3, the controller responds with the SDO abort
transfer service (abort code: 06020000
h
or 06040041
h
). If the controller detects that the
RPDO mapping is not valid or not possible during step 4, the controller responds with the
SDO abort transfer service (abort code: 06020000
h
or 06040042
h
).
In the following example, we will show how to remap TPDO1 (0x1800) to transfer the fol-
lowing:
•
0x2100
01
: Motor amps for channel 1 (U16).
•
0x2100
02
: Motor amps for channel 2 (U16).
•
0x210D
01
: Internal voltage (U16).
•
0x210F
01
: MCU temperature (U8).