CANopen is a standard communication protocol, defined in the European standard EN 50325-4, widely used in the industrial automation fields.
The protocol defines the set of rules and communication modes that allow the operation of devices within a network.
First developed for use with CAN fieldbus (Controller Area Network), it has also been applied to other types of fieldbuses such as Ethercat CoE (CANopen Over Ethercat).
CANopen is made up of a family of profiles that define the standardized communication mechanisms and the operating modes of the devices, in relation to the functionality and characteristics of the device’s type.
The profile’s purpose is the standardization of devices, with a view to facilitating the integration of different devices within the communication network.
The main standardized profiles are:
- DSP401 : I/O Devices
- DSP402 : Drives and Motion Control Devices
- DSP403 : Human Machine Interface Devices
- DSP404 : Measuring Devices
- DSP405 : IEC 1131 Programmable Devices
- DSP406 : Encoders Devices
- DSP408 : Proportional Hydraulic Valves Devices
The operating and communication principle of the CANopen fieldbus is based on the standard model ISO 11898/OSI:
The DS301 Profile indicates the communication rules between devices and specifies how information between devices is exchanged.
The information is transmitted and received within messages and identified as communication Objects.
CANopen defines and uses the following communication services:
- SDO – Service Data Objects
- PDO – Process Data Objects
- NMT – Network Management
- SYNC – Sync Object
- EMCY – Emergency Objects
The main concept of the CANopen fieldbus is based on the use of an Objects Dictionary, intended as the set of all accessible parameters of the device.
Each object is associated with an address (Index and sub-index) which gives a unique identification within the object dictionary.
You can access the dictionary objects through the SDO and PDO services.
The SDO service is used to establish a 'peer to peer' connection between two CANopen fieldbus devices, based on 'Client/Server' mechanism.
The SDO Server is the device that serves the object dictionary to which access is requested, while the SDO Client is the device that requires the access the object dictionary.
The PDO service is used to transmit process data in 'broadcast' mode, without any confirmation to the transmitting device.
The PDO message contains only the data related to the objects to be transmitted/received and, unlike SDOs, they do not include additional information (index, sub-index, data length).
Additional information is predefined in specific objects for each PDO (PDO Mapping).
The SDO service is generally used for device configuration.
Each SDO can be associated with the reading or writing of only one object at a time.
Now it’s time to see how CANopen DS301 communication protocol concretely works:
discover our range of CANopen fieldbus drives with DS301 communication protocol for stepper motors and brushless motors!