0% found this document useful (0 votes)
119 views52 pages

Canopen Interface Technical Reference Manual: For Encoder Products Company'S Absolute Encoders

This document provides technical specifications and setup instructions for Encoder Products Company's absolute encoders that support a CANopen interface. It describes the encoder hardware, CANopen protocol implementation, object dictionary, configuration options, and troubleshooting.

Uploaded by

Duc Nguyen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
119 views52 pages

Canopen Interface Technical Reference Manual: For Encoder Products Company'S Absolute Encoders

This document provides technical specifications and setup instructions for Encoder Products Company's absolute encoders that support a CANopen interface. It describes the encoder hardware, CANopen protocol implementation, object dictionary, configuration options, and troubleshooting.

Uploaded by

Duc Nguyen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

CANopen Interface

Technical Reference
Manual
for Encoder Products Company's
Absolute Encoders

1-800-366-5412 • www.encoder.com
CANopen Interface Technical
Reference Manual
Contents
Section 1 Overview..........................................1 6.8 Electronic Cam Switch (CAM)............................. 27
1.1 Encoder Types....................................................... 1 6.8.1 CAM-State-Register................................... 27
1.2 About This Manual............................................... 1 6.8.2 CAM-Enable-Register................................ 27
1.3 Technical Specifications........................................ 2 6.8.3 CAM-Polarity-Register............................... 28
6.8.4 CAM-Low-Limit......................................... 28
Section 2 Safety...............................................2 6.8.5 CAM-High-Limit........................................ 28
2.1 Work Safely.......................................................... 2 6.8.6 CAM-Hysteresis.......................................... 28
2.2 Explanation of Symbols........................................ 2 6.9 Device Profile............................................. 28
6.10 SYNC . ........................................................ 29
Section 3 Parts of the Encoder...........................3 6.11 Encoder Designation.................................. 29
3.1 Basic Encoder Design........................................... 3 6.12 Error Behavior............................................ 29
3.2 Predefined Connection Settings........................... 3 6.13 NMT Startup Behavior............................... 29
3.3 LED Status Indicator and Signal Codes................. 4 6.14 Bus-Off Auto-Reset.................................... 29
6.15 Customer Data........................................... 30
Section 4 Integration........................................6 6.16 Temperature.............................................. 30
4.1 CAN Network Integration..................................... 6 6.17 Verify Configuration................................... 30
4.2 SDO Command to Set the Node ID....................... 6
4.3 Setting Up the Encoder........................................ 7 Section 7 Connection.............................................. 31
7.1 Mechanical and Electrical Configurations........... 31
Section 5 CANopen Operation............................8 7.2 Configuration via LSS......................................... 32
5.1 CAN physical and transport layer......................... 8 7.2.1 General Settings........................................ 32
5.2 CANopen Protocol................................................ 9 7.2.2 Baudrate Setting....................................... 34
5.3 Specifications and Profiles................................. 10 7.2.3 Node ID Setting......................................... 35
5.3.1 Overview................................................... 10 7.3 Configuration via SDO........................................ 35
5.3.2 Mechanisms of Communication................. 10 7.3.1 Reading and Writing on Objects................ 35
5.3.3 Object Dictionary....................................... 11 7.3.2 Baudrate Selection.................................... 37
5.4 Network Management (NMT)............................ 11 7.3.3 Node-ID Selection...................................... 38
5.5 Heartbeat and Node-Guarding........................... 13 7.3.4 Basic NMT Commands............................... 38
5.6 Emergency Messages......................................... 13 7.4 Heartbeat Settings............................................. 39
7.5 PDO Configuration.............................................. 40
Section 6 Setup..............................................14 7.5.1 PDO Parameters......................................... 40
6.1 Communication Objects – Dictionary................ 14 7.5.2 Synchronous PDO....................................... 41
6.2 Device-Specific Objects...................................... 17 7.5.3 Asynchronous PDO..................................... 41
6.3 Manufacturer-Specific Objects........................... 21 7.5.4 Variable PDO-Mapping.............................. 41
6.4 Network Management (NMT) Commands......... 23 7.6 Changing Resolution and Direction.................... 43
6.5 Heartbeat Protocol............................................. 23 7.7 Position Preset................................................... 44
6.6 Emergency Messages (EMCY)............................ 24 7.8 Change Speed-Integration and Speed Scaling... 44
6.7 Error Objects....................................................... 26 7.9 Frequency Limit................................................. 45
6.7.1 Manufacturer Status Register.................... 26 7.10 CAM-Configuration............................................ 45
6.7.2 Alarms....................................................... 26 7.11 Saving Into EEPROM........................................... 47
6.7.3 Warnings................................................... 26
Section 8 Troubleshooting..................................... 48

Rev. 03/19
CANopen Interface Technical
Reference Manual

List of Tables
3.2 Can-Identifier............................................................3
5.3.1 Draft Standards......................................................10
5.3.3 Structure of the Object Dictionary..........................11
6.1 The Object Dictionary............................................ 14
6.2 Device Specific Objects..........................................17
6.3 Manufacturer Specific Objects................................21
6.6 Emergency Error Code List....................................24
7.1 Pin and Cable Assignment.....................................31
7.2.1 LSS-Selective-Identification-Commands............... 32
7.2.2 Baudrate-Coding ...................................................34
7.3.1 Command Definitions.............................................36
7.3.2 Baudrate Codes......................................................37
7.4 Heartbeat NMT-State-Coding.................................39
7.5.1A Default PDO Configuration.....................................40
7.5.1B Possible PDO Transmission Types........................40
7.5.1C PDO Deactivation...................................................40
7.6 Counting Direction and Scaling Parameters..........43

Rev. 03/19
CANopen Interface Technical
Reference Manual

List of Abbreviations
autom. automatic
approx. approximately
CAN Controller Area Network
CAN-ID Main part of the arbitration of a CAN-frame
co constant: parameter is read-only, doesn’t change
Communication Object identifier, specifying the CAN-ID and additional parameters for the related
COB-ID
communication object
DLC Data Length Code
DS Draft Standard
DSP Draft Standard Proposal
dyn dynamic; Information changes depending on encoder features
EC European community
EDS file Electronic data sheet, standardized file describing a CANopen device
EMC Electromagnetic compatibility
GND Ground
i* Wildcard character for encoder specific infor­mation
LED Light Emitting Diode
LSB Least Significant Bit/Byte
LSS Layer Setting Services
MSB Most Significant Bit/Byte
n.n. not necessary
NMT Network Management
Node-ID Part of CAN-ID; number of the encoder in the CAN network
OSI Open Systems Interconnection Reference Model
PDO Process Data Object. Communication ob­ject for transmission of process data
res. reserved
ro Read Only, but not constant
RTR Remote Transmission Request
rw Read/Write: parameter can be read and written
SDO Service Data Object; communication object providing access to all entries of the object dictionary
SYNC Synchronizations telegram
comp. Compare
wo Write Only
xxb Mark that (xx) is a binary representation
xxd Mark that (xx) is a decimal representation
xxh Mark that (xx) is a hexadecimal representation

Rev. 03/19
CANopen Interface Technical Reference Manual

Section 1 – Overview
1.1 Encoder Types
This manual applies to the following Encoder Products Company encoders:

Encoder type Product code


Ø36 mm Hollow Bore Encoder A36HB
Ø36 mm Shaft Encoder A36SB
Ø2.5” Shaft Encoder A25SB
Ø58 mm Hollow Bore Encoder A58HB

The revision number and the serial number vary for each individual encoder and is found on the encoder’s label. In Figure 1.1, below, the text
circled in red is the revision number of the encoder software, and the text circled in green is the serial number.

Figure 1.1

1.2 About This Manual


This technical manual describes the different possibilities of mounting and configuring Encoder Products Company encoders with CANopen
interface. Use it in addition to other documents published by EPC, such as data sheets, mounting instructions, catalogs, and fliers.

This manual is intended for individuals with technical knowledge in the use of sensors, automation equipment, and CANopen interfaces. If you
are inexperienced in this subject, EPC recommends you seek help from experienced personnel. EPC recommends you carefully review this
manual before using the encoder, with special attention paid to the safety advice found throughout this manual.

For optimal use of the device, all information contained in this manual is needed and should be read.

Please retain all included documents for future reference.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 1 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

1.3 Technical Specifications


An encoder is an industrial sensor for measuring angular positions and derived measurements. This data is processed within the encoder and
provided as electronic signals for the connected devices.

The interface and protocol for the communication between the encoder and attached equipment meets the CAN and CANopen specifications. The
encoder is capable of CAN 2.0A and CAN 2.0B. The implemented CANopen protocol meets the CiA 406 encoder profile.

To aid in configuring the encoder, electronic data sheets are available for download at www.encoder.com.
MA series encoders are components designed for integration into larger assemblies. It is important to ensure the entire assembly complies with all
applicable regulations prior to applying the encoder.

Section 2 – Safety
2.1 Work Safely
An EPC absolute encoder with CANopen interface is a sensor for angular measurement and is to be used for this purpose only! The manufacturer
denies any liability for damages caused by ignoring this manual. EPC absolute encoders are designed, produced, and distributed for non-safety
relevant applications in industrial and commercial environments.

2.2 Explanation of Symbols


Definition:

The “INFO symbol” marks a section or information of particular importance for the further use of the device.

The “IMPORTANT symbol” marks a section or information describing a solution to a certain problem.

The “WARNING symbol” marks a section or information of particular importance to ensure the proper use and protect from risks
and dangers.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 2 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 3 – Parts of the Encoder

3.1 Basic Encoder Design


EPC absolute encoders are available in different mechanical versions. The different
versions provide key mechanical features to facilitate use in various mountings and
environments. Two different versions are shown in Figure 3.1.

The shaft or the hollow bore connects to the rotating part whose angular position or rotation
you want to measure. The encoder itself is mounted by tapped bores or flex mounts,
depending on the specific configuration.

A cable or M12 sized connector provides the electrical connection to the CAN-network.
Figure 3.1: Examples of EPC
A bi-color status LED at the top of the encoder indicates the different states of the encoder absolute encoders
during use, an especially helpful feature during configuration and troubleshooting.

