ifm
System Manual
ecomat
mobile
PDM360NG (CR1080, CR1081, CR9042) Target V01
2011-07-28
CAN in the PDM360
Exchange of CAN data
167
9.3
Exchange of CAN data
Hints ................................................................................................................................... 168
CAN functions in the IEC user cycle ......................................................................................... 170
7477
CAN data is exchanged via the CAN protocol of the link layer (level 2) of the seven-layer ISO/OSI
reference model specified in the international standard ISO 11898.
Every participating bus node can transmit messages (multimaster capability). The exchange of data
functions similarly to radio. Data is sent to the bus without sender and address. The data is only
marked by the identifier. It is the task of every node to receive the transmitted data and to check by
means of the identifier whether the data is relevant for this node. This procedure is carried out
automatically by the CAN controller together with the operating system.
Depending on the device the following families of POUs are available:
CAN POUs on layer 2 (RAW-CAN)
(
→
page
):
easy functions.
CAN POUs to SAE J1939
(
→
page
):
high-quality functions for engine management.
CAN POUs to CANopen
(
→
page
):
complex CAN functions.
CANopen safety POUs (optional):
CAN functions for the safety applications.
Via these POUs the following units are linked to build a data object:
the work data,
the message type,
the selected identifier(ID).
These data objects participate in the exchange of data via the CAN bus. The transmit and receive
objects can be defined from all valid IEC data types (e.g. BOOL, WORD, INT, ARRAY).
The CAN message consists of a CAN identifier (
CAN ID
(
→
page
)) and max. 8 data bytes. The ID
does not represent the transmit or receive module but identifies the message. To transmit data it is
necessary that a transmit object is declared in the transmit module and a receive object in at least one
other module. Both declarations must be assigned to the same identifier and to the same message
type (base or extended).