CiA 402 for motor controller CMMP-AS-...-M3/-M0

CiA 402 for motor controller
CMMP-AS-...-M3/-M0
Description
Device profile
CiA 402
for motor controller
CMMP-AS-...-M3
via fieldbus:
– CANopen
– EtherCAT
with interface
CAMC-EC
for motor controller
CMMP-AS-...-M0
via fieldbus:
– CANopen
8022083
1304a
CMMP-AS-...-M3/-M0
Translation of the original instructions
GDCP-CMMP-M3/-M0-C-CO-EN
CANopen®, CiA®, EthetCAT®, TwinCAT® are registered trademarks of the respective trademark owners
in certain countries.
Identification of hazards and instructions on how to prevent them:
Warning
Hazards that can cause death or serious injuries.
Caution
Hazards that can cause minor injuries or serious material damage.
Other symbols:
Note
Material damage or loss of function.
Recommendations, tips, references to other documentation.
Essential or useful accessories.
Information on environmentally sound usage.
Text designations:
• Activities that may be carried out in any order.
1. Activities that should be carried out in the order stated.
– General lists.
2
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
Table of contents – CMMP-AS-...-M3/-M0
1
Fieldbus interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2
CANopen [X4] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.1
2.2
2.5
General information on CANopen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cabling and pin assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1
Pin allocations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2
Cabling instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration of CANopen stations on the CMMP-AS-...-M3 . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1
Setting of the node number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2
Setting of the transmission rate with DIP switches . . . . . . . . . . . . . . . . . . . . . . .
2.3.3
Activation of CANopen communication with DIP switches . . . . . . . . . . . . . . . . .
2.3.4
Setting the physical units (factor group) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration of CANopen participants on the CMMP-AS-...-M0 . . . . . . . . . . . . . . . . . . . . .
2.4.1
Setting the node number via DINs and FCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.2
Setting the transmission rate via DINs or FCT . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.3
Setting the protocol (data profile) via DINs or FCT . . . . . . . . . . . . . . . . . . . . . . .
2.4.4
Activation of CANopen communication via DINs or FCT . . . . . . . . . . . . . . . . . . .
2.4.5
Setting the physical units (factor group) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration CANopen master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
11
11
11
13
14
15
15
15
16
17
17
18
18
19
19
3
CANopen access procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
3.1
3.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SDO Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1
SDO Sequences for Reading and Writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.2
SDO Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3
Simulation of SDO access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PDO Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.2
Objects for PDO Parametrisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.3
Activation of PDOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SYNC message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EMERGENCY Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.2
Structure of the EMERGENCY Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.3
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Network Management (NMT Service) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bootup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.2
Structure of the Bootup Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
21
22
23
24
25
26
29
34
35
36
36
37
37
39
41
41
41
2.3
2.4
3.3
3.4
3.5
3.6
3.7
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CMMP-AS-...-M3/-M0
3.8
Heartbeat (Error Control Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2
Structure of the Heartbeat Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.3
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Nodeguarding (Error Control Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.2
Structure of the Nodeguarding Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.3
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.4
Object 100Dh: life_time_factor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.9.5
Table of Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
42
42
42
43
43
43
44
45
45
EtherCAT with CoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EtherCat-Interface CAMC-EC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing the EtherCAT interface in the controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pin allocation and cable specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CANopen communication interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.1
Configuration of the Communication Interface . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.2
New and revised objects under CoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.3
Objects not supported under CoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6 Communication Finite State Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.1
Differences between the finite state machines of CANopen and EtherCAT . . . .
4.7 SDO Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8 PDO Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.9 Error Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10 Emergency Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11 XML Device Description File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.1
Fundamental structure of the device description file . . . . . . . . . . . . . . . . . . . . .
4.11.2
Receive PDO configuration in the RxPDO node . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.3
Transmit PDO configuration in the TxPDO node . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.4
Initialisation commands via the “Mailbox” node . . . . . . . . . . . . . . . . . . . . . . . . .
4.12 Synchronisation (Distributed Clocks) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
46
48
48
49
50
52
59
60
62
63
64
66
66
67
67
69
70
70
71
5
Setting parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
Loading and Saving Parameter Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Compatibility settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conversion factors (factor group) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output stage parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Current Regulator and Motor Adjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Speed Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Position Controller (Position Control Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setpoint value limitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
75
77
87
94
101
103
114
3.9
4
4.1
4.2
4.3
4.4
4.5
4
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
Encoder Adjustments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Incremental Encoder Emulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setpoint/Actual Value Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analogue inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Digital inputs and outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Limit Switch/Reference Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sampling of Positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Brake Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Device Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
116
120
122
125
127
132
135
138
139
146
6
Device Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
148
6.1
Status Diagram (State Machine) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.2
Status diagram of the motor controller (state machine) . . . . . . . . . . . . . . . . . . .
6.1.3
Control word (controlword) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.4
Read-out of the motor controller status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.5
Status words (statuswords) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.6
Description of the additional objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
148
148
149
154
157
158
165
7
Operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
168
7.1
Setting the operating mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.2
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Operating mode reference travel (homing mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.2
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.3
Reference Travel Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.4
Control of Reference Travel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Positioning Operating Mode (Profile Position Mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.2
Description of the objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.3
Description of function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Synchronous position specification (interpolated position mode) . . . . . . . . . . . . . . . . . . .
7.4.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4.2
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.4.3
Description of function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
168
168
168
170
170
171
175
179
180
180
181
184
187
187
187
193
7.2
7.3
7.4
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
CMMP-AS-...-M3/-M0
7.5
Speed Adjustment Operating Mode (Profile Velocity Mode) . . . . . . . . . . . . . . . . . . . . . . . .
7.5.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.2
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Speed ramps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Torque Regulation Operating Mode (Profile Torque Mode) . . . . . . . . . . . . . . . . . . . . . . . . .
7.7.1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.7.2
Description of the Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
195
195
197
203
206
206
207
A
Technical appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
212
A.1
Technical Data Interface EtherCAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.1.1
General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.1.2
Operating and environmental conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
212
212
212
B
Diagnostic messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
213
B.1
B.2
B.3
Explanations on the diagnostic messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error codes via CiA 301/402 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diagnostic messages with instructions for trouble-shooting . . . . . . . . . . . . . . . . . . . . . . .
213
214
217
7.6
7.7
6
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
Instructions on this documentation
This documentation describes the device profile CiA 402 (DS 402) for the motor controllers
CMMP-AS-...-M3/-M0 conforming to the section “Information on the version” through the fieldbus
interfaces:
– CANopen – interface [X4] integrated into the motor controller.
– EtherCAT – optional interface CAMC-EC in the slot Ext2, only for CMMP-AS-...-M3.
This provides you with supplementary information about control, diagnostics and parametrisation of
the motor controllers via the fieldbus.
• Unconditionally observe the general safety regulations for the CMMP-AS-...-M3/-M0.
The general safety regulations for the CMMP-AS-...-M3/-M0 can be found in the hardware
description, GDCP-CMMP-AS-M3-HW-... or GDCP-CMMP-AS-M0-HW-..., see Tab. 2.
Target group
This description is intended exclusively for technicians trained in control and automation technology,
who have experience in installation, commissioning, programming and diagnosing of positioning
systems.
Service
Please consult your regional Festo contact if you have any technical problems.
Information on the version
This description refers to the following versions:
Motor controller
Version
CMMP-AS-...-M3
Motor controller CMMP-AS-...-M3 from Rev 01
FCT plug-in CMMP-AS from Version 2.0.x.
Motor controller CMMP-AS-...-M0 from Rev 01
FCT plug-in CMMP-AS from Version 2.2.x.
CMMP-AS-...-M0
Tab. 1
Versions
This description does not apply to the older variants CMMP-AS-.... Use the assigned
CANopen description for the motor controller CMMP-AS for these variants.
Note
With newer firmware versions, check whether there is a newer version of this description available: www.festo.com
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
CMMP-AS-...-M3/-M0
Documentation
You will find additional information on the motor controller in the following documentation:
User documentation on the motor controller CMMP-AS-...-M3/-M0
Name, type
Contents
Hardware description,
GDCP-CMMP-M3-HW-...
Description of functions,
GDCP-CMMP-M3-FW-...
Description of hardware,
GDCP-CMMP-M0-HW-...
Function descriptions,
GDCP-CMMP-M0-FW-...
Description of FHPP,
GDCP-CMMP-M3/-M0-C-HP-...
Description of CiA 402 (DS 402),
GDCP-CMMP-M3/-M0-C-CO-...
Description of CAM-Editor,
P.BE-CMMP-CAM-SW-...
Safety module description,
GDCP-CAMC-G-S1-...
Description of the safety module,
GDCP-CAMC-G-S3-...
Description of the safety function
STO, GDCP-CMMP-AS-M0-S1-...
Description for exchange and
project conversion
GDCP-CMMP-M3/-M0-RP-...
Help for the FCT plug-in CMMP-AS
Tab. 2
8
Mounting and installation of the motor controller
CMMP-AS-...-M3 for all variants/output classes (1-phase,
3-phase), pin assignments, error messages, maintenance.
Functional description (firmware) CMMP-AS-...-M3, instructions
on commissioning.
Mounting and installation of the motor controller
CMMP-AS-...-M0 for all variants/output classes (1-phase,
3-phase), pin assignments, error messages, maintenance.
Functional description (firmware) CMMP-AS-...-M0, Instructions
on commissioning.
Control and parameterisation of the motor controller via the
FHPP Festo profile.
– Motor controller CMMP-AS-...-M3 with the following
fieldbuses: CANopen, PROFINET, PROFIBUS, EtherNet/IP,
DeviceNet, EtherCAT.
– Motor controller CMMP-AS-...-M0 with fieldbus CANopen.
Control and parameterisation of the motor controller via the
device profile CiA 402 (DS402)
– Motor controller CMMP-AS-...-M3 with the following
fieldbuses: CANopen and EtherCAT.
– Motor controller CMMP-AS-...-M0 with fieldbus CANopen.
Cam disc function (CAM) of the motor controller
CMMP-AS-...-M3/-M0.
Functional safety engineering for the motor controller
CMMP-AS-...-M3 with the safety function STO.
Functional safety engineering for the motor controller
CMMP-AS-...-M3 with the safety functions STO, SS1, SS2, SOS,
SLS, SSR, SSM, SBC.
Functional safety engineering for the motor controller
CMMP-AS-...-M0 with the integrated safety function STO.
Motor controller CMMP-AS-...-M3/-M0 as a replacement device
for previous motor controller CMMP-AS. Changes to the
electrical installation and description of project conversion.
User interface and functions of the CMMP-AS plug-in for the
Festo Configuration Tool.
www.festo.com
Documentation on the motor controller CMMP-AS-...-M3/-M0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
1
General remarks
1
Fieldbus interfaces
Control and parameterisation via CiA 402 for the CMMP-AS-...-M3/-M0 is supported correspondingly
through the fieldbus interfaces.Tab. 1.1 The CANopen interface is integrated into the motor controller;
through interfaces, the motor controller can be extended with additional fieldbus interfaces. The fieldbus is configured with the DIP switches [S1].
Fieldbus
Interface
Description
CANopen
EtherCAT
[X4] – integrated
Interface CAMC-EC
Chapter 2
Chapter 4
Tab. 1.1
M0
Fieldbus interfaces for CiA 402
The motor controllers CMMP-AS-…-M0 are only equipped with the CANopen fieldbus
interface and do not feature any slots for interfaces, switches or safety modules.
5
4
1
3
2
1
2
DIP switches [S1] for fieldbus settings
on the switch or safety module in slot Ext3
Slots Ext1/Ext2 for interfaces
Fig. 1.1
3
4
5
CANopen terminating resistor [S2]
CANopen interface [X4]
CAN-LED
Motor controller CMMP-AS-...-M3/-M0: Front view, example with micro switch module
in Ext3
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
9
2
CANopen [X4]
2
CANopen [X4]
2.1
General information on CANopen
CANopen is a standard worked out by the “CAN in Automation” association. Numerous device manufacturers are organised in this network. This standard has largely replaced the current manufacturerspecific CAN protocols. As a result, the end user has a non-proprietary communication interface.
The following manuals, among others, can be obtained from this association:
CiA Draft Standard 201 … 207:
These documents cover the general basic principles and embedding of CANopen into the OSI layered
architecture. The relevant points of this book are presented in this CANopen manual, so procurement of
DS 201 … 207 is generally not necessary.
CiA Draft Standard 301:
This book describes the fundamental design of the object directory of a CANopen device and access to
it. The statements of DS201 … 207 are also made concrete. The elements of the object directory
needed for the CMMP motor controller families and the related access methods are described in this
manual. Procurement of DS 301 is recommended but not unconditionally necessary.
CiA Draft Standard 402:
This book deals with the specific implementation of CANopen in drive controllers. Although all implemented objects are also briefly documented and described in this CANopen manual, the user should
have this book available.
Source address:
CAN in Automation (CiA) International Headquarters
Am Weichselgarten 26
D-91058 Erlangen
Tel.: +49 (0)9131-601091
Fax: +49 (0)9131-601092
www.can-cia.de
The CANopen implementation of the motor controller is based on the following standards:
1
2
10
CiA Draft Standard 301,
CiA Draft Standard Proposal 402,
Version 4.02,
Version 2.0,
13 February 2002
26 July 2002
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
2
CANopen [X4]
2.2
Cabling and pin assignment
2.2.1
Pin allocations
The CAN interface is already integrated in the motor controller CMMP-AS-...-M3/-M0 and thus is always
available. The CAN bus connection is designed as a 9-pole DSUB plug in accordance with standards.
[X4]
Pin no.
1
6
2
7
3
8
4
9
5
Tab. 2.1
Designation
Value
Description
–
CAN-GND
CAN-L
CAN-H
CAN-GND
–
–
–
CAN shield
–
–
–
–
–
–
–
–
–
Unused
Ground
Negative CAN signal (dominant low)
Positive CAN signal (dominant high)
Ground
Unused
Unused
Unused
Screening
Pin assignment for CAN-interface [X4]
CAN bus cabling
When cabling the motor controller via the CAN bus, you should unconditionally observe
the following information and instructions to obtain a stable, trouble-free system.
If cabling is improperly done, malfunctions can occur on the CAN bus during operation.
These can cause the motor controller to shut off with an error for safety reasons.
Termination
A terminating resistor (120 Ω) can, if required, be switched by means of DIP switch S2 = 1 (CAN Term)
on the basic unit.
2.2.2
Cabling instructions
The CAN bus offers a simple, fail-safe ability to network all the components of a system together. But a
requirement for this is that all of the following instructions on cabling are observed.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
11
2
CANopen [X4]
CAN shield
CAN shield
CAN shield
CAN-GND
CAN-GND
CAN-GND
CAN-L
CAN-H
CAN-L
CAN-H
CAN-L
CAN-H
120 Ω
Fig. 2.1
120 Ω
Cabling example
– The individual nodes of the network are connected point-to-point to each other, so the CAN cable is
looped from controller to controller ( Fig. 2.1).
– A terminating resistor of exactly 120 Ω +/5 % must be available at both ends of the CAN cable.
Such a terminating resistor is often already integrated into CAN cards or PLCs, which must be taken
into account correspondingly.
– A screened cable with precisely two twisted conductor pairs must be used for the cabling.
One twisted pair is used for connecting CAN-H and CAN-L. The conductors of the other pair are used
together for CAN-GND. The cable screening is connected to the CAN shield connection at all nodes.
(A table with the technical data of usable cables is located at the end of this chapter.)
– The use of adapters is not recommended for CAN bus cabling. If this is unavoidable, then metallic
plug housings should be used to connect the cable screening.
– To keep the disturbance coupling as low as possible, motor cables should not be laid parallel to
signal lines. Motor cables must conform to specifications. Motor cables must be correctly shielded
and earthed.
– For additional information on design of trouble-free CAN bus cabling, refer to the Controller Area
Network protocol specification, Version 2.0 from Robert Bosch GmbH, 1991.
Characteristic
Wire pairs
Wire cross section
Screening
Loop resistance
Surge impedance
Tab. 2.2
12
Value
–
[mm2]
–
[Ω / m]
[Ω]
2
≥ 0.22
Yes
< 0.2
100…120
Technical data, CAN bus cable
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
2
CANopen [X4]
2.3
M3
Configuration of CANopen stations on the CMMP-AS-...-M3
This section is only applicable for the motor controller CMMP-AS-…-M3.
Several steps are required in order to produce an operational CANopen interface. Some of these settings should or must be carried out before the CANopen communication is activated. This section
provides an overview of the steps required by the slave for parametrisation and configuration. As some
parameters are only effective after saving and reset, we recommend that commissioning with the FCT
without connection to the CANopen bus should be carried out first.
Instructions on commissioning with the Festo Configuration Tool can be found in the Help
for the device-specific FCT plug-in.
When designing the CANopen interface, the user must therefore make these determinations. Only then
should parameterisation of the fieldbus connection take place on both pages. We recommend that
parameterisation of the slave should be executed first. Then the master should be configured.
We recommend the following procedure:
1. Setting of the offset of the node number, bit rate and activation of the bus communication via DIP
switches.
The status of the DIP switches is read once at Power- ON / RESET.
The CMMP-AS takes over changes to the switch setting in ongoing operation only at the
next RESET or restart
2. Parametrisation and commissioning with the Festo Configuration Tool (FCT).
In particular on the Application Data page:
– CANopen control interface (Mode Selection tab)
In addition, the following settings on the fieldbus page:
– Basic address of the node number
– Protocol CANopen DS 402 (Operating parameter tab)
– Physical units (Factor Group tab)
Observe that parameterisation of the CANopen function remains intact after a reset only
if the parameter set of the motor controller was saved.
While the FCT device control is active, CAN communication is automatically deactivated.
3. Configuration of the CANopen master Sections 2.5 and 3.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
13
2
CANopen [X4]
2.3.1
Setting of the node number
Each device in the network must be assigned a unique node number.
The node number can be set via the DIP switches 1 … 5 on the module in slot Ext3 and in the program
FCT.
The resulting node number consists of the base address (FCT) and the offset
(DIP switches).
Permissible values for the node number lie in the range 1 … 127.
Setting of the offset of the node number with DIP switches
Setting of the node number can be made with DIP switch 1 … 5. The offset of the node number set via
DIP switches 1 … 5 is displayed in the program FCT on the Fieldbus page in the Operating Parameters
tab.
Value
DIP switches
1
2
3
4
5
Total 1 … 5 = Offset
1)
ON
1
2
4
8
16
1 … 31 1)
Example
OFF
0
0
0
0
0
ON
ON
OFF
ON
ON
Value
1
2
0
8
16
27
The value 0 for the offset is interpreted in connection with a base address 0 as node number 1.
A node number greater than 31 must be set with the FCT.
Tab. 2.3
Setting of the offset of the node number
Setting the base address of the node number with FCT
With the Festo Configuration Tool (FCT), the node number is set as base address on the Fieldbus page
in the Operating Parameters tab.
Default setting = 0 (that means offset = node number).
If a node number is assigned simultaneously via DIP switches 1…5 and in the FCT program, the resulting node number consists of the sum of the base address and the offset.
If this sum is greater than 127, the value is automatically limited to 127.
14
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
2
CANopen [X4]
2.3.2
Setting of the transmission rate with DIP switches
The transmission rate must be set with DIP switches 6 and 7 on the module in slot Ext3. The status of
the DIP switches is read one time at Power On/RESET. The CMMP-AS-...-M3 takes over changes to the
switch setting in ongoing operation only at the next RESET.
Transmission rate
125
250
500
1
Tab. 2.4
[kbit/s]
[kbit/s]
[kbit/s]
[Mbps]
DIP switch 6
DIP switch 7
OFF
ON
OFF
ON
OFF
OFF
ON
ON
Setting of the transmission rate
2.3.3
Activation of CANopen communication with DIP switches
When the node number and transmission rate have been set, CANopen communication can be
activated. Please note that the above-mentioned parameters can only be revised when the protocol is
deactivated.
CANopen communication
DIP switch 8
Deactivated
Enabled
OFF
ON
Tab. 2.5
Activation of CANopen communication
Please observe that CANopen communication can only be activated after the parameter set (the FCT
project) has been saved and a Reset carried out.
If another fieldbus interface is plugged into Ext1 or Ext2 ( chapter 1), CANopen communication is activated with DIP switch 8 instead of via [X4] of the corresponding fieldbus.
2.3.4
Setting the physical units (factor group)
In order for a fieldbus master to exchange position, speed and acceleration data in physical units
(e.g. mm, mm/s, mm/s 2) with the motor controller, it must be parameterised via the factor group
section 5.3.
Parameterisation can be carried out via FCT or the fieldbus.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
15
2
CANopen [X4]
2.4
Configuration of CANopen participants on the CMMP-AS-...-M0
This section is only applicable for the motor controller CMMP-AS-…-M0.
M0
Several steps are required in order to produce an operational CANopen interface. Some of these settings should or must be carried out before the CANopen communication is activated. This section
provides an overview of the steps required by the slave for parameterisation and configuration.
Instructions on commissioning with the Festo Configuration Tool can be found in the Help
for the device-specific FCT plug-in.
When designing the CANopen interface, the user must therefore make these determinations. Only then
should parameterisation of the fieldbus connection take place on both pages. We recommend that
parameterisation of the slave should be executed first. Then the master should be configured.
The CAN-bus-specific parameters can be set on two paths. These paths are separated from one another
and are accessed via the option “Fieldbus parameterisation via DINs” on the “Application data” page in
the FCT.
The option “Fieldbus parameterisation via DINs” is active on delivery and after a reset to the factory
settings. Parameterisation with FCT for activation of the CAN bus is thus not absolutely necessary.
The following parameters can be set via the DINs or FCT:
Parameters
Setting via
DIN
Node number
Transmission rate (bit rate)
Input/activation
Protocol (data profile)
0 … 3 1)
12, 13 1)
8
9 2)
FCT
“Fieldbus” page, operating parameters.
Activation of the CAN bus is performed automatically by
FCT (dependent on device control):
– Device control by FCT } CAN deactivated
– Device control released } CAN activated
1)
Only transferred in the event of inactive CAN communication
2)
Only transferred after a device RESET
Tab. 2.6
16
Overview of settings for CAN parameters via DINs or FCT
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
2
CANopen [X4]
2.4.1
Setting the node number via DINs and FCT
Each device in the network must be assigned a unique node number.
The node number can be set via the digital inputs DIN0 … DIN3 and in the FCT programme.
Permissible values for the node number lie in the range 1 … 127.
Setting the offset of the node number via DINs
The node number can be set via the circuitry of the digital inputs DIN0 … DIN3. The offset of the node
number set via the digital inputs is displayed in the FCT programme on the “Fieldbus” panel in the “Operating parameters” tab.
DINs
Value
Example
High
0
1
1
2
2
4
3
8
Total 0 … 3 = node number 0 … 15
Tab. 2.7
Low
0
0
0
0
Value
1
2
0
8
11
High
High
Low
High
Setting the node number
Setting the base address of the node number via FCT
The base address of the node number can be set via FCT on the “Fieldbus” panel in the “Operating
parameters” tab.
The resulting node number is dependent on the option “Fieldbus parameterisation via DINs” on the
“Application data” page. If this option is activated, the node number is determined by adding the base
address in the FCT to the offset via the digital inputs DIN0…3.
If the option is deactivated, the base address in the FCT corresponds to the resulting node number.
2.4.2
Setting the transmission rate via DINs or FCT
The transmission rate can be set via the digital inputs DIN12 and DIN13 or in the FCT.
Setting the transmission rate via DINs
Transmission rate
125
250
500
1
Tab. 2.8
[Kbit/s]
[Kbit/s]
[Kbit/s]
[Mbit/s]
DIN 12
DIN 13
Low
High
Low
High
Low
Low
High
High
Setting the transmission rate
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
17
2
CANopen [X4]
Setting the transmission rate via FCT
The transmission rate can be set via FCT on the “Fieldbus” panel in the “Operating parameters” tab. The
option “Fieldbus parameterisation via DINs” must be deactivated beforehand on the “Application data”
panel. When this option is deactivated, DIN12 and DIN13 can be parameterised freely again. Optionally,
however, AIN1 and AIN2 can also be parameterised with the FCT.
2.4.3
Setting the protocol (data profile) via DINs or FCT
The protocol (data profile) can be set via the digital input DIN9 or the FCT.
Setting the protocol (data profile) via DINs
Protocol (data profile)
DIN 9
CiA 402 (DS 402)
FHPP
Low
High
Tab. 2.9
Activating the protocol (data profile)
Setting the protocol (data profile) via FCT
The protocol is set via FCT on the “Fieldbus” page in the “Operating parameters” tab.
2.4.4
Activation of CANopen communication via DINs or FCT
When the node number, transmission rate and protocol (data profile) have been set, CANopen communication can be activated.
Activation of CANopen communication via DIN
CANopen communication
DIN 8
Deactivated
Enabled
Low
High
Tab. 2.10 Activation of CANopen communication
The device does not need to be reset again for activation via digital input. The CAN bus is
activated immediately after a level change (Low } High) at DIN8.
Activation of CANopen communication via FCT
CANopen communication is automatically activated by the FCT if the option “Fieldbus parameterisation
via DINs” is deactivated.
The CAN bus is switched off for as long as the device control remains with FCT.
18
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
2
CANopen [X4]
2.4.5
Setting the physical units (factor group)
In order for a fieldbus master to exchange position, speed and acceleration data in physical units
(e.g. mm, mm/s, mm/s2) with the motor controller, it must be parameterised via the factor group
section 5.3.
Parameterisation can be carried out via FCT or the fieldbus.
2.5
Configuration CANopen master
You can use an EDS file to configure the CANopen master.
The EDS file is included on the CD-ROM supplied with the motor controller.
You will find the most current version under www.festo.com
EDS files
Description
CMMP-AS-...-M3.eds
CMMP-AS-...-M0.eds
Motor controller CMMP-AS-...-M3 with protocol “CiA402 (DS 402)”
Motor controller CMMP-AS-...-M0 with protocol “CiA402 (DS 402)”
Tab. 2.11
EDS files for CANopen
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
19
3
CANopen access procedure
3
CANopen access procedure
3.1
Introduction
CANopen makes available a simple and standardised possibility to access the parameters of the motor
controller (e.g. the maximum motor current). To achieve this, a unique number (index and subindex) is
assigned to each parameter (CAN object). The totality of all adjustable parameters is designated an
object directory.
For access to the CAN objects through the CAN bus, there are fundamentally two methods available: a
confirmed access type, in which the motor controller acknowledges each parameter access (via socalled SDOs), and an unconfirmed access type, in which no acknowledgement is made (via so-called
PDOs).
Order from controller
Control
system
CMMP
Control
system
CMMP
PDO (transmit PDO)
Confirmation from
the controller
SDO
Confirmation from
the controller
Control
system
CMMP
PDO (receive PDO)
Data from controller
Fig. 3.1
Access procedure
As a rule, the motor controller is parametrised and also controlled via SDO access. In addition, other
types of messages (so-called communication objects), which are sent either by the motor controller or
the higher-level controller, are defined for special application cases:
Communication objects
SDO
PDO
SYNC
EMCY
NMT
Service Data Object
Process Data Object
Synchronisation Message
Emergency message
Network management
HEARTBEAT
Error Control Protocol
Tab. 3.1
20
Used for normal parametrisation of the motor controller.
Fast exchange of process data (e.g. actual speed) possible
Synchronisation of multiple CAN nodes
Transmission of error messages
Network service: All CAN nodes can be worked on
simultaneously, for example.
Monitoring of the communications participants through
regular messages.
Communication objects
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
Every message sent on the CAN bus contains a type of address which is used to determine the bus
participant for which the message is meant. This number is designated the identifier. The lower the
identifier, the greater the priority of the message. Identifiers are established for the above-named communication objects. The following sketch shows the basic design of a CANopen message:
Identifier
Number of data bytes (here 8)
601h
Len
Data bytes 0… 7
3.2
D0
D1
D2
D3
D4
D5
D6
D7
SDO Access
The Service Data Objects (SDO) permit access to the object directory of the motor controller. This
access is especially simple and clear. It is therefore recommended to build up the application at first
only with SDOs and only later to convert to the faster but also more complicated Process Data Objects
(PDOs).
SDO access always starts from the higher-order controller (Host). This either sends the motor controller a write command to modify a parameter in the object directory, or a read command to read out a
parameter. For each command, the host receives an answer that either contains the read-out value or –
in the case of a write command – serves as an acknowledgement.
For the motor controller to recognise that the command is meant for it, the host must send the
command with a specific identifier. This identifier is made up of the base 600h + node number of the
applicable motor controller. The motor controller answers correspondingly with the identifier 580h +
node number.
The design of the commands or answers depends on the data type of the object to be read or written,
since either 1, 2 or 4 data bytes must be sent or received. The following data types are supported:
Data type
Size and algebraic sign
Range
UINT8
INT8
UINT16
INT16
UINT32
INT32
8 bit value without algebraic sign
8 bit value with algebraic sign
16 bit value without algebraic sign
16 bit value with algebraic sign
32 bit value without algebraic sign
32 bit value with algebraic sign
0 … 255
-128 … 127
0 … 65535
-32768 … 32767
0 … (232-1)
-(231) … (232-1)
Tab. 3.2
Supported data types
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
21
3
CANopen access procedure
3.2.1
SDO Sequences for Reading and Writing
To read out or describe objects of these number types, the following listed sequences are used. The
commands for writing a value into the motor controller begin with a different identifier, depending on
the data type. The answer identifier, in contrast, is always the same. Read commands always start with
the same identifier, and the motor controller answers differently, depending on the data type returned.
All numbers are kept in hexadecimal form.
Identifier
8 bits
16 bit
32 bit
Task identifier
Response identifier
Response identifier in case of
error
2Fh
4Fh
–
2Bh
4Bh
–
23h
43h
80h
Tab. 3.3
SDO – response/task identifier
EXAMPLE
UINT8/INT8
Reading of Obj. 6061_00h
Return data: 01h
40h 61h 60h 00h
Writing of Obj. 1401_02h
Data: EFh
2Fh 01h 14h 02h EFh
4Fh 61h 60h 00h 01h
Reading of Obj. 6041_00h
Return data: 1234h
40h 41h 60h 00h
Command
4Bh 41h 60h 00h 34h 12h
Reading of Obj. 6093_01h
Return data: 12345678h
40h 93h 60h 01h
60h 01h 14h 02h
Writing of Obj. 6040_00h
Data: 03E8h
2Bh 40h 60h 00h E8h 03h
60h 40h 60h 00h
Writing of Obj. 6093_01h
Data: 12345678h
23h 93h 60h 01h 78h 56h 34h 12h
Response:
43h 93h 60h 01h 78h 56h 34h 12h
60h 93h 60h 01h
Command
Response:
UINT16/INT16
Command
Response:
UINT32/INT32
Caution
The acknowledgement from the motor controller must always be waited for!
Only when the motor controller has acknowledged the request may additional requests
be sent.
22
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.2.2
SDO Error Messages
In case of an error when reading or writing (for example, because the written value is too large), the
motor controller answers with an error message instead of the acknowledgement:
Command
23h
60h
00h
…
Response:
80h 41h 60h
Error identifier
00h
02h 00h 01h 06h
Error code (4 byte)
Error code
F3 F2 F1 F0
Significance
05 03 00 00h
05 04 00 01h
06 06 00 00h
06 01 00 00h
06 01 00 01h
06 01 00 02h
06 02 00 00h
06 04 00 41h
06 04 00 42h
06 04 00 43h
06 04 00 47h
06 07 00 10h
06 07 00 12h
06 07 00 13h
06 09 00 11h
06 09 00 30h
06 09 00 31h
06 09 00 32h
06 09 00 36h
08 00 00 20h
08 00 00 21h
08 00 00 22h
Protocol error: Toggle bit was not revised
Protocol error: Client / server command specifier invalid or unknown
Access faulty due to a hardware problem1)
Access type is not supported.
Read access to an object that can only be written
Write access to an object that can only be read
The addressed object does not exist in the object directory
The object must not be entered into a PDO (e.g. ro-object in RPDO)
The length of the objects entered in the PDO exceeds the PDO length
General parameter error
Overflow of an internal variable / general error
Protocol error: Length of the service parameter does not agree
Protocol error: Length of the service parameter is too large
Protocol error: Length of the service parameter is too small
The addressed subindex does not exist
The data exceed the range of values of the object
The data are too large for the object
The data are too small for the object
Upper limit is less than lower limit
Data cannot be transmitted or stored1)
Data cannot be transmitted or stored, since the controller is working locally
Data cannot be transmitted or stored, since the controller for this is not in the
correct state2)
There is no object dictionary available3)
08 00 00 23h
41h
…
…
…
1)
Returned in accordance with CiA 301 in case of incorrect access to store_parameters / restore_parameters.
2)
“Status” should be understood generally here: It may be a problem of the incorrect operating mode or a technology module that is
not available or the like.
3)
This error is returned, for example, when another bus system controls the motor controller or the parameter access is not
permitted.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
23
3
CANopen access procedure
3.2.3
Simulation of SDO access
The firmware of the motor controller offers the possibility to simulate SDO access. In this way, after
being written through the CAN bus, objects in the test phase can be read and checked through the CI
terminal of the parametrisation software.
The syntax of the commands is:
UINT8/INT8
Command
Read commands
Main index (hex)
Sub-index (hex)
?
XXXX SU
Write commands
= XXXX
SU:
WW
Response:
UINT16/INT16
Command
=
?
XXXX SU: WW
8 bit data (hex)
XXXX SU
= XXXX
SU:
WW
= XXXX
SU:
WWWW
Response:
UINT32/INT32
Command
=
?
XXXX SU: WWWW
16 bit data (hex)
XXXX SU
= XXXX
SU:
WWWW
= XXXX
SU:
Response:
=
XXXX SU: WWWWWWWW
32 bit data (hex)
= XXXX
SU:
WWWWWWWW
Note that the commands are entered as characters without any blanks.
Read error
Command
? XXXX SU
Response:
!
1)
Write error
= XXXX SU: WWWWWWWW1)
FFFFFFFF
32 bit error code
F3 F2 F1 F0 in accordance with
chap.
! FFFFFFFF
32 bit error code
F3 F2 F1 F0 in accordance with
chap.
In case of error, the response is built up the same for all 3 write commands (8, 16, 32 bit).
The commands are entered as characters without any blanks.
Caution
Never use these test commands in applications!
Access only serves test purposes and is not appropriate for real-time-capable communication.
In addition, the syntax of the test commands can be revised at any time.
24
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.3
PDO Message
With Process Data Objects (PDOs), data can be transmitted in an event-driven manner or cyclically. The
PDO thereby transmits one or more previously established parameters. Other than with an SDO, there
is no acknowledgement when a PDO is transmitted. After PDO activation, all recipients must therefore
be able to process any arriving PDOs at any time. This normally means a significant software effort in
the host computer. This disadvantage is offset by the advantage that the host computer does not need
to cyclically request parameters transmitted by a PDO, which leads to a strong reduction in CAN bus
capacity utilisation.
EXAMPLE
The host computer would like to know when the motor controller has completed a positioning from
A to B.
When SDOs are used, it must frequently, such as every millisecond, request the statusword object,
which uses up bus capacity.
When a PDO is used, the motor controller is parametrised at the start of the application in such a way
that, with every change in the statusword object, a PDO containing the statusword object is
deposited.
Instead of constantly requesting, the host computer thus automatically receives a corresponding
message as soon as the event occurs.
A distinction is made between the following types of PDOs:
Type
Path
Comment
Transmit PDO
Motor controller Host
Receive PDO
Host Motor controller
Motor controller sends PDO when a
certain event occurs.
Motor controller evaluates PDO when a
certain event occurs.
Tab. 3.4
PDO types
The motor controller has four transmit and four receive PDOs.
Almost all objects of the object directory can be entered (mapped) into the PDOs; that is, the PDO contains all data, e.g. the actual speed, the actual position, or the like. The motor controller must first be
told which data have to be transmitted, since the PDO only contains reference data and no information
about the type of parameter. In the example below, the actual position is transmitted in the data
bytes 0 … 3 of the PDO and the actual speed in the bytes 4 … 7.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
25
3
CANopen access procedure
Identifier
Number of data bytes (here 8)
601h
Len
D0
D1
D2
Start actual position
(D0 … D3)
D3
D4
D5
D6
D7
Start actual speed
(D4 … D7)
In this way, almost any desired data telegrams can be defined. The following chapters describe the
settings necessary for this.
3.3.1
Description of the Objects
Object
Comment
COB_ID_used_by_PDO
In the object COB_ID_used_by_PDO, the identifier in which the
respective PDO is sent or received is entered. If bit 31 is set, the
respective PDO is deactivated. This is the presetting for all PDOs.
The COB-ID may only be revised if the PDO is deactivated, that is,
bit 31 is set. A different identifier than is currently set in the controller
may therefore only be written if bit 31 is simultaneously set.
The set bit 30 shows when the identifier is read that the object cannot
be requested by a remote frame. This bit is ignored during writing and
is always set during reading.
This object specifies how many objects should be mapped into the
corresponding PDO. The following limitations must be observed:
A maximum of 4 objects can be mapped per PDO
A PDO may have a maximum of 64 bits (8 byte).
For each object contained in the PDO, the motor controller must be
told the corresponding index, sub-index and length. The stated length
must agree with the stated length in the object dictionary. Parts of an
object cannot be mapped.
The mapping information has the following format Tab. 3.6
number_of_mapped_objects
first_mapped_object …
fourth_mapped_object
transmission_type and
inhibit_time
26
Which event results in sending (transmit PDO) or evaluation (receive
PDO) of a message can be determined for each PDO. Tab. 3.7
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
Object
Comment
transmit_mask_high and
transmit_mask_low
If “change” is selected as the transmission_type, the TPDO is always
sent when at least 1 bit of the TPDO changes. But frequently it is
necessary that the TPDO should only be sent when certain bits have
changed. For that reason, the TPDO can be equipped with a mask:
Only the bits of the TPDO that are set to “1” in the mask are used to
evaluate whether the PDO has changed. Since this function is
manufacturer-specific, all bits of the masks are set as default value.
Tab. 3.5
Description of the Objects
xxx_mapped_object
Main index (hex)
Sub-index (hex)
Length of the object (hex)
Tab. 3.6
[bit]
[bit]
[bit]
16
8
8
Format of the mapping information
To simplify the mapping, the following procedure is established:
1. The number of mapped objects is set to 0.
2. The parameters first_mapped_object … fourth_mapped_object may be described (The overall
length of all objects is not relevant in this time).
3. The number of mapped objects is set to a value between 1 … 4. The length of all these objects must
now not exceed 64 bits.
Value
Significance
Permitted with
01h – F0h
SYNC message
The numerical value specifies how many SYNC messages have to be
received before the PDO
– is sent (T-PDO) or
– evaluated (R-PDO).
TPDOs
RPDOs
FEh
Cyclical
The transfer PDO is cyclically updated and sent by the motor controller.
The time period is set by the object inhibit_time.
Receive PDOs, in contrast, are evaluated immediately after reception.
Change
The transfer PDO is sent when at least 1 bit has changed in the data of
the PDO.
With inhibit_time, the minimum interval between sending two PDOs can
also be established in 100 μs steps.
TPDOs
(RPDOs)
FFh
Tab. 3.7
TPDOs
Type of transmission
The use of all other values is not permitted.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
27
3
CANopen access procedure
EXAMPLE
The following objects should be transmitted in one PDO:
Name of the object
Index_Subindex
Significance
statusword
modes_of_operation_display
digital_inputs
6041h_00h
6061h_00h
60FDh_00h
Controller regulation
Operating mode
Digital inputs
The first transmit PDO (TPDO 1) should be used, which should always be sent whenever one of the
digital inputs changes, but at a maximum of every 10 ms. As an identifier for this PDO, 187h should
be used.
1. Deactivating PDO
cob_id_used_by_pdo = C0000187h
If the PDO is active, it must first be deactivated.
Writing the identifier with set bit 31 (PDO is
deactivated):
2. Deleting number of objects
number_of_mapped_objects = 0
Set the number of objects to zero in order to be able
to change the object mapping.
3. Parametrisation of objects that are to be mapped
The above-listed objects must be combined into a
32 bit value:
Index
Sub-index
first_mapped_object = 60410010h
= 6041h
= 00h
Length = 10h
Index
Sub-index
second_mapped_object = 60610008h
= 6061h
= 00h
Length = 08h
Index
Sub-index
third_mapped_object = 60FD0020h
= 60FDh
= 00h
Length = 20h
4. Parametrisation of number of objects
number_of_mapped_objects = 3h
The PDO should contain 3 objects
5. Parametrisation of transmission type
transmission_type = FFh
The PDO should be sent when changes (to the digital
inputs) are sent.
To ensure that only changes to the digital inputs res- transmit_mask_high = 00FFFF00h
ult in transmission, the PDO is masked so that only
transmit_mask_low = 00000000h
the 16 bits of the object 60FDh “come through”.
The PDO should be sent no more than every 10 ms
inhibit_time = 64h
(100D100 μs).
6. Parametrisation of identifiers
cob_id_used_by_pdo = 40000187h
The PDO should be sent with identifier 187h.
Write the new identifier and activate the PDO
through deletion of bit 31:
28
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
Observe that parametrisation of the PDOs may generally only be changed when the network status (NMT) is not operational. Chapter 3.3.3
3.3.2
Objects for PDO Parametrisation
The motor controllers of the CMMP series have available a total of 4 transmit and 4 receive PDOs.
The individual objects for parametrisation of these PDOs are the same for all 4 TPDOs and all 4 RPDOs
respectively. For that reason, only the parameter description of the first TPDO is explicitly listed. The
meaning can also be used for the other PDOs, which are listed in table form in the following:
Index
1800h
Name
transmit_pdo_parameter_tpdo1
Object Code
RECORD
No. of Elements
3
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
01h
cob_id_used_by_pdo_tpdo1
UINT32
rw
no
–
181h … 1FFh, bit 30 and 31 may be set
C0000181h
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
02h
transmission_type_tpdo1
UINT8
rw
no
–
0 … 8Ch, FEh, FFh
FFh
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
03h
inhibit_time_tpdo1
UINT16
rw
no
100 μs (i.e. 10 = 1ms)
–
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
29
3
CANopen access procedure
Index
1A00h
Name
transmit_pdo_mapping_tpdo1
Object Code
RECORD
No. of Elements
4
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
00h
number_of_mapped_objects_tpdo1
UINT8
rw
no
–
0…4
Table
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
01h
first_mapped_object_tpdo1
UINT32
rw
no
–
–
Table
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
02h
second_mapped_object_tpdo1
UINT32
rw
no
–
–
Table
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
03h
third_mapped_object_tpdo1
UINT32
rw
no
–
–
Table
30
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
04h
fourth_mapped_object_tpdo1
UINT32
rw
no
–
–
Table
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
Observe that the object groups transmit_pdo_parameter_xxx and
transmit_pdo_mapping_xxx can only be written when the PDO is deactivated (bit 31 in
cob_id_used_by_pdo_xxx set)
1. Transmit PDO
Index
Comment
Type
Acc.
Default Value
1800h_00h
1800h_01h
1800h_02h
1800h_03h
1A00h_00h
1A00h_01h
1A00h_02h
1A00h_03h
1A00h_04h
number of entries
COB-ID used by PDO
transmission type
inhibit time (100 μs)
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT16
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
rw
03h
C0000181h
FFh
0000h
01h
60410010h
00000000h
00000000h
00000000h
2. Transmit PDO
Index
Comment
Type
Acc.
Default Value
1801h_00h
1801h_01h
1801h_02h
1801h_03h
1A01h_00h
1A01h_01h
1A01h_02h
1A01h_03h
1A01h_04h
number of entries
COB-ID used by PDO
transmission type
inhibit time (100 μs)
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT16
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
rw
03h
C0000281h
FFh
0000h
02h
60410010h
60610008h
00000000h
00000000h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
31
3
CANopen access procedure
3. Transmit PDO
Index
Comment
Type
Acc.
Default Value
1802h_00h
1802h_01h
1802h_02h
1802h_03h
1A02h_00h
1A02h_01h
1A02h_02h
1A02h_03h
1A02h_04h
number of entries
COB-ID used by PDO
transmission type
inhibit time (100 μs)
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT16
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
rw
03h
C0000381h
FFh
0000h
02h
60410010h
60640020h
00000000h
00000000h
4. Transmit PDO
Index
Comment
Type
Acc.
Default Value
1803h_00h
1803h_01h
1803h_02h
1803h_03h
1A03h_00h
1A03h_01h
1A03h_02h
1A03h_03h
1A03h_04h
number of entries
COB-ID used by PDO
transmission type
inhibit time (100 μs)
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT16
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
rw
03h
C0000481h
FFh
0000h
02h
60410010h
606C0020h
00000000h
00000000h
tpdo_1_transmit_mask
Index
Comment
Type
Acc.
Default Value
2014h_00h
2014h_01h
2014h_02h
number of entries
tpdo_1_transmit_mask_low
tpdo_1_transmit_mask_high
UINT8
UINT32
UINT32
ro
rw
rw
02h
FFFFFFFFh
FFFFFFFFh
tpdo_2_transmit_mask
Index
Comment
Type
Acc.
Default Value
2015h_00h
2015h_01h
2015h_02h
number of entries
tpdo_2_transmit_mask_low
tpdo_2_transmit_mask_high
UINT8
UINT32
UINT32
ro
rw
rw
02h
FFFFFFFFh
FFFFFFFFh
32
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
tpdo_3_transmit_mask
Index
Comment
Type
Acc.
Default Value
2016h_00h
2016h_01h
2016h_02h
number of entries
tpdo_3_transmit_mask_low
tpdo_3_transmit_mask_high
UINT8
UINT32
UINT32
ro
rw
rw
02h
FFFFFFFFh
FFFFFFFFh
tpdo_4_transmit_mask
Index
Comment
Type
Acc.
Default Value
2017h_00h
2017h_01h
2017h_02h
number of entries
tpdo_4_transmit_mask_low
tpdo_4_transmit_mask_high
UINT8
UINT32
UINT32
ro
rw
rw
02h
FFFFFFFFh
FFFFFFFFh
1. Receive PDO
Index
Comment
Type
Acc.
Default Value
1400h_00h
1400h_01h
1400h_02h
1600h_00h
1600h_01h
1600h_02h
1600h_03h
1600h_04h
number of entries
COB-ID used by PDO
transmission type
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
02h
C0000201h
FFh
01h
60400010h
00000000h
00000000h
00000000h
2. Receive PDO
Index
Comment
Type
Acc.
Default Value
1401h_00h
1401h_01h
1401h_02h
1601h_00h
1601h_01h
1601h_02h
1601h_03h
1601h_04h
number of entries
COB-ID used by PDO
transmission type
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
02h
C0000301h
FFh
02h
60400010h
60600008h
00000000h
00000000h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
33
3
CANopen access procedure
3. Receive PDO
Index
Comment
Type
Acc.
Default Value
1402h_00h
1402h_01h
1402h_02h
1602h_00h
1602h_01h
1602h_02h
1602h_03h
1602h_04h
number of entries
COB-ID used by PDO
transmission type
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
02h
C0000401h
FFh
02h
60400010h
607A0020h
00000000h
00000000h
4. Receive PDO
Index
Comment
Type
Acc.
Default Value
1403h_00h
1403h_01h
1403h_02h
1603h_00h
1603h_01h
1603h_02h
1603h_03h
1603h_04h
number of entries
COB-ID used by PDO
transmission type
number of mapped objects
first mapped object
second mapped object
third mapped object
fourth mapped object
UINT8
UINT32
UINT8
UINT8
UINT32
UINT32
UINT32
UINT32
ro
rw
rw
rw
rw
rw
rw
rw
02h
C0000501h
FFh
02h
60400010h
60FF0020h
00000000h
00000000h
3.3.3
Activation of PDOs
For the motor controller to send or receive PDOs, the following points must be met:
– The object number_of_mapped_objects must not equal zero.
– In the object cob_id_used_for_pdos, bit 31 must be deleted.
– The communication status of the motor controller must be operational ( chapter 3.6, Network
Management: NMT-Service)
To parametrise PDOs, the following points must be met:
– The communication status of the motor controller must not be operational.
34
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.4
SYNC message
Several devices of a system can be synchronised with each other. To do this, one of the devices (usually
the higher-order controller) periodically sends out synchronisation messages. All connected controllers
receive these messages and use them for treatment of the PDOs ( chapter 3.3).
Identifier
Data length
80h
0
The identifier on which the motor controller receives the SYNC message is set permanently to 080h. The
identifier can be read via the object cob_id_sync.
Index
1005h
Name
cob_id_sync
Object Code
VAR
Data Type
UINT32
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
-80000080h, 00000080h
00000080h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
35
3
CANopen access procedure
3.5
EMERGENCY Message
The motor controller monitors the function of its major assemblies. These include the power supply,
output stage, angle transmitter evaluation and the slots Ext1 … Ext3. In addition, the motor (temperature, angle encoder) and limit switch are checked. Incorrect parameter setting can also result in error
messages (division by zero, etc.).
When an error occurs, the error number is shown in the motor controller's display. If several error messages occur simultaneously, the message with the highest priority (lowest number) is always shown in
the display.
3.5.1
Overview
When an error occurs or an error acknowledgment is carried out, the controller transmits an
EMERGENCY message. The identifier of this message is made up of the identifier 80h and the node
number of the relevant controller.
0
Error free
1
2
Error occured
4
3
After a reset, the controller is in the status Error free (which it might leave again immediately, because
an error is on hand from the beginning). The following status transitions are possible:
No.
Cause
0
1
Initialisation completed
Error occurs
2
Error acknowledgment
3
Error occurs
4
Error acknowledgment
Tab. 3.8
36
Significance
No error is present and an error occurs. An EMERGENCY
telegram with the error code of the occurring error is sent.
An error acknowledgment ( chap. 6.1.5) is attempted, but not
all causes are eliminated.
An error is present and an additional error occurs. An
EMERGENCY telegram with the error code of the new error is
sent.
An error acknowledgment is attempted, and all causes are
eliminated. An EMERGENCY telegram with the error code 0000
is sent.
Possible status transitions
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.5.2
Structure of the EMERGENCY Message
When an error occurs, the motor controller transmits an EMERGENCY message. The identifier of this
message is made up of the identifier 80h and the node number of the relevant motor controller.
The EMERGENCY message consists of eight data bytes, whereby the first two bytes contain an
error_code, which is listed in the following table. An additional error code is in the third byte
(object 1001h). The remaining five bytes contain zeros.
Identifier: 80h + node number
Error_code
81h
8
E0
E1
Data length
error_register (R0)
Bit
M/O1)
R0
0
0
0
0
0
Error_register (obj. 1001h)
Significance
0
M
generic error: Error is present (Or-link of the bits 1 … 7)
1
O
current: I2t error
2
O
voltage: voltage monitoring error
3
O
temperature: motor overtemperature
4
O
communication error: (overrun, error state)
5
O
–
6
O
reserved, fix = 0
7
O
reserved, fix = 0
Values: 0 = no error; 1 = error present
1)
M = required / O = optional
Tab. 3.9
Bit assignment error_register
The error codes as well as the cause and measures can be found in chapter B “ Diagnostic messages”.
3.5.3
Description of the Objects
Object 1003h: pre_defined_error_field
The respective error_code of the error messages is also stored in a four-stage error memory. This is
structured like a shift register, so that the last occurring error is always stored in the object 1003h_01h
(standard_error_field_0). Through read access on the object 1003h_00h (pre_defined_error_field), it
can be determined how many error messages are currently stored in the error memory. The error
memory is cleared by writing the value 00h into the object 1003h_00h (pre_defined_error_field_0). To
be able to reactivate the output stage of the motor controller after an error, an error acknowledgement
chapter 6.1: Status Diagram (State Machine) must also be performed.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
37
3
CANopen access procedure
Index
1003h
Name
pre_defined_error_field
Object Code
ARRAY
No. of Elements
4
Data Type
UINT32
Sub-Index
Description
Access
PDO Mapping
Units
Value Range
Default Value
01h
standard_error_field_0
ro
no
–
–
–
Sub-Index
Description
Access
PDO Mapping
Units
Value Range
Default Value
02h
standard_error_field_1
ro
no
–
–
–
Sub-Index
Description
Access
PDO Mapping
Units
Value Range
Default Value
03h
standard_error_field_2
ro
no
–
–
–
Sub-Index
Description
Access
PDO Mapping
Units
Value Range
Default Value
04h
standard_error_field_3
ro
no
–
–
–
38
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.6
Network Management (NMT Service)
All CANopen equipment can be triggered via the Network Management. Reserved for this is the identifier with the top priority (000h). By means of NMT, commands can be sent to one or all controllers. Each
command consists of two bytes, whereby the first byte contains the command specifier (CS) and the
second byte the node ID (NI) of the addressed controller. Through the node ID zero, all nodes in the
network can be addressed simultaneously. It is thus possible, for example, that a reset is triggered in all
devices simultaneously. The controllers do not acknowledge the NMT commands. Successful completion can only be determined indirectly (e.g. through the switch-on message after a reset).
Structure of the NMT Message:
Identifier: 000h
Command specifier
000h
2
CS
NI
Node ID
Data length
For the NMT status of the CANopen node, statuses are established in a status diagram. Changes in
statuses can be triggered via the CS byte in the NMT message. These are largely oriented on the target
status.
Power On
Reset Application
aE
Reset Communication
2
aA
aD
Pre-Operational (7Fh)
3
5
aJ
7
Stopped (04h)
aC
6
9
Fig. 3.2
4
Operational (05h)
8
aB
Status diagram
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
39
3
CANopen access procedure
Transition
Significance
CS
Target status
2
3
4
5
6
7
8
9
10
11
12
13
14
Bootup
Start Remote Node
Enter Pre-Operational
Stop Remote Node
Start Remote Node
Enter Pre-Operational
Stop Remote Node
Reset Communication
Reset Communication
Reset Communication
Reset Application
Reset Application
Reset Application
-01h
80h
02h
01h
80h
02h
82h
82h
82h
81h
81h
81h
Pre-Operational
Operational
Pre-Operational
Stopped
Operational
Pre-Operational
Stopped
Reset Communication 1)
Reset Communication 1)
Reset Communication 1)
Reset Application 1)
Reset Application 1)
Reset Application 1)
1)
7Fh
05h
7Fh
04h
05h
7Fh
04h
The final target status is pre-operational (7Fh), since the transitions 15 and 2 are automatically performed by the controller.
Tab. 3.10
NMT state machine
All other status transitions are performed automatically by the controller, e.g. because the initialisation
is completed.
In the NI parameter, the node number of the controller must be specified or zero if all nodes in the network are to be addressed (broadcast). Depending on the NMT status, certain communication objects
cannot be used: For example, it is absolutely necessary to place the NMT status to operational so that
the controller sends PDOs.
Name
Significance
SDO
PDO
NMT
Reset
Application
Reset
Communication
Initialising
No Communication. All CAN objects are reset to their reset
values (application parameter set)
No communication: The CAN controller is newly initialised.
–
–
–
–
–
–
Status after hardware reset. Resetting of the CAN node,
Sending of the bootup message
Communication via SDOs possible; PDOs not active (no
sending/evaluating)
Communication via SDOs possible; all PDOs active (sending/evaluating)
No communication except for heartbeating
–
–
–
X
–
X
X
X
X
–
–
X
Pre-Operational
Operational
Stopped
Tab. 3.11
40
NMT state machine
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
NMT telegrams must not be sent in a burst (one immediately after another)!
At least twice the position controller cycle time must lie between two consecutive NMT
messages on the bus (also for different nodes!) for the controller to process the NMT
messages correctly.
If necessary, the NMT command “Reset Application” is delayed until an ongoing saving
procedure is completed, since otherwise the saving procedure would remain incomplete
(defective parameter set).
The delay can be in the range of a few seconds.
The communication status must be set to operational for the controller to transmit and
receive PDOs.
3.7
Bootup
3.7.1
Overview
After the power supply is switched on or after a reset, the controller reports via a Bootup message that
the initialisation phase is ended. The controller is then in the NMT status preoperational
( chapter 3.6, Network Management (NMT Service))
3.7.2
Structure of the Bootup Message
The Bootup message is structured almost identically to the following Heartbeat message.
Only a zero is sent instead of the NMT status.
Identifier: 700h + node number
Bootup message identifier
701h
1
0
Data length
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
41
3
CANopen access procedure
3.8
Heartbeat (Error Control Protocol)
3.8.1
Overview
The so-called Heartbeat protocol can be activated to monitor communication between slave (drive) and
master: Here, the drive sends messages cyclically to the master. The master can check whether these
messages occur cyclically and introduce corresponding measures if they do not. Since both Heartbeat
and Nodeguarding telegrams ( chap. 3.9) are sent with the identifier 700h + node number, both protocols can be active at the same time. If both protocols are activated simultaneously, only the Heartbeat protocol is active.
3.8.2
Structure of the Heartbeat Message
The Heartbeat telegram is transmitted with the identifier 700h + node number. It contains only 1 byte of
user data, the NMT status of the controller ( chapter 3.6, Network Management (NMT Service)).
Identifier: 700h + node number
NMT status
701h
1
N
Data length
N
Significance
04h
05h
7Fh
Stopped
Operational
Pre-Operational
3.8.3
Description of the Objects
Object 1017h: producer_heartbeat_time
To activate then Heartbeat function, the time between two Heartbeat telegrams can be established via
the object producer_heartbeat_time.
Index
1017h
Name
producer_heartbeat_time
Object Code
VAR
Data Type
UINT16
Access
PDO
Units
Value Range
Default Value
rw
no
ms
0 … 65535
0
42
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
The producer_heartbeat_time can be stored in the parameter record. If the controller starts with a
producer_heartbeat_time not equal to zero, the bootup message is considered to be the first Heartbeat.
The controller can only be used as a so-called Heartbeat producer. The object 1016h
(consumer_heartbeat_time) is therefore implemented only for compatibility reasons and always
returns 0.
3.9
Nodeguarding (Error Control Protocol)
3.9.1
Overview
The so-called Nodeguarding protocol can also be used to monitor communication between slave (drive)
and master. In contrast to the Heartbeat protocol, master and slave monitor each other: The master
queries the drive cyclically about its NMT status. In every response of the controller, a specific bit is
inverted (toggled). If these responses are not made or the controller always responds with the same
toggle bit, the master can react accordingly. Likewise, the drive monitors the regular arrival of the Nodeguarding requests from the master: If messages are not received for a certain time period, the controller triggers error 12-4. Since both Heartbeat and Nodeguarding telegrams ( chapter 3.8) are sent
with the identifier 700h + node number, both protocols cannot be active simultaneously. If both protocols are activated simultaneously, only the Heartbeat protocol is active.
3.9.2
Structure of the Nodeguarding Messages
The master's request must be sent as a so-called remote frame with the identifier 700h + node number.
In the case of a remote frame, a special bit is also set in the telegram, the remote bit. Remote frames
have no data.
Identifier: 700h + node number
701h
R
0
Remote bit (Remote frames have no data)
The response of the controller is built up analogously to the Heartbeat message. It contains only 1 byte
of user data, the toggle bit and the NMT status of the controller ( chapter 3.6).
Identifier: 700h + node number
Toggle bit / NMT status
701h
1
T/N
Data length
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
43
3
CANopen access procedure
The first data byte (T/N) is constructed in the following way:
Bit
Value
Name
Significance
7
0…6
80h
7Fh
toggle_bit
nmt_state
Changes with every telegram
04h Stopped
05h Operational
7Fh Pre-Operational
The monitoring time for the master's requests can be parametrised. Monitoring begins with the first
received remote request of the master. From this time on, the remote requests must arrive before the
monitoring time has passed, since otherwise error 12-4 is triggered.
The toggle bit is reset through the NMT command Reset Communication. It is therefore deleted in the
first response of the controller.
3.9.3
Description of the Objects
Object 100Ch: guard_time
To activate the Nodeguarding monitoring, the maximum time between two remote requests of the master is parametrised. This time is established in the controller from the product of guard_time (100Ch)
and life_time_factor (100Dh). It is therefore recommended to write the life_time_factor with 1 and then
specify the time directly via the guard_time in milliseconds.
Index
100Ch
Name
guard_time
Object Code
VAR
Data Type
UINT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
ms
0 … 65535
0
44
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
3
CANopen access procedure
3.9.4
Object 100Dh: life_time_factor
The life_time_factor should be written with 1 in order to specify the guard_time directly.
Index
100Dh
Name
life_time_factor
Object Code
VAR
Data Type
UINT8
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
–
0.1
0
3.9.5
Table of Identifiers
The following table gives an overview of the identifiers used:
Object type
Identifier (hexadecimal)
SDO (Host to controller)
SDO (Controller to host)
TPDO1
TPDO2
TPDO3
TPDO4
RPDO1
RPDO2
RPDO3
RPDO4
SYNC
EMCY
HEARTBEAT
NODEGUARDING
BOOTUP
NMT
600h + node number
580h + node number
180h
280h
380h
480h
200h
300h
400h
500h
080h
080h + node number
700h + node number
700h + node number
700h + node number
000h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Comment
Standard values.
Can be revised if needed.
45
4
EtherCAT interface
4
M3
4.1
EtherCAT with CoE
This section is only applicable for the motor controller CMMP-AS-…-M3.
Overview
This part of the documentation describes the connection and configuration of the motor controller
CMMP-AS-...-M3 in an EtherCAT network. It is intended for people who are already familiar with this
motor controller series and CANopen CiA 402.
The fieldbus system EtherCAT means “Ethernet for Controller and Automation Technology” and is managed and supported by the international EtherCAT Technology Group (ETG) organisation; it is designed
as an open technology, which is standardised by the International Electrotechnical Commission (IEC).
EtherCAT is a fieldbus system based on Ethernet and can be handled like a fieldbus, thanks to high
speed, flexible topology (line, tree, star) and simple configuration. The EtherCAT protocol is transported
with a special standardised Ethernet type directly in the Ethernet frame in accordance with IEEE802.3.
The slaves can broadcast, multicast and communicate laterally. For EtherCAT, the data exchange is
based on a pure hardware machine.
Abbreviation
Significance
ESC
EtherCAT Slave Controller
PDI
Process Data Interface
CoE
CANopen-over-EtherCAT protocol
Tab. 4.1
4.2
EtherCAT-specific abbreviations
EtherCat-Interface CAMC-EC
The EtherCAT interface CAMC-EC allows the CMMP-AS-...-M3 motor controller to be connected to the
EtherCAT fieldbus system. Communication over the EtherCAT interface (IEEE 802.3u) takes place with
an EtherCAT standard cabling and is possible between the CMMP-AS-...-M3 from Revision 01 and the
FCT parameterisation software from Version 2.0.
Festo supports the CoE protocol (CANopen over EtherCAT) with the CMMP-AS-...-M3.
46
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
EtherCAT CAMC-EC interface characteristics
The EtherCAT interface has the following features:
– Can be mechanically fully integrated into the CMMP-AS-...-M3 series motor controllers
– EtherCAT conforming to IEEE-802.3u (100Base-TX) with 100Mbps (full-duplex)
– Star and line topology
– Plug connector: RJ45
– Electrically isolated EtherCAT interface
– Communication cycle: 1 ms
– Max. 127 slaves
– EtherCAT slave implementation based on the Beckhoff FPGA ESC20
– Support of the “Distributed Clocks” feature for time-synchronous setpoint value transfer
– LED displays for ready status and link detect
Connection and display elements of the EtherCAT interface
The following elements can be found on the front plate of the EtherCAT interface:
– LED 1 (two-colour LED) for:
– EtherCAT communication (yellow)
– “Connection active on Port 1” (red)
– Run (green)
– LED 2 (red) for displaying “Connection active on Port 2”
– Two RJ45 sockets.
The following figure shows the position and numbering of the sockets:
1
2
3
4
LED2
LED1
RJ45 socket [X1]
RJ45 socket [X2]
1
2
3
4
Fig. 4.1
Connection and display elements at the EtherCAT interface
The EtherCAT interface can only be operated in option slot Ext2. Operation of other interface modules in option slot Ext1, except with CAMC-D-8E8A interface, is then no longer
possible.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
47
4
EtherCAT interface
4.3
Installing the EtherCAT interface in the controller
Note
Before performing mounting and installation work, observe the safety instructions in
the hardware description GDCP-CMMP-M3-HW-...
Use an appropriate Phillips screwdriver to remove the front cover over option slot Ext2 of the
CMMP-AS-...-M3 motor controller. The EtherCAT interface is now plugged into the open slot (Ext2) so
that the printed circuit board slides into the lateral guides of the slot. The interface is pushed in up to
the stop. Then screw the interface to the motor controller housing using the Phillips screw.
4.4
Pin allocation and cable specifications
RJ45 sockets
Function
[X1] (RJ45 socket on top)
Uplink to the master or a previous station of a series connection
(e.g. multiple motor controllers)
Uplink to the master, end of a series connection or connection of
additional downstream stations
[X2] (RJ45 socket underneath)
Tab. 4.2
Tab. 4.3
Design of plug connectors [X1] and [X2]
Pin
Specification
1
Receiver signal- (RX-)
Wire pair 3
2
Receiver signal+ (RX+)
Wire pair 3
3
Transmission signal- (TX-)
Wire pair 2
4
–
Wire pair 1
5
–
Wire pair 1
6
Transmission signal+ (TX+)
Wire pair 2
7
–
Wire pair 4
8
–
Wire pair 4
Allocation of the plug connectors [X1] and [X2]
Value
Function
EtherCAT interface, signal level
EtherCAT interface, differential voltage
0 … 2.5 V DC
1.9 … 2.1 V DC
Tab. 4.4
EtherCAT interface specification
Type and design of cable
Shielded twisted-pair STP, Cat.5 cables must be used for cabling. Star and line topologies are supported. The network structure must conform to the 5-4-3 rule. A maximum of 10 hubs can be cabled in
series. The EtherCAT interface contains a hub. The total cable length is restricted to 100 m.
48
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Errors due to inappropriate bus cables
Due to the very high possible transmission rates, we recommend that you use only standardised cables and plug connectors that at a minimum conform to the category 5 (CAT5)
in accordance with EN 50173 or ISO/IEC 11801.
When setting up the EtherCAT network, you must unconditionally follow the advice in the
relevant literature or the subsequent information and instructions in order to maintain a
stable, trouble-free system. If the system is not cabled properly, EtherCAT bus malfunctions can occur during operation. These can cause the CMMP-AS-...-M3 motor controller
to shut off with an error for safety reasons.
Bus termination
No external bus terminations are required. The EtherCAT technology module monitors its two ports and
terminates the bus automatically (loop-back function).
4.5
CANopen communication interface
User protocols are tunnelled via EtherCAT. For the CANopen-over-EtherCAT protocol (CoE) supported by
the CMMP-AS-...-M3, most objects for the communication layer are supported by EtherCAT in accordance with CiA 301. This primarily involves objects for setting up communication between masters and
slaves.
For the CANopen Motion Profile in accordance with CiA 402, most objects which can also be operated
via the standard CANopen fieldbus are supported. In general, the following services and object groups
are supported by the EtherCAT CoE implementation in the motor controller CMMP-AS-...-M3:
Services/object groups
Function
SDO
PDO
EMCY
Used for normal parametrisation of the motor controller.
Fast exchange of process data (e.g. actual speed) possible.
Transmission of error messages.
Tab. 4.5
Service Data Object
Process Data Object
Emergency Message
Supported services and object groups
The individual objects which can be addressed via the CoE protocol in the motor controller CMMPAS-...-M3 are internally forwarded to the existing CANopen implementation and processed there.
However, some new CANopen objects are added under the CoE implementation under EtherCAT, which
are required for special connection via CoE. This is the result of the revised communication interface
between the EtherCAT protocol and the CANopen protocol. A so-called Sync Manager is used to control
the transmission of PDOs and SDOs via the two EtherCAT transfer types (mailbox and process data
protocol).
This Sync Manager and the necessary configuration steps for operation of the CMMP-AS-...-M3 under
EtherCAT-CoE are described in chapter 4.5.1 “Configuration of the Communication Interface”. The additional objects are described in chapter 4.5.2 “New and revised objects under CoE”.
Also, some CANopen objects of the CMMP-AS-...-M3, which are available under a normal CANopen
connection, are not supported via a CoE connection over EtherCAT.
A list of the CANopen objects not supported under CoE is provided in chapter 4.5.3
“Objects not supported under CoE”.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
49
4
EtherCAT interface
4.5.1
Configuration of the Communication Interface
As already described in the previous chapter, the EtherCAT protocol uses two different transfer types
for transmission of the device and user protocols, such as the CANopen-over-EtherCAT protocol (CoE)
used by the CMMP-AS-...-M3. These two transfer types are the mailbox telegram protocol for non-cyclic
data and the process data telegram protocol for transmission of cyclic data.
These two transfer types are used for the different CANopen transfer types for the CoE protocol. They
are used as follows:
Telegram protocol
Description
Reference
Mailbox
This transfer type is used to transmit the Service
Data Objects (SDOs) defined under CANopen.
They are transmitted to EtherCAT in SDO frames.
This transfer type is used to transmit the Process
Data Objects (PDOs) defined under CANopen,
which are used to exchange cyclic data. They are
transmitted to EtherCAT in PDO frames.
chapter 4.7
“SDO Frame”
Process Data
Tab. 4.6
chapter 4.8
“PDO Frame”
Telegram protocol – description
In general, these two transfer types allow all PDOs and SDOs to be used exactly as they are defined for
the CANopen protocol for CMMP-AS-...-M3.
However, parametrisation of PDOs and SDOs for sending objects via EtherCAT is different from the
settings which must be made under CANopen. In order to link the CANopen objects to be exchanged via
PDO or SDO transfers between masters and slaves into the EtherCAT protocol, a so-called Sync
Manager is implemented under EtherCAT.
This Sync Manager is used to link the data of the PDOs and SDOs to be sent to the EtherCAT telegrams.
To accomplish this, the Sync Manager provides multiple Sync channels which can each implement a
CANopen data channel (Receive SDO, Transmit SDO, Receive PDO or Transmit PDO) on the EtherCAT
telegram.
The figure shows how the Sync Manager is linked to the system:
EtherCAT Bus
Fig. 4.2
50
SYNC
channel 0
Receive SDO
SYNC
channel 1
Transmit SDO
SYNC
channel 2
Receive PDO (1/2/3/4)
SYNC
channel 3
Transmit PDO (1/2/3/4)
Sample mapping of the SDOs and PDOs to the Sync channels
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
All objects are sent via so-called Sync channels. The data from these channels are automatically linked
to the EtherCAT data flow and transmitted. The EtherCAT implementation in the motor controller
CMMP-AS-...-M3 supports four such Sync channels.
For this reason, additional mapping of the SDOs and PDOs to the Sync channels is required compared
with CANopen. This occurs via the so-called Sync Manager objects (objects 1C00h and 1C10h … 1C13h
chapter 4.5.2). These objects are described in more detail below.
These Sync channels are permanently allocated to the individual transfer types and cannot be changed
by the user. The allocation is as follows:
– Sync channel 0: Mailbox telegram protocol for incoming SDOs (Master => Slave)
– Sync channel 1: Mailbox telegram protocol for outgoing SDOs (Master <= Slave)
– Sync channel 2: Process data telegram protocol for incoming PDOs (Master => Slave).
The object 1C12h must be observed here.
– Sync channel 3: Process data telegram protocol for outgoing PDOs (Master <= Slave).
The object 1C13h must be observed here.
The parametrisation of the individual PDOs is set via objects 1600h to 1603h (Receive PDOs) and 1A00h
to 1A03h (Transmit PDOs). Parametrisation of the PDOs is carried out as described in chapter 3
“ CANopen access procedure”.
The Sync channels can only be set and the PDOs only configured in the “Pre-Operational” status.
It is not intended to parameterise the slave under EtherCAT. The device description files
are available for this purpose. They prescribe the total parametrisation, including PDO
parametrisation, which is used by the master during initialisation.
All changes to the parametrisation should therefore not be made by hand, but in the
device description files. For this purpose, sections of the device description files that are
important for the user are described in more detail in section 4.11.
The Sync channels described here are NOT the same as the Sync telegrams familiar from
CANopen. CANopen Sync telegrams can still be transmitted as SDOs via the SDO interface
implemented under CoE, but do not directly influence the Sync channels described above.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
51
4
EtherCAT interface
4.5.2
New and revised objects under CoE
The following table contains an overview of the indices and subindices used for CANopen-compatible
communication objects, which are inserted in the range from 1000h to 1FFFh for the EtherCAT fieldbus
system. These primarily replace the communication parameters in accordance with CiA 301.
Object
Significance
Permitted with
1000h
Device type
Device control identifier
1018h
Identity object
Vendor ID, product code, revision, serial number
1100h
EtherCAT fixed station address
Fixed address assigned to the slave during initialisation by the master
1600h
1. RxPDO Mapping
Identifier of the 1st Receive PDO
1601h
2. RxPDO Mapping
Identifier of the 2nd Receive PDO
1602h
3. RxPDO Mapping
Identifier of the 3rd Receive PDO
1603h
4. RxPDO Mapping
Identifier of the 4th Receive PDO
1A00h
1. TxPDO Mapping
Identifier of the 1st Transmit PDO
1A01h
2. TxPDO Mapping
Identifier of the 2nd Transmit PDO
1A02h
3. TxPDO Mapping
Identifier of the 3rd Transmit PDO
1A03h
4. TxPDO Mapping
Identifier of the 4th Transmit PDO
1C00h
Sync Manager Communication
Type
Object for configuring the individual Sync channels
(SDO or PDO Transfer)
1C10h
Sync Manager PDO Mapping
for Sync Channel 0
Assignment of the Sync channel 0 to a PDO/SDO
(Channel 0 is always reserved for Mailbox Receive
SDO Transfer)
1C11h
Sync Manager PDO Mapping
for Sync Channel 1
Assignment of the Sync channel 1 to a PDO/SDO
(Channel 1 is always reserved for Mailbox Send SDO
Transfer)
1C12h
Sync Manager PDO Mapping
for Sync Channel 2
Assignment of the Sync channel 2 to a PDO
(Channel 2 is reserved for Receive PDOs)
1C13h
Sync Manager PDO Mapping
for Sync Channel 3
Assignment of the Sync channel 3 to a PDO
(Channel 3 is reserved for Transmit PDOs)
Tab. 4.7
New and revised communication objects
The subsequent chapters describe the objects 1C00h and 1C10h…1C13h in more detail, as they are only
defined and implemented under the EtherCAT CoE protocol and therefore are not documented in the
CANopen manual for the motor controller CMMP-AS-...-M3.
The motor controller CMMP-AS-...-M3 with the EtherCAT interface supports four Receive
PDOs (RxPDO) and four Transmit PDOs (TxPDO).
Objects 1008h, 1009h and 100Ah are not supported by the CMMP-AS-...-M3, as plain text
strings cannot be read from the motor controller.
52
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Object 1100h - EtherCAT fixed station address
This object allocates a unique address to the slave during the initialisation phase. The object has the
following significance:
Index
1100h
Name
EtherCAT fixed station address
Object Code
Var
Data Type
uint16
Access
ro
PDO Mapping
no
Value Range
0 … FFFFh
Default Value
0
Object 1C00h - Sync Manager Communication Type
This object allows the transfer type for the various channels of the EtherCAT Sync Manager to be read.
As the CMMP-AS-...-M3 only supports the first four Sync channels under the EtherCAT CoE protocol, the
following objects are “read only”.
The Sync Manager for the CMMP-AS-...-M3 is configured as a result. The objects have the following
significance:
Index
1C00h
Name
Sync Manager Communication Type
Object Code
Array
Data Type
uint8
Sub-Index
00h
Description
Number of Used Sync Manager Channels
Access
ro
PDO Mapping
no
Value Range
4
Default Value
4
Sub-Index
01h
Description
Communication Type Sync Channel 0
Access
ro
PDO Mapping
no
Value Range
2: Mailbox Transmit (Master => Slave)
Default Value
2: Mailbox Transmit (Master => Slave)
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
53
4
EtherCAT interface
Sub-Index
02h
Description
Communication Type Sync Channel 1
Access
ro
PDO Mapping
no
Value Range
2: Mailbox Transmit (Master <= Slave)
Default Value
2: Mailbox Transmit (Master <= Slave)
Index
03h
Description
Communication Type Sync Channel 2
Access
ro
PDO Mapping
no
Value Range
0: unused
3: Process Data Output (RxPDO / Master => Slave)
Default Value
3
Sub-Index
04h
Description
Communication Type Sync Channel 3
Access
ro
PDO Mapping
no
Value Range
0: unused
4: Process Data Input (TxPDO/Master <= Slave)
Default Value
4
Object 1C10h - Sync Manager Channel 0 (Mailbox Receive)
This object allows a PDO to be configured for Sync channel 0. As Sync channel 0 is always allocated to
the mailbox telegram protocol, the user cannot change this object. The object therefore always has the
following values:
Index
1C10h
Name
Sync Manager Channel 0 (Mailbox Receive)
Object Code
Array
Data Type
uint8
Sub-Index
00h
Description
Number of assigned PDOs
Access
ro
PDO Mapping
no
Value Range
0 (no PDO assigned to this channel)
Default Value
0 (no PDO assigned to this channel)
54
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
The name “Number of assigned PDOs” assigned by the EtherCAT specification for
Sub-index 0 of these objects is confusing here, as Sync Manager channels 0 and 1 are
always allocated through the mailbox telegram. SDOs are always transmitted in this
telegram type under EtherCAT CoE. Sub-index 0 of these two objects is therefore unused.
Object 1C11h - Sync Manager Channel 1 (Mailbox Send)
This object allows a PDO to be configured for Sync channel 1. As Sync channel 1 is always allocated to
the mailbox telegram protocol, the user cannot change this object. The object therefore always has the
following values:
Index
1C11h
Name
Sync Manager Channel 1 (Mailbox Send)
Object Code
Array
Data Type
uint8
Sub-Index
00h
Description
Number of assigned PDOs
Access
ro
PDO Mapping
no
Value Range
0 (no PDO assigned to this channel)
Default Value
0 (no PDO assigned to this channel)
Object 1C12h - Sync Manager Channel 2 (Process Data Output)
This object allows a PDO to be configured for Sync channel 2. Sync channel 2 is permanently assigned
for the reception of Receive PDOs (Master => Slave). In this object, the number of PDOs assigned to this
Sync channel must be set under sub-index 0.
The object number of the PDO to be allocated to the channel is subsequently entered in sub-indices
1 to 4. Only the object numbers of the previously configured Receive PDOs can be used for this
(object 1600h … 1603h).
In the current implementation, the data of the objects below is not evaluated further by the firmware of
the motor controller.
The CANopen configuration of the PDOs is used for evaluation under EtherCAT.
Index
1C12h
Name
Sync Manager Channel 2 (Process Data Output)
Object Code
Array
Data Type
uint8
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
55
4
EtherCAT interface
Sub-Index
00h
Description
Number of assigned PDOs
Access
rw
PDO Mapping
no
Value Range
0: no PDO assigned to this channel
1: one PDO assigned to this channel
2: two PDOs assigned to this channel
3: three PDOs assigned to this channel
4: four PDOs assigned to this channel
Default Value
0 :no PDO assigned to this channel
Sub-Index
01h
Description
PDO Mapping object Number of assigned RxPDO
Access
rw
PDO Mapping
no
Value Range
1600h: first Receive PDO
Default Value
1600h: first Receive PDO
Sub-Index
02h
Description
PDO Mapping object Number of assigned RxPDO
Access
rw
PDO Mapping
no
Value Range
1601h: second Receive PDO
Default Value
1601h: second Receive PDO
Sub-Index
03h
Description
PDO Mapping object Number of assigned RxPDO
Access
rw
PDO Mapping
no
Value Range
1602h: third Receive PDO
Default Value
1602h: third Receive PDO
Sub-Index
04h
Description
PDO Mapping object Number of assigned RxPDO
Access
rw
PDO Mapping
no
Value Range
1603h: fourth Receive PDO
Default Value
1603h: fourth Receive PDO
56
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Object 1C13h - Sync Manager Channel 3 (Process Data Input)
This object allows a PDO to be configured for Sync channel 3. Sync channel 3 is permanently assigned
for sending Transmit PDOs (Master <= Slave). In this object, the number of PDOs assigned to this Sync
channel must be set under sub-index 0.
The object number of the PDO to be allocated to the channel is subsequently entered in sub-indices 1
to 4. Only the object numbers of the previously configured Transmit PDOs can be used for this
(1A00h to 1A03h).
Index
1C13h
Name
Sync Manager Channel 3 (Process Data Input)
Object Code
Array
Data Type
uint8
Sub-Index
00h
Description
Number of assigned PDOs
Access
rw
PDO Mapping
no
Value Range
0: no PDO assigned to this channel
1: one PDO assigned to this channel
2: two PDOs assigned to this channel
3: three PDOs assigned to this channel
4: four PDOs assigned to this channel
Default Value
0: no PDO assigned to this channel
Sub-Index
01h
Description
PDO Mapping object Number of assigned TxPDO
Access
rw
PDO Mapping
no
Value Range
1A00h: first Transmit PDO
Default Value
1A00h: first Transmit PDO
Sub-Index
02h
Description
PDO Mapping object Number of assigned TxPDO
Access
rw
PDO Mapping
no
Value Range
1A01h: second Transmit PDO
Default Value
1A01h: second Transmit PDO
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
57
4
EtherCAT interface
Sub-Index
03h
Description
PDO Mapping object Number of assigned TxPDO
Access
rw
PDO Mapping
no
Value Range
1A02h: third Transmit PDO
Default Value
1A02h: third Transmit PDO
Sub-Index
04h
Description
PDO Mapping object Number of assigned TxPDO
Access
rw
PDO Mapping
no
Value Range
1A03h: fourth Transmit PDO
Default Value
1A03h: fourth Transmit PDO
58
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
4.5.3
Objects not supported under CoE
When connecting the CMMP-AS-...-M3 under “CANopen over EtherCAT”, some CANopen objects, which
are available under a direct connection of the CMMP-AS-...-M3 via CiA 402, are not supported. These
objects are listed in the table below:
Identifier
Name
Significance
1008h
Manufacturer Device Name (String)
Device name (object is not available)
1009h
Manufacturer Hardware Version (String)
HW version (object is not available)
100Ah
Manufacturer Software Version (String)
SW version (object is not available)
6089h
position_notation_index
Specifies the number of decimal places for
displaying the position values in the
controller. The object is only available as a
data container. The firmware is not
evaluated further.
608Ah
position_dimension_index
Specifies the unit for displaying the position
values in the controller. The object is only
available as a data container. The firmware
is not evaluated further.
608Bh
velocity_notation_index
Specifies the number of decimal places for
displaying the velocity values in the
controller. The object is only available as a
data container. The firmware is not
evaluated further.
608Ch
velocity_dimension_index
Specifies the unit for displaying the velocity
values in the controller. The object is only
available as a data container. The firmware
is not evaluated further.
608Dh
acceleration_notation_index
Specifies the number of decimal places for
displaying the acceleration values in the
controller. The object is only available as a
data container. The firmware is not
evaluated further.
608Eh
acceleration_dimension_index
Specifies the unit for displaying the
acceleration values in the controller. The
object is only available as a data container.
The firmware is not evaluated further.
Tab. 4.8
Unsupported communication objects
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
59
4
EtherCAT interface
4.6
Communication Finite State Machine
As in almost all fieldbus interfaces for motor controllers, the connected slave (in this case the motor
controller CMMP-AS-...-M3) must first be initialised by the master before it can be used by the master in
an application. For this purpose, a finite state machine is defined for communication, to specify a fixed
sequence of actions for this initialisation process.
A finite state machine is also defined for the EtherCAT interface. Changes between the individual
statuses of the finite state machine may only occur between specific statuses, and are always initiated
by the master. Slaves may not implement status changes independently. The individual statuses and
the permitted status changes are described in the following tables and figures.
Status
Description
Power ON
The device has been switched on. It initialises itself and switches directly to the
“Init” status.
Init
In this status, the EtherCAT fieldbus is synchronised by the master. This includes
setting up the asynchronous communication between master and slave (mailbox
telegram protocol). There is no direct communication between the master and
slave yet.
The configuration starts, saved values are loaded. When all devices are connected to the bus and configured, the status switches to “Pre-Operational”.
Pre-Operational
In this status, asynchronous communication between the master and slave is
active. The master uses this status to set up possible cyclic communication via
PDOs and use acyclic communication for necessary parametrisation.
If this status runs without errors, the master switches to the “Safe-Operational”
status.
Safe-Operational
This status is used to set all equipment connected to the EtherCAT bus to a safe
status. The slave sends up-to-date actual values to the master but ignores new
setpoint values from the master and uses safe default values instead.
If this status runs without errors, the master switches to the “Operational”
status.
Operational
In this status, both acyclic and cyclic communication are active. Masters
and slaves exchange target and actual value data. In this status, the
CMMP-AS-...-M3 can be enabled and travel via the CoE protocol.
Tab. 4.9
60
Statuses of communication finite state machine
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Only transitions in accordance with Fig. 4.3 are permitted between the individual statuses of the communication finite state machine:
Init
(IP)
(PI)
Pre-Operational
(PS)
(OI)
(OP)
(SI)
(SP)
Safe-Operational
(SO)
(OS)
Operational
Fig. 4.3
Communication finite state machine
The transitions are described individually in the following table.
Status transition
Status
IP
Start of acyclic communication (mailbox telegram protocol)
PI
Stop of acyclic communication (mailbox telegram protocol)
PS
Start Inputs Update: start of cyclic communication (process data telegram
protocol) Slave sends actual values to master. The slave ignores setpoint values
from the master and uses internal default values.
SP
Stop Input Update: stop of cyclic communication (process data telegram
protocol). The slave no longer sends actual values to the master.
SO
Start Output Update: The slave evaluates up-to-date setpoint specifications
from the master.
OS
Stop Output Update: The slave ignores setpoint values from the master and
uses internal default values.
OP
Stop Output Update, Stop Input Update:
stop of cyclic communication (process data telegram protocol). The slave no
longer sends actual values to the master, and the master no longer sends
setpoint values to the slave.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
61
4
EtherCAT interface
Status transition
Status
SI
Stop Input Update, Stop Mailbox Communication:
Stop of cyclic communication (process data telegram protocol) and stop of
acyclic communication (mailbox telegram protocol). The slave no longer sends
actual values to the master, and the master no longer sends setpoint values to
the slave.
OI
Stop Output Update , Stop Input Update, Stop Mailbox Communication:
Stop of cyclic communication (process data telegram protocol) and stop of
acyclic communication (mailbox telegram protocol). The slave no longer sends
actual values to the master, and the master no longer sends setpoint values to
the slave.
Tab. 4.10 Status transitions
In the EtherCAT finite state machine, the “Bootstrap” status is also specified in addition
to the statuses listed here. This status is not implemented for the motor controller
CMMP-AS-...-M3.
4.6.1
Differences between the finite state machines of CANopen and EtherCAT
When operating the CMMP-AS-...-M3 via the EtherCAT-CoE protocol, the EtherCAT finite state machine
is used instead of the CANopen NMT finite state machine. This differs from the CANopen finite state
machine in several aspects. These different characteristics are listed below:
– No direct transition from Pre-Operational after Power On
– No Stopped status, direct transition to the INIT status
– Additional status: Safe-Operational
The following table compares the different statuses:
EtherCAT State
CANopen NMT State
Power ON
Init
Safe-Operational
Operational
Power-On (initialisation)
Stopped
–
Operational
Tab. 4.11 Comparison of the statuses for EtherCAT and CANopen
62
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
4.7
SDO Frame
All data of an SDO transfer are transmitted via SDO frames in CoE. These frames have the following
structure:
6 bytes
2 bytes
Mailbox Header
CoE Header
Mandatory Header
Fig. 4.4
1 byte
SDO Control Byte
2 bytes 1 byte
Index
Sub-index
4 bytes 1...n bytes
Data
Standard CANopen SDO Frame
Data
Optional
SDO Frame: telegram structure
Element
Description
Mailbox Header
CoE Header
SDO Control Byte
Index
Sub-index
Data
Data (optional)
Data for mailbox communication (length, address and type)
Identifier of the CoE service
Identifier for a read or write command
Main index of the CANopen communication object
Sub-index of the CANopen communication object
Data content of the CANopen communication object
Additional optional data. This option is not supported by the motor controller
CMMP-AS-...-M3, as only standard CANopen objects can be addressed. The
maximum size of these objects is 32 bits.
Tab. 4.12 SDO Frame: elements
In order to transmit a standard CANopen object via one of these SDO frames, the actual CANopen SDO
frame is packaged in an EtherCAT SDO frame and transmitted.
Standard CANopen SDO frames can be used for:
– Initialisation of the SDO download
– Download of the SDO segment
– Initialisation of the SDO upload
– Upload of the SDO segment
– Abort of the SDO transfer
– SDO upload expedited request
– SDO upload expedited response
– SDO upload segmented request (max. 1 segment with 4 bytes of user data)
– SDO upload segmented response (max. 1 segment with 4 bytes of user data)
All above-mentioned transfer types are supported by the motor controller
CMMP-AS-...-M3.
As the use of the CoE implementation of the CMMP-AS-...-M3 only allows the standard
CANopen objects to be addressed, whose size is restricted to 32 bits (4 bytes), only
transfer types with a maximum data length of up to 32 bits (4 bytes) are supported.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
63
4
EtherCAT interface
4.8
PDO Frame
Process Data Objects (PDO) are used for cyclic transmission of setpoint values and actual values
between master and slave. They must be configured in the “Pre-Operational” status by the master
before the slave is operated. They are then transmitted in PDO frames. These PDO frames have the
following structure:
All data of a PDO transfer are transmitted via PDO frames in CoE. These frames have the following
structure:
1...8 bytes
Process Data
Standard CANopen PDO Frame
Fig. 4.5
1...n bytes
Process Data
Optional
PDO Frame: telegram structure
Element
Description
Process Data
Process Data
(optional)
Data content of the PDO (Process Data Object)
Optional data content of additional PDOs
Tab. 4.13 PDO Frame: elements
To transmit a PDO via the EtherCAT-CoE protocol, in addition to the PDO configuration (PDO Mapping),
the Transmit and Receive PDOs must be assigned to a transmission channel of the Sync Manager
( chapter 4.5.1 “Configuration of the Communication Interface”). The data exchange of PDOs for the
motor controller CMMP-AS-...-M3 takes place exclusively via the EtherCAT process data telegram protocol.
The transfer of CANopen process data (PDOs) via acyclic communication (mailbox telegram protocol) is not supported by the motor controller CMMP-AS-...-M3.
As all data exchanged via the EtherCAT CoE protocol are forwarded directly to the internal CANopen
implementation in the motor controller CMMP-AS-...-M3, the PDO mapping is also implemented as
described in chapter 3.3 “PDO Message”. The figure below depicts this process:
64
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Mapping Object
Object Dictionary
Object Contents
Index
Sub
1ZZZh
01h
6TTTh TTh
1ZZZh
02h
6UUUh UUh
8
1ZZZh
03h
6WWWh WWh
16
8
PDO Length: 32 bit
PDO1
Application Object
6TTTh
TTh
Object B
6VVVh
Object C
6WWWh WWh
Object D
6XXXh
XXh
Object E
6YYYh
YYh
Object F
6ZZZh
ZZh
Object G
Fig. 4.6
Object B
Object D
Object A
6UUUh UUh
VVh
Object A
PDO Mapping
The simple forwarding of the data received via CoE to the CANopen protocol implemented in
CMMP-AS-...-M3 means that the “Transmission Types” of the PDOs available for the CANopen protocol
for the CMMP-AS-...-M3 can be used in addition to CANopen object mapping for the PDOs to be
parameterised.
The motor controller CMMP-AS-...-M3 also supports the “Sync Message” transmission type. However,
the Sync Message does not have to be sent via EtherCAT.
It is used either for the arrival of the telegram or the hardware synchronisation pulse of the “Distributed
Clocks” mechanism (see below) for data transfer.
The EtherCAT interface for CMMP-AS-...-M3 supports synchronisation via the “Distributed Clocks”
mechanism specified under EtherCAT by means of the use of FPGA module ESC20. The current regulator of the motor controller CMMP-AS-...-M3 is synchronised to this pulse, and the correspondingly
configured PDOs are evaluated or sent.
The motor controller CMMP-AS-...-M3 with the EtherCAT interface supports the following functions:
– Cyclic PDO frame telegram via the process data telegram protocol.
– Synchronous PDO frame telegram via the process data telegram protocol.
The motor controller CMMP-AS-...-M3 with the EtherCAT interface supports four Receive PDOs (RxPDO)
and four Transmit PDOs (TxPDO).
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
65
4
EtherCAT interface
4.9
Error Control
The EtherCAT CoE implementation for the motor controller CMMP-AS-...-M3 monitors the following
error statuses of the EtherCAT fieldbus:
– FPGA is not ready when the system is started.
– A bus error has occurred.
– An error has occurred on the mailbox channel. The following errors are monitored in this case:
– An unknown service is requested.
– A protocol other than CANopen over EtherCAT (CoE) is to be used.
– An unknown Sync Manager is addressed.
All of these errors are defined as corresponding error codes for the motor controller CMMP-AS-...-M3. If
one of the above-mentioned errors occurs, it is transmitted to the controller via a “Standard Emergency
Frame”. See also Chapter 4.10 “Emergency Frame” and Chapter B “ Diagnostic messages”.
The CMMP-AS-...-M3/-M0 motor controller with the EtherCAT interface supports the following function:
– Application Controller determines a defined error message number as a result of an event
(Error Control Frame telegram from the controller).
4.10
Emergency Frame
The master and slaves exchange error messages via the EtherCAT CoE emergency frame. The CoE emergency frames are used for direct transfer of the “Emergency Messages” defined under CANopen. The
CANopen telegrams are simply tunnelled through the CoE emergency frames, as is the case for SDO
and PDO transmission.
6 bytes
Mailbox Header
2 bytes
CoE Header
2 bytes
Error Code
Mandatory Header
Fig. 4.7
1 byte
Error Register
5 bytes
Data
Standard CANopen Emergency Frame
1...n bytes
Data
Optional
Emergency Frame: telegram structure
Element
Description
Mailbox Header
CoE Header
ErrorCode
Error Register
Data
Data (optional)
Data for mailbox communication (length, address and type)
Identifier of the CoE service
Error Code of the CANopen EMERGENCY Message Chapter 3.5.2
Error Register of the CANopen EMERGENCY Message Tab. 3.9
Data content of the CANopen EMERGENCY Message
Additional optional data. As only the standard CANopen emergency frames are
supported in the CoE implementation for the motor controller CMMP-AS-...-M3,
the “Data (optional)” field is not supported.
Tab. 4.14 Emergency Frame: elements
As the “Emergency Messages” received and sent via CoE are simply forwarded to the CANopen protocol
implemented in the motor controller, all error messages can be looked up in the chapter B.
66
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
4.11
EtherCAT interface
XML Device Description File
In order to connect EtherCAT slave devices simply to an EtherCAT master, there must be a description
file for every EtherCAT slave device. This description file is comparable to the EDS files for the CANopen
fieldbus system or the GSD files for Profibus. In contrast to the latter, the EtherCAT description file is in
the XML format, as is often used for internet and web applications, and contains information on the
following features of the EtherCAT slave devices:
– Information on the device manufacturer
– Name, type and version number of the device
– Type and version number of the protocol to be used for this device (e.g. CANopen over Ethernet, ...)
– Parametrisation of the device and configuration of the process data
This file contains the complete parametrisation of the slave, including the parametrisation of the Sync
Manager and the PDOs. For this reason, the configuration of the slave can be changed using this file.
Festo has created a device description file for the CMMP-AS-...-M3 motor controller. It can be downloaded from the Festo homepage. Its contents will now be described in more detail to permit users to
adapt this file to their application.
The available device description file supports both the CiA 402 profile and the FHPP profile via separately selectable modules.
4.11.1
Fundamental structure of the device description file
The EtherCAT device description file is in the XML format. This format has the advantage that it can be
read and edited in a standard text editor. An XML file always describes a tree structure. It defines the
individual branches via nodes. These nodes have a start and end marking. Each node can contain any
number of sub-nodes.
EXAMPLE: Rough explanation of the fundamental structure of an XML file:
<EtherCATInfo Version=“0.2“>
<Vendor>
<Id>#x1D</Id>
<Name>Festo AG</Name>
<ImageData16x14>424DD60200......</ImageData16x14>
</Vendor>
<Descriptions>
<Groups>
<Group SortOrder=“1“>
<Type>Festo Electric-Drives</Type>
<Name LcId=“1033“>Festo Electric-Drive</Name>
</Group>
</Groups>
<Devices>
<Device Physics=“YY“>
</Device>
</Devices>
</Descriptions>
</EteherCATInfo>
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
67
4
EtherCAT interface
The following brief rules must be observed for the structure of an XML file:
– Each node must have a unique name.
– Each node opens with <node name> and closes with </node name>.
The device description file for the motor controller CMMP-AS-...-M3 under EtherCAT CoE is divided into
the following sub-items:
Node name
Significance
Adaptable
Vendor
This node contains the name and the ID of the manufacturer of the
device to which this description file belongs. It also contains the
binary code of a bitmap with the manufacturer's logo.
No
Description
This sub-item contains the actual device description including the
configuration and initialisation.
Partially
Group
This node contains the assignment of the device to a device group.
These groups are specified and may not be changed by the user.
No
Devices
This sub-item contains the actual description of the device.
Partially
Tab. 4.15 Nodes of the device description file
The following table describes only the subnodes of the “Description” node that are required for parameterisation of the motor controller CMMP-AS-...-M3 under CoE. All other nodes are fixed and may not
be changed by the user.
Node name
Significance
Adaptable
RxPDO Fixed=...
This node contains the PDO Mapping and the assignment of the
PDO to the Sync Manager for Receive PDOs.
Yes
TxPDO Fixed=...
This node contains the PDO Mapping and the assignment of the
PDO to the Sync Manager for Transmit PDOs.
Yes
Mailbox
This node allows commands to be defined that are transmitted to
the slave via SDO transfers by the master during the phase
transition from “Pre-Operational” to “Operational”.
Yes
Tab. 4.16 Subnode of the “Descriptions” node
As only the nodes from the table above are important for users to adapt the device description file, they
are described in detail in the following chapters. The remaining content of the device description file is
fixed and may not be changed by the user.
Important:
If changes are made to nodes and content other than the RxPDO, TxPDO and Mailbox
nodes in the device description file, error-free operation of the device can no longer be
guaranteed.
68
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
4.11.2
Receive PDO configuration in the RxPDO node
The RxPDO node is used to specify the mapping for the Receive PDOs and their assignment to a
channel of the Sync Manager. A typical entry in the device description file for the motor controller
CMMP-AS-...-M3 can be as follows:
<RxPDO Fixed=”1” Sm=”2”>
<Index>#x1600</Index>
<Name>Outputs</Name>
<Entry>
<Index>#x6040</Index>
<SubIndex>0</SubIndex>
<BitLen>16</BitLen>
<Name>Controlword</Name>
<DataType>UINT</DataType>
</Entry>
<Entry>
<Index>#x6060</Index>
<SubIndex>0</SubIndex>
<BitLen>8</BitLen>
<Name>Mode_Of_Operation</Name>
<DataType>USINT</DataType>
</Entry>
</RxPDO>
As the example above shows, the entire mapping of the Receive PDO is described in detail in such
entries. The first large block specifies the object number of the PDO and its type. This is followed by a
list of all CANopen objects which are to be mapped to the PDO.
The table below describes the individual entries in greater detail:
Node name
Significance
Adaptable
RxPDO
Fixed=“1”
Sm=“2”
This node describes the properties of the Receive PDO directly and
its assignment to the Sync Manager. The Fixed=“1” entry indicates
that the object mapping cannot be revised. The Sm=“2” entry
indicates that the PDO is to be allocated to Sync channel 2 of the
Sync Manager.
No
Index
This entry contains the object number of the PDO. The first Receive
PDO under object number 0x1600 is configured here.
Yes
Name
The name indicates that this PDO is a Receive PDO (outputs) or a
Transmit PDO (inputs).
This value must always be set to “Output” for a Receive PDO.
No
Entry
Each Entry node contains a CANopen object to be mapped to the
PDO. An Entry node contains the index and sub-index of the
CANopen object to be mapped, as well as their name and data type.
Yes
Tab. 4.17 Elements of the node “RxPDO”
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
69
4
EtherCAT interface
The sequence and mapping of the individual CANopen objects for the PDO correspond to the sequence
in which they are specified via the “Entry” entries in the device description file. The individual sub-items
of an “Entry” node are specified in the following table:
Node name
Significance
Adaptable
Index
This entry specifies the index of the CANopen object to be mapped
to the PDO.
Yes
Sub-index
This entry specifies the sub-index of the CANopen object to be
mapped.
Yes
BitLen
This entry specifies the size of the object to be mapped in bits.
This entry must always correspond to the type of the object to be
mapped.
Allowed: 8 Bit / 16 Bit / 32 Bit.
Yes
Name
This entry specifies the name of the object to be mapped as a string.
Yes
Data Type
This entry specifies the data type of the object to be mapped.
This can be taken from the respective description for the individual
CANopen objects.
Yes
Tab. 4.18 Elements of the node “Entry”
4.11.3
Transmit PDO configuration in the TxPDO node
The TxPDO node is used to specify the mapping for the Transmit PDOs and their assignment to a channel of the Sync Manager. The configuration corresponds to that of the Receive PDOs from section
4.11.2 “Receive PDO configuration in node RxPDO” with the difference that the node “Name” of the
PDO must be set to “Inputs”, not “Outputs”.
4.11.4
Initialisation commands via the “Mailbox” node
The “Mailbox” node in the device description file is used to describe CANopen objects via the master in
the slave during the initialisation phase. The commands and objects to be described there are specified
via special entries. These entries specify the phase transition at which this value is to be written. Furthermore, such entries contain the object number (index and sub-index) as well as the data value to be
written and comments.
A typical entry has the following form:
<InitCmd>
<Transition>PS</Transition>
<Index#x6060</Index>
<SubIndex>0</SubIndex>
<Data>03</Data>
<Comment>velocity mode</Comment>
</InitCmd>
In the example above, status transition PS from “Pre-Operational” to “Safe Operational” sets the operating mode in the CANopen object “modes_of_operation” to “Speed adjustment”. The individual subnodes have the following significance:
70
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
4
EtherCAT interface
Node name
Significance
Adaptable
Transition
Name of the status transition for which this command should be
executed
( chapter 4.6 “Communication Finite State Machine”)
Yes
Index
Index of the CANopen object to be written
Yes
Sub-index
Sub-index of the CANopen object to be written
Yes
Data
Data value to be written, as a hexadecimal value
Yes
Comment
Comment on this command
Yes
Tab. 4.19 Elements of the node “InitCmd”
Important:
In a device description file for the motor controller CMMP-AS-...-M3, some entries in this
section are already assigned. These entries must remain as they are and may not be
changed by the user.
4.12
Synchronisation (Distributed Clocks)
Time synchronisation is implemented via so-called “Distributed Clocks” in EtherCAT. Each EtherCAT
slave receives a real-time clock, which is synchronised in all slaves by the clock master during the initialisation phase. The clocks in all slaves are then adjusted during operation. The clock master is the
first slave in the network.
This provides a uniform time base in the entire system with which the individual slaves can synchronise.
The Sync telegrams provided for this purpose under CANopen are unnecessary under CoE.
The FPGA ESC20 used in the motor controller CMMP-AS-...-M3 supports Distributed Clocks. This facilitates extremely precise time synchronisation. The cycle time of the EtherCAT Frame must exactly match
the cycle time tp of the controller-internal interpolator. If necessary, the interpolator time must be adjusted via the object included in the device description file.
In the present implementation, synchronous transfer of PDO data and synchronisation of the controllerinternal PLL to the synchronous data framework of the EtherCAT Frame can be implemented even
without Distributed Clocks. For this purpose, the firmware uses the arrival of the EtherCAT Frame as a
time base.
The following restrictions apply:
– The master must be able to send the EtherCAT Frames with an extremely low jitter.
– The cycle time of the EtherCAT Frame must exactly match the cycle time tp of the controller-internal
interpolator.
– The Ethernet must be available exclusively for the EtherCAT Frame. It may be necessary to synchronise other telegrams to the grid, as they may not block the bus.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
71
5
5
Setting parameters
Setting parameters
Before the motor controller can carry out the desired task (torque regulation, speed adjustment,
positioning), numerous parameters of the motor controller must be adapted to the motor used and the
specific application. The sequence in the subsequent chapters should be followed thereby. After setting of the parameters, device control and use of the various operating modes are explained.
The display of the motor controller shows an “A” (Attention) if the motor controller has
not been parametrised appropriately yet. If the motor controller is supposed to be parametrised completely over CANopen, you must write over the object 6510h_C0h in order to
suppress this display ( page 144).
Besides the parameters described in depth here, the object directory of the motor controller contains
other parameters that have to be implemented in accordance with CANopen. But they normally do not
include any information that can be used in designing an application with a motor controller
CMMP-AS-...-M3/-M0 in a sensible way. If required, read about this in the specifications of CiA.
5.1
Loading and Saving Parameter Sets
Overview
The motor controller has three parameter sets:
– Current parameter set
This parameter set is located in the volatile memory (RAM) of the motor controller. It can be read
and written on as desired with the parametrisation software or via the CAN bus. When the motor
controller is switched on, the application parameter set is copied into the current parameter set.
– Default parameter set
This is the parameter set of the motor controller provided standard by the manufacturer and is
unchangeable. Through a write process into the CANopen object 1011h_01h
(restore_all_default_parameters), the default parameter set can be copied into the current
parameter set. This copying process is only possible when the output stage is switched off.
– Application parameter set
The current parameter set can be stored in the non-volatile flash memory. The storage process can
be triggered with a read access to the CANopen object 1010h_01h (save_all_parameters). When the
motor controller is switched on, the application parameter set is automatically copied into the current parameter set.
72
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
The following diagram illustrates the connections between the individual parameter sets.
Application
parameter set
Default parameter set
CANopen
object
1011
Switching
on of the
controller
CANopen
object
1010
Current parameter set
Fig. 5.1
Connections between parameter sets
Two different concepts are conceivable for administering parameter sets:
1. The parameter set is created with the parametrisation software and transmitted completely into the
individual controllers. With this procedure, only the objects accessible via CANopen have to be put
in via the CAN bus. A disadvantage here is that the parameterisation software is needed for each
start-up of a new machine or in case of a repair (controller exchange).
2. This variant is based on the fact that most application-specific parameter sets deviate from the
default parameter set in only a few parameters. This makes it possible for the current parameter set
to be newly constructed via the CAN bus each time the system is switched on. To do this, the higher
level controller first loads the default parameter set (call-up of the CANopen object 1011h_01h
(restore_all_default_parameters). After that, only the differing objects are transmitted. The entire
procedure lasts less than 1 second per controller. An advantage is that this procedure also works for
unparametrised controllers, so that the commissioning of new systems or replacement of individual
controllers is unproblematic, and parametrisation software is not required for this.
Warning
Before the output stage is switched on for the first time, make sure the controller really
includes the parameters you want.
An incorrectly parametrised controller can turn out of control and cause personal injury
or property damage.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
73
5
Setting parameters
Description of the Objects
Object 1011h: restore_default_parameters
Index
1011h
Name
restore_parameters
Object Code
ARRAY
No. of Elements
1
Data Type
UINT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
restore_all_default_parameters
rw
no
–
64616F6Ch (“load”)
1 (read access)
Signature
MSB
ASCII
Hex
Tab. 5.1
LSB
d
64h
a
61h
o
6Fh
l
6Ch
Example for ASCII text “load”
The object 1011h_01h (restore_all_default_parameters) makes it possible to put the current parameter
set into a defined state. To achieve this, the default parameter set is copied into the current parameter
set. The copying process is triggered by a write access to this object, whereby the string “load” must be
transferred as a record in hexadecimal form.
This command is only carried out with a deactivated output stage. Otherwise, the SDO error “Data
cannot be transmitted or stored, since the motor controller for this is not in the correct state” is generated. If the incorrect identifier is sent, the error “Data cannot be transmitted or stored” is generated. If
the object is accessed by reading, a 1 is returned to show that resetting to default values is supported.
The CAN communication parameters (node no., baud rate and operating mode) as well as numerous
angle encoder settings (some of which require a reset to become effective) remain unchanged.
Object 1010h: store_parameters
Index
1010h
Name
store_parameters
Object Code
ARRAY
No. of Elements
1
Data Type
UINT32
74
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
Signature
01h
save_all_parameters
rw
no
–
65766173h (“save”)
1
MSB
ASCII
Hex
Tab. 5.2
LSB
e
65h
v
76h
a
61h
s
73h
Example for ASCII text “save”
If the default parameter set should also be taken over into the application parameter set, the
object 1010h_01h (save_all_parameters) must also be called up.
If the object is written via an SDO, the default behaviour is that the SDO is answered immediately. The
answer thus does not reflect the end of the storage procedure. But this behaviour can be revised
through the object 6510h_F0h (compatibility_control).
5.2
Compatibility settings
Overview
In order to remain compatible with earlier CANopen implementations (e.g. also in other device families)
and still be able to execute changes and corrections compared to CiA 402 and CiA 301, the object compatibility_control was introduced. In the default parameter set, this object delivers 0, that is, compatibility with earlier versions. For new applications, we recommend setting the defined bits to permit as
much agreement as possible with the named standards.
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
6510_F0h
VAR
compatibility_control
UINT16
rw
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
75
5
Setting parameters
Object 6510h_F0h: compatibility_control
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
F0h
compatibility_control
UINT16
rw
no
–
0 … 1FFh, Table
0
Bit
Value
0
0001h homing_method_scheme
1
2
0002h Reserved
0004h homing_method_scheme
3
4
0008h Reserved
0010h response_after_save
5
6
0020h Reserved
0040h homing_to_zero
7
0080h device_control
8
0100h Reserved
76
Name
The bit has the same significance as bit 2 and is
available for compatibility reasons. If bit 2 is set, this bit
is also set and vice versa.
The bit is reserved. It must not be set.
If this bit is set, the homing methods 32 … 35 are
numbered in accordance with CiA 402; otherwise, the
numbering is compatible with earlier implementations.
( also chap. 7.2.3). If this bit is set, bit 0 is also set
and vice versa.
The bit is reserved. It must not be set.
If this bit is set, the answer to save_all_parameters is
not sent until saving is completed. This can take several
seconds, which might result in a time-out in the
controller. If the bit is deleted, answering takes place
immediately; but it should be considered that the
saving procedure has not been completed yet.
The bit is reserved. It must not be set.
Up to now, homing under CANopen consists of only two
phases (search travel and creep travel). The drive then
does not travel to the determined zero position (which
may have been shifted to the reference position found
through homing_offset, for example). If this bit is set,
this standard behaviour is revised and the drive
performs travel to zero after homing chap. 7.2
Operating mode reference travel (homing mode).
If this bit is set, bit 4 of the status word
(voltage_enabled) is output in accordance with CiA 402
v2.0. In addition, the status FAULT_REACTION_ACTIVE is
distinguishable from the FAULT status. see chapter 6
The bit is reserved. It must not be set.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.3
Conversion factors (factor group)
Overview
Motor controllers are used in a number of applications: as direct drive, with following gear, for linear
drive, etc. To permit easy parametrisation, the motor controller can be parametrised with the help of
the factor group so that the user can specify or read out all variables, such as speed, directly in the
desired units at the output (e.g. with a linear axis position value in millimetres and speeds in millimetres per second). The motor controller then uses the factor group to calculate the entries in its
internal units of measurement. For each physical variable, (position, speed and acceleration), there is a
conversion factor available to adapt the user units to the own application. The units set through the
factor group are generally designated position_units, speed_units or acceleration_units. The following
sketch illustrates the function of the factor group:
Factor group
User units
Internal controller
units
Item
±1
Position units
Position Factor
Increments (Inc.)
±1
position_polarity_flag
Speed
1 Revolution
4096 min
±1
Velocity units
Velocity factor
±1
velocity_polarity_flag
Acceleration
Acceleration units
Fig. 5.2
1 Revolution min
256 sec
Acceleration factor
Factor group
All parameters are stored in the motor controller in its internal units and only converted with the help of
the factor group when being written in or read out.
For that reason, the factor group should be set before the first parameter setting and not changed during parameter setting.
The factor group is set to the following units by default:
Size
Measurement file
Unit
Explanation
Length
Speed
Acceleration
Position units
Velocity units
Acceleration units
Increments
min-1
(min-1)/s
65536 increments per revolution
Revolutions per minute
Rotational speed increase per second
Tab. 5.3
Factor group default settings
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
77
5
Setting parameters
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
607Eh
6093h
6094h
6097h
VAR
ARRAY
ARRAY
ARRAY
polarity
position_factor
velocity_encoder_factor
acceleration_factor
UINT8
UINT32
UINT32
UINT32
rw
rw
rw
rw
Object 6093h: position_factor
The object position_factor converts all units of length of the application from position_units into the
internal unit increments (65536 increments correspond to 1 revolution). It consists of numerator and
denominator.
Motor with gearing
Axis
x in positioning unit
(e.g. “degrees”)
ROUT
RIN
Motor
Gear unit
Fig. 5.3
Calculating the positioning units
Index
6093h
Name
position_factor
Object Code
ARRAY
No. of Elements
2
Data Type
UINT32
78
x in positioning unit
(e.g. “mm”)
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
numerator
rw
yes
–
–
1
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
divisor
rw
yes
–
–
1
The following parameters are involved in the calculation formula of the position_factor:
Parameters
Description
gear_ratio
Gear ratio between revolutions at the drive-in (RIN) and revolutions at the driveout (ROUT)
Ratio between revolutions at the drive-out (ROUT) and movement in position_units (e.g. 1 R = 360 degrees)
feed_constant
Tab. 5.4
Position factor parameters
The position_factors is calculated using the following formula:
position_factor
=
numerator
divisor
=
Gear ratio * IncrementsRevolution
Feed constant
The position_factor must be written to the motor controller separated into numerators and denominators. This can make it necessary to bring the fraction up to whole integers by expanding it accordingly.
The position_factor must not be larger than 224
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
79
5
Setting parameters
EXAMPLE
First, the desired unit (column 1) and the desired number of decimal places (dp) have to be specified,
along with the application's gear ratio and its feed constant (if applicable). The feed constant is then
displayed in the desired positioning units (column 2). Finally all values can be entered into the
formula and the fraction can be calculated:
Position factor calculation sequence
Position units Feed constant Gear ratio
Degree,
1 DP
1/10 degree
1 ROUT =
1/1
3600 °
10
Formula
Result
shortened
1
* 65536 Inc
1
3600 °
10
=
65536 Inc
3600 °
10
num : 4096
div : 225
(°/10)
Fig. 5.4
Position factor calculation sequence
Examples of calculating the position factor
Position
Feed
Gear
units1)
constant2)
ratio3)
Formula4)
1 ROUT =
1
* 65536 Inc
1
Increments,
0 DP
Inc.
Degree,
1 DP
1/10 degree
1/1
65536 Ink
1 ROUT =
65536 Inc
1/1
3600 °
10
1
* 65536 Inc
1
3600 °
10
Result
shortened
num : 1
div : 1
=
1 Inc
1 Inc
=
65536 Inc
3600 °
num : 4096
div : 225
65536 Inc
num : 16384
div :
25
10
(°/10)
Rev.,
2 DP
1/100 Rev.
1 ROUT =
2/3
(R/100)
mm,
1 DP
1/10 mm
(mm/10)
1/1
R
100
100
1 ROUT =
mm
631.5
10
4/5
1
* 65536 Inc
1
1
100
100
2
* 65536 Inc
3
1
100
100
4
* 65536 Inc
5
mm
631.5
10
=
=
=
100
1
100
131072 Inc
300
1
100
2621440 Inc
mm
31575
10
num : 32768
div :
75
num: 524288
div:
6315
1)
Desired unit at the drive-out
2)
Positioning units per revolution at the drive-out (ROUT). Feed constant of the drive * 10-DP (points after the decimal)
3)
Revolutions at the drive in per revolutions at the drive-out (RIN per ROUT)
4)
Insert values into equation.
Tab. 5.5
80
Examples of calculating the position factor
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
6094h: velocity_encoder_factor
The object velocity_encoder_factor converts all speed values of the application from speed_units into
the internal unit revolutions per 4096 minutes. It consists of numerator and denominator.
Index
6094h
Name
velocity_encoder_factor
Object Code
ARRAY
No. of Elements
2
Data Type
UINT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
numerator
rw
yes
–
–
1000h
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
divisor
rw
yes
–
–
1
Calculation of the velocity_encoder_factor is in principle made up of two parts: a conversion factor
from internal length units into position_units, and a conversion factor from internal time units into userdefined time units (e.g. from seconds into minutes). The first part corresponds to the calculation of the
position_factor; for the second part, an additional factor is added to the calculation:
Parameters
Description
time_factor_v
The ratio between the internal time unit and the user-defined time unit.
(e.g. 1 min = 1/4096 4096 min)
Gear ratio between revolutions at the drive-in (RIN) and revolutions at the
drive-out (ROUT)
Ratio between revolutions at the drive-out (ROUT) and movement in
position_units (e.g. 1 R = 360 degrees)
gear_ratio
feed_constant
Tab. 5.6
Speed factor parameters
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
81
5
Setting parameters
The calculation of the velocity_encoder_factor uses the following equation:
velocity_encoder_factor
numerator
divisor
=
=
gear_ratio * time_factor_v
feedconstant
The velocity_encoder_factor must not be greater than 224
Like the position_factor, the velocity_encoder_factor also has to be written to the motor controller
separated into numerators and denominators. This can make it necessary to bring the fraction up to
whole integers by expanding it accordingly.
EXAMPLE
First, the desired unit (column 1) and the desired number of decimal places (dp) have to be specified,
along with the application's gear ratio and its feed constant (if applicable). The feed constant is then
displayed in the desired positioning units (column 2). Then the desired time unit is converted into the
time unit of the motor controller (column 3).
Finally all values can be entered into the formula and the fraction can be calculated:
Velocity factor calculation sequence
Speed
Feed
Time Constant
units
const.
mm/s,
1 DP
1/10 mm/s
( mm/10 s )
Fig. 5.5
82
63.15
mm
R
⇒
1 ROUT =
mm
631.5
10
1
1 s
Gear Formula
=
60 1
min
=
60 * 4096
1
4096 min
4/5
4
*
5
Result
shortened
1
4096 min
1
1
1966080
1s
4096 min num: 131072
=
mm
mm
div:
421
631.5
6315
10
10s
60 * 4096
Velocity factor calculation sequence
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Examples of calculating the speed factor
Speed
Feed
Time Constant3)
1)
2)
units
const.
1 ROUT =
R/min,
0 DP
R/min
1 ROUT
1
1
min
4096
Gear Formula5)
=
1
4096 min
1/1
1
*
1
1
4096 min
1
1
min
4096
1
1 ROUT =
R/min,
R
2 DP
100
100
1/100 R/min
( R/100 min )
°/s,
1 DP
1/10 °/s
( °/10 s )
1 ROUT =
mm/s,
1 DP
1/10 mm/s
( mm/10 s )
63.15
3600 °
10
mm
R
⇒
1 ROUT =
mm
631.5
10
1
1
min
=
4096
1
4096 min
1
1 s
=
60 1
min
=
60 * 4096
1
4096 min
1
1 s
2/3
1/1
=
60 1
min
=
60 * 4096
1
4096 min
Result
shortened
4)
4/5
=
1
4096 min
1
1
min
4096
1
4096 min
1
1
1
8192
min
4096 min
=
1
1
300
100
100
100 min
1
1
60 * 4096
4096 min
1
*
1
1
1
245760
1s
4096 min
=
3600 °
3600 °
10
10 s
1
1
60 * 4096
4
4096 min
*
1
5
1
1966080
1s
4096 min
=
mm
mm
631.5
6315
10 s
10
1
2
*
3
4096
1)
Desired unit at the drive-out
2)
Positioning units per revolution at the drive-out (ROUT). Feed constant of the drive * 10-DP (points after the decimal)
3)
Time factor_v: desired time unit per internal time unit
4)
Gear factor: RIN per ROUT
5)
Insert values into equation.
Tab. 5.7
num: 4096
div:
1
num: 2048
div:
75
num: 1024
div:
15
num: 131072
div:
421
Examples of calculating the speed factor
6097h: acceleration_factor
The object acceleration_factor converts all acceleration values of the application from
acceleration_units into the internal unit Revolutions per minute per 256 seconds. It consists of
numerator and denominator.
Index
6097h
Name
acceleration_factor
Object Code
ARRAY
No. of Elements
2
Data Type
UINT32
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
83
5
Setting parameters
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
numerator
rw
yes
–
–
100h
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
divisor
rw
yes
–
–
1
Calculation of the acceleration_factor is also made up of two parts: a conversion factor from internal
units of length into position_units, and a conversion factor from internal time units squared into the
user-defined time units squared (e.g. from seconds2 into minutes2). The first part corresponds to the
calculation of the position_factor; for the second part, an additional factor is added:
Parameters
Description
time_factor_a
The ratio between the internal time unit squared and the user-defined time unit
squared.
(e.g. 1 min2 = 1 min x 1 min = 60 s x 1 min = 60/256 256 min x s).
Gear ratio between revolutions at the input shaft (RIN) and revolutions at the
output shaft (ROUT).
Ratio between revolutions at the drive-out (ROUT) and movement in
position_units (e.g. 1 R = 360 degrees)
gear_ratio
feed_constant
Tab. 5.8
Acceleration factor parameter
Calculation of the acceleration_factor uses the following equation:
acceleration_factor
=
nummerator
divisor
=
gear_ratio * time_factor_a
feed_constant
The acceleration_factor is also written into the motor controller separated by numerator and denominator, so it may have to be expanded.
84
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
EXAMPLE
First, the desired unit (column 1) and the desired number of decimal places (dp) have to be specified,
along with the application's gear ratio and its feed constant (if applicable). The feed constant is then
displayed in the desired positioning units (column 2). Then the desired time unit is converted into the
time unit of the motor controller (column 3). Finally all values can be entered into the formula and the
fraction can be calculated:
Process of calculating the acceleration factor
Units of
Feed
Time Constant
Gear Formula
acceleration const.
mm/s²,
1 DP
1/10 mm/s²
( mm/10 s² )
mm
R
⇒
1 ROUT =
mm
631.5
10
63.15
1
1
s2
60
=
1
min * s
60 * 256
=
4/5
4
*
5
Result
shortened
1
256 min * s
1
1
1
122880 min
s2
256 s
=
mm
mm
631, 5
6315
10
10s 2
60 * 256
1
min
256 * s
Examples of calculating the acceleration factor
Units of
Feed
Time Constant3) Gear Formula5)
4)
acceleration1) const.2)
R/min,
0 DP
R/min s
1 ROUT =
°/s²,
1 DP
1 ROUT =
1 ROUT
1
min * s
256
3600 °
10
1/10 °/s²
( °/10 s² )
R/min²,
2 DP
1/100
²
R/
min
R
( /100 min² )
1
1 ROUT =
R
100
100
=
1
min
1/1
256 * s
1
s2
=
1
60
min * s
60 * 256
=
1/1
1
min
256 * s
1
1
min2
=
2/3
1
1 min
60 s
2
*
3
256
256
=
631.5
mm
10
1
s2
60
1
100
1
=
1
min * s
60 * 256
1
256 min * s
1
60
min 2
100
256
60 256 * s
1
=
4/5
Result
shortened
1
256 min s
1
1
min
1
256
min * s
256* s
=
1
1
1
1 min
s
1
60 * 256
256 min * s
1
1
*
1
1
1
15360 min
2
s
256 * s
=
3600 °
3600 °
10
10 s 2
1
1
*
1
1
min
mm
mm/s²,
63.15
R
1 DP
⇒
²
mm
1
R
1/10 /s
OUT =
( mm/10 s² )
1
num: 8192
div: 421
4
*
5
1
min
256 s
=
1
18000
100 min 2
512
1
256 min * s
1
1
1
122880 min
2
s
256 s
=
mm
mm
631,5
6315
10
10 s 2
1
num: 256
div:
1
num: 64
div: 15
num: 32
div: 1125
60 * 256
1
min
256 * s
num: 8192
div: 421
1) Desired unit at the drive-out
2) Positioning units per revolution at the drive-out (ROUT). Feed constant of the drive * 10-DP (points after the decimal)
3) Time factor_v: desired time unit per internal time unit
4) Gear factor: RIN per ROUT
5) Insert values into equation.
Tab. 5.9
Examples of calculating the acceleration factor
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
85
5
Setting parameters
Object 607Eh: polarity
The algebraic sign of the position and speed values of the motor controller can be set with the corresponding polarity_flag. This can serve to invert the motor's direction of rotation with the same setpoint
values.
In most applications, it makes sense to set the position_polarity_flag and the velocity_polarity_flag to
the same value.
Setting of the polarity_flag influences only parameters when reading and writing. Parameters already
present in the motor controller are not changed.
Index
607Eh
Name
polarity
Object Code
VAR
Data Type
UINT8
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
40h, 80h, C0h
0
Bit
Value
Name
Meaning
6
40h
velocity_polarity_flag
7
80h
position_polarity_flag
0: multiply by 1 (default)
1: multiply by -1 (inverse)
0: multiply by 1 (default)
1: multiply by -1 (inverse)
86
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.4
Output stage parameter
Overview
The mains voltage is fed in to the output stage via a precharging circuit. When the power supply is
switched on, the starting current is limited and charging is monitored. After precharging of the intermediate circuit, the charging circuit is bridged. This status is a requirement for issuing controller enable.
The rectified mains voltage is smoothed with the condensers of the intermediate circuit. From the intermediate circuit, the motor is powered via the IGBTs. The output stage contains a series of safety functions, which can be partially parametrised:
– Controller enable logic (software and hardware enable)
– Overcurrent monitoring
– Overvoltage / undervoltage monitoring of the intermediate circuit
– Power partial monitoring
Description of the objects
Index
Object
Name
6510h
RECORD
Drive_data
Type
Attr.
Object 6510h_10h: enable_logic
For the output stage of the motor controller to be activated, the digital inputs output stage enable and
controller enable must be set: The output stage enable has a direct effect on the control signals of the
power transistors and would also be able to interrupt them in case of a defective microprocessor. The
removal of the output stage enable with running motor thus ensures that the motor runs out unbraked
or is only stopped by the holding brake, if on hand. The controller enable is processed by the microcontroller of the motor controller. Depending on the operating mode, the motor controller reacts differently
after removal of this signal:
– Positioning mode and speed-regulated mode
The motor is braked with a defined brake ramp after removal of the signal. The output stage is only
switched off when the motor speed lies below 10 min-1 and the holding brake, if on hand, has activated.
– Torque-controlled mode
The output stage is switched off immediately after removal of the signal. At the same time, a holding brake, if on hand, is activated. And so the motor runs out unbraked or is stopped only by the
holding brake, if on hand.
Warning
Dangerous voltage!
Both signals do not guarantee that the motor is voltage-free.
When operating the motor controller over the CAN bus, the two digital inputs output stage enable and
controller enable can be placed together onto 24 V, and the enable can be controlled via the CAN bus.
For this, the object 6510h_10h (enable_logic) must be set to two. For safety reasons, this takes place
automatically with activation of CANopen (also after a reset of the motor controller).
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
87
5
Setting parameters
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
10h
enable_logic
UINT16
rw
no
–
0…2
0
Value
Meaning
0
1
2
Digital inputs output stage enable + controller enable
Digital inputs output stage enable + controller enable + parametrisation interface
Digital inputs output stage enable + controller enable + CAN
Object 6510h_30h: pwm_frequency
The switching losses of the output stage are proportional to the switching frequency of the power
transistors. With the devices of the CMMP family, cutting the normal pulse-width modulation frequency
in half can produce more output. But the current ripple factor caused by the output stage rises.
Reversing is only possible when the output stage is switched off.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
30h
pwm_frequency
UINT16
rw
no
–
0, 1
0
Value
Meaning
0
1
Standard output stage frequency
Half output stage frequency
88
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_3Ah: enable_enhanced_modulation
The extended sine modulation can be activated with the object enable_enhanced_modulation. It permits better utilization of the intermediate circuit voltage and thus about 14 %-higher speeds. A disadvantage in certain applications is that the control behaviour and smooth running of the motor can be
slightly worse at very low speeds. write access is possible only when the output stage is switchedoff. To
accept the change, the parameter set must be backed up and a reset performed.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
3Ah
enable_enhanced_modulation
UINT16
rw
no
–
0, 1
0
Value
Meaning
0
1
Extended sine modulation OFF
Extended sine modulation ON
Activation of the extended sine modulation is only effective after a reset. As a result, the
parameter set must be saved (save_all_parameters) and then a reset performed.
Object 6510h_31h: power_stage_temperature
The temperature of the output stage can be read via the object power_stage_temperature. If the temperature specified in object 6510h_32h (max_power_stage_temperature) is exceeded, the output
stage shuts off and an error message is output.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
31h
power_stage_temperature
INT16
ro
yes
°C
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
89
5
Setting parameters
Object 6510h_32h: max_power_stage_temperature
The temperature of the output stage can be read via the object 6510h_31h
(power_stage_temperature). If the temperature specified in the object max_power_stage_temperature
is exceeded, the output stage shuts off and an error message is output.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
32h
max_power_stage_temperature
INT16
ro
no
°C
100
Device-dependent
Device Type
Value
CMMP-AS-C2-3A-M3/-M0
CMMP-AS-C5-3A-M3/-M0
CMMP-AS-C5-11A-P3-M3/-M0
CMMP-AS-C10-11A-P3-M3/-M0
100 °C
80 °C
80 °C
80 °C
Object 6510h_33h: nominal_dc_link_circuit_voltage
Through the object nominal_dc_link_circuit_voltage, the nominal device voltage can be read in millivolt.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
33h
nominal_dc_link_circuit_voltage
UINT32
ro
no
mV
–
Device-dependent
Device Type
Value
CMMP-AS-C2-3A-M3/-M0
CMMP-AS-C5-3A-M3/-M0
CMMP-AS-C5-11A-P3-M3/-M0
CMMP-AS-C10-11A-P3-M3/-M0
360000
360000
560000
560000
90
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_34h: actual_dc_link_circuit_voltage
Via the object actual_dc_link_circuit_voltage, the current voltage of the intermediate circuit can be
read in millivolts.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
34h
actual_dc_link_circuit_voltage
UINT32
ro
yes
mV
–
–
Object 6510h_35h: max_dc_link_circuit_voltage
The object max_dc_link_circuit_voltage specifies at which intermediate circuit voltage or higher the
output stage is switched off immediately for safety reasons and an error message is sent.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
35h
max_dc_link_circuit_voltage
UINT32
ro
no
mV
–
Device-dependent
Device Type
Value
CMMP-AS-C2-3A-M3/-M0
CMMP-AS-C5-3A-M3/-M0
CMMP-AS-C5-11A-P3-M3/-M0
CMMP-AS-C10-11A-P3-M3/-M0
460000
460000
800000
800000
Object 6510h_36h: min_dc_link_circuit_voltage
The motor controller has an undervoltage monitor. This can be activated through the object 6510h_37h
(enable_dc_link_undervoltage_error). The object 6510h_36h (min_dc_link_circuit_voltage) specifies
up to which lower intermediate circuit voltage the motor controller should work. Below this voltage, the
error E 02-0 is triggered if it was activated with the subsequent object.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
36h
min_dc_link_circuit_voltage
UINT32
rw
no
mV
0 … 1000000
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
91
5
Setting parameters
Object 6510h_37h: enable_dc_link_undervoltage_error
The undervoltage monitor can be activated with the object enable_dc_link_undervoltage_error. Specify
in the object 6510h_36h (min_dc_link_circuit_voltage) up to which lower intermediate circuit voltage
the motor controller should work.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
37h
enable_dc_link_undervoltage_error
UINT16
rw
no
–
0, 1
0
Value
Meaning
0
1
Undervoltage error OFF (reaction WARNING)
Undervoltage error ON (reaction CONTROLLER ENABLE OFF)
The error 02-0 is activated through modification of the error response. Reactions causing the drive to
stop are returned as ON, all others as OFF. When overwriting with 0, the error response WARNING is
set; when overwriting with 1, the error response CONTROLLER ENABLE OFF.
also 5.18, Error Management.
Object 6510h_40h: nominal_current
The device nominal current can be read with the object nominal_current. It is simultaneously the upper
limit value that can be written into the object 6075h (motor_rated_current).
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
40h
nominal_current
UINT32
ro
no
mA
–
Device-dependent
Device Type
Value
CMMP-AS-C2-3A-M3/-M0
CMMP-AS-C5-3A-M3/-M0
CMMP-AS-C5-11A-P3-M3/-M0
CMMP-AS-C10-11A-P3-M3/-M0
2500
5000
5000
10000
Other values may be displayed due to a power derating, dependent on the controller cycle
time and the output stage clock frequency.
92
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_41h: peak_current
The device peak current can be read with the object peak_current. It is simultaneously the upper limit
value, which can be written into the object 6073h (max_current).
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
41h
peak_current
UINT32
ro
no
mA
–
Device-dependent
Device Type
Value
CMMP-AS-C2-3A-M3/-M0
CMMP-AS-C5-3A-M3/-M0
CMMP-AS-C5-11A-P3-M3/-M0
CMMP-AS-C10-11A-P3-M3/-M0
10000
20000
20000
40000
The values apply for a current regulator cycle time of 125 μs.
Other values may be displayed due to a power derating, dependent on the controller cycle
time and the output stage clock frequency.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
93
5
Setting parameters
5.5
Current Regulator and Motor Adjustment
Caution
Incorrect settings of the current regulator parameters and current limits can destroy the
motor and, possibly, also the motor controller within a very short time!
Overview
The parameter set of the motor controller must be adapted for the connected motor and the set of
cables used. Affected are the following parameters:
Parameters
Dependencies
Nominal current
Overload capacity
Number of poles
Current regulator
Direction of
rotation
Offset Angle
Dependent on the motor
Dependent on the motor
Dependent on the motor
Dependent on the motor
Dependent on the motor and on the phase sequence in the motor and angle
transmitter cable
Dependent on the motor and on the phase sequence in the motor and angle
transmitter cable
Please observe that the direction of rotation and offset angle also depend on the cable set used. The
parameter sets therefore work only with identical cabling.
Caution
If the phase sequence is distorted in the motor or angle encoder cable, the result may
be positive feedback, so the speed in the motor cannot be regulated. The motor can
turn uncontrollably!
Description of the Objects
Index
Object
Name
Type
Attr.
6075h
6073h
604Dh
6410h
60F6h
VAR
VAR
VAR
RECORD
RECORD
motor_rated_current
max_current
pole_number
motor_data
torque_control_parameters
UINT32
UINT16
UINT8
rw
rw
rw
rw
rw
Affected objects from other chapters
Index
Object
Name
2415h
RECORD
current_limitation
94
Type Chapter
5.8 Setpoint value limitation
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6075h: motor_rated_current
This value can be taken from the motor rating plate and is entered in milliamperes. The effective value
(RMS) is always assumed. No current can be specified above the motor controller nominal current
(6510h_40h: nominal_current).
Index
6075h
Name
motor_rated_current
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
mA
0 … nominal_current
296
If the object 6075h (motor_rated_current) is written over with a new value, the object
6073h (max_current) must always be parametrised again.
Object 6073h: max_current
As a rule, servo motors may be overloaded for a certain time period. With this object, the maximum
permissible motor current is set as a factor. It refers to the nominal motor current (object 6075h: motor_rated_current) and is set in thousandths. The range of values is limited upward by the maximum
controller current (object 6510h_41h: peak_current). Many motors may be overloaded briefly by a
factor of 4. In this case, the value 4000 is written into this object.
The object 6073h (max_current) may only be written over if the object 6075h
(motor_rated_current) was previously overwritten.
Index
6073h
Name
max_current
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
per thousands of rated current
–
2023
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
95
5
Setting parameters
Object 604Dh: pole_number
The number of poles of the motor can be found in the motor data sheet or the parametrisation software. The number of poles is always even. The number of pole pairs is often specified instead of the
number of pins. The number of poles then equals twice the number of pole pairs.
This object is not revised through restore_default_parameters.
Index
604Dh
Name
pole_number
Object Code
VAR
Data Type
UINT8
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
2 … 254
4 (after INIT!)
Object 6410h_03h: iit_time_motor
As a rule, servo motors may be overloaded for a certain time period. This object specifies how long
current can flow through the connected motor with the current specified in the object 6073h
(max_current). After expiration of the I2t time, to protect the motor the current is automatically limited
to the value set in object 6075h (motor_rated_current). The standard setting is two seconds and is valid
for most motors.
Index
6410h
Name
motor_data
Object Code
RECORD
No. of Elements
5
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
iit_time_motor
UINT16
rw
no
ms
0 … 100000
2000
96
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6410h_04h: iit_ratio_motor
Through the object iit_ratio_motor, the current extent of utilisation of the I2t limitation can be read in
thousandths.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
iit_ratio_motor
UINT16
ro
no
thousandths
–
–
Object 6510h_38h: iit_error_enable
The object iit_error_enable establishes how the motor controller behaves when the I2t limitation occurs. Either it is only displayed in the status word, or error E 31-0 is triggered.
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
38h
iit_error_enable
UINT16
rw
no
–
0, 1
0
Value
Meaning
0
1
I2t error OFF
I2t error ON
(Priority WARNING)
(Priority CONTROLLER ENABLE OFF)
The error E 31-0 is activated by changing the error response. Reactions causing the drive to stop are
returned as ON, all others as OFF. When overwriting with 0, the error response WARNING is set; when
overwriting with 1, the error response CONTROLLER ENABLE OFF. chapter 5.18, Error Management.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
97
5
Setting parameters
Object 6410h_10h: phase_order
In the phase sequence (phase_order), twisting between motor cable and angle encoder cable are taken
into account. It can be taken from the parameterisation software.
10h
phase_order
INT16
rw
yes
–
0, 1
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Value
Meaning
0
1
Right
Left-hand
Object 6410h_11h: encoder_offset_angle
The servo motors used have permanent magnets on the rotor. These generate a magnetic field, whose
orientation toward the stator depends on the rotor position. For electronic commutation, the motor
controller must always set the electromagnetic field of the stator in the correct angle to this permanent
magnet field. To do this, it constantly determines the rotor position with an angle encoder (resolver,
etc.).
The orientation of the angle encoder to the permanent magnetic field must be entered in the object
resolver_offset_angle. This angle can be determined with the parametrisation software. The angle determined with the parametrisation software lies in the range of ±180°. It must be calculated as follows:
encoder_offset_angle
= Offset_angle_of_the_angle_encoder *
32767
180°
This object is not revised through restore_default_parameters.
Index
6410h
Name
motor_data
Object Code
RECORD
No. of Elements
5
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
11h
encoder_offset_angle
INT16
rw
yes
…
-32767 … 32767
E000h (-45°) (according to factory setting)
98
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6410h_14h: motor_temperature_sensor_polarity
This object is used to determine whether a normally closed contact or a normally open contact is used
as a digital motor temperature sensor.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
14h
motor_temperature_sensor_polarity
INT16
rw
yes
–
0, 1
0
Value
Meaning
0
1
N/C contact
N/O contact
Object 6510h_2Eh: motor_temperature
With this object, the current motor temperature can be read if an analogue temperature sensor is connected. Otherwise, the object is undefined.
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
2Eh
motor_temperature
INT16
ro
yes
°C
–
–
Object 6510h_2Fh: max_motor_temperature
If the motor temperature defined in this object is exceeded, a reaction takes place in accordance with
error management (error 03-0, over-temperature motor analogue). If a reaction that stops the drive is
parametrised, an emergency message is sent.
For parametrisation of error management chap. 5.18, Error Management.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
99
5
Setting parameters
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
2Fh
max_motor_temperature
INT16
rw
no
°C
20 … 300
100
Object 60F6h: torque_control_parameters
The data of the current controller must be taken from the parametrisation software. The following calculations must be observed:
Amplification of the current controller must be multiplied by 256. With an amplification of 1.5 in the
Current Regulator menu of the parametrisation software, the value 384 = 180h must be written in the
object torque_control_gain.
The current controller time constant is specified in the parametrisation software in milliseconds. To
transfer this time constant into the object torque_control_time, it must previously be converted into
microseconds. With a specified time of 0.6 milliseconds, the corresponding value 600 is entered in the
object torque_control_time.
Index
60F6h
Name
torque_control_parameters
Object Code
RECORD
No. of Elements
2
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
torque_control_gain
UINT16
rw
no
256 = “1”
0 … 32*256
3*256 (768)
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
torque_control_time
UINT16
rw
no
μs
104 … 64401
1020
100
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.6
Speed Control
Overview
The parameter set of the motor controller must be adapted for the application. In particular, the amplification is strongly dependent on dimensions that may be connected to the motor. The data must be
optimally determined during commissioning of the system with the help of the parametrisation software.
Caution
Incorrect setting of the speed regulator parameters can result in strong vibrations and
possibly destroy parts of the system!
Description of the objects
Index
Object
Name
Type
Attr.
60F9h
2073h
RECORD
VAR
velocity_control_parameters
velocity_display_filter_time
UINT32
rw
rw
Object 60F9h: velocity_control_parameters
The data of the speed controller must be taken from the parametrisation software. The following calculations must be observed:
Amplification of the speed regulator must be multiplied by 256.
With an amplification of 1.5 in the “Speed Regulator” menu of the parametrisation software, the
value 384 = 180h must be written in the object velocity_control_gain.
The speed regulator time constant is specified in the parametrisation software in milliseconds. To transfer this time constant into the velocity_control_time object, it must previously be converted into microseconds. With a specified time of 2.0 milliseconds, the corresponding value 2000 is entered in the object velocity_control_time.
Index
60F9h
Name
velocity_control_parameter_set
Object Code
RECORD
No. of Elements
3
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
velocity_control_gain
UINT16
rw
no
256 = Gain 1
20 … 64*256 (16384)
256
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
101
5
Setting parameters
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
velocity_control_time
UINT16
rw
no
μs
1 … 32000
2000
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
velocity_control_filter_time
UINT16
rw
no
μs
1 … 32000
400
Object 2073h: velocity_display_filter_time
The filter time constant of the display speed actual value filter can be set via the object
velocity_display_filter_time.
Index
2073h
Name
velocity_display_filter_time
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
no
μs
1000 … 50000
20000
Please observe that the object velocity_actual_value_filtered is used for spinning protection. With very large filter times, a spinning error is detected only with a corresponding
delay.
102
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.7
Position Controller (Position Control Function)
Overview
This chapter describes all parameters required for the position controller. The position setpoint value
(position_demand_value) of the curve generator is applied to the input of the position controller. In
addition, the actual position value (position_actual_value) is added from the angle encoder (resolver,
increment generator, etc.). The actions of the position controller can be influenced by parameters. It is
possible to limit the output variable (control_effort) to keep the position control circuit stable. The
output variable is supplied to the speed regulator as the speed setpoint value. All input and output
variables of the position controller are converted in the Factor Group from the application-specific units
into the respective internal units of the regulator.
The following subfunctions are defined in this chapter:
1. Contouring error (Following_Error)
The deviation of the actual position value (position_actual_ value) from the position setpoint value
(position_demand_value) is designated as contouring error. If this contouring error is greater than
specified in the contouring error window (following_error_window) for a specific time period, bit 13
following_error is set in the object statusword. The permissible time period can be specified via the
object following_error_time_out.
Following_error_window (6065h)
0
Following_error_window (6065h)
Following_error_time_out (6066h)
Statusword, bit 13 (6041h)
Fig. 5.6
Contouring error – functional overview
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
103
5
Setting parameters
2. Position reached (position_reached)
This function offers the possibility of defining a position window around the target position (target_position). If the actual position of the drive is located within this range for a specific time – the
position_window_time – the related bit 10 (target_reached) is set in the statusword.
Position_window (6067h)
0
Position_window (6067h)
Position_window_time (6068h)
Status word, bit 10 (6041h)
Fig. 5.7
Position reached – functional overview
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
202Dh
2030h
6062h
6063h
6064h
6065h
6066h
6067h
6068h
607Bh
60F4h
60FAh
60FBh
6510h_20h
6510h_22h
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
ARRAY
VAR
VAR
RECORD
VAR
VAR
position_demand_sync_value
set_position_absolute
position_demand_value
position_actual_value_s1)
position_actual_value
following_error_window
following_error_time_out
position_window
position_window_time
position_range_limit
following_error_actual_value
control_effort
position_control_parameter_set
position_range_limit_enable
position_error_switch_off_limit
INT32
INT32
INT32
INT32
INT32
UINT32
UINT16
UINT32
UINT16
INT32
INT32
INT32
ro
wo
ro
ro
ro
rw
rw
rw
rw
rw
ro
ro
rw
rw
rw
1)
UINT16
UINT32
In increments
104
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Affected objects from other chapters
Index
Object
Name
Type
Chapter
607Ah
607Ch
607Dh
607Eh
6093h
6094h
6096h
6040h
6041h
VAR
VAR
VAR
VAR
VAR
ARRAY
ARRAY
VAR
VAR
target_position
home_offset
software_position_limit
polarity
position_factor
velocity_encoder_factor
acceleration_factor
controlword
statusword
INT32
INT32
INT32
UINT8
UINT32
UINT32
UINT32
INT16
UINT16
7.3 Positioning operating mode
7.2 Homing run
7.3 Positioning operating mode
5.3 Conversion factors
5.3 Conversion factors
5.3 Conversion factors
5.3 Conversion factors
6.1.3 Control word (controlword)
6.1.5 Status words (statuswords)
Object 60FBh: position_control_parameter_set
The parameter set of the motor controller must be adapted for the application. The data of the position
controller must be optimally determined during commissioning using the parametrisation software.
Caution
Incorrect setting of the position regulator parameters can result in strong vibrations and
possibly destroy parts of the system!
The position controller compares the target location with the actual location and, from the difference,
creates a correction speed (object 60FAh: control_effort), which is fed to the speed regulator, taking
into account the gain and possibly the integrator.
The position controller is relatively slow, compared to the current and speed regulator. Therefore, the
controller works internally with activation, so the stabilisation work for the position controller is minimised and the controller can rapidly stabilise.
A proportional link normally suffices as position controller. Amplification of the position controller must
be multiplied by 256. With an amplification of 1.5 in the “Current Regulator” menu of the parametrisation software, the value 384 must be written in the object position_control_gain.
The position controller normally does not need an integrator. Then the value zero must be written into
the object position_control_time . Otherwise, the time constant of the position controller must be converted into microseconds. With a time of 4.0 milliseconds, the corresponding value 4000 is entered in
the object position_control_time.
Since the position controller already converts the smallest position deviations into appreciable correction speeds, in the case of a brief disturbance (e.g. brief jamming of the system) it would lead to very
major stabilisation processes with very large correction speeds. This can be avoided if the output of the
position controller is sensibly limited via the object position_control_v_max (e.g. 500 min-1).
The size of a position deviation up to which the position controller will not intervene (dead area) can be
defined with the object position_error_tolerance_window. This can be used for stabilisation, such as
when there is play in the system.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
105
5
Setting parameters
Index
60FBh
Name
position_control_parameter_set
Object Code
RECORD
No. of Elements
4
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
position_control_gain
UINT16
rw
no
256 = “1”
0 … 64*256 (16384)
102
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
position_control_time
UINT16
ro
no
μs
0
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
position_control_v_max
UINT32
rw
no
speed units
0 … 131072 min-1
500 min-1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
05h
position_error_tolerance_window
UINT32
rw
no
position units
1 … 65536 (1 R)
2 (1/32768 R)
106
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6062h: position_demand_value
The current position setpoint value can be read out via this object. The curve generator feeds this into
the position controller.
Index
6062h
Name
position_demand_value
Object Code
VAR
No. of Elements
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
position units
–
–
Object 202Dh: position_demand_sync_value
The target position of the synchronisation encoder can be read out via this object. This is defined
through the object 2022h synchronization_encoder_select ( chap. 5.11). This object is specified in
user-defined increments.
Index
202Dh
Name
position_demand_sync_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
no
position units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
107
5
Setting parameters
Object 6063h: position_actual_value_s (increments)
The actual position can be read out via this object. The angle encoder feeds this to the position controller. This object is specified in increments.
Index
6063h
Name
position_actual_value_s
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
increments
–
–
Object 6064h: position_actual_value (user-defined units)
The actual position can be read out via this object. The angle encoder feeds this to the position controller. This object is specified in user-defined increments.
Index
6064h
Name
position_actual_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
position units
–
–
Object 6065h: following_error_window
The object following_error_window (contouring error window) defines a symmetrical range around the
position setpoint value (position_demand_value) . If the actual position value (position_actual_value)
is outside the contouring error window (following_ error_window), a contouring error occurs and bit 13
is set in the object status word. The following can cause a contouring error:
– the drive is blocked
– the positioning speed is too high
– the acceleration values are too large
– the object following_error_window has too small a value
– the position controller is not correctly parametrised
108
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Index
6065h
Name
following_error_window
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
position units
–
9101 (9101/65536 R = 50°)
Object 6066h: following_error_time_out
If a contouring error longer than defined in this object occurs, the related bit 13 following_error is set in
the statusword.
Index
6066h
Name
following_error_time_out
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
ms
0 … 27314
0
Object 60F4h: following_error_actual_value
The current contouring error can be read out via this object. This object is specified in user-defined
increments.
Index
60F4h
Name
following_error_actual_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
position units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
109
5
Setting parameters
Object 60FAh: control_effort
The output variable of the position controller can be read via this object. This value is internally fed to
the speed regulator as setpoint value.
Index
60FAh
Name
control_effort
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
speed units
–
–
Object 6067h: position_window
With the object position_window, a symmetrical area is defined around the target position
(target_position). If the actual position value (position_actual_value) lies within this area for a certain
time, the target position (target_position) is considered reached.
Index
6067h
Name
position_window
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
position units
–
1820 (1820/65536 R = 10°)
110
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6068h: position_window_time
If the actual position of the drive is located within the positioning window (position_window) for as long
as defined in this object, the related bit 10 target_reached is set in the status word.
Index
6068h
Name
position_window_time
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
ms
–
0
Object 6510h_22h: position_error_switch_off_limit
In the object position_error_switch_off_limit, the maximum tolerance between the setpoint and actual
position can be entered. In contrast to the above contouring error message, if exceeded the output
stage is immediately switched off and an error triggered. The motor thus runs out unbraked (unless a
holding brake is on hand).
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
22h
position_error_switch_off_limit
UINT32
rw
no
position units
0 … 232-1
0
Value
Meaning
0
>0
Contouring error limit value OFF (reaction: NO ACTION)
Contouring error limit value ON (reaction: SWITCH OUTPUT STAGE OFF IMMEDIATELY)
The error 17-0 is activated through modification of the error response. The reaction SWITCH OUTPUT
STAGE OFF IMMEDIATELY is returned as ON, all others as OFF. When overwriting with 0, the error response NO ACTION is set; when overwriting with a value greater than 0, the error response SWITCH
OUTPUT STAGE OFF IMMEDIATELY is set. chapter 5.18 Error Management.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
111
5
Setting parameters
Object 607Bh: position_range_limit
The object group position_range_limit includes two sub-parameters that limit the numeric range of the
position values. If one of these limits is exceeded, the position actual value automatically jumps to the
other limit. This permits parametrisation of so-called round axes. To be specified are the limits that
should correspond physically to the same position, for example 0° and 360°.
For these limits to become effective, a round axis must be selected via the object 6510h_20h
(position_range_limit_enable).
Index
607Bh
Name
position_range_limit
Object Code
ARRAY
No. of Elements
2
Data Type
INT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
min_position_range_limit
rw
yes
position units
–
–
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
max_position_range_limit
rw
yes
position units
–
–
Object 6510h_20h: position_range_limit_enable
Through the object position_range_limit_enable, the range limits defined through the object 607Bh can
be activated. Various modes are possible:
If the mode “shortest path” is selected, positioning is always executed along the physically shortest
distance. To do this, the drive adapts to the prefix of the travel speed. In both “fixed direction of rotation” modes, positioning only takes place in the direction specified in the mode.
112
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
20h
position_range_limit_enable
UINT16
rw
no
–
0…5
0
Value
Meaning
0
1
2
3
4
5
Off
Shortest path (for compatibility reasons)
Shortest distance
Reserved
Fixed direction of rotation “positive”
Fixed direction of rotation, “negative”
Object 2030h: set_position_absolute
Through the object set_position_absolute, the readable actual position can be displaced without changing the physical position. The drive does not make any movement.
If an absolute encoder system is connected, the position shift is stored in the encoder if the encoder
system permits it. The position shift thus remains intact even after a reset. This storage operation runs
in the background independently of this object. All parameters belonging to the encoder storage are
saved with their current values.
Index
2030h
Name
set_position_absolute
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
wo
no
position units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
113
5
Setting parameters
5.8
Setpoint value limitation
Description of the objects
Objects treated in this chapter
Index
Object
Name
2415h
2416h
RECORD
RECORD
current_limitation
speed_limitation
Type
Attr.
rw
rw
Object 2415h: current_limitation
With the object group current_limitation, the maximum peak current for the motor can be limited in the
operating modes profile_position_mode, interpolated_position_mode, homing_mode und
velocity_mode, which makes a torque-limited speed operation possible. The setpoint value source of
the limit torque is specified via the object limit_current_input_channel. Here, a choice can be made
between specification of a direct setpoint value (fixed value) or specification via an analogue input.
Depending on the source chosen, either the limit torque (source = fixed value) or the scaling factor for
the analogue inputs (source = analogue input) is specified via the object limit_current. In the first case,
the torque-proportional current, in mA, is limited directly; in the second case, the current that should
correspond to a voltage of 10 V is specified, in mA.
Index
2415h
Name
current_limitation
Object Code
RECORD
No. of Elements
2
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
limit_current_input_channel
UINT8
rw
no
–
0…4
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
limit_current
INT32
rw
no
mA
–
0
114
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Value
Meaning
0
1
2
3
4
No limitation
AIN0
AIN1
AIN2
Fieldbus (selector B)
Object 2416h: speed_limitation
With the object group speed_limitation, the maximum speed of the motor can be limited in the operating mode profile_torque_mode, which makes a speed-limited torque mode possible. The setpoint value
source of the limit speed is specified via the object limit_speed_input_channel. Here, a choice can be
made between specification of a direct setpoint value (fixed value) or specification via an analogue
input. Depending on the source chosen, either the limit torque (fixed value) or the scaling factor for the
analogue inputs (source = analogue input) is specified via the object limit_speed. In the first case, the
limit is at the specified speed; in the second case, the speed is specified that should correspond to a
present voltage of 10 V.
Index
2416h
Name
speed_limitation
Object Code
RECORD
No. of Elements
2
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
limit_speed_input_channel
UINT8
rw
no
–
0…4
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
limit_speed
INT32
rw
no
speed units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
115
5
Setting parameters
Value
Meaning
0
1
2
3
4
No limitation
AIN0
AIN1
AIN2
Fieldbus (selector B)
5.9
Encoder Adjustments
Overview
This chapter describes the configuration of the angle encoder input [X2A], [X2B] and incremental
input [X10].
Caution
Incorrect angle encoder settings can cause the drive to turn uncontrollably and possibly
destroy parts of the system.
Description of the objects
Objects treated in this chapter
Index
Object
Name
2024h
2024h_01h
2024h_02h
2024h_03h
2025h
2025h_01h
2025h_02h
2025h_03h
2025h_04h
2026h
2026h_01h
2026h_02h
2026h_03h
2026h_04h
RECORD
VAR
VAR
VAR
RECORD
VAR
VAR
VAR
VAR
RECORD
VAR
VAR
VAR
VAR
encoder_x2a_data_field
encoder_x2a_resolution
encoder_x2a_numerator
encoder_x2a_divisor
encoder_x10_data_field
encoder_x10_resolution
encoder_x10_numerator
encoder_x10_divisor
encoder_x10_counter
encoder_x2b_data_field
encoder_x2b_resolution
encoder_x2b_numerator
encoder_x2b_divisor
encoder_x2b_counter
116
Type
UINT32
INT16
INT16
UINT32
INT16
INT16
UINT32
UINT32
INT16
INT16
UINT32
Attr.
ro
ro
rw
rw
ro
rw
rw
rw
ro
ro
rw
rw
rw
ro
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 2024h: encoder_x2a_data_field
The record encoder_x2a_data_field summarises parameters that are necessary for operation of the
angle encoder at the plug [X2A].
Since the numerous angle encoder settings only become effective after a reset, selection and adjustment of the encoders should take place through the parametrisation software. Under CANopen, the
following settings can be read or changed:
The object encoder_x2a_resolution specifies how many increments are generated by the encoder per
revolution or unit of length. Since only resolvers that are always evaluated using 16 bit can be connected at the input [X2A], 65536 is always returned here. With the object encoder_x2a_numerator and
encoder_x2a_divisor, a gear unit (also with prefix) if necessary between motor shaft and encoder can
be taken into account.
Index
2024h
Name
encoder_x2a_data_field
Object Code
RECORD
No. of Elements
3
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
encoder_x2a_resolution
UINT32
ro
no
Increments (4 * number of lines)
–
65536
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
encoder_x2a_numerator
INT16
rw
no
–
–32768 … 32767 (except 0)
1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
encoder_x2a_divisor
INT16
rw
no
–
1 … 32767
1
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
117
5
Setting parameters
Object 2026h: encoder_x2b_data_field
The record encoder_x2a_data_field summarises parameters that are necessary for operation of the
angle encoder at the plug [X2A].
The object encoder_x2b_resolution specifies how many increments are generated by the encoder per
revolution (for incremental encoders, this equals four times the number of lines or periods per
revolution).
The object encoder_x2b_counter delivers the currently counted number of increments. And so it
delivers values between 0 and the set increment number-1.
With the objects encoder_x2b_numerator and encoder_x2b_divisor, a gear unit connected between the
motor shaft and the encoder connected to [X2B] can be taken into account.
Index
2026h
Name
encoder_x2b_data_field
Object Code
RECORD
No. of Elements
4
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
encoder_x2b_resolution
UINT32
rw
no
Increments (4 * number of lines)
Dependent on the encoder used
Dependent on the encoder used
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
encoder_x2b_numerator
INT16
rw
no
–
–32768 … 32767
1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
encoder_x2b_divisor
INT16
rw
no
–
1 … 32767
1
118
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
encoder_x2b_counter
UINT32
ro
yes
Increments (4 * number of lines)
0 … (encoder_x2b_resolution -1)
–
Object 2025h: encoder_x10_data_field
The record encoder_X10_data_field summarises parameters that are necessary for operation of the
incremental input [X10]. A digital incremental encoder or emulated incremental signals, for example
from another CMMP, can be optionally connected here. The input signals over [X10] can optionally be
used as a setpoint value or an actual value. More information on this can be found in chapter 5.11.
How many increments are generated by the encoder per revolution or unit of length must be specified
in the object encoder_X10_resolution. This corresponds to four times the number of lines. The object
encoder_X10_counter supplies the currently counted incremental number (between 0 and the set increment number-1).
With the object encoder_X10_numerator and encoder_X10_divisor, a gear unit (also with prefix), if
necessary, between motor shaft and encoder can be taken into account.
With use of the X10 signal as an actual value, this corresponds to a gear unit between the motor and
the actual value encoder connected to [X10], which is mounted on the drive-out. With use of the X10
signal as setpoint value, gear ratios between master and slave can be implemented herewith.
Index
2025h
Name
encoder_x10_data_field
Object Code
RECORD
No. of Elements
4
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
encoder_x10_resolution
UINT32
rw
no
Increments (4 * number of lines)
Dependent on the encoder used
Dependent on the encoder used
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
119
5
Setting parameters
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
encoder_x10_numerator
INT16
rw
no
–
–32768 … 32767 (except 0)
1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
encoder_x10_divisor
INT16
rw
no
–
1 … 32767
1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
encoder_x10_counter
UINT32
ro
yes
Increments (4 * number of lines)
0 … (encoder_x10_resolution -1)
–
5.10
Incremental Encoder Emulation
Overview
This object group makes it possible to parametrise the incremental encoder output [X11]. As a result,
master-slave applications, in which the output of the master [X11] is connected to the input of the slave
[X10], can hereby be parametrised under CANopen.
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
2028h
201Ah
201Ah_01h
201Ah_02h
VAR
RECORD
VAR
VAR
encoder_emulation_resolution
encoder_emulation_data
encoder_emulation_resolution
encoder_emulation_offset
INT32
rw
ro
rw
rw
120
INT32
INT16
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 201Ah: encoder_emulation_data
The object record encoder_emulation_data encapsulates all setting options for the incremental encoder output [X11]:
Through the object encoder_emulation_resolution, the output increment number (= fourfold number of
lines) can be freely set as a multiple of 4. In a master-slave application, this must correspond to the
encoder_X10_resolution of the slave to achieve a ratio of 1:1.
With the object encoder_emulation_offset, the position of the output zero pulse can be shifted compared to the zero position of the actual value encoder.
Index
201Ah
Name
encoder_emulation_data
Object Code
RECORD
No. of Elements
2
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
encoder_emulation_resolution
INT32
rw
no
(4 * number of lines)
4 * (1 … 8192)
4096
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
encoder_emulation_offset
INT16
rw
no
32767 = 180°
–32768 … 32767
0
Object 2028h: encoder_emulation_resolution
The object encoder_emulation_resolution is available only for compatibility reasons. It corresponds to
the object 201Ah_01h.
Index
2028h
Name
encoder_emulation_resolution
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
rw
no
201Ah_01h
201Ah_01h
201Ah_01h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
121
5
Setting parameters
5.11
Setpoint/Actual Value Activation
Overview
With the help of the following objects, the source for the setpoint value and the source for the actual
value can be revised. As standard, the motor controller uses the input for the motor encoder [X2A] or
[X2B] as actual value for the position controller. With use of an external position controller, e.g. behind
a gear unit, the position value supplied via [X10] can be activated as an actual value for the position
controller. In addition, it is possible via [X10] to activate incoming signals (e.g. of a second controller) as
additional setpoint values, through which synchronous operating modes are enabled.
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
2021h
2022h
2023h
202Fh
202Fh_07h
VAR
VAR
VAR
RECORD
VAR
position_encoder_selection
synchronisation_encoder_selection
synchronisation_filter_time
synchronisation_selector_data
synchronisation_main
INT16
INT16
UINT32
rw
rw
rw
ro
rw
UINT16
Object 2021h: position_encoder_selection
The object position_encoder_selection specifies the encoder input that is used for regulation of the
actual position (actual position encoder). This value can be revised in order to switch to position control
through an external encoder (connected to the drive-out). Switching is possible thereby between [X10]
and the encoder input ([X2A]/[X2B]) selected as commutation encoder. If one of the encoder inputs
[X2A]/[X2B] is selected as position actual value encoder, it must be the one used as commutation encoder. If the other encoder is selected, the commutation encoder is switched to automatically.
Index
2021h
Name
position_encoder_selection
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
no
–
0 … 2 ( table)
0
122
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Value
Measurement file
0
1
2
[X2A]
[X2B]
[X10]
Selection as position actual value encoder is only possible between the encoder input
[X10] and the respective commutation encoder [X2A] or [X2B]. It is not possible to use the
configuration [X2A] as commutation encoder and [X2B] as position actual value encoder,
or vice versa.
Object 2022h: synchronisation_encoder_selection
The object synchronisation_encoder_selection specifies the encoder input that is used as synchronisation setpoint value. Dependent on the operating mode, this corresponds to a position setpoint (profile
position mode) or a speed setpoint (profile velocity mode).
Only [X10] can be used as synchronisation input. As a result, selection can be made between [X10] and
no input. The same input should not be selected as synchronisation setpoint as for the actual value
encoder.
Index
2022h
Name
synchronisation_encoder_selection
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
no
–
-1, 2 ( table)
2
Value
Measurement file
-1
2
No encoder / undefined
[X10]
Object 202Fh: synchronisation_selector_data
Activation of a synchronous setpoint can take place through the object synchronisation_main. For the
synchronous setpoint to be calculated at all, bit 0 must be set. Bit 1 permits activation of the synchronous position through starting of a position record. Currently, only 0 can be parametrised, so the synchronous position is always switched on. Through bit 8, it can be established that homing should take
place without activation of the synchronous position so that the master and slave can be referenced
separately.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
123
5
Setting parameters
Index
202Fh
Name
synchronisation_selector_data
Object Code
RECORD
No. of Elements
1
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
07h
synchronisation_main
UINT16
rw
no
–
Table
–
Bit
Value
Meaning
0
0001h
1
8
0002h
0100h
0: Synchronisation inactive
1: Synchronisation active
“Flying saw” not possible
0: Synchronisation during homing
1: No synchronisation during homing
Object 2023h: synchronisation_filter_time
Through the object synchronisation_filter_time, the filter time constant of a PT1 filter is established,
with which the synchronisation speed is smoothed. This can be necessary especially with a low number
of lines, since even small changes in the input value here can correspond to high speeds. On the other
hand, the drive might no longer be in a position to follow a dynamic input signal quickly enough if filter
times are high.
Index
2023h
Name
synchronisation_filter_time
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
no
μs
10 … 50000
600
124
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.12
Analogue inputs
Overview
The motor controllers of the series CMMP-AS-...-M3/-M0 have three analogue inputs through which
setpoint values can be specified to the motor controller, for example. For all these analogue inputs, the
subsequent objects offer the possibility to read the current input voltage (analog_input_voltage) and
set an offset (analog_input_offset).
Description of the objects
Index
Object
Name
Type
Attr.
2400h
2401h
ARRAY
ARRAY
analog_input_voltage
analog_input_offset
INT16
INT32
ro
rw
2400h: analog_input_voltage (input voltage)
The object group analog_input_voltage delivers the current input voltage of the respective channel in
millivolts, taking into account the offset.
Index
2400h
Name
analog_input_voltage
Object Code
ARRAY
No. of Elements
3
Data Type
INT16
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
analog_input_voltage_ch_0
ro
no
mV
–
–
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
analog_input_voltage_ch_1
ro
no
mV
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
125
5
Setting parameters
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
03h
analog_input_voltage_ch_2
ro
no
mV
–
–
Object 2401h: analog_input_offset (offset for analogue inputs)
Through the object group analog_input_offset, the offset voltage in millivolts for the respective inputs
can be set or read. With help of the offset, direct voltage that may be present can be compensated. A
positive offset compensates thereby for a positive input voltage.
Index
2401h
Name
analog_input_offset
Object Code
ARRAY
No. of Elements
3
Data Type
INT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
analog_input_offset_ch_0
rw
no
mV
–10000 … 10000
0
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
analog_input_offset_ch_1
rw
no
mV
–10000 … 10000
0
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
03h
analog_input_offset_ch_2
rw
no
mV
–10000 … 10000
0
126
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.13
Digital inputs and outputs
Overview
All digital inputs of the motor controller can be read via the CAN bus, and almost all digital outputs can
be set as desired. Moreover, status messages can be assigned to the digital outputs of the motor controller.
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
60FDh
60FEh
2420h
2420h_01h
2420h_02h
2420h_03h
VAR
ARRAY
RECORD
VAR
VAR
VAR
digital_inputs
digital_outputs
digital_output_state_mapping
dig_out_state_mapp_dout_1
dig_out_state_mapp_dout_2
dig_out_state_mapp_dout_3
UINT32
UINT32
ro
rw
ro
rw
rw
rw
UINT8
UINT8
UINT8
Object 60FDh: digital_inputs
The digital inputs can be read via the object 60FDh:
Index
60Fdh
Name
digital_inputs
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
–
according to the following table
0
Bit
Value
Meaning
0
1
2
3
16 … 23
24 … 27
28
29
00000001h
00000002h
00000004h
00000008h
00FF0000h
0F000000h
10000000h
20000000h
Negative limit switch
Positive limit switch
Reference switch
Interlock (controller or output stage enable missing)
Digital inputs of the CAMC-D-8E8A
DIN0 … DIN3
DIN 8
DIN 9
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
127
5
Setting parameters
Object 60FEh: digital_outputs
The digital outputs can be triggered via the object 60FEh. To do this, which of the digital outputs should
be triggered must be specified in the object digital_outputs_mask. The selected outputs can then be
set as desired via the object digital_outputs_data. It should be noted that a delay of up to 10 ms may
occur in triggering the digital outputs. When the outputs are really set can be determined by reading
back the object 60FEh.
Index
60FEh
Name
digital_outputs
Object Code
ARRAY
No. of Elements
2
Data Type
UINT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
digital_outputs_data
rw
yes
–
–
(dependent on the status of the brake)
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
digital_outputs_mask
rw
yes
–
–
00000000h
Bit
Value
0
16 … 23
25 … 27
00000001h 1 = Energize brake
0E000000h Digital outputs of the CAMC-D-8E8A
0E000000h DOUT1 … DOUT3
Meaning
Caution
If brake triggering is enabled via digital_output_mask, deletion of bit 0 in digital_output_data causes the holding brake to be manually ventilated!
In case of hanging axes, this can result in sagging of the axes.
128
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 2420h: digital_output_state_mapping
Through the object group digital_outputs_state_mapping, various status messages of the motor controller can be output over the digital outputs.
For the integrated digital outputs of the motor controller, a separate sub-index is available for each
output for this purpose. As a result, for each output, a byte is available into which the function number
must be entered.
If such a function has been assigned to a digital output and the output is then switched on or off directly over digital_outputs (60FEh), the object digital_outputs_state_mapping is also set to OFF (0) or
ON (12).
Index
2420h
Name
digital_outputs_state_mapping
Object Code
RECORD
No. of Elements
5
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
dig_out_state_mapp_dout_1
UINT8
rw
no
–
0 … 44, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
dig_out_state_mapp_dout_2
UINT8
rw
no
–
0 … 44, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
dig_out_state_mapp_dout_3
UINT8
rw
no
–
0 … 44, table
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
129
5
Setting parameters
Value
Measurement file
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 … 25
26
27
28
29
30
31
Off (output is low)
Position Xsetpoint = Xdest
Position Xact = Xdest
Reserved
Remaining path trigger active
Reference run active
Declared Velocity Reached
I2t motor reached
Contouring error
Undervoltage in intermediate circuit
Holding brake released
Output stage switched on
On (output is high)
Common error active
At least one setpoint lock active
Linear motor identified
Homing position valid
Common status: ready for controller enable
Position Trigger 1
Position Trigger 2
Position Trigger 3
Position Trigger 4
Reserved
Alternative target reached
Active if position set running
Declared torque reached
Position x_set = x_target (also with linking for at least 10 ms)
Ack signal (active low) as handshake to start position
Destination reached with handshake for the dig. Start, is not set as long as START is
on HIGH level.
Cam disc active
CAM-IN movement in operation
CAM-CHANGE, like CAM-IN, but change to a new curve
CAM-OUT movement in operation
Level of digital output stage enable, that is level at DIN4 (high if DIN4 high)
Reserved
CAM active without CAM-IN or CAM-CHANGE movement
Speed actual value in the window for rest
Teach acknowledge
Saving process (SAVE!, Save Positions) in operation
STO active
STO is requested
Motion Complete (MC)
32
33
34
35
36
37
38
39
40
41
42
43
44
130
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
11h
dig_out_state_mapp_ea88_0_low
UINT32
rw
no
–
0 … FFFFFFFFh, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Bit
Mask
Name
Measurement file
0…7
8 … 15
16 … 23
24 … 31
000000FFh
0000FF00h
00FF0000h
FF000000h
EA88_0_dout_0_mapping
EA88_0_dout_1_mapping
EA88_0_dout_2_mapping
EA88_0_dout_3_mapping
Function for CAMC-D-8E8A 0 DOUT1
Function for CAMC-D-8E8A 0 DOUT2
Function for CAMC-D-8E8A 0 DOUT3
Function for CAMC-D-8E8A 0 DOUT4
12h
dig_out_state_mapp_ea88_0_low
UINT32
rw
no
–
0 … FFFFFFFFh, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Bit
Mask
Name
Measurement file
0…7
8 … 15
16 … 23
24 … 31
000000FFh
0000FF00h
00FF0000h
FF000000h
EA88_0_dout_4_mapping
EA88_0_dout_5_mapping
EA88_0_dout_6_mapping
EA88_0_dout_7_mapping
Function for CAMC-D-8E8A 0 DOUT5
Function for CAMC-D-8E8A 0 DOUT6
Function for CAMC-D-8E8A 0 DOUT7
Function for CAMC-D-8E8A 0 DOUT8
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
131
5
Setting parameters
5.14
Limit Switch/Reference Switch
Overview
Proximity switches (limit switch) or reference switches (homing switch) can be used alternatively for
definition of the reference position of the motor controller. Further information on the possible homing
methods can be found in chapter 7.2, Operating mode reference travel (homing mode).
Description of the objects
Index
Object
Name
6510h
RECORD
drive_data
Type
Attr.
rw
Object 6510h_11h: limit_switch_polarity
The polarity of the limit switches can be programmed via the object 6510h_11h (limit_switch_polarity).
For normally closed limit switches, a “0” must be entered in this object, whereas a “1” must be entered
when normally open contacts are used.
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
11h
limit_switch_polarity
INT16
rw
no
–
0, 1
1
Value
Meaning
0
1
N/C contact
N/O contact
132
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_12h: limit_switch_selector
Through the object 6510h_12h (limit_switch_selector), assignment of the limit switches (negative,
positive) can be exchanged without having to make changes to the cabling. To exchange the assignment of the limit switches, a One must be entered.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
12h
limit_switch_selector
INT16
rw
no
–
0, 1
0
Value
Meaning
0
DIN6 = E0 (limit switch negative)
DIN7 = E1 (limit switch positive)
DIN6 = E1 (limit switch positive)
DIN7 = E0 (limit switch negative)
1
Object 6510h_14h: homing_switch_polarity
The polarity of the reference switch can be programmed through the object 6510h_14h
(homing_switch_polarity). For a normally closed reference switch, a zero is entered in this object,
whereas a “1” is entered when normally open contacts are used.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
14h
homing_switch_polarity
INT16
rw
no
–
0, 1
1
Value
Meaning
0
1
N/C contact
N/O contact
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
133
5
Setting parameters
Object 6510h_13h: homing_switch_selector
The object 6510h_13h (homing_switch_selector) determines whether DIN8 or DIN9 should be used as
reference switch.
13h
homing_switch_selector
INT16
rw
no
–
0, 1
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Value
Meaning
0
1
DIN 9
DIN 8
Object 6510h_15h: limit_switch_deceleration
The object limit_switch_deceleration establishes the deceleration used in braking when the limit switch
is reached during normal operation (limit switch emergency stop ramp).
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
134
15h
limit_switch_deceleration
INT32
rw
no
acceleration units
0 … 3000000 min-1/s
2000000 min-1/s
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
5.15
Sampling of Positions
Overview
The CMMP family offers the possibility to save the actual position value on the rising or falling edge of a
digital input. This position value can then be read out for calculation within a controller, for example.
All necessary objects are summarised in the record sample_data: The object sample_mode establishes
the type of sampling: whether only a one-time sample event should be recorded or continuous
sampling take place. Through the object sample_status, the controller can query whether a sample
event has occurred. This is signaled by a set bit, which can also be displayed in the status word if the
object sample_status_mask is set correspondingly.
The object sample_control controls enabling of the sample event, and the stamped positions can ultimately be read via the objects sample_position_rising_edge and sample_position_falling_edge.
Which digital input is used can be established with the parametrisation software under Controller –
I/O configuration – Digital inputs – Sample input.
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
204Ah
204Ah_01h
204Ah_02h
204Ah_03h
204Ah_04h
204Ah_05h
204Ah_06h
RECORD
VAR
VAR
VAR
VAR
VAR
VAR
sample_data
sample_mode
sample_status
sample_status_mask
sample_control
sample_position_rising_edge
sample_position_falling_edge
UINT16
UINT8
UINT8
UINT8
INT32
INT32
ro
rw
ro
rw
wo
ro
ro
Object 204Ah: sample_data
Index
204Ah
Name
sample_data
Object Code
RECORD
No. of Elements
6
The following object can be used to select whether the position should be determined for each occurrence of a sample event (continuous sampling) or sampling should be blocked after a sample event
until sampling is approved again. Observe that even just one bounce can trigger both edges!
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
135
5
Setting parameters
01h
sample_mode
UINT16
rw
no
–
0 … 1, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Value
Measurement file
0
1
Continuous sampling
Autolock sampling
The following object displays a new sample event.
02h
sample_status
UINT8
ro
yes
–
0 … 3, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Bit
Value
Name
Description
0
1
01h
02h
falling_edge_occurred
rising_edge_occurred
= 1: New sample position (falling edge)
= 1: New sample position (rising edge)
The bits of the object sample_status can be established with the following object, which should also
result in setting bit 15 of the status word. Through this, the information “sample event occurred” is
available in the status word, which will normally be transmitted anyway, so the controller has to read
the object sample_status only to determine which edge has occurred, if applicable.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
136
03h
sample_status_mask
UINT8
rw
yes
–
0 … 1, table
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Bit
Value
Name
Description
0
01h
rising_edge_visible
1
02h
falling_edge_visible
If rising_edge_occurred = 1
Status word bit 15 = 1
If falling_edge_occurred = 1
Status word bit 15 = 1
Setting of the respective bit in sample_control resets the corresponding status bit in sample_status
and also releases the sampling again in the case of “Autolock” sampling.
04h
sample_control
UINT8
wo
yes
–
0 … 1, table
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Bit
Value
Name
Description
0
1
01h
02h
falling_edge_enable
rising_edge_enable
Sampling with falling edge
Sampling with rising edge
The following objects contain the sampled positions.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
05h
sample_position_rising_edge
INT32
ro
yes
position units
–
–
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
06h
sample_position_falling_edge
INT32
ro
yes
position units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
137
5
Setting parameters
5.16
Brake Activation
Overview
Using the subsequent objects, it can be parametrised how the motor controller controls a holding brake
integrated into the motor, if necessary. The holding brake is always enabled as soon as controller enable is switched on. For holding brakes with high mechanical inertia, a time delay can be parametrised
so that the holding brake takes effect before the output stage is switched off (sagging of vertical axes).
This delay is parametrised through the object brake_delay_time. As can be seen from the sketch, when
the controller enable is switched on, the speed setpoint value is approved only after the
brake_delay_time, and when the the controller enable is switched off, turning off the regulation is
delayed by this time.
1
0
1
Internal controller
enable
0
1
Holding brake released
0
+
Speed setpoint value
0
–
+
Actual speed value
0
–
Controller enable
tF:
tF
tF
Travel start delay
Fig. 5.8
Function of brake delay (with speed adjustment / positioning)
Description of the objects
Index
Object
Name
6510h
RECORD
drive_data
Type
Attr.
rw
Object 6510h_18h: brake_delay_time
This brake delay time can be parametrised through the object brake_delay_time.
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
138
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
18h
brake_delay_time
UINT16
rw
no
ms
0 … 32000
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
5.17
Device Information
Index
Object
Name
1018h
6510h
RECORD
RECORD
identity_object
drive_data
Type
Attr.
rw
rw
Via numerous CAN objects, the most varied of information, such as motor controller type, firmware
used, etc. can be read out of the device.
Description of the objects
Object 1018h: identity_object
Through the identity_object established in the CiA 301, the motor controller can be uniquely identified
in a CANopen-network. For this purpose, the manufacturer code (vendor_id), a unique product code
(product_code), the revision number of the CANopen implementation (revision_number) and the serial
number of the device (serial_number) can be read out.
Index
1018h
Name
identity_object
Object Code
RECORD
No. of Elements
4
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
vendor_id
UINT32
ro
no
–
0000001D
0000001D
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
139
5
Setting parameters
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
product_code
UINT32
ro
no
–
see below
see below
Value
Meaning
2045h
2046h
204Ah
204Bh
2085h
2086h
208Ah
208Bh
CMMP-AS-C2-3A-M3
CMMP-AS-C5-3A-M3
CMMP-AS-C5-11A-P3-M3
CMMP-AS-C10-11A-P3-M3
CMMP-AS-C2-3A-M0
CMMP-AS-C5-3A-M0
CMMP-AS-C5-11A-P3-M0
CMMP-AS-C10-11A-P3-M0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
revision_number
UINT32
ro
no
MMMMSSSSh (M: main version, S: sub version)
–
–
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
serial_number
UINT32
ro
no
–
–
–
140
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_A0h: drive_serial_number
The serial number of the controller can be read via the object drive_serial_number. This object serves
to achieve compatibility with earlier versions.
Index
6510h
Name
drive_data
Object Code
RECORD
No. of Elements
51
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
A0h
drive_serial_number
UINT32
ro
no
–
–
–
Object 6510h_A1h: drive_type
Through the object drive_type, the device type of the controller can be read. This object serves to
achieve compatibility with earlier versions.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
A1h
drive_type
UINT32
ro
no
–
1018h_02h, product_code
1018h_02h, product_code
Object 6510h_A9h: firmware_main_version
The main version number of the firmware (product stage) can be read out via the object
firmware_main_version.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
A9h
firmware_main_version
UINT32
ro
no
MMMMSSSSh (M: main version, S: sub version)
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
141
5
Setting parameters
Object 6510h_AAh: firmware_custom_version
The version number of the customer-specific variants of the firmware can be read out via the object
firmware_custom_version.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
AAh
firmware_custom_version
UINT32
ro
no
MMMMSSSSh (M: main version, S: sub version)
–
–
Object 6510h_ADh: km_release
Through the version number of the km_release, firmware statuses of the same product stage can be
differentiated.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
ADh
km_release
UINT32
ro
no
–
MMMMSSSSh (M: main version, S: sub version)
–
Object 6510h_ACh: firmware_type
Through the object firmware_type can be read for which device family and which angle encoder type
the loaded firmware is appropriate.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
142
ACh
firmware_type
UINT32
ro
no
–
00000F2h
00000F2h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Object 6510h_B0h: cycletime_current_controller
Through the object cycletime_current_controller, the cycle time of the current regulator in microseconds can be read.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
B0h
cycletime_current_controller
UINT32
ro
no
μs
–
0000007Dh
Object 6510h_B1h: cycletime_velocity_controller
Through the object cycletime_velocity_controller, the cycle time of the speed regulator in microseconds can be read.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
B1h
cycletime_velocity_controller
UINT32
ro
no
μs
–
000000FAh
Object 6510h_B2h: cycletime_position_controller
Through the object cycletime_position_controller, the cycle time of the position regulator in microseconds can be read.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
B2h
cycletime_position_controller
UINT32
ro
no
μs
–
000001F4h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
143
5
Setting parameters
Object 6510h_B3h: cycletime_trajectory_generator
Through the object cycletime_trajectory_generator, the cycle time of the position controller in microseconds can be read.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
B3h
cycletime_trajectory_generator
UINT32
ro
no
μs
–
000003E8h
Object 6510h_C0h: commissioning_state
The commissioning_state object is written by the parameterisation software if certain parameterisations have been executed (e.g. nominal current). After delivery and after restore_default_parameter,
this object includes a “0”. In this case, an “A” is displayed on the 7-segments display of the motor controller to point out that this device has not been parameterised yet. If the motor controller is parameterised completely under CANopen, at least one bit in this object must be set to suppress the display
“A”. Of course, if required it is also possible to use this object in order to notice the status of the controller parameterisation. Observe in this case that the parameterisation software also accesses this
object.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
144
C0h
commissioning_state
UINT32
rw
no
–
–
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
Value
Meaning
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 … 31
Nominal current valid
Maximum current valid
Pole number of the motor valid
Offset angle / direction of rotation valid
Reserved
Offset angle / direction of rotation of Hall encoder valid
Reserved
Absolute position of encoder system valid
Current regulator parameters valid
Reserved
Physic. units valid
Speed regulator valid
Position controller valid
Safety parameters valid
Reserved
Limit switch polarity valid
Reserved
Caution
This object contains no information about whether the motor controller has been correspondingly parametrised correctly for the motor and application, but only whether the
named points after shipment have been parametrised at all at least once.
“A” in the 7-segments display
Observe that at least one bit in the commissioning_state object has to be set in order to
suppress the “A” on the 7-segments display of your motor controller.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
145
5
Setting parameters
5.18
Error Management
Overview
The motor controllers of the CMMP family offer the option to change the error response of individual
events, e.g. the occurrence of a contouring error. Through this, the motor controller reacts differently if
a certain event occurs: Dependent on the setting, braking down can occur and the output stage is shut
off immediately, but also just a warning can be shown on the display.
For every event, a minimum reaction is intended by the manufacturer, which cannot be fallen below.
And so “critical” errors, such as 60-0 short circuit output stage, are not reparametrised, since here an
immediate switch-off is necessary to protect the motor controller from possible destruction.
If a lower error response is entered than is permissible for the respective error, the value is limited to
the lowest permissible error response. A list of all error numbers is found in chapter B
“ Diagnostic messages”.
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
2100h
2100_01h
2100_02h
200Fh
RECORD
VAR
VAR
VAR
error_management
error_number
error_reaction_code
last_warning_code
UINT8
UINT8
UINT16
ro
rw
rw
ro
Object 2100h: error_management
Index
2100h
Name
error_management
Object Code
RECORD
No. of Elements
2
The main error number whose response should be changed must be specified in the object error_number. The main error number is normally specified before the hyphen (e.g. error 08-2, main error number 8). For possible error numbers, also chap. 3.5.
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
146
01h
error_number
UINT8
rw
no
–
1 … 96
1
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
5
Setting parameters
The response of the error can be changed in the object error_reaction_code. If the response falls below
the manufacturer's minimum response, it is limited to this minimum. The response actually set can be
determined by reading back.
02h
error_reaction_code
UINT8
rw
no
–
0, 1, 3, 5, 7, 8
dependent on error_number
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Value
Meaning
0
1
3
5
7
8
No action
Entry in the buffer
Warning on the 7-segments display and in the status word
Controller enable off
Braking with maximum current
Output stage off
Object 200Fh: last_warning_code
Warnings are special events of the drive (e.g. a following error), which in contrast to an error should not
result in stopping of the drive. Warnings are displayed on the 7-segments display of the controller and
after that automatically reset by the controller.
The last warning that occurred can be read via the following object: Bit 15 displays thereby whether the
warning is currently still active.
Index
200Fh
Name
last_warning_code
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
–
–
–
Bit
Value
Meaning
0…3
4 … 11
15
000Fh
0FF0h
8000h
Sub-number of the warning
Main number of the warning
Warning is active
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
147
6
Device Control
6
Device Control
6.1
Status Diagram (State Machine)
6.1.1
Overview
The following chapter describes how the motor controller can be regulated under CANopen, that is,
how the output stage is switched on or an error is acknowledged, for example.
Under CANopen, the entire control of the motor controller is achieved through two objects: The host
can control the motor controller through the controlword, while the status of the motor controller can
be read back in the statusword object. The following terms are used to explain controller regulation:
Term
Description
Status:
(state)
The motor controller is in different statuses, depending on whether the
output stage is switched on or an error has occurred, for example. The
statuses defined under CANopen are presented in the course of the
chapter.
Example: SWITCH_ON_DISABLED
Status transition
(state transition)
Just as with the statuses, it is also defined under CANopen how to go
from one status to another (e.g. to acknowledge an error). Status
transitions are triggered by the host by setting bits in the controlword or
internally through the motor controller, when it recognises an error, for
example.
Command
(command)
To trigger status transitions, certain combinations of bits must be set in
the controlword. Such a combination is designated a command.
Example: Enable Operation
The statuses and status transitions together form the status diagram,
that is, the overview of all conditions and the transitions possible from
there.
Status diagram
(state machine)
Tab. 6.1
148
Controller regulation terms
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
6.1.2
Status diagram of the motor controller (state machine)
aC
0
0
Power disabled
(output stage off )
NOT_READY_TO_SWITCH_ON
Fault
(error)
FAULT_REACTION_ACTIVE
aD
1
FAULT
aE
SWITCH_ON_DISABLED
2
7
READY_TO_SWITCH_ON
9
8
3
aJ
aB
Power enabled
(output stage on)
6
SWITCH_ON
4
5
OPERATION_ENABLE
Fig. 6.1
aA
QUICK_STOP_ACTIVE
Status diagram of the motor controller
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
149
6
Device Control
The status diagram can be roughly divided into three areas: “Power Disabled” means that the output
stage is switched off and “Power Enabled” that the output stage is switched on. The statuses needed
for error handling are summarised in the “Fault” area.
The most important statuses of the motor controller are shown highlighted in the diagram. After it is
switched on, the motor controller initialises itself and then reaches the status SWITCH_ON_DISABLED.
In this status, the CAN communication is fully operational and the motor controller can be parametrised
(e.g. the “speed adjustment” operating mode can be set). The output stage is switched off and the
shaft is thus freely rotatable. Through the status transitions 2, 3, 4 – which corresponds in principle
to CAN controller enable – the status OPERATION_ENABLE is reached. In this status, the output stage is
switched on and the motor is controlled in accordance with the set operating mode. Always make sure
beforehand that the drive is correctly parametrised and a corresponding setpoint value is equal to zero.
The status transition 9 corresponds to removal of enable, i.e. a motor that is still running would run
out uncontrolled.
If an error occurs (regardless from which status), the system ultimately branches into the FAULT status.
Depending on the severity of the error, certain actions, such as emergency braking, can still be performed before (FAULT_REACTION_ACTIVE).
In order to perform the named status transitions, certain bit combinations must be set in the controlword (see below). The lower 4 bits of the controlword are jointly evaluated in order to trigger a status
transition.
In the following, only the most important status transitions 2, 3, 4, 9 and aE are explained at first.
A table of all possible statuses and status transitions are found at the end of this chapter.
The following table contains the desired status transition in the 1st column and in the 2nd column the
requirements necessary for it (usually a command through the host, here depicted with frame). How
this command is generated, i.e. which bits in the controlword must be set, is visible in the 3rd column (x
= not relevant).
No.
Is performed when
2
Output stage and controller
enable prev. + command
Shutdown
Shutdown =
x 1 1 0 None
3
Command Switch On
Switch On =
x 1 1 1
4
Command Enable Operation
Enable Operation =
9
Command Disable Voltage
Disable Voltage =
aE
Error eliminated + Fault
Reset command
Fault Reset =
Tab. 6.2
150
Bit combination (controlword)
Action
Bit
3 2 1 0
Switching on the output
stage
Control in accordance with
1 1 1 1
set operating mode
Output stage is blocked.
x x 0 x
Motor rotates freely.
Bit 7 =
Acknowledge Error
01
Most important status transitions of the motor controller
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
EXAMPLE
After the motor controller has been parametrised, the motor controller should be “enabled”, that is,
the output stage switched on:
1. The motor controller is in the status SWITCH_ON_DISABLED
2. The motor controller should be in the status OPERATION_ENABLE
3. According to the status diagram (Fig. 6.1) the transitions 2, 3 and 4 must be executed.
4. From Tab. 6.2 follows:
Transition 2: controlword = 0006h
New status: READY_TO_SWITCH_ON1)
Transition 3: controlword = 0007h
New status: SWITCHED_ON1)
Transition 4: controlword = 000Fh
New status: OPERATION_ENABLE1)
Instructions:
1. The example assumes that no further bits are set in the controlword (for the transitions, only the
bits 0 … 3 are important).
2. The transitions 3 and 4 can be combined by immediately setting the controlword to 000Fh. For
the status transition 2, the set bit 3 is not relevant.
1)
The Host must wait until the status in the statusword can be read back. This is explained in detail below.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
151
6
Device Control
Status diagram: statuses
The following table lists all statuses and their meaning:
Name
Significance
NOT_READY_TO_SWITCH_ON
The motor controller performs a self-test. The CAN communication
does not work yet.
The motor controller has completed its self-test. CAN
communication is possible.
The motor controller waits until the digital inputs “output stage”
and “controller enable” are at 24 V. (Controller enable logic “Digital
input and CAN”).
The output stage is switched on.
Voltage to the motor is on, and the motor is regulated
corresponding to the operating mode.
The Quick Stop Function is being executed
( quick_stop_option_code). Voltage to the motor is on, and the
motor is regulated according to the quick stop function.
An error has occurred. With critical errors, the system immediately
switches into the Fault status. Otherwise, the action specified in
the fault_reaction_option_code is carried out. Voltage to the
motor is on, and the motor is regulated according to the fault
reaction function.
SWITCH_ON_DISABLED
READY_TO_SWITCH_ON
SWITCHED_ON 1)
OPERATION_ENABLE1)
QUICKSTOP_ACTIVE1)
FAULT_REACTION_ACTIVE1)
FAULT
1)
An error has occurred. No voltage is applied to the motor.
The output stage is switched on.
152
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
Status diagram: status transitions
The following table lists all statuses and their meaning:
No.
Is performed when
Bit combination (controlword)
Action
Bit
3 2 1 0
0
0
Switched on or reset occurs
Internal transition
1
Self-test successful
Internal transition
2
Output stage and controller
enable prev. + command
Shutdown
Shutdown
x 1 1 0 –
3
Command Switch On
Switch On
x 1 1 1
4
Command Enable Operation
Enable Operation
1 1 1 1
5
Command Disable
Operation
Disable Operation 0 1 1 1
6
Command Shutdown
Shutdown
x 1 1 0
7
Command Quick Stop
Quick Stop
x 0 1 x
8
Command Shutdown
Shutdown
x 1 1 0
9
Command Disable Voltage
Disable Voltage
x x
0 x
aJ
Command Disable Voltage
Disable Voltage
x x
0 x
aA
Command Quick Stop
Quick Stop
x 0 1 x
aB
Braking ended without
command Disable Voltage
Disable Voltage
x x
aC
Error occurred
Internal transition
aD
Error handling is ended
Internal transition
aE
Error eliminated + Fault
Reset command
Fault Reset
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Perform self-test
Activation of CAN
communication
Bit 7 =
01
0 x
Switching on the output
stage
Control in accordance with
set operating mode
Output stage is blocked.
Motor rotates freely.
Output stage is blocked.
Motor rotates freely.
–
Output stage is blocked.
Motor rotates freely.
Output stage is blocked.
Motor rotates freely.
Output stage is blocked.
Motor rotates freely.
Braking is initiated in
accordance with
quick_stop_option_code.
Output stage is blocked.
Motor rotates freely.
For uncritical errors, reaction
in accordance with
fault_reaction_option_code.
With critical errors, transition
aD follows
Output stage is blocked.
Motor rotates freely.
Acknowledge error
(with rising edge)
153
6
Device Control
Caution
Output stage blocked …
… means that the power semiconductors (transistors) can no longer be actuated. If this
status is taken with a turning motor, it runs out unbraked. If a mechanical motor brake is
present, it is automatically actuated.
The signal does not guarantee that the motor is really voltage-free.
Caution
Output stage enabled …
… means that the motor is actuated and controlled corresponding to the selected operating mode. An existing mechanical motor brake will be released automatically. In case
of a defect or incorrect parametrisation (motor current, number of poles, resolver offset
angle, etc.), this can result in uncontrolled behaviour of the drive.
6.1.3
Control word (controlword)
Object 6040h: controlword
With the controlword, the current status of the motor controller can be revised or a specific action (e.g.
start of homing) triggered directly. The function of bits 4, 5, 6 and 8 depends on the current operating
mode (modes_of_operation) of the motor controller, which is explained after this chapter.
Index
6040h
Name
controlword
Object Code
VAR
Data Type
UINT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
yes
–
–
0
154
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
Bit
Value
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0001h
0002h
0004h
0008h
0010h
0020h
0040h
0080h
0100h
0200h
0400h
0800h
1000h
2000h
4000h
8000h
Tab. 6.3
Function
Control of the status transitions.
(These bits are evaluated together)
new_set_point/start_homing_operation/enable_ip_mode
change_set_immediately
absolute/relative
reset_fault
halt
reserved – set to 0
reserved – set to 0
reserved – set to 0
reserved – set to 0
reserved – set to 0
reserved – set to 0
reserved – set to 0
Bit assignment of the controlword
As already comprehensively described, status transitions can be carried out with the bits 0 … 3. The
commands necessary for this are presented again here in an overview. The Fault Reset command is
generated by bit 7 through a positive edge change (from 0 to 1).
Command:
Bit 7
0008h
Bit 3
0008h
Bit 2
0004h
Bit 1
0002h
Bit 0
0001h
Shutdown
Switch On
Disable Voltage
Quick Stop
Disable Operation
Enable Operation
Fault Reset
x
x
x
x
x
x
01
x
x
x
x
0
1
x
1
1
x
0
1
1
x
1
1
0
1
1
1
x
0
1
x
x
1
1
x
Tab. 6.4
Overview of all commands (x = not relevant)
As some status modifications require a certain amount of time, all status modifications
triggered via the controlword must be read back via the statusword. Only when the requested status can also be read in the statusword may a further command be written via
the controlword.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
155
6
Device Control
The remaining bits of the controlwords are explained in the following. Some bits have different significance, depending on the operating mode (modes_of_operation), i.e. whether the motor controller is
speed- or torque-controlled, for example:
controlword
Bit
4
Function
Description
Dependent on modes_of_operation
new_set_point
In the Profile Position Mode:
A rising edge signals to the motor controller that a
new positioning task should be undertaken. for
this, see unconditionally chapter 7.3.
start_homing_operation
In the Homing Mode:
A rising edge causes the parametrised reference
travel to start. A falling edge interrupts a running
reference travel prematurely.
enable_ip_mode
In the Interpolated Position Mode:
This bit must be set when the interpolation data
records are supposed to be evaluated. It is acknowledged through the bit ip_mode_active in the
statusword. unconditionally also chapter 7.4.
5
change_set_immediately
6
relative
7
reset_fault
Only in the Profile Position Mode:
If this bit is not set, any positioning tasks currently
running will be worked off before any new one is
begun. If the bit is set, an ongoing positioning is
interrupted immediately and replaced by the new
positioning task. for this, see unconditionally
chapter 7.3.
Only in the Profile Position Mode:
If the bit is set, the motor controller obtains the
target position (target_position) of the current
positioning task relative to the setpoint position
(position_demand_value) of the position controller.
In the transition from zero to one, the motor controller tries to acknowledge the existing errors.
This is only successful if the cause of the error has
been resolved.
156
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
controlword
Bit
Function
Description
8
halt
In the Profile Position Mode:
If the bit is set, the ongoing positioning is interrupted. Braking is with the profile_deceleration. After
the process is ended, the bit target_reached is set
in the statusword. Deletion of the bit has no effect.
In the Profile Velocity Mode:
If the bit is set, the speed is reduced to zero. Braking is with the profile_deceleration. Deletion of the
bit causes the motor controller to accelerate
again.
In the Profile Torque Mode:
If the bit is set, the torque is lowered to zero. This
occurs with the torque_slope. Deletion of the bit
causes the motor controller to accelerate again.
In the Homing Mode:
If the bit is set, the ongoing reference travel is interrupted. Deletion of the bit has no effect.
Tab. 6.5
controlword bit 4 … 8
6.1.4
Read-out of the motor controller status
Just as various status transitions can be triggered via the combination of several bits of the controlwords, the status of the motor controller can be read out via the combination of various bits of the
statusword.
The following table lists the possible statuses of the status diagram as well as the related bit combination, with which they are displayed in the statusword.
Status
Bit 6
0040h
Bit 5
0020h
Bit 3
0008h
Bit 2
0004h
Bit 1
0002h
Bit 0
0001h
Mask
Value
Not_Ready_To_Switch_On
Switch_On_Disabled
Ready_to_Switch_On
Switched_On
OPERATION_ENABLE
QUICK_STOP_ACTIVE
Fault_Reaction_Active
Fault
FAULT (in accordance with
CiA402)1)
0
1
0
0
0
0
0
0
0
x
x
1
1
1
0
x
x
x
0
0
0
0
0
0
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
1
1
1
1
0
004Fh
004Fh
006Fh
006Fh
006Fh
006Fh
004Fh
004Fh
004Fh
0000h
0040h
0021h
0023h
0027h
0007h
000Fh
0008h
0008h
Tab. 6.6
Device status (x = not relevant)
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
157
6
Device Control
EXAMPLE
The above example shows which bits in the controlword need to be set in order to enable the motor
controller. Now the newly written status should be read out of the statusword:
Transition from SWITCH_ON_DISABLED to OPERATION_ENABLE:
1. Write status transition 2 into the controlword.
2. Wait until the status READY_TO_SWITCH_ON is displayed in the statusword.
Transition 2: controlword = 0006h
Wait until (statusword & 006Fh) = 0021h1)
3. Status transition 3 and 4 can be written combined into the controlword.
4. Wait until the status OPERATION_ENABLE is displayed in the statusword.
Transition 3+4: controlword = 000Fh
Wait until (statusword & 006Fh) = 0027h1)
Note:
The example assumes that no further bits are set in the controlword (for the transitions, only the bits
0 … 3 are important).
1)
To identify the statuses, bits that are not set must also be evaluated (see table). For that reason, the statusword must be
masked correspondingly.
6.1.5
Status words (statuswords)
Object 6041h: statusword
Index
6041h
Name
statusword
Object Code
VAR
Data Type
UINT16
Access
PDO Mapping
Units
Value Range
Default Value
ro
yes
–
–
–
158
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
Bit
Value
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0001h
0002h
0004h
0008h
0010h
0020h
0040h
0080h
0100h
0200h
0400h
0800h
1000h
2000h
4000h
8000h
Tab. 6.7
Function
Status of the motor controller ( Tab. 6.6).
(These bits must be evaluated together.)
voltage_enabled
Status of the motor controller ( Tab. 6.6).
warning
drive_is_moving
remote
target_reached
internal_limit_active
set_point_acknowledge/speed_0/homing_attained/ip_mode_active
following_error/homing_error
manufacturer_statusbit
Drive referenced
Bit allocation in the status word
All bits of the statusword are unbuffered. They represent the current device status.
Besides the motor controller status, various events are displayed in the statusword, i.e. a specific
event, such as following error, is assigned to each bit. The individual bits have the following significance
thereby:
statusword
Bit
Function
4
Tab. 6.8
voltage_enabled
Description
This bit is set when the output stage transistors are switched on.
If bit 7 is set in the object 6510h_F0h (compatibility_control),
( chap. 5.2) the following applies:
This bit is set if the output stage transistors are switched on.
statusword bit 4
Warning
In case of a defect, the motor can still be powered.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
159
6
Device Control
statusword
Bit
Function
5
7
8
9
10
11
12
If the bit is deleted, the drive carries out a Quick Stop in
accordance with quick_stop_option_code.
warning
This bit shows that a warning is active.
drive_is_moving
This bit is set independently of modes_of_operation when the
current actual speed (velocity_actual_value) of the drive is
outside the related tolerance window (velocity_threshold).
remote
This bit shows that the output stage of the motor controller can
be enabled via the CAN network. It is set when the controller
enable logic is correspondingly set via the object enable_logic.
Dependent on modes_of_operation.
target_reached
In the Profile Position Mode:
The bit is set when the current target position is reached and the
current position (position_ actual_value) is located in the
parametrised position window (position_window).
It is also set when the drive comes to a standstill with Stop bit
set.
It is deleted as soon as a new target is specified.
In the Profile Velocity Mode
The bit is set when the speed (velocity_actual_value) of the
drive is in the tolerance window (velocity_window,
velocity_window_time).
internal_limit_active
This bit shows that the I2t limitation is active.
Dependent on modes_of_operation.
set_point_acknowledge In the Profile Position Mode
This bit is set when the motor controller has recognised the set
bit new_set_point in the controlword. It is deleted again after
the bit new_set_point in the controlword has been set to zero.
for this, see unconditionally also chapter 7.3
speed_0
In the Profile Velocity Mode
This bit is set when the current actual speed
(velocity_actual_value) of the drive is within the related
tolerance window (velocity_threshold).
homing_attained
In the Homing Mode:
This bit is set when homing has been ended without error.
In the Interpolated Position Mode:
This bit shows that interpolation is active and the interpolation
data records are being evaluated. It is set when requested by
the bit enable_ip_mode in the controlword. unconditionally
also chapter 7.4.
ip_mode_active
160
Description
quick_stop
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
statusword
Bit
Function
13
14
15
Tab. 6.9
Description
Dependent on modes_of_operation.
following_error
In the Profile Position Mode:
his bit is set when the current actual position
(position_actual_value) differs from the target position
(position_demand_value) so much that the difference lies
outside the parametrised tolerance window
(following_error_window, following_error_time_out).
homing_error
In the Homing Mode:
This bit is set when the reference travel has been interrupted
(Halt bit), both limit switches respond simultaneously or the
limit switch search run that has already been performed is
greater than the specified positioning space
(min_position_limit, max_position_limit).
manufacturer_statusbit Manufacturer-specific
The significance of this bit can be configured:
It can be set when any bit of the manufacturer_statusword_1is
set or reset. on this also chap. 6.1.5 Object 2000h.
Drive referenced
The bit is set when the controller is referenced.
This is the case if either homing has been successfully
performed or no homing is needed due to the connected
encoder system (e.g. with an absolute encoder).
statusword bit 5 … 15
Object 2000h: manufacturer_statuswords
To be able to represent additional controller statuses that do not have to be present in the – often cyclically queried – statusword, the object group manufacturer_statuswords is introduced.
Index
2000h
Name
manufacturer_statuswords
Object Code
RECORD
No. of Elements
1
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
01h
manufacturer_statusword_1
UINT32
ro
yes
–
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
161
6
Device Control
Bit
Value
0
1
2
…
31
00000001h is_referenced
00000002h commutation_valid
00000004h ready_for_enable
Tab. 6.10
Name
80000000h –
Bit allocation in the manufacturer_statusword_1
Bit
Function
Description
0
is_referenced
1
commutation_valid
2
ready_for_enable
The bit is set when the controller is referenced. This is the
case if either homing has been successfully performed or
no homing is needed due to the connected encoder system (e.g. with an absolute encoder).
The bit is set if the commutation information is valid. It is
helpful in particular for encoder systems without commutation information (e.g. linear motors), since there the
automatic commutation finding can take some time. If
this bit is monitored, a timeout of the control system can
be prevented when release of the controller is prevented.
The bit is set if all conditions to enable the controller are
present and only the controller enable itself is lacking.
The following conditions must be present:
– The drive is error free.
– The intermediate circuit is loaded.
– The angle encoder evaluation is ready.
No processes (e.g. serial transmission) are active that
prevent release.
– No blocking process is active (e.g. the automatic motor parameter identification).
Tab. 6.11 Bit allocation in the manufacturer_statusword_1
With the help of the objects manufacturer_status_masks and manufacturer_status_invert, one or more
bits of the manufacturer_statuswords are shown in bit 14 (manufacturer_statusbit) of the statusword
(6041h). All bits of the manufacturer_statusword_1 can be inverted through the corresponding bit in
manufacturer_status_invert_1. As a result, bits can also be monitored on the “Reset” status. After
inverting, the bits are masked, i.e. only if the corresponding bit is set in manufacturer_status_mask_1
is the bit evaluated further. If at least one bit is set after masking, bit 14 of the statusword is also set.
162
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
The following illustration shows this through an example:
Bit Bit Bit Bit Bit
0 1 2 3 4 …
…
Bit Bit Bit Bit Bit
27 28 29 30 31
0
0
0
0
0
Manufacturer_
statusword_1
2000h_01h
…
0
1
1
0
0
Manufacturer_
status_invert_1
200Ah_01h
…
…
0
1
1
0
0
0
…
…
0
0
1
0
0
0
…
…
0
0
1
0
0
1
1
1
1
0
0
0
1
1
0
…
= 1
1
0
0
0
0
1
0
1
= 0
1
0
0
Manufacturer_
status_mask_1
2005h_01h
or
Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
X
X
X
X
X
X
X
X
X
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
X
X
X
X
X
1
X
statusword
6041h_00h
163
6
Device Control
EXAMPLE
a) Bit 14 of the statusword is supposed to be set if the drive is referenced.
Drive referenced is bit 0 of the manufacturer_statusword_1
manufacturer_status_invert = 0x00000000
manufacturer_status_mask = 0x00000001 (bit 0)
b) Bit 14 of the statusword is supposed to be set if the drive has no valid commutation position.
Valid commutation position is bit 1 of the manufacturer_statusword_1.
This bit must be inverted so it will be set if the commutation information is invalid:
manufacturer_status_invert = 0x00000002 (bit 1)
manufacturer_status_mask = 0x00000002 (bit 1)
c) Bit 14 of the statusword is supposed to be set if the drive is not ready for release OR the drive is
referenced.
Valid commutation position is bit 2 of the manufacturer_statusword_1.
Drive referenced is bit 0. Bit 2 must be inverted so that it will be set if the drive is not ready for
release:
manufacturer_status_invert = 0x00000004 (bit 2)
manufacturer_status_mask = 0x00000005 (bit 2, bit 0)
Object 2005h: manufacturer_status_masks
This object group establishes which set bits of the manufacturer_statuswords are shown in the statusword. for this also chapter 6.1.5.
Index
2005h
Name
manufacturer_status_masks
Object Code
RECORD
No. of Elements
1
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
01h
manufacturer_status_mask_1
UINT32
rw
yes
–
–
0x00000000
164
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
Object 200Ah: manufacturer_status_invert
This object group establishes which bits of the manufacturer_statuswords are shown inverted in the
statusword. for this also chapter 6.1.5.
Index
200Ah
Name
manufacturer_status_invert
Object Code
RECORD
No. of Elements
1
Sub-Index
Description
Data Type
Access
PDO Mapping
Units
Value Range
Default Value
01h
manufacturer_status_invert_1
UINT32
rw
yes
–
–
0x00000000
6.1.6
Description of the additional objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
605Bh
605Ch
605Ah
605Eh
VAR
VAR
VAR
VAR
shutdown_option_code
disable_operation_option_code
quick_stop_option_code
fault_reaction_option_code
INT16
INT16
INT16
INT16
rw
rw
rw
rw
Object 605Bh: shutdown_option_code
The object shutdown_option_code specifies how the motor controller behaves with status transition 8
(from OPERATION ENABLE to READY TO SWITCH ON). The object shows the implemented behaviour of
the motor controller. It cannot be changed.
Index
605Bh
Name
shutdown_option_code
Object Code
VAR
Data Type
INT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
–
0
0
Value
Significance
0
The output stage is switched off, and the motor is freely rotatable
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
165
6
Device Control
Object 605Ch: disable_operation_option_code
The object disable_operation_option_code specifies how the motor controller behaves with status
transition 5 (from OPERATION ENABLE to SWITCH ON). The object shows the implemented behaviour of
the motor controller. It cannot be changed.
Index
605Ch
Name
disable_operation_option_code
Object Code
VAR
Data Type
INT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
–
-1
-1
Value
Significance
-1
Braking with quickstop_deceleration
Object 605Ah: quick_stop_option_code
The parameter quick_stop_option_code specifies how the motor controller behaves with a Quick Stop.
The object shows the implemented behaviour of the motor controller. It cannot be changed.
Index
605Ah
Name
quick_stop_option_code
Object Code
VAR
Data Type
INT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
–
2
2
Value
Significance
2
Braking with quickstop_deceleration
166
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
6
Device Control
Object 605Eh: fault_reaction_option_code
The object fault_reaction_option_code specifies how the motor controller behaves with an error (fault).
Since the error response in the CMMP series is dependent on the respective error, this object cannot be
parametrised and always returns 0. To change the error response of the individual errors chapter
5.18, error management.
Index
605Eh
Name
fault_reaction_option_code
Object Code
VAR
Data Type
INT16
Access
PDO Mapping
Units
Value Range
Default Value
rw
no
–
0
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
167
7
Operating modes
7
Operating modes
7.1
Setting the operating mode
7.1.1
Overview
The motor controller can be placed into a number of operating modes. Only some are specified in detail
under CANopen:
–
–
–
–
–
Torque-controlled mode
Controlled RPM mode
Homing
Positioning mode
Synchronous position specification
7.1.2
–
–
–
–
–
Profile torque mode
Profile velocity mode
Homing mode
Profile position mode
Interpolated position mode
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
6060h
6061h
VAR
VAR
modes_of_operation
modes_of_operation_display
INT8
INT8
wo
ro
Object 6060h: modes_of_operation
The object modes_of_operation sets the operating mode of the motor controller.
Index
6060h
Name
modes_of_operation
Object Code
VAR
Data Type
INT8
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
1, 3, 4, 6, 7
–
168
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Value
Significance
1
3
4
6
7
Profile Position Mode (position controller with positioning mode)
Profile Velocity Mode (speed regulator with setpoint value ramp)
Profile Torque Mode (torque controller with setpoint value ramp)
Homing Mode (reference travel)
Interpolated Position Mode
The current operating mode can only be read in the object modes_of_operation_display!
Since a change in operating mode can take some time, one must wait until the newly
selected mode appears in the object modes_of_operation_display.
Object 6061h: modes_of_operation_display
In the object modes_of_operation_display, the current operating mode of the motor controller can be
read. If an operating mode is set via the object 6060h, besides the actual operating mode, the setpoint
value activations (setpoint value selector) needed for operation of the motor controller under CANopen
must also be made. These are:
Selector
Profile Velocity Mode
Profile Torque Mode
A
B
C
Speed setpoint value (fieldbus 1)
Torque limitation, if necessary
Speed setpoint value (synchronous
speed)
Torque setpoint value (fieldbus 1)
Speed limitation, if necessary
inactive
In addition, the setpoint value ramp is always switched on. Only if these activations are set in the stated
way will one of the CANopen operating modes be returned. If these settings are revised, with the parametrisation software, for example, a respective “user” operating mode is returned to show that the
selectors have been changed.
Index
6061h
Name
modes_of_operation_display
Object Code
VAR
Data Type
INT8
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
–
see table
3
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
169
7
Operating modes
Value
Significance
-1
-11
-13
-14
1
3
4
6
7
Invalid operating mode or change in operating mode
User Position Mode
User Velocity Mode
User Torque Mode
Profile Position Mode (position controller with positioning mode)
Profile Velocity Mode (speed regulator with setpoint value ramp)
Profile Torque Mode (torque controller with setpoint value ramp)
Homing Mode (reference travel)
Interpolated Position Mode
The operating mode can only be set via the object modes_of_operation. Since a change in
operating mode can take some time, one must wait until the newly selected mode
appears in the object modes_of_operation_display. During this time, “Invalid operating
mode” (-1) may be displayed briefly.
7.2
Operating mode reference travel (homing mode)
7.2.1
Overview
This chapter describes how the motor controller searches for the initial position (also called point of
reference, reference point or zero point). There are various methods to determine this position,
whereby either the limit switch can be used at the end of the positioning range or a reference switch
(zero-point switch) within the possible travel distance. To achieve a reproducibility that is as large as
possible, the zero pulse of the angle encoder used (resolver, incremental encoder, etc.) can be included
with some methods.
controlword
Homing
homing_speeds
statusword
homing_acceleration
position_demand_value
homing_offset
Fig. 7.1
Reference travel
The user can determine the speed, acceleration and type of reference travel . With the object
home_offset, the zero position of the drive can be displaced to any position desired.
170
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
There are two reference travel speeds. The higher search velocity (speed_during_search_for_switch) is
used to find the limit switch or the reference switch. Then, to exactly determine the position of the
switch edge, the system switches to crawl speed (speed_during_search_for_zero).
If the drive should not be homed again, but only the position set to a prespecified value, the object
2030h (set_position_absolute) can be used page 113.
The drive to the zero position under CANopen is normally not a component of the reference travel. If all required variables are know to the motor controller (e.g. because it
already knows the position of the zero pulse), no physical movement is performed.
This behaviour can be revised through the object 6510h_F0h (compatibility_control,
chap. 5.2) so that travel to zero is always executed.
7.2.2
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
607Ch
6098h
6099h
609Ah
2045h
VAR
VAR
ARRAY
VAR
VAR
home_offset
homing_method
homing_speeds
homing_acceleration
homing_timeout
INT32
INT8
UINT32
UINT32
UINT16
rw
rw
rw
rw
rw
Affected objects from other chapters
Index
Object
Name
Type
Chapter
6040h
6041h
VAR
VAR
controlword
statusword
UINT16
UINT16
6.1.3 Control word (controlword)
6.1.5 Status words (statuswords)
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
171
7
Operating modes
Object 607Ch: home_offset
The object home_offset establishes the shift of the zero position compared to the determined reference position.
Home
Position
Zero
Position
home_offset
Fig. 7.2
Home Offset
Index
607Ch
Name
home_offset
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
position units
–
0
Object 6098h: homing_method
A series of different methods are provided for reference travel. Through the object homing_method, the
variant needed for the application can be selected. There are four possible homing signals: the negative
and positive limit switch, the reference switch and the (periodic) zero pulse of the angle encoder. In
addition, the motor controller can perform reference travel to the negative or positive stop completely
without any additional signal. If a method for homing is determined through the object
homing_method, the following settings are made:
– The reference source (neg./pos. limit switch, reference switch, neg./pos. stop)
– The direction and process of homing
– The type of evaluation of the zero pulse by the angle encoder used
Index
6098h
Name
homing_method
Object Code
VAR
Data Type
INT8
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
172
-18, -17, -2, -1, 1, 2, 7, 11, 17, 18, 23, 27, 32, 33, 34, 35
17
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Value
Motion
Objective
Point of reference for zero
-18
-17
-2
-1
1
2
7
11
17
18
23
27
33
34
35
Positive
Negative
Positive
Negative
Negative
Positive
Positive
Negative
Negative
Positive
Positive
Negative
Negative
Positive
Stop
Stop
Stop
Stop
Limit switch
Limit switch
Reference switch
Reference switch
Limit switch
Limit switch
Reference switch
Reference switch
Zero pulse
Zero pulse
No travel
Stop
Stop
Zero pulse
Zero pulse
Zero pulse
Zero pulse
Zero pulse
Zero pulse
Limit switch
Limit switch
Reference switch
Reference switch
Zero pulse
Zero pulse
Current actual position
The homing_method can only be set when homing is not active. Otherwise, an error message
( chapter 3.5) is returned.
The process of the individual methods is described in detail in chapter 7.2.3.
Object 6099h: homing_speeds
This object determines the speeds used during the reference travel.
Index
6099h
Name
homing_speeds
Object Code
ARRAY
No. of Elements
2
Data Type
UINT32
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
speed_during_search_for_switch
rw
yes
speed units
–
100 min-1
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
173
7
Operating modes
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
speed_during_search_for_zero
rw
yes
speed units
–
10 min-1
If bit 6 is set in the object compatibility_control, ( chap. 5.2), after homing travel to zero
is performed.
If this bit is set and the object speed_during_search_for_switch is written, both the speed
for the switch search and the speed for the travel to zero are written.
Object 609Ah: homing_acceleration
The object homing_acceleration determines the acceleration that is used during homing for all
acceleration and braking processes.
Index
609Ah
Name
homing_acceleration
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
acceleration units
–
1000 min-1/s
Object 2045h: homing_timeout
Homing can be monitored for maximum execution time. In addition, the maximum execution time can
be specified with the object homing_timeout. If this time is exceeded without homing having been
ended, error 11-3.
Index
2045h
Name
homing_timeout
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
no
ms
0 (off ), 1 … 65535
60000
174
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
7.2.3
Reference Travel Processes
The various reference travel methods are depicted in the following illustrations.
Method 1: Negative limit switch with zero pulse evaluation
With this method, the drive initially moves relatively quickly in the negative direction until it reaches the
negative limit switch. This is represented in the graph by the rising edge. The drive then moves back
slowly and searches for the precise position of the limit switch. The zero position refers to the first zero
pulse of the angle encoder in the positive direction from the limit switch.
Index pulse
Negative limit switch
Fig. 7.3
Reference travel to the negative limit switch with evaluation of the zero pulse
Method 2: Positive limit switch with zero pulse evaluation
With this method, the drive initially moves relatively quickly in the positive direction until it reaches the
positive limit switch. This is represented in the graph by the rising edge. The drive then moves back
slowly and searches for the precise position of the limit switch. The zero position refers to the first zero
pulse of the angle encoder in the negative direction from the limit switch.
Index pulse
Positive limit switch
Fig. 7.4
Reference travel to the positive limit switch with evaluation of the zero pulse
Methods 7 and 11: Reference switch and zero pulse evaluation
These two methods use the reference switch, which is active only over part of the distance. These
reference methods are especially suitable for round-axle applications where the reference switch is
activated once per revolution.
With method 7, the drive initially moves in the positive direction, and with method 11 in the negative
direction. The zero position refers to the first zero pulse in negative or positive direction from the reference switch, dependent on the direction of movement. This is shown in the following two illustrations.
Index pulse
Reference
switch
Fig. 7.5
Homing to the reference switch with evaluation of the zero pulse with positive initial
movement
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
175
7
Operating modes
For homing to the reference switch, the limit switches initially serve to reverse the
direction of searching. An error is triggered if the opposite limit switch is then reached.
Index pulse
Reference
switch
Fig. 7.6
Homing to the reference switch with evaluation of the zero pulse with negative initial
movement
Method 17: Homing to the negative limit switch
With this method, the drive initially moves relatively quickly in the negative direction until it reaches the
negative limit switch. This is represented in the graph by the rising edge. The drive then moves back
slowly and searches for the precise position of the limit switch. The zero position refers to the falling
edge of the negative limit switch.
Negative limit switch
Fig. 7.7
Homing to the negative limit switch
Method 18: Homing to the positive limit switch
With this method, the drive initially moves relatively quickly in the positive direction until it reaches the
positive limit switch. This is represented in the graph by the rising edge. The drive then moves back
slowly and searches for the precise position of the limit switch. The zero position refers to the falling
edge of the positive limit switch.
Positive limit switch
Fig. 7.8
176
Homing to the positive limit switch
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Methods 23 and 27: Homing to the reference switch
These two methods use the reference switch, which is active only over part of the distance. This homing method is especially suited to rotary axis applications, where the reference switch is activated once
per revolution.
With method 23, the drive initially moves in the positive direction, and with method 27 in the negative
direction. The zero position refers to the edge of the reference switch. This is shown in the following
two illustrations.
Reference
switch
Fig. 7.9
Homing to the reference switch with positive initial movement
For homing to the reference switch, the limit switches initially serve to reverse the direction of searching. An error is triggered if the opposite limit switch is then reached.
Reference
switch
Fig. 7.10
Homing to the reference switch with negative initial movement
Method –1: Negative stop with zero pulse evaluation
With this method, the drive moves in the negative direction until it reaches the stop. The I2t integral of
the motor rises hereby to a maximum 90 %. The stop must be mechanically dimensioned so that it does
not suffer damage in the parametrised maximum current. The zero position refers to the first zero pulse
of the angle encoder in the positive direction from the stop.
Index pulse
Fig. 7.11
Reference travel to the negative stop with evaluation of the zero pulse
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
177
7
Operating modes
Method –2: Positive stop with zero pulse evaluation
With this method, the drive moves in the positive direction until it reaches the stop. The I2t integral of
the motor rises hereby to a maximum 90 %. The stop must be mechanically dimensioned so that it does
not suffer damage in the parametrised maximum current. The zero position refers to the first zero pulse
of the angle encoder in the negative direction from the stop.
Index pulse
Fig. 7.12
Reference travel to the positive stop with evaluation of the zero pulse
Method –17: Reference travel to the negative stop
With this method, the drive moves in the negative direction until it reaches the stop. The I2t integral of
the motor rises hereby to a maximum 90 %. The stop must be mechanically dimensioned so that it does
not suffer damage in the parametrised maximum current. The zero position refers directly to the stop.
Fig. 7.13
Reference travel to the negative stop
Method –18: Reference travel to the positive stop
With this method, the drive moves in the positive direction until it reaches the stop. The I2t integral of
the motor rises hereby to a maximum 90 %. The stop must be mechanically dimensioned so that it does
not suffer damage in the parametrised maximum current. The zero position refers directly to the stop.
Fig. 7.14
Reference travel to the positive stop
Methods 33: reference travel in a negative direction to the zero pulse
With method 33, the direction of homing is negative. The zero position refers to the first zero pulse
from the angle encoder in the direction of search.
Index pulse
Fig. 7.15
178
Reference travel in a negative direction to the zero pulse
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Method 34: Reference travel in a positive direction to the zero pulse
With method 34, the direction of homing is positive. The zero position refers to the first zero pulse from
the angle encoder in the direction of search.
Index pulse
Fig. 7.16
Reference travel in a positive direction to the zero pulse
Method 35: Reference travel to the current position
With method 35, the zero position refers to the current position.
If the drive should not be homed again, but only the position set to a prespecified value, the object
2030h (set_position_absolute) can be used. page 113.
Fig. 7.17
Homing to current position
7.2.4
Control of Reference Travel
Homing is controlled and monitored through the controlword / statusword. The start is made by setting
bit 4 in the controlword. Successful completion of the travel is shown by a set bit 12 in the object
statusword. A set bit 13 in the object statusword shows that an error has occurred during homing. The
cause of the error can be determined via the objects error_register and pre_defined_error_field.
Bit 4
Significance
1
01
1
10
Reference travel is not active
Start Homing
Reference travel is active
Reference travel interrupted
Tab. 7.1
Description of the bits in the controlword
Bit 13
Bit 12
Significance
0
0
1
1
0
1
0
1
Reference travel is not completed yet
Reference travel performed successfully
Reference travel not performed successfully
Prohibited status
Tab. 7.2
Description of the bits in the status word
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
179
7
Operating modes
7.3
Positioning Operating Mode (Profile Position Mode)
7.3.1
Overview
The structure of this operating mode is evident in Fig. 7.18:
The target position (target_position) is passed on to the curve generator. This generates a setpoint
position value (position_demand_value) for the position controller, which is described in the Position
Controller chapter (Position Control Function, chapter 6). These two function blocks can be set independently of each other.
Trajectory
Generator
Parameters
target_position
(607Ah)
target_position
(607Ah)
Fig. 7.18
Trajectory
Generator
[position units]
Position Control
Law Parameters
Position_
demand_value
(60Fdh)
Position
Control
Function
Limit
Function
Multiplier
position_range_limit
(607Bh)
software_position_limit
(607Dh)
home_offset
(607Ch)
position_factor
(6093h)
polarity
(607Eh)
control_effort
(60FAh)
position
Curve generator and position controller
All input variables of the curve generator are converted with the variables of the factor group
( chap. 5.3) into the internal units of the controller. The internal variables are marked here with an
asterisk and are normally not needed by the user.
180
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
7.3.2
Description of the objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
607Ah
6081h
6082h
6083h
6084h
6085h
6086h
VAR
VAR
VAR
VAR
VAR
VAR
VAR
target_position
profile_velocity
end_velocity
profile_acceleration
profile_deceleration
quick_stop_deceleration
motion_profile_type
INT32
UINT32
UINT32
UINT32
UINT32
UINT32
INT16
rw
rw
rw
rw
rw
rw
rw
Affected objects from other chapters
Index
Object
Name
Type
Chapter
6040h
6041h
605Ah
607Eh
6093h
6094h
6097h
VAR
VAR
VAR
VAR
ARRAY
ARRAY
ARRAY
controlword
statusword
quick_stop_option_code
polarity
position_factor
velocity_encoder_factor
acceleration_factor
INT16
UINT16
INT16
UINT8
UINT32
UINT32
UINT32
6 Device control
6 Device control
6 Device control
5.3 Conversion factors
5.3 Conversion factors
5.3 Conversion factors
5.3 Conversion factors
Object 607Ah: target_position
The object target_position (target position) determines which position of the motor controller should
be traveled to. The current setting for speed, acceleration, brake delay and type of travel profile
(motion_profile_type) etc. must be considered thereby. The target position (target_position) is interpreted either as an absolute or relative specification (controlword, bit 6).
Index
607Ah
Name
target_position
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
position units
–
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
181
7
Operating modes
Object 6081h: profile_velocity
The object profile_velocity specifies the speed that is normally reached at the end of the acceleration
ramp during positioning. The object profile_velocity is specified in speed units.
Index
6081h
Name
profile_velocity
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
speed units
–
1000
Object 6082h: end_velocity
The object end_velocity (end speed) defines the speed the drive must have when it reaches the target
position (target_position). Normally, this object must be set to zero so that the motor controller stops
when it reaches the target position (target_position). For continuous positioning, a speed different
from zero can be specified. The object end_velocity is specified in the same units as the object
profile_velocity.
Index
6082h
Name
end_velocity
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
speed units
–
0
Object 6083h: profile_acceleration
The object profile_acceleration specifies the acceleration with which the motor accelerates to the
nominal value. It is specified in user-defined acceleration units ( chapter 5.3
Conversion factors (factor group)).
Index
6083h
Name
profile_acceleration
Object Code
VAR
Data Type
UINT32
182
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
acceleration units
–
10000 min-1/s
Object 6084h: profile_deceleration
The object profile_deceleration specifies the deceleration with which the motor is braked. It is
specified in user-defined acceleration units ( chapter 5.3 Conversion factors (factor group)).
Index
6084h
Name
profile_deceleration
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
acceleration units
–
10000 min-1/s
Object 6085h: quick_stop_deceleration
The object quick_stop_deceleration specifies with which brake delay the motor stops when a quick
stop is carried out ( chapter 6). The object quick_stop_deceleration is specified in the same unit as
the object profile_deceleration.
Index
6085h
Name
quick_stop_deceleration
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
acceleration units
–
14100 min-1/s
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
183
7
Operating modes
Object 6086h: motion_profile_type
The object motion_profile_type is used to select the type of positioning profile.
Index
6086h
Name
motion_profile_type
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
0, 2
0
Value
Curve form
0
2
Linear ramp
Jerk-free ramp
7.3.3
Description of function
There are two possibilities for passing on a target position to the motor controller:
Simple positioning task
If the motor controller has reached a target position, it signals this to the host with the bit target_reached (bit 10 in the object statusword). In this operating mode, the motor controller stops when
it has reached the goal.
Sequence of positioning tasks
After the motor controller has reached a target, it immediately begins travelling to the next target. This
transition can occur smoothly, without the motor controller meanwhile coming to a standstill.
These two methods are controlled through the bits new_set_point and change_set_immediately in the
object controlword and set_point_acknowledge in the object statusword. These bits are in a questionanswer relationship to each other. This makes it possible to prepare a positioning task while another is
still running.
184
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
data_valid
1
4
new_acknowledge
2
5
7
setpoint_acknowledge
6
3
Fig. 7.19
Positioning job transmission from a host
In Fig. 7.19, you can see how the host and the motor controller communicate with each other via the
CAN bus:
First, the positioning data (target position, travel speed, end speed and acceleration) are transmitted to
the motor controller. When the positioning data set has been completely written 1, the host can start
positioning by setting the bit new_set_point in the controlword to “1” 2. After the motor controller
recognises the new data and takes it over into its buffer, it reports this to the host by setting the bit
set_point_acknowledge in the statusword 3.
Then the host can start to write a new positioning data set into the motor controller 4 and delete again
the bit new_set_point 5. Only when the motor controller can accept a new positioning job 6 does it
signal this through a “0” in the set_point_acknowledge bit. Before this, no new positioning may be
started by the host 7.
In Fig. 7.20, a new positioning task is only started after the previous one has been completely finished.
To determine this, the host evaluates the bit target_reached in the object statusword.
Velocity
v2
v1
t0
Fig. 7.20
t1
t2
t3
Time
Simple positioning task
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
185
7
Operating modes
In Fig. 7.21, a new positioning task is already started while the previous one is still in process. The host
already passes the subsequent target on to the motor controller when the motor controller signals with
deletion of the bit set_point_acknowledge that it has read the buffer and started the related positioning. In this way, positioning tasks follow each other seamlessly. For this operating mode, the object
end_velocity should be written over with the same value as the object profile_velocity so that the
motor controller does not briefly brake to zero each time between the individual positioning tasks.
Velocity
v2
v1
t0
Fig. 7.21
t1
t2
Time
Continuous sequence of positioning tasks
If besides the bit new_set_pointthe bit change_set_immediately is also set to “1” in the controlword,
the host instructs the motor controller to start the new positioning task immediately. In this case, a
positioning task already in process is interrupted.
186
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
7.4
Synchronous position specification (interpolated position mode)
7.4.1
Overview
The interpolated position mode (IP) permits specification of setpoint position values in a multi-axis
application of the motor controller. For this, synchronisation telegrams (SYNC) and position setpoints
are specified by a higher-order controller in a fixed time slot pattern (synchronisation interval). Since
the interval is normally greater than one position controller cycle, the motor controller independently
interpolates the data values between two specified position values, as shown in the following diagram.
Position
1
2
t
1
Synchronisation interval
Fig. 7.22
2
Position control interval
Positioning task linear interpolation between two data values
In the following, the objects needed for the interpolated position mode are described first. A subsequent functional description comprehensively covers the activation and sequencing of parameter
setting.
7.4.2
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
60C0h
60C1h
60C2h
60C3h
60C4h
VAR
REC
REC
ARRAY
REC
interpolation_submode_select
interpolation_data_record
interpolation_time_period
interpolation_sync_definition
interpolation_data_configuration
INT16
rw
rw
rw
rw
rw
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
UINT8
187
7
Operating modes
Affected objects from other chapters
Index
Object
Name
Type
Chapter
6040h
6041h
6093h
6094h
6097h
VAR
VAR
ARRAY
ARRAY
ARRAY
controlword
statusword
position_factor
velocity_encoder_factor
acceleration_factor
INT16
UINT16
UINT32
UINT32
UINT32
6 Device control
6 Device control
5.3 Conversion factors
5.3 Conversion factors
5.3 Conversion factors
Object 60C0h: interpolation_submode_select
The type of interpolation is established via the object interpolation_submode_select. Currently, only
the manufacturer-specific variant “Linear Interpolation without Buffer” is available.
Index
60C0h
Name
interpolation_submode_select
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
-2
-2
Value
Interpolation type
-2
Linear Interpolation without Buffer
Object 60C1h: interpolation_data_record
The object record interpolation_data_record represents the actual data record. It consists of an entry
for the position value (ip_data_position) and a control word (ip_data_controlword), which specifies
whether the position value should be interpreted absolutely or relatively. Specification of the control
word is optional. If it is not specified, the position value is interpreted absolutely. If the control word
should also be specified, for reasons of data consistency, first subindex 2 (ip_data_controlword) and
then sub-index 1 (ip_data_position) are written, since data transfer is triggered internally with write
access to ip_data_position.
Index
60C1h
Name
interpolation_data_record
Object Code
RECORD
No. of Elements
2
188
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
ip_data_position
INT32
rw
yes
position units
–
–
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
ip_data_controlword
UINT8
rw
yes
–
0, 1
0
Value
ip_data_controlword
0
1
Absolute position
Relative distance
The internal data transfer takes place with write access to sub-index 1. If sub-index 2
should also be used, it must be written before sub-index 1.
Object 60C2h: interpolation_time_period
The synchronisation interval can be set via the object record interpolation_time_period. Via
ip_time_index, the unit (ms or 1/10 ms) of the interval is established, which is parametrised via
ip_time_units. To achieve synchronisation, the complete controller cascade (current, speed and
position controller) is synchronised up to the external pulse. A change in the synchronisation interval is
therefore effective only after a reset. Therefore, if the interpolation interval is to be revised via the CAN
bus, the parameter set must be saved ( chapter 5.1) and a reset performed ( chapter 6), so that
the new synchronisation interval becomes effective. The synchronisation interval must be maintained
exactly.
Index
60C2h
Name
interpolation_time_period
Object Code
RECORD
No. of Elements
2
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
189
7
Operating modes
Default Value
01h
ip_time_units
UINT8
rw
yes
according to ip_time_index
ip_time_index = -3: 1, 2 … 9, 10
ip_time_index = -4: 10, 20 … 90, 100
--
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
ip_time_index
INT8
rw
yes
–
-3, -4
-3
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Value
ip_time_units is specified in
-3
-4
10-3 seconds (ms)
10-4 seconds (0.1 ms)
A change in the synchronisation interval is effective only after a reset. If the interpolation
interval is to be revised via the CAN bus, the parameter set must be saved and a reset
performed.
Object 60C3h: interpolation_sync_definition
The object interpolation_sync_definition sets the type (synchronize_on_group) and number of
(ip_sync_every_n_event) of synchronisation telegrams per synchronisation interval. For the CMMP
series, only the standard SYNC telegram and 1 SYNC per interval can be set.
Index
60C3h
Name
interpolation_sync_definition
Object Code
ARRAY
No. of Elements
2
Data Type
UINT8
190
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
01h
syncronize_on_group
rw
yes
–
0
0
Value
Significance
0
Use standard SYNC telegram
Sub-Index
Description
Access
PDO mapping
Units
Value Range
Default Value
02h
ip_sync_every_n_event
rw
yes
–
1
1
Object 60C4h: interpolation_data_configuration
Through the object record interpolation_data_configuration, the type (buffer_organisation) and size
(max_buffer_size, actual_buffer_size) of a possibly available buffer as well as access to this
(buffer_position, buffer_clear) can be configured. The size of a buffer element can be read out via the
object size_of_data_record. Although no buffer is available for the interpolation type “Linear interpolation without buffer”‚ access via the object buffer_clear must still be enabled in this case as well.
Index
60C4h
Name
interpolation_data_configuration
Object Code
RECORD
No. of Elements
6
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
01h
max_buffer_size
UINT32
ro
no
–
0
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
191
7
Operating modes
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
actual_size
UINT32
rw
yes
–
0 … max_buffer_size
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
buffer_organisation
UINT8
rw
yes
–
0
0
Value
Significance
0
FIFO
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
buffer_position
UINT16
rw
yes
–
0
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
05h
size_of_data_record
UINT8
wo
yes
–
2
2
192
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
06h
buffer_clear
UINT8
wo
yes
–
0, 1
0
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
Value
Significance
0
1
Delete buffer/access to 60C1h not permitted
Access to 60C1h enabled
7.4.3
Description of function
Preparatory parameter setting
Before the motor controller can be switched into the operating mode interpolated position mode,
various settings must be made: These include setting of the interpolation interval
(interpolation_time_period), that is, the time between two SYNC telegrams, the interpolation type
(interpolation_submode_select) and the type of synchronisation (interpolation_sync_definition). In
addition, access to the position buffer must be enabled via the object buffer_clear.
EXAMPLE
Exercise
Type of interpolation
Time unit
Time interval
Save parameters
Perform reset
Waiting for bootup
Buffer activation
Generate SYNC
CAN object/COB
-2
60C0h, interpolation_submode_select
=
–2
0.1 ms
4 ms
60C2h_02h, interpolation_time_index
60C2h_01h, interpolation_time_units
1010h_01h, save_all_parameters
NMT reset node
Bootup message
60C4h_06h, buffer_clear
SYNC (matrix 4 ms)
=
=
–4
40
=
1
1
Activation of the interpolated position mode and synchronisation
The IP is activated via the object modes_of_operation (6060h). Starting with this time, the motor
controller tries to synchronise itself to the external time grid, which is specified through the SYNC
telegrams. If the motor controller was successfully able to synchronise itself, it reports the operating
mode interpolated position mode in the object modes_of_operation_display (6061h). During
synchronisation, the motor controller reports back invalid mode of operation (-1). If the
SYNC-telegrams are not sent in the right slot pattern after completed synchronisation, the motor
controller switches back into the invalid mode of operation.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
193
7
Operating modes
If the mode of operation is taken up, transfer of position data to the drive can begin. As is logical, the
higher-order controller first reads the current actual position out of the controller and writes it cyclically
into the motor controller as a new setpoint value (interpolation_data_record). Acceptance of data by
the motor controller is activated via handshake bits of the controlword and statusword. By setting the
bit enable_ip_mode in the controlword, the host shows that evaluation of the position data should
begin. The data records are evaluated only when the motor controller acknowledges this via the status
bit ip_mode_selected in the statusword.
In detail, therefore, the following assignment and procedure result:
SYNC
modes_of_operation = 7
modes_of_operation_display = 7
controlword bit 4: enable_ip_mode
controlword bit 12: ip_mode_active
1
1
1
1
2
3
4
5
Item
1 … 5 : Position specifications
Fig. 7.23
Synchronisation and data release
Event
CAN Object
Generate SYNC message
Request of the ip operating mode:
Wait until operating mode is taken
Reading out the current actual position
Writing back as current setpoint position
Start of interpolation
Acknowledgement by motor controller
Changing the current setpoint position in
accordance with trajectory
6060h, modes_of_operation
=
6061h, modes_of_operation_display =
6064h, position_actual_value
60C1h_01h, ip_data_position
6040h, controlword, enable_ip_mode
6041h, statusword, ip_mode_active
60C1h_01h, ip_data_position
194
07
07
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
After the synchronous travel process is ended, deletion of the bit enable_ip_mode prevents further
evaluation of position values.
Then the system can switch into another operating mode, if necessary.
Interruptions of interpolation in case of error
If an ongoing interpolation type (ip_mode_active set) is interrupted by occurrence of a controller error,
the drive first behaves as specified for the respective error (e.g. removal of the controller enable and
change into the status SWITCH_ON_DISABLED).
The interpolation can only be continued through a new synchronisation, since the motor controller must
be brought back into the status OPERATION_ENABLE, through which the bit ip_mode_active is deleted.
7.5
Speed Adjustment Operating Mode (Profile Velocity Mode)
7.5.1
Overview
The speed-regulated operation (Profile Velocity Mode) contains the following subfunctions:
– Setpoint value generation through the ramp generator
– Speed recording through differentiation via the angle encoder
– Speed regulation with appropriate input and output signals
– Limitation of the torque setpoint value (torque_demand_value)
– Monitoring of the actual speed (velocity_actual_value) with the window function/threshold
The significance of the following parameters is described in the Positioning chapter (Profile Position
Mode): profile_acceleration, profile_deceleration, quick_stop.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
195
7
Operating modes
profile_acceleration (6083h)
profile_deceleration (6084h)
quick_stop_deceleration (6085h)
[acceleration
units]
acceleration_factor
(6097h)
[acceleration
units]
[acceleration
units]
Multiplier
Profile
Acceleration
Profile
Deceleration
Multiplier
Quick Stop
Deceleration
velocity_encoder_factor
(6094h)
Profile
Velocity
velocity_demand_value (606Bh)
position_actual_value (6063h)
velocity_demand_value (606Bh)
Differentiation
d/dt
Velocity_actual_value (606Ch)
Velocity
Controller
control effort
velocity_control_parameter_set (60F9h)
velocity_threshold (606Fh)
velocity_actual_value (606Ch)
velocity_threshold (606Fh)
Timer
status_word (6041h)
velocity = 0
Timer
status_word (6041h)
velocity_reached
Window
Comparator
velocity_window_time (606Eh)
velocity_actual_value (606Ch)
velocity_window (606Dh)
Fig. 7.24
196
Window
Comparator
Structure of the speed-regulated operation (profile velocity mode)
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
7.5.2
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
6069h
606Ah
606Bh
202Eh
606Ch
606Dh
606Eh
606Fh
6080h
60FFh
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
velocity_sensor_actual_value
sensor_selection_code
velocity_demand_value
velocity_demand_sync_value
velocity_actual_value
velocity_window
velocity_window_time
velocity_threshold
max_motor_speed
target_velocity
INT32
INT16
INT32
INT32
INT32
UINT16
UINT16
UINT16
UINT32
INT32
ro
rw
ro
ro
ro
rw
rw
rw
rw
rw
Affected objects from other chapters
Index
Object
Name
Type
Chapter
6040h
6041h
6063h
6071h
6072h
607Eh
6083h
6084h
6085h
6086h
6094h
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
ARRAY
controlword
statusword
position_actual_value*
target_torque
max_torque_value
polarity
profile_acceleration
profile_deceleration
quick_stop_deceleration
motion_profile_type
velocity_encoder_factor
INT16
UINT16
INT32
INT16
UINT16
UINT8
UINT32
UINT32
UINT32
INT16
UINT32
6 Device control
6 Device control
5.7 Position controller
7.7 Torque controller
7.7 Torque controller
5.3 Conversion factors
7.3 Positioning
7.3 Positioning
7.3 Positioning
7.3 Positioning
5.3 Conversion factors
Object 6069h: velocity_sensor_actual_value
With the object velocity_sensor_actual_value, the value of a possible speed encoder can be read out in
internal units. A separate tachometer cannot be connected in the CMMP family. Therefore, to determine
the actual speed value, the object 606Ch should be used.
Index
6069h
Name
velocity_sensor_actual_value
Object Code
VAR
Data Type
INT32
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
197
7
Operating modes
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
R/4096 min
–
–
Object 606Ah: sensor_selection_code
The speed sensor can be selected with this object. Currently, no separate speed sensor is planned.
Therefore, only the standard angle encoder can be selected.
Index
606Ah
Name
sensor_selection_code
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
0
0
Object 606Bh: velocity_demand_value
The current speed setpoint value of the speed regulator can be read with this object. It is acted upon by
the nominal value of the ramp and curve generators. If the position controller is activated, its correction
speed is also added.
Index
606Bh
Name
velocity_demand_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
speed units
–
–
198
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Object 202Eh: velocity_demand_sync_value
The target speed of the synchronisation encoder can be read out via this object. This is defined through
the object 2022h synchronization_encoder_select (chap. 5.11). This object is specified in user-defined
increments.
Index
202Eh
Name
velocity_demand_sync_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
no
velocity units
–
–
Object 606Ch: velocity_actual_value
The actual speed value can be read via the object velocity_actual_value .
Index
606Ch
Name
velocity_actual_value
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
speed units
–
–
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
199
7
Operating modes
Object 2074h: velocity_actual_value_filtered
A filtered actual speed value can be read via the object velocity_actual_value_filtered, but it should
only be used for display purposes.
In contrast to velocity_actual_value, velocity_actual_value_filtered is not used for control, but for
spinning protection of the controller. The filter time constant can be set via the object 2073h
(velocity_display_filter_time). Object 2073h: velocity_display_filter_time
Index
2074h
Name
velocity_actual_value_filtered
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
speed units
–
–
velocity_control_filter_time (60F9h_04h)
internal velocity value
Filter
velocity_actual_value (606Ch)
[speed units]
Filter
velocity_actual_value_filtered
(2074h)
[speed units]
velocity_display_filter_time (2073h)
Fig. 7.25
200
Determination of velocity_actual_value and velocity_actual_value_filtered
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Object 606Dh: velocity_window
The object velocity_window is used to set the window comparator. It compares the actual speed value
with the prespecified final speed (object 60FFh: target_velocity). If the difference is less than specified
here for a certain period, the bit 10 target_reached is set in the object statusword. also: object
606Eh (velocity_window_time).
Index
606Dh
Name
velocity_window
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
speed units
0 … 65536 min-1
4 min-1
Object 606Eh: velocity_window_time
The object velocity_window_time is used to set the window comparator along with the object 606Dh:
velocity_window. The speed must lie within the velocity_window for the time specified here so that the
bit 10 target_reached is set in the object statusword.
Index
606Eh
Name
velocity_window_time
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
ms
0 … 4999
0
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
201
7
Operating modes
Object 606Fh: velocity_threshold
The object velocity_threshold specifies from which actual speed value the drive is considered to be
standing still. If the drive exceeds the speed value specified here for a specific time period, bit 12
(velocity = 0) is deleted in the statusword. The time period is determined through the object
velocity_threshold_time.
Index
606Fh
Name
velocity_threshold
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
speed units
0 … 65536 min-1
10
Object 6070h: velocity_threshold_time
The object velocity_threshold_time specifies how long the drive may exceed the specified speed before
bit 12 (velocity = 0) is deleted in the statusword.
Index
6070h
Name
velocity_threshold_time
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
ms
0 … 4999
0
202
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Object 6080h: max_motor_speed
The object max_motor_speed gives the highest allowed speed for the motor in min-1. The object is
used to protect the motor and can be taken from the motor technical data. The speed setpoint value is
limited to this value.
Index
6080h
Name
max_motor_speed
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
min-1
0 … 32768 min-1
32768 min-1
Object 60FFh: target_velocity
The object target_velocity is the setpoint specification for the ramp generator.
Index
60FFh
Name
target_velocity
Object Code
VAR
Data Type
INT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
speed units
–
–
7.6
Speed ramps
Selected as modes_of_operation - profile_velocity_mode; the setpoint value ramp is also activated.
And so it is possible to limit a jump-like setpoint change to a specific speed change per time via the
objects profile_acceleration and profile_deceleration. The controller not only permits specification of
different values for braking deceleration and acceleration, but also differentiation between positive and
negative speed. The following illustration depicts this behaviour:
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
203
7
Operating modes
V
Ramp generator input
Ramp generator output
velocity_deceleration_pos (2090h_03h)
velocity_acceleration_neg (2090h_04h)
velocity_deceleration_neg (2090h_05h)
t
velocity_acceleration_pos (2090h_02h)
Fig. 7.26
Speed ramps
The object group velocity_ramps is available to parametrise these 4 accelerations. Observe that the
objects profile_acceleration and profile_deceleration change the same internal accelerations as the
velocity_ramps. If the profile_acceleration is written, velocity_acceleration_pos and velocity_acceleration_neg are revised together; if the profile_deceleration is written, velocity_acceleration_pos and
velocity_acceleration_neg are revised together. The object velocity_ramps_enable determines whether
or not the setpoint values are guided over the ramp generator.
Index
2090h
Name
velocity_ramps
Object Code
RECORD
No. of Elements
5
Sub-Index
Description
Data Type
Access
PDO mapping
Units
01h
velocity_ramps_enable
UINT8
rw
no
–
0: Setpoint value NOT over the ramp generator
1: Setpoint value over the ramp generator
1
Value Range
Default Value
204
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
02h
velocity_acceleration_pos
INT32
rw
no
acceleration units
–
14 100 min-1/s
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
03h
velocity_deceleration_pos
INT32
rw
no
acceleration units
–
14 100 min-1/s
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
04h
velocity_acceleration_neg
INT32
rw
no
acceleration units
–
14 100 min-1/s
Sub-Index
Description
Data Type
Access
PDO mapping
Units
Value Range
Default Value
05h
velocity_deceleration_neg
INT32
rw
no
acceleration units
–
14 100 min-1/s
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
205
7
Operating modes
7.7
Torque Regulation Operating Mode (Profile Torque Mode)
7.7.1
Overview
This chapter describes torque-regulated operation. This operating mode allows an external torque
setpoint value target_torque, which can be smoothed using the integrated ramp generator, to be specified for the motor controller. It is thus possible for this motor controller to also be used for path control, with which both the position controller and the speed regulator are displaced to an external computer.
target_torque (6071h)
Limit
Function
motor_rated_torque (6076h)
Trajectory
Generator
control effort
torque_slope (6087h)
torque_profile_type (6088h)
controlword (6040h)
max_torque (6072h)
torque_demand
(6074h)
Limit
Function
torque_actual_value
(6077h)
motor_rated_torque (6076h)
current_actual_value
(6078h)
max_current (6073h)
Limit
Function
motor_rated_current (6075h)
Torque
Control
DC_link_voltage
(6079h)
and
Power
Stage
control effort
Motor
max_current (6073h)
motor_rated_current (6075h)
motor_rated_current (6075h)
Fig. 7.27
206
Structure of torque-regulated operation
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
The parameters ramp steepness torque_slope and ramp shape torque_profile_type must be specified
for the ramp generator.
If the bit 8 halt is set in the controlword, the ramp generator lowers the torque down to zero. It rises
correspondingly again to the setpoint torque target_torque when bit 8 is deleted again. In both cases,
the ramp generator takes into account the ramp steepness torque_slope and the ramp shape
torque_profile_type.
All definitions within this document refer to rotatable motors. If linear motors have to be used, all
“torque” objects must refer to a “force” instead. For simplicity, the objects do not appear twice and
their names should not be changed.
The operating modes positioning mode (profile position mode) and speed regulator (profile velocity
mode) need the torque controller to work. That is why it is always necessary to set its parameters.
7.7.2
Description of the Objects
Objects treated in this chapter
Index
Object
Name
Type
Attr.
6071h
6072h
6074h
6076h
6077h
6078h
6079h
6087h
6088h
60F7h
60F6h
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
VAR
RECORD
RECORD
target_torque
max_torque
torque_demand_value
motor_rated_torque
torque_actual_value
current_actual_value
DC_link_circuit_voltage
torque_slope
torque_profile_type
power_stage_parameters
torque_control_parameters
INT16
UINT16
INT16
UINT32
INT16
INT16
UINT32
UINT32
INT16
rw
rw
ro
rw
ro
ro
ro
rw
rw
rw
rw
Affected objects from other chapters
Index
Object
Name
Type
6040h
60F9h
6075h
6073h
VAR
RECORD
VAR
VAR
controlword
motor_parameters
motor_rated_current
max_current
INT16
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Chapter
6 Device Control
5.5 Current Regulator and Motor Adjustment
UINT32 5.5 Current Regulator and Motor Adjustment
UINT16 5.5 Current Regulator and Motor Adjustment
207
7
Operating modes
Object 6071h: target_torque
This parameter is the entry value for the torque regulator in torque-regulated mode (Profile Torque
Mode). It is specified in thousandths of the nominal torque (object 6076h).
Index
6071h
Name
target_torque
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
motor_rated_torque/1000
-32768 … 32768
0
Object 6072h: max_torque
This value represents the motor's maximum permissible torque. It is specified in thousandths of the
nominal torque (object 6076h). If, for example, a 2-fold overloading of the motor is briefly permissible,
the value 2000 is entered here.
The object 6072h: max_torque corresponds with the object 6073h: max_current and may
not be overwritten until the object 6075h: motor_rated_current is overwritten with a valid
value.
Index
6072h
Name
max_torque
Object Code
VAR
Data Type
UINT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
motor_rated_torque/1000
-1000 … 65536
2023
208
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Object 6074h: torque_demand_value
By means of this object, the current nominal torque can be read out in thousands of the nominal torque
(6076h). The internal limitations of the controller (current limit values and I2t monitoring) are hereby
taken into account.
Index
6074h
Name
torque_demand_value
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
motor_rated_torque/1000
---
Object 6076h: motor_rated_torque
This object specifies the nominal torque of the motor. This can be taken from the motor's name plate. It
is entered in the unit 0.001 Nm.
Index
6076h
Name
motor_rated_torque
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
0.001 mNm
–
296
Object 6077h: torque_actual_value
By means of this object, the motor's actual torque can be read out in thousanths of the nominal torque
(object 6076h).
Index
6077h
Name
torque_actual_value
Object Code
VAR
Data Type
INT16
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
209
7
Operating modes
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
motor_rated_torque/1000
–
–
Object 6078h: current_actual_value
By means of this object, the motor's actual current can be read out in thousandths of the nominal current (object 6075h).
Index
6078h
Name
current_actual_value
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
motor_rated_current/1000
–
–
Object 6079h: dc_link_circuit_voltage
The intermediate circuit voltage of the controller can be read via this object. The voltage is specified in
the unit millivolts.
Index
6079h
Name
dc_link_circuit_voltage
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
ro
yes
mV
–
–
210
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
7
Operating modes
Object 6087h: torque_slope
This parameter describes the modification speed of the setpoint value ramp value. This is specified in
thousandths of the nominal torque per second. For example, the torque setpoint value target_torque is
raised from 0 Nm to the value motor_rated_torque. If the initial value of the intermediately switched
torque ramp should reach this value in one second, the value 1000 is written in this object.
Index
6087h
Name
torque_slope
Object Code
VAR
Data Type
UINT32
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
motor_rated_torque/1000 s
–
0E310F94h
Object 6088h: torque_profile_type
The object torque_profile_type specifies with which curve shape a setpoint value jump should be
executed. Currently, only the linear ramp is implemented in this controller, so this object can only be
written with the value 0.
Index
6088h
Name
torque_profile_type
Object Code
VAR
Data Type
INT16
Access
PDO mapping
Units
Value Range
Default Value
rw
yes
–
0
0
Value
Significance
0
Linear ramp
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
211
A
Technical appendix
A
Technical appendix
A.1
Technical Data Interface EtherCAT
This section is only applicable for the motor controller CMMP-AS-…-M3.
M3
A.1.1
General
Mechanical
Length / width / height
Weight
Slot
Note on materials
Tab. A.1
[mm]
[g]
112.6 x 87.2 x 28.3
55
Slot Ext2
Conforms to RoHS
Technical data: mechanical
Electric
Signal level
Differential voltage
Tab. A.2
A.1.2
[V DC]
[V DC]
0 … 2.5
1.9 … 2.1
Technical data: electrical
Operating and environmental conditions
Transport
Temperature range
Air humidity, at max. 40 °C
ambient temperature,
non-condensing
Tab. A.3
[°C]
[%]
0 … +50
0 … 90
Technical data: transport
Storage
Storage temperature
Air humidity, at max. 40 °C
ambient temperature,
non-condensing
Permissible altitude
(above sea level)
Tab. A.4
212
[°C]
[%]
–25 … +75
0 … 90
[m]
< 1000
Technical data: storage
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
B
Diagnostic messages
If an error occurs, the motor controller CMMP-AS-...-M3/-M0 shows a diagnostic message cyclically in
the 7-segments display. An error message consists of an E (for Error), a main index and sub-index,
e.g.: - E 0 1 0 -.
Warnings have the same number as an error message. In contrast to error messages, however,
warnings are preceded and followed by hyphens, e.g. - 1 7 0 -.
B.1
Explanations on the diagnostic messages
The following table summarises the significance of the diagnostic messages and the actions to be
taken in response to them:
Terms
Significance
No.
Main index (error group) and sub-index of the diagnostic message.
Shown in the display, in FCT or diagnostic memory via FHPP.
The Code column includes the error code (Hex) via CiA 301.
Message that is displayed in the FCT.
Possible causes for the message.
Action by the user.
The Reaction column includes the error response (default setting, partially
configurable):
– PS off (switch off output stage),
– MCStop (fast stop with maximum current),
– QStop (fast stop with parameterised ramp),
– Warn (warning),
– Ignore (No message, only entry in diagnostic memory),
– NoLog (No message and no entry in diagnostic memory).
Code
Message
Cause
Action
Reaction
Tab. B.1 Explanations of the diagnostic messages
Under section B.2, you will find the error codes in accordance with CiA301/402 with assignment to the
error numbers of the diagnostic messages.
A complete list of the diagnostic messages corresponding to the firmware statuses at the time of printing of this document can be found in section B.3.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
213
B
Diagnostic messages
B.2
Error codes via CiA 301/402
Diagnostic messages
Code
No.
Message
2311h
2312h
2313h
2314h
2320h
3210h
3220h
3280h
3281h
3282h
3283h
3284h
3285h
3286h
4210h
4280h
4310h
5080h
5114h
5115h
5116h
5280h
5281h
5282h
5283h
5410h
5580h
214
31-1
31-0
31-2
31-3
06-0
06-1
07-0
02-0
32-0
32-1
32-5
32-6
32-7
32-8
32-9
04-0
04-1
03-0
03-1
03-2
03-3
90-0
90-2
90-3
90-4
90-5
90-6
90-9
05-0
05-1
05-2
21-0
21-1
21-2
21-3
05-3
05-4
26-0
Reaction
I²t-servo controller
I²t-motor
I²t-PFC
I²t braking resistor
Short circuit in output stage
Overload current brake chopper
Overvoltage in intermediate circuit
Undervoltage in intermediate circuit
Intermediate circuit charging time exceeded
Undervoltage for active PFC
Brake chopper overload. Intermediate circuit could not be
discharged.
Intermediate circuit discharge time exceeded
Power supply missing for controller enable
Power supply failure during controller enable
Phase failure
Power end stage over-temperature
Intermediate circuit over-temperature
Analogue motor over-temperature
Digital motor over-temperature
Analogue motor over-temperature: broken cable
Analogue motor over-temperature: short circuit
Missing hardware components (SRAM)
Error when booting FPGA
Error at SD-ADU start
SD-ADU synchronisation error after start
SD-ADU not synchronous
IRQ0 (current regulator): trigger error
DEBUG firmware loaded
Failure of internal voltage 1
Failure of internal voltage 2
Failure of driver supply
Error 1 current measurement U
Error 1 current measurement V
Error 2 current measurement U
Error 2 current measurement V
Undervoltage dig. I/O
Overload current dig. I/O
Missing user parameter set
Configurable
Configurable
Configurable
Configurable
PS off
PS off
PS off
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
QStop
QStop
Configurable
Configurable
QStop
Configurable
Configurable
Configurable
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Diagnostic messages
Code
No.
Message
5581h
5582h
5583h
5584h
5585h
5586h
6000h
6080h
6081h
6082h
6083h
6180h
6181h
6182h
6183h
6185h
6186h
6187h
6320h
6380h
7380h
7382h
7383h
7384h
7385h
7386h
7387h
7388h
7389h
73A1h
73A2h
73A3h
73A4h
73A5h
73A6h
8081h
8082h
8083h
8120h
8180h
26-1
26-2
26-3
26-4
26-5
26-6
91-0
25-0
25-1
25-2
25-3
01-0
16-0
16-1
16-3
15-0
15-1
16-2
36-0
36-1
30-0
08-0
08-2
08-3
08-4
08-5
08-6
08-7
08-8
08-9
09-0
09-1
09-2
09-3
09-7
09-9
43-0
43-1
43-2
12-1
12-0
Checksum error
Flash: error when writing
Flash: error during deletion
Flash: error in internal flash
Missing calibration data
Missing user position data records
Internal initialisation error
Invalid device type
Device type not supported
Hardware revision not supported
Device function restricted!
Stack overflow
Program execution faulty
Illegal interrupt
Unexpected status
Division by 0
Range exceeded
Initialisation error
Parameter was limited
Parameter was not accepted
Internal conversion error
Resolver angle encoder error
Error in incremental encoder tracking signal Z0
Error in incremental encoder tracking signals Z1
Digital incremental encoder track signals error [X2B]
Error in increment generator of Hall-effect encoder signals
Angle encoder communication fault
Signal amplitude of incremental tracks faulty [X10]
Internal angle encoder error
Angle encoder at [X2B] is not supported
Old angle encoder parameter set
Angle encoder parameter set cannot be decoded
Unknown version of angle encoder parameter set
Defective data structure in angle encoder parameter set
Write-protected EEPROM angle encoder
Angle encoder’s EEPROM too small
Limit switch: negative setpoint value blocked
Limit switch: positive setpoint value blocked
Limit switch: positioning suppressed
CAN: Communication error, bus OFF
CAN: double node number
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
PS off
Configurable
Configurable
PS off
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
215
B
Diagnostic messages
Diagnostic messages
Code
No.
Message
8181h
8182h
8480h
8611h
8612h
8680h
8681h
8682h
8780h
8781h
8A80h
8A81h
8A82h
8A83h
8A84h
8A85h
8A86h
8A87h
F080h
F081h
F082h
F083h
F084h
F085h
FF01h
FF02h
216
12-2
12-3
35-0
17-0
17-1
27-0
40-0
40-1
40-2
40-3
42-0
42-1
42-2
34-0
34-1
11-0
11-1
11-2
11-3
11-4
11-5
11-6
33-0
80-0
80-1
80-2
80-3
81-4
81-5
28-0
28-1
Reaction
CAN: communication error during transmission
CAN: communication error during reception
Linear motor spinning protection
Following error monitoring
Encoder difference monitoring
Following error warning threshold
Negative software limit switch
Positive software limit switch reached
Target position behind the negative software limit switch
Target position behind the positive software limit switch
Positioning: no subsequent positioning: stop
Positioning: reversing direction of rotation not allowed: stop
Positioning: reversing after halt not allowed
No synchronisation via fieldbus
Fieldbus synchronisation error
Error when homing is started
Error during homing
Homing: no valid zero impulse
Homing: timeout
Homing: wrong / invalid limit switch
Homing: I²t / following error
Homing: end of search path
Encoder emulation following error
Current regulator IRQ overflow
Speed regulator IRQ overflow
Overflow position controller IRQ
Interpolator IRQ overflow
Low-level IRQ overflow
MDC IRQ overflow
Missing hours-run meter
Hours-run meter: write error
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
Configurable
PS off
PS off
PS off
PS off
PS off
PS off
Configurable
Configurable
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
B.3
Diagnostic messages with instructions for trouble-shooting
Fault group 00
No.
Code
Invalid message or information
Message
00-0
-
00-1
-
Invalid error
Ignore
Cause
Information: An invalid error entry (corrupted) was found in the
diagnostic memory marked with this error number.
The system time entry is set to 0.
Measure
–
Invalid error detected and corrected
Ignore
Cause
Information: An invalid error entry (corrupted) was found in the
diagnostic memory and corrected. The additional information
contains the original error number.
The system time entry includes the address of the corrupted error
number.
00-2
-
Measure
–
Error cleared
Cause
Information: Active errors were acknowledged.
Measure
–
Reaction
Ignore
Fault group 01
No.
Code
Stack overflow
Message
01-0
Stack overflow
PS off
Cause
– Incorrect firmware?
– Sporadic high processor load due to cycle time being too short
and special compute-bound processes (save parameter set,
etc.).
Measure
• Load an approved firmware.
• Reduce the processor load.
• Contact Technical Support.
6180h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
217
B
Diagnostic messages
Fault group 02
No.
Code
Intermediate circuit
Message
02-0
Undervoltage in intermediate circuit
Configurable
Cause
Intermediate circuit voltage falls below the parameterised
threshold ( additional information).
Error priority set too high?
Measure
• Quick discharge due to switched-off mains supply.
• Check power supply.
• Couple intermediate circuits if technically permissible.
• Check intermediate circuit voltage (measure).
• Check undervoltage monitoring (threshold value).
3220h
Additional
information
Reaction
Additional information in PNU 203/213:
Upper 16 bits: status number of internal state machine
Bottom 16 bits: Intermediate circuit voltage (internal scaling
approx. 17.1 digit/V).
Fault group 03
No.
Code
Motor over-temperature
Message
03-0
Analogue motor over-temperature
Cause
Motor overloaded, temperature too high.
– Motor too hot?
– Incorrect sensor?
– Sensor defective?
– Broken cable?
4310h
Reaction
QStop
Measure
03-1
218
4310h
• Check parameterisation (current regulator, current limits).
• Check the parameterisation of the sensor or the sensor characteristics.
If the error persists when the sensor is bypassed: device defective.
Digital motor over-temperature
Configurable
Cause
– Motor overloaded, temperature too high.
– Suitable sensor or sensor characteristics parameterised?
– Sensor defective?
Measure
• Check parameterisation (current regulator, current limits).
• Check the parameterisation of the sensor or the sensor characteristics.
If the error persists when the sensor is bypassed: device defective.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 03
No.
Code
Motor over-temperature
Message
03-2
4310h
03-3
4310h
Analogue motor over-temperature: broken cable
Configurable
Cause
The measured resistance value is above the threshold for wire
break detection.
Measure
• Check the connecting cables of the temperature sensor for wire
breaks.
• Check the parameterisation (threshold value) for wire break
detection.
Analogue motor over-temperature: short circuit
Configurable
Cause
The measured resistance value is below the threshold for short
circuit detection.
Measure
• Check the connecting cables of the temperature sensor for wire
breaks.
• Check the parameterisation (threshold value) for short circuit
detection.
Reaction
Fault group 04
No.
Code
Intermediate circuit/power unit over-temperature
Message
04-0
4210h
04-1
4280h
Power end stage over-temperature
Configurable
Cause
Device is overheated
– Temperature display plausible?
– Device fan defective?
– Device overloaded?
Measure
• Check installation conditions; control cabinet fan filter dirty?
• Check the drive layout (due to possible overloading in continuous duty).
Intermediate circuit over-temperature
Configurable
Cause
Device is overheated
– Temperature display plausible?
– Device fan defective?
– Device overloaded?
Measure
• Check installation conditions; control cabinet fan filter dirty?
• Check the drive layout (due to possible overloading in continuous duty).
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
219
B
Diagnostic messages
Fault group 05
No.
Code
Internal voltage supply
Message
05-0
5114h
Failure of internal voltage 1
PS off
Cause
Monitoring of the internal power supply has detected undervoltage. This is either due to an internal defect or an overload/
short circuit caused by connected peripherals.
Measure
• Check digital outputs and brake output for short circuit or
specified load.
• Separate device from the entire peripheral equipment and
check whether the error is still present after reset. If yes, then
there is an internal defect Repair by the manufacturer.
05-1
5115h
Failure of internal voltage 2
PS off
Cause
Monitoring of the internal power supply has detected undervoltage. This is either due to an internal defect or an overload/
short circuit caused by connected peripherals.
Measure
• Check digital outputs and brake output for short circuit or
specified load.
• Separate device from the entire peripheral equipment and
check whether the error is still present after reset. If yes, then
there is an internal defect Repair by the manufacturer.
05-2
5116h
Failure of driver supply
PS off
Cause
Monitoring of the internal power supply has detected undervoltage. This is either due to an internal defect or an overload/
short circuit caused by connected peripherals.
Measure
• Check digital outputs and brake output for short circuit or
specified load.
• Separate device from the entire peripheral equipment and
check whether the error is still present after reset. If yes, then
there is an internal defect Repair by the manufacturer.
05-3
5410h
05-4
5410h
Undervoltage dig. I/O
PS off
Cause
Overloading of the I/Os?
Defective peripheral equipment?
Measure
• Check connected peripherals for short circuit / rated loads.
• Check connection of the brake (connected incorrectly?).
Overload current dig. I/O
PS off
Cause
Overloading of the I/Os?
Defective peripheral equipment?
Measure
• Check connected peripherals for short circuit / rated loads.
• Check connection of the brake (connected incorrectly?).
220
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 05
No.
Code
Internal voltage supply
Message
05-5
-
05-6
-
05-7
-
05-8
-
05-9
-
Voltage failure interface Ext1/Ext2
PS off
Cause
Defect on the plugged-in interface.
Measure
• Interface replacement Repair by the manufacturer.
Voltage failure [X10], [X11]
PS off
Cause
Overloading through connected peripherals.
Measure
• Check pin allocation of the connected peripherals.
• Short circuit?
Safety module internal voltage failure
PS off
Cause
Defect on the safety module.
Measure
• Internal defect Repair by the manufacturer.
Failure of internal voltage 3
PS off
Cause
Defect in the motor controller.
Measure
• Internal defect Repair by the manufacturer.
Encoder supply defective
PS off
Cause
Back measurement of the encoder voltage not OK.
Measure
• Internal defect Repair by the manufacturer.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
221
B
Diagnostic messages
Fault group 06
No.
Code
Overcurrent
Message
06-0
2320h
06-1
2320h
Short circuit in output stage
PS off
Cause
– Faulty motor, e.g. winding short circuit due to motor overheating or short to PE inside motor.
– Short circuit in the cable or the connecting plugs, i.e. short
circuit between motor phases or to the screening/PE.
– Output stage defective (short circuit).
– Incorrect parameterisation of the current regulator.
Measure
Dependent on the status of the system Additional information,
case a) to f ).
Additional Measures:
informaa) Error only with active brake chopper: Check external braking
tion
resistor for short circuit or insufficient resistance value. Check
circuitry of the brake chopper output at the motor controller
(bridge, etc.).
b) Error message immediately when the power supply is connected: internal short circuit in the output stage (short circuit
of a complete half-bridge). The motor controller can no longer
be connected to the power supply; the internal (and possibly
external) fuses are tripped. Repair by the manufacturer is
required.
c) Short circuit error message not until the output stage or controller is enabled.
d) Disconnection of motor plug [X6] directly at the motor controller. If the error still occurs, there is a fault in the motor
controller. Repair by the manufacturer is required.
e) If the error only occurs when the motor cable is connected:
check the motor and cable for short circuits, e.g. with a multimeter.
f ) Check parameterisation of the current regulator. Oscillations in
an incorrectly parameterised current regulator can generate
currents up to the short circuit threshold, usually clearly
audible as a high-frequency whistling. Verification, if necessary,
with the trace in the FCT (actual active current value).
Overload current brake chopper
PS off
Cause
Overload current at the brake chopper output.
Measure
• Check external braking resistor for short circuit or insufficient
resistance value.
• Check circuitry of the brake chopper output at the motor
controller (bridge, etc.).
222
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 07
No.
Code
Overvoltage in intermediate circuit
Message
07-0
Overvoltage in intermediate circuit
PS off
Cause
Braking resistor is overloaded; too much braking energy which
cannot be dissipated quickly enough.
– Resistor is incorrectly dimensioned?
– Resistor not connected correctly?
– Check design (application).
3210h
Measure
Reaction
• Check the design of the braking resistor; resistance value may
be too great.
• Check the connection to the braking resistor (internal/external).
Fault group 08
No.
Code
Angle transducer error
Message
08-0
Resolver angle encoder error
Configurable
Cause
Resolver signal amplitude is faulty.
Measure
Step-by-step approach Additional information, case a) to c).
Additional a) If possible, test with a different (error-free) resolver (replace
informathe connecting cable, too). If the error still occurs, there is a
tion
fault in the motor controller. Repair by the manufacturer is
required.
b) If the error occurs only with a special resolver and its connecting cable: Check resolver signals (carrier and SIN/COS signal),
see specification. If the signals do not comply with the signal
specifications, replace the resolver.
c) If the error recurs sporadically, check the screen bonding or
check whether the resolver simply has an insufficient transmission ratio (standard resolver: A = 0.5).
7380h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
223
B
Diagnostic messages
Fault group 08
No.
Code
Angle transducer error
Message
08-1
Direction of rotation of incremental position evaluation is not
Configurable
identical
Cause
Only encoders with serial position transmission combined with an
analogue SIN/COS signal track: The direction of rotation of
encoder-internal position determination and incremental evaluation of the analogue track system in the motor controller are the
wrong way around Additional information.
-
Measure
Additional
information
08-2
7382h
Swap the following signals on the [X2B] angle encoder interface
(the wires in the connecting plug must be changed around),
observing the technical data for the angle encoder where
applicable:
– Swap SIN/COS track.
– Swap the SIN+ / SIN- or COS+ / COS- signals.
The encoder counts internally, for example positively in clockwise
rotation, while the incremental evaluation counts in negative direction with the same mechanical rotation. The interchange of the
direction of rotation is detected mechanically at the first movement
of over 30°, and the error is triggered.
Error in incremental encoder tracking signal Z0
Cause
Signal amplitude of the Z0 track at [X2B] is faulty.
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
Measure
Additional
information
224
Reaction
Configurable
Check configuration of angle encoder interface:
a) Z0 evaluation activated, but no track signals connected or on
hand Additional information.
b) Encoder signals faulty?
c) Test with another encoder.
Tab. B.2, Page 258.
For example, EnDat 2.2 or EnDat 2.1 without analogue track.
Heidenhain encoder: order codes EnDat 22 and EnDat 21. With
these encoders there are no incremental signals, even when the
cables are connected.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 08
No.
Code
Angle transducer error
Message
08-3
Error in incremental encoder tracking signals Z1
Cause
Signal amplitude of the Z1 track at X2B is faulty.
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
7383h
Measure
Reaction
Configurable
Check configuration of angle encoder interface:
a) Z1 evaluation activated but not connected.
b) Encoder signals faulty?
c) Test with another encoder.
Tab. B.2, Page 258.
08-4
7384h
Digital incremental encoder track signals error [X2B]
Configurable
Cause
Faulty A, B, or N track signals at [X2B].
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
Measure
Check the configuration of the angle encoder interface.
a) Encoder signals faulty?
b) Test with another encoder.
Tab. B.2, Page 258.
08-5
7385h
Error in increment generator of Hall-effect encoder signals
Configurable
Cause
Hall encoder signals of a dig. inc. at [X2B] faulty.
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
Measure
Check the configuration of the angle encoder interface.
a) Encoder signals faulty?
b) Test with another encoder.
Tab. B.2, Page 258.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
225
B
Diagnostic messages
Fault group 08
No.
Code
Angle transducer error
Message
08-6
Angle encoder communication fault
Configurable
Cause
Communication to serial angle encoders is disrupted
(EnDat encoders, HIPERFACE encoders, BiSS encoders).
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
7386h
Reaction
Measure
08-7
7387h
08-8
7388h
Check configuration of the angle encoder interface, procedure
corresponding to a) to c):
a) Serial encoder parameterised but not connected? Incorrect
serial protocol selected?
b) Encoder signals faulty?
c) Test with another encoder.
Tab. B.2, Page 258.
Signal amplitude of incremental tracks faulty [X10]
Configurable
Cause
Faulty A, B, or N track signals at [X10].
– Angle encoder connected?
– Angle encoder cable defective?
– Angle encoder defective?
Measure
Check the configuration of the angle encoder interface.
a) Encoder signals faulty?
b) Test with another encoder.
Tab. B.2, Page 258.
Internal angle encoder error
Configurable
Cause
Internal monitoring of the angle encoder [X2B] has detected an
error and forwarded it via serial communication to the controller.
– Declining illumination intensity with visual encoders?
– Excess rotational speed?
– Angle encoder defective?
Measure
226
If the error occurs repeatedly, the encoder is defective. Replace
encoder.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 08
No.
Code
Angle transducer error
Message
08-9
Angle encoder at [X2B] is not supported
Configurable
Cause
Angle encoder type read at [X2B], which is not supported or cannot
be used in the desired operating mode.
– Incorrect or inappropriate protocol type selected?
– Firmware does not support the connected encoder variant?
7389h
Reaction
Measure
Depending on the additional information of the error message
additional information:
• Load appropriate firmware.
• Check/correct the configuration of the encoder analysis.
• Connect an appropriate encoder type.
Additional
information
Additional information (PNU 203/213):
0001: HIPERFACE: Encoder type is not supported by the firmware
Connect another encoder type or load more recent firmware.
0002: EnDat: The address space in which the encoder parameters
would have to lie does not exist with the connected EnDat
encoder Check the encoder type.
0003: EnDat: Encoder type is not supported by the firmware
Connect another encoder type or load more recent firmware.
0004: EnDat: Encoder rating plate cannot be read from the connected encoder. Replace encoder or possibly load newer
firmware.
0005: EnDat: EnDat 2.2 interface parameterised, but connected
encoder supports only EnDat2.1. Change encoder type or
reparameterise to EnDat 2.1.
0006: EnDat: EnDat2.1 interface with analogue track evaluation
parameterised, but according to rating plate the connected
encoder does not support track signals. Change encoder
or switch off Z0 track signal evaluation.
0007: Code length measuring system with EnDat2.1 connected,
but parameterised as a purely serial encoder. Purely serial
evaluation is not possible due to the long response times of
this encoder system. Encoder must be operated with analogue track signal evaluation Connect analogue Z0 track
signal evaluation.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
227
B
Diagnostic messages
Fault group 09
No.
Code
Error in the angle encoder parameter set
Message
09-0
Old angle encoder parameter set
Configurable
Cause
Warning:
An encoder parameter set in an old format was found in the
EEPROM of the connected encoder. This has been converted and
saved in the new format.
73A1h
Reaction
Measure
09-1
73A2h
09-2
73A3h
09-3
73A4h
09-4
-
228
No action necessary at this point. The warning should not
re-appear when the 24 V supply is switched back on.
Angle encoder parameter set cannot be decoded
Configurable
Cause
Data in the EEPROM of the angle encoder could not be read
completely, or access to it was partly refused.
Measure
The EEPROM of the encoder contains data (communication
objects) which are not supported by the loaded firmware. The data
in question are then discarded.
• The parameter set can be adapted to the current firmware by
writing the encoder data to the encoder.
• Alternatively, load appropriate (more recent) firmware.
Unknown version of angle encoder parameter set
Configurable
Cause
The data saved in EEPROM are not compatible with the current
version. A data structure was found which is unable to decode the
loaded firmware.
Measure
• Save the encoder parameters again in order to delete the parameter set in the encoder and replace it with a readable set (this
will, however, delete the data in the encoder irreversibly).
• Alternatively, load appropriate (more recent) firmware.
Defective data structure in angle encoder parameter set
Configurable
Cause
Data in EEPROM do not match the stored data structure. The data
structure was identified as valid but may be corrupted.
Measure
• Save the encoder parameters again in order to delete the parameter set in the encoder and replace it with a readable set. If
the error still occurs after that, the encoder may be faulty.
• Replace the encoder as a test.
EEPROM data: user-specific configuration faulty
Configurable
Cause
Only with specialised motors:
The plausibility check returns an error, e.g. because the motor was
repaired or exchanged.
Measure
• If motor repaired: Carry out homing again and save in the angle
encoder, after that (!) save in the motor controller.
• If motor exchanged: Parameterise the controller again, then
carry out homing again and save in the angle encoder, after
that (!) save in the motor controller.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 09
No.
Code
Error in the angle encoder parameter set
Message
09-7
73A5h
09-9
73A6h
Write-protected EEPROM angle encoder
Configurable
Cause
Data cannot be saved in the EEPROM of the angle encoder.
Occurs with Hiperface encoders.
Measure
A data field in the encoder EEPROM is read-only (e.g. after operation on a motor controller of another manufacturer). No solution
possible, encoder memory must be unlocked with a corresponding
parameterisation tool (from manufacturer).
Angle encoder’s EEPROM too small
Configurable
Cause
It is not possible to save all the data in the EEPROM of the angle
encoder.
Measure
• Reduce the number of data records to be saved. Please read
the documentation or contact Technical Support.
Reaction
Fault group 10
No.
Code
Excessive speed
Message
10-0
Overspeed (spin protection)
Configurable
Cause
– Motor racing (“spinning”) because the commutation angle offset is incorrect.
– Motor is parameterised correctly, but the limit for spinning
protection is set too low.
Measure
• Check the commutation angle offset.
• Check parameterisation of the limit values.
-
Reaction
Fault group 11
No.
Code
Homing error
Message
11-0
8A80h
11-1
8A81h
Error when homing is started
Configurable
Cause
Controller enable missing.
Measure
Homing can only be started when controller enable is active.
• Check the condition or sequence.
Error during homing
Configurable
Cause
Homing was interrupted, e.g. by:
– Removal of controller enable.
– Reference switch is behind the limit switch.
– External stop signal (a phase was aborted during homing).
Measure
• Check homing sequence.
• Check arrangement of the switches.
• If applicable, lock the stop input during homing if it is not
desired.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
229
B
Diagnostic messages
Fault group 11
No.
Code
Homing error
Message
11-2
8A82h
11-3
8A83h
11-4
8A84h
11-5
8A85h
Homing: no valid zero impulse
Configurable
Cause
Required zero impulse during homing missing.
Measure
• Check the zero impulse signal.
• Check the angle encoder settings.
Homing: timeout
Configurable
Cause
The parameterised maximum time for the homing run was
exceeded before the homing run was completed.
Measure
• Check the time setting in the parameters.
Homing: wrong / invalid limit switch
Configurable
Cause
– Associated limit switch not connected.
– Limit switches swapped?
– No reference switch found between the two limit switches.
– Reference switch is on the limit switch.
– Current position with zero impulse method: limit switch active
in the area of the zero impulse (not permissible).
– Both limit switches active at the same time.
Measure
• Check whether the limit switches are connected in the correct
direction of travel or whether the limit switches have an effect
on the intended inputs.
• Reference switch connected?
• Check configuration of the reference switches.
• Move limit switch so that it is not in the zero impulse area.
• Check limit switch parameterisation (N/C contact/N/O
contact).
Homing: I²t / following error
Configurable
Cause
– Acceleration ramps not suitably parameterised.
– Change of direction due to premature triggering of following
error; check parameterisation of following error.
– No reference switch reached between the end stops.
– Zero impulse method: end stop reached (here not permissible).
Reaction
Measure
11-6
230
8A86h
• Parameterise the acceleration ramps so they are flatter.
• Check connection of a reference switch.
• Method appropriate for the application?
Homing: end of search path
Configurable
Cause
The maximum permissible path for the homing run has been
travelled without reaching the reference point or the homing run
target.
Measure
Malfunction in switch detection.
• Switch for homing is defective?
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 11
No.
Code
Homing error
Message
11-7
Homing: error in encoder difference monitoring
Configurable
Cause
Deviation between the actual position value and commutation
position is too great. External angle encoder not connected or
faulty?
Measure
• Deviation fluctuates, e.g. due to gear backlash; cut-off
threshold may need to be increased.
• Check connection of the actual value encoder.
-
Reaction
Fault group 12
No.
Code
CAN error
Message
12-0
8180h
12-1
8120h
12-2
8181h
12-3
8182h
CAN: double node number
Configurable
Cause
Node number assigned twice.
Measure
• Check configuration of the participant at the CAN bus.
CAN: Communication error, bus OFF
Configurable
Cause
The CAN chip has switched off communication due to communication errors (BUS OFF).
Measure
• Check cabling: cable specification adhered to, broken cable,
maximum cable length exceeded, correct terminating resistors,
cable screening earthed, all signals terminated?
• If necessary, replace device on a test basis. If a different device
works without errors with the same cabling, send the device to
the manufacturer for checking.
CAN: communication error during transmission
Configurable
Cause
The signals are corrupted when transmitting messages.
Device boot up is so fast that no other nodes on the bus have yet
been detected when the boot-up message is sent.
Measure
• Check cabling: cable specification adhered to, broken cable,
maximum cable length exceeded, correct terminating resistors,
cable screening earthed, all signals terminated?
• If necessary, replace device on a test basis. If a different device
works without errors with the same cabling, send the device to
the manufacturer for checking.
CAN: communication error during reception
Configurable
Cause
The signals are corrupted when receiving messages.
Measure
• Check cabling: cable specification adhered to, broken cable,
maximum cable length exceeded, correct terminating resistors,
cable screening earthed, all signals terminated?
• If necessary, replace device on a test basis. If a different device
works without errors with the same cabling, send the device to
the manufacturer for checking.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
231
B
Diagnostic messages
Fault group 12
No.
Code
CAN error
Message
12-4
-
12-5
-
12-9
-
CAN: node guarding
Configurable
Cause
Node guarding telegram not received within the parameterised
time. Signals corrupted?
Measure
• Compare the cycle time of the remote frames with that of the
controller.
• Check: failure of the controller?
CAN: RPDO too short
Configurable
Cause
A received RPDO does not contain the parameterised number of
bytes.
Measure
The number of parameterised bytes does not match the number of
bytes received.
• Check the parameterisation and correct.
CAN: Protocol error
Configurable
Cause
Faulty bus protocol.
Measure
• Check the parameterisation of the selected CAN bus protocol.
Reaction
Fault group 13
No.
Code
Timeout CAN-Bus
Message
13-0
CAN bus timeout
Configurable
Cause
Error message from manufacturer-specific protocol.
Measure
• Check the CAN parameterisation.
-
Reaction
Fault group 14
No.
Code
Error identification
Message
14-0
-
14-1
-
14-2
-
Insufficient power supply for identification
PS off
Cause
Current regulator parameters cannot be determined (insufficient
supply).
Measure
The available intermediate circuit voltage is too low to carry out
the measurement.
Identification of current regulator: measurement cycle insuffi- PS off
cient
Cause
Too few or too many measurement cycles required for the connected motor.
Measure
Automatic determination of parameters has supplied a time
constant outside the parameterisable value range.
• The parameters must be manually optimised.
Output stage enable could not be issued
PS off
Cause
Output stage enable has not been issued.
Measure
• Check the connection of DIN4.
232
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 14
No.
Code
Error identification
Message
14-3
-
14-5
-
14-6
-
14-7
-
14-8
-
Output stage was switched off prematurely
PS off
Cause
Output stage enable was switched off while identification was in
progress.
Measure
• Check the sequence control.
Zero impulse could not be found
PS off
Cause
The zero impulse could not be found following execution of the
maximum permissible number of electrical revolutions.
Measure
• Check the zero impulse signal.
• Angle encoder parameterised correctly?
Hall signals invalid
PS off
Cause
Hall signals faulty or invalid.
The pulse train and/or segmenting of the Hall signals is inappropriate.
Measure
• Check connection.
• Refer to the technical data to check whether the encoder
shows three Hall signals with 1205 or 605 segments; if necessary, contact Technical Support.
Identification not possible
PS off
Cause
Angle encoder at a standstill.
Measure
• Ensure sufficient intermediate circuit voltage.
• Encoder cable connected to the right motor?
• Motor blocked, e.g. holding brake does not release?
Invalid number of pairs of poles
PS off
Cause
The calculated number of pole pairs lies outside the parameterisable range.
Measure
• Compare result with the technical data specifications for the
motor.
• Check the parameterised number of lines.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
233
B
Diagnostic messages
Fault group 15
No.
Code
Invalid operation
Message
15-0
6185h
15-1
6186h
15-2
-
Division by 0
PS off
Cause
Internal firmware error. Division by 0 when using the math library.
Measure
• Load factory settings.
• Check the firmware to make sure that a released firmware has
been loaded.
Range exceeded
PS off
Cause
Internal firmware error. Overflow when using the math library.
Measure
• Load factory settings.
• Check the firmware to make sure that a released firmware has
been loaded.
Counter underrun
PS off
Cause
Internal firmware error. Internal correction factors could not be
calculated.
Measure
• Check the setting of the factor group for extreme values and
change if necessary.
Reaction
Fault group 16
No.
Code
Internal error
Message
16-0
6181h
16-1
6182h
16-2
6187h
16-3
6183h
Program execution faulty
PS off
Cause
Internal firmware error. Error during program execution. Illegal CPU
command found in the program sequence.
Measure
• In case of repetition, load firmware again. If the error occurs
repeatedly, the hardware is defective.
Illegal interrupt
PS off
Cause
Error during program execution. An unused IRQ vector was used by
the CPU.
Measure
• In case of repetition, load firmware again. If the error occurs
repeatedly, the hardware is defective.
Initialisation error
PS off
Cause
Error in initialising the default parameters.
Measure
• In case of repetition, load firmware again. If the error occurs
repeatedly, the hardware is defective.
Unexpected status
PS off
Cause
Error during periphery access within the CPU or error in the
program sequence (illegal branching in case structures).
Measure
• In case of repetition, load firmware again. If the error occurs
repeatedly, the hardware is defective.
234
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 17
No.
Code
Following error exceeded
Message
17-0
8611h
17-1
8611h
Following error monitoring
Configurable
Cause
Comparison threshold for the limit value of the following error
exceeded.
Measure
• Increase error window.
• Parameterise acceleration to be less.
• Motor overloaded (current limitation from I²t monitoring
active?).
Encoder difference monitoring
Configurable
Cause
Deviation between the actual position value and commutation
position is too great.
External angle encoder not connected or faulty?
Measure
• Deviation fluctuates, e.g. due to gear backlash; cut-off
threshold may need to be increased.
• Check connection of the actual value encoder.
Reaction
Fault group 18
No.
Code
Temperature warning threshold
Message
18-0
Analogue motor temperature
Configurable
Cause
Motor temperature (analogue) greater than 5° below T_max.
Measure
• Check parameterisation of current regulator and/or speed
regulator.
• Motor permanently overloaded?
-
Reaction
Fault group 21
No.
Code
Error in current measurement
Message
21-0
5280h
Error 1 current measurement U
PS off
Cause
Offset for current measurement 1 phase U is too great. The controller carries out offset compensation of the current measurement
every time its controller enable is issued. Tolerances that are too
large result in an error.
21-1
5281h
21-2
5282h
21-3
5283h
Reaction
Measure
If the error occurs repeatedly, the hardware is defective.
Error 1 current measurement V
PS off
Cause
Offset for current measurement 1 phase V is too great.
Measure
If the error occurs repeatedly, the hardware is defective.
Error 2 current measurement U
PS off
Cause
Offset for current measurement 2 phase U is too great.
Measure
If the error occurs repeatedly, the hardware is defective.
Error 2 current measurement V
PS off
Cause
Offset for current measurement 2 phase V is too great.
Measure
If the error occurs repeatedly, the hardware is defective.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
235
B
Diagnostic messages
Fault group 22
No.
Code
PROFIBUS error (CMMP-AS-...-M3 only)
Message
22-0
-
22-2
-
22-3
-
22-4
-
PROFIBUS: faulty initialisation
Configurable
Cause
Faulty initialisation of the PROFIBUS interface. Interface defective?
Measure
• Replace interface. Repair by the manufacturer may be an
option.
Communication fault PROFIBUS
Configurable
Cause
Malfunctions in communication.
Measure
• Check the set slave address.
• Check bus termination.
• Check wiring.
PROFIBUS: invalid slave address
Configurable
Cause
Communication was started with slave address 126.
Measure
• Select a different slave address.
PROFIBUS: error in range of values
Configurable
Cause
During conversion with the factor group, the range of values was
exceeded. Mathematical error in the conversion of the physical
units.
Measure
The range of values of the data and the physical units do not
match.
• Check and correct.
Reaction
Fault group 25
No.
Code
Device type/function error
Message
25-0
6080h
25-1
6081h
25-2
6082h
Invalid device type
PS off
Cause
Device coding not recognised or invalid.
Measure
This fault cannot be fixed by the user.
• Send motor controller to the manufacturer.
Device type not supported
PS off
Cause
Device coding invalid, is not supported by the loaded firmware.
Measure
• Load up-to-date firmware.
• If newer firmware is not available, the problem may be a hardware defect. Send motor controller to the manufacturer.
Hardware revision not supported
PS off
Cause
The controller’s hardware version is not supported by the loaded
firmware.
Measure
• Check the firmware version; update the firmware to a more
recent version if necessary.
236
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 25
No.
Code
Device type/function error
Message
25-3
6083h
25-4
-
Device function restricted!
PS off
Cause
Device is not enabled for this function.
Measure
Device is not enabled for the desired functionality and may need to
be enabled by the manufacturer. The device must be sent to Festo
for this.
Invalid power section type
PS off
Cause
– Power section area in the EEPROM is unprogrammed.
– Power section is not supported by the firmware.
Measure
• Load appropriate firmware.
Reaction
Fault group 26
No.
Code
Internal data error
Message
26-0
5580h
26-1
5581h
26-2
5582h
26-3
5583h
26-4
5584h
26-5
5585h
Missing user parameter set
PS off
Cause
No valid user parameter set in the flash memory.
Measure
• Load factory settings.
If the error remains, the hardware may be defective.
Checksum error
PS off
Cause
Checksum error of a parameter set.
Measure
• Load factory settings.
If the error remains, the hardware may be defective.
Flash: error when writing
PS off
Cause
Error when writing the internal flash memory.
Measure
• Execute the last operation again.
If the error appears again, the hardware may be faulty.
Flash: error during deletion
PS off
Cause
Error during deletion of the internal flash memory.
Measure
• Execute the last operation again.
If the error appears again, the hardware may be faulty.
Flash: error in internal flash
PS off
Cause
The default parameter set is corrupted / data error in the FLASH
area where the default parameter set is located.
Measure
• Load firmware again.
If the error appears again, the hardware may be faulty.
Missing calibration data
PS off
Cause
Factory-set calibration parameters incomplete / corrupted.
Measure
This fault cannot be fixed by the user.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
237
B
Diagnostic messages
Fault group 26
No.
Code
Internal data error
Message
26-6
5586h
26-7
-
Missing user position data records
PS off
Cause
Position data records incomplete or corrupt.
Measure
• Load factory settings or
• save the current parameters again so that the position data are
written again.
Error in the data tables (CAM)
PS off
Cause
Data for the cam disc is corrupted.
Measure
• Load factory settings.
• Reload the parameter set if necessary.
If the error persists, contact Technical Support.
Reaction
Fault group 27
No.
Code
Following error warning threshold
Message
27-0
Following error warning threshold
Configurable
Cause
– Motor overloaded? Check sizing.
– Acceleration or braking ramps are set too steep.
– Motor blocked? Commutation angle correct?
Measure
• Check the parameterisation of the motor data.
• Check parameterisation of the following error.
8611h
Reaction
Fault group 28
No.
Code
Operating hour counter error
Message
28-0
FF01h
28-1
FF02h
28-2
FF03h
Missing hours-run meter
Configurable
Cause
No record for an hours-run meter could be found in the parameter
block. A new hours-run meter was created. Occurs during initial
start-up or a processor change.
Measure
Warning only, no further action required.
Hours-run meter: write error
Configurable
Cause
The data block in which the hours-run meter is stored could not be
written to. Cause unknown; possibly problems with the hardware.
Measure
Warning only, no further action required.
If the error occurs again, the hardware may be faulty.
Hours-run meter corrected
Configurable
Cause
The hours-run meter has a backup copy. If the controller's 24 V
power supply fails precisely when the hours-run meter is being
updated, the written record may be corrupted. In such cases, the
controller restores the hours-run meter from the intact backup
copy when it switches back on.
Measure
238
Reaction
Warning only, no further action required.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 28
No.
Code
Operating hour counter error
Message
28-3
Hours-run meter converted
Configurable
Cause
Firmware was loaded in which the hours-run meter has a different
data format. The next time the controller is switched on, the old
hours-run meter record is converted to the new format.
Measure
Warning only, no further action required.
FF04h
Reaction
Fault group 29
No.
Code
MMC/SD card
Message
29-0
-
29-1
-
MMC/SD card not available
Configurable
Cause
This error is triggered in the following cases:
– if an action should be carried out on the memory card (load or
create DCO file, firmware download), but no memory card is
plugged in.
– The DIP switch S3 is set to ON but no card is plugged in after
the reset/restart.
Measure
Insert appropriate memory card in the slot.
Only if expressly desired!
MMC/SD card: initialisation error
Configurable
Cause
This error is triggered in the following cases:
– The memory card could not be initialised. Card type may not be
supported!
– File system not supported.
– Error in relationship with the shared memory.
Reaction
Measure
29-2
-
• Check card type used.
• Connect memory card to a PC and format again.
MMC/SD card: parameter set error
Configurable
Cause
This error is triggered in the following cases:
– A load or storage process is already running, but a new load or
storage process is requested. DCO file >> Servo
– The DCO file to be loaded has not been found.
– The DCO file to be loaded is not appropriate for the device.
– The DCO file to be loaded is defective.
– Servo >> DCO file
– The memory card is read-only.
– Other error while saving the parameter set as a DCO file.
– Error in creating the file INFO.TXT.
Measure
• Execute load or storage procedure again after waiting 5
seconds.
• Connect memory card to a PC and check the files included.
• Remove write protection from the memory card.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
239
B
Diagnostic messages
Fault group 29
No.
Code
MMC/SD card
Message
29-3
MMC/SD card full
Configurable
Cause
– This error is triggered while saving the DCO file or INFO.TXT file
if the memory card is discovered to be already full.
– The maximum file index (99) already exists. That is, all file
indexes are assigned. No filename can be issued!
-
Reaction
Measure
29-4
-
• Insert another memory card.
• Change filenames.
MMC/SD card: firmware download
Configurable
Cause
This error is triggered in the following cases:
– No firmware file on the memory card.
– The firmware file is not appropriate for the device.
– Other error during firmware download, e.g. checksum error
with an SRecord, error with flash memory, etc.
Measure
• Connect memory card to PC and transfer firmware file.
Fault group 30
No.
Code
Internal conversion error
Message
30-0
Internal conversion error
PS off
Cause
Range exceeded for internal scaling factors, which are dependent
on the parameterised controller cycle times.
Measure
• Check whether extremely short or extremely long cycle times
were set in the parameters.
6380h
Fault group 31
No.
Code
I2t- error
Message
31-0
2312h
I²t-motor
Cause
31-1
2311h
240
Reaction
Reaction
Configurable
I²t monitoring of the controller has been triggered.
– Motor/mechanics blocked or sluggish.
– Motor under-sized?
Measure
• Check power dimensioning of drive package.
I²t-servo controller
Configurable
Cause
The I²t monitoring is responding frequently.
– Motor controller under-sized?
– Mechanical system sluggish?
Measure
• Check project engineering of the motor controller,
• Possibly use a more powerful type.
• Check the mechanical system.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 31
No.
Code
I2t- error
Message
31-2
2313h
31-3
2314h
I²t-PFC
Configurable
Cause
PFC power rating exceeded.
Measure
• Parameterise operation without PFC (FCT).
I²t braking resistor
Configurable
Cause
– Overloading of the internal braking resistor.
Measure
• Use external braking resistor.
• Reduce resistance value or use resistor with higher impulse
load.
Reaction
Fault group 32
No.
Code
Intermediate circuit error
Message
32-0
3280h
Intermediate circuit charging time exceeded
Configurable
Cause
The intermediate circuit could not be charged after the mains
voltage was applied.
– Fuse possibly defective or
– Internal braking resistor defective or
– In operation with external resistor, the resistor is not connected.
Measure
• Check interface to the external braking resistor.
• Alternatively, check whether the jumper for the internal braking
resistor is set.
If the interface is correct, the internal braking resistor or the builtin fuse is probably faulty. On-site repair is not possible.
32-1
3281h
32-5
3282h
Undervoltage for active PFC
Configurable
Cause
The PFC cannot be activated at all until an intermediate circuit
voltage of about 130 V DC is reached.
Measure
• Check power supply.
Brake chopper overload. Intermediate circuit could not be
Configurable
discharged.
Cause
The extent of utilisation of the brake chopper when quick
discharge began was already in the range above 100 %. Quick
discharge took the brake chopper to the maximum load limit and
was prevented/aborted.
Measure
Reaction
No action required.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
241
B
Diagnostic messages
Fault group 32
No.
Code
Intermediate circuit error
Message
32-6
3283h
Intermediate circuit discharge time exceeded
Configurable
Cause
Intermediate circuit could not be quickly discharged. The internal
braking resistor may be faulty or, in the case of operation with an
external resistor, that resistor is not connected.
Measure
• Check interface to the external braking resistor.
• Alternatively, check whether the jumper for the internal braking
resistor is set.
If the internal resistor has been activated and the jumper has been
positioned correctly, the internal braking resistor is probably faulty.
32-7
3284h
Power supply missing for controller enable
Configurable
Cause
Controller enable was issued when the intermediate circuit was
still in its charging phase after mains voltage was applied and the
mains relay was not yet activated. The drive cannot be enabled in
this phase, because the drive is not yet firmly connected to the
mains (through the mains relay).
Reaction
Measure
32-8
3285h
32-9
3286h
• In the application, check whether the mains supply and controller enable signals were sent correspondingly quickly one after
the other.
Power supply failure during controller enable
QStop
Cause
Interruptions/failure in the power supply while the controller enable was activated.
Measure
• Check power supply.
Phase failure
QStop
Cause
Failure of one or more phases (only in the case of three-phase
supply).
Measure
• Check power supply.
Fault group 33
No.
Code
Encoder emulation following error
Message
33-0
Encoder emulation following error
Configurable
Cause
The critical frequency for encoder emulation was exceeded (see
manual) and the emulated angle at [X11] was no longer able to
follow. Can occur if very high numbers of lines are programmed for
[X11] and the drive reaches high speeds.
8A87h
Measure
242
Reaction
• Check whether the parameterised number of lines may be too
high for the speed being represented.
• Reduce the number of lines, if necessary.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 34
No.
Code
Synchronisation fieldbus error
Message
34-0
8780h
34-1
8781h
No synchronisation via fieldbus
Configurable
Cause
When activating the interpolated position mode, the controller
could not be synchronised to the fieldbus.
– The synchronisation messages from the master may have failed
or
– the IPO interval is not correctly set to the synchronisation interval of the fieldbus.
Measure
• Check the settings for the controller cycle times.
Fieldbus synchronisation error
Configurable
Cause
– Synchronisation via fieldbus messages during ongoing operation (interpolated position mode) has failed.
– Synchronisation messages from master failed?
– Synchronisation interval (IPO interval) parameterised too
small/too large?
Measure
Reaction
• Check the settings for the controller cycle times.
Fault group 35
No.
Code
Linear motor
Message
35-0
Linear motor spinning protection
Configurable
Cause
Encoder signals are corrupt. The motor may be racing (“spinning”)
because the commutation position has been shifted by the faulty
encoder signals.
Measure
• Check that the installation conforms to the EMC recommendations.
• In the case of linear motors with inductive/optical encoders
with separately mounted measuring tape and measuring head:
check the mechanical clearance.
• In the case of linear motors with inductive encoders, make sure
that the magnetic field of the magnets or the motor winding
does not leak into the measuring head (this effect usually occurs when high accelerations = high motor current).
8480h
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
243
B
Diagnostic messages
Fault group 35
No.
Code
Linear motor
Message
35-5
Error during the determination of the commutation position
Configurable
Cause
The rotor position could not be identified clearly.
– The selected method may be inappropriate.
– The selected motor current for the identification may not be set
appropriately.
-
Measure
Additional
information
Reaction
• Check the method for determining the commutation position
Additional information.
Notes on determining the commutation position:
a) The alignment method is inappropriate for locked or sluggish
drives or drives capable of low-frequency oscillation.
b) The microstep method is appropriate for air-core and iron-core
motors. As only very small movements are carried out, it works
even when the drive is on elastic stops or is locked but can still
be moved elastically to some extent. Due to the high excitation
frequency, however, the method is very susceptible to oscillations in the case of poorly damped drives. In such cases, you
can attempt to reduce the excitation current (%).
c) The saturation method uses local occurrences of saturation in
the iron of the motor. Recommended for locked drives. Air-core
drives are by definition not suitable for this method. If the (ironcore) drive moves too much when locating the commutation
position, the measurement result may be adulterated. If this is
the case, reduce the excitation current. In the opposite case, if
the drive does not move, the excitation current may not be
strong enough, causing the saturation to be insufficient.
Fault group 36
No.
Code
Parameter error
Message
36-0
6320h
36-1
6320h
Parameter was limited
Configurable
Cause
An attempt was made to write a value which was outside the
permissible limits, so the value was limited.
Measure
• Check the user parameter set.
Parameter was not accepted
Configurable
Cause
An attempt was made to write to an object which is “read only” or
is not write-capable in the current status (e.g. with controller
enable active).
Measure
• Check the user parameter set.
244
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 40
No.
Code
Software limit switch
Message
40-0
8612h
40-1
8612h
40-2
8612h
40-3
8612h
Negative software limit switch
Configurable
Cause
The position setpoint has reached or exceeded the negative software limit switch.
Measure
• Check target data.
• Check positioning area.
Positive software limit switch reached
Configurable
Cause
The position setpoint has reached or exceeded the positive software limit switch.
Measure
• Check target data.
• Check positioning area.
Target position behind the negative software limit switch
Configurable
Cause
Start of a positioning task was suppressed because the target lies
behind the negative software limit switch.
Measure
• Check target data.
• Check positioning area.
Target position behind the positive software limit switch
Configurable
Cause
The start of a positioning task was suppressed because the target
lies behind the positive software limit switch.
Measure
• Check target data.
• Check positioning area.
Reaction
Fault group 41
No.
Code
Position set forwarding: synchronisation error
Message
41-0
Position set forwarding: synchronisation error
Configurable
Cause
Start of synchronisation without prior sampling pulse.
Measure
• Check parameterisation of the lead section.
-
Reaction
Fault group 42
No.
Code
Positioning error
Message
42-0
8680h
42-1
8681h
Positioning: no subsequent positioning: stop
Configurable
Cause
The positioning target cannot be reached through the positioning
or parameters options.
Measure
• Check parameterisation of the position records in question.
Positioning: reversing direction of rotation not allowed: stop
Configurable
Cause
The positioning target cannot be reached through the positioning
or parameters options.
Measure
• Check parameterisation of the position records in question.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
245
B
Diagnostic messages
Fault group 42
No.
Code
Positioning error
Message
42-2
8682h
42-3
-
42-4
-
42-5
-
Positioning: reversing after halt not allowed
Configurable
Cause
The positioning target cannot be reached through the positioning
or parameters options.
Measure
• Check parameterisation of the position records in question.
Start positioning rejected: wrong operating mode
Configurable
Cause
Switching of the operating mode by means of the position record
was not possible.
Measure
• Check parameterisation of the position records in question.
Start positioning rejected: homing required
Configurable
Cause
A normal positioning record was started, but the drive needs a
valid reference position before starting.
Measure
• Execute new homing.
Modulo positioning: direction of rotation not allowed
Configurable
Cause
– The positioning target cannot be reached through the positioning or parameters options.
– The calculated direction of rotation is not permitted for the
modulo positioning according to the set mode.
42-9
-
Reaction
Measure
• Check the chosen mode.
Error when starting the positioning task
Configurable
Cause
– Acceleration limit value exceeded.
– Position record blocked.
Measure
• Check parameterisation and sequence control, correct if necessary.
Fault group 43
No.
Code
Hardware limit switch error
Message
43-0
8081h
43-1
8082h
43-2
8083h
Limit switch: negative setpoint value blocked
Configurable
Cause
Negative hardware limit switch reached.
Measure
• Check parameterisation, wiring and limit switch.
Limit switch: positive setpoint value blocked
Configurable
Cause
Positive hardware limit switch reached.
Measure
• Check parameterisation, wiring and limit switch.
Limit switch: positioning suppressed
Configurable
Cause
– The drive has left the intended range of motion.
– Technical defect in the system?
Measure
• Check the intended range of motion.
246
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 44
No.
Code
Cam disc error
Message
44-0
-
44-1
-
Fault in the cam disc tables
Configurable
Cause
Cam disc to be started not available.
Measure
• Check transferred cam disc no.
• Correct parameterisation.
• Correct programming.
Cam disc: general error in homing
Configurable
Cause
– Start of a cam disc, but the drive is not yet referenced.
Measure
• Execute homing.
Cause
– Start of homing with active cam disc.
Measure
• Deactivate cam disc. Then restart cam disc if necessary.
Reaction
Fault group 47
No.
Code
Setting-up timeout
Message
47-0
Error in setting-up: timeout expired
Configurable
Cause
The speed required for setting-up was not fallen below in time.
Measure
Check processing of the request on the control side.
-
Reaction
Fault group 48
No.
Code
Homing required
Message
48-0
Homing required
QStop
Cause
An attempt is being made to switch to the speed control or torque
control operating mode or to issue the controller enable in one of
these operating modes, although the drive requires a valid reference position for this.
Measure
• Execute homing.
-
Reaction
Fault group 50
No.
Code
CAN error
Message
50-0
Too many synchronous PDOs
Configurable
Cause
More PDOs have been activated than can be processed in the underlying SYNC interval.
This message also appears if only one PDO is to be transmitted
synchronously, but a high number of other PDOs with a different
transmission type have been activated.
-
Measure
Reaction
• Check the activation of PDOs.
If the configuration is appropriate, the warning can be suppressed
using error management.
• Extend the synchronisation interval.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
247
B
Diagnostic messages
Fault group 50
No.
Code
CAN error
Message
50-1
SDO errors have occurred
Cause
An SDO transfer has caused an SDO abort.
– Data exceed the range of values.
– Access to non-existent object.
Measure
• Check the command sent.
-
Reaction
Configurable
Fault group 51
No.
Code
Safety module error (CMMP-AS-...-M3 only)
Message
51-0
-
51-2
-
51-3
-
No / unknown safety module (error cannot be acknowledged) PS off
Cause
– No safety module detected or unknown module type.
Measure
• Install a safety or micro switch module that is appropriate for
the firmware and hardware.
• Load firmware that is appropriate for the safety or micro switch
module, refer to type designation on the module.
Cause
– Internal voltage error of the safety module or micro switch
module.
Measure
• Module presumably defective. If possible, replace with another
module.
Safety module: unequal module type (error cannot be
PS off
acknowledged)
Cause
Type or revision of the module does not fit the project planning.
Measure
• With module replacement: module type not yet designed. Take
over currently integrated safety or micro switch module as accepted.
Safety module: unequal module version (error cannot be
PS off
acknowledged)
Cause
Type or revision of the module is not supported.
Measure
• Install a safety or micro switch module that is appropriate for
the firmware and hardware.
• Load firmware that is appropriate for the module, see type
designation on the module.
Reaction
Fault group 51
No.
Code
Safety function error (CMMP-AS-...-M0 only)
Message
51-0
Safety function: driver function defective (error cannot be
PS off
acknowledged)
Cause
Internal voltage error of the STO circuit.
Measure
• Protection circuit defective. No action possible, please contact
Festo. If possible, replace with another motor controller.
248
-
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 52
No.
Code
Safety module error (CMMP-AS-...-M3 only)
Message
52-1
-
52-2
-
Safety module: discrepancy time expired
PS off
Cause
– Control ports STO-A and STO-B are not actuated simultaneously.
Measure
• Check discrepancy time.
Cause
– Control ports STO-A and STO-B are not wired in the same way.
Measure
• Check discrepancy time.
Safety module: driver supply failure with active pulse-width
PS off
modulation control
Cause
This error message does not occur with equipment delivered from
the factory. It can occur with use of a user-specific device firmware.
Measure
• The safe status was requested with approved power output
stage. Check inclusion in the safety-oriented interface.
Reaction
Fault group 52
No.
Code
Safety function error (CMMP-AS-...-M0 only)
Message
52-1
-
52-2
-
Safety function: Discrepancy time has elapsed
PS off
Cause
– Control ports STO-A and STO-B are not actuated simultaneously.
Measure
• Check discrepancy time.
Cause
– Control ports STO-A and STO-B are not wired in the same way.
Measure
• Check discrepancy time.
Safety function: Failure of driver supply with active PWM
PS off
control
Cause
This error message does not occur with equipment delivered from
the factory. It can occur with use of a user-specific device firmware.
Measure
• The safe status was requested with approved power output
stage. Check inclusion in the safety-oriented interface.
Reaction
Fault group 62
No.
Code
EtherCAT error (CMMP-AS-...-M3 only)
Message
62-0
-
62-1
-
62-2
-
EtherCAT: general bus error
Configurable
Cause
No EtherCAT bus present.
Measure
• Switch on the EtherCAT master.
• Check wiring.
EtherCAT: Initialisation error
Configurable
Cause
Error in the hardware.
Measure
• Replace the interface and send it to the manufacturer for inspection.
EtherCAT: protocol error
Configurable
Cause
CAN over EtherCAT is not in use.
Measure
• Incorrect protocol.
• EtherCAT bus cabling fault.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
249
B
Diagnostic messages
Fault group 62
No.
Code
EtherCAT error (CMMP-AS-...-M3 only)
Message
62-3
-
62-4
-
62-5
-
EtherCAT: invalid RPDO length
Configurable
Cause
Sync manager 2 buffer size is too large.
Measure
• Check the RPDO configuration of the motor controller and the
control system.
EtherCAT: invalid TPDO length
Configurable
Cause
Sync manager 3 buffer size is too large.
Measure
• Check the TPDO configuration of the motor controller and the
control system.
EtherCAT: erroneous cyclic data transmission
Configurable
Cause
Emergency shut-down due to failure of cyclic data transmission.
Measure
• Check the configuration of the master. Synchronous transmission is unstable.
Reaction
Fault group 63
No.
Code
EtherCAT error (CMMP-AS-...-M3 only)
Message
63-0
-
63-1
-
63-2
-
63-3
-
63-4
-
EtherCAT: interface defective
Configurable
Cause
Error in the hardware.
Measure
• Replace the interface and send it to the manufacturer for
inspection.
EtherCAT: invalid data
Configurable
Cause
Faulty telegram type.
Measure
• Check wiring.
EtherCAT: TPDO data has not been read
Configurable
Cause
The buffer for sending the data is full.
Measure
The data was sent faster than the motor controller could process it.
• Reduce the cycle time on the EtherCAT bus.
EtherCAT: No distributed clocks active
Configurable
Cause
Warning: Firmware is synchronising with the telegram, not with the
distributed clocks system. When the EtherCAT was started, no
hardware SYNC (distributed clocks) was found. The firmware now
synchronises with the EtherCAT frame.
Measure
• If necessary, check whether the master supports the Distributed Clocks feature.
• Otherwise: Ensure that the EtherCAT frames are not interrupted
by other frames if the Interpolated Position Mode is to be used.
EtherCAT: missing SYNC message in the IPO cycle
Configurable
Cause
Telegrams are not being sent in the time slot pattern of the IPO.
Measure
• Check the participant responsible for distributed clocks.
250
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 64
No.
Code
DeviceNet error (CMMP-AS-...-M3 only)
Message
64-0
-
64-1
-
64-2
-
64-3
-
64-4
-
64-5
-
64-6
-
DeviceNet: Duplicate MAC ID
Configurable
Cause
The duplicate MAC-ID check has found two nodes with the same
MAC-ID.
Measure
• Change the MAC-ID of one of the nodes to an unused value.
DeviceNet: bus power lost
Configurable
Cause
The DeviceNet interface is not supplied with 24 V DC.
Measure
• In addition to the motor controller, the DeviceNet interface
must also be connected to 24 V DC.
DeviceNet: receive buffer overflow
Configurable
Cause
Too many messages received within a short period.
Measure
• Reduce the scan rate.
DeviceNet: send buffer overflow
Configurable
Cause
Not sufficient free space on the CAN bus for sending messages.
Measure
• Increase the baud rate.
• Reduce the number of nodes.
• Reduce the scan rate.
DeviceNet: IO message not sent
Configurable
Cause
Error sending I/O data.
Measure
• Check to ensure the network is connected correctly and has no
faults.
DeviceNet: bus off
Configurable
Cause
The CAN controller is BUS OFF.
Measure
• Check to ensure the network is connected correctly and has no
faults.
DeviceNet: CAN controller reports overflow
Configurable
Cause
The CAN controller has an overflow.
Measure
• Increase the baud rate.
• Reduce the number of nodes.
• Reduce the scan rate.
Reaction
Fault group 65
No.
Code
DeviceNet error (CMMP-AS-...-M3 only)
Message
65-0
-
65-1
-
DeviceNet activated, but no interface
Configurable
Cause
The DeviceNet communication is activated in the parameter set of
the motor controller, but no interface is available.
Measure
• Deactivate the DeviceNet communication.
• Connect an interface.
DeviceNet: IO connection timeout
Configurable
Cause
Interruption of an I/O connection.
Measure
• An I/O message is not received within the expected time.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
251
B
Diagnostic messages
Fault group 68
No.
Code
EtherNet/IP error (CMMP-AS-...-M3 only)
Message
68-0
-
68-1
-
68-2
-
68-3
-
68-6
-
EtherNet/IP: serious error
Configurable
Cause
A serious internal error has occurred. It can be triggered by a
defective interface, for example.
Measure
• Try to acknowledge the error.
• Carry out a reset.
• Replace the interface.
• If the error continues, contact Technical Support.
EtherNet/IP: general communication error
Configurable
Cause
A serious error was detected in the EtherNet/IP interface.
Measure
• Try to acknowledge the error.
• Carry out a reset.
• Replace the interface.
• If the error continues, contact Technical Support.
EtherNet/IP: Connection has been closed
Configurable
Cause
The connection was closed via the controller.
Measure
A new connection to the controller must be constructed.
EtherNet/IP: connection interruption
Configurable
Cause
A connection interruption occurred during operation.
Measure
• Check the cabling between the motor controller and the controller.
• Construct a new connection to the controller.
EtherNet/IP: duplicate network address present
Configurable
Cause
At least one device with the same IP address exists in the network.
Measure
• Use unique IP addresses for all equipment in the network.
Reaction
Fault group 69
No.
Code
EtherNet/IP error (CMMP-AS-...-M3 only)
Message
69-0
-
69-1
-
69-2
-
EtherNet/IP: minor error
Configurable
Cause
A minor error was detected in the EtherNet/IP interface.
Measure
• Try to acknowledge the error.
• Carry out a reset.
EtherNet/IP: incorrect IP configuration
Configurable
Cause
An incorrect IP configuration has been detected.
Measure
• Correct the IP configuration.
EtherNet/IP: Fieldbus interface not found
Configurable
Cause
There is no EtherNet/IP interface in the slot.
Measure
• Please check whether an EtherNet/IP interface is in slot Ext2.
252
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 69
No.
Code
EtherNet/IP error (CMMP-AS-...-M3 only)
Message
69-3
EtherNet/IP: interface version not supported
Configurable
Cause
There is an EtherNet/IP interface with incompatible version in the
slot.
Measure
• Please update the firmware to the latest motor controller firmware.
-
Reaction
Fault group 70
No.
Code
FHPP protocol error
Message
70-1
-
70-2
-
70-3
-
FHPP: mathematical error
Configurable
Cause
Overrun/underrun or division by zero during calculation of cyclic
data.
Measure
• Check the cyclic data.
• Check the factor group.
FHPP: factor group invalid
Configurable
Cause
Calculation of the factor group leads to invalid values.
Measure
• Check the factor group.
FHPP: invalid operating mode change
Configurable
Cause
Changing from the current to the desired operating mode is not
permitted.
– Error occurs when the OPM bits in the status S5 “Reaction to
fault” or S4 “Operation enabled” are changed.
– Exception: In the status SA1 “Ready”, the change between
“Record select” and “Direct Mode” is permissible.
Measure
• Check your application. It may be that not every change is
permissible.
Reaction
Fault group 71
No.
Code
FHPP protocol error
Message
71-1
-
71-2
-
FHPP: invalid receive telegram
Configurable
Cause
Too little data is being transmitted by the control system
(data length too short).
Measure
• Check the data length parameterised in the control system for
the controller’s received telegram.
• Check the configured data length in the FHPP+ Editor of the FCT.
FHPP: invalid response telegram
Configurable
Cause
Too much data is to be transmitted from the motor controller to the
control system (data length too great).
Measure
• Check the data length parameterised in the control system for
the controller’s received telegram.
• Check the configured data length in the FHPP+ Editor of the FCT.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
253
B
Diagnostic messages
Fault group 72
No.
Code
PROFINET error (CMMP-AS-...-M3 only)
Message
72-0
-
72-1
-
72-3
-
72-4
-
72-5
-
72-6
-
PROFINET: initialisation error
Configurable
Cause
Interface presumably includes an incompatible stack version or is
defective.
Measure
• Replace interface.
PROFINET: bus error
Configurable
Cause
No communication possible (e.g. line removed).
Measure
• Check cabling
• Start PROFINET communication again.
PROFINET: invalid IP configuration
Configurable
Cause
An invalid IP configuration was entered in the interface. The interface cannot start with it.
Measure
• Parameterise a permissible IP configuration via FCT.
PROFINET: invalid device name
Configurable
Cause
A PROFINET device name was assigned with which the controller
cannot communicate with the PROFINET (character specification
from PROFINET standard).
Measure
• Parameterise a permissible PROFINET device name via FCT.
PROFINET: interface defective
Configurable
Cause
Interface CAMC-F-PN defective.
Measure
• Replace interface.
PROFINET: indication invalid/not supported
Configurable
Cause
A message is issued by the PROFINET interface that is not supported by the motor controller.
Measure
• Please contact Technical Support.
Reaction
Fault group 73
No.
Code
PROFIenergy error (CMMP-AS-...-M3 only)
Message
73-0
PROFIenergy: status not possible
Configurable
Cause
An attempt was made in a positioning motion to place the controller in the energy-saving status. This is only possible at rest. The
drive does not take on the status and continues to travel.
Measure
–
254
-
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 80
No.
Code
IRQ overflow
Message
80-0
F080h
80-1
F081h
80-2
F082h
80-3
F083h
Current regulator IRQ overflow
Cause
The process data could not be calculated in the set
current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
Speed regulator IRQ overflow
Cause
The process data could not be calculated in the set
current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
Overflow position controller IRQ
Cause
The process data could not be calculated in the set
current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
Interpolator IRQ overflow
Cause
The process data could not be calculated in the set
current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
Reaction
PS off
PS off
PS off
PS off
Fault group 81
No.
Code
IRQ overflow
Message
81-4
F084h
81-5
F085h
Low-level IRQ overflow
PS off
Cause
The process data could not be calculated in the set current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
MDC IRQ overflow
PS off
Cause
The process data could not be calculated in the set
current/velocity/position interpolator cycle.
Measure
• Please contact Technical Support.
Reaction
Fault group 82
No.
Code
Sequence control
Message
82-0
-
82-1
-
Sequence control
Configurable
Cause
IRQ4 overflow (10 ms low-level IRQ).
Measure
• Internal process control: process was interrupted.
• For information only - no action required.
Multiple-started CO write access
Configurable
Cause
Parameters in cyclical and acyclical operation are used concurrently.
Measure
• Only one parameterisation interface can be used (USB or
Ethernet).
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
255
B
Diagnostic messages
Fault group 83
No.
Code
Interface error (CMMP-AS-...-M3 only)
Message
83-0
Invalid option module
Configurable
Cause
– The plugged-in interface could not be detected.
– The loaded firmware is not known.
– A supported interface might be plugged into the wrong slot
(e.g. SERCOS 2, EtherCAT).
-
Measure
83-1
-
83-2
-
Reaction
• Check firmware whether interface is supported. If it is:
• Check that the interface is in the right place and is plugged in
correctly.
• Replace interface and/or firmware.
Option module not supported
Configurable
Cause
The plugged-in interface could be detected but is not supported by
the loaded firmware.
Measure
• Check firmware whether interface is supported.
• If necessary, replace the firmware.
Option module: hardware revision not supported
Configurable
Cause
The plugged-in interface could be detected and is basically also
supported. But in this case, the current hardware version is not
supported (because it is too old).
Measure
• The interface must be exchanged. If necessary, contact Technical Support.
Fault group 84
No.
Code
Conditions for controller enable not fulfilled
Message
84-0
Conditions for controller enable not fulfilled
Warn
Cause
One or more conditions for controller enable are not fulfilled. These
include:
– DIN4 (output stage enable) is off.
– DIN5 (controller enable) is off.
– Intermediate circuit not yet loaded.
– Encoder is not yet ready for operation.
– Angle encoder identification is still active.
– Automatic current regulator identification is still active.
– Encoder data are invalid.
– Status change of the safety function not yet completed.
– Firmware or DCO download via Ethernet (TFTP) active.
– DCO download onto memory card still active.
– Firmware download via Ethernet active.
Measure
• Check status of digital inputs.
• Check encoder cables.
• Wait for automatic identification.
• Wait for completion of the firmware or DCO downloads.
256
-
Reaction
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
B
Diagnostic messages
Fault group 90
No.
Code
Internal error
Message
90-0
5080h
90-2
5080h
90-3
5080h
90-4
5080h
90-5
5080h
90-6
5080h
90-9
5080h
Missing hardware components (SRAM)
PS off
Cause
External SRAM not detected / not sufficient.
Hardware error (SRAM component or board is defective).
Measure • Please contact Technical Support.
Error when booting FPGA
PS off
Cause
The FPGA (hardware) cannot be booted. The FPGA is booted serially
when the device is started, but in this case it could not be loaded
with data or it reported a checksum error.
Measure • Switch on the device again (24 V). If the error appears again, the
hardware is faulty.
Error at SD-ADU start
PS off
Cause
SD-ADUs (hardware) cannot be started. One or more SD-ADUs are
not supplying any serial data.
Measure • Switch on the device again (24 V). If the error appears again, the
hardware is faulty.
SD-ADU synchronisation error after start
PS off
Cause
SD-ADU (hardware) not synchronous after starting. During operation, the SD-ADUs for the resolver signals continue running with
strict synchronisation once they have been initially started synchronously. The SD-ADUs could not be started at the same time
during that initial start phase.
Measure • Switch on the device again (24 V). If the error appears again, the
hardware is faulty.
SD-ADU not synchronous
PS off
Cause
SD-ADU (hardware) not synchronous after starting. During operation, the SD-ADUs for the resolver signals continue running with
strict synchronisation once they have been initially started synchronously. This is checked continually during operation and an error
may be triggered.
Measure • Possibly a massive EMC coupling.
• Switch on the device again (24 V). If the error appears again, the
hardware is faulty.
IRQ0 (current regulator): trigger error
PS off
Cause
The output stage does not trigger the software IRQ, which then operates the current regulator. Very likely to be a hardware error on the
board or in the processor.
Measure • Switch on the device again (24 V). If the error appears again, the
hardware is faulty.
DEBUG firmware loaded
PS off
Cause
A development version compiled for the debugger was loaded as
normal.
Measure • Check the firmware version, and update the firmware if necessary.
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Reaction
257
B
Diagnostic messages
Fault group 91
No.
Code
Initialisation error
Message
91-0
6000h
91-1
-
91-2
-
91-3
-
Internal initialisation error
PS off
Cause
Internal SRAM too small for the compiled firmware. Can only occur
with development versions.
Measure • Check the firmware version, and update the firmware if necessary.
Memory error when copying
PS off
Cause
Firmware parts were not copied correctly from the external FLASH into
the internal RAM.
Measure • Switch on the device again (24 V). If the error occurs repeatedly,
check the firmware version and update the firmware if necessary.
Error when reading the controller/power section coding
PS off
Cause
The ID-EEPROM in the controller or power section could either not be
addressed at all or does not have consistent data.
Measure • Switch on the device again (24 V). If the error occurs repeatedly,
the hardware is faulty. No repair possible.
Software initialisation error
PS off
Cause
One of the following components is missing or could not be initialised:
a) Shared memory not available or defective.
b) Driver library not available or defective.
Measure • Check firmware design, update if necessary.
Reaction
Instructions on actions with the error messages 08-2 … 08-7
Measure
Notes
• Check
whether
encoder
signals are
faulty.
• Test with
other
encoders.
– Check the wiring, e.g. are one or more phases of the track signals interrupted
or short-circuited?
– Check that installation complies with EMC recommendations (cable screening
on both sides?).
– Only with incremental encoders:
With TTL single-ended signals (HALL signals are always TTL single-ended
signals): Check whether there might be an excessive voltage drop on the GND
line; in this case = signal reference.
Check whether there might be an excessive voltage drop on the GND line; in
this case = signal reference.
– Check the level of supply voltage on the encoder. Sufficient? If not, change the
cable diameter (connect unused lines in parallel) or use voltage feedback
(SENSE+ and SENSE-).
– If the error still occurs when the configuration is correct, test with a different
(error-free) encoder (replace the connecting cable as well). If the error still
occurs, there is a fault in the motor controller. Repair by the manufacturer is
required.
Tab. B.2 Instructions on error messages 08-2 … 08-7
258
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
Index
A
Acceleration
– Brake (position) . . . . . . . . . . . . . . . . . . . . . 183
– Quick stop (position) . . . . . . . . . . . . . . . . . 183
acceleration_factor . . . . . . . . . . . . . . . . . . . . . 83
Activate undervoltage monitor . . . . . . . . . . . . 92
Actual position value (increments) . . . . . . . . 108
Actual speed value . . . . . . . . . . . . . . . . . . . . . 199
Actual value
– Position in increments
(position_actual_value_s) . . . . . . . . . . . . . 108
– Position in position units
(position_actual_value) . . . . . . . . . . . . . . . 108
– Torque (torque_actual_value) . . . . . . . . . . 209
actual_dc_link_circuit_voltage . . . . . . . . . . . . 91
actual_size . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
analog_input_offset . . . . . . . . . . . . . . . . . . . . 126
analog_input_offset_ch_0 . . . . . . . . . . . . . . . 126
analog_input_offset_ch_1 . . . . . . . . . . . . . . . 126
analog_input_offset_ch_2 . . . . . . . . . . . . . . . 126
analog_input_voltage . . . . . . . . . . . . . . . . . . 125
analog_input_voltage_ch_0 . . . . . . . . . . . . . 125
analog_input_voltage_ch_1 . . . . . . . . . . . . . 125
analog_input_voltage_ch_2 . . . . . . . . . . . . . 126
Analogue inputs
– Input voltage . . . . . . . . . . . . . . . . . . . . . . . . 125
– Input voltage channel 0 . . . . . . . . . . . . . . . 125
– Input voltage channel 1 . . . . . . . . . . . . . . . 125
– Input voltage channel 2 . . . . . . . . . . . . . . . 126
– Offset voltage . . . . . . . . . . . . . . . . . . . . . . . 126
– Offset voltage channel 0 . . . . . . . . . . . . . . . 126
– Offset voltage channel 1 . . . . . . . . . . . . . . . 126
– Offset voltage channel 2 . . . . . . . . . . . . . . . 126
Angle encoder offset . . . . . . . . . . . . . . . . . . . . 98
Approach new position . . . . . . . . . . . . . . . . . 185
B
Behaviour with command
– disable operation . . . . . . . . . . . . . . . . . . . .
– quick stop . . . . . . . . . . . . . . . . . . . . . . . . . .
– shutdown . . . . . . . . . . . . . . . . . . . . . . . . . .
Brake delay time . . . . . . . . . . . . . . . . . . . . . .
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
166
166
165
139
brake_delay_time . . . . . . . . . . . . . . . . . . . . .
buffer_clear . . . . . . . . . . . . . . . . . . . . . . . . . .
buffer_organisation . . . . . . . . . . . . . . . . . . . .
buffer_position . . . . . . . . . . . . . . . . . . . . . . .
139
193
192
192
C
cob_id_sync . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
cob_id_used_by_pdo . . . . . . . . . . . . . . . . . . . 29
commissioning_state . . . . . . . . . . . . . . . . . . . 144
Contouring error . . . . . . . . . . . . . . . . . . . . . . . 103
– Error window . . . . . . . . . . . . . . . . . . . . . . . . 109
– Limit value overrun . . . . . . . . . . . . . . . . . . . 111
– Time-out time . . . . . . . . . . . . . . . . . . . . . . . 109
Contouring error limit value . . . . . . . . . . . . . . 111
Contouring error limit value exceeded . . . . . . 111
Control word for interpolation data . . . . . . . . 189
control_effort . . . . . . . . . . . . . . . . . . . . . . . . . 110
Controller enable logic . . . . . . . . . . . . . . . . . . . 88
Controller error . . . . . . . . . . . . . . . . . . . . . . . . . 37
controlword . . . . . . . . . . . . . . . . . . . . . . . . . . 154
– Bit assignment . . . . . . . . . . . . . . 150, 153, 155
– Commands . . . . . . . . . . . . . . . . . . . . . . . . . 155
– Object description . . . . . . . . . . . . . . . . . . . 154
Conversion factors . . . . . . . . . . . . . . . . . . . . . . 77
– Choice of prefix . . . . . . . . . . . . . . . . . . . . . . . 86
– Position factor . . . . . . . . . . . . . . . . . . . . . . . 79
Correction velocity . . . . . . . . . . . . . . . . . . . . . 106
Current following error . . . . . . . . . . . . . . . . . . 109
Current intermediate circuit voltage . . . . . . . . 91
Current limiting . . . . . . . . . . . . . . . . . . . . . . . . 114
Current regulator
– Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
– Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 100
– Time constant . . . . . . . . . . . . . . . . . . . . . . . 100
Current setpoint value . . . . . . . . . . . . . . . . . . 209
current_actual_value . . . . . . . . . . . . . . . . . . . 210
current_limitation . . . . . . . . . . . . . . . . . . . . . 114
curve generator . . . . . . . . . . . . . . . . . . . . . . . 180
Cycle time
– Current regulator . . . . . . . . . . . . . . . . . . . . 143
– Position control . . . . . . . . . . . . . . . . . 143, 144
– Speed regulator . . . . . . . . . . . . . . . . . . . . . 143
259
CMMP-AS-...-M3/-M0
Cycle time PDOs . . . . . . . . . . . . . . . . . . . . . . . . 29
cycletime_current_controller . . . . . . . . . . . . . 143
cycletime_position_controller . . . . . . . . . . . . 143
cycletime_trajectory_generator . . . . . . . . . . 144
cycletime_velocity_controller . . . . . . . . . . . . 143
D
dc_link_circuit_voltage . . . . . . . . . . . . . . . . . 210
Deactivate undervoltage monitor . . . . . . . . . . 92
Device Control . . . . . . . . . . . . . . . . . . . . . . . . 148
Device nominal current . . . . . . . . . . . . . . . . . . 92
Device nominal voltage . . . . . . . . . . . . . . . . . . 90
dig_out_state_mapp_dout_1 . . . . . . . . . . . . 129
dig_out_state_mapp_dout_2 . . . . . . . . . . . . 129
dig_out_state_mapp_dout_3 . . . . . . . . . . . . 129
dig_out_state_mapp_ea88_0_high . . . . . . . 131
dig_out_state_mapp_ea88_0_low . . . . . . . . 131
Digital inputs . . . . . . . . . . . . . . . . . . . . . . . . . 127
Digital outputs . . . . . . . . . . . . . . . . . . . . . . . . 128
– Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
– Mapping of CAMC-EA . . . . . . . . . . . . . . . . . 131
– Mapping of DOUT1 . . . . . . . . . . . . . . . . . . . 129
– Mapping of DOUT2 . . . . . . . . . . . . . . . . . . . 129
– Mapping of DOUT3 . . . . . . . . . . . . . . . . . . . 129
– Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
– Statuses . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
digital_inputs . . . . . . . . . . . . . . . . . . . . . . . . . 127
digital_outputs . . . . . . . . . . . . . . . . . . . . . . . . 128
digital_outputs_data . . . . . . . . . . . . . . . . . . . 128
digital_outputs_mask . . . . . . . . . . . . . . . . . . 128
digital_outputs_state_mapping . . . . . . . . . . 129
disable_operation_option_code . . . . . . . . . . 166
Divisor
– acceleration_factor . . . . . . . . . . . . . . . . . . . 84
– position_factor . . . . . . . . . . . . . . . . . . . . . . . 79
– velocity_encoder_factor . . . . . . . . . . . . . . . . 81
drive_data . . . . . . . . . . . . . 88, 97, 111, 132, 138
E
EMERGENCY Message . . . . . . . . . . . . . . . . . . .
Enable Logic . . . . . . . . . . . . . . . . . . . . . . . . . . .
enable_dc_link_undervoltage_error . . . . . . . .
enable_enhanced_modulation . . . . . . . . . . . .
260
37
88
92
89
enable_logic . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
encoder_emulation_data . . . . . . . . . . . . . . . 121
encoder_emulation_offset . . . . . . . . . . . . . . 121
encoder_emulation_resolution . . . . . . . . . . . 121
encoder_offset_angle . . . . . . . . . . . . . . . . . . . 98
encoder_x10_counter . . . . . . . . . . . . . . . . . . 120
encoder_x10_data_field . . . . . . . . . . . . . . . . 119
encoder_x10_divisor . . . . . . . . . . . . . . . . . . . 120
encoder_x10_numerator . . . . . . . . . . . . . . . . 120
encoder_x10_resolution . . . . . . . . . . . . . . . . 119
encoder_x2a_data_field . . . . . . . . . . . . . . . . 117
encoder_x2a_divisor . . . . . . . . . . . . . . . . . . . 117
encoder_x2a_numerator . . . . . . . . . . . . . . . . 117
encoder_x2a_resolution . . . . . . . . . . . . . . . . 117
encoder_x2b_counter . . . . . . . . . . . . . . . . . . 119
encoder_x2b_data_field . . . . . . . . . . . . . . . . 118
encoder_x2b_divisor . . . . . . . . . . . . . . . . . . . 118
encoder_x2b_numerator . . . . . . . . . . . . . . . . 118
encoder_x2b_resolution . . . . . . . . . . . . . . . . 118
end_velocity . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Error management . . . . . . . . . . . . . . . . . . . . . 146
error_management . . . . . . . . . . . . . . . . . . . . 146
error_register . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Extended sine modulation . . . . . . . . . . . . . . . . 89
F
Factor group . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
– acceleration_factor . . . . . . . . . . . . . . . . . . . 83
– polarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
– position_factor . . . . . . . . . . . . . . . . . . . . . . . 78
– velocity_encoder_factor . . . . . . . . . . . . . . . . 81
fault_reaction_option_code . . . . . . . . . . . . . 167
Filter time constant synchronous speed . . . . 124
firmware_custom_version . . . . . . . . . . . . . . . 142
firmware_main_version . . . . . . . . . . . . . . . . . 141
first_mapped_object . . . . . . . . . . . . . . . . . . . . 30
Following error time-out time . . . . . . . . . . . . 109
Following error window . . . . . . . . . . . . . . . . . 109
Following_Error . . . . . . . . . . . . . . . . . . . . . . . 103
following_error_current_value . . . . . . . . . . . 109
following_error_time_out . . . . . . . . . . . . . . . 109
following_error_window . . . . . . . . . . . . . . . . 109
fourth_mapped_object . . . . . . . . . . . . . . . . . . 31
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
G
Gain of the current regulator . . . . . . . . . . . . . 100
H
home_offset . . . . . . . . . . . . . . . . . . . . . . . . . .
Homing
– Creep speed . . . . . . . . . . . . . . . . . . . . . . . .
– Method . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Search speed . . . . . . . . . . . . . . . . . . . . . . .
– speeds . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Zero point offset . . . . . . . . . . . . . . . . . . . . .
Homing mode . . . . . . . . . . . . . . . . . . . . . . . . .
– home_offset . . . . . . . . . . . . . . . . . . . . . . . .
– homing_acceleration . . . . . . . . . . . . . . . . .
– homing_method . . . . . . . . . . . . . . . . . . . . .
– homing_speeds . . . . . . . . . . . . . . . . . . . . .
Homing run . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Control of the . . . . . . . . . . . . . . . . . . . . . . .
– Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . .
homing_acceleration . . . . . . . . . . . . . . . . . . .
homing_method . . . . . . . . . . . . . . . . . . . . . . .
homing_speeds . . . . . . . . . . . . . . . . . . . . . . .
homing_switch_polarity . . . . . . . . . . . . . . . .
homing_switch_selector . . . . . . . . . . . . . . . .
homing_timeout . . . . . . . . . . . . . . . . . . . . . . .
172
174
173
173
173
172
170
172
174
172
173
170
179
174
174
172
173
133
134
174
I
I2t extent of utilisation . . . . . . . . . . . . . . . . . . . 97
I2t time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Identification of the device . . . . . . . . . . . . . . 139
Identifier for PDO . . . . . . . . . . . . . . . . . . . . . . . 29
identity_object . . . . . . . . . . . . . . . . . . . . . . . . 139
iit_error_enable . . . . . . . . . . . . . . . . . . . . . . . . 97
iit_ratio_motor . . . . . . . . . . . . . . . . . . . . . . . . . 97
iit_time_motor . . . . . . . . . . . . . . . . . . . . . . . . . 96
Incremental encoder emulation
– Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
– Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . 121
inhibit_time . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Instructions on this documentation . . . . . . . . . . 7
Intermediate circuit monitoring . . . . . . . . . . . . 91
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Intermediate circuit voltage
– Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
– Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
– Minimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Interpolation data . . . . . . . . . . . . . . . . . . . . . 188
Interpolation type . . . . . . . . . . . . . . . . . . . . . 188
interpolation_data_configuration . . . . . . . . . 191
interpolation_data_record . . . . . . . . . . . . . . . 188
interpolation_submode_select . . . . . . . . . . . 188
interpolation_sync_definition . . . . . . . . . . . . 190
interpolation_time_period . . . . . . . . . . . . . . . 189
ip_data_controlword . . . . . . . . . . . . . . . . . . . 189
ip_data_position . . . . . . . . . . . . . . . . . . . . . . 189
ip_sync_every_n_event . . . . . . . . . . . . . . . . . 191
ip_time_index . . . . . . . . . . . . . . . . . . . . . . . . 190
ip_time_units . . . . . . . . . . . . . . . . . . . . . . . . . 190
L
Limit switch . . . . . . . . . . . . . . . . . . 132, 175, 176
– Emergency stop ramp . . . . . . . . . . . . . . . . . 134
– Polarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
limit_current . . . . . . . . . . . . . . . . . . . . . . 114, 115
limit_current_input_channel . . . . . . . . . . . . . 114
limit_speed_input_channel . . . . . . . . . . . . . . 115
limit_switch_deceleration . . . . . . . . . . . . . . . 134
limit_switch_polarity . . . . . . . . . . . . . . . . . . . 132
Load default parameters . . . . . . . . . . . . . . . . . 74
M
Manufacturer code . . . . . . . . . . . . . . . . . . . . . 139
Mapping parameter for PDOs . . . . . . . . . . . . . 30
max_buffer_size . . . . . . . . . . . . . . . . . . . . . . . 191
max_current . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
max_dc_link_circuit_voltage . . . . . . . . . . . . . . 91
max_motor_speed . . . . . . . . . . . . . . . . . . . . . 203
max_position_range_limit . . . . . . . . . . . . . . . 112
max_power_stage_temperature . . . . . . . . . . . 90
max_torque . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Maximum current . . . . . . . . . . . . . . . . . . . . . . . 93
Maximum intermediate circuit voltage . . . . . . 91
Maximum motor speed . . . . . . . . . . . . . . . . . 203
Maximum output stage temperature . . . . . . . . 90
Maximum torque . . . . . . . . . . . . . . . . . . . . . . 208
261
CMMP-AS-...-M3/-M0
Methods of homing . . . . . . . . . . . . . . . . . . . . 175
min_dc_link_circuit_voltage . . . . . . . . . . . . . . 91
min_position_range_limit . . . . . . . . . . . . . . . 112
Minimum intermediate circuit voltage . . . . . . . 91
modes_of_operation . . . . . . . . . . . . . . . . . . . 168
modes_of_operation_display . . . . . . . . . . . . 169
motion_profile_type . . . . . . . . . . . . . . . . . . . 184
Motor parameter
– I2t time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
– Nominal current . . . . . . . . . . . . . . . . . . . . . . 95
– Pole (pair) number . . . . . . . . . . . . . . . . . . . . 96
– Resolver offset angle . . . . . . . . . . . . . . . . . . 98
Motor peak current . . . . . . . . . . . . . . . . . . . . . 95
Motor rated current . . . . . . . . . . . . . . . . . . . . . 95
Motor Rated Torque . . . . . . . . . . . . . . . . . . . . 209
motor_data . . . . . . . . . . . . . . . . . . . . . . . . 96, 98
motor_rated_current . . . . . . . . . . . . . . . . . . . . 95
motor_rated_torque . . . . . . . . . . . . . . . . . . . 209
motor_temperatur_sensor_polarity . . . . . . . . 99
N
Nominal speed for speed adjustment . . . . . . 203
nominal_current . . . . . . . . . . . . . . . . . . . . . . . . 92
nominal_dc_link_circuit_voltage . . . . . . . . . . . 90
Not Ready to Switch On . . . . . . . . . . . . . . . . . 152
Number of mapped objects . . . . . . . . . . . . . . . 30
Number of pole pairs . . . . . . . . . . . . . . . . . . . . 96
Number of poles . . . . . . . . . . . . . . . . . . . . . . . . 96
number_of_mapped_objects . . . . . . . . . . . . . 30
numerator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
– acceleration_factor . . . . . . . . . . . . . . . . . . . 84
Numerator
– position_factor . . . . . . . . . . . . . . . . . . . . . . . 79
– velocity_encoder_factor . . . . . . . . . . . . . . . . 81
O
Objects
– Object 1001h . . . . . . . . . . . . . . . . . . . . . . . .
– Object 1003h . . . . . . . . . . . . . . . . . . . . . . . .
– Object 1003h_01h . . . . . . . . . . . . . . . . . . . .
– Object 1003h_02h . . . . . . . . . . . . . . . . . . . .
– Object 1003h_03h . . . . . . . . . . . . . . . . . . . .
– Object 1003h_04h . . . . . . . . . . . . . . . . . . . .
262
37
38
38
38
38
38
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 1005h . . . . . . . . . . . . . . . . . . . . . . . . 35
Object 1010h . . . . . . . . . . . . . . . . . . . . . . . . 74
Object 1010h_01h . . . . . . . . . . . . . . . . . . . . 75
Object 1011h . . . . . . . . . . . . . . . . . . . . . . . . 74
Object 1011h_01h . . . . . . . . . . . . . . . . . . . . 74
Object 1018h . . . . . . . . . . . . . . . . . . . . . . . 139
Object 1018h_01h . . . . . . . . . . . . . . . . . . . 139
Object 1018h_02h . . . . . . . . . . . . . . . . . . . 140
Object 1018h_03h . . . . . . . . . . . . . . . . . . . 140
Object 1018h_04h . . . . . . . . . . . . . . . . . . . 140
Object 1100h . . . . . . . . . . . . . . . . . . . . . . . . 53
Object 1402h . . . . . . . . . . . . . . . . . . . . . . . . 34
Object 1403h . . . . . . . . . . . . . . . . . . . . . . . . 34
Object 1602h . . . . . . . . . . . . . . . . . . . . . . . . 34
Object 1603h . . . . . . . . . . . . . . . . . . . . . . . . 34
Object 1800h . . . . . . . . . . . . . . . . . . . . . 29, 31
Object 1800h_01h . . . . . . . . . . . . . . . . . . . . 29
Object 1800h_02h . . . . . . . . . . . . . . . . . . . . 29
Object 1800h_03h . . . . . . . . . . . . . . . . . . . . 29
Object 1801h . . . . . . . . . . . . . . . . . . . . . . . . 31
Object 1802h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 1803h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 1A00h . . . . . . . . . . . . . . . . . . . . . 30, 31
Object 1A00h_00h . . . . . . . . . . . . . . . . . . . . 30
Object 1A00h_01h . . . . . . . . . . . . . . . . . . . . 30
Object 1A00h_02h . . . . . . . . . . . . . . . . . . . . 30
Object 1A00h_03h . . . . . . . . . . . . . . . . . . . . 30
Object 1A00h_04h . . . . . . . . . . . . . . . . . . . . 31
Object 1A01h . . . . . . . . . . . . . . . . . . . . . . . . 31
Object 1A02h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 1A03h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 1C00h . . . . . . . . . . . . . . . . . . . . . . . . 53
Object 1C00h_00h . . . . . . . . . . . . . . . . . . . . 53
Object 1C00h_01h . . . . . . . . . . . . . . . . . . . . 53
Object 1C00h_02h . . . . . . . . . . . . . . . . . . . . 54
Object 1C00h_03h . . . . . . . . . . . . . . . . . . . . 54
Object 1C00h_04h . . . . . . . . . . . . . . . . . . . . 54
Object 1C10h . . . . . . . . . . . . . . . . . . . . . . . . 54
Object 1C11h . . . . . . . . . . . . . . . . . . . . . . . . 55
Object 1C12h . . . . . . . . . . . . . . . . . . . . . . . . 55
Object 1C12h_00h . . . . . . . . . . . . . . . . . . . . 56
Object 1C12h_01h . . . . . . . . . . . . . . . . . . . . 56
Object 1C12h_02h . . . . . . . . . . . . . . . . . . . . 56
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 1C12h_03h . . . . . . . . . . . . . . . . . . . . 56
Object 1C12h_04h . . . . . . . . . . . . . . . . . . . . 56
Object 1C13h . . . . . . . . . . . . . . . . . . . . . . . . 57
Object 1C13h_00h . . . . . . . . . . . . . . . . . . . . 57
Object 1C13h_01h . . . . . . . . . . . . . . . . . . . . 57
Object 1C13h_02h . . . . . . . . . . . . . . . . . . . . 57
Object 1C13h_03h . . . . . . . . . . . . . . . . . . . . 58
Object 1C13h_04h . . . . . . . . . . . . . . . . . . . . 58
Object 2014h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 2015h . . . . . . . . . . . . . . . . . . . . . . . . 32
Object 2016h . . . . . . . . . . . . . . . . . . . . . . . . 33
Object 2017h . . . . . . . . . . . . . . . . . . . . . . . . 33
Object 201Ah . . . . . . . . . . . . . . . . . . . . . . . 121
Object 201Ah_01h . . . . . . . . . . . . . . . . . . . 121
Object 201Ah_02h . . . . . . . . . . . . . . . . . . . 121
Object 2021h . . . . . . . . . . . . . . . . . . . . . . . 122
Object 2022h . . . . . . . . . . . . . . . . . . . . . . . 123
Object 2023h . . . . . . . . . . . . . . . . . . . . . . . 124
Object 2024h . . . . . . . . . . . . . . . . . . . . . . . 117
Object 2024h_01h . . . . . . . . . . . . . . . . . . . 117
Object 2024h_02h . . . . . . . . . . . . . . . . . . . 117
Object 2024h_03h . . . . . . . . . . . . . . . . . . . 117
Object 2025h . . . . . . . . . . . . . . . . . . . . . . . 119
Object 2025h_01h . . . . . . . . . . . . . . . . . . . 119
Object 2025h_02h . . . . . . . . . . . . . . . . . . . 120
Object 2025h_03h . . . . . . . . . . . . . . . . . . . 120
Object 2025h_04h . . . . . . . . . . . . . . . . . . . 120
Object 2026h . . . . . . . . . . . . . . . . . . . . . . . 118
Object 2026h_01h . . . . . . . . . . . . . . . . . . . 118
Object 2026h_02h . . . . . . . . . . . . . . . . . . . 118
Object 2026h_03h . . . . . . . . . . . . . . . . . . . 118
Object 2026h_04h . . . . . . . . . . . . . . . . . . . 119
Object 2028h . . . . . . . . . . . . . . . . . . . . . . . 121
Object 202Dh . . . . . . . . . . . . . . . . . . . . . . . 107
Object 202Eh . . . . . . . . . . . . . . . . . . . . . . . 199
Object 202Fh . . . . . . . . . . . . . . . . . . . . . . . 124
Object 202Fh_07h . . . . . . . . . . . . . . . . . . . 124
Object 2045h . . . . . . . . . . . . . . . . . . . . . . . 174
Object 204Ah . . . . . . . . . . . . . . . . . . . . . . . 135
Object 204Ah_01h . . . . . . . . . . . . . . . . . . . 136
Object 204Ah_02h . . . . . . . . . . . . . . . . . . . 136
Object 204Ah_03h . . . . . . . . . . . . . . . . . . . 136
Object 204Ah_04h . . . . . . . . . . . . . . . . . . . 137
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 204Ah_05h . . . . . . . . . . . . . . . . . . . 137
Object 204Ah_06h . . . . . . . . . . . . . . . . . . . 137
Object 2090h . . . . . . . . . . . . . . . . . . . . . . . 204
Object 2090h_01h . . . . . . . . . . . . . . . . . . . 204
Object 2090h_02h . . . . . . . . . . . . . . . . . . . 205
Object 2090h_03h . . . . . . . . . . . . . . . . . . . 205
Object 2090h_04h . . . . . . . . . . . . . . . . . . . 205
Object 2090h_05h . . . . . . . . . . . . . . . . . . . 205
Object 2100h . . . . . . . . . . . . . . . . . . . . . . . 146
Object 2400h . . . . . . . . . . . . . . . . . . . . . . . 125
Object 2400h_01h . . . . . . . . . . . . . . . . . . . 125
Object 2400h_02h . . . . . . . . . . . . . . . . . . . 125
Object 2400h_03h . . . . . . . . . . . . . . . . . . . 126
Object 2401h . . . . . . . . . . . . . . . . . . . . . . . 126
Object 2401h_01h . . . . . . . . . . . . . . . . . . . 126
Object 2401h_02h . . . . . . . . . . . . . . . . . . . 126
Object 2401h_03h . . . . . . . . . . . . . . . . . . . 126
Object 2415h . . . . . . . . . . . . . . . . . . . . . . . 114
Object 2415h_01h . . . . . . . . . . . . . . . . . . . 114
Object 2415h_02h . . . . . . . . . . . . . . . . . . . 114
Object 2416h . . . . . . . . . . . . . . . . . . . . . . . 115
Object 2416h_01h . . . . . . . . . . . . . . . . . . . 115
Object 2416h_02h . . . . . . . . . . . . . . . . . . . 115
Object 2420h . . . . . . . . . . . . . . . . . . . . . . . 129
Object 2420h_01h . . . . . . . . . . . . . . . . . . . 129
Object 2420h_02h . . . . . . . . . . . . . . . . . . . 129
Object 2420h_03h . . . . . . . . . . . . . . . . . . . 129
Object 2420h_11h . . . . . . . . . . . . . . . . . . . 131
Object 2420h_12h . . . . . . . . . . . . . . . . . . . 131
Object 6040h . . . . . . . . . . . . . . . . . . . . . . . 154
Object 6041h . . . . . . . . . . . . . . . . . . . . . . . 158
Object 604Dh . . . . . . . . . . . . . . . . . . . . . . . . 96
Object 605Ah . . . . . . . . . . . . . . . . . . . . . . . 166
Object 605Bh . . . . . . . . . . . . . . . . . . . . . . . 165
Object 605Ch . . . . . . . . . . . . . . . . . . . . . . . 166
Object 605Eh . . . . . . . . . . . . . . . . . . . . . . . 167
Object 6060h . . . . . . . . . . . . . . . . . . . . . . . 168
Object 6061h . . . . . . . . . . . . . . . . . . . . . . . 169
Object 6062h . . . . . . . . . . . . . . . . . . . . . . . 107
Object 6063h . . . . . . . . . . . . . . . . . . . . . . . 108
Object 6064h . . . . . . . . . . . . . . . . . . . . . . . 108
Object 6065h . . . . . . . . . . . . . . . . . . . . . . . 109
Object 6066h . . . . . . . . . . . . . . . . . . . . . . . 109
263
CMMP-AS-...-M3/-M0
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 6067h . . . . . . . . . . . . . . . . . . . . . . . 110
Object 6068h . . . . . . . . . . . . . . . . . . . . . . . 111
Object 6069h . . . . . . . . . . . . . . . . . . . . . . . 197
Object 606Ah . . . . . . . . . . . . . . . . . . . . . . . 198
Object 606Bh . . . . . . . . . . . . . . . . . . . . . . . 198
Object 606Ch . . . . . . . . . . . . . . . . . . . . . . . 199
Object 606Dh . . . . . . . . . . . . . . . . . . . . . . . 201
Object 606Eh . . . . . . . . . . . . . . . . . . . . . . . 201
Object 606Fh . . . . . . . . . . . . . . . . . . . . . . . 202
Object 6070h . . . . . . . . . . . . . . . . . . . . . . . 202
Object 6071h . . . . . . . . . . . . . . . . . . . . . . . 208
Object 6072h . . . . . . . . . . . . . . . . . . . . . . . 208
Object 6073h . . . . . . . . . . . . . . . . . . . . . . . . 95
Object 6074h . . . . . . . . . . . . . . . . . . . . . . . 209
Object 6075h . . . . . . . . . . . . . . . . . . . . . . . . 95
Object 6076h . . . . . . . . . . . . . . . . . . . . . . . 209
Object 6077h . . . . . . . . . . . . . . . . . . . . . . . 209
Object 6078h . . . . . . . . . . . . . . . . . . . . . . . 210
Object 6079h . . . . . . . . . . . . . . . . . . . . . . . 210
Object 607Ah . . . . . . . . . . . . . . . . . . . . . . . 181
Object 607Bh . . . . . . . . . . . . . . . . . . . . . . . 112
Object 607Bh_01h . . . . . . . . . . . . . . . . . . . 112
Object 607Bh_02h . . . . . . . . . . . . . . . . . . . 112
Object 607Ch . . . . . . . . . . . . . . . . . . . . . . . 172
Object 607Eh . . . . . . . . . . . . . . . . . . . . . . . . 86
Object 6080h . . . . . . . . . . . . . . . . . . . . . . . 203
Object 6081h . . . . . . . . . . . . . . . . . . . . . . . 182
Object 6082h . . . . . . . . . . . . . . . . . . . . . . . 182
Object 6083h . . . . . . . . . . . . . . . . . . . . . . . 182
Object 6084h . . . . . . . . . . . . . . . . . . . . . . . 183
Object 6085h . . . . . . . . . . . . . . . . . . . . . . . 183
Object 6086h . . . . . . . . . . . . . . . . . . . . . . . 184
Object 6087h . . . . . . . . . . . . . . . . . . . . . . . 211
Object 6088h . . . . . . . . . . . . . . . . . . . . . . . 211
Object 608Ah . . . . . . . . . . . . . . . . . . . . . . . . 59
Object 608Bh . . . . . . . . . . . . . . . . . . . . . . . . 59
Object 608Ch . . . . . . . . . . . . . . . . . . . . . . . . 59
Object 608Dh . . . . . . . . . . . . . . . . . . . . . . . . 59
Object 608Eh . . . . . . . . . . . . . . . . . . . . . . . . 59
Object 6093h . . . . . . . . . . . . . . . . . . . . . . . . 78
Object 6093h_01h . . . . . . . . . . . . . . . . . . . . 79
Object 6093h_02h . . . . . . . . . . . . . . . . . . . . 79
Object 6094h . . . . . . . . . . . . . . . . . . . . . . . . 81
264
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 6094h_01h . . . . . . . . . . . . . . . . . . . . 81
Object 6094h_02h . . . . . . . . . . . . . . . . . . . . 81
Object 6097h . . . . . . . . . . . . . . . . . . . . . . . . 83
Object 6097h_01h . . . . . . . . . . . . . . . . . . . . 84
Object 6097h_02h . . . . . . . . . . . . . . . . . . . . 84
Object 6098h . . . . . . . . . . . . . . . . . . . . . . . 172
Object 6099h . . . . . . . . . . . . . . . . . . . . . . . 173
Object 6099h_01h . . . . . . . . . . . . . . . . . . . 173
Object 6099h_02h . . . . . . . . . . . . . . . . . . . 174
Object 609Ah . . . . . . . . . . . . . . . . . . . . . . . 174
Object 60C0h . . . . . . . . . . . . . . . . . . . . . . . 188
Object 60C1h . . . . . . . . . . . . . . . . . . . . . . . 188
Object 60C1h_01h . . . . . . . . . . . . . . . . . . . 189
Object 60C1h_02h . . . . . . . . . . . . . . . . . . . 189
Object 60C2h . . . . . . . . . . . . . . . . . . . . . . . 189
Object 60C2h_01h . . . . . . . . . . . . . . . . . . . 190
Object 60C2h_02h . . . . . . . . . . . . . . . . . . . 190
Object 60C3h . . . . . . . . . . . . . . . . . . . . . . . 190
Object 60C3h_01h . . . . . . . . . . . . . . . . . . . 191
Object 60C3h_02h . . . . . . . . . . . . . . . . . . . 191
Object 60C4h . . . . . . . . . . . . . . . . . . . . . . . 191
Object 60C4h_01h . . . . . . . . . . . . . . . . . . . 191
Object 60C4h_02h . . . . . . . . . . . . . . . . . . . 192
Object 60C4h_03h . . . . . . . . . . . . . . . . . . . 192
Object 60C4h_04h . . . . . . . . . . . . . . . . . . . 192
Object 60C4h_05h . . . . . . . . . . . . . . . . . . . 192
Object 60C4h_06h . . . . . . . . . . . . . . . . . . . 193
Object 60F4h . . . . . . . . . . . . . . . . . . . . . . . 109
Object 60F6h . . . . . . . . . . . . . . . . . . . . . . . 100
Object 60F6h_01h . . . . . . . . . . . . . . . . . . . 100
Object 60F6h_02h . . . . . . . . . . . . . . . . . . . 100
Object 60F9h . . . . . . . . . . . . . . . . . . . . . . . 101
Object 60F9h_01h . . . . . . . . . . . . . . . . . . . 101
Object 60F9h_02h . . . . . . . . . . . . . . . . . . . 102
Object 60F9h_04h . . . . . . . . . . . . . . . . . . . 102
Object 60FAh . . . . . . . . . . . . . . . . . . . . . . . 110
Object 60FBh . . . . . . . . . . . . . . . . . . . . . . . 105
Object 60FBh_01h . . . . . . . . . . . . . . . . . . . 106
Object 60FBh_02h . . . . . . . . . . . . . . . . . . . 106
Object 60FBh_04h . . . . . . . . . . . . . . . . . . . 106
Object 60FBh_05h . . . . . . . . . . . . . . . . . . . 106
Object 60FDh . . . . . . . . . . . . . . . . . . . . . . . 127
Object 60FEh . . . . . . . . . . . . . . . . . . . . . . . 128
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Object 60FEh_01h . . . . . . . . . . . . . . . . . . . 128
Object 60FEh_02h . . . . . . . . . . . . . . . . . . . 128
Object 60FFh . . . . . . . . . . . . . . . . . . . . . . . . 203
Object 6410h . . . . . . . . . . . . . . . . . . . . . . . . 96
Object 6410h_03h . . . . . . . . . . . . . . . . . . . . 96
Object 6410h_04h . . . . . . . . . . . . . . . . . . . . 97
Object 6410h_10h . . . . . . . . . . . . . . . . . . . . 98
Object 6410h_11h . . . . . . . . . . . . . . . . . . . . 98
Object 6410h_14h . . . . . . . . . . . . . . . . . . . . 99
Object 6510h . . . . . . . . . . . . . . . . . . . . . . . . 88
Object 6510h_10h . . . . . . . . . . . . . . . . . . . . 88
Object 6510h_11h . . . . . . . . . . . . . . . . . . . 132
Object 6510h_13h . . . . . . . . . . . . . . . . . . . 134
Object 6510h_14h . . . . . . . . . . . . . . . . . . . 133
Object 6510h_15h . . . . . . . . . . . . . . . . . . . 134
Object 6510h_18h . . . . . . . . . . . . . . . . . . . 139
Object 6510h_20h . . . . . . . . . . . . . . . . . . . 113
Object 6510h_22h . . . . . . . . . . . . . . . . . . . 111
Object 6510h_30h . . . . . . . . . . . . . . . . . . . . 88
Object 6510h_31h . . . . . . . . . . . . . . . . . . . . 89
Object 6510h_32h . . . . . . . . . . . . . . . . . . . . 90
Object 6510h_33h . . . . . . . . . . . . . . . . . . . . 90
Object 6510h_34h . . . . . . . . . . . . . . . . . . . . 91
Object 6510h_35h . . . . . . . . . . . . . . . . . . . . 91
Object 6510h_36h . . . . . . . . . . . . . . . . . . . . 91
Object 6510h_37h . . . . . . . . . . . . . . . . . . . . 92
Object 6510h_38h . . . . . . . . . . . . . . . . . . . . 97
Object 6510h_3Ah . . . . . . . . . . . . . . . . . . . . 89
Object 6510h_40h . . . . . . . . . . . . . . . . . . . . 92
Object 6510h_41h . . . . . . . . . . . . . . . . . . . . 93
Object 6510h_A9h . . . . . . . . . . . . . . . . . . . 141
Object 6510h_AAh . . . . . . . . . . . . . . . . . . . 142
Object 6510h_B0h . . . . . . . . . . . . . . . . . . . 143
Object 6510h_B1h . . . . . . . . . . . . . . . . . . . 143
Object 6510h_B2h . . . . . . . . . . . . . . . . . . . 143
Object 6510h_B3h . . . . . . . . . . . . . . . . . . . 144
Object 6510h_C0h . . . . . . . . . . . . . . . . . . . 144
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Offset of the angle encoder . . . . . . . . . . . . . . . 98
Operating mode . . . . . . . . . . . . . . . . . . . 168, 169
– Homing run . . . . . . . . . . . . . . . . . . . . . . . . . 170
– Modifying of the . . . . . . . . . . . . . . . . . . . . . 168
– Reading of the . . . . . . . . . . . . . . . . . . . . . . 169
– Setting of the . . . . . . . . . . . . . . . . . . . . . . . 168
Output stage parameter . . . . . . . . . . . . . . . . . 87
– Device nominal current . . . . . . . . . . . . . . . . . 92
– Device nominal voltage . . . . . . . . . . . . . . . . 90
– Enable Logic . . . . . . . . . . . . . . . . . . . . . . . . . 88
– Intermediate circuit voltage . . . . . . . . . . . . . 91
– Max. intermediate circuit voltage . . . . . . . . . 91
– Maximum current . . . . . . . . . . . . . . . . . . . . . 93
– Maximum temperature . . . . . . . . . . . . . . . . . 90
– Min. intermediate circuit voltage . . . . . . . . . 91
– PWM frequency . . . . . . . . . . . . . . . . . . . . . . . 88
P
Parameter sets
– Load default values . . . . . . . . . . . . . . . . . . . 74
– Loading and saving . . . . . . . . . . . . . . . . . . . . 72
– Save parameter set . . . . . . . . . . . . . . . . . . . 74
Parametrisation status . . . . . . . . . . . . . . . . . 144
PDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
– 1st mapped object . . . . . . . . . . . . . . . . . . . . 30
– 2nd mapped object . . . . . . . . . . . . . . . . . . . . 30
– 3rd mapped object . . . . . . . . . . . . . . . . . . . . 30
– 4th mapped object . . . . . . . . . . . . . . . . . . . . 31
– RPDO3
1st mapped object . . . . . . . . . . . . . . . . . . . . 34
2nd mapped object . . . . . . . . . . . . . . . . . . . . 34
3rd mapped object . . . . . . . . . . . . . . . . . . . . 34
4th mapped object . . . . . . . . . . . . . . . . . . . . 34
COB-ID used by PDO . . . . . . . . . . . . . . . . . . . 34
first mapped object . . . . . . . . . . . . . . . . . . . 34
fourth mapped object . . . . . . . . . . . . . . . . . . 34
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
number of mapped objects . . . . . . . . . . . . . 34
second mapped object . . . . . . . . . . . . . . . . . 34
third mapped object . . . . . . . . . . . . . . . . . . . 34
transmission type . . . . . . . . . . . . . . . . . . . . . 34
265
CMMP-AS-...-M3/-M0
– RPDO4
1st mapped object . . . . . . . . . . . . . . . . . . . .
2nd mapped object . . . . . . . . . . . . . . . . . . . .
3rd mapped object . . . . . . . . . . . . . . . . . . . .
4th mapped object . . . . . . . . . . . . . . . . . . . .
COB-ID used by PDO . . . . . . . . . . . . . . . . . . .
first mapped object . . . . . . . . . . . . . . . . . . .
fourth mapped object . . . . . . . . . . . . . . . . . .
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . .
number of mapped objects . . . . . . . . . . . . .
second mapped object . . . . . . . . . . . . . . . . .
third mapped object . . . . . . . . . . . . . . . . . . .
transmission type . . . . . . . . . . . . . . . . . . . . .
– TPDO1
1st mapped object . . . . . . . . . . . . . . . . . . . .
2nd mapped object . . . . . . . . . . . . . . . . . . . .
3rd mapped object . . . . . . . . . . . . . . . . . . . .
4th mapped object . . . . . . . . . . . . . . . . . . . .
COB-ID used by PDO . . . . . . . . . . . . . . . . . . .
first mapped object . . . . . . . . . . . . . . . . . . .
fourth mapped object . . . . . . . . . . . . . . . . . .
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . .
inhibit time . . . . . . . . . . . . . . . . . . . . . . . . . .
number of mapped objects . . . . . . . . . . . . .
second mapped object . . . . . . . . . . . . . . . . .
third mapped object . . . . . . . . . . . . . . . . . . .
transmission type . . . . . . . . . . . . . . . . . . . . .
Transmit mask . . . . . . . . . . . . . . . . . . . . . . . .
– TPDO2
1st mapped object . . . . . . . . . . . . . . . . . . . .
2nd mapped object . . . . . . . . . . . . . . . . . . . .
3rd mapped object . . . . . . . . . . . . . . . . . . . .
4th mapped object . . . . . . . . . . . . . . . . . . . .
COB-ID used by PDO . . . . . . . . . . . . . . . . . . .
first mapped object . . . . . . . . . . . . . . . . . . .
fourth mapped object . . . . . . . . . . . . . . . . . .
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . .
inhibit time . . . . . . . . . . . . . . . . . . . . . . . . . .
number of mapped objects . . . . . . . . . . . . .
second mapped object . . . . . . . . . . . . . . . . .
third mapped object . . . . . . . . . . . . . . . . . . .
transmission type . . . . . . . . . . . . . . . . . . . . .
Transmit mask . . . . . . . . . . . . . . . . . . . . . . . .
266
34
34
34
34
34
34
34
34
34
34
34
34
31
31
31
31
31
31
31
31
31
31
31
31
31
32
31
31
31
31
31
31
31
31
31
31
31
31
31
32
– TPDO3
1st mapped object . . . . . . . . . . . . . . . . . . . . 32
2nd mapped object . . . . . . . . . . . . . . . . . . . . 32
3rd mapped object . . . . . . . . . . . . . . . . . . . . 32
4th mapped object . . . . . . . . . . . . . . . . . . . . 32
COB-ID used by PDO . . . . . . . . . . . . . . . . . . . 32
first mapped object . . . . . . . . . . . . . . . . . . . 32
fourth mapped object . . . . . . . . . . . . . . . . . . 32
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
inhibit time . . . . . . . . . . . . . . . . . . . . . . . . . . 32
number of mapped objects . . . . . . . . . . . . . 32
second mapped object . . . . . . . . . . . . . . . . . 32
third mapped object . . . . . . . . . . . . . . . . . . . 32
transmission type . . . . . . . . . . . . . . . . . . . . . 32
Transmit mask . . . . . . . . . . . . . . . . . . . . . . . . 33
– TPDO4
1st mapped object . . . . . . . . . . . . . . . . . . . . 32
2nd mapped object . . . . . . . . . . . . . . . . . . . . 32
3rd mapped object . . . . . . . . . . . . . . . . . . . . 32
4th mapped object . . . . . . . . . . . . . . . . . . . . 32
COB-ID used by PDO . . . . . . . . . . . . . . . . . . . 32
first mapped object . . . . . . . . . . . . . . . . . . . 32
fourth mapped object . . . . . . . . . . . . . . . . . . 32
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
inhibit time . . . . . . . . . . . . . . . . . . . . . . . . . . 32
number of mapped objects . . . . . . . . . . . . . 32
second mapped object . . . . . . . . . . . . . . . . . 32
third mapped object . . . . . . . . . . . . . . . . . . . 32
transmission type . . . . . . . . . . . . . . . . . . . . . 32
Transmit mask . . . . . . . . . . . . . . . . . . . . . . . . 33
PDO Message . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Peak current
– Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
– Motor controller . . . . . . . . . . . . . . . . . . . . . . 93
peak_current, . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Permissible torque . . . . . . . . . . . . . . . . . . . . . 208
phase_order . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Pin allocation CAN . . . . . . . . . . . . . . . . . . . . . . 11
Polarity of motor temperature sensor . . . . . . . 99
pole_number . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Position actual value (position units) . . . . . . 108
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
Position control . . . . . . . . . . . . . . . . . . . . . . . 103
– Dead range . . . . . . . . . . . . . . . . . . . . . . . . . 106
– Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
– Output of the . . . . . . . . . . . . . . . . . . . . . . . 110
– Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 106
– Time constant . . . . . . . . . . . . . . . . . . . . . . . 106
position control function . . . . . . . . . . . . . . . . 103
Position control parameters . . . . . . . . . . . . . 106
Position controller gain . . . . . . . . . . . . . . . . . 106
Position controller output . . . . . . . . . . . . . . . 110
Position controller time constant . . . . . . . . . . 106
Position value interpolation . . . . . . . . . . . . . . 189
position_actual_value . . . . . . . . . . . . . . . . . . 108
position_actual_value_s . . . . . . . . . . . . . . . . 108
position_control_gain . . . . . . . . . . . . . . . . . . 106
position_control_parameter_set . . . . . . . . . . 106
position_control_time . . . . . . . . . . . . . . . . . . 106
position_control_v_max . . . . . . . . . . . . . . . . 106
position_demand_sync_value . . . . . . . . . . . . 107
position_demand_value . . . . . . . . . . . . . . . . 107
position_encoder_selection . . . . . . . . . . . . . 122
position_error_switch_off_limit . . . . . . . . . . 111
position_error_tolerance_window . . . . . . . . 106
position_factor . . . . . . . . . . . . . . . . . . . . . . . . . 78
position_range_limit . . . . . . . . . . . . . . . . . . . 112
position_range_limit_enable . . . . . . . . . . . . . 113
position_reached . . . . . . . . . . . . . . . . . . . . . . 104
position_window . . . . . . . . . . . . . . . . . . . . . . 110
position_window_time . . . . . . . . . . . . . . . . . 111
Positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
– Braking deceleration . . . . . . . . . . . . . . . . . 183
– Handshake . . . . . . . . . . . . . . . . . . . . . . . . . 185
– Quick stop deceleration . . . . . . . . . . . . . . . 183
– Speed at . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
– Target position . . . . . . . . . . . . . . . . . . . . . . 181
Positioning braking deceleration . . . . . . . . . . 183
Positioning profile
– Jerk-free . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
– Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
– Sine2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Positioning speed . . . . . . . . . . . . . . . . . . . . . . 182
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Positioning Window
– Position window . . . . . . . . . . . . . . . . . . . . . 110
– Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
power_stage_temperature . . . . . . . . . . . . . . . 89
pre_defined_error_field . . . . . . . . . . . . . . . . . . 38
Product code . . . . . . . . . . . . . . . . . . . . . . . . . 140
product_code . . . . . . . . . . . . . . . . . . . . . . . . . 140
Profile Position Mode
– end_velocity . . . . . . . . . . . . . . . . . . . . . . . . 182
– motion_profile_type . . . . . . . . . . . . . . . . . . 184
– profile_acceleration . . . . . . . . . . . . . . . . . . 182
– profile_deceleration . . . . . . . . . . . . . . . . . . 183
– profile_velocity . . . . . . . . . . . . . . . . . . . . . . 182
– quick_stop_deceleration . . . . . . . . . . . . . . 183
– target_position . . . . . . . . . . . . . . . . . . . . . . 181
Profile Torque Mode . . . . . . . . . . . . . . . . . . . . 206
– current_actual_value . . . . . . . . . . . . . . . . . 210
– dc_link_circuit_voltage . . . . . . . . . . . . . . . 210
– max_torque . . . . . . . . . . . . . . . . . . . . . . . . 208
– motor_rated_torque . . . . . . . . . . . . . . . . . . 209
– target_torque . . . . . . . . . . . . . . . . . . . . . . . 208
– torque_actual_value . . . . . . . . . . . . . . . . . 209
– torque_demand_value . . . . . . . . . . . . . . . . 209
– torque_profile_type . . . . . . . . . . . . . . . . . . 211
– torque_slope . . . . . . . . . . . . . . . . . . . . . . . 211
Profile Velocity Mode . . . . . . . . . . . . . . . . . . . 195
– max_motor_speed . . . . . . . . . . . . . . . . . . . 203
– sensor_selection_code . . . . . . . . . . . . . . . 198
– target_velocity . . . . . . . . . . . . . . . . . . . . . . 203
– velocity_actual_value . . . . . . . . . . . . . . . . . 199
– velocity_demand_value . . . . . . . . . . . . . . . 198
– velocity_sensor . . . . . . . . . . . . . . . . . . . . . . 197
– velocity_threshold . . . . . . . . . . . . . . . . . . . 202
– velocity_threshold_time . . . . . . . . . . . . . . 202
– velocity_window . . . . . . . . . . . . . . . . . . . . . 201
– velocity_window_time . . . . . . . . . . . . . . . . 201
profile_acceleration . . . . . . . . . . . . . . . . . . . . 182
profile_deceleration . . . . . . . . . . . . . . . . . . . . 183
profile_velocity . . . . . . . . . . . . . . . . . . . . . . . 182
PWM frequency . . . . . . . . . . . . . . . . . . . . . . . . 88
pwm_frequency . . . . . . . . . . . . . . . . . . . . . . . . 88
267
CMMP-AS-...-M3/-M0
Q
Quick stop deceleration . . . . . . . . . . . . . . . . . 183
quick_stop_deceleration . . . . . . . . . . . . . . . . 183
quick_stop_option_code . . . . . . . . . . . . . . . . 166
R
R-PDO 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
R-PDO4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Rated motor current . . . . . . . . . . . . . . . . . . . . . 95
Ready to Switch On . . . . . . . . . . . . . . . . . . . . 152
Receive_PDO_3 . . . . . . . . . . . . . . . . . . . . . . . . 34
Receive_PDO_4 . . . . . . . . . . . . . . . . . . . . . . . . 34
Reference switch . . . . . . . . . . . . . . . . . . 132, 134
– Polarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Referencing method . . . . . . . . . . . . . . . . . . . . 173
Resolver offset angle . . . . . . . . . . . . . . . . . . . . 98
resolver_offset_angle . . . . . . . . . . . . . . . . . . . 98
restore_all_default_parameters . . . . . . . . . . . 74
restore_parameters . . . . . . . . . . . . . . . . . . . . . 74
Revision number CANopen . . . . . . . . . . . . . . 140
revision_number . . . . . . . . . . . . . . . . . . . . . . 140
S
Sample
– Control systems . . . . . . . . . . . . . . . . . . . . . 137
– Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
– State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
– Status mask . . . . . . . . . . . . . . . . . . . . . . . . 136
SAMPLE input as reference switch . . . . . . . . . 134
sample_control . . . . . . . . . . . . . . . . . . . . . . . 137
sample_data . . . . . . . . . . . . . . . . . . . . . . . . . 135
sample_mode . . . . . . . . . . . . . . . . . . . . . . . . 136
sample_position_falling_edge . . . . . . . . . . . 137
sample_position_rising_edge . . . . . . . . . . . . 137
sample_status . . . . . . . . . . . . . . . . . . . . . . . . 136
sample_status_mask . . . . . . . . . . . . . . . . . . . 136
Sampling position
– Falling edge . . . . . . . . . . . . . . . . . . . . . . . . . 137
– Rising edge . . . . . . . . . . . . . . . . . . . . . . . . . 137
Save parameter set . . . . . . . . . . . . . . . . . . . . . 75
save_all_parameters . . . . . . . . . . . . . . . . . . . . 75
268
Scaling factors . . . . . . . . . . . . . . . . . . . . . . . . . 77
– Choice of prefix . . . . . . . . . . . . . . . . . . . . . . . 86
– Position factor . . . . . . . . . . . . . . . . . . . . . . . 79
SDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
SDO Error Messages . . . . . . . . . . . . . . . . . . . . 23
SDO message . . . . . . . . . . . . . . . . . . . . . . . . . . 20
second_mapped_object . . . . . . . . . . . . . . . . . 30
Selection of the position actual value . . . . . . 122
Selection of the synchronisation source . . . . 123
sensor_selection_code . . . . . . . . . . . . . . . . . 198
serial_number . . . . . . . . . . . . . . . . . . . . . . . . 140
Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Setpoint
– Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
– Synchronous speed (velocity units) . . . . . . 199
– Torque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Setpoint torque (torque regulation) . . . . . . . 208
Setting parameters . . . . . . . . . . . . . . . . . . . . . 72
Setting the operating mode . . . . . . . . . . . . . . 168
shutdown_option_code . . . . . . . . . . . . . . . . . 165
size_of_data_record . . . . . . . . . . . . . . . . . . . 192
Speed
– at positioning . . . . . . . . . . . . . . . . . . . . . . . 182
– during homing . . . . . . . . . . . . . . . . . . . . . . . 173
Speed adjustment . . . . . . . . . . . . . . . . . . . . . 195
– Max. motor speed . . . . . . . . . . . . . . . . . . . . 203
– Nominal speed . . . . . . . . . . . . . . . . . . . . . . 203
– Positioning Window . . . . . . . . . . . . . . . . . . 201
– Standstill threshold . . . . . . . . . . . . . . . . . . 202
– Standstill threshold time . . . . . . . . . . . . . . 202
– Target speed . . . . . . . . . . . . . . . . . . . . . . . . 203
– Target window time . . . . . . . . . . . . . . . . . . 201
Speed adjustment operating mode . . . . . . . . 195
Speed regulator
– Filter time constant . . . . . . . . . . . . . . . . . . . 102
– Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
– Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 101
– Time constant . . . . . . . . . . . . . . . . . . . . . . . 102
speed_during_search_for_switch . . . . . . . . . 173
speed_during_search_for_zero . . . . . . . . . . . 174
speed_limitation . . . . . . . . . . . . . . . . . . . . . . 115
Speed-limited torque operation . . . . . . . . . . 115
standard_error_field_0 . . . . . . . . . . . . . . . . . . 38
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
CMMP-AS-...-M3/-M0
standard_error_field_1 . . . . . . . . . . . . . . . . . . 38
standard_error_field_2 . . . . . . . . . . . . . . . . . . 38
standard_error_field_3 . . . . . . . . . . . . . . . . . . 38
Standstill threshold during speed
adjustment . . . . . . . . . . . . . . . . . . . . . . . . . 202
Standstill threshold time with speed
adjustment . . . . . . . . . . . . . . . . . . . . . . . . . 202
START input as reference switch . . . . . . . . . . 134
Start positioning . . . . . . . . . . . . . . . . . . . . . . 185
State
– Not Ready to Switch On . . . . . . . . . . . . . . . 152
– Ready to Switch On . . . . . . . . . . . . . . . . . . 152
– Switch On Disabled . . . . . . . . . . . . . . . . . . 152
– Switched On . . . . . . . . . . . . . . . . . . . . . . . . 152
Status
– Not Ready to Switch On . . . . . . . . . . . . . . . 152
– Ready to Switch On . . . . . . . . . . . . . . . . . . 152
– Switch On Disabled . . . . . . . . . . . . . . . . . . 152
– Switched On . . . . . . . . . . . . . . . . . . . . . . . . 152
statusword
– Bit assignment . . . . . . . . . . . . . . . . . . . . . . 159
– Object description . . . . . . . . . . . . . . . . . . . 158
Stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177, 178
store_parameters . . . . . . . . . . . . . . . . . . . . . . 74
Switch On Disabled . . . . . . . . . . . . . . . . . . . . 152
SYNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
SYNC message . . . . . . . . . . . . . . . . . . . . . . . . . 35
synchronisation_encoder_selection . . . . . . . 123
synchronisation_filter_time . . . . . . . . . . . . . . 124
synchronisation_main . . . . . . . . . . . . . . . . . . 124
synchronisation_selector_data . . . . . . . . . . . 124
Synchronous speed (velocity units) . . . . . . . . 199
syncronize_on_group . . . . . . . . . . . . . . . . . . . 191
T
T-PDO 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
T-PDO 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
T-PDO 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
T-PDO 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Target group . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Target position . . . . . . . . . . . . . . . . . . . . . . . . 181
Target position window . . . . . . . . . . . . . . . . . 110
Target speed for speed adjustment . . . . . . . . 203
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Target torque (torque regulation) . . . . . . . . . 208
Target window time . . . . . . . . . . . . . . . . . . . . 111
Target window time with speed adjustment . 201
Target window with speed adjustment . . . . . 201
target_position . . . . . . . . . . . . . . . . . . . . . . . 181
target_torque . . . . . . . . . . . . . . . . . . . . . . . . . 208
target_velocity . . . . . . . . . . . . . . . . . . . . . . . . 203
Technical data interface CANopen . . . . . . . . . 212
third_mapped_object . . . . . . . . . . . . . . . . . . . 30
Time constant of the current regulator . . . . . 100
Torque actual value . . . . . . . . . . . . . . . . . . . . 209
Torque limitation . . . . . . . . . . . . . . . . . . . . . . 114
– Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
– Setpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
– Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Torque regulation
– Current setpoint value . . . . . . . . . . . . . . . . 209
– Max. torque . . . . . . . . . . . . . . . . . . . . . . . . 208
– Rated torque . . . . . . . . . . . . . . . . . . . . . . . . 209
– Setpoint torque . . . . . . . . . . . . . . . . . . . . . 208
– Setpoint value profile . . . . . . . . . . . . . . . . . 211
– Target torque . . . . . . . . . . . . . . . . . . . . . . . 208
– Torque actual value . . . . . . . . . . . . . . . . . . 209
Torque regulation operating mode . . . . . . . . 206
Torque regulations . . . . . . . . . . . . . . . . . . . . . 206
torque_actual_value . . . . . . . . . . . . . . . . . . . 209
torque_control_gain . . . . . . . . . . . . . . . . . . . 100
torque_control_parameters . . . . . . . . . . . . . 100
torque_control_time . . . . . . . . . . . . . . . . . . . 100
torque_demand_value . . . . . . . . . . . . . . . . . . 209
torque_profile_type . . . . . . . . . . . . . . . . . . . . 211
torque_slope . . . . . . . . . . . . . . . . . . . . . . . . . 211
Torque-limited speed operation . . . . . . . . . . 114
tpdo_1_transmit_mask . . . . . . . . . . . . . . . . . . 32
tpdo_2_transmit_mask . . . . . . . . . . . . . . . . . . 32
tpdo_3_transmit_mask . . . . . . . . . . . . . . . . . . 33
tpdo_4_transmit_mask . . . . . . . . . . . . . . . . . . 33
Transfer parameters for PDOs . . . . . . . . . . . . . 29
transfer_PDO_1 . . . . . . . . . . . . . . . . . . . . . . . . 31
transfer_PDO_2 . . . . . . . . . . . . . . . . . . . . . . . . 31
transfer_PDO_3 . . . . . . . . . . . . . . . . . . . . . . . . 32
transfer_PDO_4 . . . . . . . . . . . . . . . . . . . . . . . . 32
transmission_type . . . . . . . . . . . . . . . . . . . . . . 29
269
CMMP-AS-...-M3/-M0
transmit_pdo_mapping . . . . . . . . . . . . . . . . . .
transmit_pdo_parameter . . . . . . . . . . . . . . . . .
Trigger iit error . . . . . . . . . . . . . . . . . . . . . . . . .
Type of transmission . . . . . . . . . . . . . . . . . . . .
30
29
97
29
V
Velocity limitation . . . . . . . . . . . . . . . . . . . . . 115
– Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
– Setpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
– Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
velocity_acceleration_neg . . . . . . . . . . . . . . . 205
velocity_acceleration_pos . . . . . . . . . . . . . . . 205
velocity_actual_value . . . . . . . . . . . . . . . . . . 199
velocity_control_filter_time . . . . . . . . . . . . . . 102
velocity_control_gain . . . . . . . . . . . . . . . . . . . 101
velocity_control_parameter_set . . . . . . . . . . 101
velocity_control_time . . . . . . . . . . . . . . . . . . 102
velocity_deceleration_neg . . . . . . . . . . . . . . . 205
velocity_deceleration_pos . . . . . . . . . . . . . . . 205
velocity_demand_sync_value . . . . . . . . . . . . 199
velocity_demand_value . . . . . . . . . . . . . . . . . 198
velocity_encoder_factor . . . . . . . . . . . . . . . . . 81
velocity_ramps . . . . . . . . . . . . . . . . . . . . . . . . 204
velocity_ramps_enable . . . . . . . . . . . . . . . . . 204
velocity_sensor_actual_value . . . . . . . . . . . . 197
velocity_threshold . . . . . . . . . . . . . . . . . . . . . 202
velocity_threshold_time . . . . . . . . . . . . . . . . 202
velocity_window . . . . . . . . . . . . . . . . . . . . . . 201
velocity_window_time . . . . . . . . . . . . . . . . . . 201
vendor_id . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Version number of the
customer-specific variant . . . . . . . . . . . . . . 142
Version number of the firmware . . . . . . . . . . 141
270
X
X10
– Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Drive-out . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Resolution . . . . . . . . . . . . . . . . . . . . . . . . . .
X2A
– Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Drive-out . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Resolution . . . . . . . . . . . . . . . . . . . . . . . . . .
X2B
– Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Drive-out . . . . . . . . . . . . . . . . . . . . . . . . . . .
– Resolution . . . . . . . . . . . . . . . . . . . . . . . . . .
120
120
120
119
117
117
117
119
118
118
118
Z
Zero point offset . . . . . . . . . . . . . . . . . . . . . . . 172
Festo – GDCP-CMMP-M3/-M0-C-CO-EN – 1304a
Copyright:
Festo AG & Co. KG
Postfach
73726 Esslingen
Germany
Phone:
+49 711 347-0
Fax:
+49 711 347-2144
e-mail:
[email protected]
Reproduction, distribution or sale of this document or communication of its contents to others without express authorization is
prohibited. Offenders will be liable for damages. All rights reserved in the event that a patent, utility model or design patent is
registered.
Internet:
www.festo.com
Original: de
Version: 1304a