3.2 Predefined Connection Settings


Table 3.2: CAN-Identifier

Services COB-ID
NMT 000h
SYNC 080h
EMCY 080h + Node-ID
PDO1(tx) 180h + Node-ID
PDO2(tx) 280h + Node-ID
PDO3(tx) 380h + Node-ID
SDO(rx) 600h + Node-ID
SDO(tx) 580h + Node-ID

By default all EPC CANopen absolute encoders are set on Node-ID=127h and Baudrate=Auto-Detection.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 3 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

3.3 LED Status Indicator and Signal Codes


Definition of LED indication types:

= red LED indications = “Physical Layer” information

= green LED indications = “NMT-Status” information

= LED off

Figure 3.3: LED Indications

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Green ON: Encoder is in OPERATIONAL state

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Green blinking: Encoder is in PRE-OPERATIONAL state

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Green single flash: Encoder is in STOPPED state

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Red ON: NOT ready / BUS-OFF

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Red single flash: Warning, error frames occurring

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Red double flash: Error, a guard event or a heart­beat
event (heart­beat consumer) has occurred

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 4 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms 3000 ms 3500 ms 4000 ms Red triple flash: Encoder is bus-passive

0 ms 500 ms 1000ms 1500 ms 2000 ms 2500 ms Red-green flicke­ring: Baudrate-Auto-Detection in pro­


gress or LSS config modus started

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 5 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 4 – Integration

The encoder indicates state changes with its Status-LED. See Section 3.3.

4.1 CAN Network Integration


The default node ID of the EPC absolute encoders with CANopen interface (Object 2101h sub-Index: 00h) is 7Fh=127d.

The encoder’s baudrate must be set to operate in a CAN-Network. Common ways to set the baudrate are via LSS (CiA DSP-305) or SDO com­
mands. EPC absolute encoders are preset at the factory to automatically detect the baudrate of the network (object 2100h sub-Index: 00h value:
09h B
­ audrate-auto-detection). Baudrate setup is usually not necessary. To detect the valid baudrate the encoder stays passive and scans the
communi­cation on the bus. Once the baudrate is detected, the encoder is set to this rate and switches into pre-operational mode.

To prevent possible collisions resulting from a duplicate assigned node ID it is recommen­ded to use a 1:1 connection with a bus master for
configuration (e.g. a laptop computer with suitable hardware and software). Set the master on the intended baudrate and use SDO or LSS
services to configure the encoder.

4.2 SDO Command to Set the Node ID


After connecting the encoder to the CAN bus master (e.g., laptop, etc.) the LED starts flickering red and green (see Figure 3.3 LED indications).
First, send one or more SYNC messages so the encoder can detect the baudrate:

CAN-ID DLC Command Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6
080h 8 00h 00h 00h 00h 00h 00h 00h 00h

To set the encoders node ID the object 2101h, access Sub-Index 00h. (This is only possible in PRE-OPERATIONAL state.) Send a write-SDO
­command with the intended node ID (in hex):
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3
600h+ID 8 2Fh 01h 21h 00h Node-ID 00h 00h 00h

An example for a node ID might be:


Node-ID (d) Node-ID (h)
1 01h
2 02h
127 7Fh

The change of the node ID via SDO takes effect after a reset of the enco­der (hard reset or NMT reset). The new node ID is stored into the
EEPROM immediately and without any further command. To set the node ID via LSS, refer to Section 7.2.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 6 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

4.3 Setting Up the Encoder


After setting the node ID, mount the encoder and connect it to the application’s bus, taking care to follow all proper mounting and safety procedures.
Once the encoder is completely integrated into the application you can switch it into OPERATIONAL mode by issuing the “Start-All-Nodes-
Command” (see Section 6.13)

The encoder is now operational (LED shows green ON) and starts sending data via process data objects (PDO). The encoder’s default confi­guration
triggers PDO1 with a change in the position value. The position value is the object 6004h and is transmitted as an Unsigned32. By de­fault PDO2
transmits the same value but synchronously on the reception of a SYNC message. Heartbeat is switched off and will not be transmitted by default.
The encoder is now configured and ready for basic applications.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 7 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 5 – CANopen Operation


5.1 CAN Physical and Transport Layer
A Controller Area Network, or CAN, is a multi-master serial bus system designed to allow microcontrollers and devices (nodes) to communicate
with each other without a host computer. Each node is able to send and receive messages, but not simultaneously. It uses cyclic redundancy check
(CRC) and other safety mechanisms to ensure the integrity of the data transmission and a mechanism commonly referred to as bit stuffing, the
process of inserting non-information bits into the data stream, to provide synchronization. CAN operates with the CSMA/CA (Carrier Sense Multiple
Ac­cess / Collision Avoidance) method. This means that collisions during bus ac­cess are avoided by a process known as bitwise arbitration. Bitwise
arbitration uses the binary representation of the node or message ID to determine the transmission priority. The signal pattern is encoded with NRZ-L
(Non Return To Zero -Low) and is sensed by all nodes.

The common CAN implementation with copper wire operates with differential signals transmitted via two wires: CANHIGH and CANLOW. These
differential signals provide a good common mode rejection ratio (CMRR).

The topology of a CAN network is a line, which can be extended by stubs. The maximum length of a stub is limited to 0.5m. The network must
always be ter­minated on each end with 120 Ohms resistance between CANHIGH und CANLOW. Other locations or values are not allowed.

The arbitration mentioned before is used to control the bus access from the nodes by prioritizing the CAN-Identifier of the different messages. Every
node monitors the bus. If more than one node wants access to the bus, the node with the highest message ID succeeds and the other nodes retreat
until there is silence on the bus (see Figure 5.11, below). The first dominant bit of the ID sent overwrites the corresponding recessive bit of the other
IDs. In the event more than one node uses the same CAN-ID an error occurs only at a collision within the rest of the frame. On principle a CAN-ID
should only be used by a single node.

Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6

Node 1

Node 2

Node 3

Result on the Bus

Figure 5.11 Example of an Arbitration

Messages are ranked for arbitration. The message with the lowest ID has the highest priority and has almost instant ac­cess to the bus, except that
an ongoing transmission will not be interrupted. Time critical messages should be assigned to the higher priority CAN-IDs, but even then there is no
determination in the time of transmission (non-deterministic transmission).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 8 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

All nodes must be synchronized for arbitration. Due to the lack of a separate clock signal, the transmission of many identical bits in line would lead
to the loss of synchronization. Bit stuffing is used to prevent loss of synchronization. After five equal bits, a complementary bit is inserted into the
transmission (the application will not notice), and the nodes can then keep resynchronizing on the bit flanks. (See Figure 5.12).

Before Bit Stuffing

After Bit Stuffing

Stuff bit

Before Bit Stuffing


Stuff bit
After Bit Stuffing

Figure 5.12: Bitstuffing

A CAN network is capable of baudrates up to 1 Mbit/s. Due to the required synchronization of the nodes, the maximum delay caused by the length
of the cable must be limited. The limitation corresponds with the baudrate. Below is a common recommendation of the maximum cable length at
several baudrates:

1000
Baudrates max. cable length
10 kBit/s 6.7 km 800

20 kBit/s 3.3 km
Bit Rate (kbps)

600
50 kBit/s 1.3 km
125 kBit/s 530 m 400

250 kBit/s 270 m


200
500 kBit/s 130 m
0
1 MBit/s <40 m 40 130 270 530 1300 3300 6700
Cable Length (m)

5.2 CANopen
CANopen is a specified higher protocol (layer 7 protocol) See Figure 5.2, below.
Application

7. Application
Oriented

6. Representation
5. Meeting
4. Transport
Transport
Oriented

3. Mediation
2. Fuse
1. Bit Transfer
Figure 5.2: ISO-OSI-Modell

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 9 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

With CANopen it is possible to transfer larger amounts of data, emergency te­legrams, and process data. CANopen describes how the
communication is per­formed. This means that parameters to configure a device are transmitted in a defined form (profile).

A CANopen profile defines objects representing the different functions of a device. These objects form a table called an object dictionary. The
communication profile defines the basic services and parameters of a CANopen device (e.g. service data objects or SDOs, process data objects
or PDOs, used CAN-IDs, and so on). The device profile defines the specific functions of a device family (e.g., enco­ders, i/o devices, etc.). For
encoders the device profile is the encoder profile CiA 406.

5.3 Specifications and Profiles


5.3.1 Overview
The CANopen specifications are defined by the CiA in Draft Standards. The following specifications in particular apply to EPC absolute encoders:

Table 5.3.1: Draft Standards


Specification Description
CiA 301 Application Layer and Communication Profile
CiA 303 Cabling/pin assignment, Representation of units, Indicator specification
CiA 305 Configuration of baudrate und node ID via LSS
CiA 306 Electronic Data Sheet
CiA 406 Encoder profile

5.3.2 Mechanisms of Communication


There are several different CANopen communication services:
SDO Use: for access to the object dictionary. There is one single SDO-channel.
Service Data Object
Two identifiers are assigned to the SDO channel, one for each direction of transmission.

A SDO transmission will always be acknowledged by the receiver. In the event of a failure an “abort message” is sent.
The internal delay time of EPC absolute encoders with CANopen interface is 1 millisecond maximum.
PDO Use: for transmission of process data. EPC absolute encoders with CANopen interface provide up to four PDOs. A
Process Data Object PDO uses the full length of the data area of a CAN frame (8 bytes) for the process data without additional overhead.
PDOs will not be acknowledged and are suitable for time critical applications.

By using the full 8 bytes for data, there is no additional information on what objects are transmitted. Therefore the
PDO producer and the PDO consumer have to define the PDO-mapping.

PDOs can be sent in different ways:

On request: A node sends a RTR frame to ID of the designated PDO and the encoder returns the PDO. (The CiA
strongly recommends not to use RTR frames. Therefore RTR is not supported by Encoder Products Company
encoders.)

Sychronously: On the reception of a SYNC message the node send its PDOs.

Asynchronously: The sending of the PDOs is triggered by an internal event (e.g. the internal event timer).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 10 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

