Applied Motion Products CANopen Manual

Applied Motion Products CANopen Manual

Applied Motion Products

CANopen Manual

920-0025 Rev J

3/4/2015

APPLIED MOTION PRODUCTS, INC.

CANopen User Manual

Introduction

This manual describes Applied Motion Products CANopen implementation of CiA 301 and

CiA 402 specifications. It is expected that the user fully understands both CiA standards. That understanding, along with this specification, will enable the user to develop a distributed motion control system.

The intent of this manual is to highlight manufacturer specific requirements as they pertain to Applied Motion Products drives.

Information and standards may be obtained from the CiA website at http://www.can-cia.

com/. Information and software relating directly to the Applied Motion Products CANopen drives, including an open-source example program, may be obtained from our website at http:// www.applied-motion.com/.

920-0025 Rev J

3/4/2015

2

CANopen User Manual

Contents

Introduction ..................................................................................................................................2

Reference Documents ...........................................................................................................8

Commonly Used Acronyms ....................................................................................................8

CANopen Network Topology Overview .................................................................................9

Drive Setup ..................................................................................................................................9

Wiring the Power and Motor...................................................................................................9

Wiring the CANopen Connector for CANopen Drives ..........................................................10

CANopen BitRate & NodeID ................................................................................................10

Drive Configuration ..............................................................................................................11

Supported CiA 402 Modes of Operation ....................................................................................12

Object Dictionary .......................................................................................................................13

Electronic Data Sheet ..........................................................................................................14

Global Control Word and Status Word .................................................................................18

General Purpose Registers .......................................................................................................19

Appendix A - The Object Dictionary ...........................................................................................20

Communication Profile .........................................................................................................21

Manufacturer Specific Objects .............................................................................................38

Device Profile .......................................................................................................................45

Appendix B - Parameter Unit Scaling ........................................................................................59

Appendix C - Response Codes .................................................................................................60

Appendix D - Profile Position Mode ...........................................................................................61

General Mode Description ...................................................................................................61

Enable Profile Position Mode ...............................................................................................61

Set Running Parameters ......................................................................................................61

Starting/Stopping Motion ......................................................................................................61

Appendix E - Profile Velocity Mode ...........................................................................................66

General Mode Description ...................................................................................................66

Enable Profile Velocity Mode ...............................................................................................66

Set Running Parameters ......................................................................................................66

Enable Drive Operation ........................................................................................................66

Starting/Stopping Motion ......................................................................................................66

Appendix F - Homing Methods ..................................................................................................68

Set Running Parameters ......................................................................................................68

Enable Homing Mode...........................................................................................................68

Starting the Homing Procedure ............................................................................................68

Homing Method Diagrams ...................................................................................................68

Homing Method 1

.......................................................................................................................................68

Homing Method 2 .................................................................................................................69

Homing Method 3 .................................................................................................................69

3

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 4 .................................................................................................................70

Homing Method 5 .................................................................................................................70

Homing Method 6 .................................................................................................................71

Homing Method 7 .................................................................................................................71

Homing Method 8 .................................................................................................................72

Homing Method 9 .................................................................................................................72

Homing Method 10 ...............................................................................................................73

Homing Method 11 ...............................................................................................................73

Homing Method 12 ...............................................................................................................74

Homing Method 13 ...............................................................................................................74

Homing Method 14 ...............................................................................................................75

Homing Methods 15 and 16 .................................................................................................75

Homing Method 17 ...............................................................................................................76

Homing Method 18 ...............................................................................................................76

Homing Methods 19 and 20 .................................................................................................77

Homing Methods 21 and 22 .................................................................................................78

Homing Methods 23 and 24 .................................................................................................79

Homing Methods 25 and 26 .................................................................................................80

Homing Methods 27 and 28 .................................................................................................81

Homing Methods 29 and 30 .................................................................................................82

Homing Methods 31 and 32 .................................................................................................83

Homing Method 33 ...............................................................................................................83

Homing Method 34 ...............................................................................................................84

Homing Method 35 ...............................................................................................................84

Appendix G - Profile Torque Mode (Servo Only) .......................................................................85

General Mode Description ...................................................................................................85

Enable Profile Torque Mode .................................................................................................85

Set Running Parameters ......................................................................................................85

Enable Drive Operation ........................................................................................................85

Starting/Stopping Torque ......................................................................................................86

Parameter Calculations - Example.......................................................................................86

Current Verification - Example .............................................................................................86

Appendix H - Q Program Mode .................................................................................................88

General Mode Description ...................................................................................................88

Loading a Q Program ...........................................................................................................88

Normal Q Program Execution ..............................................................................................88

Synchronous Q Program Execution .....................................................................................89

More Information ..................................................................................................................89

Appendix I - Understanding NMT States ...................................................................................90

Building a CANopen NMT Data Frame - Example ...............................................................90

920-0025 Rev J

3/4/2015

4

CANopen User Manual

Appendix J - SDO and PDO Access..........................................................................................91

Enable SDO Use ..................................................................................................................91

Building an SDO Read Data Frame - Example ....................................................................91

PDO Access ..............................................................................................................................91

Enable PDO Use ..................................................................................................................91

TPDO Transmission Types ..................................................................................................92

PDO Mapping.......................................................................................................................92

PDO Mapping Procedure ....................................................................................................93

Default Mapping Example - Consumer PDO 2 ....................................................................93

Default PDO Mapping - Stepper ..........................................................................................94

Default PDO Mapping - Servo..............................................................................................94

PDO COB-ID ........................................................................................................................95

Building an RPDO Data Frame - Example ...........................................................................95

Appendix K - Operation Mode Specific Control and Status Word .............................................96

Control Word of Profile Position Mode .................................................................................96

Status Word of Profile Position Mode ..................................................................................96

Control Word of Profile Velocity Mode .................................................................................97

Status Word of Profile Velocity Mode ...................................................................................97

Control Word of Homing Mode .............................................................................................97

Status Word of Homing Mode ..............................................................................................97

Control Word of Q Mode ......................................................................................................98

Status Word of Q Mode ........................................................................................................98

Appendix L – Example Programs ..............................................................................................99

Profile Position Mode ...........................................................................................................99

Profile Velocity Mode..........................................................................................................100

Homing Mode .....................................................................................................................100

Normal Q Mode ..................................................................................................................101

Sync Q Mode .....................................................................................................................101

PDO Mapping.....................................................................................................................101

5

920-0025 Rev J

3/4/2015

CANopen User Manual

List of Tables

Table 1: Bit Rate Switch Settings .................................................................................. 12

Table 2: Modes of Operation ......................................................................................... 13

Table 3: CiA 301 Object Descriptions ............................................................................ 16

Table 4: Tuning Parameter setting ................................................................................. 16

Table 5: CiA 402 Objects ............................................................................................... 17

Table 6: Applied Motion Products Manufacture Specific Objects .................................. 18

Table 7: User Defined Registers in CANopen and Q Programmer ............................... 20

Table 8: Object Dictionary Structure .............................................................................. 21

Table 9: Description of SYNC COB-ID entry ................................................................. 24

Table 10: Description of PDO COB-ID entry ................................................................. 31

Table 11: Description of transmission type .................................................................... 32

Table 12: Controlword Data Description ........................................................................ 46

Table 13: Device Control Command Bit Patterns (Bits 0-3 and 7) ................................ 46

Table 14: Bits in the statusword ..................................................................................... 47

Table 15: Device State Bits ........................................................................................... 48

Table 16: Parameter Scaling Chart ............................................................................... 60

Table 17: Object 603F

Table 18: Object 700B h h

CiA 402 Error Codes ................................................................ 61

DSP Status Codes ................................................................... 61

Table 19: Single Set-Point Profile Position Move .......................................................... 63

Table 20: Multiple Set-Point Profile Position Move with Stopping Between Moves ....... 64

Table 21: Multiple Set-Point Profile Position Move with Continuous Motion ................. 65

Table 22: Multi-Set-Point Profile Position Move with Immediate Change in Motion ...... 66

Table 23: Profile Velocity Mode Example ...................................................................... 68

Table 24: Profile Torque Mode Example ........................................................................ 88

Table 25: Understanding NMT States ........................................................................... 91

Table 26: Example - NMT Data Frame .......................................................................... 91

Table 27: Enable SDO Use ........................................................................................... 92

Table 28: TPDO Transmission Types ............................................................................ 93

Table 29: PDO Mapping ................................................................................................ 93

Table 30: PDO Mapping Example ................................................................................. 94

Table 31: PDO Mapping - Stepper ................................................................................ 95

Table 32: PDO Mapping - Servo .................................................................................... 95

Table 33: PDO COB-IDs ................................................................................................ 96

920-0025 Rev J

3/4/2015

6

CANopen User Manual

List of Figures

Figure 1: .................................................................................................................10

Figure 2: .................................................................................................................11

Figure 3: .................................................................................................................11

Figure 4: .................................................................................................................13

Figure 5: .................................................................................................................19

Figure 6: .................................................................................................................24

Figure 7: .................................................................................................................27

Figure 8: .................................................................................................................27

Figure 9: .................................................................................................................31

Figure 10: ...............................................................................................................34

Figure 11: ...............................................................................................................35

Figure 12: ...............................................................................................................63

Figure 13: ...............................................................................................................64

Figure 14: ...............................................................................................................65

Figure 15: ...............................................................................................................66

Figure 16: ...............................................................................................................68

Figure 17: ...............................................................................................................86

Figure 18: ...............................................................................................................88

Figure 19: ...............................................................................................................94

7

920-0025 Rev J

3/4/2015

CANopen User Manual

Reference Documents

Applied Motion Products CANopen Drive Hardware Manual

CiA 301

CiA 303

CiA 402

Bosch CAN Physical Layer Specifications 2.0B

Applied Motion Products Host Command Reference

Commonly Used Acronyms

CAN

CiA

COB-ID

EDS

NMT

OD

PDS

PDO

RPDO

SDO

TPDO

Controller Area Network

CAN in Automation Group (Standards Body)

Communication Object Identification

Electronic Data Sheet

Network Management

Object Dictionary

Power Drive System

Process Data Object

Receive (incoming) PDO

Service Data Object

Transmit (outgoing) PDO

920-0025 Rev J

3/4/2015

8

CANopen User Manual

CANopen Network Topology Overview

Applied Motion Products CANopen drives can be integrated into a CANopen system with other device types as shown below.

Figure 1: CANopen Network Topology Overview

Drive Setup

There are four phases to setting up a Applied Motion Products CANopen Drive:

l

Wiring the power and motor

l

Wiring the CANopen connector to the drive

l

l

Setting the Bit Rate and Node ID

Configuring the Drive

Wiring the Power and Motor

Please refer to the drive’s hardware manual for this step. The appropriate manual can be found on our website www.applied-motion.com.

9

920-0025 Rev J

3/4/2015

CANopen User Manual

Wiring the CANopen Connector for CANopen Drives

Please refer to Applied Motion Products CANopen Drive Hardware Manual for the Communication connection. As an example, we use the connections for the ST5-C drive.

Applied Motion Products ST5-C drive uses a four-pin spring connector, shown in Figure 2 below, and conforms to CiA303 specification. The connector should be wired in a daisy-chain configuration, as shown in Figure 3 below, with a 120 ohm resistor used to terminate each end.

Other wiring topologies, such as star networks, are not recommended due to wave reflection problems. Please reference specific hardware manuals for your drive’s wiring configuration.

GND

CAN_L

SHLD

CAN_H

Figure 2: The CANopen Connector

Figure 3 shows a CANopen network with two Applied Motion Products ST5-C drive connectors wired to a Kvaser Leaf USB to CANopen Adapter.

R termination*

120 ohm nominal

7

8

5

6

9

3

4

1

2

DSUB9 Female

CAN_L

CAN_GND

CAN_SHLD

CAN_H

CAN_BUS n*

R termination*

120 ohm nominal

CAN_L CAN_GND

.1” Spacing Spring Plug

R termination:

Network must be terminated at each end with a 120 ohm resistor.

.1” Spacing Spring Plug n:

Cable may be made with up to 127 drive connectors. Termination is only required at each end.

Figure 3: Wiring Schematic

CANopen BitRate & NodeID

Applied Motion Products CANopen drives have three settings, one for Bit Rate and two for

Node-ID.

The Bit Rate is configured using an 8-position switch. See Table 1 for the Bit Rate settings.

Please reference the drive’s hardware manual for the location of the Bit Rate switch.

920-0025 Rev J

3/4/2015

10

CANopen User Manual

The Node-ID is configured using a 16-position switch to set the lower 4 bits of the Node-ID and a 8 position switch to set the upper 3 bits of the Node-ID. In some cases, the upper 3 bits of the Node-ID are configured using ST Configurator™, Step-Servo Quick Tuner™ or our standard Quick Tuner™. Please reference the drive’s hardware manual for Node-ID switch configuration and setup. Valid ranges for the Node-ID are 01 h in accordance with the CiA 301 specification.

through 7F h

. Node-ID 00 h

is reserved

Note: The Node-ID and Bit Rate are captured only after a power cycle, or after a network reset command has been sent. Changing the switches while the drive is powered on will NOT change the Node-ID until one of those conditions has also been met.

Switch Setting

0

1

2

5

6

3

4

7

Resultant Bit Rate

1 Mbps

800 kbps

500 kbps

250 kbps

125 kbps

50 kbps

20 kbps

12.5 kbps

Table 1: Bit Rate Switch Settings

Drive Configuration

Once the CAN connector has been wired to the drive, and the Node-ID and Bit Rate have been set, the drive can be configured. Drive configuration for ST stepper drives and STM

Integrated Motors is accomplished using the ST Configurator™ software, which can be found on the Applied Motion Products website. Drive configuration and tuning for servo drives are performed using Quick Tuner™ or Step-Servo Quick Tuner™. In all cases the drive will need to be connected to a Windows PC using the included RS-232 serial cable. Please refer to the appropriate software manual or built-in help screens for details.

Note: When the CANopen drive is first powered on, the drive will automatically send a power-up packet over the RS-232 port. If an Applied Motion Products application is present, it will send a response back to the drive over RS-232 and the drive will hold the CAN node in the Initialization state until the application is closed. If no response is detected, the drive will continue the normal CANopen start up procedure: the drive will power up into the Initialization state, send out a boot-up packet, move into the Pre-Operational state, and start sending out heartbeats with the Pre-Operational state as a status code.

11

920-0025 Rev J

3/4/2015

CANopen User Manual

Supported CiA 402 Modes of Operation

Mode

Profile Velocity

Profile Position

Homing

Profile Torque

Interpolated Position

Q Program

ST

STM/SWM

• •

Table 2: Modes of Operation

STAC6

For detailed information on each mode see the corresponding appendix:

Profile Position Mode - Appendix D

Profile Velocity Mode - Appendix E

Homing Modes - Appendix F

Profile Torque Mode - Appendix G

Q Program Mode - Appendix H

SV

920-0025 Rev J

3/4/2015

Figure 4: CANopen Drive - Motion Control Modes

12

CANopen User Manual

Object Dictionary

The Object Dictionary (OD) is the core of any CANopen node. It provides links to all the communication and running parameters of a node. The Object Dictionary is defined in the

Electronic Data Sheet (EDS), which lists all supported objects, along with any sub-objects.

For more information: see Appendix A for a detail decription of Object Dictionary.

Any OD Entry may be accessed using the standard Service Data Object (SDO) protocol, while some may be accessed using the low-overhead Process Data Object (PDO) protocol.

For more information: see Appendix J for a description of SDO and PDO Access

13

920-0025 Rev J

3/4/2015

1200h

1400h

1401h

1402h

1403h

1600h

1601h

1602h

1603h

1800h

1801h

1802h

1803h

Index Sub

1000h

1001h

1002h

1005h

1006h

1007h

1008h

1009h

100Ah

1010h

0

0

0

0

0

0

0

0

0

1014h

1017h

1018h

0

0

0

1

0

0

0

0

0

0

1

2

3

4

0

0

0

0

0

0

0

0

CANopen User Manual

Electronic Data Sheet

The EDS, available on Applied Motion Products website, lists all the properties of every supported object in the OD, shown below, a list of Object Dictionary descriptions:

Comment Fields

Device Type

Error Register

Manufacturer status register

COB-ID Sync message

Communication cycle period

Synchronous window length

