6 Overview of the CANopen Protocol
- 22 -
6 Overview of the CANopen Protocol
6.1 Brief Introduction
CANopen is an application layer protocol of the network transmission system based
on CAN bus. It complies with the ISO/OSI standard model, and denes the data link
layer and certain physical layer in the OSI model. It supports the multi-master mode,
in which any node in the network can send a message to other nodes. Network nodes
are classied with dierent priorities based on the system real-time requirements,
reducing the bus arbitration time in case of a transmission collision. The CAN network
uses the data block coding rather than the traditional address coding. With data block
coding, the number of nodes in the network is not limited theoretically, and dierent
nodes can receive the same data. This coding mode also features short transmission
byte, fast speed, good fault tolerance, and reliable data transmission, making it suitable
for industrial control and distributed real-time control. The following gure shows the
CANopen device model.
Communication interface
PDO
SDO
Special function object
NMT object
Object dictionary
Data type
Communication object
Application object
Application
Application program
Device subprofile
implementation
CAN bus
I/O
Figure 6-1 CANopen device model
6.2 Object Dictionary
The object dictionary is essentially a grouping of objects accessible using the network
in an ordered predened fashion.
Each object within the object dictionary is addressed using a 16-bit index and an 8-bit
sub-index. A master node or conguration tool can access all values in the object
dictionary of a slave node. The following gure shows the structure of the object
dictionary.