CANopen internal device architecture

As illustrated, a CANopen device consists of three logical parts. The CANopen protocol stack handles the communication via the CAN network. The application software provides internal control functionality as well as an interface for the process hardware. The CANopen object dictionary interfaces the protocol and the application software. It contains references for all used data types and stores all communication and application parameters.

The CANopen object dictionary

All communication and application parameters that determine the behavior of a CANopen device are administered in a standardized listing – the CANopen object dictionary. In this object dictionary, all data that needs to be exchanged between the communication part (CANopen protocol stack) and the application part (application software) of the device owns a unique 24-bit address. This address is divided into a 16-bit index and an 8-bit sub-index. Any entry in the CANopen object dictionary is readable via CANopen communication services.

Benefits of the CANopen object dictionary

The default SDO server channel that is supported by any CANopen device offers system designers the possibility to configure the desired CANopen device behavior via the network. System designers can adjust the desired communication behavior (e.g. participating in a synchronous network behavior; establishing communication coherences between two or several network participants, etc.) in the index range 1000h to 1FFFh. In the object ranges 2000h to 5FFFh and 6000h to 9FFFh application specific parameters can be set either in a manufacturer specific or standardized way, according to CiA device and application profiles.