• No results found

Festo Can Open Cmms

N/A
N/A
Protected

Academic year: 2021

Share "Festo Can Open Cmms"

Copied!
156
0
0

Loading.... (view fulltext now)

Full text

(1)

CANopen for Motor Controller

CMMS/CMMD

Manual

CANopen

CMMS-ST

CMMS-AS

CMMD-AS

Manual

554 352

en 1012a

[757 730]

(2)
(3)

Original ________________________________________________________ de

Edition ____________________________________________________en 1012a

Designation____________________________________ P.BE-CMMS-CO-SW-EN

Order no. ___________________________________________________554 352

 (Festo AG & Co KG., D-73726 Esslingen, Germany, 2011) Internet: http://www.festo.com

E-mail: [email protected]

The reproduction of this document and disclosure to third parties and the utilisation or communication of its contents without explicit authorization is prohibited. Offenders will be held liable for compensation of damages. All rights reserved, in particular the right to

(4)

Name of manual: CANopen for Motor Controller CMMS/CMMD File name:

File saved at:

Consec. no. Description Index of revisions Date of amendment

001 Creation 0708NH 26.07.2007

002 Revision 1012a 17.02.2011

Trademarks

(5)

CONTENTS

1. General remarks ... 8 1.1 Intended use ... 8 1.2 Safety instructions ... 8 1.3 Target group... 9 1.4 Service ... 9

1.5 Important user instructions ... 9

2. CANopen... 12

2.1 Overview ... 12

2.2 Cabling and Plug Assignment ... 13

2.2.1 Pin allocations ... 13 2.2.2 Cabling Note ... 14 2.3 Activation of CANopen... 15 3. Access Procedure ... 17 3.1 Introduction... 17 3.2 SDO Access ... 18

3.2.1 SDO Sequences for Reading and Writing ... 19

3.2.2 SDO Error Messages ... 20

3.2.3 Simulation of SDO Access via RS232 ... 21

3.3 PDO Message ... 22

3.3.1 Description of the Objects ... 23

3.3.2 Objects for PDO Parameter Setting ... 26

3.3.3 Activation of PDOs ... 30

3.4 SYNC-Message ... 30

3.5 EMERGENCY-Message ... 31

3.5.1 Structure of the EMERGENCY-Message... 31

3.5.2 Description of the Objects ... 43

3.6 Heartbeat / Bootup (Error Control Protocol)... 45

3.6.1 Structure of the Heartbeat Message ... 45

3.6.2 Structure of the Bootup Message ... 46

3.6.3 Description of the Objects ... 46

3.7 Network Management (NMT Service) ... 47

3.8 Nodeguarding (Error Control Protocol) ... 49

3.8.1 Overview... 49

3.8.2 Structure of the Nodeguarding Messages... 49

(6)

4. Setting Parameters ... 52

4.1 Load and Save Parameter Sets ... 52

4.1.1 Overview... 52

4.1.2 Description of the Objects ... 53

4.2 Conversion Factors (Factor Group) ... 55

4.2.1 Overview... 55

4.2.2 Description of the Objects ... 56

4.3 Output stage parameter ... 67

4.3.1 Overview... 67

4.3.2 Description of the Objects ... 67

4.4 Current Regulator and Motor Adjustment... 69

4.4.1 Overview... 69

4.4.2 Description of the Objects ... 70

4.5 Speed regulator... 75

4.5.1 Overview... 75

4.5.2 Description of the Objects ... 75

4.6 Position Controller (Position Control Function)... 77

4.6.1 Overview... 77

4.6.2 Description of the Objects ... 79

4.7 Setpoint value limitation ... 85

4.7.1 Description of the objects ... 85

4.8 Digital inputs and outputs ... 87

4.8.1 Overview... 87

4.8.2 Description of the Objects ... 87

4.9 Limit switch ... 89

4.9.1 Overview... 89

4.9.2 Description of the Objects ... 89

4.10 Sampling of positions... 90

4.10.1 Overview... 90

4.10.2 Description of the Objects ... 90

4.11 Device Information ... 91

4.11.1 Description of the Objects ... 92

4.12 Error management... 95

4.12.1 Overview... 95

(7)

5. Device Control ... 97

5.1 Status Diagram (State Machine)... 97

5.1.1 Overview... 97

5.1.2 Status diagram of the motor controller (State Machine) ... 98

5.1.3 controlword (control word) ... 102

5.1.4 Read-out of the motor controller status... 105

5.1.5 statusword (Status words)... 106

6. Operating modes ... 111

6.1 Setting the operating mode... 111

6.1.1 Overview... 111

6.1.2 Description of the Objects ... 111

6.2 Operating mode homing (Homing Mode) ... 113

6.2.1 Overview... 113

6.2.2 Description of the Objects ... 114

6.2.3 Reference Travel Processes ... 117

6.2.4 Control of Reference Travel... 121

6.3 Positioning Operating Mode (Profile Position Mode)... 122

6.3.1 Overview... 122

6.3.2 Description of the Objects ... 123

6.3.3 Functional description ... 127

6.4 Interpolated Position Mode ... 129

6.4.1 Overview... 129

6.4.2 Description of the Objects ... 130

6.4.3 Functional description ... 135

6.5 Speed adjustment operating mode (Profile Velocity Mode) ... 137

6.5.1 Overview... 137

6.5.2 Description of the Objects ... 139

6.6 Torque regulation operating mode (Profile Torque Mode) ... 144

6.6.1 Overview... 144

6.6.2 Description of the Objects ... 145

(8)

1.

General remarks

1.1

Intended use

This manual describes how the motor controller of the CMMS/CMMD series can be integrated into a CANopen network environment. It describes setting of the physical parameters, activation of CANopen protocol, integration into the CAN network and

communication with the motor controller. It is directed at people who are already familiar with this motor controller series.

It contains safety instructions which must be followed.

The complete set of information can be found in the documentation for the motor controller in question:

- Description P.BE-CMM...-HW-...:

Mechanics – electrical engineering – function range overview Note

Always observe the safety-related instructions listed in the product manual for the motor controller being used.

