Will1/Will1-B Servo Drive

Fieldbus
Programming Manual
Revision 1.0

1Table of Contents
Table of Contents ........................................................................................................... 2
1. About this manual .................................................................................................. 7
1.1 Revision History ............................................................................................. 7
1.2 Copyright Notice ............................................................................................ 7
1.3 Trademarks .................................................................................................... 7
1.4 Disclaimer ...................................................................................................... 8
1.5 Contact Us ..................................................................................................... 9
2. Introduction.......................................................................................................... 10
2.1 Abbreviations and terms .............................................................................. 10
2.2 Operation modes ......................................................................................... 11
2.3 Standard Servo Drive Objects (0x60nn) ........................................................ 12
2.4 Format of Object Dictionary......................................................................... 20
3. General Entries ..................................................................................................... 21
3.1 Drive Error ................................................................................................... 21
Object 0x6007: Abort connection option code.............................................. 21
Object 0x603F: Error code ............................................................................ 22
3.2 Drive Data .................................................................................................... 23
Object 0x6502: Supported drive modes ........................................................ 23
4. Device Control ...................................................................................................... 25
4.1 General ........................................................................................................ 25
4.2 Finite State Machine and States ................................................................... 25
4.2.1 Diagram of Power Drive System Finite State Machine .......................... 26
4.2.2 Description of the states of finite state machine .................................. 27
4.2.3 Descriptions of the transitions of finite state machine ......................... 28
4.3 Detailed Objects specifications .................................................................... 30
4.3.1 Object 0x6040: Controlword ................................................................ 31
4.3.2 Object 0x6041: Statusword .................................................................. 33
4.3.3 Object 0x605A: Quick stop option code ............................................. 37
4.3.4 Object 0x605B: Shutdown option code ................................................ 38
4.3.5 Object 0x605C: Disable operation option code .................................... 39
4.3.6 Object 0x605D: Halt option code ......................................................... 40
4.3.7 Object 0x605E: Fault reaction option code........................................... 41
5. Modes of Operation ............................................................................................. 42
5.1 Functional Description ................................................................................. 42
5.2 Objects......................................................................................................... 43
2

6.

7.

Object 0x6060: Modes of operation ............................................................. 43
Object 0x6061: Modes of operation display .................................................. 45
Profile Position Mode ........................................................................................... 46
6.1 General information..................................................................................... 46
6.2 Structure of Controlword and Statusword ................................................... 47
6.2.1 Controlword of the Profile Position Mode. ........................................... 47
6.2.2 Statusword of the Profile Position Mode .............................................. 48
6.3 Functional Descriptions................................................................................ 49
6.3.1 General ................................................................................................ 49
6.3.2 Single Set-point & Set of Set-point ....................................................... 51
6.3.3 Buffered Set-point ................................................................................ 53
6.4 Objects......................................................................................................... 55
Object 0x607A: Target position ..................................................................... 55
Object 0x607B: Position range limit .............................................................. 56
Object 0x607D: Software position limit......................................................... 58
Object 0x607F: Max profile velocity .............................................................. 59
Object 0x6080: Max motor speed ................................................................. 60
Object 0x6081: Profile velocity ..................................................................... 61
Object 0x6083: Profile acceleration .............................................................. 62
Object 0x6084: Profile deceleration .............................................................. 63
Object 0x6085: Quick stop deceleration ....................................................... 64
Position Control Function ..................................................................................... 65
7.1 General information..................................................................................... 65
7.2 Objects......................................................................................................... 67
Object 0x6062: Position demand value ......................................................... 67
Object 0x6063: Position actual internal value ............................................... 68
Object 0x6064: Position actual value ............................................................ 69
Object 0x6065: Following error window ....................................................... 70
Object 0x6066: Following error time out ...................................................... 71
Object 0x6067: Position window................................................................... 72
Object 0x6068: Position window time........................................................... 74
Object 0x60C2: Interpolation time period ..................................................... 75
Object 0x60F4: Following error actual value ................................................. 76
Object 0x60FC: Position demand internal value ............................................ 77
3

8.

9.

Homing Mode ....................................................................................................... 78
8.1 General Information..................................................................................... 78
8.2 Structure of Controlword and Statusword ................................................... 79
8.2.1 Controlword of Homing Mode ............................................................. 79
8.2.2 Statusword of Homing Mode ............................................................... 80
8.3 Object .......................................................................................................... 81
Object 0x607C: Home offset ......................................................................... 81
Object 0x6098: Homing method ................................................................... 83
Object 0x60E3: Supported homing methods................................................. 84
Object 0x6099: Homing speeds..................................................................... 85
Object 0x609A: Homing acceleration ............................................................ 86
Object 0x3293: Hard stop current ................................................................. 87
Object 0x3294: Hard stop period .................................................................. 88
8.4 Functional Description ................................................................................. 89
8.5 CiA 402 Homing Methods ............................................................................ 90
8.5.1 By Limit Switch and Index Pulse ........................................................... 90
8.5.2 By Home Switch and Index Pulse .......................................................... 93
8.5.3 By Home Switch, Index Pulse, and Limit Switch .................................... 96
8.5.4 Method 15 to 16: Reserved. ............................................................... 104
8.5.5 By Limit Switch ................................................................................... 104
8.5.6 By Rising/Falling Edge of Home Switch ............................................... 106
8.5.7 By Home Switch and Limit Switch....................................................... 110
8.5.8 Method 31 to 32: Reserved. ............................................................... 117
8.5.9 By First Pulse ...................................................................................... 118
8.5.10 By Current Position........................................................................... 119
8.6 cpc Homing Methods ................................................................................. 120
8.6.1 By Hard Stop ...................................................................................... 120
8.6.2 By Hard Stop and Index ...................................................................... 122
8.6.3 By the middle of Hard Stop ................................................................ 124
8.6.4 By the middle of Limit Switch ............................................................. 126
8.6.5 By the middle of Home Switch ........................................................... 128
Touch Probe Functionality .................................................................................. 133
9.1 Object ........................................................................................................ 133
Object 0x60B8: Touch probe function ......................................................... 133
Object 0x60B9: Touch probe status ............................................................. 135
4

Object 0x60BA: Touch probe 1 positive edge .............................................. 137
Object 0x60BB: Touch probe 1 negative edge ............................................. 138
Object 0x60BC: Touch probe 2 positive edge .............................................. 139
Object 0x60BD: Touch probe 2 negative edge ............................................. 140
9.2 Touch Probe Edge Counter for Continuous Mode ...................................... 141
9.2.1 General information ........................................................................... 141
9.2.2 Timing Diagram—Example of Touch Probe Edge Counter for Continuous
Mode .......................................................................................................... 142
9.2.3 Object ................................................................................................ 144
10. Profile Velocity Mode ......................................................................................... 148
10.1 General Information................................................................................. 148
10.2 Structure of Controlword and Statusword ............................................... 149
10.2.1 Controlword of the Profile Velocity Mode. ....................................... 149
10.2.2 Statusword of the Profile Velocity Mode. ......................................... 150
10.3 Functional Description ............................................................................. 151
10.4 Objects ..................................................................................................... 152
Object 0x606B: Velocity demand value ....................................................... 152
Object 0x606C: Velocity actual value .......................................................... 153
Object 0x606D: Velocity window ................................................................ 154
Object 0x606E: Velocity window time ......................................................... 155
Object 0x606F: Velocity threshold .............................................................. 156
Object 0x6070: Velocity threshold time ...................................................... 157
11. Profile Torque Mode ........................................................................................... 158
11.1 General Information................................................................................. 158
11.2 Structure of Controlword and Statusword ............................................... 159
11.2.1 Controlword of the Profile Torque Mode.......................................... 159
11.2.2 Statusword of the Profile Torque Mode............................................ 160
11.3 Objects ..................................................................................................... 161
Object 0x6071: Target torque ..................................................................... 161
Object 0x6073: Max current ....................................................................... 162
Object 0x6074: Torque demand .................................................................. 163
Object 0x6075: Motor rated current ........................................................... 164
Object 0x6076: Motor rated torque ............................................................ 165
Object 0x6077: Torque actual value ............................................................ 166
Object 0x6078: Current actual value ........................................................... 167
5

12.

13.

14.

15.

16.

Object 0x6079: DC link circuit voltage ......................................................... 168
Object 0x6087: Torque slope....................................................................... 169
Cyclic Synchronous Position Mode ..................................................................... 170
12.1 General Information................................................................................. 170
12.2 Functional Description ............................................................................. 171
12.3 Structure of Controlword and Statusword ............................................... 173
12.3.1 Statusword of the Cyclic Synchronous Position Mode ...................... 173
12.4 Object ...................................................................................................... 174
Object 0x60B0: Position offset .................................................................... 174
Object 0x60B1: Velocity offset .................................................................... 175
Object 0x60B2: Torque offset ...................................................................... 176
Cyclic Synchronous Velocity Mode ...................................................................... 177
13.1 General Information................................................................................. 177
13.2 Functional Description ............................................................................. 179
13.3 Structure of Controlword and Statusword ............................................... 180
13.3.1 Statusword of the Cyclic Synchronous Velocity Mode ...................... 180
Cyclic Synchronous Torque Mode ....................................................................... 181
14.1 General Information................................................................................. 181
14.2 Functional Description ............................................................................. 182
14.3 Structure of Controlword and Statusword ............................................... 183
14.3.1 Statusword of the Cyclic Synchronous Torque Mode ........................ 183
Optional application FE ....................................................................................... 184
Object 0x60FD: Digital inputs........................................................................... 184
Object 0x60FE: Digital outputs ......................................................................... 186
Device information ............................................................................................. 188
Object 0x67FE: Version number ....................................................................... 188

6

1. About this manualThis manual describes cpc's interpretation and implementation of the DS402
standard. It should not be used as the foundation to design generic DS402 master
controllers, with the assumption that servo drives from other manufactures will
have identical behavior.
This manual describes the objects and operation modes used in cpc drivers and isbased on the CiA® 402 Draft Standard Proposal (DSP).

1.1 Revision History
Revision

Date

Description

Remarks

1.0

December 2017

Initial release--

1.2 Copyright Notice
All rights reserved. No part of this work may be reproduced or transmitted in any
form or by any means without prior written permission of Chieftek Precision Co.,Ltd.

1.3 Trademarks
CANopen and CiA are registered trademarks of the CAN in Automation User's Group.
Windows is a registered trademark of Microsoft Corporation.
7

1.4 Disclaimer
1. Information furnished by cpc is believed to be accurate and reliable. However, no
responsibility is assumed by cpc for its use, nor for any infringements of patents orother rights of third parties which may result from its use. cpc doesn’t grant any
license under its patent rights, nor the rights of others.
2. In addition, cpc assumes no responsibility for any errors that may appear in thisdocument and for any claims or damages arising from information contained inthis document.
3. The product specified in this document has been developed, produced, tested anddocumented in accordance with the relevant standards. cpc is not responsible fordamages, accidents, or injuries caused by any deviation from the configurationand installation described in this guide;
4. Furthermore, cpc is not responsible for the performance of new measurements orensuring that regulatory requirements are met.
5. The product specified in this document is not assumed to be used in criticalapplication including, but not limited to, medical equipment, transportation,
aerospace and nuclear instruments, undersea equipment, power plant equipment,
as well as disaster prevention and crime prevention equipment.
6. We reserve the right to modify our products, including its hardware and software
design, in order to improve its design and/or performance. The information in thisdocument is subject to change without notice and does not represent acommitment by cpc.
7. Specifications are subject to change without notice.
8. Performance specification beyond those specified by safety regulations areguaranteed by design and not subject to production test.
9. Customers should obtain the latest relevant information before placing orders
and should verify that such information is current and complete.
10. cpc assumes no liability for applications assistance or customer product design.
Customers are responsible for their products and applications using cpc
products.

8

1.5 Contact Us
Headquarters
Chieftek Precision Co., Ltd.
NO.3, Dali 1st Rd., Xinshi Dist., Southern Taiwan Science Park,
Tainan City. 741-45, Taiwan (R.O.C.) 3
TEL: +886-6-505-5858
FAX: +886-6-505-5959
Email : service@mail.chieftek.com

China
Chieftek Machinery Kunshan Co., Ltd.
No.1188, Hongqiao Rd, Kunshan, Jiangsu, P.R. China
Tel : +86-512-55252831
Fax : +86-512-55252851
Email : cn.service@mail.chieftek.com

Europecpc Europa GmbH
Industriepark 314, D-78244 Gottmadingen, Germany
Tel : +49-7731-59130-38
Fax : +49-7731-59130-28
Email : info@cpc-europa.deUSA
Chieftek Precision USA Co., Ltd.
2280 E. Locust Court. Ontario, CA 91761, USA
TEL: +1-909-773-1200
FAX: +1-909-773-1202
Email : info@usa.chieftek.com

92. Introduction
2.1 Abbreviations and terms
Term / Abbrev.

Stands for:AC

Alternating current

CConstant

COB

Communication object

csp

Cyclic synchronous position mode

cst

Cyclic synchronous torque mode

csv

Cyclic synchronous velocity modeDC

Direct current

FE

Functional elementhm

Homing mode

I/O

Input/output

