CANopen can be defined in basic terms as the communication language used when transferring data on the CAN bus. The definition of data information by the sender and the receiver needs to follow a common standard.
Compared with the CAN bus underlying protocol, which includes the physical layer and the data link layer, CANopen is a high-level protocol including five layers: the network layer, the transport layer, the session layer, the presentation layer, and the application layer.

The functions of these protocols on the CAN bus are described as follows:

Hierarchical definitionFunction
Network layerRouting and Addressing
transport layerReliable end-to-end transmission
session layerSynchronize
presentation layerEncoding and Representation
application layerDescribe how to configure, transfer and synchronize
CANopen device

Although the CAN bus has been successfully applied in many industries, CANopen was designed in order to allow it to be applied in more fields. Originally designed for motion-oriented machine control systems, CANopen is now used in various fields, such as: 

● Robotics

● Medical equipment

● Stepper and servo motors

● Food processing

● Automation

CANopen’s internal device structure has three main logical parts:

Protocol stack● Handling communication via CAN n/w
Application● Support internal control function

● Provide interface for hardware

Object dictionary● Configuration and diagnosis of CANopen devices are the most important

● Interface protocol and application software

● Covers all usage data types

● Store all communication parameters and application parameters

CANopen message frame format: The message frame format of CANopen is similar to that of CAN bus. It contains the COB-ID and control bits, in order to avoid the COB-ID conflict with the CAN bus, all

The COB-IDs are all different.

Looking for a PLC I/O Coupler? Click to learn more!