1.2

Safety instructions

When commissioning and programming positioning systems, you must always observe the safety regulations in this manual as well as those in the operating instructions for the other components used.

The user must make sure that nobody is within the sphere of influence of the connected actuators or axis system. Access to the potential danger area must be prevented by suitable measures such as barriers and warning signs.

Warning

Axes can move with high force and at high speed. Collisions can lead to serious injury to human beings and damage to components. Make sure that nobody can reach into the sphere of influence of the axes or other connected actuators and that no items are within the positioning range while the system is connected to energy sources.

(9)

Warning

Faults in the parametrisation can cause injury to human beings and damage to property.

Enable the controller only if the axis system has been correctly installed and parametrised.

1.3

Target group

This manual is intended exclusively for technicians trained in control and automation technology, who have experience in installing, commissioning, programming and diagnosing positioning systems.

1.4

Service

Please consult your local Festo Service or write to the following e-mail address if you have any technical problems:

[email protected]

1.5

Important user instructions

Danger categories

This description contains instructions on the possible dangers which can occur if the product is not used correctly. These instructions are marked (Warning, Caution, etc), printed on a shaded background and marked additionally with a pictogram.

A distinction is made between the following danger warnings:

Warning

... Means that failure to observe this instruction may result in serious personal injury or damage to property.

Caution

... Means that failure to observe this instruction may result in personal injury or damage to property.

Note

... Means that failure to observe this instruction may result in damage to property.

(10)

The following pictogram marks passages in the text which describe activities with electrostatically sensitive devices:

Electrostatically sensitive devices: Incorrect handling can result in damage to components.

Identification of specific information

The following pictograms designate texts that contain special information.

Pictograms

Information:

Recommendations, tips and references to other sources of information

Accessories:

information on necessary or useful accessories for the Festo product.

Environment:

information on environmentally friendly use of Festo products.

Text designations

• Bullet points indicate activities that may be carried out in any order.

1. Numerals denote activities which must be carried out in the numerical order specified. - Arrowheads indicate general lists.

About the Version

(11)

You can find the specifications on the version status as follows:

- Hardware version and firmware version in the Festo Configuration Tool (FCT) with active device connection under "Controller"

Controller Firmware Comment

CMMS-ST-... From Version 1.3.0.1.14 Standard motor controller for stepper motors CMMS-AS-... From Version 1.3.0.1.16 Standard motor controller for servo motors CMMD-AS-... From Version 1.4.0.3.2 Standard double motor controller for servo motors Table 1.1 Controller and firmware versions

For older versions:

Use the related older version of this document, if applicable.

Note

With newer firmware versions, check whether there is a newer version of this description available:

(12)

2.

CANopen

2.1

Overview

CANopen is a standard worked out by the "CAN in Automation" association. A number of device manufacturers are organised in this association. This standard has largely replaced the current manufacturer-specific CAN protocols. As a result, the end user has a

manufacturer-independent communication interface.

The following manuals, among others, can be obtained from this association:

CiA Draft Standard 201-207:

These documents cover the general 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 DS201 ... 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 CMMS/CMMD motor controller families and the

related access methods are described in this manual. Procurement of DS301 is recommended but not absolutely necessary.

CiA Draft Standard 402:

This book covers concrete implementation of CANopen in drive regulators. Although all implemented objects are also briefly documented and described in this CANopen manual, the user should have this book available.

Source of supply:

CAN in Automation (CiA) International Headquarters Am Weichselgarten 26

D-91058 Erlangen Tel.: 09131-601091 Fax: 09131-601092

www.can-cia.de

The CANopen implementation of the motor controller is based on the following standards:

[1] CiA Draft Standard 301, Version 4.02, 13. February 2002 [2] CiA Draft Standard Proposal 402, Version 2.0, 26. July 2002

(13)

2.2

Cabling and Plug Assignment

2.2.1

Pin allocations

For the CMMS/CMMD family of devices, the CAN interface is already integrated into the motor controller and thus is always available.

The CAN bus connection is designed as a 9-pole DSUB plug (on the controller side) in accordance with standards.

1 CAN-L 2 CAN-GND 3 CAN-Shield 4 CAN-H 5 CAN-GND

Fig. 2.1 CAN plug connector for CMMS/CMMD

Note

CAN bus cabling

When cabling the motor controller via the CAN bus, you should always comply with the following information and remarks to obtain a stable, malfunction-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. 1 4 2 3 5

(14)

2.2.2

Cabling Note

The CAN bus offers a simple, interference resistant method of networking all the components of a system together. But the prerequisite for this is that all subsequent cabling instructions are observed.

Fig. 2.2 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 (see Fig. 2.2).

- At both ends of the CAN cable, there must be an end resistor of exactly 120 Ω +/- 5 %. This is often already installed in CAN cards or PLCs and, if so, this must be taken into account. The end resistor is activated via DIP switch 12 (see Fig. 2.3).

- For wiring, screened cable with exactly two twisted pairs of wires must be used. A twisted pair of wires is used for connection of CAN-H and CAN-L.

The wires of the other pair are used together for CAN-GND.

For all nodes, the screening of the cable is guided to the CAN-Shield connections. A table with the technical data of usable cables is located at the end of this chapter. - The use of intermediate plugs 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 cable should not be laid parallel to signal lines.

Motor cable carried out in accordance with specifications. The motor cables must be correctly screened and earthed.

- For more information on constructing interference-free CAN bus cabling, refer to the Controller Area Network protocol specification, Version 2.0 from Robert Bosch GmbH, 1991.

- Technical data, CAN bus cable:

2 pairs of 2 twisted leads, d ≥ 0.22 mm2

Screened

Loop resistance < 0.2 Ω/m Impedance 100-120 Ω

(15)

2.3

Activation of CANopen

The CAN interface is activated with the protocol CANopen, and the node number and baud rate are adjusted one time via the DIP switches of the motor controller.

1 DIP switches 1-7: Node number 2 DIP switches 9-10: Bitrate

DIP switch 11: Activation

DIP switch 12: Terminating resistor