ms

Manufacturer-specific

NMT

Network management

PDO

Process data object

PDS

Power drive systempp

Profile position mode

pv

Profile velocity moder

Reserved

r.m.s.

Root mean square

RO

Read only

RW

Read-writetq

Torque mode (= profile torque)10

2.2 Operation modes
The cpc device profile specifies the modes of operation, including:lProfile position modelProfile velocity modelProfile torque modelHoming modelCyclic synchronous position modelCyclic synchronous velocity modelCyclic synchronous torque mode11

2.3 Standard Servo Drive Objects (0x60nn)(The “ * ” sign refers to the numeric range of the data type.)
Index

Sub-

Type Access

PDO

Default

Max

Min

Unit

RW

0

3

0

–

X

UINT16 RO

0

*

*

–

O

0x6040 0x00 Controlword UINT16 RW

0

*

*

–

O

0x6041 0x00 Statusword UINT16 RO

–

*

*

–

O

index

Name

mapping

Abort
0x6007 0x00 connection

INT16

option code
0x603F 0x00 Error Code0x605A 0x00
0x605B 0x00

Quick stop
option code
Shutdown
option code

INT16

RW

2

4

-1

–

X

INT16

RW

0

1

-1

–

X

INT16

RW

0

1

-1

–

X

INT16

RW

1

4

-1

–

X

INT16

RW

0

4

-1

–

X

INT8

RW

0

10

-6

–

O

INT8

RO

0

*

*

–

O

Disable0x605C 0x00 operation
option code
0x605D 0x00

Halt option
code
Fault

0x605E 0x00 reaction
option code
0x6060 0x00

Modes ofoperation
Modes of0x6061 0x00 operation
display12

Index

Sub-

Name

index

Type Access

Default

Max

Min

Unit

PDO
mapping

Position
0x6062 0x00 demand

INT32

RO

–

*

*

count

O

INT32

RO

0

*

*

count

O

INT32

RO

0

*

*

count

O

UINT32 RW

0

*

*

count

O

UINT16 RW

0

*

*

ms

O

UINT32 RW

0

*

*

count

O

UINT16 RW

0

*

*

ms

O

INT32

RO

-

*

*

count/s

O

INT32

RO

0

*

*

count/sO

UINT16 RW0**count/sO

UINT16 RW

0

*

*

ms

O

UINT16 RW0**count/sO

value
Position
0x6063 0x00

actualinternal
value

0x6064 0x00

Position
actual value
Following

0x6065 0x00 error
window
Following
0x6066 0x00 error time
out
0x6067 0x00
0x6068 0x00

Position
window
Position
window time
Velocity

0x606B 0x00 demandvalue
0x606C 0x00
0x606D 0x00
0x606E 0x00
0x606F 0x00

Velocity
actual value
Velocity
window
Velocity
window time
Velocitythreshold13

IndexSub-

PDO

Type Access

Default

Max

Min

Unit

UINT16 RW

0

*

*

ms

O

UINT16 RW

0

*

*

0.10%

O

0x6073 0x00 Max current UINT16 RW

0

*

*

0.1%

O

0.1%

O

mA

X

index

Name

mapping

Velocity
0x6070 0x00 threshold
time
0x6071 0x00

0x6074 0x00
0x6075 0x00

TargettorqueTorquedemandMotor rated
current

INT16

RO

–

UINT32 RW

0

*

*

mNm
0x6076 0x00

Motor rated
torqueUINT32 RW

0**(milli
NewtonX

metre)
0x6077 0x00
0x6078 0x00

Torqueactual value
Current
actual value

INT16

RO

0

*

*

0.1%

O

INT16

RO

0

*

*

0.1%

O

UINT32 RO

0

*

*

mV.

X

UINT32 RW

1,500,000**

count/s

O

*

*

count

O

–

X

count

X

DC link
0x6079 0x00 circuit
voltage
0x6080 0x00
0x607A 0x00

Max motor
speedTargetposition

INT32

RW

0

2

C

2

INT32

RW

-231

Highest sub0x00 index

2

supported

0x607B
0x01

Min position
range limit

14

*

*

IndexSub-

PDO

Type Access

Default

Max

Min

Unit

INT32

RW

231-1

*

*

count

X

0x607C 0x00 Home offset INT32

RW

0

*

*

count

O

INT32

C

2

–

X

INT32

RW

-231

*

*

count

X

INT32

RW

231-1

*

*

count

X

UINT32 RW

1,500,000**

count/sO

UINT32 RW

2,000,000

0x7FFFFFFF

1

count/sO

UINT32 RW

1,000,000

0x7FFFFFFF

1

count/s2

X

UINT32 RW

1,000,000

0x7FFFFFFF

1

count/s2

O

UINT32 RW 100,000,000

0x7FFFFFFF

1

count/s2O

100,000**

0.1%/s

O

index
0x02

Name
Max position
range limit

mapping

Highest sub0x00 index

2

supported
0x607D

0x01
0x02

0x607F 0x00
0x6081 0x00
0x6083 0x00
0x6084 0x00
0x6085 0x00

Min positionlimit
Max positionlimit
Max profile
velocity
Profilevelocity
Profileacceleration
Profiledeceleration
Quick stop
deceleration

0x6087 0x00 Torque slope UINT32 RW
0x6098 0x00

Homingmethod

INT8

RW

35

37

-12

–

O

UINT32

C

2

*

*

–

X

20,000**count/sX

Highest sub0x00 index
supported
0x6099Speed
0x01

duringsearch for

UINT32 RW

switch15

IndexSubindex

Name

PDO

Type Access

Default

Max

Min

Unit

UINT32 RW

20,000**count/sX

UINT32 RW

20,0000x7FFFFFFF

1

count/s2O

mapping

Speed
0X02

duringsearch forzero

0x609A 0x00
0x60B0 0x00
0x60B1 0x00
0x60B2 0x00

0x60B8 0x00

0x60B9 0x00

Homingacceleration
Position
offsetVelocity
offsetTorqueoffsetTouch probe
function
Touch probe
status

INT32

RW

0

*

*

count

O

INT32

RW

0

*

*

count/s

O

INT16

RW

0

*

*

0.1%

O

UINT16 RW

1

*

*

–

O

UINT16 RO

–

–

O

INT32

RO

–

*

*

count

O

INT32

RO

–

*

*

count

O

INT32

RO

–

*

*

count

O

INT32

RO

–

*

*

count

O

–

Touch probe
0x60BA 0x00 1 positiveedge
Touch probe
0x60BB 0x00 1 negativeedge
Touch probe
0x60BC 0x00 2 positiveedge
Touch probe
0x60BD 0x00 2 negative
edge

16

Index

Sub-

Name

index

Type Access

Default

Max

Min

Unit

PDO
mapping

Highest sub0x00 index

UINT8

C

2

2

–

X

UINT8

RW

1

255

1

–

X

INT8

RW

-3

1

-3

–

X

UINT16 RO

–

*

*

–

O

INT8

44

–

–

X

–

–

X

–

–

X

–

–

X

supported
0x60C2

Interpolation
0x01 time period
value
0x02

Interpolation
time index
Touch probe

0x60D5 0x00

1 positiveedge
counter
Highest sub-0x00 index

C

supported(-12 ~ -1)

1st
0x01

supported
homingand all
INT8C

standard

method
0x60E3mode(-12 ~ -1)

2nd
0x02

supported
homingand all
INT8

C

mode
(-12 ~ -1)

254
0xFE

homingmethodCiA402standard

methodsupported

CiA402and all
INT8C

CiA402standardmode

17

IndexSubindex

Name

PDO

Type Access

Default

Max

Min

Unit

UINT16 RO

–

*

*

–

O

INT32

–

*

*

count

O

mapping

Touch probe
0x60D6 0x00

1 negativeedge
counter
Following

0x60F4 0x00 error actual

RO

value
in

Position
0x60FC 0x00

demandinternalincrements

INT32

RO

–

*

*

DigitalinputsO

position

value
0x60FD 0x00

of theencoder

UINT32 RO

–

–

–

O

UINT32

1

0x01

–

X

Highest sub0x00 index

C

supported

0x60FE
0x01

0x60FF 0x00

Physical
outputs
TargetVelocity

UINT32 RW

INT32

RW

0000 0000h

*

*

–

X

0

*

*

count/s2

O

18

IndexSubindex

Name

Type Access

Default

Max

Min

Unit

PDO
mapping

cst, csv, csp, hm, tq, pv,
and pp bits:
1 = mode is supported.
0 = mode is not
0x6502 0x00

Supported
drive modes

supported
UINT32 RO

0x3AD

–

O

–

X

manufacturer-specific
bits:
No.
r(eserved) bits: 0

0x67FE 0x00

VersionnumberUINT32

C

3

19

–

2.4 Format of Object Dictionary
The format of the object description and the entry description in this manual is asfollows:ll

Object description
Index

nnnn

Name

Name of the object

Object code

Variable / Array / Record

Data type

Integer8 / Integer16 / Integer32
Unsigned8 / Unsigned16 / Unsigned32

Entry description
Sub-index

0xnn

Description

Description of the sub-index
RW / RO / C

Accessl(Read/Write / Read Only / Constant)

PDO mapping

Yes / No

Value range

Number or INT or UINT

Default value

The object’s default value

Units

When the object involves measurement, unit is applied.

The “value range” in the entry description:
Description

Numeric range

INT8

-27

~ 27-1

UINT8

0~ 27-1INT16-215 ~ 215-1

UINT160INT32-231 ~ 231-1

UINT320~ 215-1~ 231-1

20

3. General Entries
3.1 Drive Error
Object 0x6007: Abort connection option code
This object indicates what the reaction will be when one of the following eventsoccurs:CAN bus-off, heartbeat, fieldbus stopped state entered, and reset communication.
lll

Object description
Index

6007

Name

Abort connection option code

Object code

Variable

Data typeInterger16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

0~3

Default value

0

Units

No

Value definition
Value

Definition0

No action

1

Fault signal

2

Disable voltage command3

Quick stop command21

Object 0x603F: Error code
This object indicates the last error that appears in the drive device.
ll

Object description
Index

603F

Name

Error code

Object code

Variable

Data type

Unsigned16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

Unsigned16

Default value

0

Units

No

22

3.2 Drive Data
Object 0x6502: Supported drive modes
This object indicates what modes are supported. See bit definitions below.
llObject description
Index

6502

Name

Supported drive modes

Object code

Variable

Data type

Unsigned32

Entry description
Sub-index

0x00

AccessRO

PDO mappingYes
cst, csv, csp, hm, tq, pv, and pp bits:
1 = mode is supported.
0 = mode is not supported

Value range

manufacturer-specific bits:No.
r(eserved) bits: 0

Default value

0x3AD

Units

No

23

l

Bit definition
Bit

Function0pp1

Reserved

2

pv

3

tq

4

Reserved

5hm

6Reserved

7

csp

8

csv

9

cst

10

Reserved

11-15

Reserved

16-31

Reserved24

4. Device Control
4.1 General
The PDS finite state machine is an abstract concept to define the behavior of a blackbox when a control device interacts with the PDS. It defines the application behaviorof the PDS.
The PDS finite state machine is operated by these means:lControlword from control device sent via network;l
Local signals, such as script, faults, or signals sent via RS232.
l
The state of the PDS reported by the statusword produced by the drive device.
lError detection signals.

4.2 Finite State Machine and Stateslll

The state machine describes the device status and the possible control
sequence of the drive.
A single state represents a specific internal or external behavior.
The state of the drive also determines which commands are accepted; forexample, a point-to-point motion can be started only when the drive is in
OPERATION ENABLED state.

The device states and possible control sequence of the drive are described by thestate machine, as depicted in the following figure:25

4.2.1 Diagram of Power Drive System Finite State Machine< Diagram of Power Drive System Finite State Machine >0
Not ready toswitch on
1
Switch on
disabled
2
7

12

10

Ready to switchon3
6
Switched on
4

Quick stop
active11

Operation
enabled

26

5

15

13

8

9

Fault
Fault reaction
active4.2.2 Description of the states of finite state machineState

Description

Not Ready tol

Low-level power (e.g. 24V, 5V) has been applied to the drive.

Switch OnlDrive is being initialized or is running self-test;
The communication channel is opened after this state hence users won’t be able
to encounter this state in practice.

l

A brake, if present, is applied in this state.

lDrive function is disabled.

Switch OnlDrive initialization is complete.

DisabledlDrive parameters have been set up.

lDrive parameter may be changed.

lDrive function is disabled.

Ready to SwitchlDrive parameters may be changed.

OnlDrive function is disabled.

Switched OnlHigh voltage has been applied to the drive.

l

Drive parameter may be changed.

lDrive function is disabled.

Operationl

No faults have been detected.

EnabledlDrive function is enabled and power is applied to the motor.

lMotor operation related parameters cannot be changed.

Quick Stopl

Drive parameters may be changed.

Activel

Quick stop function is being executed.

lDrive function is enabled and power is applied to the motor.

Fault ReactionlDrive parameters may be changed.

Activel

A non-fatal fault has occurred in the drive.

l

Quick stop function is being executed if fault reaction option is set to quick stop.

l

Drive function is enabled and power is applied to the motor.

