Chinese Version

CANopen Realtime Software

-CANopenRT - Real-time-capable CANopen Software for the development of CANopen Devices

Highlights

  • Comprehensive range of functions based on the current CANopen specification DS301 version 4.02
  • Enables quick and easy development of CANopen devices (slave and master)
  • Modular software structure with comprehensive configuration and scaling possibilities
  • Clearly structured, simple programming interface for connection of the application program
  • Integration in the operating system of the target system with universal interface
  • Easy portability to alternative microcontrollers and CAN controllers
  • High efficiency
 

OVERVIEW OF FUNCTIONS & SOFTWARE ARCHITECTURE

The CANopenRTl software contains all functions necessary for implementing slave or simple master devices according to the CANopen specification DS301, version 4.02.

In the CANopenRT software package, a so-called CANopen task is responsible for processing all necessary functions and services. This task is started as soon as there are tasks for it and then it processes only these tasks, i.e. no unnecessary computing time is consumed. The CANopen Task must be located together with the application tasks in a common memory range.

Programming Interface & Object Dictionary

The CANopen Realtime Interface (CRT) is the programming interface between the application tasks and CANopen protocol stack. Via this, all commands are transferred from the application to the CANopen protocol stack and the results of the command execution, events and emergency messages from the CANopen protocol stack to the application. The CRT is implemented on the basis of mailboxes. An application can consist of several tasks, which can use the CRT independently of one another.

Data are exchanged between application and CANopen software via the object dictionary. Each object dictionary entry can be directly allocated a reference to a variable with application data. Likewise, each application object can also be allocated a user-specific call-back function. This enables fast, event-controlled reaction of the application when these objects are accessed. Simultaneous access to the data of the object dictionary by the application and CANopen software is blocked by semaphores.

Process- (PDO) and Service Data Objects (SDO)

The CANopen Realtime software supports the PDO transfer types asynchronous (as an option with event timer), synchronous (cyclic and acyclic) and on request (RTR-only). PDO-mapping can be designed statically or dynamically according to the reaction speed required or available resources. Dummy mapping is provided as well as variable inhibit times. Objects can be mapped onto several PDOs simultaneously. With SDOs, the transfer types expedited and non-expedited (segmented) as well as block transfer are supported. The application can check the data written by SDO for consistency before the target variables are overwritten and abort the SDO transfer if necessary.

Network Management

The CANopenRT software supports the bootup defined in DS301 with all network services including node guarding with or without life guarding (master monitoring) and heartbeat mechanism with producer moniroting.

Identifier Allocation

Identifiers are allocated as standard according to the predefined I/O connection set.

Master Functionality

Mainly in smaller CANopen systems, often only a simple master device to start the system is required instead of a full CANopen master/manager. Therefore this CANopen software package also enables the implementation of a simple CANopen master with its own object dictionary. A CANopen device implemented on this basis can work in a system either as a slave or as a master and be configured via the object dictionary with the aid of configuration tools. However, the software package only provides the basic functions for the NMT services. Functionality such as the control of the system bootup, verification of the availability of all required slave devices, automatic download of configuration data or also specific reaction to node failures are not included and must be programmed by the user.

Operating System Support

All OS functions are encapsulated by virtual OS calls, which are contained in a central module (Generic Operating Environment, GOE). The CANopen RealTime software can thus be easily adapted to alternative operating systems.

Scalability & Hardware-Specific Adaptation

To CANopenRT software package provides all services and mechanisms defined in the specification DS301 version 4.02. To ensure a high degree of scalability and adaptability, the software package is configured in central files. This allows the protocol stack to be optimally adapted to the given application and therefore the available resources used effectively.

Implementation Work

The CANopenRT software is delivered as a hardware-independent C-source code and is always tested with the latest CANopen conformance test software of the CiA.

The documentation and sample programs supplied with the sofeware enables a quick start with the CANopen software. All sample programs can be run directly on a reference platform (evaluation board of the CPU manufacturer).

If the operating system used has its own CAN driver, a so-called wrapper must be created for this driver which adapts the driver interface of the operating system to the driver interface of the CANopenRT software package.

Available Versions

The CANopenRT software is available in two different packages with different ranges of functions: slave and master/slave. The master/ slave package has the complete range of functions and can be used for the development of both pure slave devices and simple master devices. The range of fucntions of each package is describled in the following table:

Functionality CANopenRT Software Package

Function Slave Master/Slave
Max. number of server SDOs 128 128
Max. number of client SDOs - 128
Max.number of PDOs (Tx/Rx) 256 256
Dynamic PDO mapping x x
SYNC Object C P/C
EMERGENCY Object P P/C
TIME STAMP Object C P/C
NMT functions S M/S
Node guarding/heartbeat x x
ID configuration according to Predefined Connection Set x x
ID configuration via SDOs x x

C=Consumer (receiver); P=Producer (sender); S=Slave; M=Master

Supported Operating Systems

Adapted versions of the CANopenRT software are already available for the following operating systems.

  • EUROS 3.16, 3.18
  • VxWorks 5.4

Delivery Specification

  • Source code
  • Software license
  • Detailed manual
  • Sample programs
  • Technical support

 

The 10th Floor, Quantum Plaza, No. 27, Zhichun Road, Haidian District, Beijing, 100083, P.R. China
Tel: +86-10-82357579, 82357580, 82357576

Fax: +86-10-82357574

info@mcu-world.com