Manufacturer Device Name

Manufacturer hardware version

Manufacturer software version

Store parameters max sub-index save all parameters

Data Type

UNSIGNED32

UNSIGNED8

UNSIGNED32

UNSIGNED32

UNSIGNED32

Access

Type

RO

RO

RO

RW

RW

UNSIGNED32 RW

VISIBLE_STRING CONST

COB-ID EMCY

Producer Heart Beat

Identity Object max sub-index

Vendor-ID

Product code

Revision number

Serial number

Server SDO Parameter 0

Receive PDO Communications Parameter 0

Receive PDO Communications Parameter 1

Receive PDO Communications Parameter 2

Receive PDO Communications Parameter 3

RECORD

RECORD

RECORD

RECORD

RECORD

Receive PDO Mapping Parameter 0

Receive PDO Mapping Parameter 1

Receive PDO Mapping Parameter 2

RECORD

RECORD

RECORD

Receive PDO Mapping Parameter 3 RECORD

Transmit PDO Communications Parameter 0 RECORD

Transmit PDO Communications Parameter 1 RECORD

Transmit PDO Communications Parameter 2 RECORD

Transmit PDO Communications Parameter 3 RECORD

VISIBLE_STRING CONST

VISIBLE_STRING CONST

ARRAY

UNSIGNED8

UNSIGNED32

UNSIGNED32

UNSIGNED16

RECORD

RO

RW

RO

RW

UNSIGNED8

UNSIGNED32

UNSIGNED32

UNSIGNED32

UNSIGNED32

RO

RO

RO

RO

RO

PDO

Mapping

Yes

Yes

920-0025 Rev J

3/4/2015

14

CANopen User Manual

1A00h

1A01h

1A02h

1A03h

0

0

0

0

Transmit PDO Mapping Parameter 0

Transmit PDO Mapping Parameter 1

Transmit PDO Mapping Parameter 2

Transmit PDO Mapping Parameter 3

RECORD

RECORD

RECORD

RECORD

Table 3: CiA 301 Object Descriptions

For more information: see Appendix A for detail decription of OD.

Index Sub

5000h

5001h

5002h

5003h

5004h

5005h

5006h

5007h

-500Eh

500Fh

5010h

5011h

5012h

0

0

0

0

0

0

0

0

0

0

0

0

Comment Fields

PositionGain_Tuning

PositionDeriGain_Tuning

PositionDeriFilter_Tuning

VelocityGain_Tuning

VelocityIntegGain_Tuning

AccFeedForward_Tuning

PIDFilter_Tuning

NotchFilterX_Tuning

PositionError

Velocity_MAX

SmoothFilter

Driver_Temperature

Table 4: Tuning Parameter setting

For more information: see Appendix A for detail decription of OD.

Data Type

UNSIGNED16

UNSIGNED16

UNSIGNED16

UNSIGNED16

UNSIGNED16

UNSIGNED16

UNSIGNED16

INTEGER16

UNSIGNED16

UNSIGNED16

UNSIGNED16

INTEGER16

RW

RW

RW

RW

RO

Access

Type

RW

RW

RW

RW

RW

RW

RW

PDO

Mapping

15

920-0025 Rev J

3/4/2015

CANopen User Manual

Index Sub

6065h

606Ch

6071h

6073h

6074h

6078h

607Ah

607Ch

603Fh

6040h

6041h

605Ah

6060h

6061h

6064h

607Eh

607Fh

6081h

6083h

6084h

6085h

6087h

6098h

6099h

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

609Ah

60FEh

2

0

0

1

60FFh

6502h

0

1

0

0

Comment Fields

Error Code

Controlword

Statusword

Quick Stop option code

Modes of Operation

Modes of Operation Display

Position Target value calculated following_error_window

Velocity Target value calculated

Target Torque (servos only)

Max Running Current torque_demand_value current_actual_value

Target Position

Home Offset polarity max_profile_speed

Profile Velocity

Profile Acceleration

Profile Deceleration

Quick Stop Deceleration torque_slope

Homing Method

Homing Speeds

max sub-index speed_during_search_for_switch speed_during_search_for_zero

Homing Acceleration

Drive Outputs max sub-index physical_outputs

Target Velocity

Supported Drive Modes

RO

RW

RW

RW

RO

RW

RW

RO

Table 5: CiA 402 Objects

For more information: see Appendix A for detail decription of OD.

Data Type

UNSIGNED16

UNSIGNED16

UNSIGNED16

INTEGER16

INTEGER8

INTEGER8

INTEGER32

UNSIGNED32

INTEGER32

INTEGER16

UNSIGNED16

INTEGER16

INTEGER16

INTEGER32

INTEGER16

UNSIGNED8

UNSIGNED32

UNSIGNED32

UNSIGNED32

UNSIGNED32

UNSIGNED32

UNSIGNED32

INTEGER8

ARRAY

UNSIGNED8

UNSIGNED32

UNSIGNED32

UNSIGNED32

RECORD

UNSIGNED8

UNSIGNED32

INTEGER32

UNSIGNED32

Access

Type

RO

RW

RW

RW

RW

RW

RO

RO

RW

RW

RW

RW

RW

RW

RO

RW

RW

WO

RO

RW

WO

RO

RO

PDO

Mapping

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

920-0025 Rev J

3/4/2015

16

CANopen User Manual

Index Sub

7001h

7002h

7003h

7005h

7006h

7007h

7009h

700Ah

700Bh

700Ch

700Dh

700Eh

0

0

0

0

0

0

0

0

0

0

0

0

Comment Fields

Home Switch

Idle Current

Display Drive Inputs torque_Constant

DSP_clearAlarm

Q Sequence Number

Velocity Actual Value

Position Actual Value

DSP Status Code zero_Position

Acceleration_Current

Analog Input 1

Data Type

UNSIGNED8

UNSIGNED16

UNSIGNED16

UNSIGNED16

UNSIGNED8

UNSIGNED8

UNSIGNED16

INTEGER32

UNSIGNED16

UNSIGNED8

UNSIGNED16

UNSIGNED16

Table 6: Applied Motion Products Manufacture Specific Objects

For more information: see Appendix A for detail decription of OD.

Access

Type

RO

RO

RO

WO

RW

RW

RO

RW

WO

RW

RW

RO

PDO

Mapping

Yes

Yes

Yes

Yes

Yes

Yes

Yes

17

920-0025 Rev J

3/4/2015

CANopen User Manual

Global Control Word and Status Word

Byte

#

Bit

#

15

14

1

2

Homing Position

Control Word

Velocity Torque Q Homing Position

Status Word

Velocity

Reserved

Torque

13

12

Reserved

11

10

3

2

1

0

9

8

7

6 Reserved

5

4

Reserved

Reserved

Homing

Operation

Start

Change of

Set Point

Reserved Reserved Reserved

Halt

Abs/Rel

Change

Set Point

Immediately

Fault Reset

Reserved Reserved Reserved

Reserved Reserved Reserved

New Set

Point

Reserved Reserved

Q

Program

Start

Enable Operation

Quick Stop

Enable Voltage

Switch On

Homing

Error

Homing

Attained

Following

Error

Set Point

Ack

Reserved Reserved

Speed Reserved

Internal Limit Active

Target Reached

Remote

Reserved

Warning

Switch On Disabled

Quick Stop

Voltage Enabled

Fault

Operation Enabled

Switched On

Ready to Switch On

Q

Reserved

Reserved

Figure 5: Global Control Word and Status Word

920-0025 Rev J

3/4/2015

18

CANopen User Manual

General Purpose Registers

Applied Motion Products CANopen products provide 23 general purpose registers. These registers are 32 bit read/write registers. This is volatile memory, so data written there will not be saved after a power cycle.

These registers may also be accessed and manipulated via a stored Q Program, if desired. The table below cross-references the CANopen OD entries and the Q Programmer register addresses.

For more information on using these general purpose registers in a Q Program, please see the Host Com mand Reference, available at www.applied-motion.com.

For more information about the Q Program Mode: see Appendix H

Register Name

User Defined Register 0

User Defined Register 1

User Defined Register 2

User Defined Register 3

User Defined Register 4

User Defined Register 5

User Defined Register 6

User Defined Register 7

User Defined Register 8

User Defined Register 9

User Defined Register 10

User Defined Register 11

User Defined Register 12

User Defined Register 13

User Defined Register 14

User Defined Register 15

User Defined Register 16

User Defined Register 17

User Defined Register 18

User Defined Register 19

User Defined Register 20

User Defined Register 21

User Defined Register 22

OD Address

4000.01

h

*

4000.02

h

4000.03

h

4000.04

h

4000.05

h

4000.06

h

4000.07

h

4000.08

h

4000.09

h

4000.0A

h

4000.0B

h

4000.0C

h

4000.0D

h

4000.0E

h

4000.0F

h

4000.10

h

4000.11

h

4000.12

h

4000.13

h

4000.14

h

4000.15

h

4000.16

h

4000.17

h

Q Register Address

@