Fig. 2.3 DIP switches

EXAMPLE

Node number:

DIP switches ON/OFF Significance

1 ON 2 ON 3 OFF 4 ON 5 ON 6 OFF 7 ON

DIP switch 1 is the lowest-value bit 1011011 = 91

Baud rate:

DIP switches ON/OFF Significance

9 ON

10 OFF

DIP switch 9 is the lowest-value bit 00=125 kBit/s 01=250 kBit/s (example) 10=500 kBit/s 11=1000 kBit/s 1 2

(16)

A total of 2 different parameters must be set: - Base node number

A node number, which may occur only once in the network, must be assigned to each participant for unambiguous identification. The device is addressed via this node number.

- Bitrate

This parameter determines the bitrate in kbit/s used on the CAN bus. Note that high baud rates require a low maximum cable length.

All devices present in a CANopen network send a bootup message over the bus containing the node number of the transmitter.

Finally, the CANopen protocol in the motor controller can be activated. Observe that the named parameters can only change if the CAN-bus is deactivated.

Note that the parameter setting of the CANopen function remains intact after a reset if the parameter set of the motor controller was saved.

CAN address for CMMD-AS

The two axes have a separate CAN address.

The address of axis 1 is set at the DIP switches. Axis 2 is always assigned the subsequent address:

(17)

3.

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.

Essentially two methods are available for accessing CAN objects via the CAN bus: a confirmed access type, in which the motor controller acknowledges each parameter access (via so-called SDOs), and an unconfirmed access type, in which no

acknowledgement is made (via so-called PDOs).

Assignment of control

SDO PDO (transmit PDO)

Confirmation from the controller

Confirmation from the controller

Control CMMS/

CMMD

Control CMMS/

CMMD

Data from controller

PDO (receive PDO)

Control CMMS/

CMMD

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:

SDO Service Data Object Are used for normal parameter setting of the motor controller.

PDO Process Data Object Fast exchange of process data (e.g. actual speed) possible.

SYNC Synchronization

Message

Synchronisation of multiple CAN nodes

(18)

NMT Network Management Network service: All CAN nodes can be worked on simultaneously, for example.

HEARTBEAT Error Control Protocol Monitoring of the communications participants

through regular messages.

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:

Number of data bytes (here 8)

Data bytes 0 … 7

601h Len D0 D1 D2 D3 D4 D5 D6 D7

Identifier

3.2

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-level controller (Host). This either sends the motor controller a write command to modify a parameter in the object directory, or a read command (READ) 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 consists of the base 600h + node number of the motor controller involved. The motor controller answers accordingly 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:

UINT8 8 bit value without algebraic sign 0 … 255 INT8 8 bit value with algebraic sign -128 … 127 UINT16 16 bit value without algebraic sign 0 … 65535 INT16 16 bit value with algebraic sign -32768 … 32767 UINT32 32 bit value without algebraic sign 0 … (232-1)

(19)

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.

Read commands

Write commands

Low byte of the main index (hex) High byte of the main index (hex)

UINT8 / INT8 Subindex (hex)

Identifier for 8 bit

Command 40h IX0 IX1 SU 2Fh IX0 IX1 SU DO

Answer: 4Fh IX0 IX1 SU D0 60h IX0 IX1 SU

UINT16 / INT16 Identifier for 8 bit Identifier for 16 bit

Command 40h IX0 IX1 SU 2Bh IX0 IX1 SU DO D1

Answer: 4Bh IX0 IX1 SU D0 D1 60h IX0 IX1 SU

UINT32 / INT32 Identifier for 16 bit Identifier for 32 bit

Command 40h IX0 IX1 SU 23h IX0 IX1 SU DO D1 D2 D3

Answer: 43h IX0 IX1 SU D0 D1 D2 D3 60h IX0 IX1 SU

Identifier for 32 bit

EXAMPLE

UINT8 / INT8 Reading obj. 6061_00h Return data: 01h Writing obj. 1401_02h Data: EFh Command 40h 61h 60h 00h 2Fh 01h 14h 02h EFh Answer: 4Fh 61h 60h 00h 01h 60h 01h 14h 02h UINT16 / INT16 Reading obj. 6041_00h Return data: 1234h Writing obj. 6040_00h Data: 03E8h Command 40h 41h 60h 00h 2Bh 40h 60h 00h E8h 03h Answer: 4Bh 41h 60h 00h 34h 12h 60h 40h 60h 00h UINT32 / INT32 Reading obj. 6093_01h Return data: 12345678h Writing obj. 6093_01h Data: 12345678h Command 40h 93h 60h 01h 23h 93h 60h 01h 78h 56h 34h 12h Answer: 43h 93h 60h 01h 78h 56h 34h 12h 60h 93h 60h 01h

(20)

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.

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 IX0 IX1 SU …

Answer: 80h IX0 IX1 SU F0 F1 F2 F3

Error identifier Error code (4 byte)

Error code F3 F2 F1 F0

Significance

06 01 00 00h Access type is not supported.

06 02 00 00h The addressed object does not exist in the object directory

06 04 00 41h The object must not be entered into a PDO

06 04 00 42h The length of the objects entered in the PDO exceeds the PDO length

06 07 00 10h Protocol error: Length of the service parameter does not agree

06 07 00 12h Protocol error: Length of the service parameter is too large

06 07 00 13h Protocol error: Length of the service parameter is too small

06 09 00 11h The addressed subindex does not exist

06 01 00 01h Read access to an object that can only be written

06 01 00 02h Write access to an object that can only be read

06 04 00 47h Overflow of an internal variable / general error

06 06 00 00h Access faulty due to a hardware problem *1)

05 03 00 00h Protocol error: Toggle bit was not changed

05 04 00 01h Protocol error: Client / server command specifier invalid or unknown

06 09 00 30h The data exceed the range of values of the object

06 09 00 31h The data are too large for the object

06 09 00 32h The data are too small for the object

06 09 00 36h Upper limit is less than lower limit

08 00 00 20h Data cannot be transmitted or stored *1)

