Elmo DSP 402 manual Introduction, 1.1Operating Principles

Page 7
1: Introduction

CANopen DSP 402 Implementation Guide

MAN-CAN402IG (Ver. 1.2)

1

1: Introduction

This document describes the objects and operational modes of the Elmo DSP-based motion controller implementation of the CiA DSP 402 protocol. The Elmo Harmonica digital servo drive (part of the SimplIQ family of digital servo drives ) is used as the main example in this document.

Generally, the DSP 402 protocol refers only to the load behavior relating to the operation of speed, position, limits and emergencies. It does not deal with control parameters such as PI/P, scheduling and feed forward. The motor can be tuned and the plant parameters set with the Elmo Composer, which may or may not use this protocol for settings. The protocol offers methods in which a profiled reference can be given to the final load.

The DSP 402 implementation is applicable to Elmo position unit modes; that is UM=4 or UM=5. This is assumed by the Elmo drive itself and it gives no other indication.

The Elmo controller provides a number of different options for setting commands and parameters, such as via the binary interpreter, OS interpreter, RS-232 interpreter and user programs. When the user works with DSP 402, all relevant motion commands must be given through this method only. Other command sources may prevent it from operating properly according to the protocol.

Subsequently modifying controller states, modes and reference parameters using other methods may lead to undefined states. For example, in a fault state, a FAULT_RESET from the controlword must be given before enabling the motor again. But sending MO=1 through the OS interpreter may activate the motor and leave the status word of the DSP 402 with an undefined status.

Other command sources are still useful for purposes not covered by the DSP 402 protocol. Examples include:

Monitoring the states of and inputs to the SimplIQ digital servo drive.

Using the Composer to monitor SimplIQ digital servo drive behavior through the RS- 232 port while the digital servo drive is under control of the CAN DSP 402 protocol.

Using the user program (or any of the interpreters) to program issues outside the range of DSP 402 usage. For example, when the DSP 402 digital output command is not used, the digital outputs can be operated freely by a user program.

1.1Operating Principles

The CiA DSP 402 CANopen Device Profile for Drives and Motion Control is used to provide drives in a CAN network with an understandable and consistent behavior. The profile is built on top of a CAN communication profile, called CANopen, which describes the basic communication mechanisms common to all devices in the CAN network.