[

>

?

;

:

<

=

8

9

`

^

_

]

\

6

7

4

5

2

3

0

1

* Note: 4000.01h means OD address is index 4000h and sub-index 01h.

Table 7: User Defined Registers in CANopen and Q Programmer

19

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix A - The Object Dictionary

The most important part of a device profile is the Object Dictionary description. The Object

Dictionary is essentially a grouping of objects accessible via the network in an ordered predefined fashion. Each object within the dictionary is addressed using a 16-bit index.

The overall layout of the standard Object Dictionary is shown below. This layout closely conforms with other industrial serial bus system concepts:

Index (hex)

0000

0001-001F

0020-003F

0040-005F

0060-007F

0080-009F

00A0-0FFF

1000-1FFF

2000-5FFF

6000-9FFF

A000-FFFF

Object not used

Static Data Types

Complex Data Types

Manufacturer Specific Complex Data Types

Device Profile Specific Static Data Types

Device Profile Specific Complex Data Types

Reserved for further use

Communication Profile Area

Manufacturer Specific Profile Area

Standardised Device Profile Area

Reserved for further use

Table 8: Object Dictionary Structure

920-0025 Rev J

3/4/2015

20

CANopen User Manual

Communication Profile

0x1000 - Device type

Contains information about the 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 additional information about optional functionality of the device. The Additional Information parameter is device profile specific. Its specification does not fall within the scope of this document, it is defined in the appropriate device profile. The value 0000h indicates a device that does not follow a standardised device profile. For multiple device modules the Additional Information parameter contains FFFFh and the device profile number referenced by object 1000h is the device profile of the first device in the Object Dictionary. All other devices of a multiple device module identify their profiles at objects 67FFh + x*800h with x = internal number of the device (0-7).

These entries describe the device type of the preceding device.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping ro no bit 0-15: Device profile number bit 16-31: Additional information

Note 1: COS means: TPDO detects the change of State

COS

1 no

Default value

0x00000000

0x1001 - Error Register

This object is an error register for the device. The device can map internal errors in this byte. This entry is mandatory for all devices. It is a part of an Emergency object.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping ro optional bit 0: generic error bit 1: current bit 2: voltage bit 3: temperature bit 4: communication error (overrun, error state) bit 5: Reserved (always 0) bit 6: Reserved (always 0) bit 7: Reserved (always 0)

COS no

Default value

0

21

920-0025 Rev J

3/4/2015

CANopen User Manual

0x1002 –Manufacturer status register (not yet implemented)

This object is a common status register for manufacturer specific purposes.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping ro optional

COS no

Default value

0

0x1003 - Pre-defined error field

The object at index 1003h holds the errors that have occurred on the device and have been signaled via the Emergency Object. In doing so it provides an error history.

1. The entry at sub-index 0 contains the number of actual errors that are recorded in the array starting at sub-index 1.

2. Every new error is stored at sub-index 1, the older ones move down the list.

3. Writing a “0” to sub-index 0 deletes the entire error history (empties the array). Values higher than 0 are not allowed. This would lead to an abort message (error code: 0609 0030h).

4. The error numbers are of type UNSIGNED32 and are composed of a 16 bit error code and a 16 bit additional error information field which is manufacturer specific. The error code is contained in the lower 2 bytes (LSB) and the additional information is included in the upper 2 bytes (MSB). If this object is supported it must consist of two entries at least. The length entry on sub-index 0h and at least one error entry at sub-index 1H.

Object Type Sub Number Data Type

Array 9 UNSIGNED32

Access

Type ro

PDO

Mapping optional

COS no

Default value

0

Subindex

00

05

06

07

08

01

02

03

04

Name

Number of errors

Standard error field

Standard error field

Standard error field

Standard error field

Standard error field

Standard error field

Standard error field

Standard error field

Default value

0

0

0

0

0

0

0

0

0

Number of Errors (subindex = 0) : bit 0-7: Zero can be written to erase error history

Standard Error Field (subindex = 1~ 8) : bit 0-15: Error code as transmited in the Emergency object bit 16-31: Manufacturer specific additional information

920-0025 Rev J

3/4/2015

22

CANopen User Manual

0x1005 COB-ID SYNC message

Index 1005h defines the COB-ID of the Synchronisation Object (SYNC). Further, it defines whether the device generates the SYNC. The structure of this object is shown in the following

Figure and Table: bits

11-bit-ID

29-bit-ID

UNSIGNED32

MSB

31

0/1

30 29 28-11

0/1 0

LSB

10-0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11-bit Identifier

0/1 0/1 1 29 -bit Identifier

Figure 6: Structure of TIME COB-ID entry bit number

31 (MSB)

30

29

28 -11

10-0 (LSB)

0

1

0

1

0

X

X value

0

1 meaning

Device does not consume TIME message

Device consumes TIME message

Device does not produce TIME message

Device produces TIME message

11-bit ID (CAN 2.0A)

29-bit ID (CAN 2.0B) if bit 29=0 if bit 29=1: bits 28-11 of 29-bit-TIME-COB-ID bits 10-0 of TIME-COB-ID

Table 9: Description of SYNC COB-ID entry

Bits 29, 30 are not changeable. If a device is not able to generate SYNC messages, an attempt to set bit 30 is responded to with an abort message (abort code: 0609 0030h). Devices supporting the standard CAN frame type only either ignore attempts to change bit 29 or respond with an abort message (abort code: 0609 0030h). The first transmission of SYNC object starts within 1 sync cycle after setting Bit 30 to 1. Once the objects exists (Bit 30=1) you are not allowed to change Bit 0-29.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw no

COS no

Default value

0x00000080

23

920-0025 Rev J

3/4/2015

CANopen User Manual

0x1006 Communication cycle period

This object defines the communication cycle period in ms. This period defines the SYNC interval. It is 0 if not used. If the communication cycle period on sync producer is changed to a new value unequal 0, the transmission of sync object resumes within 1 sync cycle of the new value.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw no

COS no

Default value

0 bit 0-31: period of SYNC transmission in ms (0 = no transmission, no checking)

0x1007 Synchronous window length

Contains the length of the time window for synchronous PDOs in ms. It is 0 if not used.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw no

COS no

Default value

0 bit 0-31: window length after SYNC when PDOs must be transmited in µs, (0 = not used)

0x1008 Manufacturer device name

Contains the manufacturer device name.

Object Type Data Type Access Type PDO Mapping

Var Visible string const no

Name of the manufacturer as string

0x1009 Manufacturer hardware version

Contains the manufacturer hardware version description.

Object Type

Var

Data Type

Visible string

Access Type PDO Mapping const no

Name of the hardware version as string.

0x100A Manufacturer software version

Contains the manufacturer software version description.

Object Type

Var

Data Type

Visible string

Access Type PDO Mapping const no

COS no

COS no

COS no

Default value

AMA

CANopen

Motor Driver

Default value

A001

Default value

2.00A

920-0025 Rev J

3/4/2015

24

CANopen User Manual

Name of the software version as string.

0x1010 Store parameters

This object supports the saving of parameters in non-volatile memory.

1. Sub-Index 0 contains the largest Sub-Index that is supported.

2. Sub-Index 1 refers to all parameters that can be stored on the device.

3. Sub-Index 2 refers to communication related parameters (Index 1000h - 1FFFh manufacturer specific communication parameters).

4. Sub-Index 3 refers to application related parameters (Index 6000h - 9FFFh manufacturer specific application parameters).

5. At Sub-Index 4 - 127: manufacturers may store their choice of parameters individually.

6. Sub-Index 128 - 254 are reserved for future use.

In order to avoid storage of parameters by mistake, storage is only executed when a specific signature is written to the appropriate Sub-Index. The signature is “save”.

Signature

ISO 8859

(“ASCII“) hex

MSB e

65h v

76h a

61h

LSB s

73h

Object Type Sub Number

Array 2

Data Type

UNSIGNED32

Access Type rw

PDO

Mapping no

COS Default value no 0

Subindex

00

01

Name max sub-index save all parameters

Default value

1

0

Writing value 0x65766173 (‘s’,’a’,’v’,’e’ from LSB to MSB) into this location stores all Manufacturer specific parameters into the EEPROM.

Here list the parameters which can be stored:

0x5000 positionGain_Tuning;

0x5001 positionDeriGain_Tuning;

0x5002 positionDeriFilter_Tuning;

0x5003 velocityGain_Tuning;

0x5004 velocityIntegGain_Tuning;

0x5005 accFeedForward_Tuning;

0x5006 PIDFilter_Tuning;

0x5007 notchFilterA_Tuning;

0x5008 notchFilterB_Tuning;

0x5009 notchFilterC_Tuning;

0x500A notchFilterD_Tuning;

25

920-0025 Rev J

3/4/2015

CANopen User Manual

0x500B notchFilterE_Tuning;

0x500C notchFilterF_Tuning;

0x500D notchFilterG_Tuning;

0x500E notchFilterH_Tuning;

0x500F positionError;

0x5010 velocity_MAX;

0x5011 smoothFilter;

0x1011 Restore default parameters (Not yet implemented)

With this object the default values of parameters according to the communication or device profile are restored.

Object Type Sub Number Data Type Access Type

Var 2 UNSIGNED32 rw

PDO

Mapping no

COS Default value no 0

Subindex

00

01

Name max sub-index restore all parameters

Default value

1

0

0x1014 COB-ID EMCY

This object defines the COB-ID of the Emergency Object (EMCY).

bits

11-bit-ID

29-bit-ID

UNSIGNED32

MSB

31

0/1

30 29 28-11

0 0

LSB

10-0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11-bit Identifier

0/1 0 1 29 -bit Identifier

Figure 7: Structure of the EMCY Identifier entry bit number

31 (MSB)

30

29

28-11

10-0 (LSB) value

0

X

X

0

1

0

1

0

Meaning

EMCY exists / is valid

EMCY does not exist / is not valid reserved (always 0)

11-bit ID (CAN 2.0A)

29-bit ID (CAN 2.0B) if bit 29=0 if bit 29=1: bits 28-11 of 29-bit-COB-ID bits 10-0 of COB-ID

920-0025 Rev J

3/4/2015

26

CANopen User Manual

Figure 8: Description of EMCY COB-ID entry

Devices supporting the standard CAN frame type only, an attempt to set bit 29 is responded with an abort message (abort code: 0609 0030h). It is not allowed to change Bits 0-29, while the object exists (Bit 31=0).

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping ro no bit 0-10: COB-ID bit 11-30: set to 0 for 11 bit COB-ID bit 31: 0(1) - node uses (does NOT use) Emergency object

COS no

Default value

0x80+$NODEID

0x1015 inhibit time EMCY

The inhibit time for the EMCY message can be adjusted via this entry. The time has to be a multiple of 100ms.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no bit 0-15: Inhibit time of emergency message in 100µs

COS no

Default value

200

0x1017 Producer heartbeat time

The producer hartbeat time defines the cycle time of the heartbeat. The producer heartbeat time is 0 if it not used. The time has to be a multiple of 1ms.

Object Type

Var

Data Type Access Type PDO Mapping

UNSIGNED16 rw no no

COS bit 0-15: Heartbeat producer time in ms (0 = disable transmission)

Default value

1000

0x1018 Identity

The object at index 1018h contains general information about the device.

1. The Vendor ID (sub-index 1h) contains a unique value allocated to each manufacturer.

2. The manufacturer-specific Product code (sub-index 2h) identifies a specific device version.

3. The manufacturer-specific Revision number (sub-index 3h) consists of a major revision number and a minor revision number. The major revision number identifies a specific CANopen behaviour. If theCANopen functionality is expanded, the major revision has to be incremented.

The minor revision number identifies different versions with the same CANopen behaviour.

27

920-0025 Rev J

3/4/2015

CANopen User Manual

4. The manufacturer-specific Serial number (sub-index 4h) identifies a specific device.

Object Type

Record

Sub Number

5

Subindex

00

01

02

03

04

Name Data Type Access Type max sub-index

Vendor-ID

UNSIGNED8

UNSIGNED32

Product code UNSIGNED32

Revision number UNSIGNED32

Serial number UNSIGNED32 ro ro ro ro ro

PDO

Mapping no no no no no

COS Default value no no no no no

4

0x000002D9

0x00000000

0x00000000

0x00000000 max sub-index

Vendor-ID bit 0-31: Assigned by CiA (here is 0x000002D9 for Shanghai AMP and Applied Motion

Products Automation)

Product code bit 0-31: Manufacturer specific

Revision number bit 0-15: Minor revision num. (CANopen behavior has not changed) bit 16-31: Major revision number (CANopen behavior has changed)

Serial number bit 0-31: Manufacturer specific (Lot Number)

0x1019 Synchronous counter overflow value

This object contains the max counters of SYNC message. If it is 0 the producer will send the SYNC message without any data, otherwise with data length 1.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping rw no

COS no

Default value

0

If value is zero, then SYNC message is transmitted with data length 0.

If value is from 2 to 240, then SYNC message has one data byte, which contains the counter.

920-0025 Rev J

3/4/2015

28

Other values are reserved.

0x1029 Error behavior

This object contains the error information of the CANopen driver.

Object Type Sub Number

Array 7

Data Type

UNSIGNED8

Access Type PDO Mapping rw no

Subindex

00

01

02

03

04

05

06

Name max sub-index

Communication

Communication other

Communication passive

Generic

Device profile

Manufacturer specific

Default value

6

0x00

0x00

0x01

0x00

0x00

0x00

Value definition for all subindexes:

0x00 - if operational, switch to NMT pre-operational

0x01 - do nothing

0x02 - switch to NMT stopped

Actual value

CANopen User Manual

COS no

01 - Communication error - bus off or Heartbeat consumer error.

02 - Communication other error (critical errors - see ‘Error status bits’) except CAN bus passive but including bus off or Heartbeat consumer.

03 - Communication passive - any communication error including CAN bus passive.

04 - Generic error (critical errors - see ‘Error status bits’).

05 - Device profile error - bit 5 in error register is set.

06 - Manufacturer specific error - bit 7 in error register is set.

0x1200 SDO server parameter

The object holds the COB-ID (communication object ID, also known as CAN message ID) values used to access the driver’s SDO.

1. Sub-index 0 contains the number of sub-elements of this record.

2. Sub-index 1 used by the driver to receive SDO packets. The value is 0x600 +

$NODEID.

3. Sub-index 2 gives the COB-ID used by the driver to transmit SDO packets. The value is

29

920-0025 Rev J

3/4/2015

CANopen User Manual

0x580 + $NODEID.

Object Type

Record

Subindex

00

01

02

Sub Number

3

Name Data Type Access Type PDO Mapping COS Default value max sub-index UNSIGNED8 ro no no 2

UNSIGNED32 ro no no 0x600+$NODEID COB-ID client to server

COB-ID server to client

UNSIGNED32 ro no no 0x580+$NODEID

0x1400~0x1403 RPDO communication

Contains the communication parameters for the PDOs the device is able to receive. The type of the PDO communication parameter (20h) is described in CiA 301 section 9.5.4. The sub-index 0h contains the number of valid entries within the communication record. Its value is at least 2. If inhibit time is supported, the value is 3. At sub-index 1h resides the COB-ID of the PDO. This entry has been defined as UNSIGNED32 in order to allow 11-bit CAN Identifiers

(CAN 2.0A) as well as for 29-bit CAN identifiers (CAN 2.0B).

bits

11-bit-ID

29-bit-ID

UNSIGNED32

MSB

31

0/1

0/1

30

0/1

0/1

29 28-11

LSB

10-0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11-bit Identifier

1 29 -bit Identifier

Figure 9: Structure of PDO COB-ID entry bit number

31 (MSB)

30

29

28-11

10-0 (LSB) value

0

1

0

0

1

1

0

X

X meaning

PDO exists / is valid

PDO does not exist / is not valid

RTR allowed on this PDO no RTR allowed on this PDO

11-bit ID (CAN 2.0A)

29-bit ID (CAN 2.0B) if bit 29=0 if bit 29=1: bits 28-11 of 29-bit-

COB-ID bits 10-0 of COB-ID

920-0025 Rev J

3/4/2015

30

CANopen User Manual

Table 10: Description of PDO COB-ID entry

The PDO valid/not valid bit allows for the selection of which PDOs are used in the operational state. There may be PDOs fully configured (e.g. by default) but not used, and therefore set to “not valid” (deleted). The feature is necessary for devices supporting more than 4 RP-

DOs or 4 TPDOs, because each device has only default identifiers for the first four RPDOs/TP-

DOs. Devices supporting the standard CAN frame type only or not supporting Remote Frames, an attempt to set bit 29 to 1 or bit 30 to 0 will be met with an abort message (abort code: 0609

0030h). Changing bit 0-29 is not allowed while the PDO exists (Bit 31=0).

The transmission type (sub-index 2) defines the transmission/reception character of the

PDO. Table 11 describes the usage of this entry. On an attempt to change the value of the transmission type to a value that is not supported by the device an abort message (abort code:

0609 0030h) is generated.

transmission type PDO transmission cyclic

0

X 1-240

241-251

252

253

254

255 acyclic

X synchronous asynchronous RTR only

X

X

- reserved -

X

X

X

X

X

X

Table 11: Description of transmission type

Synchronous (transmission types 0-240 and 252) means that the transmission of the

PDO shall be related to the SYNC object. Preferably the devices use the SYNC as a trigger to output or actuate based on the previous synchronous Receive PDO respectively to update the data transmitted at the following synchronous Transmit PDO. Details of this mechanism depend on the device type and are defined in the device profile if applicable.

Asynchronous means that the transmission of the PDO is not related to the SYNC object.

A transmission type of zero means that the message shall be transmitted synchronously with the SYNC object but not periodically. A value between 1 and 240 means that the PDO is transferred synchronously and cyclically. The transmission type indicating the number of SYNC which are necessary to trigger PDO transmissions.

Receive PDOs are always triggered by the following SYNC upon reception of data independent of the transmission types 0 - 240. The transmission types 252 and 253 mean that the

PDO is only transmitted on remote transmission request. At transmission type 252, the data is updated (but not sent) immediately after reception of the SYNC object.

At transmission type 253 the data is updated at the reception of the remote transmission request (hardware and software restrictions may apply). These value are only possible for

TPDOs.

For TPDOs transmission type 254 means, the application event is manufacturer specific

(manufacturer specific part of the Object Dictionary), transmission type 255 means, the application event is defined in the device profile. RPDOs with that type trigger the update of the

31

920-0025 Rev J

3/4/2015

CANopen User Manual mapped data with the reception.

Sub-index 3h contains the inhibit time. This time is a minimum interval for PDO transmission. The value is defined as multiple of 100μs. It is not allowed to change the value while the PDO exists (Bit 31 of sub-index 1 is 0).Sub-index 4h is reserved. It does not have to be implemented, in this case read or write access leads to Abort SDO Transfer (abort code:

0609 0011h).

In mode 254/255 additionally an event time can be used for TPDO. If an event timer exists for a TPDO (value not equal to 0) the elapsed timer is considered to be an event. The event timer elapses as multiple of 1 ms of the entry in sub-index 5h of the TPDO. This event will cause the transmission of this TPDO in addition to otherwise defined events. The occurrence of the events set the timer. Independent of the transmission type the RPDO event timer is used recognize the expiration of the RPDO.

Object Type

Record

Sub Number

3

Subindex

00

01

02

Name max sub-index

COB-ID used by

RPDO transmission type

Data Type

UNSIGNED8

UNSIGNED32

UNSIGNED8

Access

Type ro rw rw

0x1400 - 0x1403 RPDO communication parameter max sub-index

PDO

Mapping no no no

COS no no no

Default value

2

$NODEID+0x200

2

255

COB-ID bit 0-10: COB-ID for PDO, to change it bit 31 must be set bit 11-29: set to 0 for 11 bit COB-ID bit 30: 0(1) - rtr are allowed (are NOT allowed) for PDO bit 31: 0(1) - node uses (does NOT use) PDO

Transmission type value = 0-240: receiving is synchronous, process after next reception of SYNC object value = 241-253: not used value = 254: manufacturer specific value = 255: asynchronous

*Note 2: Index 1400.01h Default value is 0x200+$NODEID

Index 1401.01h Default value is 0x300+$NODEID

Index 1402.01h Default value is 0x400+$NODEID

Index 1403.01h Default value is 0x500+$NODEID

920-0025 Rev J

3/4/2015

32

CANopen User Manual

0x1600~0x1603 RPDO mapping parameter

Contains the mapping for the PDOs the device is able to receive. The type of the PDO mapping parameter (21h) is described in 9.5.4 of CiA 301. The sub-index 0h contains the number of valid entries within the mapping record. This number of entries is also the number of the application variables which shall be transmitted/received with the corresponding PDO. The sub-indices from 1h to number of entries contain the information about the mapped application variables. These entries describe the PDO contents by their index, sub-index and length . All three values are hexadecimal coded. The length entry contains the length of the object in bit

(1..40h). This parameter can be used to verify the overall mapping length. It is mandatory.

The structure of the entries from sub-index 1h - 40h is as follows:

Byte: MSB index (16 bit)

LSB sub-index (8 bit) object length (8 bit)

Figure 10: Structure of PDO Mapping Entry

If the change of the PDO mapping cannot be executed (e.g. the PDO length is exceeded or the SDO client attempts to map an object that cannot be mapped) the device responds with an Abort SDO Transfer Service.

Subindex 0 determines the valid number of objects that have been mapped. For changing the PDO mapping first the PDO has to be deleted, the sub-index 0 must be set to 0 (mapping is deactivated). Then the objects can be remapped. When a new object is mapped by writing a subindex between 1 and 64, the device may check whether the object specified by index / sub-index exists. If the object does not exist or the object cannot be mapped, the SDO transfer must be aborted with the Abort SDO Transfer Service with one of the abort codes 0602 0000h or 0604 0041h.

After all objects are mapped subindex 0 is set to the valid number of mapped objects.

Finally the PDO will be created by writing to its communication parameter COB-ID. When subindex 0 is set to a value >0 the device may validate the new PDO mapping before transmitting the response of the SDO service. If an error is detected the device has to transmit the Abort SDO Transfer Service with one of the abort codes 0602 0000h, 0604 0041h or 0604

0042h.

When subindex 0 is read the actual number of valid mapped objects is returned. If data types (Index 1h-7h) are mapped they serve as “dummy entries”. The corresponding data in the PDO is not evaluated by the device. This optional feature is useful e.g. to transmit data to several devices using one PDO, each device only utilising a part of the PDO. It is not possible to create a dummy mapping for a TPDO.

33

920-0025 Rev J

3/4/2015

CANopen User Manual

A device that supports dynamic mapping of PDOs must support this during the PRE-OP-

ERATIONAL state. If dynamic mapping during the OPERATIONAL state is supported, the SDO client is responsible for data consistency.

Object Dictionary xxxxh xxh Application Object 1

2

3

0

1

PDO Mapping yyyyh

3 yyh 08h zzzzh xxxxh zzh xxh

10h

08h yyyyh yyh Application Object 2 zzzzh zzh Application Object 3

PDO:

Appl. Obj. 2

Application Object 3

Figure 11: Principle of PDO mapping

Appl. Obj. 1

Object Type

Record

Sub Number

9

Subindex Name Data Type

Access

Type

PDO

Mapping

COS Default value

00

01

02

03

04

05

06

07

08

Number of mapped objects

UNSIGNED8 mapped object 1 UNSIGNED32 mapped object 2 UNSIGNED32 mapped object 3 UNSIGNED32 mapped object 4 UNSIGNED32 mapped object 5 UNSIGNED32 mapped object 6 UNSIGNED32 mapped object 7 UNSIGNED32 mapped object 8 UNSIGNED32 rw rw rw rw rw rw rw rw rw no no no no no no no no no no no no no no no no no no

0

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x1600 - 0x1603 RPDO mapping parameter (To change mapping, ‘Number of mapped objects’ must be set to 0)

Number of mapped objects mapped object (subindex 1...8) bit 0-7: data length in bits bit 8-15: subindex from OD bit 16-31: index from OD

920-0025 Rev J

3/4/2015

34

CANopen User Manual

0x1800~0x1803 TPDO communication parameter

Contains the communication parameters for the PDOs the device is able to transmit.

The type of the PDO communication parameter (20h) is described in 9.5.4 of CiA 301. A detailed description of the entries is done in the section for the Receive PDO Communication

Parameter (1400h – 1403h).

Object Type

Record

Sub Number

7

04

05

06

00

01

02

03

Subindex Name Data Type max sub-index UNSIGNED8

COB-ID used by TPDO UNSIGNED32 transmission type inhibit time

UNSIGNED8

UNSIGNED16 compatibility entry event timer

SYNC start value

UNSIGNED8

UNSIGNED16

UNSIGNED8

Access

Type ro rw rw rw rw rw rw

0x1800 - 0x1803 TPDO communication parameter max sub-index

PDO

Mapping no no no no no no no

COS no no no no no no no

Default value

6

0x180+$NODEID3

255

100

0

0

0

COB-ID bit 0-10: COB-ID for PDO, to change it bit 31 must be set bit 11-29: set to 0 for 11 bit COB-ID bit 30: 0(1) - RTR are allowed (are NOT allowed) for PDO bit 31: 0(1) - node uses (does NOT use) PDO

Transmission type value = 0: transmiting is synchronous, specification in device profile value = 1-240: transmiting is synchronous after every N-th SYNC object value = 241-251: not used value = 252-253: Transmited only on reception of Remote Transmission Request value = 254: manufacturer specific value = 255: asinchronous, specification in device profile inhibit time bit 0-15: Minimum time between transmissions of the PDO in 100µs. Zero disables functionality. compatibility entry bit 0-7: Not used.

35

920-0025 Rev J

3/4/2015

CANopen User Manual event timer bit 0-15: Time between periodic transmissions of the PDO in ms. Zero disables functionality.

SYNC start value value = 0: Counter of the SYNC message shall not be processed. value = 1-240: The SYNC message with the counter value equal to this value shall be regarded as the first received SYNC message.

Note 3: Index 1800.01h Default Value is 0x180+$NODEID

Index 1801.01h Default Value is 0x280+$NODEID

Index 1802.01h Default Value is 0x380+$NODEID

Index 1803.01h Default Value is 0x480+$NODEID

0x1A00 ~ 0x1A03 TPDO mapping parameter

Contains the mapping for the PDOs the device is able to transmit. The type of the PDO mapping parameter (21h) is described in 9.5.4 of CiA 301. A detailed description of the entries is done in the section for the Receive PDO Mapping Parameter (1600h – 1603h).

Object Type

Record

Sub Number

9

Subindex

00

05

06

07

08

01

02

03

04

Name Data Type Access Type

Number of mapped objects

UNSIGNED8 mapped object 1 UNSIGNED32 mapped object 2 UNSIGNED32 mapped object 3 UNSIGNED32 mapped object 4 UNSIGNED32 mapped object 5 UNSIGNED32 mapped object 6 UNSIGNED32 mapped object 7 UNSIGNED32 mapped object 8 UNSIGNED32 rw rw rw rw rw rw rw rw rw

PDO

Mapping no no no no no no no no no

COS Default value no no no no no no no no no

1

0x60410010

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x00000000

0x1A00 - 0x1A03 TPDO mapping parameter. (To change mapping, ‘Number of mapped objects’ must be set to 0).

Number of mapped objects mapped object (subindex 1...8) bit 0-7: bit 8-15: bit 16-31: data length in bits subindex from OD index from OD

920-0025 Rev J

3/4/2015

36

CANopen User Manual

0x1F80 NMT startup (Not implemented)

The object set the NMT status when the device powerup.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw no

COS no

Default value

0x00000000 bit 0: 0(1) - device is not (is) NMT master bit 1: 0(1) - if bit3=0, start explicitly assigned (all) nodes bit 2: 0(1) - automaticaly enter (DO NOT automaticaly enter) the operational state on bootup bit 3: 0(1) - NMT master may (may not) start nodes automatically bit 4: 0(1) - if monitored node fails heartbeat handle that (all) node(s) bit 5: 0(1) - flying master process not (yes) supported bit 6: 0(1) - use bit 4 (ignore bit 4, stop all nodes) bit 7-31: reserved, set to 0

37

920-0025 Rev J

3/4/2015

CANopen User Manual

Manufacturer Specific Objects

The objects described in this section are manufacturer-specific to configure or monitor the

AMP CANopen driver.

0x2014~0x2017 PDOx_transmit_mask

The “TPDO detects COS” (means “on change data”) transmit event for PDOs can be mask off by these indexs. By default, all data in a PDO is considered when checking for change.

Each Index has 2 sub-indexes, sub-index 1 is used to mask (or reveal) bits in the lower

32bits (4bytes) of data. Sub-index 2 is the same for the upper 32bits.

Object Type Sub Number

Array

Subindex

00

01

02

Data Type Access Type

3 UNSIGNED32

Name max sub-index

PDOx_mask_LowerBytes

PDOx_mask_upperBytes rw

Default value

2

0xFFFFFFFF

0xFFFFFFFF

PDO

Mapping no

COS Default value no 0

PDOx_mask_LowerBytes bit0-31: mask off the lower 4 bytes of a TPDO when the data is “on change”

PDOx_mask_upperBytes bit0-31: mask off the upper 4 bytes of a TPDO when the data is “on change”

0x2100 Error status bits

Error Status Bits indicates error conditions inside stack or inside application.

Object Type

Var

Data Type

OCTET_STRING ro

Access

Type

PDO

Mapping optional

COS no

Default value

00 00 00 00 00 00 00 00 00 00

Default error status bits are:

Communication or protocol errors from driver (informative):

00 - ERROR_NO_ERROR - Error Reset or No Error.

01 - ERROR_CAN_BUS_WARNING - CAN bus warning.

02 - ERROR_RXMSG_WRONG_LENGTH - Wrong data length of received CAN message.

03 - ERROR_RXMSG_OVERFLOW - Previous received CAN message wasn’t processed yet.

04 - ERROR_RPDO_WRONG_LENGTH - Wrong data length of received PDO.

05 - ERROR_RPDO_OVERFLOW - Previous received PDO wasn’t processed yet.

06 - ERROR_CAN_RX_BUS_PASSIVE - CAN receive bus is passive.

920-0025 Rev J

3/4/2015

38

CANopen User Manual

07 - ERROR_CAN_TX_BUS_PASSIVE - CAN transmit bus is passive.

Communication or protocol errors from driver (critical):

08 - ERROR_08_reserved - (reserved)

09 - ERROR_09_reserved - (reserved)

0A - ERROR_CAN_TX_BUS_OFF - CAN transmit bus is off.

0B - ERROR_CAN_RXB_OVERFLOW - CAN module receive buffer has overflowed.

0C - ERROR_CAN_TX_OVERFLOW - CAN transmit buffer has overflowed.

0D - ERROR_TPDO_OUTSIDE_WINDOW - TPDO is outside SYNC window.

0E - ERROR_CAN_CONFIGURATION_FAILED - Configuration of CAN module CAN failed (Rx or Tx).

0F - ERROR_0F_reserved - (reserved)

Communication or protocol errors (informative):

10 - ERROR_NMT_WRONG_COMMAND - Wrong NMT command received.

11 - ERROR_SYNC_EARLY - SYNC message was too early.

12 - ERROR_12_reserved - (reserved)

13 - ERROR_13_reserved - (reserved)

14 - ERROR_14_reserved - (reserved)

15 - ERROR_15_reserved - (reserved)

16 - ERROR_16_reserved - (reserved)

17 - ERROR_17_reserved - (reserved)

Communication or protocol errors (critical):

18 - ERROR_SYNC_TIME_OUT - SYNC message timeout.

19 - ERROR_SYNC_LENGTH - Unexpected SYNC data length

1A - ERROR_PDO_WRONG_MAPPING - Error with PDO mapping.

1B - ERROR_HEARTBEAT_CONSUMER - Heartbeat consumer timeout.

1C - ERROR_HEARTBEAT_CONSUMER_REMOTE_RESET - Heartbeat consumer detected remote node reset.

1D - ERROR_1D_reserved - (reserved)

1E - ERROR_1E_reserved - (reserved)

1F - ERROR_1F_reserved - (reserved)

Generic errors (informative):

20 - ERROR_20_reserved - (reserved)

21 - ERROR_21_reserved - (reserved)

22 - ERROR_22_reserved - (reserved)

23 - ERROR_23_reserved - (reserved)

24 - ERROR_24_reserved - (reserved)

25 - ERROR_25_reserved - (reserved)

26 - ERROR_26_reserved - (reserved)

27 - ERROR_27_reserved - (reserved)

Generic errors (critical):

28 - ERROR_WRONG_ERROR_REPORT - Wrong parameters to <CO_errorReport()> function.

29 - ERROR_ISR_TIMER_OVERFLOW - Timer task has overflowed.

39

920-0025 Rev J

3/4/2015

CANopen User Manual

2A - ERROR_MEMORY_ALLOCATION_ERROR - Unable to allocate memory for objects.

2B - ERROR_GENERIC_ERROR - Generic error, test usage.

2C - ERROR_MAIN_TIMER_OVERFLOW - Mainline function exceeded maximum execution time.

2D - ERROR_INTERNAL_STATE_APPL - Error in application software internal state.

2E - ERROR_2E_reserved - (reserved)

2F - ERROR_2F_reserved - (reserved)

0x2101 CAN node ID

The object allows the user to set the CAN Node ID of the Node, the change takes effect at next power cycle.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping rw no

COS no

This object can not be stored in non- volatile memory at this moment.

Default value

3

0x2102 CAN bit rate

The object allows the user to set the CAN bit rate of the Node, the change takes effect at next power cycle.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

This object can not be stored in non- volatile memory at this moment.

Default value

0

0x2103 SYNC counter

The object contains the counts of the SYNC message transmits/receives.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

SYNC Counter is incremented each time, SYNC message is received or transmitted.

0x2104 SYNC time

Contains the time information between every adjacent two SYNC message.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping ro no

COS no

Default value

0

SYNC Time is incremented each timer period and reset to zero, each time SYNC is received or transmitted.

920-0025 Rev J

3/4/2015

40

CANopen User Manual

0x3000 switch value (for factory use only)

The object addresses the rotary switch, such as NodeID and BitRate switch settings information. (There are no such switches in IP65 compatible CANopen drivers).

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping ro no

COS no

Default value

0

0x4000 UserRegisters

This object provide user 23 general purpose registers. They are volatile, so the information sent there will not be saved after a power cycle.

Object Type Sub Number Data Type Access Type PDO Mapping COS Default value

Array 24 INTEGER32 rw yes no 0

Subindex

0x08

0x09

0x0A

0x0B

0x0C

0x0D

0x0E

0x0F

0x00

0x01

0x02

0x03

0x04

0x05

0x06

0x07

0x10

0x11

0x12

0x13

0x14

0x15

0x16

0x17

Name max sub-index userRegister1 userRegister2 userRegister3 userRegister4 userRegister5 userRegister6 userRegister7 userRegister8 userRegister9 userRegister10 userRegister11 userRegister12 userRegister13 userRegister14 userRegister15 userRegister16 userRegister17 userRegister18 userRegister19 userRegister20 userRegister21 userRegister22 userRegister23

Default value

0

0

0

0

0

0

0

0

0

0

0

0

23

0

0

0

0

0

0

0

0

0

0

0

41

920-0025 Rev J

3/4/2015

CANopen User Manual

0x5000 PositionGain_Tuning

This object shall configure the proportional Gain in Position loop to step-servo drive. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5001 PositionDeriGain_Tuning

This object shall configure the Derivative Gain in Position loop to step-servo drive. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5002 PositionDeriFilter_Tuning

This object provides a very simple single-pole low pass filter that is used to limit this high frequency noise and make the system quieter and more stable.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5003 VelocityGain_Tuning

This object shall configure the proportional Gain in Velocity loop to step-servo drive. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5004 VelocityIntegGain_Tuning

This object shall configure the Integral Gain in Velocity loop to step-servo drive. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

920-0025 Rev J

3/4/2015

42

CANopen User Manual

0x5005 AccFeedForward_Tuning

This object adds a feed forward acceleration/deceleration to the torque command to speed the system’s response. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5006 PIDFilter_Tuning

This object provide a torque command over-all filter at the end of Velocity loop. The filter is a very simple single-pole low pass filter that is used to limit the high frequency response of the Velocity and therefore the Position control loops. This object is only available on step-servo driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

0x5007~0x500E NotchFilterx_Tuning

3

These eight objects shall configure the NotchFilter parameters in torque mode. This object is only available on step-servo driver.

Object Type

Var

Data Type

INTEGER16

Access Type PDO Mapping rw no

*Note3: x should be from A to H

COS no

Default value

0

0x500F PositionError

This object shall indicate the configured range of tolerated position values symmetrically to the position demand value. If the position actual value is out of the following error window, a following error (Position Limit) occurs.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

This object is the same functionally as the standard object 0x6065.

Default value

0

0x5010 Velocity_MAX

This object shall configure the max velocity can be allowed in the driver. This value have no effect in Profile Position Mode.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

43

920-0025 Rev J

3/4/2015

CANopen User Manual

0x5011 SmoothFilter

This object provides a filter to change in the position command to cause a smoother movement of the motor.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

Please note that a lower filter value will result in much smoother motion but will cause a lag in response.

0x5012 Driver_Temperature

This object contains the information of driver’s temperature.

Object Type

Var

Data Type

INTEGER16

Access Type PDO Mapping ro no

The unit of this object is 0.1 centigrade.

COS no

Default value

0

920-0025 Rev J

3/4/2015

44

CANopen User Manual

Device Profile

The objects described in this section are parameters for all motion control modes, including profile position mode, profile velocity mode and also Homing mode.

0x603F DSP Error Code

The DSP error code captures the DSP alarm code of the last error that occurred in the drive.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping ro yes

COS no

Default value

0

Each bit in DSP Error code indicates one type of alarm or fault status.

(see the detail described in Appendix C)

0x6040 ControlWord

This object is used to control the state and motion control of the drive. It can be used to enable / disable the driver power output, start, and abort moves in all operating modes, and clear fault conditions.

The bits of the controlword are defined as follows:

LSB MSB

15 11 10 9 8 7 6 4 3 2 1 0

Manufacturer

Specific

O

Reserved

O

Halt

O

Fault

Reset

M

Operation

Mode

Specific

O

Enable

Operation

M

Quick

Stop

M

Enable

Voltage

M

Switch

On

M

Table 12: Controlword Data Description

Command

Shutdown

Switch On

Switch On

Disable Voltage

Quick Stop

Disable Operation

Enable Operation

Fault Reset

Bit of Controlword(6040h)

Fault

Reset

(Bit7)

0

0

0

0

0

0

0

Enable

Operation

(Bit 3)

1

×

×

×

0

0

1

×

Quick

Stop

(Bit 2)

1

1

1

×

0

1

1

×

Enable

Voltage

(Bit 1)

1

1

1

0

1

1

1

×

Table 13: Device Control Command Bit Patterns (Bits 0-3 and 7)

Switch On

(Bit 0)

1

×

×

0

1

1

1

×

45

920-0025 Rev J

3/4/2015

CANopen User Manual

Here is the Command Structure:

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping wo yes

COS yes

Default value

0

The read only object “statusword” indicates the current status of the drive. Each bit is mapped as follows:

MSB LSB

Bit

15

0x6041 StatusWord

Bit

14

Bit

13

Bit

12

Bit

11

High-Byte

Bit

10

Bit

9

Bit

8

Bit

7

Bit

6

Bit

5

Bit

4

Bit

3

L-Byte

Bit

2

Bit

1

Bit

0

Bit

0

13

14

15

9

10

11

12

7

8

5

6

3

4

1

2

Name

Ready to Switch On

Switch On

Operation Enabled

Fault

Voltage Disabled

Quick Stop

Switch On Disabled

Temperature

Manufacturer Specific

Remote

Target Reached

Internal Limit Active

Operation Mode Specific

Operation Mode Specific

Manufacturer Specific

Mandatory

Manufacturer Specific

Table 14: Bits in the statusword

920-0025 Rev J

3/4/2015

46

CANopen User Manual

The following bits indicate the status of the device:

State Bit 6

Switch On

Disable

Bit 5

Quick

Stop

Bit 3

Fault

Bit 2

Operation

Enabled

Bit 1

Switch

On

Bit 0

Ready to

Switch On

Not Ready to Switch On

Switch On

Disabled

Ready to

Switch On

Switched On

Operation

Enabled

Fault

Fault

Reaction

Active

Quick Stop

Active

0

1

0

0

0

0

0

0

X

X

1

X

1

1

X

0

0

0

0

1

0

0

1

0

0

0

1

1

0

0

1

1

0

0

1

1

0

1

1

1

0

0

1

1

1

1

1

1

Table 15: Device State Bits

Bits marked × are irrelevant for the state. Other bit combinations are not allowed

Bit 9: Remote

If bit 9 is set, then parameters may be modified via the CAN-network, and the drive executes the content of a command message. If the remote bit is reset, then the drive is in local mode and will not execute the command message. The drive may transmit messages containing valid actual values like a position_actual_value, depending on the actual drive configuration. The drive will accept accesses via service data objects (SDOs) in local mode.

Bit 10: Target Reached

If bit 10 is set by the drive, then a setpoint has been reached (torque, speed or position depending on the modes_of_operation). The change of a target value by software alters this bit. If quickstop_option_code is 5, 6, 7 or 8, this bit must be set, when the quick stop operation is finished and the drive is halted. If Halt occured and the drive has halted then this bit is set too.

Bit 11: Internal Limit Active

When this bit is set, the drive indicates that an internal limitation is active (e.g. position_ range_limit).

Here is the Command Structure.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping ro yes

COS yes

Default value

0

47

920-0025 Rev J

3/4/2015

CANopen User Manual

Global Control Word and Status Word

Byte

#

Bit

#

15

14

13

Homing Position

Control Word

Velocity Torque Q

Status Word

Homing Position Velocity Torque

Reserved

Q

1

2

12

11

10

9

8

7

6

5

4

3

2

1

0

Reserved

Reserved

Change of

Set Point

Reserved Reserved

Halt

Fault Reset

Reserved Reserved

Reserved

Abs/Rel

Change

Set Point

Immediately

Homing

Operation

Start

New Set

Point

Reserved

Reserved

Enable Operation

Quick Stop

Enable Voltage

Switch On

Reserved

Reserved

Reserved

Reserved

Reserved

Reserved

Q

Program

Start

Homing

Error

Homing

Attained

Following

Error

Reserved Reserved

Set Point

Ack

Speed Reserved

Internal Limit Active

Target Reached

Remote

Reserved

Warming

Switch On Disabled

Quick Stop

Voltage Enabled

Fault

Operation Enabled

Switch On

Ready to Switch On

Reserved

Reserved

The above table shows all the bits of “control word and status word” mapped in every operation mode.

920-0025 Rev J

3/4/2015

48

CANopen User Manual

0x605A Quick_stop_option_code

The parameter quick_stop_option_code determines what action should be taken if the

Quick Stop Function is executed.

Object Type

Var

Data Type

INTEGER16

Access Type PDO Mapping rw No

COS no

Default value

0 quick_stop_option_code

4

5

2

3

-32768…-1

0

1

6

7

8

9…32767

Action

Manufacturer Specific

Disable drive function

Slow down on slow down ramp

Slow down on quick stop ramp

Slow down on the current limit

Slow down on the voltage limit

Slow down on slow down ramp and stay in Quick-Stop

Slow down on quick stop ramp and stay in Quick-Stop

Slow down on the current limit and stay in Quick-Stop

Slow down on the voltage limit and stay in Quick-Stop reserved

At this time, only option codes 1 and 2 of this feature are active.

0x6060 Modes_of_operation

The parameter modes_of_operation switches the actually chosen operation-mode.

Object Type

Var

Data Type

INTEGER8

Access Type PDO Mapping wo yes

COS no

Default value

0

Mode of Operation

-2

-1

1

3

4

6

Action

SYNC Q Mode (manufacturer specific)

Normal Q Mode (manufacturer specific)

Profile Position Mode

Profile Velocity Mode

Torque Profile Mode (Servo only)

Homing Mode

-1: Normal Q mode (manufacturer specific mode)

-2: SYNC Q mode (manufacturer specific mode)

Velocity Mode and Interpolated Position Mode are not supported in this CANopen driver.

Also the Torque profile Mode is only supported for Servo( or Step Servo) CANopen driver.

49

920-0025 Rev J

3/4/2015

CANopen User Manual

0x6061 Modes_of_operation_display

The modes_of_operation_display shows the current mode of operation. The meaning of the returned value corresponds to that of the Modes of Operation option code (index 6060h)

Object Type

Var

Data Type

INTEGER8

Access Type PDO Mapping ro yes

COS yes

This value of operation mode indicates the current mode of operation.

Default value

0

0x6064 Position_value_calculated

This object represents the calculated value of the position at the current moment in user defined units.

Object Type

Var

Data Type

INTEGER32

Access Type PDO Mapping ro yes

COS yes

Default value

0

0x6065 following_error_window

This object shall indicate the configured range of tolerated position values symmetrically to the position demand value. If the position actual value is out of the following error window, a following error (Position Limit) occurs. A following error may occur when a drive is blocked, unreachable profile velocity occurs (Jog mode should be Mode 1), or improperly tuned (Servo and Step Servo only). The value shall be given in user defined position units. If the value of the following error window is 0, the following control shall be switched off.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw no

COS

No

Default value

0

This object is the same functionally as Manufacturer specific object 0x500F.

0x606C Velocity_value_calculated

This object represents the calculated value of the velocity at the current moment in user defined units.

Object Type

Var

Data Type

INTEGER32

Access Type PDO Mapping ro yes

COS yes

Default value

0

The value reading from driver should be divided by 240 to change to rps units.

e.g.: a value of 2400 in index 0x606c, means the calculated velocity is 10rps.

920-0025 Rev J

3/4/2015

50

CANopen User Manual

0x6071 target_torque

This parameter is the input value for the torque controller in Profile Torque Mode. This object can only be accessed in Servo (or Step Servo) driver.

Object Type

Var

Data Type

INTEGER16

Access Type PDO Mapping rw yes

COS no

Default value

0

This object parameter is related to the other torque values, such as torque_slope (index

0x6078) and torque_constant (index 0x7005). Please see Appendix G in this document for details.

0x6073 max_current

This object shall configure the max current of the drive.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw yes

The unit of this object is 0.01Amps.

COS no

Default value

0

0x6074 torque_demand_value

This parameter is the output value of the torque limit function (if available within the torque control and power-stage function).

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw yes

This object is only available on servo/step-servo drives.

The unit of this object is mNm.

COS no

Default value

0

0x6078 current_actual_value

The current actual value refers to the instantaneous current in the drive motor.

Object Type

Var

Data Type

INTEGER16

Access Type PDO Mapping rw yes

This object is only available on servo/step-servo drivers.

The unit of this object is 0.01Amps.

COS no

Default value

0

0x607A target_position

The Target Position is the position that the drive should move to in position profile mode using parameters such as velocity, acceleration, and deceleration. The target position is given in terms of Electrical Gear parameters steps per motor shaft revolution. The target position will be interpreted as absolute or relative depending on the absolute relative flag (bit 6) in the controlword.

Object Type Data Type Access Type PDO Mapping COS Default value

51

920-0025 Rev J

3/4/2015

CANopen User Manual

Var INTEGER32 rw yes no 0

0x607C home_offset

The home_offset object is the difference between the zero position for the application and the machine home position (found during homing). During homing the home position is found and, once the homing is completed, the zero position is offset from the home position by adding the home_offest to the home position. All subsequent absolute moves shall be taken relative to this new zero position. This is illustrated in the following diagram.

Home

Position

Zero

Position

Home_Offset

Object Type

Var

Data Type

INTEGER32

Access Type PDO Mapping rw yes

COS

No

Default value

0

0x607E polarity

This object contains two individual bits to set the polarity of position and velocity in their own mode. Bit7 (position polarity bit) indicates the position demand value (related to the target_postition object whose index is 0x607A) shall be multiplied by 1 or by –1. The polarity flag shall have no influence on the homing mode. Bit6 (velocity polarity bit) indicates that the velocity demand value (related to the profile velocity whose index is 0x60FF) shall be multiplied by 1 or -1.

Bit

7

6

Meaning

Position polarity

0=> multiply by 1(default)

1=> multiply by -1

Velocity polarity

0=> multiply by 1(default)

1=> multiply by -1

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping rw yes

COS

No

Default value

0

The position polarity bit shall be used only for profile position (pp) mode. The velocity po-

920-0025 Rev J

3/4/2015

52

CANopen User Manual larity bit shall be used only for profile velocity (pv) mode.

0x607F max_profile_speed

This object configures the maximum speed allowed in either direction in a move profile.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

Default value

0

This object is given the same unit as the objects velocity_value_calculated (index 0x606C) and profile_velocity (0x60FF).

0x6081 P2P_profile_velocity

This object shall configure the velocity normally attained at the end of the acceleration ramp during a profiled move and is valid for both directions of motion. This object sets the velocity value except the velocity parameter in Profile velocity mode (pv).

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

Default value

0

This object is given the same unit as the objects velocity_value_calculated (index 0x606C) and profile_velocity (0x60FF).

0x6083 profile_acceleration

This object shall configure the acceleration ramp in a profiled move.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

Default value

0

The value transmitted to (or read from) the drive should be multiplied by 6 (divided by 6) to change to rps/s unit.

e.g.: To set the acceleration to 100 rps/s, the value transmit to the drive should be 600.

0x6084 profile_deceleration

This object shall configure the deceleration ramp in a profiled move.

Object Type Data Type Access Type PDO Mapping COS Default value

Var UNSIGNED32 rw yes No 0

The value transmitted to (or read from) the drive should be multiplied by 6 (divided by 6) to change to rps/s unit.

e.g.: To set the deceleration to 100 rps/s. the value transmitted to the drive should be 600.

53

920-0025 Rev J

3/4/2015

CANopen User Manual

0x6085 quick_stop_deceleration

This object configures deceleration used to stop the motor when the quick stop function is activated and the quick stop code object (605Ah) is set to 2.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

Default value

0

The value transmitted to (or read from) the driver should be multiplied by 6 (divided by 6) to change to rps/s unit.

e.g.: To set the quick_stop_deceleration to 1000 rps/s, the value transmitted to the drive should be 6000.

0x6087 torque_slop

This parameter describes the rate of change of torque in units of per thousand of rated torque per second. The units should be Nm/s.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

Default value

0

0x6098 homing_method

This object determines the method that will be used during homing.

Object Type

Var

Data Type

INTEGER8

Access Type PDO Mapping rw yes

Please see details described in Appendix F of this document.

COS

No

Default value

0

0x6099 homing_speed

This object determines the speeds that will be used during homing.

There are two parts to define these speeds.

Sub-index 1 to set the speed to search home switch.

Sub-index 2 to set the speed to search zero position.

Object Type Sub Number Data Type Access Type

Array 3 UNSIGNED32 rw

PDO

Mapping yes

COS Default value no 0

Subindex

00

01

Name max sub-index speed_during_search_for_switch

Default value

2

0

920-0025 Rev J

3/4/2015

54

CANopen User Manual

02 speed_during_search_for_zero 0

0x609A homing_acceleration

This object establishes the acceleration to be used for all accelerations and decelerations with the standard homing modes.

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping rw yes

COS

No

The units are the same as profile_acceleration/deceleration objects.

Default value

0

0x60FE digital_outputs

This object configures or monitors the digital outputs for drivers.

Object Type

Record

Sub Number

2

Subindex Name Data Type

00

01 max sub-index UNSIGNED8 physical_outputs UNSIGNED32

Bit0-bit3: maximum 4 outputs for drivers.

Bit0: output 1

Bit1: output 2

Bit2: output 3

Bit3: output 4

Bit4-31: reserved.

Access

Type ro rw

PDO

Mapping no yes

COS no no

Default value

2

0

0x60FF profile_velocity

This object configures the velocity parameters in Profile Velocity Mode.

Object Type

Var

Data Type

INTEGER32

Access Type PDO Mapping rw yes

COS no

Default value

0

55

920-0025 Rev J

3/4/2015

CANopen User Manual

This object has the same units as the object velocity_value_calculated (index 0x606C).

0x6502 supported_drive_modes

This object provides information on the supported drive modes.

Bit number

0

7

8

5

6

3

4

1

2

9

10…15

16…31

Description

Profile Position Mode

Velocity Mode

Profile Velocity Mode

Profile Torque Mode reserved

Homing Mode

Interpolated Position Mode reserved reserved reserved reserved

Manufacturer sepcific

Object Type

Var

Data Type

UNSIGNED32

Access Type PDO Mapping ro no

COS no

The supported modes in Applied Motion Products CANopen drives are:

Bit0: Profile Position Mode

Bit2: Profile Velocity Mode

Bit3: Profile Torque Mode (Servo/ Step-Servo only)

Bit5; Homing Mode

Default value

0

0x7001 home_switch

This object shall configure the input number of the Home switch used for Homing.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping rw yes

COS no

Default value

3

0x7002 idle_current

This object configures/monitors the motor holding current of the device in idle mode.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw yes

The units of this object is current in Amps multiplied by 100.

COS no

Default value

3

920-0025 Rev J

3/4/2015

56

CANopen User Manual e.g.: If the value of this object read from the drive is 210, it means the idle current at this moment is 2.1Amps.

0x7003 drive_inputs

This object contains the information about drive’s digital inputs.

Object Type

Var

Data Type Access Type PDO Mapping

UNSIGNED16 rw yes

Bit0: input 1 Bit1: input 2 Bit2: input 3 Bit3: input 4

Bit4: input 5 Bit5: input 6 Bit6: input 7 Bit7: input 8

Bit8-15: reserved yes

COS Default value

0

0x7005 torque_Constant

This object configures the motor’s torque constant in manufacturer-specific units. The units are mNm/Amp.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

This object is only supported in servo/step-servo drives.

COS yes

Default value

0

0x7006 DSP_clearAlarm

This object provides a feature to clear an alarm within the drive.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping wo no

COS no

Set this value to 01h to clear active alarms

Default value

0

0x7007 QSegment.

This object configures the number of Q Segments that will be executed in Q mode.

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping rw yes

COS no

Default value

0

0x7009 velocity_actual_value

This object provides the actual velocity value derived from the position sensor (i.e. encoder)

Object Type Data Type Access Type PDO Mapping COS Default value

57

920-0025 Rev J

3/4/2015

CANopen User Manual

Var UNSIGNED16 ro yes yes 0

This object has the same units as the objects velocity_value_calculated (index 0x606C) and profile_velocity (0x60FF).

0x700A position_actual_value

This object represents the actual position value measured by the position sensor.

Object Type

Var

Data Type

INTEGER32

Access Type PDO Mapping ro yes

COS yes

Default value

0

0x700B DSP_statuscode

This object represents the current status code of the driver.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping ro yes

COS yes

Please see the details in Table 18 in Appendix C of this document.

Default value

0

0x700C zero_Position

This object provides a feature to zero all position parameters, such as position_actual_value (0x700A).

Object Type

Var

Data Type

UNSIGNED8

Access Type PDO Mapping wo no

Set this value to 01h to zero all position parameters.

COS no

Default value

0

0x700D Acceleration_Current

This object configures the current of the drive during an acceleration state.

Object Type

Var

Data Type

UNSIGNED16

Access Type PDO Mapping rw no

COS no

Default value

0

This object is only available on STM-CANopen drivers.

It has the same units as the objects max_current and idle_current; value should be divided by 100.

0x700E Analog_Input1

This object contains the Analog input value in manufacturer-specific units.

920-0025 Rev J

3/4/2015

58

CANopen User Manual

Appendix B - Parameter Unit Scaling

The table below shows conversions from physical units to internal drive units. Use this table to scale param eters before they are sent to the drive. Units must be rounded to the nearest whole number and represented in hexadecimal. Negative numbers should be expressed using two’s complement notation.

Parameter Type

Current

Velocity

Acceleration

Distance

Multiplier

0.01

0.0042

0.1667

1

Units

A rps rps/s step

Table 16: Parameter Scaling Chart

Querying the Point to Point Profile Acceleration from the drive:

An SDO read from OD 6083 h

returns a value of 226 h

, or 550 decimal. Using the acceleration multiplier this yields an acceleration of 91.685 rps/s.

550 * 0.1667 RPS = 91.685 rps/s

Set the Point to Point Acceleration to 10 rps/s:

When setting a known accel value, divide by the acceleration multiplier to obtain the hexadecimal number.

10 rev/s

2

/ 0.1667 = 59.988

Using the formula above, and rounding to the nearest whole number, results in a value of

60 decimal, or 3C h to send as an SDO Write to OD 6083 h.

Set the Target Position to -2000 steps:

Because the relationship between physical steps and internal steps is one-to-one, the value -2000 can be sent to OD 607A h

. Sending a negative number must be done in two’s complement notation. To find the two’s complement, subtract the value 2000 from 2

32

Target Position is a 32 bit number.

, since the

2

32

- 2000 = 4,294,965,296 = FFFFF830 h

59

920-0025 Rev J

3/4/2015

Hex Value

0001

0002

0004

0008

0200

0400

0800

1000

2000

4000

8000

0010

0020

0040

0080

0100

CANopen User Manual

Appendix C - Response Codes

Hex Value

0001

0002

0004

SV/SVAC SSM/TSM/TXM/SS MSST/MSSTAC

Position Limit

CCW Limit

CW Limit

STM/SWM

0008

0010

0020

0040

0080

0100

0200

0400

Internal Voltage

Under Voltage

Bad Hall Sensor

Over Temp

Internal Voltage Internal Voltage

Over Voltage

Under Voltage

Under Voltage

Over Current

Open Motor Winding

Bad Encoder

Comm Error

Internal Voltage

Under Voltage

Not Used

0800

1000

2000

4000

Wizard Failed

Current Foldback

Bad Flash

No Move

Not Used

Blank Q Segment

Not Used

8000 No Move Not Used

Note: Items in bold italic represent Drive Faults, which automatically disable the motor. Use the OF command in a Q Program to branch on a Drive Fault.

Table 17: Object 603F h

CiA 402 Error Codes

Status Code Bit Definition

Motor Enabled - motor disabled is this bit = 0

Sampling - for Quick Tuner

Drive Fault - check alarm code

In Position - motor is in position

Moving - motor is moving

Jogging - currently in jog mode

Stopping - in the process of stopping from a stop command

Waiting - for an input

Saving - parameter data is being saved

Alarm present - check alarm code

Homing - executing an SH command

Wait Time - executing a WT command

Wizard running - timing wizard is running

Checking encoder - timing wizard is running

Q Program is running

Initializing

Table 18: Object 700B h

DSP Status Codes

920-0025 Rev J

3/4/2015

60

CANopen User Manual

Appendix D - Profile Position Mode

General Mode Description

Profile Position Mode is a point-to-point operating mode using set-points which consist of velocity, acceleration, deceleration, and target position. Once all these parameters have been set, the drive buffers the commands and begins executing the set-point. When using a set of set-points method, a new set-point can be sent to the drive while a previously sent set-point is still executing.

Enable Profile Position Mode

T o enable the Profile Position Mode, the value 0001

OD entry, located at dictionary address 6060 h h

must be written to the mode of operation

. The mode of operation can be verified using OD 6061 mode of operation display - which is updated when the current operation mode is accepted.

h

-

Set Running Parameters

Set the distance, velocity, acceleration, and deceleration using OD entries 607A h and 6084 h

respectively.

, 6081 h

, 6083 h

,

Starting/Stopping Motion

After power up or node reset, the drive is in disabled state. The value 0006 control word OD entry, located at dictionary address 6040 h

. This will put the drive into “ready to switch on” state and ready to enable drive operation. If the value 0006 drive operation can not be enabled.

h h

must be written to the

is not written to the control word first,

To indicate a new set-point and start motion, toggle bit 4 by sending 001F h entry 6040 h

.

to controlword OD

To enable drive operation, the value 001F dictionary address 6040 h word must be cleared by writing 000F h h

must be written to the controlword OD entry, located at

. This will also signal that there is a new set-point ready. The drive acknowledges the receipt of a valid set-point using bit 12 of the statusword at OD 6041

to the controlword register.

h

. Because the set-point is edge-triggered, once the drive receives and processes the set-point, the new set-point of the control-

While the drive is acting on a set-point, a new set-point may be entered and triggered using the new set-point. The second set-point will be received as soon as it is processed, or at the end of the previous set-point, which ever is later.

Controlword Bits

New Set-point (bit 4) - set this bit high to clock in a new set-point. Once the drive has accepted the set-point, it will respond by setting statusword bit 12 high. Controlword bit 4 should then be taken low.

Change of Set-point (bit 9) - if this bit is low, the previous set-point will be completed and the motor will come to rest before a new set-point is processed. If bit 9 is high, the motor will continue at the speed commanded by the previous set-point until it has reached the position commanded by the previous set-point, then transition to the speed of the new set-point.

Change Set-point Immediately (bit 5) - if this bit is high, the new set-point will take effect immediately. The motor speed will transition to the speed and position commanded by the new set-point.

Abs/rel (bit 6) - if this bit is high, the set-point distance is relative. For example, if the previous motor position was 10,000 steps and a new set-point is issued with a distance of 20,000, the final position will be 30,000. If bit 6 is low, the distance is absolute. If the previous motor position was 10,000 and a new set-point is issued with a distance of 20,000, the new position will be 20,000. (The distance travelled from the previous position to the new position will be 10,000 steps.) For best results, do not

61

920-0025 Rev J

3/4/2015

CANopen User Manual change this bit while the motor is moving.

Note: Two set-points can be set up, but if status bit 12 is high, then the buffer is full and another set-point will be ignored.

For more information: See CiA 402 - 2, Profile Position Mode

PROFILE POSITION MODE, Single Set Point

Actual

Speed

0

New Set Point

Ready Bit(4)

0

Set Point

Ack Bit(12)

0

Target Reached

Bit(10)

0

t t t t

A B C D

Figure 12: Single Set-Point

E

Graph

Point

Start

A

B

C

D

New Set-Point

Ready Bit

0

0 -> 1

Set-Point

Acknowledge Bit

0

0

1

1 -> 0

0

0 -> 1

1

1 -> 0

Target Reached

Bit

0

0

0

0

0

E 0 0 1

What’s Going On

Drive waiting for set-point

User tells drive a set-point is ready

Drive acknowledges set-point, starts executing set-point

User pulls new set-point ready bit low

Drive pulls set-point ack bit low, indicating ready to receive another set-point

The set-point is finished, and the Target

Reached bit is set

Table 19: Single Set-Point Profile Position Move

920-0025 Rev J

3/4/2015

62

PROFILE POSITION MODE, Set of Set Points

CANopen User Manual

Actual

Speed

0

t

New Set Point

Ready Bit(4)

0

t

Set Point

Ack Bit(12)

0

t

Target Reached

Bit(10)

0

t

A B C D E F G H

Figure 13: Multiple Set-Points, Stopping Between Moves

I

In this example, controlword bits 9 (Change of Set-point) and 5 (Change Set Immediately) are 0. The motor comes to rest between moves.

Graph

Point

New Set-Point

Ready Bit

Set-Point

Acknowledge Bit

Target Reached

Bit

What’s Going On

Start 0 0 0 Drive waiting for set-point

A 0 -> 1 0 0

User tells drive a set-point is ready

B

C

D

1

1 -> 0

0

0 -> 1

1

1 -> 0

0

0

0

Drive acknowledges set-point, starts executing set-point

User pulls new set-point ready bit low

Drive pulls set-point ack bit low, indicating ready to receive another set-point

G

H

I

E

F

0 -> 1

1

1 -> 0

0

0

0

0 -> 1

1

1 -> 0

0

0

0

0

0

1

User tells drive another set-point is ready

Drive acknowledges set-point, buffers it as another set-point is still in progress

User pulls new set-point ready bit low

Drive pulls set-point ack bit low, starts executing new set-point as soon as old one is finished

The set-point is finished, no set-points in buffer, so Target Reached bit is set

Table 20: Multiple Set-Point Profile Position Move with Stopping Between Moves

63

920-0025 Rev J

3/4/2015

CANopen User Manual

PROFILE POSITION MODE, Set of Set Points

Actual

Speed

0

t

New Set Point

Ready Bit(4)

0

t

Set Point

Ack Bit(12)

0

t

Target Reached

Bit(10)

0

t

A B C D E F G H

Figure 14: Multiple Set-Points, Continuous Motion

I

In this example, controlword bit 9 (Change of Set-point) is 1 and controlword bit 5 (Change Set Immediately) is

0. The motor continues at the speed of the first set-point until is reaches the distance of the first set-point, then changes to the new set-point speed. The motion is continuous.

What’s Going On Graph

Point

Start

A

B

C

D

E

F

G

H

I

New Set-Point

Ready Bit

0

0 -> 1

Set-Point

Acknowledge Bit

0

0

1

1 -> 0

0

0 -> 1

1

1 -> 0

0 -> 1

1

1 -> 0

0

0

0

0 -> 1

1

1 -> 0

0

Target Reached

Bit

0

0

0

0

0

0

0

0

0

1

Drive waiting for set-point

User tells drive a set-point is ready

Drive acknowledges set-point, starts executing set-point

User pulls new set-point ready bit low

Drive pulls set point ack bit low, indicating ready to receive another set-point

User tells drive another set-point is ready

Drive acknowledges set-point, buffers it, as another set-point is still in progress

User pulls new set-point ready bit low

Drive pulls set-point ack bit low, starts executing new set-point as soon as the old one is finished

The set-point is finished, no set-points in buffer, so Target Reached bit is set

Table 21: Multiple Set-Point Profile Position Move with Continuous Motion

920-0025 Rev J

3/4/2015

64

PROFILE POSITION MODE, Set of Set Points

CANopen User Manual

Actual

Speed

0

t

New Set Point

Ready Bit(4)

0

t

Set Point

Ack Bit(12)

0

t

Target Reached

Bit(10)

0

t

A B C D E F G H I

Figure 15: Multiple Set-Points, Immediate Change in Motion

In this example, controlword bit 9 (Change of Set-point) is 1 and controlword bit 5 (Change Set Immediately) is 1.

The motor immediately changes to the new set-point speed without completing the first set-point. The motion is continuous.

Graph

Point

Start

A

B

C

D

E

New Set Point

Ready Bit

0

0 -> 1

1

Set-Point

Acknowledge Bit

0

0

0 -> 1

1 -> 0

0

0 -> 1

1

1 -> 0

0

Target Reached

Bit

0

0

0

0

0

0

F

G

H

I

1

1 -> 0

0

0

0 -> 1

1

1 -> 0

0

0

0

0

1

What’s Going On

Drive waiting for set-point

User tells drive a set-point is ready

Drive acknowledges set-point, starts executing set-point

User pulls new set-point ready bit low

Drive pulls set point ack bit low, indicating ready to receive another set-point

User tells drive another set-point is ready

Drive acknowledges set-point, immediately executes it, beginning transition to new set-point speed and position

User pulls new set-point ready bit low

Drive pulls set-point ack bit low

The set-point is finished, no set-points in buffer, so Target Reached bit is set

Table 22: Multi-Set-Point Profile Position Move with Immediate Change in Motion

65

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix E - Profile Velocity Mode

General Mode Description

Profile Velocity Mode is a relatively simple operating mode. Once the velocity, acceleration, and deceleration are set, the drive will either command the motor to accelerate to the running velocity according to the acceleration parameter, or to halt movement according to the deceleration parameter.

The figure below shows an example of Profile Velocity Mode. The top graph shows the actual speed of the motor, the middle graph the target speed value, and the bottom graph the halt bit in the controlword.

The table below explains how the halt bit and target velocity may be used together to affect motor speed. Between points B and C, the motor does not come to a complete stop, but decelerates according to the profile deceleration value starting at point B. When the halt bit transitions at point C, it accelerates immediately back to the target speed. At Point E, reducing the target speed to zero has the same effect as enabling the halt bit, since the drive is commanding the motor to move at zero speed.

It should be noted that both enabling the halt bit and setting the target velocity to zero keep torque applied to the motor. In order to allow the shaft to move freely, the NMT state must be put in the Drive Disabled state.

Enable Profile Velocity Mode

To enable the profile velocity mode, the value 0003 h operation OD entry, located at dictionary address 6060 h

.

must be written to the mode of

The mode of operation can be verified using OD 6061 h is updated when the current operation mode is accepted.

- mode of operation display - which

Set Running Parameters

Set the velocity, acceleration, and deceleration using OD entries 60FF h respectively.

, 6083 h

, and 6084 h

Enable Drive Operation

After power up or node reset, the drive is in disabled state. The value 0006 written to the control word OD entry, located at dictionary address 6040 h h

must be

. This will put the drive into “ready to switch on” state and is ready to enable drive operation. If the value 0006 written to the control word first, the drive operation can not be enabled.

h

is not

To enable drive operation, the value 010F h located at dictionary address 6040 h motion halted.

must be written to the controlword OD entry,

. This puts the drive into Operation Enabled state, with the

Starting/Stopping Motion

To start and stop motion, toggle the controlword halt bit (bit 8). When the halt bit is set to

0, motion will start or continue; when the halt bit is set to 1, motion will stop. The bit can be toggled by writing 010F h

and 000F h

to controlword OD entry 6040 h

.

920-0025 Rev J

3/4/2015

66

CANopen User Manual

Figure 16: Profile Velocity Mode

Graph Point Target Speed

F

G

D

E

Start

A

B

C

0

V1

V1

V1

V1 -> V2

V2 -> 0

0

0 -> V1

Halt Bit

1

1 -> 0

0 -> 1

1 -> 0

0

0

0 -> 1

1

Drive command to Motor

Motor stopped

Motor accelerates to speed V1

Motor decelerates to stopped

Motor accelerates to V1

Motor accelerates from V1 to V2

Motor decelerates from V2 to 0

Motor remains stopped

Motor remains stopped

Table 23: Profile Velocity Mode Example

67

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix F - Homing Methods

Set Running Parameters

Set the homing and index velocities, acceleration/deceleration, offset and home sensor (if required) using OD entries 6099 h

, 609A h

, 607C h

, and 7001 h

respectively.

Note: It is important that the limit switch settings have been defined in ST Configurator or

Quick Tuner prior to using the CANopen Homing Mode.

Enable Homing Mode

To enable Homing Mode, the value 0006 located at dictionary address 6060 h h

must be written to the mode of operation OD entry,

. The mode of operation can be verified using OD 6061 of operation display - which is updated when the current operation mode is accepted.

h

- mode

After power up or node reset, the drive is in disabled state. The value 0006 to the control word OD entry, located at dictionary address 6040 h to switch on” state and is ready to enable drive operation. If the value 0006 control word first, the drive operation can not be enabled.

h h

must be written

. This will put the drive into “ready

is not written to the

To put the drive into Operation Enabled Mode, write 000F h

to the controlword OD entry, located at dictionary address 6040 h

.

Starting the Homing Procedure

Set the Homing Method required using OD entry 6098 h

. To start the homing procedure, bit 4 of the controlword OD entry located at dictionary address 6040 h

, must transition from 0 to 1. The status of the homing procedure can be monitored using the statusword OD entry 6041 h

.

Homing Method Diagrams

Homing Method 1

Homes to the first index CCW after the CW limit switch is reached.

920-0025 Rev J

3/4/2015

68

Homing Method 2

Homes to the first index CW after the CCW limit switch is reached.

CANopen User Manual

Homing Method 3

Homes to the first index CW after the positive home switch changes state; the initial direction of motion is dependent on the state of the home switch.

69

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 4

Homes to the first index CCW after the positive home switch changes state; the initial direction of motion is dependent on the state of the home switch.

Homing Method 5

Homes to the first index CCW after the negative home switch changes state; the initial direction of motion is dependent on the state of the home switch.

920-0025 Rev J

3/4/2015

70

CANopen User Manual

Homing Method 6

Homes to the first index CW after the negative home switch changes state; the initial direction of motion is dependent on the state of the home switch.

Homing Method 7

Starts moving CCW (or CW if the home switch is active), and homes to the first index CW of the home switch transition.

71

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 8

Starts moving CCW (or CW if the home switch is active), and homes to the first index

CCW of the home switch transition.

Homing Method 9

Starts moving CCW and homes to the first index CW of the home switch transition.

920-0025 Rev J

3/4/2015

72

CANopen User Manual

Homing Method 10

Starts moving CCW and homes to the first index CCW of the home switch transition.

Homing Method 11

Starts moving CW (or CCW if the home switch is active), and homes to the first index

CCW of the home switch transition.

73

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 12

Starts moving CW (or CCW if the home switch is active), and homes to the first index CW of the home switch transition.

Homing Method 13

Starts moving CW and homes to the first index CCW of the home switch transition.

920-0025 Rev J

3/4/2015

74

CANopen User Manual

Homing Method 14

Starts moving CW and homes to the first index CW of the home switch transition shown above.

Homing Methods 15 and 16

Homing Methods 15 and 16 are reserved for future expansion.

75

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 17

Homes to the CW limit switch.

Homing Method 18

Homes to the CCW limit switch.

920-0025 Rev J

3/4/2015

76

Homing Methods 19 and 20

Home to the home switch transition.

CANopen User Manual

77

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Methods 21 and 22

Home to the home switch transition.

920-0025 Rev J

3/4/2015

78

CANopen User Manual

Homing Methods 23 and 24

Home to the home switch transition shown below, and “bounce off” the CCW limit, if required.

79

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Methods 25 and 26

Home to the home switch transition shown below, and “bounce off” the CCW limit, if required.

920-0025 Rev J

3/4/2015

80

CANopen User Manual

Homing Methods 27 and 28

Home to the home switch transition shown below, and “bounce off” the CW limit, if required.

81

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Methods 29 and 30

Home to the home switch transition shown below, and “bounce off” the CW limit, if required.

920-0025 Rev J

3/4/2015

82

Homing Methods 31 and 32

Homing Methods 31 and 32 are reserved for future expansion.

CANopen User Manual

Homing Method 33

Homes to the next index pulse CW from the current position. If the CW limit is hit, the drive resets to the CCW limit, and continues searching for a limit in the CW direction.

83

920-0025 Rev J

3/4/2015

CANopen User Manual

Homing Method 34

Homes to the next index pulse CCW from the current position. If the CCW limit is hit, the drive resets to the CW limit, and continues searching for a limit in the CCW direction.

Homing Method 35

Takes the current position to be the home position; the Home Offset value is ignored, and the motor does not move at all.

920-0025 Rev J

3/4/2015

84

CANopen User Manual

Appendix G - Profile Torque Mode (Servo Only)

General Mode Description

Profile Torque mode is a servo-control torque operating mode. It requires knowledge of the

Torque Constant of the motor in Nm/A. This information can be found in the motor print.

Enable Profile Torque Mode

To enable Profile Torque Mode, the value 0004 h

OD entry, located at dictionary address 6060 h

.

must be written to the mode of operation

The mode of operation can be verified using OD 6061 h is updated when the current operation mode is accepted.

- mode of operation display - which

Set Running Parameters

To operate in Profile Torque mode, the following parameters must be set:

Parameter

Name

Torque Constant

Object Dictionary

Entry

7005 h

Target Torque

Torque Slope

6071 h

6087 h

Length (in bytes)

2

2

4

Units m • Nm a m • Nm m • Nm sec

Description

Motor paramter, found on the motor print

Torque to be applied to the motor

Rate at which to ramp torque to new target

Figure 17: Set Running Parameters

Enable Drive Operation

After power up or node reset, the drive is in disabled state. The value 0006 written to the control word OD entry, located at dictionary address 6040 h h

must be

. This will put the drive into “ready to switch on” state and is ready to enable drive operation. If the value 0006 written to the control word first, the drive operation can not be enabled.

h

is not

To enable drive operation, the value 000F h located at dictionary address 6040 h no torque applied.

must be written to the controlword OD entry,

. This puts the drive into the Operation Enabled state with

It should be noted that both enabling the halt bit and setting the target torque to zero will ramp down the torque applied to the motor according to the torque slope. At the end of the slope no torque will be applied to the motor, allowing the shaft to move freely.

85

920-0025 Rev J

3/4/2015

CANopen User Manual

Starting/Stopping Torque

To start and stop motion, toggle the controlword halt bit (bit 8). When the halt bit is set to

0, motion will start or continue; when the halt bit is set to 1, motion will stop. The bit can be toggled by writing 010F h

and 000F h

to controlword OD entry 6040 h

.

Parameter Calculations - Example

An application requires a torque of 50 oz-in. and a torque slope of 25 oz-in/sec. The motor print lists the Torque Constant of the motor as 0.07Nm/A. The Nm/A constant given must first be converted into mNm/A, as required by the Torque Constant OD entry. The formula used for this is:

0.07

Nm

• 1000 mA

= 70 m • Nm

A A A

As the drive works primarily in Nm, the desired 50 oz-in of torque must also be converted into Nm, using the conversion factor 141.6 oz-in/Nm.

50 oz-in

= 0.3531 Nm

Now, the resultant torque of 0.3531Nm must be converted into mNm, as required by the

Target Torque OD entry.

The result is a value of 353 mNm, rounded to the nearest whole number, for the Target

Torque OD Entry.

Finally, the desired slope must be converted from the given units of oz-in/sec into the required units of mNm/sec.

(

25 oz-in

) * (

1 Nm

141.6 oz-in

) * (

1000 m•Nm

1 Nm

)

= 176.55 m•Nm

Rounding to the nearest whole number results in a Torque Slope of 177 mNm/sec.

Current Verification - Example

It is important to check that the current required of the drive is within the limits of the servo amplifier. The drive being used, for example, has a continuous rating of 7 amps, and a peak current of 14 amps, which may be held continuously for 2 seconds. This means that a current of 7 amps can be held indefinitely, and currents between 7 and 14 amps may be used in short

920-0025 Rev J

3/4/2015

86

CANopen User Manual bursts.

Using the target torque and torque constant from the example above the current draw can be checked, as shown:

0.3531 Nm

= 5.0443 A

The resultant current, 5.0443A, is below the 7A continuous current rating of the drive, and well below the peak current rating of 14A. It is possible for the drive to maintain a current of 7A indefinitely, and peak up to 14A for up to two seconds continuously. Values between 7A and

14A may be held proportionally long.

For more information: see CiA 402 - 2, Profile Torque Mode

Graph Point

Start

C

D

A

B

E

Figure 18: Profile Torque Mode

Target Torque

T1

T1

T1

T1 -> T2

T2 -> 0

0

Halt Bit

0

0

0 -> 1

1 -> 0

0

0

Drive command to Motor

Ramp torque to T1

Maintain torque at T1

Ramp torque to zero

Ramp torque to T2

Ramp torque to zero

Maintain torque at zero

Table 24: Profile Torque Mode Example

87

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix H - Q Program Mode

General Mode Description

In order to expand the functionality of Applied Motion Products CANopen drives, the Q programming language may be used to execute complex motion profiles that may not be possible within the scope of CiA 402. The Q program must be written and pre-loaded into the

CANopen drive using Q Programmer (v1.3.5 or later).

Q Programs may also access and manipulate the CANopen General Purpose registers for use in stored programs. The section above on General Purpose Registers has a chart to convert from the OD entry to the Q address. See object 0x4000.

Loading a Q Program

As with ST Configurator and Quick Tuner, where the drive must be powered up with the

RS-232 port connected, Q Programmer must be running for the CANopen drive to delay the normal boot-up procedure. The CAN boot-up will be resumed by closing the Q Programmer application, or by power-cycling the drive with the RS-232 port disconnected. Once Q Programmer is in control of the drive, it may be used in the same way as any other Applied Motion

Products Q drive. See the Q Command Reference for more information on Q programming.

Normal Q Program Execution

To execute a stored Q program on a single drive, a value of -1 (FF mode of operation OD entry, located at dictionary address 6060 be verified using OD entry 6061 h h h

) must be written to the

. The mode of operation can rent operation mode is accepted.

- mode of operation display - which is updated when the cur-

Next, the desired Q segment number, 1-12, must be written to the Q Segment Number register, located at address 7007 h

.

After power up or node reset, the drive is in disabled state. The value 0006 written to the control word OD entry, located at dictionary address 6040 h h

must be

. This will put the drive into “ready to switch on” state and is ready to enable drive operation. If the value 0006 written to the control word first, the drive operation can not be enabled.

h

is not

To enable drive operation, a value of 000F h try, located at dictionary address 6040 h ready to run the Q program.

must be written to the controlword OD en-

. This puts the drive into Operation Enabled state and

To run the selected Q program, a value of 001F of the Q Program start bit (bit 4) in the controlword.

h

must be written to the controlword. The

Q program will then run to completion. The Q program may be re-executed by a 0->1 transition

To halt execution of a Q program, the halt bit (bit 8) of the controlword must be set to 1.

The Q program will halt immediately and start from the beginning the next time a 0->1 transition is seen on the Q Program start bit after the halt bit has been cleared.

920-0025 Rev J

3/4/2015

88

CANopen User Manual

Synchronous Q Program Execution

To execute a stored Q program on a single drive, a value of -2 (FE mode of operation OD entry, located at dictionary address 6060 be verified using OD entry 6061 h h h

) must be written to the

. The mode of operation can rent operation mode is accepted.

- mode of operation display - which is updated when the cur-

Next, the desired Q segment number, 1-12, must be written to the Q Segment Number register, located at address 7007 controlword OD entry 6040 h

.

h

. To enable operation 001F h

must be written to the

After power up or node reset, the drive is in disabled state. The value 0006 written to the control word OD entry, located at dictionary address 6040 h h

must be

. This will put the drive into “ready to switch on” state and is ready to enable drive operation. If the value 0006 written to the control word first, the drive operation can not be enabled.

h

is not

To enable drive operation, a value of 000F h located at dictionary address 6040 h ready to run the Q program.

must be written to the controlword OD entry,

. This puts the drive into Operation Enabled state and

To run the drive based on the SYNC pulse, the pulse must be set in the COB-ID SYNC register located at OD entry 1005 h

. A standard value for the SYNC pulse is 80 h

, but any unused COB-ID may be used. Refer to CiA301 for a list of reserved COB-IDs.

Once the SYNC pulse has been set, and the desired Q segment has been set, the drive will execute the Q segment every time it receives a SYNC pulse. In this way, multiple drives may be instructed to start a Q program with a single, network-wide instruction.

To halt execution of a Q program, set the halt bit (bit 8) of the controlword to 1. The Q program will halt immediately, and start from the beginning the next time a SYNC pulse is sent after the halt bit has been cleared.

More Information

For more information: see CiA 301, COB-IDs

For more information on Q programming: see the Host Command Reference.

89

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix I - Understanding NMT States

Under normal operating conditions, a Network Management (NMT) state machine will power up into an Initialization state, send out a boot-up packet, move into a Pre-Operational state, and start sending out heartbeats with the Pre-Operational state status code.

NMT Mode

Initialization/Node Reset

Pre-Operational

Operational

Stopped

NMT Control

Command

129

128

1

2

NMT Status Code

(Heartbeat)

0

127

5

4

Table 25: Understanding NMT States

Building a CANopen NMT Data Frame - Example

This example will show how to send a broadcast message to all CANopen nodes to put them into an operational NMT state. The COB-ID for NMT commands is always 0. This ensures that an NMT command has the highest priority on the bus and will never be preempted, except by another node sending out an NMT command.

The first data byte of an NMT command contains the NMT Control Command, which is 1

(Operational) in this case.

The second data byte contains either the Node-ID of a target Node, or, in the event that the NMT master is requesting that all nodes change their NMT Mode, a zero. To send a broadcast message, a zero is used.The completed data frame is below.

COB ID

0

Data Length

2

Data Byte 0

1

Data Byte 1

0

Table 26: Example - NMT Data Frame

920-0025 Rev J

3/4/2015

90

CANopen User Manual

Appendix J - SDO and PDO Access

Enable SDO Use

To enable Service Data Object (SDO) use, the NMT state must be either Pre-Operational or Operational. Send an NMT message to put the node into either state. When completed, the heartbeat should return either 127 (Pre-Operational) or 5 (Operational). The drive is now ready to read and/or write all OD entries.

Building an SDO Read Data Frame - Example

This example will show how to read the heartbeat time of node 2E must be sent to the drive. The default COB-ID for SDO requests is 600 the Node-ID of 2E h byte is reserved for the control byte, which is always 40 h h h

. An SDO read request

(see CiA 301), plus

. This results in a specific COB-ID for this message of 62E h

. The first data

for an SDO Read. The next 2 bytes are reserved for the OD entry address in Little Endian format. To obtain OD entry 1017, we stuff data byte 1 with 17 h

and data byte 2 with 10 h

. Data byte 3 is reserved for the sub-index of the OD entry, which in this case is zero. The last 4 bytes are unused for SDO reads. The whole message appears as:

COB-ID Data Length Data Byte 0

62E h

8 40 h

1

17 h

2

10 h

3

00 h

4

00 h

5

00 h

6

00 h

7

00 h

DATA BYTES

Table 27: Enable SDO Use

The drive will respond with a message with COB-ID 580 h

+ Node ID, or 5AE h

.

For more information: see CiA 301, SDO protocol

PDO Access

Enable PDO Use

To enable Process Data Object (PDO) use, the NMT state must be set to Operational and an NMT message sent to enable the Operational state. When completed, the heartbeat should return a 5. The drive is now ready to receive RPDOs, and will transmit TPDOs depending on the Transmission Type.

91

920-0025 Rev J

3/4/2015

CANopen User Manual

TPDO Transmission Types

There are several triggering options for Transmit PDOs, which are controlled by OD entries 1800 h

to 1803 h

, and their associated sub-entries.

Possible TPDO Triggers

SYNC pulse - Node will send TPDO after receiving one or multiple SYNC pulses

Event/Timer - Node will issue TPDO based on an internal event or timer

Remote Request - Node will send TPDO after a remote request

0

1

2-240

254-255

PDO transmitted on the next SYNC pulse after the statusword has changed

PDO transmitted on every SYNC pulse

PDO transmitted on every n SYNC pulses

PDO transmitted every time statusword changes, or the Event Timer has expired

Table 28: TPDO Transmission Types

PDO Mapping

The Applied Motion Products CANopen allows you to map objects to PDOs to allow for the transfer of application data more efficiently. By using the PDO mapping, the user can map multiple mappable Objects to a PDO, (max length for a PDO is 8 bytes). The following section describes the process of a TPDO mapped to several objects.

TPDO Index

1A01 h

1A01 h

1A01 h

Sub-Index

00 h

01 h

02 h

Mapped To Index

6041 h

700A h

# Bytes

2

4

Table 29: PDO Mapping

920-0025 Rev J

3/4/2015

92

CANopen User Manual

PDO Mapping Procedure

Step

5

6

7

8

9

3

4

1

2

PDO Mapping Example 1: Mapping StatusWord and Position_Actual_Value to TPDO2

Action Index

Return back “PreOperation“ State

Turn off TPDO2

Set the number of Mapped objects to 0

1801 h

1A01 h

Map StatusWord to TPDO2 mapped object1

Map Position_actual_value to TPDO2 mapped object2 1A01 h

Set the number of Mapped objects to 2

Turn On TPDO2

1A01 h

1A01 h

1801 h

Sub

01 h

00 h

01 h

02 h

00 h

01 h

Bytes

2

4

Value

80000280 h

00 h

60410010 h

700A0020 h

02 h

00000280 h

Table 30: PDO Mapping Example

Default Mapping Example - Consumer PDO 2

Index

1601h

SubIndex

0 = 2 (# of SubIndex Entries

1

2

= 2 Byte ControlWord (6040h)

= 4 Byte Target Position (607A)

RPDO 2

BYTES 0 - 1

ControlWord

003Fh

BYTES 2 - 5

Target Position (Position) Data

00 00 00 00

BYTE 6 - 7

Unused abs

/rel

0 1 1 1 1 1

F = Operation

Enabled new set-point change set immed.

Transition Bit

MUST be reset to zero between set-points

ControlWord = 03Fh

Move to Absolute SetPoint

ControlWord = 05Fh

Move to Relative SetPoint

ControlWord = 00Fh

Reset New Set-Point Bit to Prepare for Next Move

Figure 19: PDO Mapping Showing the Default Mapping for RPDO2

93

920-0025 Rev J

3/4/2015

CANopen User Manual

Default PDO Mapping - Stepper

PDO

Name

TPDO1

TPDO2

TPDO3

TPDO4

RPDO1

RPDO2

RPDO3

RPDO4

First Mapped

Parameter

Statusword

Statusword

Statusword

Input Status

Controlword

Controlword

Controlword

Output State

OD Entry # Bytes Second Mapped

Parameter

6041 h

6041 h

6041 h

7003 h

6040 h

6040 h

6040

60FE h h

2

2

2

1

2

1

2

2 Target Position

Target Velocity

Target Distance

Target Velocity

Table 31: PDO Mapping - Stepper

OD Entry # Bytes # Bytes

Total

6064 h

606C h

607A h

60FF h

4

2

2

4

2

6

4

1

4

1

2

6

Default PDO Mapping - Servo

PDO

Name

TPDO1

TPDO2

TPDO3

TPDO4

RPDO1

RPDO2

RPDO3

RPDO4

First Mapped

Parameter

Statusword

Statusword

Statusword

Input Status

Controlword

Controlword

Controlword

Output State

OD Entry # Bytes Second Mapped

Parameter

6041 h

6041 h

6041 h

7003 h

6040 h

6040 h

6040 h

60FE h

2

1

2

2

2

1

2

2 Actual Position

Actual Velocity

Target Distance

Target Velocity

Table 32: PDO Mapping - Servo

OD Entry # Bytes # Bytes

Total

700A h

7009 h

607A h

60FF h

2

4

2

4

4

1

2

6

4

1

2

6

920-0025 Rev J

3/4/2015

94

CANopen User Manual

PDO COB-ID

Because PDOs are directly mapped to OD entries, no overhead is required when working with them. RPDOs may be sent directly with the COB-ID being the default RPDO COB-ID plus the Node-ID. For example, the default RPDO1 COB-ID is 200

RPDO1 to Node 2E h

would be 200 h

+ 02E h

= 22E h

. Therefore, the COB-ID for

. The default COB-IDs for each PDO may be found in CiA 301 on page 78.

h

Building an RPDO Data Frame - Example

This example will show how to set the controlword of node 2E

The paragraph above shows how the COB-ID of 22E h h

to 7E4F h

using RPDO1.

was determined. The mapping table above that shows that the first two message bytes will contain the controlword. According to

Endianness, the first data byte will be 4F then read: h and the second will be 7E h

. The entire message will

COB ID

22E h

Data Length

2

Data Byte 0

4F h

Data Byte 1

7E h

Table 33: PDO COB-IDs

For more information on PDO mapping: see CiA 402-3

For more information on the PDO protocol: see CiA 301

95

920-0025 Rev J

3/4/2015

CANopen User Manual

Appendix K - Operation Mode Specific Control and Status Word

Control Word of Profile Position Mode

Bit #

4

5

6

8

Name

New Set

Point

Change

Set Point

Immediately

Abs/Rel

Halt

Value

0

1

0

1

0

1

0

1

0

Description

Toggle this bit from 0->1 to clock in a new set point

Positioning shall be completed (target reached) before the next one gets started

Next positioning shall be started immediately

Target position shall be an absolute value

Target position shall be a relative value

Positioning shall be executed or continued

Axis shall be stopped

The previous set-point will be completed and the motor will come to rest before a new set point is processed

9

Change of

Set Point

1

The motor will continue at the speed commanded by the previous set point until it has reached the position commanded by the previous set point, then transition to the speed of the new set point

Status Word of Profile Position Mode

Bit #

10

12

13

Name

Target

Reached

Set Point Ack

Following

Error

Value

0

1

0

1

0

1

Description

Halt (Bit 8 in controlword) = 0: Target position not reached

Halt (Bit 8 in controlword) = 1: Axis decelerates

Halt (Bit 8 in controlword) = 0: Target position reached

Halt (Bit 8 in controlword) = 1: Velocity of axis is 0

Previous set point already processed, waiting for new set point

Previous set point still in process, set point overwriting shall be accepted

No following error

Following error

920-0025 Rev J

3/4/2015

96

CANopen User Manual

Control Word of Profile Velocity Mode

Bit #

8

Name

Halt

Value

0

1

Description

The motion shall be executed or continued

Axis shall be stopped

Status Word of Profile Velocity Mode

Bit #

10

12

Name

Target

Reached

Speed

Value

0

1

0

1

Description

Halt (Bit 8 in controlword) = 0: Target velocity not reached

Halt (Bit 8 in controlword) = 1: Axis decelerates

Halt (Bit 8 in controlword) = 0: Target velocity reached

Halt (Bit 8 in controlword) = 1: Velocity of axis is 0

Speed is not equal to 0

Speed is equal 0

Control Word of Homing Mode

Bit #

4

8

Name

Homing

Operation

Start

Halt

Value

0

1

0

1

Do not start homing procedure

Description

Start or continue homing procedure

Enable bit 4

Stop axis

Status Word of Homing Mode

Bit #

10

12

Name

Target

Reached

Homing

Attained

13 Homing Error

Value

0

1

0

1

0

1

Description

Halt (Bit 8 in controlword) = 0: Home position not reached

Halt (Bit 8 in controlword) = 1: Axis decelerates

Halt (Bit 8 in controlword) = 0: Home position reached

Halt (Bit 8 in controlword) = 1: Velocity of axis is 0

Homing Mode not yet complete

Homing Mode carried out successfully

No homing error

Homing error

97

920-0025 Rev J

3/4/2015

CANopen User Manual

Control Word of Q Mode

Bit #

4

8

Name

Q Program

Start

Halt

Value

0

1

0

1

Status Word of Q Mode

Bit # Name Value

0

10

Target

Reached

1

Description

Toggle this bit from 0->1 to run Q program

Enable bit 4

Stop axis

Description

Halt (Bit 8 in controlword) = 0: Q program running

Halt (Bit 8 in controlword) = 1: Axis decelerates

Halt (Bit 8 in controlword) = 0: Q program finishes or not started

Halt (Bit 8 in controlword) = 1: Velocity of axis is 0

920-0025 Rev J

3/4/2015

98

CANopen User Manual

Appendix L – Example Programs

Profile Position Mode

**** Enable Motor Power - CiA 402 State Machine ****

ID

$0603

$0603

$0603

DLC Data

$8 $2B $40 $60 $00 $06 $00 $00 $00 ‘Ready to Switch on

$8 $2B $40 $60 $00 $07 $00 $00 $00 ‘Switched on

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Operation Enabled

**** Set to Profile Position Mode ****

$0603 $8 $2F $60 $60 $00 $01 $00 $00 $00 ‘Set to Profile Position Mode

**** Set Motion Parameters ****

$0603

$0603

$0603

$8 $23 $81 $60 $00 $F0 $00 $00 $00 ‘Set Profile Velocity to 1 rps

$8 $23 $83 $60 $00 $58 $02 $00 $00 ‘Set Acceleration to 100 rps/s

$8 $23 $84 $60 $00 $58 $02 $00 $00 ‘Set Deceleration to 100 rps/s

Single Move Absolute

$0603

$0603

$0603

$8 $23 $7A $60 $00 $40 $0D $03 $00 ‘Set Target Position to 200000 steps

$8 $2B $40 $60 $00 $1F $00 $00 $00 ‘Set New Set Point Bit to 1

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Clear New Set Point Bit

Single Move Relative

$0603

$0603

$0603

$8 $23 $7A $60 $00 $40 $0D $03 $00 ‘Set Target Position to 200000 steps

$8 $2B $40 $60 $00 $5F $00 $00 $00 ‘Set New Set Point Bit to 1

$8 $2B $40 $60 $00 $4F $00 $00 $00 ‘Clear New Set Point Bit

Multiple Move, Stopping between Moves

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$8 $23 $81 $60 $00 $B0 $04 $00 $00 ‘Set Profile Velocity to 5 rps

$8 $23 $7A $60 $00 $40 $0D $03 $00 ‘Set Target Position to 200000 steps

$8

$8

$8

$8

$8

$8

$2B $40 $60 $00 $5F $00 $00 $00

$2B $40 $60 $00 $4F $00 $00 $00

$23 $81 $60 $00 $60 $09 $00 $00

$23 $7A $60 $00 $40 $0D $03 $00

$2B $40 $60 $00 $5F $00 $00 $00

$2B $40 $60 $00 $4F $00 $00 $00

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

‘Set Profile Velocity to 10 rps

‘Set Target Position to 600000 steps

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

Multiple Move, Continuous Motion

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$8 $23 $81 $60 $00 $B0 $04 $00 $00 ‘Set Profile Velocity to 5 rps

$8 $23 $7A $60 $00 $40 $0D $03 $00 ‘Set Target Position to 200000 steps

$8

$8

$8

$8

$8

$8

$2B $40 $60 $00 $5F $02 $00 $00

$2B $40 $60 $00 $4F $02 $00 $00

$23 $81 $60 $00 $60 $09 $00 $00

$23 $7A $60 $00 $40 $0D $03 $00

$2B $40 $60 $00 $5F $02 $00 $00

$2B $40 $60 $00 $4F $02 $00 $00

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

‘Set Profile Velocity to 10 rps

‘Set Target Position to 600000 steps

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

99

920-0025 Rev J

3/4/2015

CANopen User Manual

Multiple Move, Immediate Change in Motion

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$0603

$8 $23 $81 $60 $00 $B0 $04 $00 $00 ‘Set Profile Velocity to 5 rps

$8 $23 $7A $60 $00 $40 $0D $03 $00 ‘Set Target Position to 200000 steps

$8

$8

$8

$8

$8

$8

$2B $40 $60 $00 $7F $02 $00 $00

$2B $40 $60 $00 $6F $02 $00 $00

$23 $81 $60 $00 $60 $09 $00 $00

$23 $7A $60 $00 $40 $0D $03 $00

$2B $40 $60 $00 $7F $02 $00 $00

$2B $40 $60 $00 $6F $02 $00 $00

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

‘Set Profile Velocity to 10 rps

‘Set Target Position to 600000 steps

‘Set New Set Point Bit to 1

‘Clear New Set Point Bit

Profile Velocity Mode

**** Enable Motor Power - CiA 402 State Machine ****

ID

$0603

$0603

$0603

DLC Data

$8 $2B $40 $60 $00 $06 $00 $00 $00 ‘Ready to Switch on

$8 $2B $40 $60 $00 $07 $00 $00 $00 ‘Switched on

$8 $2B $40 $60 $00 $0F $01 $00 $00 ‘Operation Enabled; Motion Halted

**** Set to Profile Velocity Mode ****

$0603 $8 $2F $60 $60 $00 $03 $00 $00 $00 ‘Set to Profile Velocity Mode

**** Set Motion Parameters ****

$0603

$0603

$0603

$8 $23 $FF $60 $00 $F0 $00 $00 $00 ‘Set Target Velocity to 1 rps

$8 $23 $83 $60 $00 $58 $02 $00 $00 ‘Set Acceleration to 100 rps/s

$8 $23 $84 $60 $00 $58 $02 $00 $00 ‘Set Deceleration to 100 rps/s

**** Start/Stop Motion ****

$0603

$0603

$0603

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Motion Starts

$8 $23 $FF $60 $00 $60 $09 $00 $00 ‘Change Target Velocity to 10 rps

$8 $2B $40 $60 $00 $0F $01 $00 $00 ‘Motion Halts

Homing Mode

**** Enable Motor Power - CiA 402 State Machine ****

ID

$0603

$0603

$0603

DLC Data

$8 $2B $40 $60 $00 $06 $00 $00 $00 ‘Ready to Switch on

$8 $2B $40 $60 $00 $07 $00 $00 $00 ‘Switched on

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Operation Enabled

**** Set to Homing Mode ****

$0603 $8 $2F $60 $60 $00 $06 $00 $00 $00 ‘Set to Homing Mode

$0603 $8 $2F $98 $60 $00 $13 $00 $00 $00 ‘Set Homing Method to 19

**** Set Motion Parameters ****

$0603 $8 $23 $9A $60 $00 $58 $02 $00 $00 ‘Set Homing Acceleration to 100rps/s

$0603 $8 $23 $99 $60 $01 $F0 $00 $00 $00 ‘Set Homing Velocity (Search for Switch) to 1rps

$0603 $8 $23 $99 $60 $02 $78 $00 $00 $00 ‘Set Index Velocity (Search for Index or Zero) to 0.5rps

$0603 $8 $23 $7C $60 $00 $40 $9C $00 $00 ‘Set Homing Offset to 40000 Steps

$0603 $8 $2F $01 $70 $00 $03 $00 $00 $00 ‘Set Homing Switch to Input 3

**** Start/Stop Homing ****

$0603 $8 $2B $40 $60 $00 $1F $00 $00 $00 ‘Homing Starts

$0603 $8 $2B $40 $60 $00 $1F $01 $00 $00 ‘Homing Stops

920-0025 Rev J

3/4/2015

100

Normal Q Mode

**** Enable Motor Power - CiA 402 State Machine ****

ID

$0603

$0603

$0603

DLC Data

$8 $2B $40 $60 $00 $06 $00 $00 $00 ‘Ready to Switch on

$8 $2B $40 $60 $00 $07 $00 $00 $00 ‘Switched on

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Operation Enabled

**** Set to Normal Q Mode ****

$0603

$0603

$8

$8

$2F $60 $60 $00 $FF $00 $00 $00

$2F $07 $70 $00 $01 $00 $00 $00

‘Set to Normal Q Mode

‘Set Q Segment Number to 1

**** Start/Stop Q Program ****

$0603

$0603

$8

$8

$2B $40 $60 $00 $1F $00 $00 $00

$2B $40 $60 $00 $1F $01 $00 $00

‘Q Program Starts

‘Q Program Halts

Sync Q Mode

**** Enable Motor Power - CiA 402 State Machine ****

ID

$0603

$0603

$0603

DLC Data

$8 $2B $40 $60 $00 $06 $00 $00 $00 ‘Ready to Switch on

$8 $2B $40 $60 $00 $07 $00 $00 $00 ‘Switched on

$8 $2B $40 $60 $00 $0F $00 $00 $00 ‘Operation Enabled

**** Set to Sync Q Mode ****

$0603

$0603

$0603

$8 $2F $60 $60 $00 $FE $00 $00 $00 ‘Set to Sync Q Mode

$8 $2F $07 $70 $00 $01 $00 $00 $00 ‘Set Q Segment Number to 1

$8 $23 $05 $10 $00 $80 $00 $00 $00 ‘Set Sync Pulse to 0x80

**** Start/Stop Q Program ****

$80

$0603

$0 ‘Q Program Starts

$8 $2B $40 $60 $00 $0F $01 $00 $00 ‘Q Program Halts

CANopen User Manual

PDO Mapping

****Mapping TPDO2 ****

$0000

$0603

$0603

$0603

$0603

$0603

$0603

$2 $80 $03 ‘Return back to “PreOperation” Mode

$8 $23 $01 $18 $01 $80 $02 $00 $80 ‘Turn off the TPDO2

$8

$8

$8

$8

$8

$2F $01 $1A $00 $00 $00 $00 $00

$23 $01 $1A $01 $10 $00 $41 $61

$23 $01 $1A $02 $20 $00 $0A $70

$2F $01 $1A $00 $02 $00 $00 $00

$23 $01 $18 $01 $80 $02 $00 $00

‘Set Number of Mapped objects to zero

‘Map object1(0x6041) to TPDO2 subindex1.

‘Map object2(0x700A) to TPDO2 subindex2.

‘Set Number of total Mapped objects to Two

‘Turn on the TPDO2

Applied Motion Products, Inc.

404 Westridge Drive Watsonville, CA 95076

Tel (831) 761-6555 (800) 525-1609 Fax (831) 761-6544

101

920-0025 Rev J

3/4/2015

Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement

Table of contents