08 00 00 21h Data cannot be transmitted or stored, since the motor controller is working locally

08 00 00 22h Data cannot be transmitted or stored, since the motor controller for this is not in the correct

(21)

*1) Returned in accordance with DS301 in case of incorrect access to store_parameters /

restore_parameters.

*2) This error is returned, for example, when another bus system controls the motor controller or the

parameter access is not permitted.

*3) "Status" here should be understood in general: It may be a problem of the incorrect operating

mode or a technology module that is not available or the like.

3.2.3

Simulation of SDO Access via RS232

The firmware of the motor controller offers the possibility to simulate SDO access via the RS232 interface. In this way, after being written, objects in the test phase can be read and checked via the CAN bus over the RS232 interface. Application creation is simplified through use of the start-up software Festo Configuration Tool (FCT) with the related plug-in.

The syntax of the commands is:

Read commands

Write commands

Main index (hex)

UINT8 / INT8 Subindex (hex)

Command ? XXXX SU = XXXX SU: WW

Answer: = XXXX SU: WW = XXXX SU: WW

UINT16 / INT16 8 bit data (hex)

Command ? XXXX SU = XXXX SU: WWWW

Answer: = XXXX SU: WWWW = XXXX SU: WWWW

UINT32 / INT32 16 bit data (hex)

Command ? XXXX SU = XXXX SU: WWWWWWWW

Answer: = XXXX SU: WWWWWWWW = XXXX SU: WWWWWWWW 32 bit data (hex)

Note that the commands are entered as characters without any blanks.

Caution

Never use these test commands in applications!

Access via RS232 only serves test purposes and is not suitable for real-time-capable communication.

In addition, the syntax of the test commands can be changed at any time.

(22)

3.3

PDO Message

With Process Data Objects (PDOs), data can be transmitted in an event-driven manner. 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 query

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 constantly, such as every millisecond, query the statusword object, with which it uses up the 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 querying, 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:

Transmit-PDO...Controller  Host Motor controller sends PDO when a certain event occurs

Receive-PDO ...Host  Controller Motor controller evaluates PDO when a certain event occurs

The motor controller has two transmit and two 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.

Number of data bytes (here 8)

Start actual speed (D4 … D7)

181h Len D0 D1 D2 D3 D4 D5 D6 D7

Identifier Start actual position (D0 ... D3)

In this way, almost any desired data telegrams can be defined. The following chapters describe the settings necessary for this.

(23)

3.3.1

Description of the Objects

Identifier of the PDO 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 default setting for all PDOs.

The COB-ID may only be changed if the PDO is deactivated, that is, bit 31 is set. Therefore, the following process must be followed to change the COB-ID:

- Reading the COB-ID

- Writing the read COB-ID + 80000000h - Writing the new COB-ID + 80000000h

- Writing the newCOB-ID, the PDO is active again.

The set bit 30 shows when the identifier is read that the object cannot be queried by a remote frame. This bit is ignored during writing and is always set during reading.

Number of objects to be transmitted

number_of_mapped_objects

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 bytes). Objects to be

transmitted

first_mapped_object … fourth_mapped_object

For each object contained in the PDO, the motor controller must be told the corresponding index, subindex 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:

Main index of the object to be mapped (hex) Subindex of the object to be mapped (hex)

xxx_mapped_object Index (16 bits) Sub-index (8 bits) Length (8 bits)

(24)

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 written (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. Type of

transmission

transmission_type und inhibit_time

Which event results in sending (transmit PDO) or evaluation (receive PDO) of a message can be determined for each PDO:

Value Significance Permitted with

00h – F0h SYNC-Message

The numerical value specifies how many SYNC-Messages are ignored between transmissions 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.

TPDOs (RPDOs)

FFh 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

The use of all other values is not permitted. Masking transmit_mask_high und 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. Therefore, 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

(25)

EXAMPLE

The following objects should be transmitted in one PDO:

Name of the object Index_Subindex Significance

statusword 6041h_00h Controller regulation

modes_of_operation_display 6061h_00h Operating mode

digital_inputs 60FDh_00h 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 identifier for this PDO, 187h should be used.

1.) Deactivating PDO

If the PDO is active, it must first be deactivated.

Reading out of the identifier:  40000181h = cob_id_used_by_pdo

Setting of bit 31 (deactivate):  cob_id_used_by_pdo = C0000181h

2.) Deleting number of objects

Set the number of objects to zero in order to be able to change the

object mapping.  number_of_mapped_objects = 0

3.) Setting parameters for objects that are to be mapped The above-listed objects must be

combined into a 32 bit value:

Index =6041h Subin. = 00h Length = 10h  first_mapped_object = 60410010h

Index =6061h Subin. = 00h Length = 08h  second_mapped_object = 60610008h

Index =60FDh Subin. = 00h Length = 20h  third_mapped_object = 60FD0020h

4.) Setting parameters for number of objects

The PDO should contain 3 objects  number_of_mapped_objects = 3

h

5.) Setting parameters for transmission type The PDO should be sent when

changes (to the digital inputs)

are sent.  transmission_type = FFh

To ensure that only changes to the digital inputs result in

transmission, the PDO is masked so that only the 16 bits of the

object 60FDh "come through".

 transmit_mask_high = 00FFFF00h

 transmit_mask_low = 00000000h

The PDO should be sent no more

than every 10 ms (100×100 μs).  inhibit_time = 64h

6.) Setting identifier parameters

The PDO should be sent with identifier 187h.

Writing new identifier:  cob_id_used_by_pdo = C0000187h Activating by deletion of bit 31:  cob_id_used_by_pdo = 40000187h

Note that parameter setting of the PDOs may generally only be changed when the network status (NMT) is not operational. See also chapter 3.3.3

(26)

3.3.2

Objects for PDO Parameter Setting

The motor controllers of the CMMS/CMMD series contain a total of two transmit and two receive PDOs. The individual objects for setting parameters for these PDOs are the same for all TPDOs and all RPDOs in each case. 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 01h

Description cob_id_used_by_pdo_tpdo1

Data Type UINT32 Access rw PDO Mapping no