lDrive parameters may be changed.

lA fault has occurred in the drive.

l

Drive function is disabled.

Fault

27

4.2.3 Descriptions of the transitions of finite state machine

From state
0

1

2

3

4

5

6

7

8

9

To state

Event/Action

Not Ready toEvent:

Switch On

Action: The drive self-tests and/or self-initializes.

Not Ready to

Switch On

Event:

Switch On

Disabled

Action: Activate communication and process data monitoring

Switch On

Ready toEvent:Disabled

Switch On

Action: None

Start

Ready toSwitch On
Switched On
Operation
EnabledSwitched On

Event:The drive has self-tested and/or initialized successfully.

“Shutdown” command received from controlword.

“Switch On” command received from controlword.

Action: None.

Operation

Event:

EnabledAction: The drive function is enabled.

Switched On

Event:“Enable Operation” command received from controlword.

“Disable operation” command received from controlword.

Action: The drive operation is disabled.

Ready toEvent:

Switch On

Action: None.

Ready toSwitch On

Event:

Switch On

Disabled

Action: None.

Operation

Ready toEnabledSwitch On

Operation

Switch On

EnableDisabled

Switched On

Event:

Switched On

Switch On
Disabled“Shutdown” command received from controlword.

“Quick Stop” command received from controlword.

“Shutdown” command received from controlword.

Action: Drive function is disabled and the motor is free to rotate if
unbraked.
Event:“Disable Voltage” command received from controlword.

Action: Drive function is disabled and the motor is free to rotate if
unbraked.
Event:

10

Power-on reset.

Action:“Disable Voltage” or “Quick Stop” command received fromcontrolword.
Drive function is disabled and the motor is free to rotate if
unbraked.

28

11

12

From state

To state

Operation

Quick Stop

EnableActiveQuick Stop

Switch On

ActiveDisabledFault

13

Any state

Reaction
Active14

15

Fault Reaction
Active

Fault

Fault

Event/Action
Event:“Quick Stop” command received from controlword.

Action: The Quick Stop function is executed.

Event:“Quick Stop” function is completed or “Disable Voltage”
command received from controlword.

Action: Drive function is disabled
Event:

A fatal fault has occurred in the drive.

Action: Execute appropriate fault reaction.
Event:

The fault reaction is completed.

Action: The drive function is disabled.
Event:“Fault reset” command received from controlword.

Action:l

Switch On
Disabled

If no fault exists currently on the drive, a reset of the fault
condition will be carried out.

lAfter leaving the “Fault” state, the “Fault Reset” bit incontrolword should be cleared to 0 for future fault reset
command.

29

4.3 Detailed Objects specifications
The following chapter describeslControlword and Statusword – Ch.4.3.1 and 4.3.2
The state of the device is controlled by the controlword, while the statusof the device is indicated by the statusword.
The following content includes:
Ø Structure of controlword and statusword
Ø Command coding and state codingØ Statusword bit interpretationsl

Objects of stop, halt, and fault – Ch. 4.3.3 to 4.3.7

30

4.3.1 Object 0x6040: Controlword
This object indicates the received command that controls the PDS FSA.
Please refer to the chart of <Controlword Structure>, its bits are structured as
described in the chart below.
lBits 0, 1, 2, 3, and 7 are supported.
lBits 4, 5, 6, and 9 are operation mode specific.
l
Bit 8 – the action of bit 8 is mode-specific.
If bit 8 = 1, the commanded motion will be interrupted and the PDS will act
according to the halt option code.
l
Bit 10 is reserved.
lBits 11 to 15 are manufacturer-specific according to 402 DSP; these bits arereserved by cpc.

llObject description
Index

6040

Name

Controlword

Object code

Variable

Data type

Unsigned16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

Unsigned16

Default value

0

Units

No

31

4.3.1.1 Controlword structure< Controlword Structure >
Bit

Keys

Name

0

so

Switch on

1ev

Enable voltage2

qs

Quick stop3

eoEnable operation

4~6

oms

Operation mode specific7

fr

Fault reset

8

h

Halt

9

oms

Operation mode specific10rReserved

11~15

(ms)

Manufacturer-specific; these are reserved by cpc.

4.3.1.2 Command coding
The controlword contains the bits controlling the states of PDS, these commands
are coded in the way as described in the chart here:< Command Coding >CommandShut down
Switch on

Bits of the controlword
73
2
1
fault reset enablequick
enableoperationstop
voltage
0
x
1
1
0
0
1
1

0
switch on
01

Switch on + enable operation

0

1

1

1

1

Disable voltage
Quick stop
Disable operation
Enable operation
Fault reset

0
0
0
0

x
x
0
1
x

x
0
1
1
x

0
1
1
1
x

x
x
1
1
x

Transitions
2, 6, 83
3+4(*note)7, 9, 10, 12
7, 10, 11
5
4, 16
15

*note:
Automatically transit to the “operation enabled” state after performing the “switched on” statefunctionality.
32

4.3.2 Object 0x6041: Statusword
This object indicates the status of PDS FSA.
It is structured as defined in the chart below:lBits 0 to 10 are supportedl
Bit 7, originally defined as warning by 402 DSP, is hereby reserved by cpc.
l
Bit 8 and 15, originally defined as manufacturer-specific, is hereby reserved bycpc.
lBits 12 and 13:
If the related functionality of the oms bits is not available, the bit will set
to 0.

l

l

Object description
Index

6041

Name

Statusword

Object code

Variable

Data type

Unsigned16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

Unsigned16

Default value

No

Units

No

33

4.3.2.1 Statusword structure< Statusword Structure >
Bit

Keys

Name

0

rtso

Ready to switch on

1so

Switched on

2oeOperation enabled

3

F

Fault

4

ve

Voltage enabled5

qs

Quick stop

6

sod

Switch on disabled

7~8

(r)

Reserved

9rm

Remote10trTarget reached

11

ila

Internal limit active

12-13

oms

Operation mode specific

14

(ms)

When bit 14 is set to 1, it means(1) The transition from power-off to operation
enabled state; or(2) Quick-stop is in process, or, waiting for external
enable.

15(r)

Reserved

34

4.3.2.2 State coding
The combinations of bits 0 to 7 will code the states of PDS FSA. See the chart below:< State Coding >Statusword
w sod qsfoe so rtso

Warning

Switch On Disabled

Quick Stop

Voltage Enabled

Fault

Operation Enabled

Switched On

Ready To Switch On

xxxx xxxx
xxxx xxxx
xxxx xxxx
xxxx xxxx
xxxx xxxx
xxxx xxxx
xxxx xxxx
xxxx xxxx

ve

x
x
x
x
x
x
x
x

0
1
0
0
0
0
0
0

x
x
1
1
1
0
x
x

x
x
x
x
x
x
x
x

0
0
0
0
0
0
1
1

0
0
0
0
1
1
1
0

0
0
0
1
1
1
1
0

0
0
1
1
1
1
1
0

35

PDS FSA state

Not ready to switch on
Switch on disabled
Ready to switch on
Switched on
Operation enabled
Quick stop active
Fault reaction active
Fault4.3.2.3 Statusword bit interpretations
Bit

Name

Value Explanations

0

Ready to switch on

--

--

1

Switched on

--

--

2

Operation enabled

--

--

3

Fault

--

--

4

Voltage enabled

1High voltage is applied to the PDS.

5

Quick stop0

The PDS is reacting on a quick stop request.

6

Switch on disabled

--

--

7~8

Reserved

--

--

9

Remote0Controlword is not processed.
(local)1
Controlword is processed.
(remote)10

Target reached

1① Indicates that the PDS has reached theset-point. Bit 10 is operation mode
specific, please see related chapters.
② The operation mode is changed.
*Note:
Changing the target value via software willalter this bit (0à1 or 1à0).
11Internal limit active

1

An internal limit is active.
(example: position range limit).

12~13 Operation mode
specific--

Operation mode specific

14

Manufacturerspecific--*See <Statusword structure> above.

15

Reserved

--

--

36

4.3.3 Object 0x605A: Quick stop option code
This object indicates what action should be taken when the quick stop function is
activated.
The slow down ramp is the deceleration value of the mode being used in operation.
lll

Object description
Index

605A

Name

Quick stop option code

Object code

Variable

Data type

Unsigned16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range-1 ~ 4

Default value

2

Units

No

Value definition
Value

Definition-1

Dynamic brake. (Brake motor by means of a controlled motor
short circuit)0

Disable drive function

1

Slow down on slow down ramp and transit into switch on
disabled

2

Slow down on quick stop ramp and transit into switch on
disabled

3

Slow down on current limit and transit into switch on disabled

4

Slow down on voltage limit and transit into switch on disabled37

4.3.4 Object 0x605B: Shutdown option code
This object indicates what action should be taken when there is a state transition of:Operation enabled è Ready to switch on.
lll

Object description
Index

605B

Name

Shutdown option code

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range-1 ~ 1

Default value

0

Units

No

Value definition
Value

Definition-1

Dynamic brake. (Brake motor by means of a controlled motor
short circuit)0

Disable drive function (switch-off the drive power stage)

1

Slow down on slow down ramp; disable of the drive function

38

4.3.5 Object 0x605C: Disable operation option code
This object indicates what action should be taken when there is a state transition of:Operation enabled è Switched on.
lll

Object description
Index

605C

Name

Disable operation option code

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range-1 ~ 1

Default value

0

Units

No

Value definition
Value

Definition-1

Dynamic brake. (Brake motor by means of a controlled motor
short circuit)0

Disable drive function (switch-off the drive power stage)

1

Slow down on slow down ramp; disable of the drive function

39

4.3.6 Object 0x605D: Halt option code
This object indicates what action should be taken when halt is executed
The slow down ramp is the deceleration value of the mode being used in operation.
lll

Object description
Index

605D

Name

Halt option code

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range-1 ~ 4

Default value

1

Units

No

Value definition
Value

Definition-1

Dynamic brake. (Brake motor by means of a controlled motor
short circuit)0

Disable drive function (Immediately power off)

1

Slow down on slow down ramp and stay in operation enabled

2

Slow down on quick stop ramp and stay in operation enabled

3

Slow down on current limit and stay in operation enabled

4

Slow down on voltage limit and stay in operation enabled40

4.3.7 Object 0x605E: Fault reaction option code
This object indicates what action should be taken when fault is detected in the PDS.
The slow down ramp is the deceleration value of the mode being used in operation.
lll

Object description
Index

605E

Name

Fault reaction option code

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range-1 ~ 4

Default value

0

Units

No

Value definition
Value

Definition-1

Dynamic brake. (Brake motor by means of a controlled motor
short circuit)0

Disable drive function (Immediately power off)

1

Slow down on slow down ramp and stay in operation enabled

2

Slow down on quick stop ramp and stay in operation enabled

3

Slow down on current limit and stay in operation enabled

4

Slow down on voltage limit and stay in operation enabled41

5. Modes of Operation
5.1 Functional Description
The behavior of the PDS depends on the mode chosen for operation. Though the
cpc PDS implements several modes of operation, the modes cannot be changed
during Operation Enable state.
l

l
l

l

On one hand, the control device writes to the object 0x6060 (modes ofoperation);on the other hand, the drive device provides object 0x6061 (modes of operation
display) to indicate what operation mode is actually activated.
Controlword, statusword, and set-point are mode-specific.
The switching between modes of operation requires that no automaticreconfiguration of COBs (communication objects) for real-time datatransmission is necessary.
Namely, all necessary data objects (for the mode) that may be used during
Operation Enabled state is configured before cyclic communication function isenabled.
For cpc drives, it is possible to switch modes in any FSA state except for the
Operation Enabled state.

The following modes of operation are implemented in cpc's servo drive:lProfile position mode(pp)l
Homing mode(hm)lProfile velocity mode
(pv)
lProfile torque mode(tq)lCyclic synchronous position mode (csp)lCyclic synchronous velocity mode(csv)
lCyclic synchronous torque mode
(cst)
42

5.2 Objects
Object 0x6060: Modes of operation
This object indicates the required operation mode.
llObject description
Index

6060

Name

Modes of operation

Object code

Variable

Data type

INT8

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range-6 ~ 10

Default value

0

Units

No

43

l

Value definition
Value

Definition-6

for cpc internal use only-5

for cpc internal use only

-4

Direct position-3

Direct velocity-2

Direct torque-1

Direct voltage

0

Drive is disabled

1

Profile position mode

2

Reserved

3

Profile velocity mode

4

Profile torque mode

5

Reserved

6

Homing mode

7

Reserved

8

Cyclic synchronous position mode

9

Cyclic synchronous velocity mode

10

Cyclic synchronous torque mode

44

Object 0x6061: Modes of operation display
This object provides the actual operation mode.
llObject description
Index

6061

Name

Modes of operation display

Object code

Variable

Data type

INT8

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT8

Default value

0

Units

No

45

6. Profile Position Mode
6.1 General information
This chapter describes about how to configure a point-to-point move in a profiled
motion.
The driver receives a target position value, then the trajectory generator converts
this target position value into a position demand value to the position control loop.
The overall structure of this mode is shown as the diagram below.
Trajectory
generator
parameters
Target position(607A)

Trajectory
generator

