User`s manual
IA261/262 WinCE User’s Manual CANopen Library
B-2
CANopen Introduction
CANopen is a field bus protocol based on the Controller Area Network (CAN). As the name
implies, it is a open network standard accepted throughout the world. While created as a field bus
protocol for industrial automation, CANopen finds use in a wide range of other non-industrial
applications. There are so many possibilities, in fact, that it is possible to write volumes on
specialized uses of the protocol. Rather than being specific to one narrow application or even one
field, we present here a more generalized approach: a generic communication stack based on
CANopen that can be tailored to the user’s needs. This article focuses only on what is covered in
the CAN in Automation (CiA) standard DS-301. In fact, most of the discussion is limited to the
predefined areas of the specification, with emphasis on understanding how the code provided with
this application note functions and how users might develop an application on the CANopen
Stack.
CANopen defines some protocols to:
- Configure a CAN network.
- Transmit data to a specific node or in broadcast.
- Administrate the network. For example control state of slave node.
The documentation can be found in the CAN in automation website:
http://www.can-cia.de/canopen
The most important document about CANopen is the normative CiA Draft Standard 301, version
4.02. You can now download with no cost the specification in CAN in automation website.
Our CANopen Stack provides the lower layers of the protocol. Some of the features of this design
include:
- Conform to DS301. V.4.02.
- Master and Slave functionality.
- Programmable transfer-rate 10K, 20K, 50K, 125K, 250K, 500K, 800K,1000K.
- Sending SYNC.
- 1 SDO server per node.
- Unlimited SDO client.
- SDO transmission mode: normal, expedited download and upload.
- Unlimited PDO receive.
- Unlimited PDO transmit.
- Object Data type: 8, 16, 32 bits values, and fixed length strings.
- Slave state full implemented.
- NMT to change slave's state.
- PDO transmission mode: on request, every reception of 0 to n SYNC, on event.
- NMT Heartbeat: A node can be either heartbeat producer or receiver.
- NMT NodeGuard: Not fully implemented.