Units -

Value Range 181h ... 1FFh, Bit 30 and 31 may be set

Default Value C0000181h

Sub-Index 02h

Description transmission_type_tpdo1

Data Type UINT8 Access rw PDO Mapping no Units - Value Range 0 ... 8Ch, FEh, FFh Default Value FFh Sub-Index 03h Description inhibit_time_tpdo1

Data Type UINT16 Access rw PDO Mapping no

Units 100 μs (i.e. 10 = 1ms) Value Range --

(27)

Index 1A00h

Name transmit_pdo_mapping_tpdo1

Object Code RECORD No. of Elements 4 Sub-Index 00h

Description number_of_mapped_objects_tpdo1

Data Type UINT8 Access rw PDO Mapping no

Units -- Value Range 0 ... 4

Default Value see table Sub-Index 01h

Description first_mapped_object_tpdo1

Data Type UINT32 Access rw PDO Mapping no

Units -- Value Range --

Default Value see table Sub-Index 02h

Description second_mapped_object_tpdo1

Data Type UINT32 Access rw PDO Mapping no

Units -- Value Range --

(28)

Sub-Index 03h

Description third_mapped_object_tpdo1

Data Type UINT32 Access rw PDO Mapping no

Units -- Value Range --

Default Value see table Sub-Index 04h

Description fourth_mapped_object_tpdo1

Data Type UINT32 Access rw PDO Mapping no

Units -- Value Range --

Default Value see table

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 number of entries UINT8 ro 03h

1800h_01h COB-ID used by PDO UINT32 rw C0000181h

1800h_02h transmission type UINT8 rw FFh

1800h_03h inhibit time (100 μs) UINT16 rw 0000h

1A00h_00h number of mapped objects UINT8 rw 01h

1A00h_01h first mapped object UINT32 rw 60410010h

1A00h_02h second mapped object UINT32 rw 00000000h

1A00h_03h third mapped object UINT32 rw 00000000h

(29)

2. Transmit-PDO

Index Comment Type Acc. Default Value

1801h_00h number of entries UINT8 ro 03h

1801h_01h COB-ID used by PDO UINT32 rw C0000281h

1801h_02h transmission type UINT8 rw FFh

1801h_03h inhibit time (100 μs) UINT16 rw 0000h

1A01h_00h number of mapped objects UINT8 rw 02h

1A01h_01h first mapped object UINT32 rw 60410010h

1A01h_02h second mapped object UINT32 rw 60610008h

1A01h_03h third mapped object UINT32 rw 00000000h

1A01h_04h fourth mapped object UINT32 rw 00000000h

tpdo_1_transmit_mask

Index Comment Type Acc. Default Value

2014h_00h number of entries UINT8 ro 02h

2014h_01h tpdo_1_transmit_mask_low UINT32 rw FFFFFFFFh

2014h_02h tpdo_1_transmit_mask_high UINT32 rw FFFFFFFFh

tpdo_2_transmit_mask

Index Comment Type Acc. Default Value

2015h_00h number of entries UINT8 ro 02h

2015h_01h tpdo_2_transmit_mask_low UINT32 rw FFFFFFFFh

2015h_02h tpdo_2_transmit_mask_high UINT32 rw FFFFFFFFh

1. Receive-PDO

Index Comment Type Acc. Default Value

1400h_00h number of entries UINT8 ro 02h

1400h_01h COB-ID used by PDO UINT32 rw C0000201h

1400h_02h transmission type UINT8 rw FFh

1600h_00h number of mapped objects UINT8 rw 01h

1600h_01h first mapped object UINT32 rw 60400010h

1600h_02h Second mapped object UINT32 rw 00000000h

1600h_03h third mapped object UINT32 rw 00000000h

(30)

2. Receive-PDO

Index Comment Type Acc. Default Value

1401h_00h number of entries UINT8 ro 02h

1401h_01h COB-ID used by PDO UINT32 rw C0000301h

1401h_02h transmission type UINT8 rw FFh

1601h_00h number of mapped objects UINT8 rw 02h

1601h_01h first mapped object UINT32 rw 60400010h

1601h_02h Second mapped object UINT32 rw 60600008h

1601h_03h third mapped object UINT32 rw 00000000h

1601h_04h fourth mapped object UINT32 rw 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 (see chapter 3.7 Network Management: NMT Service)

For parameters to be set for PDOs, the following points must be met:

- The communication status of the motor controller must not be operational.

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 (see chapter 0).

Identifier: 80h

80h 0

Data length

The identifier on which the motor controller receives the SYNC message is set permanently to 80h. The identifier can be read via the object cob_id_sync.

(31)

Index 1005h

Name cob_id_sync

Object Code VAR Data Type UINT32 Access rw PDO Mapping no Units -- Value Range 80000080h, 00000080h Default Value 00000080h

3.5

EMERGENCY-Message

The motor controller monitors the function of its major assemblies. These include the power supply, output stage, angle encoder evaluation and technology connections. 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

Structure of the EMERGENCY-Message

When an error occurs, the motor controller transmits an EMERGENCY message.

The identifier of this message is put together from the identifier 80h and node number of the affected 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.

error_code Identifier: 80h + node number error_register (Obj. 1001h) 81h 8 E0 E1 R0 0 0 0 0 0 Data length

(32)

The following error codes can occur:

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

2311 E311 I²t error controller (I²t at 100 %)

I²t monitoring of the controller has been triggered.

Check power dimensioning of drive package.

PS off 2)

2312 E310 I²t error motor (I²t at 100 %)

I²t monitoring of the controller has been triggered. Motor/mechanics blocked or hard to move? Warn 2) 2320 E060 Overload current, intermediate circuit / output stage Motor defective? Short-circuit in cable? Output stage defective?

Check motor, cable and controller.

PS off

2380 E190 I²t at 80 % Common error: 80 % of the maximum I²t workload from the controller or motor has been achieved.

Motor/mechanics blocked or hard to move? Warn 2) 3210 E070 Overvoltage in the intermediate circuit Voltage energy recovery through motor application. Braking of larges masses.