Position demandinternal value (0x60FC),or
Position demand value(0x6062)

Positioncontrol law
parameters
PositioncontrolfunctionControl effort

At the input to the trajectory generator, parameters are limited before being
normalized to the internal units.
The trajectory input includes:lPosition range limitlSoftware position limitlProfile velocityl
End velocitylMax profile velocitylMax motor speedlProfile accelerationlProfile decelerationl
Quick-stop decelerationl
Quick-stop option code46

6.2 Structure of Controlword and Statusword
6.2.1 Controlword of the Profile Position Mode.
Bit

Function

0~3*See chapter 4.3.1.1 - Device Control/Controlword structure4

New set-point

5

Change set immediately

6

Abs/rel7*See chapter 4.3.1.1 - Device Control/Controlword structure

8

Halt

9

Reserved

10~15*See chapter 4.3.1.1 - Device Control/Controlword structurelDefinition of bit 4, 5, 6, and 8

Bit

Name

4

New set-point

5

6

8

Value Description
0

There is No target position given

1

There is target point given.

0

Fully complete the present positioning(target reached) before the next set-point
gets started.
See ch. 6.3.2 – set of set-point.

1

Interrupt the present positioning and start
the next set-point immediately.
See ch. 6.3.2 – single set-point.

0

The target position is an absolute value.

1

The target position is a relative value.

0

Perform or continue positioning.

1

Motor is stopped according to halt option
code (0x605D).

Change set
immediately

Absolute /RelativeHalt

47

6.2.2 Statusword of the Profile Position Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Target reached

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Set-point acknowledge

13

Following error

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

10

12

13

Definition of bit 10, 12 and 13
Name

Value Description
0Halt = 0: Target position not reached.
Halt = 1: motor decelerates.

1

Halt = 0: Target position reached
Halt = 1: motor decelerates to 0 velocity.

0Previous set-point has been processed, readyto accept new set-point.

1

Detects that “new set-point bit” incontrolword is 1; or,
set-point buffer is busy.

0

No following error.

1

Following error occurs.

Target reachedSet-point
acknowledge

Following error

486.3 Functional Descriptions
6.3.1 General
The setting of set-point is determined by these three together:l
The timing of the new set-point bit (bit 4 in controlword),l
The change set immediately bit (bit 5 in controlword), andl
The set-point acknowledgement bit (bit 12 in statusword).
The setting procedure is as follows:
1. A set-point is applied to the driver.
2. The control device, such as a computer, signals with a rising edge of the new
set-point bit (bit 4 in controlword) that the set-point data is completelytransmitted.
3. The driver sets the set-point acknowledgement bit (bit 12 in statusword) to 1.
4. The control device makes the new set-point bit to 0.
5. The driver signals that the set-point acknowledgement bit is set to 0, indicating
its ability to accept new set-points.

Please refer to the diagram on the next page.

49

Procedure of setting Set-point
Actual speed

Targetposition(set-point)New
set-point(bit 4) /controlword
Set-point
acknowledge(bit 12) /statusword
Targetreached(bit 10) /statusword50

6.3.2 Single Set-point & Set of Set-point
There are 2 ways of applying target positions to a driver:lSingle set-point (the “change set immediately” bit of controlword = 1)
When a set-point is in progress and a new set-point is validated via the new
set-point (bit 4) in the controlword, the new set-point will be processed
immediately.

Single Set-point (change set immediately bit = 1)
Actual speed

Target position(set-point)

New set-point(bit 4) /controlword

Current target
positionprocessed

Set-point
acknowledge(bit 12) /statusword
Target reached(bit 10) /statusword
51l

Set of set-points (the “change set immediately” bit of controlword = 0)
When a set-point is in progress and a new set-point is validated via the new
set-point (bit 4) in the controlword, the new set-point will be processed
only after the previous one has been reached.

Set of Set-point (change set immediately bit = 0)
Actual speed

Target position(set-point)

New set-point(bit 4) /controlword

Current target
positionprocessed

Set-point
acknowledge(bit 12) /statusword
Target reached(bit 10) /statusword526.3.3 Buffered Set-point
When “set of set-point” is used (i.e., change set immediately bit = 0), the cpc driver
supports two set-points:l
One is presently processed, andl
The other is buffered.
Note:Ø The cpc driver can buffer one set-point.
Ø If there are two or more set-points to be buffered, the first will be stored
while the second and the later ones will be ignored.
Please refer to the diagram below.
Buffered Set-point
1

2

A

B

α

3

4

β

5

6

New set-point(bit 4)

Change set
immediately(bit 5)Set point

Buffered
set-point

Set-point
in progress

B

C

B

D

C

A

C

B

Set-point
acknowledge(bit 12)Target reached(bit 10)
53

E

F

E

E

C

F

Diagram explanation:
Item

Description①

If no set-point is in progress, the new set-point will become active
immediately.

②

If a set-point is in progress, the new set-point will be stored in the bufferthat is free.

α

Set-point (A) has finished,l
The “set-point acknowledge (bit 12)” signals this status with fallingedge which enables the buffered new set-point (B) to be active
immediately.
l
The buffer space is hence cleared.

③

Same as ②.

④

If the buffer is busy (set-point acknowledge bit = 1),
The new set-point (D) will be ignored and won’t be stored.

βSame as α.
Set-point (B) has finished; the “set-point acknowledge bit” signals withfalling edge, and the stored set-point (C) becomes active immediately.
The buffer hence becomes free.

⑤

Same as ②.
Note that the set-point which advances to be stored is the new setpoint (E) instead of the previously ignored set-point (D).

⑥

The “change set immediately bit” is set to 1,l
The new set-point following after this event will be processed
immediately as single set-point.
lAll previously loaded set-points (the buffered and the one inprogress) will be abandoned.

54

6.4 Objects
Object 0x607A: Target position
The target position is the position to which the drive should move in position profile
mode, using the present settings of motion control parameters such as velocity,
acceleration, deceleration and motion profile type. The target position is given incounts. The target position can be absolute or relative, depending on the Abs/Rel
flag—the bit 6—in the controlword.
ll

Object description
Index

607A

Name

Target position

Object code

Variable

Data type

Integer32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

Integer32

Default value

0

Units

Count

55

Object 0x607B: Position range limit
This object contains two sub-parameters—namely, the minimum position range
limit and the maximum position range limit—that limit the numerical range of the
input value.
Upon reaching or exceeding these limits, the input value automatically wrap to theother end of the range.
To disable the position range limits, please set the two sub-parameters to 0.

l

Object description
Index

607B

Name

Position range limit

Object code

Array

Data type

Integer32

See entry description on next page.

56

l

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

2

Default value

2

Units

No

Sub-index

0x01

Description

Min position range limit

AccessRW

PDO mapping

No

Value range

Integer32

Default value

-231

Units

Count

Sub-index

0x02

Description

Max position range limit

AccessRW

PDO mapping

No

Value range

Integer32

Default value

231 -1

Units

Count

57

Object 0x607D: Software position limit
This object contains the 2 sub-indexes (min position limit and max position limit)
which specify the actual position limits for both the position demand value and theposition actual value.
Note:
Homing is required to validate these software position limits.
ll

Object description
Index

607D

Name

Software position limit

Object code

Array

Data type

Integer32

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

2

Default value

2

Units

No

Sub-index

0x01

Description

Min position limit

AccessRW

PDO mapping

No

Value range

Integer32

Default value

-231

Units

Count
58

Sub-index

0x02

Description

Max position limit

AccessRW

PDO mapping

No

Value range

Integer32

Default value

231 -1

Units

Count

Object 0x607F: Max profile velocity
The object is the configured maximum allowed velocity in either direction during a
profiled move.
Note:l
For compatibility reason, the value of 0x607F (Max profile velocity) isinternally equal to that of object 0x6080 (Max motor speed).
l
Any change on object 0x607F will be applied to object 0x6080.

llObject description
Index

607F

Name

Max profile velocity

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT32

Default value

1,500,000

Unitscount/s59

Object 0x6080: Max motor speed
This is the configured maximum allowed speed for the motor in either direction, it
is for protection reason and is taken from the motor name-plate.
Note:l
For compatibility reason, the value of 0x607F (Max profile velocity) isinternally equal to that of object 0x6080 (Max motor speed).
l
Any change on object 0x607F will be applied to object 0x6080.

llObject description
Index

6080

Name

Max motor speed

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

1 ~ 7FFFFFFF

Default value

1,500,000

Unitscount/s60

Object 0x6081: Profile velocity
The “Profile velocity” is the velocity normally attained at the end of the acceleration
ramp during a profiled move and is valid for both directions of motion. The value isgiven in counts.
ll

Object description
Index

6081

Name

Profile velocity

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

1 ~ 7FFFFFFF

Default value

2,000,000

Unitscount/s61

Object 0x6083: Profile acceleration
This object indicates the configured acceleration. The value is given in count/s2.
ll

Object description
Index

6083

Name

Profile acceleration

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

1 ~ 7FFFFFFF

Default value

1,000,000

Unitscount/ s2

62

Object 0x6084: Profile deceleration
This object indicates the configured deceleration. The value is given in the sameunits as the profile acceleration object (0x6083).
ll

Object description
Index

6084

Name

Profile deceleration

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

1 ~ 7FFFFFFF

Default value

1,000,000

Unitscount/ s2

63

Object 0x6085: Quick stop deceleration
This object indicates the configured deceleration used to stop the motor when thequick stop function is triggered and the quick stop code object (605A) is set to 2.
The quick stop deceleration is also used if the fault reaction code object (605E) is 2
and the halt option code object (605D) is 2.
The value is given in the same units as profile acceleration (6083).
ll

Object description
Index

6085

Name

Quick stop deceleration

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

1 ~ 7FFFFFFF

Default value

1,000,000

Unitscount/ s264

7. Position Control Function
7.1 General information
This chapter describes all the parameters required for closed-loop position control.
The control mainly relies on these 2 inputs:l
The position demand value (0x6062), andl
The position actual value (0x6064), e.g., encoder.
Position demand value
0x6062
Position actual value
0x6064Closed-loop
position control

Control effort

To make sure that the physical limits of a driver is not exceeded, an absolute function
is implemented – the current limit function and the velocity limit function – for the
position control effort.

The following terms are used in this chapterlFollowing error
When the position actual value is outside the following error window,
which is symmetrically aligned to the position demand value, for over theconfigured time duration (i.e., following error timeout), the following error
bit 13 in statusword is set. See the chart below.
(see next page)65

Following error time out (0x6066)

Following error window (0x6065)

Position demand value(0x6062)+

error

Window
comparator

Timer

Following error
in statusword(0x6041)-

Position actual value(0x6064)lTarget reached
When the position actual value is within the position window, which issymmetrically aligned to the position demand value, over a period of
configured time duration (i.e., position window time), the target reached
bit 10 in statusword is set. See the chart below.

Position window time (0x6066)

Position window (0x6067)

Position actual value(0x6064)

Window
comparator+

Home offset (0x607C)
Position range (0x607B)
Software position limit (0x607D)

Limit
functionTarget position (0x607A)
66

Timer

Target reachedin statusword(0x6041)

7.2 Objects
Object 0x6062: Position demand value
This object gives the demand position value. It is given in count.
llObject description
Index

6062

Name

Position demand value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

No

Value range

INT32

Default value

No

Units

count

67

Object 0x6063: Position actual internal value
This object is for internal algorithm. It gives the actual value of the position
measurement device, and is one of the two inputs of the closed-loop position
control. The value is given in counts.
ll

Object description
Index

6063

Name

Position actual internal value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

No

Value range

INT32

Default value

No

Units

count

68

Object 0x6064: Position actual value
The position actual value object indicates the actual value of the position
measurement device (for example, an encoder). The value is given in counts.
ll

Object description
Index

6063

Name

Position actual value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

No

Value range

INT32

Default value

No

Units

count

69

Object 0x6065: Following error window
This object is a configured range of tolerated position values symmetrically to theposition demand value. If the actual position value falls out of the following error
window, a “following error” occurs. For instance, a following error may occurlWhen the driver is blockedlWhen the profile velocity is unreachable, andl
If the closed-loop coefficient, i.e., gain, is wrong.
If the value of this object is set to FFFF FFFF, this following control function will beswitched off.
llObject description
Index

6065

Name

Following error window

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT32

Default value

0

Units

Count

70

Object 0x6066: Following error time out
This object is a configured time duration for a following error situation.
If a following error occurs longer than this configured time duration (given in ms),l
A fault event will rise, andl
The bit 13 of the status word (i.e., following error) will set to 1.

ll

Object description
Index

6066

Name

Following error timeout

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

Count

71

Object 0x6067: Position window
The position window object defines a symmetrical range of allowed positions
relative to the target position. If the actual position of the encoder is within thiswindow, the target position is regarded as reached.
If the value of this object is set to FFFF FFFF, this position window control function
will be switched off.
llObject description
Index

6067

Name

Position window

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT32

Default value

0

Units

Count

See diagram on the next page.

72

73

Object 0x6068: Position window time
When the actual position is within the position window (0x6067) for the configured
position window time — given in ms — the bit 10 (target reach) in status word will
set to 1.
ll

Object description
Index