5.3.3 Object Dictionary


The object dictionary lists all data types, objects and functions of the communication and the device profile. There are also manufacturer specific
objects listed.

The objects are addressed by 16-bit indices (lines) and 8-bit sub-indices (co­lumns).

Table 5.3.3 shows the structure of the object dictionary.

Index(hex ) Object description


0000 reserved
0001 001F static data types
0020 003F complex data types
0040 005F manufacturer specific data types
0060 007F profile specific static data types
0080 009F profile specific complex data types
00A0 0FFF reserved
1000 1FFF communication profile objects
2000 5FFF manufacturer specific objects
6000 9FFF objects from the “Standard device profiles”
A000 AFFF network variables
B000 FFFF reserved / system variables

5.4 Network Management (NMT)


A CANopen network always needs a network management master. The NMT-master controls the NMT states of all connected nodes.

A node can be switched into three different states:

• Pre-Operational
• Operational
• Stopped

After a CANopen node is switched on, and the com­munication and the internal application is initialized, the node switches into
pre-operational state. From this state, the NMT-Master can switch the node into the other states. To show that a node is ready
after boot-up, it sends a “boot-up message”. These messages use the CAN-ID of the Emergency service (EMCY). The
message is permanently associated with the node ID.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 11 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Description of the NMT-states:

SDO communication is enabled.


PDO communication is disabled.
Object communication enabled
SDO yes
Pre-Operational PDO no
NMT yes
SYNC no
EMCY yes
Heartbeat yes

Device fully operational and can send and receive PDOs .


Object communication enabled
SDO yes
PDO yes
Operational
NMT yes
SYNC yes
EMCY yes
Heartbeat yes

The communication is almost completely disabled. The device only reacts on NMT commands (e.g. start node).
Object Communication enabled
SDO no
PDO no
Stopped
NMT yes
SYNC no
EMCY no
Heartbeat yes

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 12 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

5.5 Heartbeat and Node-Guarding


There are two possible ways to supervise the operational availability of a CAN node during operation:

• Heartbeat
• Node-Guarding

The heartbeat protocol is independent from the master. It is the recommended mechanism. The device automatically sends a cyclic “life”
message. Encoder Products Company recommends the use of the heartbeat protocol.

When using the node guarding protocol, the NMT master sends RTR frames to the slaves, which have to answer within a defined time. If the
answer is mis­sing, this is detected by the master. This protocol leads to a high dependence on the master.

5.6 Emergency Messages


Failures of a CAN node are announced by emergency messages (EMCY mes­sage). The EMCY message contains a error code identifying the
problem. A node also can be configured to send no EMCYs.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 13 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 6 – Setup
6.1 Communication Objects
The communication objects comply with the CiA specification 301 v4.02 and have the object adresses 1000h to 1FFFh.
Table 6.1: The Object Dictionary

Object Sub- ro Default


Name Function Data Type Mapping
No. Index wr Value
Multiturn:
0002 0196h
1000h (MSB) Encoder type (LSB) device profile Single-
Device type 0h Unsigned32 co no
no turn:
0001
0196h
Indication of internal failures and part of
1001h Error regis­ter 0h Unsigned8 ro yes 00h
an emergency objects
General status register for manufacturer
1002h Manufacturer status regis­ter 0h Unsigned32 ro yes 0000 0000h
speci­fic purpose
PreDefined stores occuring errors
1003h 00h Unsigned8 rw no dyn.
Error Field indicated by EMCY (vo­latile)
01h Standard error field 1 Unsigned32 ro
02h Standard error field 2 Unsigned32 ro
03h Standard error field 3 Unsigned32 ro
04h Standard error field 4 Unsigned32 ro
05h Standard error field 5 Unsigned32 ro

1005h COB-ID SYNC Mes­sage 00h COB-ID of the SYNC message Unsigned32 rw no 0000 0080h

Manufacturer hardware Contains the number of the hardware


1009h 00h string16 co no i*
version revision assigned by the manu­facturer.
Contains the number of the software revi-
100Ah Manufacturer software ver­sion 00h string72 co no i*
sion assigned by the manu­facturer.
Defines the guard time in milliseconds;
100Ch Guard time 00h Unsigned16 rw no 0000h
0h= node guard protocol di­sabled.
Contains the life time factor for the node
100Dh Life time fac­tor 00h Unsigned8 rw no 00h
guard protocol.
1010h Store Para­meters 00h Unsigned8 co no 04h
01h Save all parameters Unsigned32 rw
02h Save communication Unsigned32 rw
03h Save application Unsigned32 rw
04h Save manufacturer Unsigned32 rw
1011h Restores default Parameters 00h Restores factory set­tings Unsigned8 co 04h
01h Restores all parameters Unsigned32 rw
02h Restores communication Unsigned32 rw
03h Restore application Unsigned32 rw
04h Restore manufacturer Unsigned32 rw

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 14 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual
Table 6.1: The Object Dictionary continued

Object Sub- ro Default


Name Function Data Type Mapping
No. Index wr Value
0000
Defines the COB-ID of the emergency
1014h COB-ID Emergency object 00h Unsigned32 rw no 0080h+
object (EMCY).
node-ID
1015h Defines the minumum pause (in 100 ms
Inhibit time EMCY 00h Unsigned16 rw no 0000h
steps) between the sending of EMCYs
Defines the time frame within the
1016h
Consumer heartbeat time 00h heartbeat consumer awaits a incoming Unsigned8 co 01h
heartbeat otherwise triggering an EMCY.
01h Heartbeat-Consumer cycletime Unsigned32 rw 0000 0000h
Defines the heartbeat cycle time in steps
1017h Producer heartbeat time 00h Unsigned16 rw no 0000h
of 1 ms. 0h = heartbeat di­sabled.
1018h Identity object 00h Unsigned8 co no 04h
01h Vendor-ID Unsigned32 co 1F02 0001h
02h Product Code (MA SERIES) Unsigned32 co 5743 4741h
03h Revision Number Unsigned32 co i*
04h Serial Number Unsigned32 co i*
Here the time of the last configuration
can be logged. If the confi­guration was
1020h Verify confi­guration 00h Unsigned8 co no 02h
changed after setting this value, the
object is set to zero autonomous.
01h Configuration date Unsigned32 rw 0000 0000h
02h Configuration time Unsigned32 rw 0000 0000h
Changing the encoder’s
behavior in case of a
1029h Error beha­vior 00h Unsigned8 co no 02h
node-guarding or heart-
beat event, etc.
01h Communication error Unsigned8 rw 00h
02h Encoder Error Unsigned8 rw 00h
Transmit PDO1 com­ Defines the communi­cation parameters of
1800h 00h Unsigned8 co no 05h
munication parameters the 1st TPDO
180h+
01h COB-ID for PDO Unsigned32 rw
Node-ID
02h Transmission type Unsigned8 rw FEh
05h Event-timer Unsigned16 rw 0000h
Transmit PDO2 com­ Defines the communi­cation parameters of
1801h 00h Unsigned8 co no 05h
munication parameters the 2nd TPDO
280h+
01h COB-ID for PDO Unsigned32 rw
Node-ID
02h Transmission type Unsigned8 rw 01h
05h Event-timer Unsigned16 rw 0000h
Transmit PDO3 com­ Defines the communi­cation parameters of
1802h 00h Unsigned8 co no 05h
munication parameters the 3rd TPDO
380h+
01h COB-ID for PDO Unsigned32 rw
Node-ID
02h Transmission type Unsigned8 rw 01h
05h Event-timer Unsigned16 rw 0000h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 15 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 6.1: The Object Dictionary continued

Object Sub- ro Default


Name Function Data Type Mapping
No. Index wr Value
Defines the communi­
Transmit PDO4 com­
1803h 00h cation parameters of Unsigned8 co no 05h
munication parameters
the 4th TPDO
480h+
01h COB-ID for PDO Unsigned32 rw
Node-ID
02h Transmission type Unsigned8 rw 01h
05h Event-timer Unsigned16 rw 0000h
Defines the PDO-mapping of the 1st
1A00h TPDO1 mapping parameter 00h Unsigned8 rw no 01h
TPDO
01h Mapped application ob­ject 1 Unsigned32 rw 6004 0020h
variable, depends on 02h­-
Mapped application ob­ject 2 -8 Unsigned32 rw
sub-index 00h 08h
Defines the PDO-mapping of the 2nd
1A01h TPDO2 mapping parameter 00h Unsigned8 rw no 01h
TPDO
01h Mapped application ob­ject 1 Unsigned32 rw 6004 0020h
variable, depends on 02h­-
Mapped application ob­ject 2 -8 Unsigned32 rw
sub-index 00h 08h
Defines the PDO-mapping of the 3rd
1A02h TPDO3 mapping parameter 00h Unsigned8 rw no 01h
TPDO
01h Mapped application ob­ject 1 Unsigned32 rw 6004 0020h
variable, depends on 02h­-
Mapped application ob­ject 2 -8 Unsigned32 rw
sub-index 00h 08h
Defines the PDO-mapping of the 4th
1A03h TPDO4 mapping parameter 00h Unsigned8 rw no 01h
TPDO
01h Mapped application ob­ject 1 Unsigned32 rw 6004 0020h
variable, depends on sub- 02h­-
Mapped application ob­ject 2 -8 Unsigned32 rw
index 08h
00h
Defines the start­up behavior of the 0000
1F80h NMT-Start-up­behavior 00h Unsigned32 rw no
encoder 0000h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 16 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.2 Device-Specific Objects