Check the connection to the braking resistor.

Check design (application).

PS off

3220 E020 Undervoltage intermediate circuit

Intermediate voltage drops below the parametrised threshold.

Quick discharge due to switched-off mains supply. Check power supply.

Couple intermediate circuits if technically permissible. Check intermediate circuit voltage (measure).

Check undervoltage monitor (threshold value). PS off 2) 3280 E320 Only CMMS-AS/ CMMD-AS: Error, IC pre-charge Intermediate circuit could not be charged (UZK < 150V)

(33)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1) 3285 E328 Only CMMS-AS/ CMMD-AS: Error, controller enable without IC

Power failure with granted controller enable

Check mains voltage.

4210 E040 Excess/low temperature of power electronics Device is overheated. Device overloaded. Temperature display plausible?

Check installation conditions (cooling: via the housing surface, the integrated heat sink and back wall)

PS off 2)

4280 E181 Output stage temperature 5 °C below maximum

CMMS-ST: The output stage temperature is greater than 80 °C

CMMS-AS/CMMD-AS: The output stage temperature is greater than 90 °C

Check installation conditions (cooling: via the housing surface, the integrated heat sink and back wall)

PS off 2)

4310 E030 Temperature monitoring, motor

Motor too hot? Suitable sensor? Broken cable? Sensor defective?

Check parametrisation (current regulator, current limit values) If the error remains even when the sensor is bridged: Device defective.

PS off

4310 E031 Temperature monitoring, motor

Error, dig. motor temperature sensor.

Check parametrisation (current regulator, current limit values) If the error remains even when the sensor is bridged:

Device defective. PS off 2) 4380 E180 Motor temperature 5 °C below maximum The motor temperature is less than 5 °C under the parametrised maximum temperature

Check parameters (current regulator, current limits)

(34)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

5114 E050 5 V supply fault

Monitoring of the internal power supply has recognised undervoltage. Either an internal defect or an overload

The fault cannot be rectified automatically.

Send motor controller to the manufacturer. PS off 5115 E051 Error, 24V power supply (out of range) 16V < U24V < 32V = OK, otherwise NOK

PS off

5116 E052 Error, 12 V electronic power supply

11V < U12V < 13V = OK, otherwise NOK

Separate device from the entire peripheral equipment and check whether the error is still present after reset. If yes, there is an internal defect and a repair by the manufacturer is necessary

PS off

5210 E210 Error, offset current measurement The controller performs offset compensation of the current measurement. Tolerances that are too large result in an error.

If the error occurs repeatedly, the hardware is defective. Send motor controller to the manufacturer. PS off 5581 E261 Checksum error Checksum error of a parameter set

Load factory settings. If the error remains, the hardware may be defective.

PS off

6081 E251 Hardware fault

Motor controller and firmware are not compatible

Update the firmware. PS off

6180 E010 Stack overflow

Incorrect firmware? Sporadic high calculation load due to cycle time that is too short and special calculation-intensive processes (save parameter set, etc.)

Load an enabled firmware. Reduce calculation load. Contact the technical support team.

PS off

6183 E163 Unexpected status / programming

The software has taken an unexpected status.

In case of repetition, load firmware again. If the error occurs repeatedly, the

(35)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

6187 E162 Initialization error

Error in initializing the default parameters.

In case of repetition, load firmware again. If the error occurs repeatedly, the hardware is defective. PS off 6191 E429 Error in position record Common error: 1. An attempt is being made to start an unknown or deactivated position record.

2. The set acceleration is too small for the permissible maximum speed. (Danger of a calculation overflow in the trajectory

calculation)

Check parametrisation and sequence control, correct if necessary.

PS off

6192 E419 Error, jump destination route program

Jump to a position record outside the permitted range

Check parametrisation PS off

6193 E418 Error, record continuation, unknown command

Unknown command found during record continuation

Check parametrisation PS off

6195 E702 General arithmetic error

The FHPP factor group cannot be calculated correctly.

Check the factor group PS off

6197 E149 Error, motor identification

Error in automatic determination of the motor parameters.

Ensure sufficient intermediate circuit voltage.

Encoder cable connected to the right motor?

Motor blocked, e.g. holding brake does not release?

(36)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

6199 E351 Time out for quick stop

The parametrised time for quick stop has been exceeded

Check parametrisation PS off

6380 E703 Operating mode error

Unallowed change of the operating mode. For example, torque control for CMMS-ST in the controlled mode or parametrisation mode under FHPP, change of the operating mode with enabled output stage.

Check your application. It may be that not every change is permissible.

PS off 2)

7380 E082 Encoder supply fault

4V < U_Encoder < 6V = OK, otherwise NOK

- Test with another encoder - Test with another encoder

cable

- Test with another controller

PS off 7386 E086 Only CMMS-AS/ CMMD-AS: SINCOS-RS485 communi-cation error Communication to serial angle encoders faulty (EnDat−encoder, HIPERFACE−encoder, BiSS−encoder). Angle encoder connected?

Angle encoder cable defective?

Angle encoder defective?

Check configuration of angle encoder interface: procedure corresponding to a) to c): a) Serial encoder parametrised but not connected?

Incorrect serial protocol selected?

b) Encoder signals faulty? c) Test with another encoder.

(37)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1) 7388 E088 Only CMMS-AS/ CMMD-AS: Internal angle encoder error

Alarm bit set in the EnDat encoder.

Possible causes:

Encoder- or manufacturer-specific, e.g. a declining illumination intensity for optical encoders or excessive speed. If the error occurs permanently:

Test with another (error-free) encoder (also replace the connecting cable). Encoder presumably permanently defective. PS off 7500 E220 PROFIBUS faulty initialization Extension module defective?

Please contact Technical Support. PS off 2) 7500 E222 PROFIBUS Communi-cation fault Faulty initialization of the Profibus technology module. Technology module defective?

Check slave address set Check bus termination Check wiring PS off 2) 7510 E790 RS232 communi-cation error Overflow during reception of RS232 commands Check wiring.

Check of the transmitted data.