6068

Name

Position window time

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

UINT32

Default value

0

Units

ms

74

Object 0x60C2: Interpolation time period
This object will be used in cyclic synchronous position mode; it indicates theconfigured interpolation cycle time, and has 2 sub-indexes.
The interpolation time period (sub-index 0x01) value is given in 10(interpolation time index)
second. The interpolation time index is dimensionless.
ll

Object description
Index

60C2

Name

Interpolation time period

Object code

RecordData typeInterpolation time period record (0x0080)

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

2

Default value

2

Units

No

Sub-index

0x01

Description

Interpolation time period value

AccessRW

PDO mapping

No

Value range

1 to 255

Default value

1

Units

No

75

Sub-index

0x02

Description

Interpolation time index

AccessRW

PDO mapping

No

Value range-3 to 1

Default value

-3

Units

Count

Object 0x60F4: Following error actual value
This object provides the actual value, given in counts, of the following error.
lObject description

l

Index

60F4

Name

Following error actual value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

Count

76

Object 0x60FC: Position demand internal value
This object provides the output of the trajectory generator in profile position mode.
The value is given in counts.
ll

Object description
Index

60FC

Name

Position demand internal value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

Count

77

8. Homing Mode
8.1 General Information
To operate the drivers, an exact knowledge of absolute position is usually needed.
Due to cost reasons, drivers often don’t have an absolute encoder, a homing
operation is necessary.
This chapter describes the methods by which drivers seek home position.
There are various methods achieving this by using
1. Limit switches at the end of travel, or
2. Home switch in mid-travel, or
3. The mostly used Index (zero) pulse train from an incremental encoder.
Input Data
The inputs to homing method are:l
ControlwordlHoming methodl
Homing speed
Users can define two kinds of speed. Usually, the faster one to find thehome switch, and the slower one to find the index pulse.
l
Homing accelerationlHome offset
The value of this object is used as the new position value of the homereference point (e.g., home switch, home index, mechanical hard stop), or
mechanical home position.
In addition, the cpc specific:lHard stop current%, andlHard stop period
Output Data
There is no output data except for those bits in the statusword that return the status
or result of the homing process and the demand to the position control loops.
788.2 Structure of Controlword and Statusword
8.2.1 Controlword of Homing Mode
Bit

Function

0~3*See chapter 4.3.1.1 - Device Control/Controlword structure4

Homing operation start

5~6

Reserved

7*See chapter 4.3.1.1 - Device Control/Controlword structure

8

Halt

9~15

*See chapter 4.3.1.1 - Device Control/Controlword structurelDefinition of bit 4 and 8

Bit

Name

4

Homing operation
start

8

Halt

Value Description0

Homing mode inactive.

1

Start/continue homing procedure0

Activate bit 4

1

Stop the motor according to halt option code
(0x605D).

79

8.2.2 Statusword of Homing Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Target reached

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Homing attained

13

Homing error

14~15*See chapter 4.3.2.1 - Device Control/Statusword structurelDefinition of bit 10, 12 and 13

Bit 12
Bit 10
Bit 13(homing (Homing (Target
error) attained) reached)

Definition

0

0

0

Homing procedure is being carried out.

0

0

1

Velocity = 0, homing is not completed or not
started.

010

Homing is completed, velocity is not 0.

0

1

1

Homing is completed, velocity is 0.

1

0

0

Homing error occurred, velocity is not 0.

1

0

1

Homing error occurred, velocity is 0.

1

1

X

Reserved.

80

8.3 Object
Object 0x607C: Home offset
This object defines the configured difference betweenl
The (new) zero position for application (which is finalized after homing iscompleted) ANDl
The machine home position found during homing.
The default of home offset is 0.
During homing, the driver will seek and home on the home reference point (e.g.,home switch, home index, or mechanical hard stop). When home offset object isapplied, its value will be set as the position value of the machine home position.
Please refer to the diagram on the next page.
ll

Object description
Index

607C

Name

Home offset

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

INT32 *

Default value

0

Units

count

* When home offset object is applied, the new coordinate system (which ishence generated) needs to be within the modulo range.
81

< Result of setting “home offset value” >Setting of home offset value*Home reference:
Home switch, homeindex, or mechanicalhard stop can behome references.

① When homing is completed,with home offset value = 0

Home reference point

Home reference point.
( position value = 0 )Position value -5 -4 -3 -2 -1 0

② When homing is completed,with home offset value = 5

Home reference point.
( position value = 5 )Position value 0 1 2 3 4 582

Object 0x6098: Homing methodlllObject description
Index

0x6098Name

Homing method

Object code

Variable

Data type

Integer8

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range-12 ~ 37

Default value

35

Units

No

Data description-12 ~ -1

cpc homing methods. See ch. 8.6 for details.

0

Do nothing

1 ~ 37

Method 1 ~ 37. See ch. 8.5 for details.

83

Object 0x60E3: Supported homing methods
It indicates the supported homing methods of the driver.
l
Object description

l

Index

60E3

Name

Supported homing methods

Object code

Array

Data type

Integer8

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

Manufacturer-specific -12 to -1, and all 402 standard
methods.

Default value

44

Units

No

The default value of other sub-indexes from 0x01 (1st supported homing method),
0x02 (2nd supported homing method) … till 0x44 (44th supported homing method)is “manufacturer-specific -12 to -1, and all 402 standard methods.”
See the chart below:
Sub-index #
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
0x10
0x11
0x12
0x13
0x14
0x15

Homing method #
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
1
2
3

Sub-index #
0x16
0x17
0x18
0x19
0x20
0x21
0x22
0x23
0x24
0x25
0x26
0x27
0x28
0x29
0x30

Homing method #
4
5
6
7
8
9
10
11
12
13
14
17
18
19
20

84

Sub-index #
0x31
0x32
0x33
0x34
0x35
0x36
0x37
0x38
0x39
0x40
0x41
0x42
0x43
0x44

Homing method #
21
22
23
24
25
26
27
28
29
30
33
34
35
37
--

Object 0x6099: Homing speedsThis object defines the configured speed used during homing, for searching theswitch or encoder Index position. The unit is count/s.
ll

Object description
Index

6099

Name

Homing speeds

Object code

Array

Data type

UINT32

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

2

Default value

2

Units

No

Sub-index

0x01

Description

Speed during search for switch

AccessRW

PDO mapping

No

Value range

UINT32

Default value

20,000Unitscount/s85

Sub-index

0x02

Description

Speed during search for encoder Index

AccessRW

PDO mapping

No

Value range

UINT32

Default value

20,000Unitscount/s

Object 0x609A: Homing acceleration
This object defines the configured acceleration and also the deceleration usedduring homing. The value is count/s2.

ll

Object description
Index

609A

Name

Homing acceleration

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT32

Default value

20,000Unitscount/s2.

86

Object 0x3293: Hard stop current
This object defines the current strength (% of the peak current) that the driver willconsider as encountering a hard stop. The unit is percentage (%).
It also sets a limit on the current output of the drive during homing to preventmachine damage in the event of unexpected hard stop impact.
ll

Object description
Index

3293

Name

Hard stop current

Object code

Variable

Data type

REAL32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

0.01 ~ 0.9 x peak current

Default value

0.5

Units

percentage (%)

87

Object 0x3294: Hard stop period
This object defines the time length of.
When the time duration that the drive current output exceeds hard stop current(0x3293) for a duration longer than defined by this “hard stop period” object, thedriver will consider this situation as encountering a hard stop.

ll

Object description
Index

3294

Name

Hard stop period

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

UINT 16

Default value

250

Units

UINT 1688

8.4 Functional Description
By choosing a homing mode, the following aspects are defined:l
The homing signall
The direction of activation, andlPosition of the index pulse, where appropriate.
The home position and zero position will be replaced due to home offset; seeprevious descriptions of how home offset is used.
In the diagrams shown in the following chapters 8.5 and 8.6, the encircled number
represents the chosen homing mode. The direction of movement is also indicated.
There are 4 sources of homing signal, they are:l
Positive limit switch,l
Negative limit switch,lHome switch, andlIndex pulse from an encoder898.5 CiA 402 Homing Methods
8.5.1 By Limit Switch and Index Pulse
Method 1:
Home on the first index pulse after departing from the negative limit switch.

Homing process:l Start with the negative motion unconditionally to the rising edge of thenegative limit switch. Then, move in positive direction until the first index
pulse is found.

90

Method 2:
Home on the first index pulse after departing from the positive limit switch.

Homing process:l Start with the positive direction unconditionally to the rising edge of thepositive limit switch. Then, move in negative direction until the first index
pulse is found.

91

Method 3:
Home on first index pulse after departing from home switch.

Homing process:l If the home switch is inactive, start with the positive direction to the risingedge of the home switch. Then, move in negative direction until the firstindex pulse is found.
l If the home switch is active, start with the negative direction until the firstindex pulse is found.

928.5.2 By Home Switch and Index Pulse
Method 4:
Home on the first index pulse after engaging home switch.

Homing process:l If the home switch is active, start with the negative direction to the fallingedge of the home switch. Then, move in positive direction until the first index
pulse is found.
l If the home switch is inactive, start with the positive direction until the firstindex pulse is found.

93

Method 5:
Home on the first index pulse after departing from home switch.

Homing process:l If the home switch is active, start with the positive direction until the firstindex pulse is found.
l If the home switch is inactive, start with the negative direction to the risingedge of the home switch. Then, move in positive direction until the first index
pulse is found.

94

Method 6:
Home on the first index pulse after engaging home switch.

Homing process:l If the home switch is active, start with the positive direction to the fallingedge of the home switch. Then, move in negative direction until the firstindex pulse is found.
l If the home switch is inactive, start with the negative direction until the firstindex pulse is found.

958.5.3 By Home Switch, Index Pulse, and Limit Switch
Method 7:
Home on the first index pulse after departing from home switch while moving in
negative direction.

Homing process:l If the home switch is inactive, start with the positive motion. If the home
switch is engaged, move in negative direction until the home switch isdisengaged, then find the first index pulse.
l If the home switch is active, start with the negative direction until the home
switch is disengaged, then continue moving in negative direction until thefirst index pulse is found.
l If the home switch is inactive, start with the positive motion. If the positive
limit switch is engaged, move in negative direction until the home switch isengaged and then disengaged, and then move in negative direction until thefirst index pulse is found.

96

Method 8:
Home on the first index pulse after engaging home switch while moving in
positive direction.

Homing process:l If the home switch is inactive, start with positive direction until the home
switch is met, then keep moving in positive direction until the first index pulse
is found.
l If the home switch is active, start with negative direction until home switch
is disengaged, then move in positive direction until home switch is engaged,
and then find the first index pulse.
l If the home switch is inactive, start with positive direction; when the positive
limit switch is engaged, move in negative direction until the home switch isengaged and disengaged, and then move in positive direction until the firstindex pulse is found.

97

Method 9:
Home on the first index pulse after engaging home switch while moving in
negative direction.

Homing process:l Start with positive direction unconditionally. If home switch is engaged, keep
moving in positive direction until home switch is disengaged, then move in
negative direction until home switch is engaged, and then find the first index
pulse.
l Start with positive direction unconditionally. If home switch is disengaged,
move in negative direction until home switch is engaged, then find the firstindex.
l Start with the positive motion unconditionally. If the positive limit switch isengaged, move in negative direction until home switch is engaged, then findthe first index pulse.

98

Method 10:
Home on the first index pulse after departing from home switch while moving in
positive direction.

Homing process:l Start with positive direction unconditionally. If home switch is then engaged,
keeping moving in positive direction until home switch is disengaged, thenfind the first index pulse.
l Start with positive direction unconditionally. If home switch is active and thendisengaged, keep moving in positive direction until the first index pulse isfound.
l Start with position direction unconditionally. If positive limit switch is thenengaged, move in negative direction. If home switch is engaged, move inpositive direction until home switch is disengaged, then find the first index
pulse.

99

Method 11:
Home on the first index pulse after departing from home switch while moving in
positive direction.

Homing process:l If home switch is inactive, move in negative direction. If home switch is thenengaged, move in positive direction until home switch is disengaged, then,find the first index pulse.
l If home switch is active, move in positive direction until home switch isdisengaged, continue moving in positive direction until the first index pulse isfound.
l If home switch is inactive, move in negative direction. If negative limit switch
is then engaged, move in positive direction until home switch is engaged,
continue moving in positive direction until home switch is disengaged, then,find the first index pulse.

100

Method 12:
Home on the first index pulse after engaging home switch while moving in
negative direction.

Homing process:l If home switch is active, move in positive direction. If home switch is thendisengaged, move in negative direction until home switch is engaged, then,find the first index pulse.
l If home switch is inactive, move in negative direction until home switch isengaged, then, continue moving in negative direction until the first index
pulse is found.
l If home switch is inactive, move in negative direction. If negative limit
switch is then engaged, move in positive direction until home switch isengaged. If home switch is then disengaged, move in negative direction
until home switch is engaged, then, find the first index pulse.

101

Method 13:
Home on the first index pulse after engaging home switch while moving in
positive direction.