The device specific objects comply with the CiA encoder profile specification 406 v3.2 and have the object addresses range 6000h to 9FFFh.
Table 6.2 Device-Specific Objects
Object Sub- ro Default
Name Function Data Type Mapping
No. Index wt Value
Changing / Indicating the operating
6000h Operating parameters 00h Unsigned16 rw no dyn
parame­ters
Changing / Indicating the single turn 0000
6001h Measuring units per revolution 00h Unsigned32 rw no
resolu­tion (STR) 4000h
Changing/indicating the total measuring FFFF
6002h Total measu­ring range 00h Unsigned32 rw no
range FFFFh
Setting/indicating the preset value to 0000
6003h Preset value 00h Unsigned32 rw no
adapt the position value to the application 0000h
6004h Position va­lue 00h Current position value Unsigned32 ro yes dyn
Current position value, when measuring
6008h High preci­sion position value 00h Unsigned64 ro yes dyn
range >32 bit
0000
Setting/indicating the High-precision- 0000
6009h High preci­sion preset Value 00h Unsigned64 rw no
preset­value 0000
0000h
6030h Speed value 00h Rotation speed in units (bit) per second Unsigned8 ro yes 01h
01h Speed value Signed16 ro dyn
Accelleration value in units (bit) per
6040h Acceleration Value 00h Unsigned8 ro yes 01h
second2
01h Acceleration value Signed16 ro dyn
6050h Jerk Value 00h Jerk value in units (bit) per second3 Unsigned8 ro yes 01h
01h Jerk value Signed16 ro dyn
Changing / Indicating the transmission
6200h Cyclic-Timer 00h Unsigned16 rw no 0001h
per­iode of asynchronous TPDOs;
Status bits of the cams of the correspond-
6300h Cam state register 00h Unsigned8 ro yes 01h
ing cam channel
01h Cam state channel1 0b=inactiv 1h=activ Unsigned8 ro 00h
Changing/indicating the cam enable bits
6301h Cam enable register 00h Unsigned8 ro no 01h
of the corresponding cam channel
01h Cam enable channel1 0b=inactiv 1b=activ Unsigned8 rw 00h
Changing/indicating the inversion of the
6302h Cam polarity register 00h Unsigned8 ro no 01h
corresponding cam in (6300h)
Cam polarity channel1 0b=cam state not
01h Unsigned8 rw 00h
inver­ted 1b=cam state inver­ted
Changing/indicating the lower switching
6310h Cam1 low li­mit 00h Unsigned8 co no 01h
point of the 1st cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 1st cam of the 1st channel 0000h
Changing/indicating the lower switching
6311h Cam2 low li­mit 00h Unsigned8 co no 01h
point of the 2nd cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 2nd cam of the 1st channel 0000h
Changing/indicating the lower switching
6312h Cam3 low li­mit 00h Unsigned8 co no 01h
point of the 3rd cam

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 17 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 6.2 Device-Specific Objects continued


ro
Object Sub- Default
Name Function Data Type wt Mapping
No. Index Value
co
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 3rd cam of the 1st channel 0000h
Changing/indicating the lower switching
6313h Cam4 low li­mit 00h Unsigned8 co no 01h
point of the 4th cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 4th cam of the 1st channel 0000h
Changing/indicating the lower switching
6314h Cam5 low li­mit 00h Unsigned8 co no 01h
point of the 5th cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 3rd cam of the 5th channel 0000h
Changing/indicating the lower switching
6315h Cam6 low li­mit 00h Unsigned8 co no 01h
point of the 6th cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 6th cam of the 1st channel 0000h
Changing/indicating the lower switching
6316h Cam7 low li­mit 00h Unsigned8 co no 01h
point of the 7th cam
Changing/indicating the lower switching 0000
01h Signed32 rw
point of the 7th cam of the 1st channel 0000h
Changing/indicating the lower switching
6317h Cam8 low li­mit 00h Unsigned8 co no 01h
point of the 8th
Changing/indicating the upper switching
6320h Cam1 high limit 00h Unsigned8 co no 01h
point of the 1st cam
Changing/indicating the upper switching
6321h Cam2 high limit 00h Unsigned8 co no 01h
point of the 2nd cam
Changing/indicating the upper switching
6322h Cam3 high limit 00h Unsigned8 co no 01h
point of the 3rd cam
Changing/indicating the upper switching
6323h Cam4 high limit 00h Unsigned8 co no 01h
point of the 4th cam
Changing indicating the upper
6324h Unsig ned8co no 01h
switching point of the 5th cam
Changing/indicating the upper switching 0000
01h Signed32 rw
point of the 5th cam of the 1st channel 0000h
Changing/indicating the upper switching
6325h Cam6 high limit 00h Unsigned8 co no 01h
point of the 6th cam
Changing/indicating the upper switching 0000
01h Signed32 rw
point of the 6th cam of the 1st channel 0000h
Changing/indicating the upper switching
6326h Cam7 high limit 00h Unsigned8 co no 01h
point of the 7th cam
Changing/indicating the upper switching 0000
01h Signed32 rw
point of the 7th cam of the 1st channel 0000h
Changing/indicating the upper switching
6327h Cam8 high limit 00h Unsigned8 co no 01h
point of the 8th cam
Changing/indicating the upper switching 0000
01h Signed32 rw
point of the 8th cam of the 1st channel 0000h
Changing/indicating the hysteresis for the
6330h Cam1 hyste­resis 00h Unsigned8 co no 01h
1st cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
1st cam of the 1st channel 0000h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 18 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 6.2 Device-Specific Objects continued

ro
Object Sub- Default
Name Function Data Type wt Mapping
No. Index Value
co
Changing/indicating the hysteresis for the
6331h Cam2 hyste­resis 00h Unsigned8 co no 01h
2nd cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
2nd cam of the 1st channel 0000h
Changing/indicating the hysteresis for the
6332h Cam3 hyste­resis 00h Unsigned8 co no 01h
3rd cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
3rd cam of the 3rd channel 0000h
Changing/indicating the hysteresis for the
6333h Cam4 hyste­resis 00h Unsigned8 co no 01h
4th cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
4th cam of the 1st channel 0000h
Changing/indicating the hysteresis for the
6334h Cam5 hyste­resis 00h Unsigned8 co no 01h
5th cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
5th cam of the 5th channel 0000h
Changing/indicating the hysteresis for the
6335h Cam6 hyste­resis 00h Unsigned8 co no 01h
6th cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
6th cam of the 1st channel 0000h
Changing/indicating the hysteresis for the
6336h Cam7 hyste­resis 00h Unsigned8 co no 01h
7th cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
7th cam of the 1st channel 0000h
Changing/indicating the hysteresis for the
6337h Cam8 hyste­resis 00h Unsigned8 co no 01h
8th cam
Changing/indicating the hysteresis for the 0000
01h Unsigned32 rw
8th cam of the 1st channel 0000h
Indicating if the current position is in or
6400h Area state register 00h Unsigned8 co yes 01h
outside the work area
Status of the area state register:
00h=within area; 03h=outside work
01h Unsigned8 ro dyn
area,overflow 05h=outside work area,
underflow
6401h Work area low limit 00h Number of sub-indices Unsigned8 co no 01h
Changing/indicating the work area low 0000
01h Signed32 rw
limit 0000h
6402h Work area high limit 00h Number of sub-indices Unsigned8 co no 01h
Changing/indicating the work area high 0000
01h Signed32 rw
limit 0000h
6500h Operating-status 00h Indicates the operating state of the device Unsigned16 ro no dyn
0000
6501h Measuring units per revolution 00h Indication of the single-turn resolution Unsigned32 co no
4000h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 19 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 6.2 Device-Specific Objects continued

ro
Object Sub- Default
Name Function Data Type wt Mapping
No. Index Value
co
Singl-
eturn:
Number of distin­guishable
6502h 00h Indication of the multi-turn resolution Unsigned16 co no 0001h
revolutions
Multi-turn:
FFFFh
6503h Alarms 00h Alarm set by malfunc­tion. Unsigned16 ro yes dyn

6504h Supported alarms 00h Information about sup­ported alarms. Unsigned16 co no F003h
6505h Warning set on devia­tion of certain
Warnings 00h Unsigned16 ro yes dyn
p. 22 parame­ters.
6506h Supported warnings 00h Information about sup­ported warnings. Unsigned16 co no 3005h
Profile and software Revision of the implemented encoder 0105
6507h 00h Unsigned32 co no
version profile and software 0302h
FFFF
6508h Operating time 00h not supported Unsigned32 co no
FFFFh
Offset value, calculated from the preset 0000
6509h Offset value 00h Signed32 ro no
value (6003h) 0000h
650Ah Module iden­tification 00h manufacturer specific offset Unsigned8 ro no 01h
01h Manufacturer offset va­lue Signed32 ro no dyn
serial number of the en­coders, hard wired
650Bh Serial num­ber 00h Unsigned8 co no 01h
with object 1018h-04h
01h Serial number Unsigned32 ro i*
0080
Number of high-precision- Indicates the maximum possible high-
6510h 00h Unsigned40 co no 0000
revolutions precision multiturn resolution
0000h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 20 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.3 Manufacturer-Specific Objects


The objects 2000h to 5FFFh are manufacturer specific and not defined by the CiA.

Table 6.3 Manufacturer-Specific Objects


ro
Object Sub- Default
Name Function Data Type rw Mapping
No. Index Value
co

2100h Baudrate 00h Setting the baudrate Unsigned8 rw no 09h

2101h Node-ID 00h Setting the node-ID Unsigned8 rw no 7Fh


Defines the time in BUS OFF, before
2103h BUS-Off Auto-Reset 00h automatically resetting. 0h = no auto­matic Unsigned8 rw no 00h
reset, 01h-FFh = time in sec.
Number of filter steps for speed, accel-
2105h integration value 00h Unsigned8 rw no 02h
eration and jerk
01h Integration -Position value filter Unsigned8 rw 04h
02h Integration -Speed va­lue filter Unsigned16 rw 03E8h
2106h Speed sca­ling 00h Scaling of the speed value Unsigned8 co no 02h
01h Multiplicator Unsigned16 rw 0001h
02h Divisor Unsigned16 rw 0001h
2107h Frequency Limit 00h Limit for Speed value Unsigned16 rw no 00FFh
Customer EEPROM
2120h 00h Object to store any cus­tomer data. Unsigned8 co no 08h
area
FFFF
01h Customer data 1 Unsigned32 rw
FFFF
FFFF
02h Customer data 2 Unsigned32 rw
FFFF
FFFF
03h Customer data 3 Unsigned32 rw
FFFF
FFFF
04h Customer data 4 Unsigned32 rw
FFFF
FFFF
05h Customer data 5 Unsigned32 rw
FFFF
FFFF
06h Customer data 6 Unsigned32 rw
FFFF
FFFF
07h Customer data 7 Unsigned32 rw
FFFF
FFFF
08h Customer data 8 Unsigned32 rw
FFFF

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 21 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 6.3 Manufacturer-Specific Objects continued

