The CANopen Library is a source code library and provides a CANopen communication layer.
The CANopen Library is available in the following variants:
service type(s) | variable type | single-line | multi-line |
slave | global | ✔ | ✔ |
not global | ✔ | ➖ | |
master + slave | global | ✔ | ✔ |
not global | ✔ | ➖ |
The standard scope of delivery of the CANopen Library includes the following CANopen services:
CANopen service | CANopen Library slave | CANopen Library master + slave |
NMT master | ➖ | ✔ |
NMT slave | ✔ | ✔ |
SDO client | 128 | 128* |
SDO server | 128 | 128 |
SDO expedited transfer | ✔ | ✔ |
SDO normal transfer | ✔ | ✔ |
PDO producer | 512 | 512 |
PDO consumer | 512 | 512 |
PDO dynamic mapping | ✔ | ✔ |
PDO bit-wise mapping | ✔ | ✔ |
Heartbeat producer | ✔ | ✔ |
Heartbeat consumer | 127 | 127 |
Node Guarding master | ➖ | ✔ |
Node Guarding slave | ✔ | ✔ |
Emergency producer | ✔ | ✔ |
Emergency consumer | 127 | 127 |
Synchronization producer | ➖ | ✔ |
Synchronization consumer | ✔ | ✔ |
Time producer | ➖ | ✔ |
Time consumer | ✔ | ✔ |
Store / Restore nonvolatile | ✔ | ✔ |
Program download | ✔ | ✔ |
NMT Startup Manager | ➖ | ✔ |
Configuration Manager | ➖ | ✔ |
CANopen LEDs | ✔ | ✔ |
Layer Setting Services | ✔ | ✔ |
(*… 127 for 16 bit CPUs or big-endiness machines)
Further special CANopen services are provided by extra packages to the CANopen Library. Extra packages are licensed separatly. The following extra packages are available:
CANopen service | CANopen Library slave | CANopen Library master + slave |
SDO block transfer | ✔ | ✔ |
SDO Manager | in revision | in revision |
MPDO | ✔ | ✔ |
Flying Master | ➖ | ✔ |
Redundancy support | ✔ * | ✔ * |
Safety | ✔ | ✔ |
I/O framework | ✔ | ✔ |
(*… only available for single-line with global variables)
The CANopen Library is independent of the target hardware. A CANopen Library Driver is necessary to connect the CANopen Library with the target hardware. For more information see Platforms
The CANopen Library is highly configuarble. The https://portgmbh.atlassian.net/wiki/spaces/ICCX allows the tool-based configuration. Additionally the Industrial Communication Creator tool allows the design of the object dictionary of CANopen devices and generates:
C code for the CANopen Library configuration and initialization/deinitialization and the object dictionary
EDS / XDD
object descriptions (adaptable for user’s requirements)
The CANopen Library can be combined with the https://portgmbh.atlassian.net/wiki/spaces/CB to update firmware or to download files.
The CANopen Device Monitor of port represents a CANopen master and allows an easy start of CANopen communication with CANopen slave devices.
port provides CANopen integration support and trainings for:
CANopen
CANopen Library and CANopen Library Drivers