PS off 2) 7582 E642 DeviceNet communi-cation error Input buffer overflowed

Too many messages received within a short period.

Reduce the scan rate. PS off 2)

7582 E643 DeviceNet communi-cation error

Transmission buffer overflowed

Not sufficient free space on the CAN bus for sending messages.

Increase the baud rate, reduce the number of nodes or reduce the scan rate.

(38)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

7582 E644 DeviceNet communi-cation error

IO-message could not be sent

Check that the network is connected correctly and has no faults.

PS off 2)

7582 E645 DeviceNet communi-cation error

Bus off Check that the network is connected correctly and has no faults.

PS off 2)

7582 E646 DeviceNet communi-cation error

Overflow in the CAN controller

Increase the baud rate, reduce the number of nodes or reduce the scan rate.

PS off 2)

7582 E651 DeviceNet communi-cation error

Timeout of the I/O connection No I/O message received within the expected time.

Please contact Technical Support.

PS off 2)

7583 E651 DeviceNet initialisation error

Node number on hand twice

Check the configuration PS off 2)

7584 E641 DeviceNet general error

No 24 V bus voltage In addition to the motor controller, connect the DeviceNet module to 24 VDC. PS off 2) 7584 E650 DeviceNet general error Common error: Communication is activated although no technology module is plugged in. The DeviceNet technology module is attempting to read unknown CO. Unknown DeviceNet error. PS off 2) 7680 E290 SD card not available Tried to access missing SD card. Check:

- whether SD card is plugged in correctly

- whether SD card is formatted - whether compatible SD card

is plugged in.

(39)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1) 7681 E291 SD card initialization error Error on initialization / communication not possible

Plug card back in.

Check card (file format FAT). If necessary, format card.

PS off 2)

7682 E292 SD card parameter set error

Checksum wrong / File not available / File format wrong / Error saving the parameter file on the SD card

Check content (data) of the SD card.

PS off 2)

8000 E052 Error, driver power supply

Error in the plausibility check of the driver power supply (reliable halt)

Separate device from the entire peripheral equipment and check if the fault is still present after reset. If yes, there is an internal defect and a repair by the manufacturer is required.

PS off

8000 E450 Error, driver power supply

The driver supply is still active despite the "Safe Halt".

The internal logic might malfunction due to high-frequency switching

operations at the input for the safe halt.

Check activation; the error must not recur.

If the error occurs repeatedly when the safe halt is activated: check firmware (released version?).

If all above possibilities have been excluded, the hardware of the motor controller is defective.

(40)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

8000 E451 Error, driver power supply

The driver supply is activated again, even though the

"Safe Halt" is still requested.

The internal logic might malfunction due to high-frequency switching

operations at the input for the safe halt.

Check activation; the error must not recur.

If the error occurs repeatedly when the safe halt is activated: check firmware

(released version?).

If all above possibilities have been excluded, the hardware of the motor controller is defective.

PS off

8000 E452 Error, driver power supply

The driver supply does not go on again, even though the

"Safe Halt" signal is no longer active.

If the error occurs repeatedly when safe halt is being deactivated, the hardware of the motor controller is defective. PS off 8087 E453 Error plausibility DIN4 (output stage enable)

Error in the plausibility check of the output stage enable

Please contact Technical Support. PS off 8100 E760 Only CMMD-AS: Error SSIO communi-cation (axis 1 – axis 2) Common error: 1. Checksum error during transfer of the SSIO protocol 2. Timeout during transmission

Check wiring.

Check whether the screening of the motor cables is correctly set up (EMC problem).

If the SSIO communication is not necessarily needed (e.g. no fieldbus module is used, and the axes are controlled separately over I/Os, so this error may be ignored.)

(41)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1) 8100 E761 Only CMMD-AS: Error SSIO communi-cation (axis 2)

SSIO partner has error 760

The error is triggered when the other axis has reported an SSIO communication error. For example, if axis 2 reports the error 76-0, the axis 1 of the error 76-1 is triggered.

Measures and description of the error response as with error 76-0. PS off 2) 8181 E122 CAN communi-cation error Common error: 1. Error when sending a message

(e.g. no bus connected) 2. Timeout during reception of the SYNC messages in the interpolated position mode

Check wiring:

Cable specifications complied with, broken cable, maximum cable length exceeded, terminating resistors correct, cable screening earthed, all signals displayed?

Replace device on a test basis. If another device works correctly with the same wiring, send device to the

manufacturer for testing. Check start sequence of the application. PS off 2) 8488 E424 Homing required No positioning possible without homing. Homing run must be carried out

Reset optional parametrisation "Homing required".

Carry out a new homing run after acknowledgement of an angle encoder error.

Warn 2) 8611 E170 Contouring error limit value exceeded Comparison threshold for the limit value of the contouring error exceeded.

Enlarge error window. Acceleration parameter too large.

PS off 2)

8612 E400 Error SW limit switch

reached

Negative SW limit switch reached.

Check target data. Check positioning area.

Warn 2)

8612 E401 Error SW limit switch

reached

Positive SW limit switch reached.

Check target data. Check positioning area.

(42)

Error message

error code (hex)

Display Message Causes Measures Error

reaction 1)

8612 E402 Error SW limit switch

reached

Target position lies behind the negative SW limit switch

Check target data. Check positioning area.

Warn 2)

8612 E403 Error SW limit switch

reached

Target position lies behind the positive SW limit switch.

Check target data. Check positioning area.

Warn 2)

8612 E430 Fault in limit switch

Negative hardware limit switch reached.

Check parameters, wiring and proximity switches.

Warn 2)

8612 E431 Fault in limit switch

Positive hardware limit switch reached.

Check parameters, wiring and proximity switches.

Warn 2)

8612 E439 Fault in limit switch

Both hardware limit switches are active simultaneously.

Check parameters, wiring and proximity switches.

Warn 2)

8681 E421 Positioning: Error in precalculation

The positioning target cannot be reached through the positioning or edge condition options.

Check parametrisation of the position records in question.

PS off 2)

8A81 E111 Error during homing Homing was interrupted, e.g. by withdrawal of controller release or through limit switches.