ro
Object Sub- Default
Name Function Data Type rw Mapping
No. Index Value
co
Monitoring the internal operating tem-
2500h Temperature Object 00h Unsigned8 co yes 05h
perature
01h Current temperature value Signed16 ro dyn
02h Upper Limit Signed16 rw 100°
03h Lower Limit Signed16 rw -40°
04h Maximum value occu­red Signed16 ro dyn
05h Minimum value occured Signed16 ro dyn
2502h Error History 00h Non-volatile error his­tory. Unsigned32 co no dyn

01h Standard Error field 1 Unsigned32 ro


02h Standard Error field 2 Unsigned32 ro
03h Standard Error field 3 Unsigned32 ro
04h Standard Error field 4 Unsigned32 ro
05h Standard Error field 5 Unsigned32 ro
Alarms­ Logging of alarms occured. Number of
2503h 00h Unsigned8 co no dyn
History alarms.
01h Alarm 1 Unsigned16 ro
02h Alarm 2 Unsigned16 ro
03h Alarm 3 Unsigned16 ro
04h Alarm 4 Unsigned16 ro
05h Alarm 5 Unsigned16 ro
Logging of warnings occured. Number of
2504h Warnings­History 00h Unsigned8 rw no dyn
warnings.
01h Warning 1 Unsigned16 ro
02h Warning 2 Unsigned16 ro
03h Warning 3 Unsigned16 ro
04h Warning 4 Unsigned16 ro
05h Warning 5 Unsigned 6 ro

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 22 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.4 Network Management (NMT) commands


To switch between the encoders states (STOPPED, PRE-OPERATIONAL, OPE­RATIONAL) or to trigger a soft reset, there are different NMT
commands. The messages are 3 bytes each and will not be acknowledged. The CAN-ID of the NMT is always ZERO and therefore has the
highest priority.
0 02h Command Node-ID
CAN-ID DLC Byte 0 Byte 1

Node-ID:
The node-ID determines, if the NMT will address a certain node or all nodes.

Node Designated value


all Nodes 00d
Valid node-IDs 01..127d
invalid node-IDs 128..255d

Command:
The command determines the intended reaction of the addressed node.

NMT command Value


Start node 01h
Stop node 02h
Pre-Operational 80h
Reset node 81h
Reset communica­tion 82h

6.5 Heartbeat Protocol


By default the heartbeat protocol is disabled.

The encoder can either send a heartbeat (producer heartbeat) or monitor the heartbeat of other nodes (consumer heartbeat):

Producer heartbeat (Encoder sends its heartbeat)


The producer heartbeat can be enabled by setting the producer heartbeat time in milli-seconds and may be disabled by setting the producer
heartbeat time to 00h. This is done by object 1017h, sub-index 0 (00h=OFF, time in milli-sec.= 0..9999h).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 23 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Consumer Heartbeat (Encoder monitors an external heartbeat)


The object 1016h, sub-Index=01h, defines the consumer heartbeat time. The encoder uses this time to monitor another heartbeat producer. If the
monito­red heartbeat does not occur within this time (e.g. device broken), the enco­der sends an EMCY message with error code 8130h (Life guard
or heartbeat error). The object also defines the node-ID to be monitored.

Bit 31 -24 Bit 23 -16 Bit 15 -0


reserved (00h) Node-ID Heartbeat producer time

A time value of 0 or a node value 0 or highter than 127 disables the function.

Example for monitoring the node 127d =7Fh with a heardbeat consumer time of 1000 milli-sec (=2710h). An EPC absolute encoder with CANopen
interface is assumed to be node 1.:

601h 8 23h 16h 10h 01h 10h 27h 7Fh 00h


CAN-ID DLC Command Object Object Sub- Time Time Producer res.
L H index L H node-ID

6.6 Emergency Messages (EMCY)


An emergency is sent when a failure occurs either on the bus or within the device. Within an EMCY message the error is coded.

Object 1014h defines the COB-ID of the emergency message. The default value is 80h + device node-ID (1 -127). BasicCAN Frames or
ExtendedCAN Frames can be used (Bit 29 = 1).

General structure of an emergency message:

80h+ID 8 Error code L Error code H Error reg. Info 1 Info 2

CAN­ID DLC Byte 0 Byte 1 Byte 2 Byte 3 Byte 4

Table 6.6: Emergency Error Code List


Error Description
0000h No error
1000h Generic error
4200h Temperature out of tolerance
5000h Hardware failure
5010h Single turn failure
5020h Multi-turn failure
6000h Software failure
6010h Software reset
8110h CAN overrun
8120h CAN Error passive state
8130h Heartbeat error
8140h Bus Off recovery

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 24 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Error register:
Interpretation of object 1001h (bit interpretation, default = 00000000):
Bit: 7 6 5 4 3 2 1 0
Info: Generic error co co Temperature Communication co co Specific 2001h
Info: Specific->2001h co co Communication Temperature co co Generic error

Error register:
Interpretation of object 1001h (assignment bit -meaning, standard = 00000000):
Bit: 7 6 5 4 3 2 1 0
Info: co co co Communication Temperature co co EEPROM error

List info field:


The info field depends on the ErrorCodes:
ErrorCode Field activated Bit Hex-value Error description
4200h Info field 1 (Byte 3) 6 40h Temp. Read Error
5 20h low limit exceeded
4 10h high limit exceeded

Error Code Field activated bit Hex-value Error description


5000h Info field 2 (Byte 4) 0 01h EEProm error in init-phase
3 08h EEProm Write-Timeout

Error Code Field activated bit Hex-value Error description


8120h + 8100h Info field 1 (Byte 3) Low Nibble 0 1h Active, no error
1+2 6h Bus Warning
0+1+2 7h Bus-passive
8120h + 8100h Info field 1 (Byte 3) High Nibble 0 1h Bit
1 2h Stuffing error
0+1 3h Form
2 4h CRC
0+2 5h Ack

The low nibble describes the CAN state, the high nibble gives further informa­tion about the error.

The transmission of EMCY messages can be disabled by setting bit 31 (MSB) in object 1014h-00h.

By changing 1015h a minimum pause between two EMCYs can be defined (in 100ms steps).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 25 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.7 Error Objects

6.7.1 Manufacturer Status Register


Interpretation of object 1002h (assignment bit -meaning, standard = 00h):

Bit: 7 6 5 4 3 2 1 0
Info: co co co co co EEPROM* MT* ST*(1)

Bit: 15 14 13 12 11 10 9 8
Info: ST*(8) ST*(7) ST*(6) ST*(5) ST*(4) ST*(3) MT*(2) ST*(1)

Bit: 23 22 21 20 19 18 17 16
Info: ST*(15) ST*(14) ST*(13) ST*(12) ST*(11) ST*(10) ST*(9) ST*(8)

Bit: 31 30 29 28 27 26 25 24
Info: MT*(9) MT*(8) MT*(7) MT*(6) MT*(5) MT*(4) MT*(3) MT*(2)

*= Error type(number)

6.7.2 Alarms
Interpretation of object 6503h (assignment bit -meaning, standard = 0000000000000000):

Bit: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Info: co co co co co co co co co co co co co co co Position Error

6.7.3 Warnings
Interpretation of object 6505h (assignment bit -meaning, standard = 0000000000000000):

Bit: 15 14 13 12 11 10 9
Info: co temperature read failed Under temperature Over temperature co co co

Bit: 8 7 6 5 4 3 2 1 0
Info: co co co co co co co co Frequency limit

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 26 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.8 Electronic Cam Switch (CAM)


EPC absolute encoders with CANopen interface provide the ability to configure an electronic cam switch with 8 cams in one single channel. Every
cam is defined by its low and high limit, the hysteresis, and the polarity.

6.8.1 CAM-State-Register
The cam state register (object 6300h) represents the state of the 8 cam switches, one bit per cam.

For example the cam state register has the value of 89h:

Position n 7(MSB) 6 5 4 3 2 1 0(LSB)


Type CAM 8 CAM 7 CAM 6 CAM 5 CAM 4 CAM 3 CAM 2 CAM 1
Value 1 0 0 0 1 0 0 1
Logic High Low Low Low High Low Low High

This means that the cams 1, 4 and 8 are high and the rest are low. If, for example, the cam 4 toggles to low due to the change of the position
value, the cam state register would become 81h:

Position n 7(MSB) 6 5 4 3 2 1 0(LSB)


Type CAM 8 CAM 7 CAM 6 CAM 5 CAM 4 CAM 3 CAM 2 CAM 1
Value 1 0 0 0 0 0 0 1
Logic High Low Low Low Low Low Low High

The cams are independent to each other so the cam state register can take on 256 combinations to control a machine.

6.8.2 CAM-Enable-Register
Each cam can separately be enabled or disabled by the object 6301h sub-Index 01h. The cams are represented by the bits of the object, 1 = ON,
0 = OFF. E.g. CAM 2, CAM 4 and CAM 7 shall be enabled. This results in the following confi­guration:

Value 0 1 0 0 1 0 1 0
Type CAM 8 CAM 7 CAM 6 CAM 5 CAM 4 CAM 3 CAM 2 CAM 1
Position n 7(MSB) 6 5 4 3 2 1 0(LSB)

This means writing 4h to object 6301h sub-index 01h. The cams 2, 4 and 7 are now enabled and can switch depending on their configured limits
and the posi­tion value.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 27 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.8.3 CAM-Polarity-Register
The cam-polarity register object 6302h sub-index 01h alters the polarity of the corresponding cam states in cam state register. By default all cams
are high (=1b) when the position value is within the limits of the cam.

E.g. If the cam polarity register is set to 13h (=00010011b) the cams 1, 2 and 6 are inverted.

Position n 7(MSB) 6 5 4 3 2 1 0(LSB)


