MODELING CANopen CiA
17
The Static Data Types at indices 0001h through 001Fh contain type definitions for standard data types
like BOOLEAN, INTEGER, floating point, string, etc. These entries are included for reference only,
they cannot be read or written.
Complex Data Types at indices 0020h through 003Fh are pre-defined structures that are composed of
standard data types and are common to all devices.
Manufacturer Specific Complex Data Types at indices 0040h through 005Fh are structures composed
of standard data types but are specific to a particular device.
Device Profiles may define additional data types specific to their device type. The static data types
defined by the device profile are listed at indices 0060h - 007Fh, the complex ones at indices 0080h -
009Fh.
A device may optionally provide the structure of the supported complex data types (indices 0020h -
005Fh and 0080h - 009Fh) at read access to the corresponding index. Sub-index 0 then provides the
number of entries at this index, and the following sub-indices contain the data type encoded as
UNSIGNED16 according to Table 39.
The Communication Profile Area at indices 1000h through 1FFFh contains the communication specific
parameters for the CAN network. These entries are common to all devices.
The standardised device profile area at indices 6000h through 9FFFh contains all data objects
common to a class of devices that can be read or written via the network. The device profiles may use
entries from 6000h to 9FFFh to describe the device parameters and the device functionality. Within
this range up to 8 different devices can be described. In such a case the devices are denominated
Multiple Device Modules. Multiple Device Modules are composed of up to 8 device profile segments.
By this feature it is possible to build devices with multiple functionality. The different device profile
entries are shifted with 800h.
For Multiple Device Modules the object range 6000
h
to 67FF
h
is shifted as follows:
6000h to 67FFh device 0
6800h to 6FFFh device 1
7000h to 77FFh device 2
7800h to 7FFFh device 3
8000h to 87FFh device 4
8800h to 8FFFh device 5
9000h to 97FFh device 6
9800h to 9FFFh device 7
The PDO distribution shall be used for every segment of a Multiple Device Module with an offset of 64,
e.g. the first PDO of the second segment gets the number 65. In this way a system with a maximum of
8 segments is supported.
The Object Dictionary concept caters for optional device features which means a manufacturer does
not have to provide certain extended functionality on his devices but if he wishes to do so he must do
it in a pre-defined fashion.
Space is left in the Object Dictionary at indices 2000h through 5FFFh for truly manufacturer-specific
functionality.
6.2.2.1 Index and Sub-Index Usage
A 16-bit index is used to address all entries within the Object Dictionary. In case of a simple variable
the index references the value of this variable directly. In case of records and arrays however, the
index addresses the whole data structure.
To allow individual elements of structures of data to be accessed via the network a sub-index is
defined. For single Object Dictionary entries such as an UNSIGNED8, BOOLEAN, INTEGER32 etc.
the value for the sub-index is always zero. For complex Object Dictionary entries such as arrays or
records with multiple data fields the sub-index references fields within a data-structure pointed to by
the main index. The fields accessed by the sub-index can be of differing data types.
6.3 Communication Model
The communication model specifies the different communication objects and services and the
available modes of message transmission triggering.
The communication model supports the transmission of synchronous and asynchronous messages.
By means of synchronous message transmission a network wide coordinated data acquisition and
actuation is possible. The synchronous transmission of messages is supported by pre-defined
communication objects (Sync message, time stamp message). Synchronous messages are
transmitted with respect to a pre-defined synchronization message, asynchronous message may be
transmitted at any time.