Check homing sequence. Check arrangement of the switches.

Possibly lock stop input during homing, if undesirable. PS off Switch off power section

Qstop Fast stop Warn Warning 1)

Ignore Ignore 2) Changeable with FCT

(43)

3.5.2

Description of the Objects

Object 1001

h

: error_register

The error type defined in the CiA standard 301 can be read via the object error_register. Sub-Index 00h

Description error_register

Data Type UINT8 Access ro PDO Mapping yes

Units -- Value Range 0 ... FFh

Default Value 0

bit Type of error

0 generic errror

1 current 2 voltage 3 temperature

4 communication error 5 device profile specific 6 reserved

7 manufacturer specific

Object 1003

h

: 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 error occurring is 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). To be able to reactivate the output stage of the motor controller after an error, an error acknowledgement

(44)

Index 1003h

Name pre_defined_error_field

Object Code ARRAY No. of Elements 4 Data Type UINT32 Sub-Index 01h Description standard_error_field_0 Access ro PDO Mapping no Units -- Value Range -- Default Value -- Sub-Index 02h Description standard_error_field_1 Access ro PDO Mapping no Units -- Value Range -- Default Value -- Sub-Index 03h Description standard_error_field_2 Access ro PDO Mapping no Units -- Value Range -- Default Value -- Sub-Index 04h Description standard_error_field_3 Access ro PDO Mapping no Units -- Value Range -- Default Value --

(45)

Object 1014

h

_00

h

: cob-id_emergency_object

Sub-Index 00h

Description cob-id_emergency_object

Data Type UINT32 Access rw PDO Mapping no

Units -- Value Range --

Default Value 80h + Node-ID

3.6

Heartbeat / Bootup (Error Control Protocol)

3.6.1

Structure of the Heartbeat Message

The so-called Heartbeat protocol is implemented 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 appropriate measures if they do not. The Heartbeat telegram is transmitted with the identifier

700h + node number. It contains only 1 byte of user data, the NMT status of the motor

controller (see chapter 3.7: Network Management: NMT Service).

NMT status Identifier: 700h + node number 701h 1 N Data length N Significance 04h Stopped 05h Operational 7Fh Pre-Operational

(46)

3.6.2

Structure of the Bootup Message

After the power supply is switched on or after a reset, the motor controller reports via a Bootup message that the initialisation phase is ended. The motor controller is then in the NMT status preoperational (see chapter 3.7: Network Management: NMT Service)

Bootup message identifier Identifier: 700h +

node number

701h 1 0

Data length

The Bootup message is structured almost identically to the Heartbeat message. Only a zero is sent instead of the NMT status.

3.6.3

Description of the Objects

Object 1017

h

: producer_heartbeat_time

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 rw PDO Mapping no

Units ms Value Range 0 ... 65536 Default Value 0

The producer_heartbeat_time can be stored in the parameter record. If the motor

controller starts with producer_heartbeat_time not equal to zero, the bootup message is the first heartbeat.

The motor 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.

(47)

3.7

Network Management (NMT Service)

All CANopen devices can be triggered via the Network Management. The identifier with the highest priority (000h) is reserved for this.

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 controller does 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:

Command specifier Identifier: 000h Node ID 000h 2 CS NI 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.

Reset Application Reset Communication Initialising Pre-Operational (7Fh) Operational (05h) Stopped (04h) 1 2 5 7 6 8 3 4 16 15 11 13 12 10 9 14 Initialisation

(48)

The NMT status of the motor controller can be influenced via the following commands:

CS Significance Transitions Target status

01h Start Remote Node 3, 6 Operational (05h)

02h Stop Remote Node 5, 8 Stopped (04h)

80h Enter Pre-Operational 4, 7 Pre-Operational (7Fh) 81h Reset Application 12, 13, 14 Reset Application *1)

82h Reset Communication 9, 10, 11 Reset Communication *1)

*1) The final target status is pre-operational (7F

h), since the transitions 15, 16 and 2 are automatically

performed by the motor controller.

All other status transitions are performed automatically by the motor controller, e.g. because the initialisation is completed.

In the NI parameter, the node number of the motor 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: So, for example, it is absolutely necessary to place the NMT status to Operational, so that the motor controller sends PDOs.

Name Significance SDO PDO NMT

Reset Application No Communication. All CAN objects are reset to their

reset values (application parameter set) - - -

Reset Communication No communication

The CAN controller is newly initialised. - - -

Initialising Status after hardware reset. Resetting of the CAN node,

Sending of the bootup message - - -

Pre-Operational Communication via SDOs possible

PDOs not active (no sending / evaluating) X - X

Operational Communication via SDOs possible

All PDOs active (sending / evaluating) X X X

Stopped No communication except for heartbeating - - X

NMT telegrams must not be sent in a burst (immediately one 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 motor controller to process the NMT messages correctly.

The communication status must be set to operational for the motor controller to transmit and receive PDOs.

References

Related documents

Neglecting the industry perspective, the positive effect of expansive innovation budgeting during the crisis on the post-crisis sales share of more ambitious innovations suggests that

Rubinfeld and Shapiro [1989] survey the substantial related literature on the demand for state and local spending on elementary education. The particular issue of interest in

The other three non-search tasks (encoding, recognition and description) contributed primarily to the between-tasks analysis; however it was noted that both PCA and

Nem volt biztos benne, hogy helyesen cselekszik-e, amikor áthívta, hogy beszéljen ő Annával, de volt egy olyan halvány érzése, hogy ha valaki közel tud

Applying these approaches in the supply chain to redesign the process may provide a suitable condition for CBS to use the existing inventory in a way that the amounts of

The main idea of the research was to observe what factors have actually shaped DKI Jakarta’s voters in believing or disbelieving in the disinformation, whether

Commerce Commission “Further consultation paper on issues relating to determining a price for Chorus' UCLL and UBA services under the final pricing principle - supplementary paper”

Sault Ste. Records available only through the Land Registry Office.. Microfilmed records from all three Land Registry Offices are listed under Ontario/Durham County in Inventory