Homing process:l Start with negative motion unconditionally. If home switch is then engaged,
continue moving in negative direction. If home switch is then disengaged, movein positive direction until home switch is engaged, then, find the first index pulse.
l Start with negative motion unconditionally. If home switch is then disengaged,
move in positive direction until home switch is engaged, then find the first index
pulse.
l Start with negative motion unconditionally. If negative limit switch is thenengaged, move in positive direction until home switch is engaged, then find thefirst index pulse.

102

Method 14:
Home on the first index pulse after departing home switch while moving in
negative direction.

Homing process:l Start with negative direction unconditionally. If home switch is inactive, movein negative direction. If home switch is then engaged, keep moving in negative
direction until home switch is disengaged, then, find the first index pulse.
l Start with negative direction unconditionally. If home switch is then disengaged,
keep moving in negative direction until the first index pulse is found.
l Start with negative direction unconditionally. If negative limit switch is thenengaged, move in positive direction. If home switch is then engaged, move in
negative direction until home switch is disengaged, then, find the first index
pulse.

103

8.5.4 Method 15 to 16: Reserved.
8.5.5 By Limit Switch
Method 17:
Home on negative limit switch without index pulse.

Homing process:l If negative limit switch is inactive, move in negative direction. If negative limit
switch is then engaged, move in positive direction to locate the falling edge ofthe negative limit switch.
l If negative limit switch is active, move in positive direction to locate the fallingedge of the negative limit switch

104

Method 18:
Home on positive limit switch without index pulse.

Homing process:l If positive limit switch is inactive, move in positive direction. If positive limit
switch is then engaged, move in negative direction to locate the falling edge ofthe positive limit switch.
l If positive limit switch is active, move in negative direction to locate the fallingedge of the positive limit switch

105

8.5.6 By Rising/Falling Edge of Home Switch
Method 19:
Home on falling edge of home switch without index pulse.

Homing process:If home switch is inactive, move in positive direction. If home switch is thenengaged, move in negative direction to locate the falling edge of the home
switch.
If home switch is active, move in negative direction to locate the falling edge ofthe home switch.

106

Method 20:
Home on rising edge of home switch without index pulse.

Homing process:If home switch is inactive, move to rising edge of the home switch in positive
direction.
If home switch is active, move in negative direction. If home switch is thendisengaged, move to rising edge of the home switch in positive direction.

107

Method 21:
Home on falling edge of home switch without index pulse.

Homing process:l If home switch is inactive, move in negative direction. If home switch is thenengaged, move to falling edge of the home switch in positive direction.
l If home switch is active, move to falling edge of the home switch in positive
direction.

108

Method 22:
Home on rising edge of home switch without index pulse.

Homing process:l If home switch is active, move in positive direction. If home switch is thendisengaged, move to rising edge of the home switch in negative direction.
l If home switch is inactive, move to rising edge of the home switch in negative
direction.

109

8.5.7 By Home Switch and Limit Switch
Method 23:
Home on falling edge of home switch while moving in negative direction.

Homing process:l If home switch is inactive, move in positive direction. If home switch is thenengaged, move to falling edge of the home switch in negative direction.
l If home switch is active, move to falling edge of the home switch in negative
direction.
l If home switch is inactive, move in positive direction. If positive limit switch
is then engaged, move in negative direction. If home switch is then engaged,
keeping moving to locate the falling edge of the home switch.

110Method 24:
Home on rising edge of home switch while moving in positive direction.

Homing process:l If home switch is inactive, move to rising edge of the home switch in positive
direction.
l If home switch is active, move in negative direction. If home switch is thendisengaged, move to rising edge of the home switch in positive direction.
l If home switch is inactive, move in positive direction. If positive limit switch
is then engaged, move in negative direction until home switch is engaged,
continue moving in negative direction. If home switch is then disengaged,
then, move to rising edge of the home switch in positive direction.

111

Method 25:
Home on rising edge of home switch while moving in negative direction.

Homing process:l If home switch is inactive, move in positive direction. If home switch is thenengaged, continue moving in positive direction. If home switch is thendisengaged, move to rising edge of the home switch in negative direction.
l If home switch is active, move in positive direction. If home switch is thendisengaged, move to rising edge of the home switch in negative direction.
l If home switch is inactive, move in positive direction. If positive limit switch
is then engaged, move to rising edge of the home switch in negative direction.

112

Method 26:
Home on falling edge of home switch while moving in positive direction.

Homing process:l If home switch is inactive, move in positive direction. If home switch is thenengaged, move to falling edge of the home switch in positive direction.
l If home switch is active, move to falling edge of the home switch in positive
direction.
l If home switch is inactive, move in positive direction. If positive limit switch
is then engaged, move in negative direction. If home switch is then engaged,
move to falling edge of the home switch in positive direction.

113

Method 27:
Home on falling edge of home switch while moving in positive direction.

Homing process:l If home switch is inactive, move in negative direction. If negative limit switch
is then engaged, move in positive direction. If home switch is then engaged,
move to falling edge of the home switch in positive direction.
l If home switch is active, move to falling edge of the home switch in positive
direction.
l If home switch is inactive, move in negative direction. If home switch is thenengaged, move to falling edge of the home switch in positive direction.

114

Method 28:
Home on rising edge of home switch while moving in negative direction.

Homing process:l If home switch is inactive, move to rising edge of the home switch in negative
direction.
l If home switch is active, move in positive direction. If home switch is thendisengaged, move to rising edge of the home switch in negative direction.
l If home switch is inactive, move in negative direction. If negative limit switch
is then engaged, move in positive direction until home switch is engaged,
continue moving in positive direction. If home switch is then disengaged,
move to rising edge of the home switch in negative direction.

115

Method 29:
Home on rising edge of home switch while moving in positive direction.

Homing process:l If home switch is inactive, move in negative direction. If negative limit switch isthen engaged, move to rising edge of the home switch in positive direction.
l If home switch is inactive, move in negative direction until home switch isengaged, continue moving in negative direction. If home switch is thendisengaged, move to rising edge of the home switch in positive direction.
l If home switch is active, move in negative direction. If home switch is thendisengaged, move to rising edge of the home switch in positive direction.

116

Method 30:
Home on falling edge of home switch while moving in negative direction.

Homing process:l If home switch is inactive, move in negative direction. If negative limit switch isthen engaged, move in positive direction. If home switch is then engaged, moveto falling edge of the home switch in negative direction.
l If home switch is active, move to the falling edge of the home switch in negative
direction.
l If home switch is inactive, move in negative direction. If home switch is thenengaged, move to falling edge of the home switch in negative direction.

8.5.8 Method 31 to 32: Reserved.

117

8.5.9 By First Pulse
Method 33:
Home on the first pulse while moving in negative direction.

Method 34:
Home on the first pulse while moving in positive direction.

118

8.5.10 By Current Position
Method 35:
Home on the current position.
*Note
Method 37 = Method 35

119

8.6 cpc Homing Methods
8.6.1 By Hard Stop
Method -1:
Home on the point of the positive hard stop.

Homing process:l Start with positive motion unconditionally until the positive hard stop is found.

120

Method -2:
Home on the point of the negative hard stop.

Homing process:l Start with negative motion unconditionally until the negative hard stop is
found.

121

8.6.2 By Hard Stop and Index
Method -3:
Home on the first index pulse after touching the positive hard stop.

Homing process:l Start with positive direction unconditionally. After touching the positive hardstop, move in negative direction until the first index is found.

122Method -4:
Home on the first index pulse after touching the negative hard stop.

Homing process:l Start with negative direction unconditionally. After touching the negative
hard stop, move in positive direction until the first index is located.

1238.6.3 By the middle of Hard Stop
Method -5:
Find middle between forward/backward hard stop, initial direction forward.

-5
Homing process:l Start with positive direction unconditionally. After touching the positive hardstop, move in negative direction until touching the negative hard stop, andthen home on the middle of the two hard stops (found during homing).

124

Method -6:
Find middle between forward/backward hard stop, initial direction backward.

-6
Homing process:l Start with negative direction unconditionally. After touching the negative
hard stop, move in positive direction until touching the negative hard stop,and then home on the middle of the two hard stops (found during homing).

1258.6.4 By the middle of Limit Switch
Method -7:
Find middle between forward/backward limit switch falling edge, initial direction
forward.

-7

Positive
Limit
SwitchNegative
Limit
SwitchHoming process:l If negative limit switch is active, start with positive direction until the positive
limit switch is engaged; then, move in negative direction to find the middle ofboth switches.
l If negative limit switch is inactive, start with positive direction until the
positive limit switch is engaged and then move in negative direction. If
negative limit switch is engaged, move in positive direction until the middle
of both switches is found.
l If the positive limit switch is active, start with negative direction until thenegative limit switch is engaged; then, move in positive direction to find the
middle of both switches.
126

Method -8:
Find middle between forward/backward limit switch falling edge, initial direction
backward-8

Positive
Limit
SwitchNegative
Limit
SwitchHoming process:l If negative limit switch is active, start with positive direction until the positive
limit switch is engaged; then, move in negative direction to find the middle ofboth switches.
l If negative limit switch is inactive, start with negative direction until thenegative limit switch is engaged and then move in positive direction. If thepositive limit switch is then engaged, move in negative direction until the
middle of both switches is found.
l If the positive limit switch is active, start with negative direction until thenegative limit switch is engaged; then, move in positive direction to find the
middle of both switches.

1278.6.5 By the middle of Home Switch
Method -9:
Find middle of home switch falling edge, initial direction forward, allow limit
switch.

-9
Home
SwitchPositive
Limit
SwitchHoming process:l If the home switch is inactive, start with positive direction until the home
switch is engaged and disengaged, then move in negative direction until the
middle of home switch is found.
l If the home switch is active, move in positive direction until the home switch
is disengaged, then move in negative direction until the home switch isengaged and then disengaged. Reverse to move in positive direction and findthe middle of home switch.
l If the home switch is inactive, move in positive direction. If the positive limit
switch is then engaged, move in negative direction until the falling edge of the128home switch is engaged, then, move in positive direction until the middle ofthe home switch is found.
l If the positive limit switch is active, move in negative until the falling edge ofhome switch is met, then move in positive direction and find the middle ofhome switch.

Method -10:
Find middle of home switch falling edge, initial direction backward, allow limit
switch-10
Home
SwitchNegative
Limit
SwitchHoming process:l If the negative limit switch is active, move in positive direction until the home
switch is engaged and then disengaged. Then move in negative direction until
the middle of the home switch is found.
l If the home switch is inactive, start with negative direction. If the negative
limit switch is then engaged, move in right direction until the falling edge of129

the home switch is met. Then move in negative direction to find the middleof the home switch.
l If home switch is active, move in negative direction. If the home switch is thendisengaged, move in positive direction until the home switch is engaged anddisengaged. Then, move in negative direction until the home switch isengaged again and find the middle of home switch.
l If the home switch is inactive, move in negative direction until the falling edgeof home switch. If the home switch is then disengaged, move in positive
direction until the middle of the home switch is found.

130

Method -11:
Find middle of home switch falling edge, initial direction forward, allow hard stop.

-11
Home
SwitchHoming process:l Start with positive direction unconditionally. If home switch is inactive, keep
going (and then if hard stop is met, reverse firstly) until meeting the risingand falling edge of the home switch, then reverse again to locate the middleof home switch.
l Start with positive direction unconditionally. If home switch is active, seek
the positive side of home switch, then move in negative direction to meet thenegative side of home switch, then reverse to find the middle of home switch.

131

Method -12:
Find middle of home switch falling edge, initial direction backward, allow hard
stop.

-12
Home
SwitchHoming process:l Start with negative direction unconditionally. If home switch is inactive, keep
going (and then if hard stop is met, reverse firstly) until meeting the risingand falling edge of the home switch, then reverse again to locate the middleof home switch.
l Start with negative direction unconditionally. If home switch is active, gomeet the negative side of home switch, then move in positive direction tomeet the positive side of home switch, then reverse to find the middle ofhome switch.

132

9. Touch Probe Functionality
9.1 Object
Object 0x60B8: Touch probe function
This object indicates the configured function of the touch probe.
ll

Object description
Index

60B8

Name

Touch probe function

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

1

Units

Count

See value definition below.

133

l

Value definition
Bit
0
1

2, 3

4
5
6, 7
8
9

10, 1112
13
14, 15

Value

Description0

Switch off touch probe 1

1Enable touch probe 10

Trigger first event

1

Continuous

00b

Trigger with touch probe 1 input

01b

Trigger with zero impulse signal or position encoder.

10b

Reserved

11b

Reserved.

0

Switch off sampling at positive edge of touch probe 1

1Enable sampling at positive edge of touch probe 1.

0

Switch off sampling at negative edge of touch probe 1

1Enable sampling at negative edge of touch probe 1.

-

User-defined (e.g. for testing)0

Switch off touch probe 2

1Enable touch probe 20

Trigger first event

1

Continuous

00b

Trigger with touch probe 2 input

01b

Trigger with zero impulse signal or position encoder

10b

Reserved

11b

Reserved0

Switch off sampling at positive edge of touch probe 2

1Enable sampling at positive edge of touch probe 20

Switch off sampling at negative edge of touch probe 2

1Enable sampling at negative edge of touch probe 2-User-defined (e.g. for testing)134