Image 7
Contents Implementation Guide Elmo Motion Control CANopen DSPDecember Revision History Important Notice3 Emergencies Contents1 Introduction 2 The DSP 402 Object Dictionary10.1 11.1 14 Profiled Torque Mode Appendix A Dimension Index TableAppendix B Notation Index Table 1.1Operating Principles 1 Introduction1.2Abbreviations and Terms CANopen Implementation Guide 1.3Elmo DocumentationProgramming Setup Installation SimplIQ Command Reference ManualName 2 The DSP 402 Object DictionaryAccess Implementation GuidePosition value and actual position value Homing offsetPosition encoder Motor type Default Value 3 Emergencies4 Predefinition Object 0x1001 Error registerStatusword 1800hIndex 5 Common Entries 5.1Drive ErrorObject 0x6007 Abort connection option code 6402h: Motor type 6403h: Motor catalog number 5.2Motor DataObject 0x603F Error code 6407h Motor service periodIndex Index6402h Object 0x6403 Motor catalog numberObject 0x6406 Motor calibration data Object 0x6404 Motor manufacturerIndex 6404h6505h Http drive catalog address 5.3Drive Data6502h Supported drive modes 6504h Drive manufacturerObject 0x6504 Drive manufacturer Object 0x6502 Supported drive modesIndex 6502hObject 0x60FD Digital inputs Object 0x6505 http drive catalog addressIndex 6505hPage 6.1Objects 6 Device Control6040h controlword 6041h statusword Figure 6-2 State Machine in System Context Figure 6-3 State Machine Block DiagramState Machine READY TO SWITCH ON NOT READY TO SWITCH ONThe drive function is disabled The drive function is disabledEvent Reset The fault reaction function is being executedThe drive function is disabled The drive function is disabledAction None Event Enable Operation command received from hostImportant Notes about State Transition 6040h Illegal TransitionObject 0x6040 Controlword IndexBits 0 - 3 and Object 0x6041 Statusword Bits 4, 5, 6 andBits 9 and Bits 11, 12, 13, 14 andState DescriptionBits 0 - 3, 5 and Value binaryBit 9 Remote Bit 4 Voltage EnabledBit 5 Quick Stop Bit 7 Warning605A Quick stop option code 6.2Halt, Stop and Fault Objects605C Disable operation mode 605D Halt option code 605E Fault reaction codeIndex ValueDescription Object 0x605B Shutdown option codeIndex Object 0x605C Disable operation option codeValue DescriptionValue Object 0x605D Halt option codeIndex 605DhValue Object 0x605E Fault reaction option codeIndex 605Eh6060h Modes of operation 7 Modes of Operation7.1Functional Description 7.2ObjectsIndex ValueDescription Object 0x6061 Modes of operation display608Ch Velocity dimension index 8 Factors8.2Functions and Limits 608Ah Position dimension index607Eh 8.3ObjectsObject 0x607E Polarity Index6089h Object 0x608A Position dimension indexObject 0x6089 Position notation index IndexIndex Object 0x608B Velocity notation index608Bh Object 0x608D Acceleration notation index Object 0x608C Velocity dimension indexIndex 608ChIndex Object 0x608E Acceleration dimension index608Eh 608Fh Object 0x608F Position encoder resolutionmotor revolutions Indexmotor revolutions / sec velocity encoder resolution =Object 0x6090 Velocity encoder resolution encoder increments / secSub-index Object 0x6093 Position factorIndex 6093hSub-index Object 0x6094 Velocity encoder factorIndex 6094h6095h Sub-indexObject 0x6095 Velocity factor IndexIndex Sub-indexSub-index Object 0x6096 Velocity factorEntry description Sub-index Object 0x6097 Acceleration factorIndex 6097hThe acceleration factor is calculated according to this object regardless of the setting of any other objects, such as 0x6094 velocity encoder factor 6099h Homing speeds 609Ah Homing acceleration 9 Homing9.1General Information 607Ch Home offset 6098h Homing methodName 607Ch 9.2ObjectsObject 0x607C Home offset IndexValue Object 0x6098 Homing methodIndex 6098hSub-index Object 0x6099 Homing speedsIndex 6099h609Ah 9.3Functional DescriptionObject 0x609A Homing acceleration IndexError Cases 9.4DSP 402 Homing Methods 9.4.3Methods 3 and 4 Homing on the positive home switch and index pulse Page 9.4.8Methods 31 and 32 Reserved Figure 9-7 Homing on the positive home switchFigure 9-8 Homing on the positive home switch 9.4.6Methods 15 and 16 Reserved60F4h Following error actual value 10 Position Control Function10.1General Information 6065h Following error window6062h 10.2ObjectsObject 0x6062 Position demand value Index6064H Object 0x6065 Following error windowObject 0x6064 Position actual value IndexIndex Object 0x6066 Following error time out6066h Object 0x6068: Position window time Object 0x6067 Position windowIndex 6067hIndex Object 0x60FC Position demand value - increments60FCh 607Bh Position range limit 11 Profiled Position11.1General Information 607Ah Target positionAssumes target position NameValue Description607Ah 11.2ObjectsObject 0x607A Target position IndexEntry description Sub-index Object 0x607D Software position limitIndex 607Dh607Fh Sub-indexObject 0x607F Max profile velocity IndexObject 0x6082 End velocity not yet implemented Object 0x6081 Profile velocityIndex 6081hObject 0x6084 Profile deceleration Object 0x6083 Profile accelerationIndex 6083hObject 0x6086 Motion profile type Object 0x6085 Quick stop decelerationIndex 6085h11.3Functional Description 5.Unless it was interrupted by a change set immediately, the next trajectory is executed as soon as a target reached is set 60C0h Interpolation sub mode select 12 Interpolated Position12.1General Information 60C4h Interpolation data configurationInterpolation inactive Buffer resetInterpolation active Controlword of Interpolated Position mode 60C0h 12.2ObjectsObject 0x60C0 Interpolation sub mode select IndexSub-index Object 0x60C1 Interpolation data recordIndex 60C1hSub-index Object 0x60C2 Interpolation time periodIndex 60C2hObject 0x60C3 Interpolation sync definition Value Object 0x60C4 Interpolation data configurationValue DescriptionSub-index Ring buffer Sub-indexBuffer strategies FIFO12.3Functional Description Page 12.3.3Motion Synchronization 6060h Velocity window 13 Profiled Velocity13.1General Information 6069h Velocity sensor actual valueControlword of the profiled velocity mode 6069h 13.2ObjectsObject 0x6069 Velocity sensor actual value IndexIndex ValueDescription Object 0x606B Velocity demand valueObject 0x606D Velocity window Object 0x606C Velocity actual valueIndex 606ChObject 0x606F Velocity threshold Object 0x606E Velocity window timeIndex 606EhObject 0x60FF Target velocity Object 0x6070 Velocity threshold timeIndex 6070h14.1General Information 14 Profiled Torque ModeName 14.1.1Internal statesControlword of profile torque mode FunctionTarget torque reached 14.2Objects dictionary entries14.2.1Objects defined in other chapters 14.2.2Objects descriptionObject 0x6073 Max Current Object 0x6072 Max torqueIndex 6072hIndex Object 0x6074 Torque Demand value6074h Object 0x6076 Motor Rate Torque Object 0x6075 Motor Rate CurrentIndex 6075hObject 0x6078 Current Actual value Object 0x6077 Torque Actual valueIndex 6077hObject 0x6088 Torque profile type Object 0x6087 Torque slopeIndex 6087hUnit Appendix A Dimension Index TablePhysical Dimension Dimension IndexFactor Appendix B Notation Index TableSymbol Prefix