Type CAM 8 CAM 7 CAM 6 CAM 5 CAM 4 CAM 3 CAM 2 CAM 1
Value 0 0 0 1 0 0 1 1
Logic Default Default Default Inverted Default Default Inverted Inverted

6.8.4 CAM-Low-Limit
The object CAM-Low-Limit sets the lower switching position for a cam. Each cam has its own CAM-low-limit object. (see object
dictionary 6310h...6317h). Within the low-limit objects the subindex represents a cam channel. EPC absolute encoders with
CANopen interface provide one channel with 8 cams.

6.8.5 CAM-High-Limit
The CAM-High-Limit defines the upper switching position for a cam, similar to the cam-low-limit. Therefore each cam has its own high-limit-object
(see object dictionary 6320h .. 6327h).

The CAM-High-Limit must always be lower than the corresponding low-limit. Therefore the high-limit must be usually configured
before the corresponding low-limit.

6.8.6 CAM-Hysteresis
The CAM-Hysteresis defines the width of the cam hysteresis for each single cam (see object dictionary 6320h...6327h).

6.9 Device Profile


Object 1000h provides the number of the implemented device profile and the device type:

0001 0196h -Single turn encoder DS-406 device profile


0002 0196h -Multi-turn encoder DS-406 device profile

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 28 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.10 SYNC
1005h is the selected COB-ID on which the encoder awaits the SYNC mes­sage. BasicCAN frames and extendedCAN frames (Bit 29 = 1b) are
supported. The encoder is a SYNC consumer, not a producer!

6.11 Encoder Designation


Object 1008h returns the encoder designation.

MA SERIES-ST-CO = Singleturn CANopen


MA SERIES-MT-CO = Multiturn CANopen

6.12 Error Behavior


On a CAN communication error an OPERATIONAL encoder switches into PRE-OPERATIONAL status. By editing object 1029h sub-index 01h this
behavior can be changed:

Value Description
00h Default behavior, go PRE-OPERATIONAL
01h Do not change current NMT state
02h Go STOPPED

6.13 NMT Startup Behavior


Index 1F80h determines the encoders NMT-startup behavior: There are 3 options:

Value Description
00h Default behavior, go PRE-OPERATIONAL
02h Send NMT-command “Start All Nodes”
08h Go “OPERATIONAL” change

By sending a “start all nodes” the encoder take the role of a basic NMT-master. The configuration has to be saved into the EEPROM.

6.14 Bus-Off Auto-Reset


Index 2103h determines the encoder’s bus-off behavior. The value defines the time in seconds that elapses before the unit automatically switches
on CAN Bus-Off in CAN-Error-Active. The value 0 is the default setting and turns off this behavior.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 29 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

6.15 Customer Data


The object 2120h provides the possibility to store up to 8 data objects (4 bytes per object) to the internal EEPROM. Each data object is accessed
by a sub-index (1...8). The data is stored autonomously; a “save” command is not necessary.

6.16 Temperature
The 2500h provides the current internal temperature of the encoder, as well as the possibility to set temperature limits for the device. Sub-indices
0 to 5 are supported. The temperature value is updated every minute. The unit is °C. Crossing the temperature limits will set the error register
(object 1001h-00h) to 1000b (=08h) and trigger a non-recurring EMCY message. The warning object (6505h) will also be affected. By default the
limits are set on the maximum va­lues allowed, but can be tightened.

6.17 Verify Configuration


You can write the time of the last valid configuration into object 1020h. This object is also readable. Any change in the configuration will
automatically reset this object to zero. Then the new time of configuration can be set.

All change in parameters, unless otherwise specified, have to be saved into the EEPROM by using the “Store All Parameters”
command (see 7.11 “Saving settings in the EEPROM”). Otherwise after a reset the encoder will return to the last configuration
saved.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 30 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 7 – Connection
7.1 Mechanical and Electrical Connection

Please refer to the included mounting instructions and information for proper mechanical and electrical connections.


Shaft encoders:

• Always use a suitable coupling to connect the en­coder shaft with the application shaft. The cou­pling
compensates the radial and axial tolerances of both shafts. Both shafts must not touch each other. Please
observe the maximum permitted shaft load. Suitable accessories can be found on www.encoder.com.

• Use the threaded bores to screw the encoder flange onto a suitable mounting.

• Another possibility for mounting is the use of servo clamps.

Hollow bore (blind) encoders:

• Mount the encoder completely onto the application shaft. Use the set screw to tighten the encoder shaft to the
application shaft.

• The flexible mount absorbs vibrations and tolerances of the application shaft to reduce stress on the encoder
bearings and must be affixed to the application frame.

Table 7.1 Pin and Cable Assignment (according to CiA 303):

Wire color (Encoder Pin (Encoder with


Definition:
with cable) connec­tor)
+VDC (10-30V) brown 2
Ground (GND) white 3
CANHigh green 4
CANLow yellow 5
CANGND grey 1

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 31 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.2 Configuration via LSS

7.2.1 General Settings


The Layer Setting Services Protocol is specified in the Draft Standard Proposal 305. The LSS allows to configure the encoder even when the node
ID is not assigned correctly (i.g. the default node ID doesn’t match the application before configuration). EPC absolute encoders with CANopen
interface provide the following LSS services:

Switch state global


Switch state selective
Configure baudrate service
Configure node-ID service
Store configuration service
Identification and inquire services (Node-ID, Vendor-ID, ProductCode, RevisionNumber, SerialNumber)

To use LSS the encoder has to be STOPPED or PRE-OPERATIONAL. Then the encoder can be set into LSS mode by two ways:

Switch Mode Global


Switch Mode Selective

An LSS message has the following form:

CAN-ID DLC Command Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6

For the CAN-ID applies:

LSS-Master ⇒ LSS-Slave: 2021(7E5h)


LSS-Slave ⇒ LSS-Master: 2020(7E4h)

The command byte determines the interpretation of the following bytes 0 - 6.

Connection of the encoder and start LSS configuration by “Switch Mode Selective’”:

Connect the encoder to the LSS master. If possible, start encoder before the master. The baudrate used by the master will be
detected by the encoder. Use the NMT command to switch the encoder into “STOP­PED” mode. With the switch mode selective
a certain device can be selected by sending four identification messages:

Table 7.2.1 LSS-Selective-Identification-Commands


LSS-Command Information Description
40h Vendor-ID 0100 021Fh
41h ProductCode 5743 4741h
42h RevisionNumber Revision of the encoders
43h SerialNumber Serial number of the encoder

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 32 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Detailed information about revision number and serial number can be found in Section 1.1.

After the last of the four identification messages was sent, the appendant encoder will respond with:

LSS-Command Information Description

Mode = 1⇒Config mode; Mode =


44h Mode
0⇒Operations mode

The encoder is now in configuration mode. Now you can set the encoder’s baudrate and node ID using LSS (see Section 7.2).

Connection of the encoder and start LSS configuration by “Switch Mode Global”:

Connect the LSS master with the encoder. If possible start encoder before the master. The baudrate used by the master will be
detected by the encoder. Use the NMT command to switch the encoder into “STOP­PED” mode. Send the message:

7E5h 04h 01h 00h 00h 00h 00h 00h 00h

Now the encoder is in configuration mode and you can set the encoder’s baudrate and node ID using LSS (see Section 7.2).

As soon as the encoder has entered the LSS config mode (selective or global) baudrate and node ID can be changed by LSS.
After changing, the settings have to be stored and the config mode has to be deactivated. (See below, “End LSS configuration
mode”).

End LSS configuration mode:


When the configuration is completed the changed parameters must be stored and the encoder switched into PRE-
OPERATIONAL state. To do so, use the following message sequence and a final reset
(e.g., a power reset):

Step 1 – store parameters:

7E5h 17h 00h 00h 00h 00h 00h 00h 00h

Step 2 – Leave config mode:

7E5h 04h 00h 00h 00h 00h 00h 00h 00h

Step 3 – Reset

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 33 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.2.2 Baudrate Setting


To set the baudrate send the following command:

7E5h 13h 00h Baudrate 00h 00h 00h 00h 00h

Sub- Byte Byte Byte Byte Byte


CAN-ID Command Baudrate
Index 2 3 4 5 6

The following baudrates can be selected:


Table 7.2.2 Baudrate-Coding
Value Baudrate
0 1 MBit/s
1 800 kBit/s
2 500 kBit/s
3 250 kBit/s
4 125 kBit/s
5 100 kBit/s
6 50 kBit/s
7 20 kBit/s
8 10 kBit/s
9 Baudrate-Auto-Detection

Check the LSS slaves answer to the command above:


7E4h 13h 00h 00h 00h 00h 00h 00h 00h
CAN-ID Command Error Specific Byte Byte Byte Byte Byte
code Error 2 3 4 5 6

with Error code:


00h = OK
01h = Baudrate not supported

Und Specific Error:


00h = OK
FFh = Application specific error

It is possible that after the configuration the communication with the encoder fails because the configuration tool and the encoder might operate on
different baudrates, so you have to change the baudrate configuration of your tool.

Before changing the baudrate you have to check the baudrate of the application. Make certain your configuration tool
supports that bau­drate. Make a note of the selected baudrate (e.g., in this manual or on the encoder label).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 34 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.2.3 Node ID Setting


Use the following command to change the encoders node ID:

7E5h 11h New Node-ID 00h 00h 00h 00h 00h 00h

CAN-ID Command Node-ID Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6

Valid Node IDs are 01h to 7Fh.

7.3 Configuration via SDO

7.3.1 Reading and Writing on Objects


You can use SDO communication to read or write on objects. Read access on an object:

Master Encoder
calls to desired object

sends value of required objects

The structure of an SDO message is:

Client (master) to server (encoder) :


600h+ID 8 40h 04h 60h 00h 00h 00h 00h 00h
Object Object Sub- Byte Byte Byte Byte
CAN-ID DLC Command
L H Index 0 1 2 3

The payload of the SDO is 4 bytes of data (d1d2d3d4):


