CiA Draft Standard 406
CANopen
Device profile for encoders
Version: 3.2
18 December 2006
CAN in Automation (CiA) e. V.
HISTORY
Date
1997-05-05
1998-05-11
2002-05-17
2003-12-20
2006-12-18
2
Device profile for encoders
Changes
Publication of Version 1.0
Publication of Version 2.0
Publication of version 3.0
The version 3.0 of this specification has been re-chaptered. In addition, all object
descriptions and entry descriptions have been reviewed and edited in accordance to
CiA DS-301 version 4.01. In particular, all Array objects have been reviewed. Type
error corrections and other editorial changes (mostly clarifications and rewordings) are
not listed in detail, only changes with technical content are recorded in the following
table:
Error behavior
TPDO
Object 1029h definitions have been added.
The event timer of the TPDO 1 shall be hard-wired with the cyclic
timer (object 6200h). They may be used alternatively.
The TPDO 2 is now compliant to CiA DS-301 version 4.01
meaning that this PDO shall use 1801h PDO communication
parameter set object and 1A01h PDO mapping parameter set.
This TPDO shall be transmitted when the device enters the
Operational state.
Additional parameter definition
Additional parameter definition
New object: offset values for multi-sensor device
TPDO 1
Object 6000h
Object 6500h
Object 65C0h
Publication of version 3.1
The version 3.1 of this specification includes besides some minor editorial
clarifications the following changes:
Object 6000h
Object 6005h
Object 6008h
Object 6009h
Object 6010h
Object 6020h
Object 6040h
Object 6050h
Object 6502h
Object 6510h
Publication of version 3.2
Measuring direction definition included
Sub-objects for acceleration and jerk step settings added
High precision position value object added
High precision preset value added
Data type changed to Integer32
Data type changed to Integer32
Acceleration value object added
Jerk value object added
Value definition for 0 included
Number of high precision revolutions object added
-
-
Detailed PDO specification
Editorial changes
CiA 2008 – All rights reserved
Device profile for encoders
General information on licensing and patents
CAN in AUTOMATION (CiA) calls attention to the possibility that some of the elements of this
CiA specification may be subject of patent rights. CiA shall not be responsible for identifying
any or all such patent rights.
Because this specification is licensed free of charge, there is no warranty for this
specification, to the extent permitted by applicable law. Except when otherwise stated in
writing the copyright holder and/or other parties provide this specification “as is” without
warranty of any kind, either expressed or implied, including, but not limited to, the implied
warranties of merchantability and fitness for a particular purpose. The entire risk as to the
correctness and completeness of the specification is with you. Should this specification prove
failures, you assume the cost of all necessary servicing, repair or correction.
© CiA 2008
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or
utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm,
without permission in writing from CiA at the address below.
CAN in Automation e. V.
Kontumazgarten 3
DE - 90429 Nuremberg, Germany
Tel.: +49-911-928819-0
Fax: +49-911-928819-79
Url: www.can-cia.org
Email: headquarters@can-cia.org
CiA 2008 – All rights reserved
3
Device profile for encoders
CONTENTS
1 Scope ............................................................................................................................... 6
2 Normative references........................................................................................................ 6
3 Abbreviations and definitions ............................................................................................ 6
4 Operating principle............................................................................................................ 6
4.1 General ................................................................................................................... 6
4.2 C1 encoders ............................................................................................................ 6
4.3 C2 encoders ............................................................................................................ 7
4.4 Diagnostic area ....................................................................................................... 7
4.5 Functional overview................................................................................................. 7
5 Error handling ................................................................................................................... 7
5.1 General ................................................................................................................... 7
5.2 Error behavior.......................................................................................................... 7
5.3 Additional error code meanings ............................................................................... 7
6 Pre-defined communication objects................................................................................... 8
6.1 General ................................................................................................................... 8
6.2 Object 1000h: Device type ....................................................................................... 8
6.3 Object 1001h: Error register ..................................................................................... 8
6.4 Object 1029h: Error behaviour.................................................................................. 9
6.5 Process data objects ............................................................................................... 9
6.5.1 General ....................................................................................................... 9
6.5.2 TPDO 1 ....................................................................................................... 9
6.5.3 TPDO 2 ..................................................................................................... 11
6.5.4 TPDO 3 ..................................................................................................... 13
7 Application object definitions........................................................................................... 15
7.1 General ................................................................................................................. 15
7.2 Overview on encoder application objects ............................................................... 15
7.3 Encoder parameters .............................................................................................. 17
7.3.1 General ..................................................................................................... 17
7.3.2 Object 6000h: Operating parameters .......................................................... 17
7.3.3 Object 6001h: Measuring units per revolution............................................. 18
7.3.4 Object 6002h: Total measuring range in measuring units............................ 19
7.3.5 Object 6003h: Preset value ........................................................................ 19
7.3.6 Object 6004h: Position value...................................................................... 20
7.3.7 Object 6005h: Linear encoder measuring step settings............................... 20
7.3.8 Object 6008h: High precision position value ............................................... 22
7.3.9 Object 6009h: High precision preset value ................................................. 22
7.3.10 Object 6010h: Preset values for multi-sensor devices ................................ 22
7.3.11 Object 6020h: Position values for multi-sensor devices .............................. 24
7.3.12 Object 6030h: Speed value ........................................................................ 25
7.3.13 Object 6040h: Acceleration value ............................................................... 26
7.3.14 Object 6050h: Jerk value............................................................................ 27
7.3.15 Object 6200h: Cyclic timer ......................................................................... 28
7.4 Encoder Cams ....................................................................................................... 29
7.4.1 General ..................................................................................................... 29
7.4.2 Object 6300h: Cam state register ............................................................... 30
7.4.3 Object 6301h: Cam enable register ............................................................ 32
CiA 2008 – All rights reserved
4
Device profile for encoders
7.4.4 Object 6302h: Cam polarity register ........................................................... 33
7.4.5 Object 6310h: Cam 1 low limit .................................................................... 34
7.4.6 Object 6311h: Cam 2 low limit .................................................................... 35
7.4.7 Object 6312h: Cam 3 low limit .................................................................... 36
7.4.8 Object 6313h: Cam 4 low limit .................................................................... 37
7.4.9 Object 6314h: Cam 5 low limit .................................................................... 38
7.4.10 Object 6315h: Cam 6 low limit.................................................................... 39
7.4.11 Object 6316h: Cam 7 low limit.................................................................... 40
7.4.12 Object 6317h: Cam 8 low limit.................................................................... 41
7.4.13 Object 6320h: Cam 1 high limit .................................................................. 42
7.4.14 Object 6321h: Cam 2 high limit .................................................................. 43
7.4.15 Object 6322h: Cam 3 high limit .................................................................. 44
7.4.16 Object 6323h: Cam 4 high limit .................................................................. 45
7.4.17 Object 6324h: Cam 5 high limit .................................................................. 46
7.4.18 Object 6325h: Cam 6 high limit .................................................................. 47
7.4.19 Object 6326h: Cam 7 high limit .................................................................. 48
7.4.20 Object 6327h: Cam 8 high limit .................................................................. 49
7.4.21 Object 6330h: Cam 1 hysteresis................................................................. 50
7.4.22 Object 6331h: Cam 2 hysteresis................................................................. 51
7.4.23 Object 6332h: Cam 3 hysteresis................................................................. 52
7.4.24 Object 6333h: Cam 4 hysteresis................................................................. 54
7.4.25 Object 6334h: Cam 5 hysteresis................................................................. 55
7.4.26 Object 6335h: Cam 6 hysteresis................................................................. 56
7.4.27 Object 6336h: Cam 7 hysteresis................................................................. 57
7.4.28 Object 6337h: Cam 8 hysteresis................................................................. 58
7.5 Work area supervision ........................................................................................... 59
7.5.1 General ..................................................................................................... 59
7.5.2 Object 6400h: Area state register ............................................................... 59
7.5.3 Object 6401h: Work area low limit .............................................................. 61
7.5.4 Object 6402h: Work area high limit............................................................. 62
7.6 Encoder diagnostics .............................................................................................. 63
7.6.1 General ..................................................................................................... 63
7.6.2 Object 6500h: Operating status .................................................................. 63
7.6.3 Object 6501h: Single-turn resolution and Measuring step ........................... 64
7.6.4 Object 6502h: Number of distinguishable revolutions ................................. 65
7.6.5 Object 6503h: Alarms ................................................................................. 65
7.6.6 Object 6504h: Supported alarms ................................................................ 66
7.6.7 Object 6505h: Warnings ............................................................................. 67
7.6.8 Object 6506h: Supported warnings............................................................. 68
7.6.9 Object 6507h: Profile and software version ................................................ 69
7.6.10 Object 6508h: Operating time..................................................................... 70
7.6.11 Object 6509h: Offset value......................................................................... 70
7.6.12 Object 650Ah: Module identification ........................................................... 71
7.6.13 Object 650Bh: Serial number ..................................................................... 72
7.6.14 Object 650Ch: Offset values for multi-sensor devices................................. 73
7.7 Object 6510h: Number of high precision revolutions ............................................... 74
7.7.1 Object 67FFh: Device type ......................................................................... 75
CiA 2008 – All rights reserved
5
1 Scope
Device profile for encoders
This document represents the CANopen device profile for incremental and absolute, linear
and rotary encoders. Besides position, velocity, acceleration, and jerk output possibility
complete cam functionality is covered. In addition, it is possible to handle multi-sensors
through one CANopen device.
All the above mentioned devices use communication techniques, which conform to those
described in the CANopen application layer and communication profile specification /CiA301/.
This document should be consulted in parallel to this profile.
2 Normative references
/CiA301/
CiA 301, CANopen application layer and communication profile
3 Abbreviations and definitions
Class 1
Class 2
Clock wise
C1
C2
CW
CCW Counter Clock wise
Abbreviations and definitions defined in /CiA301/ apply for this document too.
4 Operating principle
4.1 General
The purpose of encoders is to detect positions of any kind of machine tools. Encoders detect
positions and transmit the position values across the CANopen network. Optionally the
encoder may provide speed, acceleration, and jerk values. The encoder may receive
configuration information via SDO, e.g. conversion parameters for calculating an - to the
application adapted - position value. In the NMT state operational, the position value may be
transmitted by synchronous PDO. Additionally, the encoders may transmit asynchronously a
PDO scheduled by the elapsing of the event timer.
The CANopen device profile defines two encoder classes, a standard device class 1 (C1) and
an extended device class 2 (C2). The standard device C1 specifies basic functionality, which
shall be provided by each device. The C2 extended device provides a variety of features with
mandatory and optional functions. The mandatory functions of both, C1 and C2, are
necessary to ensure non-manufacturer specific operations of a device.
By defining mandatory device characteristics in C1, basic network and encoder operation is
guaranteed. By defining extended C2, a degree of defined flexibility may be built in. By
leaving ‘hooks’ for optional and manufacturer-specific functionality, the device developer will
not be constrained to an out-of-date standard.
4.2 C1 encoders
C1 is the mandatory class with a basic range of functions that all encoders shall support. The
C1 encoders may optionally support C2 functions, however these functions shall be
implemented according to the profile.
6
CiA 2008 – All rights reserved
4.3 C2 encoders
Device profile for encoders
C2 encoders support all C1 functions and extended functions defined in C2.
4.4 Diagnostic area
In addition to the classes C1 and C2, there are pre-defined areas and reserved parameters
for manufacturer-specific functions in this device profile.
4.5 Functional overview
The functional overview is shown in Figure 1.
Class C1
Class C2
Class C2
Physical position
Basic function
Absolute position
Scaling function
Preset function
Output position value
Figure 1 – Class C1 and class C2 functions
5 Error handling
5.1 General
Emergency messages are triggered by internal errors in the device and they are assigned the
highest possible priority to ensure that they get access to the bus without latency. By default,
the emergency messages contain the error field with pre-defined error numbers and additional
information.
5.2 Error behavior
If a serious device failure is detected the module shall enter by default autonomously the pre-
operational state. If object 1029h is implemented, the device may be configured to enter
alternatively the NMT stopped state or remain in the current NMT state in case of a device
failure. Device failures include the following communication errors:
• Bus-off conditions of the CAN interface
• Life guarding event with the state ‘occurred’
• Heartbeat event with state ‘occurred’
Severe device errors also may be caused by device internal failures.
The value definition as well as the object description and the entry description are specified in
/CiA301/.
5.3 Additional error code meanings
Additional error codes are defined in Table 1.
CiA 2008 – All rights reserved
7
Device profile for encoders
Table 1 – Additional error codes
Error Code
2110h
3110h
5100h
Meaning
Input current too high
Input voltage out of range
Hardware memory error
6 Pre-defined communication objects
6.1 General
This chapter defines the content of pre-defined communication objects.
6.2 Object 1000h: Device type
The object at index 1000h describes the type of device and its functionality. It is composed of
a 16-bit field, which describes the device profile that is used and a second 16-bit field, which
gives information on the type of encoder.
The object structure is specified in Figure 2. The value definition is specified in Table 2 and
Table 3. Object description and entry description are specified in /CiA301/.
31
MSB
Encoder type
16 15
Device type
0
LSB
Figure 2 – Object structure
Table 2 – Value definition for device type
Value
196h
Device profile number
Description
Other values shall be reserved.
Table 3 – Value definition for encoder type
Definition
Single-turn absolute rotary encoder
Multi-turn absolute rotary encoder
Single-turn absolute rotary encoder with electronic turn-count
Incremental rotary encoder
Incremental rotary encoder with electronic counting
Incremental linear encoder
Incremental linear encoder with electronic counting
Absolute linear encoder
Absolute linear encoder with cyclic coding
Multi-sensor encoder interface
Reserved
Value
0001h
0002h
0003h
0004h
0005h
0006h
0007h
0008h
0009h
000Ah
0000h;
000Bh to FFFEh
6.3 Object 1001h: Error register
The device profile specific bit shall be reserved.
8
CiA 2008 – All rights reserved