CANopen device model
The CiA 301 specification uses a device model as shown below. It includes a CAN entity, which comprises the CAN transceiver and the CAN protocol controller. The CAN protocol controller is in most cases on-chip of the micro-controller – sometimes named host controller. The CANopen protocol stack implements the CANopen protocols and the CANopen object dictionary. And there is the profile and application program of the CANopen device, which may comply with one of the CANopen profiles specified by CiA. Of course, the CANopen device may implement just manufacturer-specific profiles.
The CANopen device’s communication and application parameters accessible by means of the object dictionary are represented electronically in the Electronic Data Sheet (EDS). There are two versions: one is using an ASCII format (CiA 306) and another is using an XML schema (CiA 311). Both files provide the parameter and sub-parameter attributes. This includes index and sub-index, name, object code, data type, category (or entry category), access, PDO mapping, value range, and default value. EDS are used to teach device and system configuration tools the provided functionality. Such tools can also be implemented in the host controller with NMT master capability.