580h+ID 8 43h 04h 60h 00h d4 d3 d2 d1
Object Object Sub- Byte Byte Byte Byte
CAN-ID DLC Command
L H Index 0 1 2 3

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 35 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Table 7.3.1 Command Definitions:


Command Type Description
22h Write command Parameter to encoder
23h Write command 4 Byte Parameter to encoder
27h Write command 3 Byte Parameter to encoder
2Bh Write command 2 Byte Parameter to encoder
2Fh Write command 1 Byte Parameter to encoder
60h Acknowledge Parameter received
40h read command Parameter from Encoder
42h response Parameter to SDO master
43h response 4 Byte Parameter to SDO master
47h response 3 Byte Parameter to SDO master
4Bh response 2 Byte Parameter to SDO master
4Fh response 1 Byte Parameter to SDO master
80h abort code Failure / Failure code
41h response SDO segmented transfer started (see CiA 301)

Writing on an object:

Master Encoder
writes value in object

confirmed

The following example shows the structure of a SDO telegram.

Master sends 1 byte of data (d1) to the Encoder:


600h+ID 8 2Fh 00h 21h 00h d1 00h 00h 00h
Object Object Sub- Byte Byte Byte Byte
CAN-ID DLC Command
L H Index 0 1 2 3

The encoder acknowledges without data bytes:


580h+ID 8 2Fh 00h 21h 00h 00h 00h 00h 00h
Object Object Sub- Byte Byte Byte Byte
CAN-ID DLC Command
L H Index 0 1 2 3

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 36 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.3.2 Baudrate Selection


EPC's absolute encoders with CANopen interface provide an automatic bau­drate detection. It is also possible to use a fixed baudrate which can
be set by either LSS (as described above) or SDO.

The configuration of the encoder is only possible in PRE-OPERATIONAL state. To alter the baudrate, change the object 2100h in Sub-Index 00h.
This can be achived with a simple SDO write command with the target baudrate as data.

600h+ID 8 2Fh 00h 21h 00h Baudrate 00h 00h 00h


Object Object Sub- Byte Byte Byte
CAN-ID DLC Command Byte 0
L H Index 1 2 3

The following values represent the valid baudrates:


Table 7.3.2 Baudrate Codes
Value Baudrate
0 1 MBit/s
1 800 kBit/s
2 500 kBit/s
3 250 kBit/s
4 125 kBit/s
5 100 kBit/s
6 50 kBit/s
7 20 kBit/s
8 10 kBit/s
9 Baudrate-Auto-Detection

The new baudrate will become effective after a reset of the encoder (hard reset or NMT reset). Writing on object 2100h is not
protected and the change will be immediately stored in the internal EEPROM. It is not nec­cessary to perform a “save
parameters”.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 37 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.3.3 Node-ID Election


It is possible to change the node ID of the encoder by SDO. To set the node ID the object 2101h, sub-Index 00h, has to be changed (only possible
in PRE­OPERATIONAL state!) with a simple SDO write command:

600h+ID 8 2Fh 01h 21h 00h Node 00h 00h 00h


Object Object Sub- Byte Byte Byte
CAN-ID DLC Command Byte 0
L H Index 1 2 3

Valid node IDs can be:


Encoder number (d) Node-ID (h)
1 01h
2 02h
... ...
127 7Fh

The new node ID will become effective after an enco­der reset (hard reset or NMT reset). Writing on object 2101h is not protected
and the change will be immediately stored in the internal EEPROM. It is not necessary to perform a “save parameters”.

7.3.4 Basic NMT Commands


To set the encoder into OPERATIONAL state, the “Start remote node” com­mand is used:

0 02h 01h 0 to 127


CAN-ID DLC Command Byte Node-ID

To change the encoder into STOPPED state, the “Stop remote node” com­mand is used:

0 02h 02h 0 to 127


CAN-ID DLC Command Byte Node-ID

To switch the encoder into PRE-OPERATIONAL state, the “Enter Pre-Operational State” command is used:

0 02h 80h 0 to 127


CAN-ID DLC Command Byte Node-ID

A Reset of communication with a change into PRE-OPERATIONAL after re­-initialization will be achieved

0 02h 82h 0 to 127


CAN-ID DLC Command Byte Node-ID

To perform a soft reset of the encoder, the “Reset Remote Node” is used. After the reset the encoder will send this boot-up message and enter
PRE­OPERATIONAL by default:

0 02h 81h 0 to 127


CAN-ID DLC Command Byte Node-ID

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 38 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.4 Heartbeat Settings


To configure and start the producer heartbeat (e.g. heartbeat every 5000 milli­seconds; 5000d=1388h) use SDO on object 1017h:

600h+ID 8 2Fh 17h 10h 00h 88h 13h 00h 00h


CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

This is the structure of a heartbeat message:

701h 1 d NMT-state
CAN-ID DLC Data/Remote Byte 0

Table 7.4 Heartbeat NMT-State-Coding


NMT-state Code
Boot-up 00h
Stopped 04h
Pre-Operational 7Fh
Operational 05h

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 39 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.5 PDO Configuration


7.5.1 PDO Parameters
Up to 4 PDOs can be configured. The configuration of the PDO payload is called “PDO mapping”. The defaults values are shown below:
Table 7.5.1A Default PDO Configuration
Object PDO configuration (Scheduling) “mapped” Process data
1800h PDO1 asynchronous / on change of position value Position value
1801h PDO2 synchronous / on every SYNC Position value
1802h PDO3 synchronous / on every SYNC High precision value
1803h PDO4 disabled

There are five different types of transmission for every PDO:


Table 7.5.1B Possible PDO Transmission Types
Sub-Index 2 Sub-Index 5 Description
01h-F0h n.N. PDO synchronous / on a SYNC
FFh 0000h PDO disabled
FEh 0001h-FFFFh PDO asynchronous / triggered by event timer AND change in position value
FEh 0000h PDO asynchronous / triggered by change of position value
FFh 0001h-FFFFh PDO asynchronous / triggered by event timer

Parameters can be changed in PRE-OPERATIONAL only and have to be saved into EEPROM!

To completely disable a PDO, you have to change the MSB of the PDO-COB-ID object:
Table 7.5.1C PDO Deactivation
PDO Object COB-ID object PDO enabled COB-ID object PDO disabled
1 1800h 40000181h C0000181h
2 1801h 40000281h C0000281h
3 1802h 40000381h C0000381h
4 1803h 40000481h C0000481h

For example PDO1 shall be disabled by this SDO write command:


600h+ID 8 23h 00h 18h 01h 81h 01h 00h C0h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

Advanced parameterization of the PDO COB-ID (ob­jects 1800h-01h, objects 1801h-01h, objects 1802h­01h, objects 1803h-
01h) is possible. As long as no “save communication objects” or “save all parameters has been perfomed, a change of the
node ID will automatically effect the COB IDs. After a save command, the PDO COB-IDs have to be changed manually or
perform a “restore all parameters”.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 40 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.5.2 Synchronous PDO


A PDO can be configured for synchronous transmission, i.e. to respond on a SYNC message. The sub-index 2 of the transmission type parameter
deter­mines after which number of SYNCs received the PDO will be transmitted. For example PDO1 is configured 01h in 800h-02h:
600h+ID 8 2Fh 00h 18h 02h 01h 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

Transmission type for PDO1 is now synchronous. In OPERATIONAL state, PDO1 will be sent on every SYNC message.

7.5.3 Asynchronous PDO


Cyclic (triggered by internal event timer):

PDOs can be configured for asynchronous cyclic transmission. Therefore the transmission type in Object 1800h-02h (1801h-02h, 1802h-02h,
1803h-02h) has to be set to FFh. Sub-index 5 of the same object is the cycle time in milliseconds.

I.G. PDO1 transmitting asynchronously cyclic:

600h+ID 8 2Fh 00h 18h 02h FFh 00h 00h 00h


CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

PDO1 with a cycle time of 30 milliseconds (1Eh):

600h+ID 8 2Bh 00h 18h 05h 1Eh 00h 00h 00h


CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

PDO1 is now in asynchronous mode and will be sent every 30 milliseconds in OPERATIONAL state.

Triggered by change of position value:

To use this transmission type, sub-index 2 has to be FEh and the event timer in sub-index 5 has to be disabled (00h), e.g.:
600h+ID 8 2Fh 00h 18h 02h FEh 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

7.5.4 Variable PDO-Mapping


Variable PDO-mapping means that the PDO payload can be configured by the user. This mapping must match between encoder and receiver.
The maximum payload for a PDO is 8 bytes. The mapping is also limited by the size of the objects to be mapped. E.g. you can map the “position
value” (4 bytes), the “speed value” (2 bytes) and the “acceleration” value (2 bytes) into the same object. Due to the fixed size of a CAN frame this
produces less bus load than transmitting the three objects by 3 individual PDOs. This table shows the PDO mapping:

Data Object # Sub-Index Value Size Description


1 6004h 00h Unsigned32 4 Byte Position value
2 6030h 01h Integer16 2 Byte Speed value
3 6040h 01h Integer16 2 Byte Acceleration value

The data 1, 2, and 3 (See mapping table) are spread over the PDOs 8 payload bytes. The actual payload is 4byte + 2 byte + 2byte = 8 byte. This
leads to 100.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 41 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

The resulting PDO has this structure:

PDO1:
180h+ID 8 1d 1c 1b 1a 2b 2a 3b 3a
CAN-ID DLC Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7

1a, 1b, 1c, 1d = 4 bytes of information 1; 2a, 2b = 2 bytes of information 2; 3a, 3b = 2 bytes of information 3.

To use the PDO mapping, the mapping parame­ters for the transmit PDO must be configured (see Method, Table 6.1 The
Object Dictionary).

• Delete current mapping


• Remapping the PDO
• Activating the new mapping

For example, to change the PDO1 mapping you have to access the PDO1 map­ping parameter object 1A00h.

Delete current mapping

First the sub-index 0 of the Mapping parameter object has to be set to zero:
600h+ID 8 2Fh 00h 1Ah 00h 00h 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

Now the encoder is ready for remapping.

Remapping the PDO