Object 0x60B9: Touch probe status
This object shows the status of the touch probe.
ll

Object description
Index

60B9

Name

Touch probe status

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT16

Default value

No

Units

No

See value definition below.

135

l

Value definition
Bit

Value

Description

0

Touch probe 1 is switched off

1

Touch probe 1 is enabled0Touch probe 1 no positive edge value stored

1

Touch probe 1 positive edge position stored

0

Touch probe 1 no negative edge value stored

1

Touch probe 1 negative edge position stored

3~5

0

Reserved

6, 7-

User-defined (e.g. for testing)0

Touch probe 2 is switched off

1

Touch probe 2 is enabled0Touch probe 2 no positive edge value stored

1

Touch probe 2 positive edge position stored

0

Touch probe 2 no negative edge value stored

1

Touch probe 2 negative edge position stored

0

Reserved

0
1
2

8
9
10
11~13

136

Object 0x60BA: Touch probe 1 positive edge
This object shows the position value of the touch probe 1 at positive edge. The value
is given in counts.
ll

Object description
Index

60BA

Name

Touch probe 1 positive edge

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

count

137

Object 0x60BB: Touch probe 1 negative edge
This object shows the position value of the touch probe 1 at negative edge. The
value is given in counts.
ll

Object description
Index

60BB

Name

Touch probe 1 negative edge

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

count

138

Object 0x60BC: Touch probe 2 positive edge
This object shows the position value of the touch probe 2 at positive edge. The value
is given in counts.
ll

Object description
Index

60BC

Name

Touch probe 2 positive edge

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

count

139

Object 0x60BD: Touch probe 2 negative edge
This object shows the position value of the touch probe 2 at negative edge. The
value is given in counts.
ll

Object description
Index

60BD

Name

Touch probe 2 negative edge

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

No

Units

count

140

9.2 Touch Probe Edge Counter for ContinuousMode
9.2.1 General information
For continuous touch probe mode [namely, object 0x60B8, bit 1 = 1 (continuous) or
object 0x60B8, bit 9 = 1 (continuous)], a counter per touch probe channel isincremented on each touch probe event (i.e., rising or falling edge). Hence, thecontrol device can check how many touch probe events have happened between
the control cycles.
For each touch probe and each edge, a counter (namely, 0x60D5, 0x60D6, 0x60D7
and 0x60D8) is defined.
Please refer to the timing diagram example (ch. 9.2.2) for further explanation.

1419.2.2 Timing Diagram—Example of Touch Probe Edge Counter for Continuous Mode
< Timing diagram >0x60B8 bit 0

1

Enable touch probe 1

0x60B8 bit 1

Configuration

Trigger first event

0x60B8 bit 4

13
1
1

Enable sampling at positive edge

0x60B8 bit 5

7

1

9

Enable sampling at negative edge

20x60B9 bit 0

14

Touch probe 1 is enabled

Status4

0x60B9 bit 1

8

12

14

Touch probe 1 positive edge stored

6

0x60B9 bit 2

14

Touch probe 1 negative edge stored

3

11

5

(external) Touch probe signal
4aPosition value

0x60BA

Touch probe position 1 positive value

0x60BB

Touch probe position 1 negative value

0000

12a
yyyy

142

ssss
14a

6a
0000

10

zzzz

< Explanation of the timing diagram >Object 0x60B8: the configured function of the touch probe.
Object 0x60B9: the status of the touch probe.

Touch probe behavior

No. #

(1)

0x60B8, bit 0 = 1

Enable touch probe 1

0x60B8, bit 1, 4, 5

Configure and enable touch probe 1 positive andnegative edge(2)

è 0x60B9, bit 0 = 1

Status “Touch probe 1 enabled” is set(3)

External touch probe signal has positive edge(4)

è 0x60B9, bit 1 = 1

Status “Touch probe 1 positive edge stored” is set(4a)è 0x60BA

Touch probe position 1 positive value is stored(5)

External touch probe signal has negative edge(6)

è 0x60B9, bit 2 = 1

Status “Touch probe 1 negative edge stored” is set(6a)è 0x60BB

Touch probe position 1 negative value is stored(7)

0x60B8, bit 4 = 0“Sampling positive edge” is disabled(8)

è 0x60B9, bit 0 = 0

Status “Touch probe 1 positive edge stored” is
reset

(8a)

è 0x60BA

Touch probe position 1 positive value is notchanged

(9)0x60B8, bit 4 = 1“Sampling positive edge” is enabled(10)

è 0x60BA

Touch probe position 1 position value is still notchanged(11)

External touch probe signal has positive edge(12)

è 0x60B9, bit 1 = 1

Status “Touch probe 1 positive edge stored” is set(12a)è 0x60BA

Touch probe position 1 positive value is stored(13)

0x60B8, bit 0 = 0

Touch probe 1 is disabled(14)

è 0x60B9, bit 0,1,2 = 0

Status bits are reset(14a)è 0x60BA, 0x60BB

Touch probe position 1 positive/negative value are
not changed1439.2.3 Object
Object 0x60D5: Touch probe 1 positive edge counter- This object is a continuous counter which is incremented with each positive edge
(rising edge) at touch probe 1.
- This counter is only valid when the “touch probe 1 input” is enabled (i.e., 0x60B8,
bit 0 = 1).
- For single measuring, its range is 0 to 1.
For continuous measuring, its range is an unsigned 16-bit value with overflow.
ll

Object description
Index

60D5

Name

Touch probe 1 positive edge counter

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT16

Default value

No

Units

No

144

Object 0x60D6: Touch probe 1 negative edge counter- This object is a continuous counter which is incremented with each negativeedge (falling edge) at touch probe 1.
- This counter is only valid when the “touch probe 1 input” is enabled (i.e., 0x60B8,
bit 0 = 1).
- For single measuring, its range is 0 to 1.
For continuous measuring, its range is an unsigned 16-bit value with overflow.
ll

Object description
Index

60D6

Name

Touch probe 1 negative edge counter

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT16

Default value

No

Units

No

145

Object 0x60D7: Touch probe 2 positive edge counter- This object is a continuous counter which is incremented with each positive edge
(rising edge) at touch probe 2.
- This counter is only valid when the “touch probe 1 input” is enabled (i.e., 0x60B8,
bit 0 = 1).
- For single measuring, its range is 0 to 1.
For continuous measuring, its range is an unsigned 16-bit value with overflow.
ll

Object description
Index

60D7

Name

Touch probe 2 positive edge counter

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT16

Default value

No

Units

No

146

Object 0x60D8: Touch probe 2 negative edge counter- This object is a continuous counter which is incremented with each negativeedge (falling edge) at touch probe 2.
- This counter is only valid when the “touch probe 1 input” is enabled (i.e., 0x60B8,
bit 0 = 1).
- For single measuring, its range is 0 to 1.
For continuous measuring, its range is an unsigned 16-bit value with overflow.
ll

Object description
Index

60D8

Name

Touch probe 2 negative edge counter

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT16

Default value

No

Units

No

147

10. Profile Velocity Mode
10.1 General Information
The profile velocity mode includes the following sub-functions:l
Demand value input via trajectory generatorl
Velocity capture using the position sensor or velocity sensorlVelocity control function with the appropriate input and output signalslMonitoring of the profile velocity using a window functionlMonitoring of the velocity actual value using a threshold
The input parameters are:l
Profile velocitylProfile accelerationlProfile decelerationl
Quick stop deceleration14810.2 Structure of Controlword and Statusword
10.2.1 Controlword of the Profile Velocity Mode.
Bit

Function

0~3*See chapter 4.3.1.1 - Device Control/Controlword structure

4~6

Reserved

7*See chapter 4.3.1.1 - Device Control/Controlword structure

8

Halt

9~15

*See chapter 4.3.1.1 - Device Control/Controlword structure

Definition of bit 8
Bit

8

Name

Value Description
0

Execute or continue the motion.

1

Stop the motor according to the halt option
code (0x605D).

Halt

149

10.2.2 Statusword of the Profile Velocity Mode.
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Target reached

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Zero speed

13

Reserved

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

10

12

Definition of bit 10 and 12
Name

Value Description
0Halt = 0: Target not reached.
Halt = 1: the motor decelerates.

1

Halt = 0: Target is reached.
Halt = 1: the motor decelerates to 0 velocity.

0

Present speed is above the velocity
threshold.

1

Present speed is less than or equal to thevelocity threshold.

Target reached

Zero speed15010.3 Functional Descriptionlll

The actual velocity is acquired via the position encoder.
Target reached (bit 10 in statusword)
While the difference between the target velocity and the velocity actual
value is within the velocity window longer than the velocity window time,
the target reached bit (bit 10) will be set to 1.
Velocity threshold (bit 12 in statusword)l=0
When the actual velocity is greater than the velocity thresholdlonger than the threshold time.
l=1
When the actual velocity is less than or equal to the velocity
threshold. This situation will be regarded as the motor is notmoving.

151

10.4 Objects
Object 0x606B: Velocity demand value
The value of velocity demand as generated by the trajectory generator.
ll

Object description
Index

606B

Name

Velocity demand value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

No

Value range

INT32

Default value

No

Units

count/s152

Object 0x606C: Velocity actual value
This object gives the actual velocity value acquired from the velocity sensor or the
position encoder.
llObject description
Index

606C

Name

Velocity actual value

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT32

Default value

0

Units

count/s153

Object 0x606D: Velocity window
This object shows the configured velocity window.
ll

Object description
Index

606C

Name

Velocity actual value

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

count/s154

Object 0x606E: Velocity window time
This object shows the configured velocity window time in ms.
ll

Object description
Index

606E

Name

Velocity actual value

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

ms

155

Object 0x606F: Velocity threshold
This object shows the configured velocity threshold.
llObject description
Index

606F

Name

Velocity threshold

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

count/s156

Object 0x6070: Velocity threshold time
This object shows the configured velocity threshold time.
When the present speed is less than or equal to the velocity threshold (0x606F)
longer than the velocity threshold time (0x6070), the motor will be regarded asstationary.
llObject description
Index

6070

Name

Velocity threshold time

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

ms

157

11. Profile Torque Mode
11.1 General Information
The profile torque mode allows a host (external) control system (i.e., closed-loop
speed controller, open-loop transmission force controller) to transmit the target
torque value (0x6071), which is processed through the trajectory generator. The
torque slope parameter is required.
When the torque command is changed, the motor torque ramps to the new value
at the rate programmed in “torque slope (index 0x6087).” If the control device
switches the controlword bit 8 (Halt) from 0 to 1, the driver ramps the effort output
to zero; If bit 8 is set from 1 to 0, the driver ramps the effort output up to the target
torque.
All the definitions refer to the rotary motor. For linear motors, all the “torque”
objects refer to a “force” instead.
Please note that the current limits (including continuous current and peak current)
need to suit the motor rated current.
The inputs to the torque control are as follows:lTarget torque (0x6071)lTorque slope (0x6087)
l
ControlwordlMax current (0x6073)
lMotor rated torque (0x6076)
lMotor rated current (0x6075)

158

11.2 Structure of Controlword and Statusword
11.2.1 Controlword of the Profile Torque Mode
Bit

Function

0~3*See chapter 4.3.1.1 - Device Control/Controlword structure

4~6

Reserved

7*See chapter 4.3.1.1 - Device Control/Controlword structure

8

Halt

9~15

*See chapter 4.3.1.1 - Device Control/Controlword structure

Definition of bit 8
Bit

8

Name

Value Description
0

Execute or continue the motion.

1

Stop the motor according to the halt option
code (0x605D).

Halt

159

11.2.2 Statusword of the Profile Torque Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Target reached

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12~13

Reserved

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

10

Definition of bit 10
Name

Value Description
0Halt = 0: Target torque not reached.
Halt = 1: the motor decelerates.

1

Halt = 0: Target torque is reached.
Halt = 1: the motor decelerates to 0 velocity.

Target reached160

11.3 Objects
Object 0x6071: Target torqueThis parameter is the input value for the torque controller in profile torque mode.
llObject description
Index

6071

Name

Target torqueObject code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

0.1%

161

Object 0x6073: Max current
The motor peak current.
This value shows the maximum permissible torque creating current in the motor.
llObject description
Index

6073

Name

Max current

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT16

Default value

0

Units

0.1%

162

Object 0x6074: Torque demandThis object provides the output value of the trajectory generator.
ll

Object description
Index

6074

Name

Torque demand

Object code

Variable

Data type

UINT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT16

Default value

None

Units

0.1%

163

Object 0x6075: Motor rated current
The motor continuous current.
This value is acquired from the motor name-plate. All relative current data refers tothis value.
The unit is in mA.
ll

Object description
Index

6075

Name

Motor rated current

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

UINT32

Default value

0

Units

mA

164

Object 0x6076: Motor rated torqueThis value is acquired from the motor name-plate. All relative torque data refer tothis value.
Note:
For linear motors, the name of this object is not changed, but the motor rated force
is entered in multiples of mN (milli Newton).
llObject description
Index

6076

Name

Motor rated torqueObject code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

No

Value range

UINT32

Default value

0

Units

mNm (milli Newton metre)

165

