Excellence in Motion TM
DSP-402 APPLICATION GUIDE
TM
CANopen
TM
DRIVE
CANopen
MDrivePlus CANopen Change Log
Date |
Revision |
Changes |
|
|
|
10/06/2006 |
R100606 |
Initial Release |
12/20/2006 |
R122006 |
Added newly supported objects to DSP-402 Implementation |
|
|
|
02/05/2007 |
R020507 |
Added new object support, broke out DSP 402 to separate document. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The information in this book has been carefully checked and is believed to be accurate; however, no responsibility is assumed for inaccuracies.
Intelligent Motion Systems, Inc., reserves the right to make changes without further notice to any products herein to improve reliability, function or design. Intelligent Motion Systems, Inc., does not assume any liability arising out of the application or use of any product or circuit described herein;
neither does it convey any license under its patent rights of others. Intelligent Motion Systems and |
TMare trademarks of Intelligent Motion |
Systems, Inc. |
|
Intelligent Motion Systems, Inc.’s general policy does not recommend the use of its products in life support or aircraft applications wherein a failure or malfunction of the product may directly threaten life or injury. Per Intelligent Motion Systems, Inc.’s terms and conditions of sales, the user of Intelligent Motion Systems, Inc., products in life support or aircraft applications assumes all risks of such use and indemnifies Intelligent Motion Systems, Inc., against all damages.
CANopen DSP402 Application
Revision R020507
Copyright © 2007 Intelligent Motion Systems, Inc.
All Rights Reserved
Contents
Section 1: Introduction to the MDrivePlus CANopen DSP-402 Implementation |
..................................3 |
Introduction.................................................................................................................................. |
3 |
CAN Message Format.................................................................................................................... |
3 |
MDrivePlus Architecture............................................................................................................... |
3 |
Device Control.............................................................................................................................. |
4 |
Modes of Operation....................................................................................................................... |
4 |
Homing Mode.......................................................................................................................... |
4 |
Profile Position Mode................................................................................................................ |
4 |
Profile Velocity Mode................................................................................................................ |
4 |
Trajectory Generator................................................................................................................. |
5 |
Objects and the Object Dictionary................................................................................................ |
5 |
Object Formatting......................................................................................................................... |
6 |
Object Description.................................................................................................................... |
6 |
Entry Description..................................................................................................................... |
6 |
Sub-Indexes............................................................................................................................... |
7 |
Section 2: Accessing The MDrivePlus CANopen..................................................................................... |
9 |
Introduction.................................................................................................................................. |
9 |
Process Data Object (PDO)........................................................................................................... |
9 |
PDO Attributes........................................................................................................................ |
9 |
Service Data Object (SDO)........................................................................................................... |
9 |
SDO Attributes......................................................................................................................... |
9 |
PDO Mapping............................................................................................................................ |
10 |
PDO Mapping Procedure (Consumer PDO)............................................................................... |
10 |
PDO Objects............................................................................................................................... |
11 |
Consumer PDO1 (RPDO1) 1400h (Object Description) ...................................................... |
11 |
Consumer PDO1 (RPDO1) 1400h (Entry Description) ....................................................... |
11 |
1600h (Object Description – Mapping Parameters)................................................................ |
11 |
1600h (Entry Description – Mapping Parameters).................................................................. |
11 |
Consumer PDO2 (RPDO2) 1401h (Object Description) ...................................................... |
12 |
Consumer PDO2 (RPDO2) 1401h (Entry Description) ....................................................... |
12 |
1601h (Object Description – Mapping Parameters)................................................................ |
12 |
1601h (Entry Description – Mapping Parameters).................................................................. |
12 |
Consumer PDO3 (RPDO3) 1402h (Object Description) ...................................................... |
13 |
Consumer PDO3 (RPDO3) 1402h (Entry Description) ....................................................... |
13 |
1602h (Object Description – Mapping Parameters)................................................................ |
13 |
1602h (Entry Description – Mapping Parameters).................................................................. |
13 |
Producer PDO1 (TPDO1) 1800h (Object Description) ........................................................ |
13 |
Producer PDO1 (TPDO1) 1800h (Entry Description) .......................................................... |
14 |
1A00h (Object Description – Mapping Parameters)............................................................... |
14 |
1A00h (Entry Description – Mapping Parameters)................................................................. |
14 |
Producer PDO2 (TPDO2) 1801h (Object Description) ........................................................ |
14 |
Producer PDO2 (TPDO2) 1801h (Entry Description) .......................................................... |
14 |
1A01h (Object Description – Mapping Parameters)............................................................... |
15 |
1A01h (Entry Description – Mapping Parameters)................................................................. |
15 |
Producer PDO3 (TPDO3) 1802h (Object Description) ........................................................ |
15 |
Producer PDO3 (TPDO3) 1802h (Entry Description) .......................................................... |
15 |
1A02h (Object Description – Mapping Parameters)............................................................... |
15 |
1A02h (Entry Description – Mapping Parameters)................................................................. |
16 |
Section 3: Manufacturer Specific Objects............................................................................................ |
17 |
Introduction................................................................................................................................ |
17 |
Accessibility Codes............................................................................................................... |
17 |
Object 2000h: I/O Discretes (Config)......................................................................................... |
17 |
Object Description.................................................................................................................. |
17 |
Entry Description................................................................................................................... |
17 |
Object 2002h: I/O Discretes (Config)......................................................................................... |
18 |
Object Description.................................................................................................................. |
18 |
Entry Description................................................................................................................... |
18 |
Object 2004h: Input Filter Mask (Config)................................................................................... |
18 |
Object Description.................................................................................................................. |
19 |
Entry Description................................................................................................................... |
19 |
Object 2006h: Input Filter Time (ms).......................................................................................... |
19 |
Object Description.................................................................................................................. |
19 |
Entry Description................................................................................................................... |
19 |
Object 2010h: Analog Input........................................................................................................ |
20 |
Object Description.................................................................................................................. |
20 |
Entry Description................................................................................................................... |
20 |
Object 2020h: Software Limits as Hardware Limits..................................................................... |
20 |
Object Description.................................................................................................................. |
20 |
Entry Description................................................................................................................... |
20 |
Object 2022h: Actual Position Software Limit............................................................................. |
20 |
Object Description.................................................................................................................. |
20 |
Entry Description................................................................................................................... |
20 |
Object 2031h: Unit Options (Encoder Enable, Capture In/Trip Out)......................................... |
21 |
Object Description.................................................................................................................. |
21 |
Entry Description................................................................................................................... |
21 |
Object 2032h: Clock Options...................................................................................................... |
21 |
Object Description.................................................................................................................. |
21 |
Entry Description................................................................................................................... |
21 |
Object 2033h: Capture Input...................................................................................................... |
21 |
Object Description.................................................................................................................. |
21 |
Entry Description................................................................................................................... |
22 |
Object 2204h: Run Current Percent............................................................................................ |
22 |
Object Description.................................................................................................................. |
22 |
Entry Description................................................................................................................... |
22 |
Object 2205h: Hold Current Percent........................................................................................... |
22 |
Object Description.................................................................................................................. |
22 |
Entry Description................................................................................................................... |
22 |
Object 2211h: Position Present Point Target................................................................................ |
23 |
Object Description.................................................................................................................. |
23 |
Entry Description................................................................................................................... |
23 |
Object 2212h: Position Final Point Target................................................................................... |
23 |
Object Description.................................................................................................................. |
23 |
Entry Description................................................................................................................... |
23 |
Object 5001h: Configuration...................................................................................................... |
23 |
Entry Description................................................................................................................... |
24 |
Object 5002h: ASCII Serial Number........................................................................................... |
24 |
Entry Description................................................................................................................... |
24 |
Object 5003h: ASCII Part Number............................................................................................. |
24 |
Entry Description................................................................................................................... |
24 |
Object 5004h: Motor Parameters................................................................................................. |
24 |
Entry Description................................................................................................................... |
24 |
Section 4: Device Control.................................................................................................................... |
25 |
Device Control............................................................................................................................ |
25 |
Control and Status words........................................................................................................ |
25 |
State Machine.............................................................................................................................. |
25 |
Notes On State Transitions........................................................................................................ |
27 |
Object 6040h — Controlword.................................................................................................... |
28 |
Object Description.................................................................................................................. |
28 |
Entry Description................................................................................................................... |
28 |
Data Description..................................................................................................................... |
28 |
Device Control Command Bit Patterns (Bits 0-3 and 7)......................................................... |
28 |
Device Operation Mode Bit Patterns (Bits 4-6 and 8)............................................................. |
28 |
Object 6041h — Statusword....................................................................................................... |
29 |
Object Description.................................................................................................................. |
29 |
Entry Description................................................................................................................... |
29 |
Data Description..................................................................................................................... |
29 |
Section 5: Modes of Operation............................................................................................................. |
31 |
Object 6060h — Modes of Operation......................................................................................... |
31 |
Object Description...................................................................................................................... |
31 |
Entry Description................................................................................................................... |
31 |
Data Description..................................................................................................................... |
31 |
Object 6061h — Modes of Operation Display............................................................................ |
32 |
Object Description.................................................................................................................. |
32 |
ii
Entry Description................................................................................................................... |
32 |
Data Description..................................................................................................................... |
32 |
Object 6502h — Supported Drive Modes................................................................................... |
32 |
Object Description.................................................................................................................. |
32 |
Entry Description................................................................................................................... |
32 |
Data Description..................................................................................................................... |
32 |
Section 6: Profile Position Mode.......................................................................................................... |
35 |
General Information.................................................................................................................... |
35 |
Input Data Description................................................................................................................ |
35 |
Output Data Description............................................................................................................. |
35 |
Functional Description................................................................................................................ |
36 |
Controlword (6040h) of Profile Position Mode............................................................................ |
37 |
Object 6081h — Profile Velocity................................................................................................. |
38 |
Object Description.................................................................................................................. |
38 |
Entry Description................................................................................................................... |
38 |
Statusword (6041h) of Profile Position Mode............................................................................... |
38 |
Object 607Ah — Target Position................................................................................................. |
38 |
Object Description.................................................................................................................. |
38 |
Entry Description................................................................................................................... |
38 |
Object 6082h — End Velocity..................................................................................................... |
39 |
Object Description.................................................................................................................. |
39 |
Entry Description................................................................................................................... |
39 |
Object 6083h — Profile Acceleration.......................................................................................... |
39 |
Object Description.................................................................................................................. |
39 |
Entry Description................................................................................................................... |
39 |
Object 6084h — Profile Deceleration.......................................................................................... |
39 |
Object Description.................................................................................................................. |
39 |
Entry Description................................................................................................................... |
39 |
Object 6086h — Motion Profile Type......................................................................................... |
40 |
Object Description.................................................................................................................. |
40 |
Entry Description................................................................................................................... |
40 |
Section 7: Homing Mode..................................................................................................................... |
41 |
General Information.................................................................................................................... |
41 |
Input Data Description........................................................................................................... |
41 |
Output Data Description........................................................................................................ |
41 |
Internal States......................................................................................................................... |
41 |
Controlword (6040h) of Profile Position Mode............................................................................ |
41 |
Statusword (6041h) of Homing Mode......................................................................................... |
42 |
Homing Offset (607Ch).............................................................................................................. |
42 |
Object Description.................................................................................................................. |
42 |
Entry Description................................................................................................................... |
42 |
Homing Method (6098h)............................................................................................................ |
43 |
Object Description.................................................................................................................. |
43 |
Entry Description................................................................................................................... |
43 |
Data Description..................................................................................................................... |
43 |
Functional Description of Homing Methods.......................................................................... |
43 |
Homing Speeds (6099h).............................................................................................................. |
47 |
Object Description.................................................................................................................. |
47 |
Entry Description................................................................................................................... |
47 |
Section 8: Position Control Function................................................................................................... |
49 |
General Information.................................................................................................................... |
49 |
Object 6062h — Position Demand Value.................................................................................... |
49 |
Object Description.................................................................................................................. |
49 |
Entry Description................................................................................................................... |
49 |
Object 6063h — Position Actual Value Internal.......................................................................... |
49 |
Object Description.................................................................................................................. |
49 |
Entry Description................................................................................................................... |
49 |
Object 6064h — Position Actual Value........................................................................................ |
49 |
Entry Description................................................................................................................... |
49 |
Object 6065h — Following Error Window................................................................................. |
50 |
Object Description.................................................................................................................. |
50 |
iii
Entry Description................................................................................................................... |
50 |
Object 6066h — Following Error Timeout.................................................................................. |
50 |
Object Description.................................................................................................................. |
50 |
Entry Description................................................................................................................... |
50 |
Object 6068h — Position Window Time.................................................................................... |
50 |
Object Description.................................................................................................................. |
50 |
Entry Description................................................................................................................... |
50 |
Section 9: Profile Velocity Mode.......................................................................................................... |
51 |
Controlword (6040h) of Profile Velocity Mode............................................................................ |
51 |
Statusword (6041h) of Profile Velocity Mode............................................................................... |
51 |
Object 606Ch — Velocity Actual Value....................................................................................... |
51 |
Object Description.................................................................................................................. |
51 |
Entry Description................................................................................................................... |
51 |
Object 60FFh — Target Velocity................................................................................................. |
52 |
Entry Description................................................................................................................... |
52 |
Object 60F8h — Maximum Slippage.......................................................................................... |
52 |
Entry Description................................................................................................................... |
52 |
Section 10: Optional Application FE (General I/O)............................................................................ |
53 |
Object 60FDh — Digital Inputs.................................................................................................. |
53 |
Entry Description................................................................................................................... |
53 |
Object 60FEh — Digital Outputs............................................................................................... |
54 |
Entry Description................................................................................................................... |
54 |
iv
|
List of Figures |
Figure 1.1: Message Format........................................................................................................... |
3 |
Figure 1.2: MDrivePlus Architecture.............................................................................................. |
3 |
Figure 1.3: Functional Architecture................................................................................................ |
4 |
Figure 1.4: MDrivePlus CANopen Object Dictionary................................................................... |
5 |
Figure 2.1: PDO Producer – Consumer Relationship.................................................................... |
9 |
Figure 2.2: SDO Client – Server Relationship................................................................................ |
9 |
Figure 2.3: PDO Mapping Showing the Default Mapping for RPDO2....................................... |
10 |
Figure 3.1: Input Filter Mask....................................................................................................... |
18 |
Figure 4.1: Device Control.......................................................................................................... |
25 |
Figure 4.2: State Machine States/Transitions Block Diagram........................................................ |
27 |
Figure 4.3: Statusword Bits.......................................................................................................... |
29 |
Figure 6.1: Trajectory Generator Block Diagram.......................................................................... |
35 |
Figure 6.2: Set-Point Transmission from Host Computer............................................................. |
36 |
Figure 6.3: Single Set-Point Mode (Move After a Move) 6040h Bit 5=0....................................... |
37 |
Figure 6.4: Set of Setpoints (Move on a Move) 6040h Bit 5=1..................................................... |
37 |
Figure 7.1: The Homing Function............................................................................................... |
41 |
Figure 7.2: Home Offset.............................................................................................................. |
42 |
Figure 7.3: Homing on the Negative Limit and Index Pulse......................................................... |
43 |
Figure 7.4: Homing on the Positive Limit and Index Pulse.......................................................... |
44 |
Figure 7.5: Homing on the Positive Home Switch and Index Pulse.............................................. |
44 |
Figure 7.7: Homing on the Home Switch and Index Pulse - Positive Initial Move........................ |
45 |
Figure 7.6: Homing on the Negative Home Switch and Index Pulse............................................ |
45 |
Figure 7.8: Homing on the Home Switch and Index Pulse - Negative Initial Move...................... |
46 |
Figure 7.9: Homing without an Index Pulse................................................................................. |
46 |
Figure 7.10: Homing on the Index Pulse...................................................................................... |
47 |
Figure 10.1: Object 60FD Structure............................................................................................ |
53 |
Figure 10.2: Object 60FE Structure............................................................................................. |
54 |
|
List of Tables |
Table 1.1: Object Dictionary......................................................................................................... |
5 |
Table 4.1: State Machine States.................................................................................................... |
25 |
Table 4.2: State Machine Transitions............................................................................................ |
26 |
Table 4.3: MDrivePlus CANopen Device Control Commands (Bits Marked X are not relevant) 28 |
|
Table 4.4: MDrivePlus CANopen Operation Modes.................................................................... |
28 |
Table 4.5: Device State Bits for Statusword.................................................................................. |
29 |
Table 6.1: Profile Position Mode Bits of Controlword.................................................................. |
37 |
Table 8.1: Profile Velocity Mode Bits of Controlword.................................................................. |
51 |
Table 8.2: Profile Velocity Mode Bits of Statusword..................................................................... |
51 |
This Page Intentionally Left Blank
vi
Excellence in Motion TM
DSP-402 APPLICATION GUIDE
Section 1: Introduction to the MDrivePlus CANopen DSP-402 Implementation
Section 2: Manufacturer Specific Objects
Section 3: Accessing the MDrivePlus CANopen
Section 4: Device Control
Section 5: Modes of Operation
Section 6: Profile Position
Section 7: Homing Mode
Section 8: Position Control Function
Section 9: Profile Velocity
Section 10: Optional Application FE
Page Intentionally Left Blank
MDrivePlus CANopen R020507
SECTION 1
Introduction to the MDrivePlus CANopen DSP-402 Implementation
Introduction
This document describes the Operational Modes and Objects utilized by the MDrivePlus CANopen. The MDrivePlus uses the CiA DSP402 protocol as described the the CiA document CANopen Device Profile for Drives and Motion Control V2.0B.
CAN Message Format
The MDrivePlus is compliant with CAN 2.0B Active Specification. The Data Packets follow the message format shown in Figure 1.1. The Figure is for reference only, please refer to the CAN 2.0B Specification.
Start |
|
Arbitration |
Control |
|
|
|
Data |
CRC |
ACK |
End |
Space |
|
|||||||||
(Command and Address) |
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
Up to 8 Bytes |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
of Data |
|
|
|
|
|
|
|
|
Marks End |
|
|
|
|
|
|
|
|
|
|
Data Length |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
of Message Frame |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
Address and Message Modifier |
|
|
|
|
|
|
|
Receiver Pulls |
||||||||
|
|
|
|
|
(PDO, SDO etc.) |
|
|
|
|
|
|
|
|
|
|
|
Bit Low |
||||
|
|
|
Marks Start |
|
|
|
|
|
|
|
|
|
|
Cyclic Redundancy |
|||||||
|
|
|
of Message Frame |
|
|
|
|
|
|
|
|
|
|
Checksum |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Figure 1.1: Message Format
MDrivePlus Architecture
CAN Network
CAN Node
MDrivePlus
Application Layer and Communications Profile DS 301
Drive Profile DSP 402
Device Control State Machine
(Section XX)
|
|
Modes of Operation |
|
|
||
|
|
|
|
|
|
|
|
Profile |
|
Homing |
|
Profile |
|
|
Position |
|
Mode |
|
Velocity |
|
|
Mode |
|
(Section X) |
|
Mode |
|
|
(Section X) |
|
|
|
(Section X) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Motor
Figure 1.2: MDrivePlus Architecture
Part 2: DSP-402 Implementation
Device Control
The starting and stopping of the drive and several mode specific commands are executed by the state machine.
Modes of Operation
The operation mode defines the behavior of the drive. The following modes are defined in this profile:
Homing Mode
This chapter describes the various methods to find a home position (also: reference point, datum, zero point).
Profile Position Mode
The positioning of the drive is defined in this mode. Speed, position and acceleration can be limited and profiled moves using a Trajectory Generator are possible as well.
Homing Mode (Section X)
|
Homing Function |
|
|
|
Trajectory |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
Generator |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Position Control |
Profile Position Mode (Section X) |
|
|
|
|
|||||
|
|
|
|
Loop |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Position Function |
|
|
|
Trajectory |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
Generator |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Profile Velocity Mode (Section X) |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
Velocity Function |
|
|
|
Trajectory |
|
|
|
Velocity Control |
|
|
|
|
Generator |
|
|
|
Loop |
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Figure 1.3: Functional Architecture
Profile Velocity Mode
The Profile Velocity Mode is used to control the velocity of the drive with no special regard of the position. It supplies limit functions and trajectory generation.
MDrivePlus CANopen R020507
Trajectory Generator
The chosen operation mode and the corresponding parameters (objects) define the input of the Trajectory Generator. The Trajectory Generator supplies the control loop(s) with the demand values. They are generally mode specific.
Each Mode may use its own Trajectory Generator. A general description of its functionality is given in Section X, which is related to the Profile Position Mode.
Objects and the Object Dictionary
In a CANopen network, a device is controlled by writing to device parameters and reading the status of the device. This is accomplished using a pre-defined dictionary of instructions that can be written and status information that can be read. These pieces of information are called Objects.
The full set of objects are called the Object Dictionary. The Object Dictionary is the interface between the CANopen master, or controller and the MDrivePlus node on a CANopen network.
|
CAN |
|
|
|
|
|
|
|
|
Additional System Nodes |
|||||
|
Contoller |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
MDrivePlus Node |
||||||||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
Object Dictionary |
|
|
|
|
|||||
Output (LED, Relay) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I/O |
|
|
|
|
Drive |
Motor |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
Input (Switch, Sensor) |
|
|
|
|
|
|
|
|
|
Logic |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Analog Input |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Figure 1.4: MDrivePlus CANopen Object Dictionary |
Entries within the Object Dictionary are addressed using 16-bit Indexes. In the case of simple variables (VAR) the index references the value of the variable directly. In the case of records and arrays the index addresses the entire data structure.
To allow individual elements of the data structures a sub-index is defined. The fields accessed by the sub-index may be of differing data types.
Index (hex) |
Object |
|
0000 |
|
Not Used |
0001 |
– 004F |
Static Data Types |
0020 |
– 003F |
Complex Data Types |
0040 |
– 005F |
Manufacturer Specific Data |
0060 |
– 007F |
Device Profile Specific Static Data Types |
0080 |
– 009F |
Device Profile Specific Complex Data Types |
00A0 – 0FFF |
Reserved for Future Use |
|
1000 |
– 1FFF |
Communications Profile Area |
2000 |
– 5FFF |
Manufacturer Specific Profile |
6000 |
– 9FFF |
Standardized Device Profile |
A000 – BFFF |
Standardized Interface Profile |
|
C000 – FFFF |
Reserved for Future Use |
Table 1.1: Object Dictionary
Part 2: DSP-402 Implementation
Object Formatting
This manual will display the Object and Entry data using the model detailed below.
Object Description
Index |
Name |
Object Code |
Data Type |
XXXXh |
Index Name |
VAR |
I/U |
Index
The Index is the hexadecimal number that represents the index number of the object in the CANopen Object Dictionary. With the exception of IMS Manufacturer specific objects these are defined in CiA Device Profile for Drives and Controls DSP402. The applicable objects are defined in this document as well.
Index Name
The Index Name is the general name and description of the object. With the exception of IMS Manufacturer specific objects these are defined in CiA Device Profile for Drives and Controls DSP402.
Object Code
VAR - Variable
Data Type
Physically, the types consist of one or more bytes. One byte consists of 8 bits (Bit 0 to 7). Bit 0 is the LSB (Least Significant Bit). A byte can also be depicted hexadecimally (0x00 ... 0xff).
If a data type consists of n byte, the following applies:
Data byte 1 (Byte in address x) = highest value byte
Data byte n (Byte in address x+n-1) = lowest value byte
The data coding and the value ranges for the respective data types apply, unless otherwise explicitly stated in the data description of an MDrivePlus communication object.
Integer (I) |
Range |
|
Length |
|
± Integer 8 |
–128 ... |
+127 |
|
1 Byte |
± Integer 16 |
– 32,768 ... |
+32,767 |
|
2 Bytes |
± Integer 32 |
– 2,147,483,647 ... |
+2,147,483,647 |
|
4 Bytes |
|
|
|
|
|
Coding |
|
2’s Complement |
|
|
Unsigned (U) |
|
Range |
|
Length |
|
||||
|
Unsigned 8 |
|
0 |
... 255 |
|
1 Byte |
|
|||
|
Unsigned 16 |
|
0 ... |
65,535 |
|
2 Bytes |
|
|||
|
Unsigned 32 |
|
0 4,294,967,295... |
|
4 Bytes |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
Coding |
|
|
|
|
Binary |
|
|
|
|
Entry Description |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|||
Access |
PDO Mapping |
Category |
|
Range |
|
Default |
|
|||
R/W/S/K |
Yes/No |
M/O |
|
I/U |
|
I/U |
|
|||
|
|
|
|
|
|
|
|
|
|
|
Access |
|
|
|
|
|
|
|
|
|
|
|
|
R....................................................................................... |
|
|
|
Read Access |
|
|
|
|
|
|
W..................................................................................... |
|
|
|
Write Access |
|
|
|
|
|
|
S......................................... |
Storable to Non Volatile Memory (NVM) |
|
|
|
||||
|
|
K.......................................................... |
|
|
Key Required for Write Access |
|
|
|
MDrivePlus CANopen R020507
PDO Mapping
Describes whether (Yes) or not (No) the Index may be mapped to a PDO (Process Data Object). If yes it may be mapped to a PDO, if No the Object must be accessed using SDO (Service Data Objects).
Category
M....................................................................................... |
Mandatory |
O........................................................................................... |
Optional |
Range
The range of the Index will be expressed as a ± Integer or Unsigned.
Default
The range of the Index will be expressed as a ± Integer or Unsigned.
Sub-Indexes
An object may have a number of Sub-Indexes which further define the operation of the object, such as I/O Configuration Parameters.
Sub-Indexes are formatted thus:
Sub-Index X
Description |
Sub-Index Functional Description |
|
|
Entry Category |
Mandatory/Optional |
Access |
R/W/S/K |
PDO Mapping |
Yes/No |
Value Range |
1 Byte Hex |
Default Value |
1 Byte Hex |
Part 2: DSP-402 Implementation
Page Intentionally Left Blank
MDrivePlus CANopen R020507
SECTION 2
Accessing The MDrivePlus CANopen
Introduction
The access from the CAN network to the drive is done through data objects.
Process Data Object (PDO)
PDOs are messages in an unconfirmed service. They are used for the transfer of real-time data to and from the drive. The transfer is fast, because it is performed with no protocol overhead what means to transport eight application data bytes in one CAN-frame. The PDOs correspond to entries in the Object dictionary.
PDO Attributes
1.Two Types: RPDO (Receive) and TPDO (Transmit)
2.Up to 8 Bytes of application data per message frame. No additional protocol overhead is required.
3.Transfer is not confirmed
4.PDOs Require setup, SDOs map each byte of the PDO to one or more Object Entries.
5.PDOs operate using the Producer (TPDO)/Consumer (RPDO) relationship Push-Pull model.
6.Best for transferring data such as Device Status, Set-points etc.
Producer |
Consumer |
TPDO |
Data |
RPDO |
|
|
RPDO |
|
|
RPDO |
|
Figure 2.1: PDO Producer – Consumer Relationship |
|
Service Data Object (SDO)
A Service Data Object (SDO) reads from entries or writes to entries of the Object Dictionary. The SDO transport protocol allows transmitting objects of any size. The first byte of the first segment contains the necessary flow control information including a toggle bit to overcome the well-known problem of doubly received CAN frames. The next three byte of the first segment contain index and sub-index of the Object Dictionary entry to be read or written. The last four byte of the first segment are available for user data. The second and the following segments (using the very same CAN identifier) contain the control byte and up to seven byte of user data. The receiver confirms each segment or a block of segments, so that a peer-to-peer communication (client/server) takes place.
SDO Attributes
1.Can access any Object in the Object Dictionary regardless of size.
2.Transfer is confirmed
3.Direct access to the Object Dictionary
4.Client/Server relationship.
5.Best for setting up configuration parameters.
Client
ID Request
ID |
Request |
Server
Figure 2.2: SDO Client – Server Relationship
Part 2: DSP-402 Implementation
PDO Mapping
The MDrivePlus CANopen allows you to map objects to PDOs to reduce the transfer application data more efficiently. By using the PDO the user can map a PDO to multiple objects (8 Data Bytes max.)
The example will show RPDO 1400h mapped to Control Word (6040h) and Target Position (607Ah).
RPDO Index |
Sub-Index |
Mapped To Index |
Bytes |
1600h |
00h |
|
|
1600h |
01h |
6040h |
2 |
1600h |
02h |
607Ah |
4 |
PDO Mapping Procedure (Consumer PDO)
PDO Mapping Example 1: Profile Position Mode – Mapping ControlWord and Target Position to RPDO1
Step |
Action |
Index |
Sub-Index |
Bytes |
Value |
1 |
Place MDrive in PreOperational State |
|
|
— |
|
|
|
|
|
|
|
2 |
Turn Off RPDO1 |
1400h |
01 |
— |
8000 01C0h |
3 |
Set 1600h Sub-Index 00 to 0 |
1600h |
00 |
— |
0h |
4 |
Map ControlWord 6040h to 1600.01h, Establish New |
6040h |
00 |
2 |
005Fh |
|
Set Point |
||||
5 |
Map target_position 607Ah to 1600.02h |
607Ah |
|
4 |
Desired Axis |
|
|
Position in Hex |
|||
6 |
Set 1600h.00 to 2 Max Sub-Indexes |
1600h |
00 |
— |
2h |
7 |
Turn On RPDO1 |
1400h |
00 |
— |
0000 01C0h |
8 |
Place MDrive in Profile Position Mode |
6060h |
00 |
1 |
1h |
9 |
Place MDrive in Operational State |
|
|
|
|
10 |
Send PDO to MDrive |
|
|
|
|
Note: Before re-sending the PDO to the MDrive, the old set-point must be cleared by sending 6040.00h 004Fh in a second PDO or in an SDO.
Default Mapping Example - Consumer PDO 2
Index |
|
|
||
|
1601h |
SubIndex |
|
|
|
|
0 |
= 2 |
(# of SubIndex Entries |
|
|
1 |
= 2 |
Byte ControlWord (6040h) |
|
|
2 |
= 4 Byte Commanded SetPoint (607A) |
|
BYTES 0 |
- 1 |
|
BYTES 2 - 5 |
|
|
BYTE 6 - 7 |
|
RPDO 2 |
ControlWord |
Set-Point (Position) Data |
|
Unused |
||||
003Fh |
|
00 |
00 |
00 |
00 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
1 |
|
|
|
|
1 |
|
1 |
|
1 |
|
|
1 |
|
abs |
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
immed |
|
|
Enabled |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
-point |
|
|
|
|
|||||||||
|
|
|
/rel |
|
|
|
|
|
|
|
|
F = Operation |
|
|||||||||
|
|
|
|
set |
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
set |
|
|
|
|
|
|
|
|
|
|
|||||||||
change |
new |
|
|
MUST be reset to zero |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
Transition Bit |
|
|
|
|
|
|
between set-points
ControlWord = 03Fh
Move to Absolute SetPoint
ControlWord = 05Fh Move to Relative SetPoint
ControlWord = 00Fh Reset New Set-Point Bit to Prepare for Next Move
Figure 2.3: PDO Mapping Showing the Default Mapping for RPDO2
MDrive CANopen
Node
10 |
MDrivePlus CANopen R020507 |
PDO Objects
Consumer PDO1 (RPDO1) 1400h (Object Description)
Index |
Name |
Object Code |
Data Type |
Category |
1400h |
Receive PDO1 Parameter |
Record |
PDO Communications Parameters |
Mandatory |
Consumer PDO1 (RPDO1) 1400h (Entry Description)
Sub-Index |
Description |
Category |
Access |
Value Range |
Default |
|
|
|
|
|
|
00h |
Highest Supported Sub-Index |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
01h |
COB-ID used by PDO |
Mandatory |
R/W |
|
0000 0200h + |
|
|
|
|
|
NODE ID |
02h |
Transmission Type |
Mandatory |
R/W |
|
255d |
03h |
Inhibit Time |
Optional |
R/W |
|
|
|
|
|
|
|
|
04h |
|
Reserved |
|
|
|
|
|
|
|
|
|
05h |
Event Timer |
Optional |
R/W |
|
0d |
1600h (Object Description – Mapping Parameters)
Index |
Name |
Object Code |
Data Type |
Category |
|
|
|
|
|
1600h |
Receive PDO1 Mapping |
Record |
PDO Mapping |
Mandatory |
1600h (Entry Description – Mapping Parameters)
Sub-Index |
Description |
Category |
Access |
Value Range |
Default |
|
|
|
|
|
|
00h |
Highest Supported Sub-Index |
Mandatory |
R/W |
|
01h |
01h |
1st Application Object |
Mandatory |
R/W |
|
6040 0010h |
02h |
2nd Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
03h |
3rd Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
04h |
4th Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
05h |
5th Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
06h |
6th Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
07h |
7th Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
08h |
8th Application Object |
Mandatory |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
Part 2: DSP-402 Implementation |
11 |
Consumer PDO2 (RPDO2) 1401h (Object Description)
Index |
Name |
Object Code |
Data Type |
Category |
|
|
|
|
|
1401h |
Receive PDO2 Parameter |
Record |
PDO Communications Parameters |
Optional |
Consumer PDO2 (RPDO2) 1401h (Entry Description)
Sub-Index |
Description |
Category |
Access |
Value Range |
Default |
|
|
|
|
|
|
00h |
Highest Supported Sub-Index |
Mandatory |
R/W |
|
02h |
01h |
|
|
|
|
0000 0300h or |
COB-ID used by PDO |
Mandatory |
R/W |
|
8000 0000h + |
|
|
|
|
|
|
NODE ID |
02h |
Transmission Type |
Mandatory |
R/W |
|
255d |
03h |
Inhibit Time |
Optional |
R/W |
|
|
|
|
|
|
|
|
04h |
|
Reserved |
|
|
|
|
|
|
|
|
|
05h |
Event Timer |
Optional |
R/W |
|
0d |
1601h (Object Description – Mapping Parameters)
Index |
Name |
Object Code |
Data Type |
Category |
1601h |
Receive PDO2 Mapping |
Record |
PDO Mapping |
Conditional, if 1401h is |
|
|
|
|
implemented |
1601h (Entry Description – Mapping Parameters)
Sub-Index |
Description |
Category |
Access |
Value Range |
Default |
|
|
|
|
|
|
00h |
Highest Supported Sub-Index |
Mandatory |
R/W |
|
01h |
01h |
1st Application Object |
Mandatory |
R/W |
|
6040 0010h |
02h |
2nd Application Object |
Optional |
R/W |
|
6060 0008h |
03h |
3rd Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
04h |
4th Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
05h |
5th Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
06h |
6th Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
07h |
7th Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
08h |
8th Application Object |
Optional |
R/W |
|
Mfg. Specific |
|
|
|
|
|
|
12 |
MDrivePlus CANopen R020507 |