Mapping of the position value: (No.:1 (Size 32 bit = 20h) into object 1A00h sub-index 1 for PDO1):
600h+ID 8 23h 00h 1Ah 01h 20h 00h 04h 60h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

The SDO command contains the object to be mapped and its size: (Object 6004h, sub-index 0, Size 20h = 4 Byte).

Mapping of speed value (No.:2 (Size 16 bit = 10h) into object 1A00h sub-index 2 for PDO1):
600h+ID 8 23h 00h 1Ah 02h 10h 01h 30h 60h
CAN-ID DLC Command Object L Object H Sub-index Byte 0 Byte 1 Byte 2 Byte 3

The SDO command contains the object to be mapped and its size: (Object 6030h, sub-index 1, Size 10h = 2 Byte).

Mapping of Acceleration value (No.:3 (Size 16 bit = 10h) into object 1A00h sub-index 3 for PDO1):
600h+ID 8 23h 00h 1Ah 03h 10h 01h 40h 60h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

The SDO command contains the object to be mapped and its size: (Object 6040h, sub-index 1, Size 10h = 2 Byte).

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 42 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Activating the new mapping

To activate the new mapping, the new number of mapped objects must be writ­ten into sub-index 0 of the mapping parameter object. In our
example three objects are mapped, therefore sub-index 0 has to be set to 03h.:
600h+ID 5 2Fh 00h 1Ah 00h 03h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0

The remapping of PDO1 is now completed and valid, but it should be saved into the EEPROM (see 7.11).

7.6 Changing Resolution and Direction


To change resolution and direction of the encoder the scaling option has to be activated.

When activating the scaling, you can also change the counting direction – clockwise (CW) or counter-clockwise (CCW) –
when looking onto the flange side of the enco­der in one step (default setting is CW).

The object for this configuration is 6000h sub-index 00h. Here is the list of possible settings:

Table 7.6 Counting Direction and Scaling Parameters


Code Byte0 Scaling Direction
00h OFF Clockwise (CW)
01h OFF Counter-clockwise (CCW)
04h ON Clockwise (CW)
05h ON Counter-clockwise (CCW)

This is an example how to set the “operating parameters” object 6000h to “scaling ON” and “CCW”:
600h+ID 8 23h 00h 60h 00h 05h 00h 00h 00h
CAN-ID DLC Command Object Object Sub- Byte Byte Byte Byte
L H Index 0 1 2 3

The encoder responds with a standard SDO acknowledge.

Changing the measuring range per revolution and the total measuring range.

• The measuring range per revolution or singleturn resolution is the number of units (bit) per revolution.
• The total measuring range is the singleturn resolution multiplied with the number of countable revolutions (multiturn resolution).

Example:
Singleturn resolution: 4096 bit per revolution = 12 bit = 10 00h
Total measuring range: 536 870 912 units (bit) = 29 bit = 20 00 00 00h
⇒Max. Multiturn resolution: 29 Bit -12 Bit = 17 Bit = 131072 revolutions (02 00 00h)

The singleturn resolution editable in object 6001h:


600h+ID 8 23h 01h 60h 00h 00h 10h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

00 00 10 00h represent the designated single turn resolution. The encoder re­sponds with an SDO acknowledge.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 43 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

The total measuring range can be changed by object 6002h. In the example a 29 bit total measuring range is selected. With a 12 bit singleturn
resolution 17 bit rotations are counted before returning to zero:
600h+ID 8 2Bh 02h 60h 00h 00h 00h 00h 20h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

20 00 00 00h is the designated total measuring range.

Singleturn resolution and total measuring range do not have to match the bit grid. Every value between 1 and the maximum is valid. The total
measuring range can not be less than the singleturn resolution. The result of an invalid setting will be an abort code.

7.7 Position Preset


With object 6003h the encoder position can be shifted to a preset value. E.g. you can set the zero position of your application without time-
consuming me­chanical alignment. Just mount the encoder and set the preset object 6003h to the designated position value (p1-p4):
600h+ID 8 23h 03h 60h 00h p1 p2 p3 p4
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

To set the zero position: p1, p2, p3, p4 = 00h, 00h, 00h, 00h

You don’t have to use PDOs to check the current position value. You can also perform a SDO read access on the position value object 6004h:
600h+ID 8 40h 04h 60h 00h 00h 00h 00h 00h
CAN-ID DLC Command Object Object Sub- Byte Byte Byte Byte
L H Index 0 1 2 3

The encoder will respond with the current position value.

The encoder provides internal filtering for the position value. Sub-index 1 of object 2105h is the filter parameter for the internal “ IIF”-filter (infinite
impulse response filter). 01h for the filter parameter deactivates the filter. The maxi­mum value is 04h. A filtered position value is more stable at the
cost of less dynamic.

7.8 Change Speed-Integration and Speed Scaling


The integration time the encoder uses to calculate the speed value can be adjusted by object 2105h, sub-Index 2. The unit for this time is
milliseconds. The default value of 1000 ms is suitable for most applications.

The change of the integration time will result in a more or less dynamic behavior of the speed value, similar (but independent) to the filtering of the
position value.

The speed scaling can be edited by object 2106h . The Sub-Indices 1 (= numerator) and 2 (= denominator ) form a scaling factor (here: “z”) for
the speed scaling. Default value is “1”. The speed value is always given in Increments/sec.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 44 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Object 2106h is a signed16 value with the limits of ±32767 representing ±120 rotations per second. For example the speed shall be scaled to a
maximum of ±2500 rpm :
z = Scaling factor ⇒ z = k n
n = Max rotation per sec ⇒ z = 120 2500
k = Calculation factor = 120 ⇒ z = 6 125

So object 2106h-01h must be set to 6d = 06h and 2106h-01h set to 125d=7Dh, so the limits of ±32767 are scaled to ±2500 U/min

Applying this scaling, the limits ±32767 corresponds with ±2500 rpm.

7.9 Frequency Limit


If the speed value exceeds the frequency limit 2107h a warning flag is set (no EMCY). The valid area is 1 to 65535 representing the maximum
allowed rotation speed (i.g. 2520 rpm = 42 rotations per second = 002Ah as frequency limit).

7.10 CAM-Configuration
This section gives an example how to configure the cam-channel:

CAM 1 0° =>180°
CAM3 0°=>60°
CAM2 180°=>360°

For the individual cams, this means:

CAM Anglular area lower CAM-limit upper CAM-limit Hysteresis


1 0°..180° 0d 2048d 0d
2 180°..360° 2049d 4095d 0d
3 0°.. 60° 0d 682d 0d

The configuration must be done in PRE­OPERATIONAL state.

To enable the individual cams the CAM-enable-register (object 6301h-01h) is used. The setting 00000111b = 07h enables the first three cams.

600h+ID 5 2Fh 01h 63h 01h 07h 00h 00h 00h


CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 45 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Now the cam-high-limits 1, 2, and 3 can be set as in the table above:

CAM 1 = 2048 = 0800h


600h+ID 8 23h 20h 63h 01h 80h 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

CAM 2 = 4095 = 0FFFh


600h+ID 8 23h 21h 63h 01h FFh 0Fh 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

CAM 3 = 682 =02AAh


600h+ID 8 23h 22h 63h 01h AAh 02h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

The setting of the CAM-Low-Limits 1, 2 und 3 is similar:

CAM 1 = 0 = 00h
600h+ID 8 23h 10h 63h 01h 00h 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

CAM 2 = 2049 = 0801h


600h+ID 8 23h 11h 63h 01h 01h 08h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

CAM 3 = 0 = 00h
600h+ID 8 23h 12h 63h 01h 00h 00h 00h 00h
CAN-ID DLC Command Object L Object H Sub-Index Byte 0 Byte 1 Byte 2 Byte 3

In our example the CAM-Hysteresis shall be 0, so there is no change necessary.

With the CAM-Polarity-register the polarity of the cams can be inverted.

After configuration, the state of the cams can be read from the CAM-state­register 6300h-01. This object is also PDO mappable. For more details
see Section 6.8.

Be sure to save the configuration into the EEPROM. See Section 7.11.

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 46 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

7.11 Saving Into EEPROM


Non-volatile storing of parameters using object 1010h.

Sub-Index Access mode Description


0 co Number of objects
1 wo Save all parameters
2 wo Save communication Objects
3 wo Save application Objects
4 wo Save manufacturer Objects

To start the storing operation the “ASCII” value for “save” (in hex: 73h 61h 76h 65h) has to be written into the dedicated sub-index.

“Save all Parameters”:


600h+ID 8 23h 10h 10h 01h 73h 61h 76h 65h
CAN-ID DLC Command Object L Object H Sub-Index Byte E Byte V Byte A Byte S

Restoring default settings

To restore the default settings the “ASCII” value “load” (in hex: 6Ch 6Fh 61h 64h) is written on the dedicated sub-index of the object 1011h.

Sub-Index Access description


0 co Number of objects
1 wo Restore all parameters
2 wo Restore communication Objects
3 wo Restore application Objects
4 wo Restore manufacturer Objects

Attention: The baudrate and node-ID settings, as well as the customer data object will not be restored!

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 47 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19
CANopen Interface Technical Reference Manual

Section 8 – Troubleshooting
Error description Check
Encoder doesn’t work, the LED stays dark. Check connections, power supply, and pin assignment.
Encoder does not work but is properly con- Connect a CAN Monitoring-tool, determine if the host sends a
nected boot-up message when starting.
Unable to connect to host Check the encoder for correct node ID and baudrate.
The bus load exceeds 85. After connection
the en­coder goes bus-passive or bus-off Check baudrate and node IDs of all nodes connected.
immediately.
There are irregular failures during transmis- Check the correct termination (2 Ter­minations, 120 Ohms
sion. each, one at each end).

Questions?
If you have further questions about your EPC Absolute Encoder, please contact us. You'll talk to real engineers and encoder
experts who can answer your questions and help you get your encoder working in your application.

Call: 1-800-366-5412
Email: [email protected]
Contact: encoder.com/contact

EPC Technical Reference Manual


1-800-366-5412 • www.encoder.com • [email protected] Page 48 of 48 EPC Absolute Encoders with CANopen Interface
Rev. 03/19

You might also like