Object 0x6077: Torque actual value
This value shows the actual value of the torque. It corresponds to the instantaneous
torque in the motor.
Note – regarding object 0x6077 (Torque actual value ) and 0x6078 (Current actual value)
1. The cpc drive assumes 100% current = 100% torque.
2. The cpc drive uses object 0x6078. Nevertheless, the value of 0x6077 and 0x6078
is the same.
ll

Object description
Index

6077

Name

Torque actual value

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT16

Default value

0

Units

0.1%

166

Object 0x6078: Current actual value
This object shows the actual value of the current. It corresponds to the current in
the motor.
Note – regarding object 0x6077 (Torque actual value ) and 0x6078 (Current actual value)
1. The cpc drive assumes 100% current = 100% torque.
2. The cpc drive uses object 0x6078. Nevertheless, the value of 0x6077 and 0x6078
is the same.
ll

Object description
Index

6078

Name

Current actual value

Object code

Variable

Data type

INT16

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

INT16

Default value

0

Units

0.1%

167

Object 0x6079: DC link circuit voltage
This object shows the DC link circuit voltage at the driver immediately.
llObject description
Index

6079

Name

DC link circuit voltage

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

No

Value range

UINT32

Default value

0

Units

mV

168

Object 0x6087: Torque slope
This object describes the rate of change of torque in units of per thousand of rated
torque per second.
llObject description
Index

6087

Name

Torque slope

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

UINT32

Default value

100,000

Units

0.1%/s169

12. Cyclic Synchronous Position Mode12.1 General Information
The feature of cyclic synchronous position mode (csp mode) is that the trajectory
generator is located in the control device, not in the driver.
The overall structure of csp mode is as follows:<Overview of cyclic synchronous position mode>
Position range limit (0x607B)
Software position limit (0x607D)
Max motor speed (0x6080)
Max current (0x6073)
Motor rated current (0x6075)
Torque offset (0x60B2)
Velocity offset (0x60B1)
Position offset (0x60B0)
Target position(0x607A)++

Positioncontrol++

Velocity
control++

Torquecontrol

Motor
SensorTorque actual value (0x6077)
Velocity actual value (0x606C)
Position actual value (0x6064)l

The control device provides the target position (0x607A, which is interpreted
as absolute value in this mode) to the driver and optionally, additive velocity
offset as well as torque offset to allow for velocity and/or torque feedforward
control.
170l

The driver executes the control functions (i.e., position control, velocity control,
and torque control) and gives the control device the actual values (i.e., actual
values of position, velocity, and torque) measured by sensors.
Ø The driver external control function:
The performance of the control function is influenced by control
parameters (e.g., limit functions) which are externally applicable.

12.2 Functional Description
Inputs to the drive’s control function:lTarget position (0x607A)l
Position offset (0x60B0)(optional; to be added to the target position to allow two examples to set
up the position).
l
Velocity offset (6x60B1)(optional; used for feedforward control)lTorque offset (0x60B2)(optional; used for feedforward control)l(In cascaded structure where position control is followed by a velocity or
torque control) The output of the position control loop is used as an input fora further calculation in the driver.
lPosition Limit functions, such as Position range limit (0X607B) and Software
position limit (0X607D).
l
Following error window (0x6065)
l
Following error time out (0x6066)lQuick stop deceleration (0x6085)l
Quick stop option code (0x605A)
lInterpolation time period (0x60C2)
Defines the time duration between two updates of the target position
and/or additive position and is used for intercycle interpolation.
lPosition range limit (0x607B)
171

l
l
l
l

Software position limit (0x607D)
Max motor speed (0x6080)
Max current (0x6073)
Motor rated current (0x6075)

Outputs of the drive’s control function:lPosition actual value (0x6064)
It is used as a compulsory output to the control device.
l
Velocity actual value (0x606C)l
Torque actual value (0x6077)
lFollowing error actual value (0x60F4)
It can be used as an extra parameter.

172

12.3 Structure of Controlword and Statusword
The csp mode does not use mode-specific controlword bit.
It uses 2 bits in statusword for mode-specific purpose.

12.3.1 Statusword of the Cyclic Synchronous Position Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Reserved

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Drive follows the command value.

13

Following error

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

12

13

Definition of bit 12, and 13
Name

Drive follows thecommand value.

Following error

Value Description0

The driver doesn’t follow the command
value – “Target position” is ignored.

1

The driver follows the command value –“Target position” is used as input to theposition control loop.

0

No following error.

1

Following error occurs.

17312.4 Object
Object 0x60B0: Position offset
This object shows the value of the position offset.
llObject description
Index

60B0

Name

Position offset

Object code

Variable

Data type

Integer32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

INT32

Default value

0

Units

count

174

Object 0x60B1: Velocity offset
This object shows the offset of the target position.
ll

Object description
Index

60B1

Name

Velocity offset

Object code

Variable

Data type

INT32

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

Integer32

Default value

0

Units

count

175

Object 0x60B2: Torque offset
This object provides the offset for torque value.
ll

Object description
Index

60B2

Name

Torque offset

Object code

Variable

Data type

Integer16

Entry description
Sub-index

0x00

AccessRW

PDO mapping

Yes

Value range

INT16

Default value

0

Units

0.1%

176

13. Cyclic Synchronous Velocity Mode
13.1 General Information
The feature of cyclic synchronous velocity mode (csv mode) is that the trajectory
generator is in the control device, not in the driver.
The overall structure of csv mode is as follows:<Overview of cyclic synchronous velocity mode>
Max motor speed (0x6080)
Max current (0x6073)
Motor rated current (0x6075)
Torque offset (0x60B2)
Velocity offset (0x60B1)
Target velocity(0x60FF)++

Velocity
control++

Torquecontrol

Motor
SensorTorque actual value (0x6077)
Velocity actual value (0x606C)ll

The control device provides the target velocity (0x60FF) to the driver andoptionally, additive velocity offset as well as torque offset to allow a secondsource for velocity and/or torque feedforward.
The driver executes the control functions (i.e., velocity control and torquecontrol) and gives the control device the actual values (i.e., actual values of
position, velocity, and torque) measured by sensors.
Ø Users can close the position control loop over the communication system ifthey wish.
177Ø The driver external control function:
The performance of the control function is influenced by control
parameters (e.g., limit functions) which are externally applicable.
l

The csv mode includes the following sub-functions:Ø Demand value input;
Ø Velocity capture using position sensor or velocity sensor;
Ø Velocity control function with appropriate input and output signals;
Ø Limitation of torque demand – based on the user-configured max motor
speed, rated current and peak current.

178

13.2 Functional Description
Inputs to the drive’s control functionlTarget velocity (0x60FF)l
Velocity offset (6x60B1)(optional; to be added to the target velocity to allow two examples to set
up the velocity).
lTorque offset (0x60B2)(optional; used for feedforward control)l(In cascaded structure where a velocity control is followed by a torque control)
The output of the velocity control loop is used as an input for a further
calculation in the driverl
Quick stop deceleration (0x6085)l
Quick stop option code (0x605A)
lInterpolation time period (0x60C2)
Defines the time duration between two updates of the target velocity
and/or additive velocity and is used for intercycle interpolation.
l
Max motor speed (0x6080)l
Max current (0x6073)
lMotor rated current (0x6075)

Outputs of the drive’s control functionl
Velocity actual value (0x606C)
It is used as a compulsory output to the control device.
lTorque actual value (0x6077)

179

13.3 Structure of Controlword and Statusword
The csv mode doesn’t use mode-specific controlword bit.
It uses some bits in statusword for mode-specific purpose.

13.3.1 Statusword of the Cyclic Synchronous Velocity Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Reserved

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Drive follows the command value.

13

Reserved

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

12

Definition of bit 12
Name

Drive follows thecommand value.

Value Description0

The driver doesn’t follow the command
value – “Target velocity” is ignored.

1

The driver follows the command value –“Target velocity” is used as input to thevelocity control loop.

180

14. Cyclic Synchronous Torque Mode
14.1 General Information
The feature of cyclic synchronous torque mode (cst mode) is that the trajectory
generator is in the control device, not in the driver.
The overall structure of cst mode is as follows:<Overview of cyclic synchronous torque mode>

Max current (0x6073)
Motor rated current (0x6075)
Torque offset (0x60B2)
Target torque(0x6071)++

Torquecontrol

Torque actual value (0x6077)

Motor
SensorVelocity actual value (0x606C)
Position actual value (0x6064)ll

The control device provides the target torque (0x6071) to the driver andoptionally, additive torque offset to allow two examples to set up the torque.
The driver executes the control functions (i.e., torque control) and gives thecontrol device the actual values (i.e., actual values of position, velocity, andtorque) measured by sensors.

181

l

The cst mode includes the following sub-functions:Ø Demand value input;
Ø Torque capture;Ø Torque control function with appropriate input and output signals;
Ø Limitation of torque demand – based on the user-configured rated current
and peak current.

14.2 Functional Description
Inputs to the drive’s control functionlTarget torque (0x6071)lTorque offset (6x60B2)(optional; to be added to the target torque to allow two examples to set
up the torque).
lInterpolation time period (0x60C2)
Defines the time duration between two updates of the target velocity
and/or additive velocity and is used for intercycle interpolation.
l
Max current (0x6073)
lMotor rated current (0x6075)

Outputs of the drive’s control functionlTorque actual value (0x6077)
It is used as a compulsory output to the control device.

182

14.3 Structure of Controlword and Statusword
The csv mode doesn’t use mode-specific controlword bit.
It uses some bits in statusword for mode-specific purpose.

14.3.1 Statusword of the Cyclic Synchronous Torque Mode
Bit

Function

0~9*See chapter 4.3.2.1 - Device Control/Statusword structure

10

Reserved

11*See chapter 4.3.2.1 - Device Control/Statusword structure

12

Drive follows the command value.

13

Reserved

14~15*See chapter 4.3.2.1 - Device Control/Statusword structure

l

Bit

12

Definition of bit 12
Name

Drive follows thecommand value.

Value Description0

The driver doesn’t follow the command
value – “Target velocity” is ignored.

1

The driver follows the command value –“Target velocity” is used as input to thevelocity control loop.

183

15. Optional application FE
The objects described in this chapter are used for the optional generic input/output
functional elements.

Object 0x60FD: Digital inputs
This object shows the logical input levels.
l

Bit definition
Bit

Function0

Negative limit switch

1

Positive limit switch

2

Home switch

3*

Interlock4 ~ 15Reserved

16 ~ 31(Manufacturer-specific)
Digital-In port B + port C. See illustration below.
depends on the drive model
31

...

...
……

……

0

DI-B1
DI-B2
DI-B3

B
DI-C1
DI-C2
DI-C3

C

16

*: Bit 3 (interlock) shows the status of the digital input pin which is defined as“Quick Stop”; if quick stop signal is high, then bit 3 (interlock) signal is high.

184

l

l

l

Object description
Index

60FD

Name

Digital inputs

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessRO

PDO mapping

Yes

Value range

UINT32

Default value

No

Units

No

Value definition
Field
Negative limit switch
Positive limit switch
Home switch
InterlockReserved
Manufacturer-specific

Value

Definition

0

Negative limit switch is not reached1

Negative limit switch is reached0

Positive limit switch is not reached1

Positive limit switch is reached0Home switch is not reached1

Home switch is reached0Interlock is not activated1

Interlock is activated0

Reserved0

Function is not activated1

Function is activated185

Object 0x60FE: Digital outputs
This object shows the logical output levels.
l

Bit definition
Bit

Function0

Set brake

1 ~ 15Reserved

16 ~ 31(Manufacturer-specific)
Digital-Out port B + port C. See illustration below.
depends on the drive model
...

31

B

……

……

Object description
Index

60FE

Name

Digital output

Object code

Array

Data type

UINT32

186

16
DO-B1
DO-B2
DO-B3

C
DO-C1
DO-C2
DO-C3

l

...

0

l

l

Entry description
Sub-index

0x00

Description

Highest sub-index supported

AccessC

PDO mapping

No

Value range

0x01

Default value

1

Units

No

Sub-index

0x01

Description

Physical outputs

AccessRW

PDO mapping

No

Value range

UINT32

Default value

0000 0000h

Units

No

Value definition
Field
Set brake*
Reserved
Manufacturer-specific

Value

Definition0

Brake is deactivated1

Brake is activated.

0x00

Reserved0

Function is not activated1

Function is activated*: This bit is read-only, it shows the status of the brake.

18716. Device information
Object 0x67FE: Version numberThis object indicates the version number of the CiA® 402 DSP–Part 2 that is carriedout in the device.
Currently cpc applies the version number 3.0.0.
l

Bit definition
Bit

Function

0~7

Sub version number

8 ~ 15

Minor version no.

16 ~ 23

Major version no.

24 ~31

Reserved.
ll

Object description
Index

67FE

Name

Version number

Object code

Variable

Data type

UINT32

Entry description
Sub-index

0x00

AccessC

PDO mapping

No

Value range

No

Default value

3

Units

No

188

l

Value definition
Field

Value

Definition

Major version no.

3

Major version number for this profile
specification version.

Minor version no.

0

Minor version number for this profile
specification version.

Sub version no.

0

Sub-version number for this profile
specification version.

Reserved

0

Reserved

End of Page

189