DRIVES WITH / FOR STEPPER MOTOR PANDRIVES AND MODULES CANopen Firmware Version V3.18 CANopen MANUAL TMCM-142-IF 1-Axis Controller/Driver Module CAN Interface +18V… 78V DC / 5A RMS Encoder Feedback PD-146-60-SE Mechatronic Device Controller/Driver 2-Phase NEMA24 Stepper Motor Up to 3.1Nm Holding Torque CAN Interface 24V DC / 2.8A RMS Integrated Encoder TRINAMIC Motion Control GmbH & Co. KG Hamburg, Germany www.trinamic.com TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) Table of Contents 1 Preface ............................................................................................................................................................................. 5 1.1 General Features of the CANopen Implementation .................................................................................. 5 1.2 Abbreviations ........................................................................................................................................................ 6 1.3 Firmware Update ................................................................................................................................................. 6 2 Communication ............................................................................................................................................................. 7 2.1 Reference Model ................................................................................................................................................... 7 2.2 NMT State Machine .............................................................................................................................................. 8 2.3 Device Model ....................................................................................................................................................... 10 2.4 Object Dictionary ............................................................................................................................................... 11 3 Communication Objects ........................................................................................................................................... 12 3.1 Detailed Object Specifications ....................................................................................................................... 12 3.1.1 Object 1000h: Device Type ......................................................................................................................... 12 3.1.2 Object 1001h: Error Register ...................................................................................................................... 12 3.1.3 Object 1005h: COB-ID SYNC Message ..................................................................................................... 13 3.1.4 Object 1008h: Manufacturer Device Name............................................................................................. 13 3.1.5 Object 1009h: Manufacturer Hardware Version ................................................................................... 13 3.1.6 Object 100Ah: Manufacturer Software Version .................................................................................... 13 3.1.7 Object 100Ch: Guard Time ......................................................................................................................... 14 3.1.8 Object 100Dh: Life Time Factor ................................................................................................................ 14 3.1.9 Object 1010h: Store Parameters ............................................................................................................... 14 3.1.10 Object 1011h: Restore Default Parameters ............................................................................................ 15 3.1.11 Object 1014h: COB-ID Emergency Object .............................................................................................. 17 3.1.12 Object 1015h: Inhibit Time EMCY............................................................................................................. 17 3.1.13 Object 1016h: Consumer Heartbeat Time .............................................................................................. 17 3.1.14 Object 1017h: Producer Heartbeat Time ................................................................................................ 17 3.1.15 Object 1018h: Identity Object ................................................................................................................... 18 3.1.16 Object 1023h: OS Command ...................................................................................................................... 18 3.1.17 Object 1029h: Error Behavior .................................................................................................................... 18 3.1.18 Objects 1400h-1403h: Receive PDO Communication Parameter ...................................................... 19 3.1.19 Objects 1600h-1603h: Receive PDO Mapping......................................................................................... 19 3.1.20 Objects 1800h-1803h: Transmit PDO Communication Parameter .................................................... 20 3.1.21 Objects 1A00h-1A03h: Transmit PDO Mapping Parameter ................................................................. 21 4 Device Profile Objects (CiA402) and Modes of Operation .............................................................................. 22 4.1 Detailed Object Specifications ....................................................................................................................... 22 4.1.1 Object 605Ah: Quick Stop Option Code ................................................................................................. 22 4.1.2 Object 605Bh: Shutdown Option Code .................................................................................................. 23 4.1.3 Object 605Ch: Disable Operation Option Code .................................................................................... 23 4.1.4 Object 605Dh: Halt Option Code .............................................................................................................. 23 4.1.5 Object 605Eh: Fault Reaction Option Code ........................................................................................... 24 4.1.6 Object 6060h: Modes of Operation .......................................................................................................... 24 4.1.7 Object 6061h: Modes of Operation Display .......................................................................................... 24 4.1.8 Object 606Ah: Sensor Selection Code .................................................................................................... 25 4.1.9 Object 608Fh: Position Encoder Resolution .......................................................................................... 25 4.1.10 Object 60FDh: Digital Inputs ..................................................................................................................... 25 4.1.11 Object 6502h: Supported Drive Modes ................................................................................................... 26 4.2 Profile Position Mode ....................................................................................................................................... 27 4.2.1 Detailed Object Specifications ................................................................................................................. 27 4.2.1.1 Object 6040h: Controlword .............................................................................................................. 28 4.2.1.2 Object 6041h: Statusword ................................................................................................................ 29 4.2.1.3 Object 6062h: Position Demand Value ......................................................................................... 30 4.2.1.4 Object 6063h: Position Actual Internal Value ............................................................................ 30 4.2.1.5 Object 6064h: Position Actual Value ............................................................................................. 30 4.2.1.6 Object 6065h: Following Error Window ...................................................................................... 31 4.2.1.7 Object 6067h: Position Window .................................................................................................... 31 4.2.1.8 Object 6068h: Position Window Time .......................................................................................... 31 4.2.1.9 Object 60A4h: Profile Jerk ................................................................................................................ 32 www.trinamic.com 2 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.2.1.10 Object 606Ch: Velocity Actual Value ............................................................................................. 32 4.2.1.11 Object 607Ah: Target Position ........................................................................................................ 32 4.2.1.12 Object 607Dh: Software Position Limit ........................................................................................ 33 4.2.1.13 Object 6081h: Profile Velocity ......................................................................................................... 33 4.2.1.14 Object 6083h: Profile Acceleration ................................................................................................. 33 4.2.1.15 Object 6084h: Profile Deceleration ................................................................................................ 34 4.2.1.16 Object 6085h: Quick Stop Deceleration ........................................................................................ 34 4.2.1.17 Object 6086h: Motion Profile Type ................................................................................................ 34 4.2.2 How to Move a Motor in pp Mode ........................................................................................................ 35 4.3 Homing Mode ..................................................................................................................................................... 36 4.3.1 Connecting Home Switch, Left Switch, and Right Switch ............................................................... 37 4.3.1.1 TMCM-142-IF ........................................................................................................................................ 37 4.3.1.2 PDx-146-60-SE ...................................................................................................................................... 38 4.3.2 Homing Methods ......................................................................................................................................... 39 4.3.3 Detailed Object Definitions ....................................................................................................................... 42 4.3.3.1 Object 6040h: Controlword .............................................................................................................. 42 4.3.4 Object 6041h: Statusword .......................................................................................................................... 43 4.3.4.1 Object 606Ch: Velocity Actual Value ............................................................................................. 43 4.3.4.2 Object 607Ch: Home Offset .............................................................................................................. 44 4.3.4.3 Object 6098h: Homing Method ....................................................................................................... 44 4.3.4.4 Object 6099h: Homing Speeds ....................................................................................................... 45 4.3.4.5 Object 609Ah: Homing Acceleration ............................................................................................. 45 4.3.4.6 Object 2100h: Home Offset Display .............................................................................................. 45 4.3.5 How to Start a Homing in hm Mode .................................................................................................... 46 4.4 Profile Velocity Mode ........................................................................................................................................ 47 4.4.1 Detailed Object Definitions ....................................................................................................................... 47 4.4.1.1 Object 6040h: Controlword .............................................................................................................. 47 4.4.1.2 Object 6041h: Statusword ................................................................................................................ 48 4.4.1.3 Object 6062h: Position Demand Value ......................................................................................... 48 4.4.1.4 Object 6063h: Position Actual Internal Value ............................................................................ 48 4.4.1.5 Object 6064h: Position Actual Value ............................................................................................. 49 4.4.1.6 Object 6065h: Following Error Window ...................................................................................... 49 4.4.1.7 Object 606Ch: Velocity Actual Value ............................................................................................. 49 4.4.1.8 Object 607Dh: Software Position Limit ........................................................................................ 50 4.4.1.9 Object 6083h: Profile Acceleration ................................................................................................. 50 4.4.1.10 Object 6084h: Profile Deceleration ................................................................................................ 50 4.4.1.11 Object 6085h: Quick Stop Deceleration ........................................................................................ 51 4.4.1.12 Object 60FFh: Target Velocity ......................................................................................................... 51 4.4.2 How to Move a Motor in pv Mode ......................................................................................................... 51 5 Manufacturer Specific Area ...................................................................................................................................... 52 5.1 Detailed Object Specifications ....................................................................................................................... 52 5.1.1 Object 2000h: Microstep Resolution ........................................................................................................ 52 5.1.2 Object 2001h: Fullstep Resolution ........................................................................................................... 52 5.1.3 Object 2002h: Brake Delay Times............................................................................................................. 53 5.1.4 Object 2003h: Maximum Current .............................................................................................................. 53 5.1.5 Object 2004h: Standby Current ................................................................................................................. 53 5.1.6 Object 2005h: Limit Switches .................................................................................................................... 54 5.1.7 Object 200Ah: Enable Drive Delay Time ................................................................................................ 54 5.1.8 Object 200Bh: Encoder Parameters ......................................................................................................... 55 5.1.9 Object 200Ch: Brake Current Feed ........................................................................................................... 55 5.1.10 Object 2089h: Standby Delay .................................................................................................................... 55 5.1.11 Object 208Ah: Mixed Decay Run ............................................................................................................... 56 5.1.12 Object 208Bh: Mixed Decay Standby ....................................................................................................... 56 5.1.13 Object 208Ch: Velocity Dimension Index .............................................................................................. 56 5.1.14 Object 208Eh: Acceleration Dimension Index ...................................................................................... 56 5.1.15 Object 2100h: Home Offset Display......................................................................................................... 57 5.1.16 Object 2102h: Driver Error Flags .............................................................................................................. 57 5.1.17 Object 2107h: Microstep Resolution Display ........................................................................................ 57 www.trinamic.com 3 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 6 7 8 9 5.1.18 Object 2108h: Absolute Resolver Value ................................................................................................. 57 5.1.19 Object 2700h: TMCL Direct Communication .......................................................................................... 58 5.1.20 Object 2701h: Manufacturer Specific Mode ........................................................................................... 58 5.1.21 Object 2702h: Digital inputs ...................................................................................................................... 58 5.1.22 Object 2703h: Digital Outputs ................................................................................................................... 59 5.1.23 Object 2704h: CAN Bit Rate ....................................................................................................................... 59 5.1.24 Object 2705h: Node ID ................................................................................................................................ 59 5.1.25 Object 2706h: Store ...................................................................................................................................... 60 5.1.26 Object 2707h: CAN Bit Rate Load ............................................................................................................. 60 5.1.27 Object 2708h: Node ID load ...................................................................................................................... 60 5.1.28 Object 270Eh: Device Analog Inputs....................................................................................................... 61 Emergency messages ................................................................................................................................................ 62 Life Support Policy ..................................................................................................................................................... 64 Revision History .......................................................................................................................................................... 65 8.1 Firmware Revision ............................................................................................................................................. 65 8.2 Document Revision ........................................................................................................................................... 66 References..................................................................................................................................................................... 67 Table of Figures Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 2.1 Overview CANopen NMT state machine ..................................................................................................... 8 2.2 Communication architecture .......................................................................................................................... 9 2.3 Device model ................................................................................................................................................... 10 3.1 Restore procedure........................................................................................................................................... 16 4.1 Finite state machine ...................................................................................................................................... 27 4.2 Homing mode function ................................................................................................................................. 36 4.3 Connectors of TMCM-142-IF.......................................................................................................................... 37 4.4 Connectors of PDx-146-60-SE ....................................................................................................................... 38 4.5 Homing on negative switch and index pulse ........................................................................................ 39 4.6 Homing on positive limit switch and index pulse ............................................................................... 39 4.7 Homing on positive home switch and index pulse ............................................................................. 40 4.8 Homing on negative home switch and index pulse ............................................................................ 40 4.9 Homing without index pulse ...................................................................................................................... 41 4.10 Homing on index pulse .............................................................................................................................. 41 4.11 Home offset definition ................................................................................................................................ 44 5.1 Brake output timing ....................................................................................................................................... 53 www.trinamic.com 4 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 1 Preface This document specifies objects and modes of operation of the TRINAMIC TMCM-142-IF and PD-146-60SE with CANopen firmware. As the TMCM-142-IF and the TMCM-146 are stepper motor controller and driver modules the use of the CiA DS402 protocol (described in the CiA CANopen drives and motion control device profile, Part 2) is fundamental. The CANopen firmware is designed to fulfill the DS301 version 4.02 and DS402 version 3.o standards. The CiA conformance has also been tested. This manual assumes that the reader is already familiar with the basics of the CANopen protocol (especially DS301 and DS402). On the following pages you will find a short introduction or rather a short overview and afterwards the information will be more in detail. If necessary, you can always turn the board back into a TMCL module by loading the TMCL firmware into the drive again. 1.1 General Features of the CANopen Implementation MAIN CHARACTERISTICS Communication according to standard CiA-301 V4.1 CAN bit rate: 20… 1000kBit/s CAN ID: 11 bit Node ID: 1… 127 (use vendor specific objects for changing the node ID) NMT services: NMT slave SDO communication 1 server Expedited transfer Segmented transfer No block transfer PDO communication Producer Consumer RPDOs 1, 2, 3, 4, 6 Transmission modes: asynchronous Dynamic mapping with max. 3 mapping entries Default mappings: according to CiA-402 for PDO 1, 2, 3 and 6, manufacturer specific for PDO4 - TPDOs 1, 2, 3, 4, 6 Transmission modes: asynchronous, asynchronous with event timer, synchronous Dynamic mapping with max. 3 mapping entries Default mappings: according to CiA-402 for PDO 1, 2, 3 and 6, manufacturer specific for PDO Further Characteristics SYNC: consumer (TPDO3 and TPDO6 are synchronous PDOs) Emergency: producer RTR: supported only for node guarding/life guarding Heartbeat: consumer and producer www.trinamic.com 5 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 1.2 Abbreviations ABBREVIATIONS CAN CHGND COB FSA FSM NMT ID LSB MSB PDO PDS RPDO SDO TPDO EMCY rw ro hm pp pv vm Controller area network chassis ground / earth ground Communication object Finite state automaton Finite state machine Network management Identifier Least significant bit Most significant bit Process data object Power drive system Receive process data object Service data object Transmit process data object Emergency object Read and write Read only Homing mode Profile position mode Profile velocity mode Velocity mode Table 1.1 Abbreviations 1.3 Firmware Update The software running on the microprocessor consists of two parts, a boot loader and the CANopen firmware itself. Whereas the boot loader is installed during production and testing at TRINAMIC and remains untouched throughout the whole lifetime, the CANopen firmware can easily be updated by the user. The new firmware can be loaded into the module via the firmware update function of the TMCL-IDE. www.trinamic.com 6 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 2 Communication 2.1 Reference Model The application layer comprises a concept to configure and communicate real-time-data as well as the mechanisms for synchronization between devices. The functionality which the application layer offers to an application is logically divided over different service data objects (SDO) in the application layer. A service object offers a specific functionality and all the related services. Applications interact by invoking services of a service object in the application layer. To realize these services this object exchanges data via the CAN Network with peer service object(s) using a protocol. The application and the application layer interact with service primitives. SERVICE PRIMITIVES Request Indication Response Confirmation Issued by the application to the application layer to request a service. Issued by the application layer to the application to report an internal event detected by the application layer or indicate that a service is requested. Issued by the application to the application layer to respond to a previous received indication. Issued by the application layer to the application to report the result of a previously issued request. Table 2.1 Service primitives A service type defines the primitives that are exchanged between the application layer and the cooperating applications for a particular service of a service object. Unconfirmed and confirmed services are collectively called remote services. SERVICE TYPES Local service Unconfirmed service Confirmed service Provider initiated service Involves only the local service object. The application issues a request to its local service object that executes the requested service without communicating with peer service object(s). Involves one or more peer service objects. The application issues a request to its local service object. This request is transferred to the peer service object(s) that each passes it to their application as an indication. The result is not confirmed back. Can involve only one peer service object. The application issues a request to its local service object. This request is transferred to the peer service object that passes it to the other application as an indication. The other application issues a response that is transferred to the originating service object that passes it as a confirmation to the requesting application. Involves only the local service object. The service object (being the service provider) detects an event not solicited by a requested service. This event is then indicated to the application. Table 2.2 Service types www.trinamic.com 7 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 2.2 NMT State Machine The finite state machine (FSM) or simply state machine is a model of behavior composed of a finite number of states, transitions between those states, and actions. It shows which way the logic runs when certain conditions are met. Starting and resetting the device is controlled via the state machine. The NMT state machine consists of the following states: Initialization ID / Boot-up Pre-operational Stopped Operational Figure 2.1 Overview CANopen NMT state machine After power-on or reset the device enters the Initialization state. After the device initialization is finished, the device automatically transits to the Pre-operational State and indicates this state transition by sending the boot-up message. This way the device indicates that it is ready to work. A device that stays in Pre-operational state may start to transmit SYNC-, time stamp- or heartbeat message. In contrast to the PDO communication that is disabled in this state, the device can communicate via SDO. The PDO communication is only possible within the Operational State. During Operational state the device can use all supported communication objects. A device that was switched to the Stopped State only reacts on received NMT commands. In addition the device indicates the current NMT state by supporting the error control protocol during Stopped state. The transitions between states are made by issuing a network management (NMT) communication object to the device. The NMT protocols are used to generate state machine change commands (e.g. to start and stop the device), detect remote device boot-ups and error conditions. The Heartbeat message of a CANopen device contains the device status of the NMT state machine and is sent cyclically by the CANopen device. www.trinamic.com 8 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) The figure below shows the situation of the state machine in this device profile. CANopen device profile CiA DSP 402 Modes of operation: [used in this manual / according to CiA DSP 402] Homing mode Profile position mode Profile velocity mode Device control state machine CANopen Communication Profile CiA DS301 CAN Figure 2.2 Communication architecture www.trinamic.com 9 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 10 2.3 Device Model A device is structured like the following: Communication This function unit provides the communication objects and the appropriate functionality to transport data items via the underlying network structure. Object dictionary The object dictionary is a collection of all the data items which have an influence on the behavior of the application objects, the communication objects and the state machine used on this device Application The application comprises the functionality of the device with respect to the interaction with the process environment Communication Object dictionary State machine Communication object Application Application object Entry 1 Entry 2 Communication object Application object Communication object Application object Entry n Communication object Bus system Figure 2.3 Device model www.trinamic.com Application object Process TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 2.4 Object Dictionary The most important part of a device profile is the Object Dictionary description. The Object Dictionary is essentially a grouping of objects accessible via the network in an ordered pre-defined fashion. Each object within the dictionary is addressed using a 16-bit index. The overall layout of the standard Object Dictionary is shown below: Index (hex) 0000 0001 - 001F 0020 - 003F 0040 - 005F 0060 - 007F 0080 - 009F 00A0 - 0FFF 1000 - 1FFF 2000 - 5FFF 6000 - 9FFF A000 - BFFF C000 - FFFF Object Not used Static data types Complex data types Manufacturer specific complex data types Device profile specific static data types Device profile specific complex data types Reserved for further use Communication profile area*1 Manufacturer specific profile area*2 Standardized device profile area*3 Standardized interface profile area Reserved for further use Table 2.3 Object Dictionary *1 The communication profile area at indices 1000h through 1FFFh contains the communication specific parameters for the CAN network. These entries are common to all devices. *2 The manufacturer segment at indices 2000h through 5FFFh contains manufacturer specific objects. These objects control the special features of the TRINAMIC motion control devices TMCM-142 and PD-146. *3 The standardized device profile area at indices 6000h through 9FFFh contains all data objects common to a class of devices that can be read or written via the network. The device profiles use entries from 6000h to 9FFFh to describe the device parameters and the device functionality. www.trinamic.com 11 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 12 3 Communication Objects 3.1 Detailed Object Specifications 3.1.1 Object 1000h: Device Type This object contains information about the device type. The object 1000 h describes the type of device and its functionality. It is composed of a 16-bit field which describes the device profile that is used and a second 16-bit field which gives additional information about optional functionality of the device. OBJECT DESCRIPTION Index Name Device type 1000h Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access r0 00h 3.1.2 PDO Mapping no Value Range UNSIGNED32 Default Value 40192h Object 1001h: Error Register This object is an error register. The module can map internal errors and object 1001 h is part of an emergency object. OBJECT DESCRIPTION Index Name Error register 1001h Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access r0 PDO Mapping yes STRUCTURE OF THE ERROR REGISTER Bit 0 1 2 3 4 5 6 7 M/O M O O O O O O O Description Generic error Current Voltage Temperature Communication error Device profile specific Reserved (always 0) Manufacturer specific If a bit is set to 1, the specific error has occurred. www.trinamic.com Value Range UNSIGNED8 Default Value no TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 3.1.3 13 Object 1005h: COB-ID SYNC Message This object defines the COB-ID of the synchronization Object (SYNC). Further, it defines whether the module generates the SYNC. OBJECT DESCRIPTION Index 1005h Name COB-ID SYNC Message Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h 3.1.4 PDO Mapping no Value Range UNSIGNED32 Default Value 80h Object 1008h: Manufacturer Device Name This object contains the manufacturer device name. OBJECT DESCRIPTION Index 1008h Name Manufacturer device name Object Code Variable Data Type Visible string ENTRY DESCRIPTION Sub-Index Access Const. 00h 3.1.5 PDO Mapping no Value Range no Default Value TMCM-142 or PD-146 Object 1009h: Manufacturer Hardware Version This object contains the hardware version description. OBJECT DESCRIPTION Index 1009h Name Manufacturer hardware version Object Code Variable Data Type Visible string ENTRY DESCRIPTION Sub-Index Access Const. 00h 3.1.6 PDO Mapping no Value Range no Default Value depends on device, e.g. 1.0 Object 100Ah: Manufacturer Software Version This object contains the software version description. OBJECT DESCRIPTION Index 100Ah Name Manufacturer software version Object Code Variable Data Type visible string ENTRY DESCRIPTION Sub-Index 00h Access Const. www.trinamic.com PDO Mapping no Value Range no Default Value according to software version TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 3.1.7 14 Object 100Ch: Guard Time The objects at index 100Ch and 100Dh shall indicate the configured guard time respectively the life time factor. The life time factor multiplied with the guard time gives the life time for the life guarding protocol. OBJECT DESCRIPTION Index Name Guard time 100Ch Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h 3.1.8 Access rw ro, if life guarding is not supported PDO Mapping Value Range Default Value no UNSIGNED16 0000h Object 100Dh: Life Time Factor The life time factor multiplied with the guard time gives the life time for the life guarding protocol. OBJECT DESCRIPTION Index Name Life time factor 100Dh Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h 3.1.9 Access rw ro, if life guarding is not supported PDO Mapping Value Range Default Value no UNSIGNED8 00h Object 1010h: Store Parameters This object supports the saving of parameters in non volatile memory. By read access the device provides information about its saving capabilities. This command can only be carried out if the module is in ready to switch on mode. SEVERAL PARAMETER GROUPS ARE DISTINGUISHED: - Sub-index Sub-index Sub-index Sub-index Sub-index 0h: contains the largest sub-index that is supported. 1h: saves all parameters. 2h: saves communication parameters 100Ch, 100Dh, 1015h, 1017h, and 1029h. 4h: saves motor axis 1 parameters (6040h… 6084h) 7h: saves device parameters / TRINAMIC specific parameters (2000 h… 270Eh). In order to avoid storage of parameters by mistake, storage is only executed when a specific signature is written to the appropriate Sub-Index. This signature is safe. Storage write access structure Signature ISO 8859 ASCII hex MSB e 65h v 76h a 61h LSB s 73h On reception of the correct signature in the appropriate sub-index the device stores the parameter and then confirms the SDO transmission (initiate download response). If the storing failed, the device responds with an Abort SDO transfer (abort code: 0606 0000 h). If a wrong signature is written, the device refuses to store and responds with Abort SDO transfer (abort code: 0800 002xh). www.trinamic.com TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 15 On read access to the appropriate sub-index the device provides information about its storage functionality with the following format. Storage read access structure bits UNSIGNED 32 MSB 31-2 Reserved Bit-number 31-2 1 0 Value 0 0 1 0 1 LSB 0 1/0 1 1/0 Meaning reserved Device does not save parameters autonomously Device saves parameters autonomously Device does not save parameters on command Device saves parameters on command Autonomous saving means that a device stores the storable parameters in a non-volatile manner without user request. OBJECT DESCRIPTION Index Name Store parameters 1010h Object Code ARRAY Data Type UNSIGNED 32 ENTRY DESCRIPTION Sub-Index 00h 01h 02h 04h 07h Description Largest sub-index supported Save all parameters Save special communication parameters Save motor axis 1 parameters Save device parameters (TRINAMIC specific parameters) Access ro PDO Mapping no Value Range 1h-7Fh Default Value no rw no UNSIGNED32 no rw no UNSIGNED32 no rw no UNSIGNED32 no rw no UNSIGNED32 no Please mind the figures above which explain the value ranges of the write access and the read access for the sub-indices. 3.1.10 Object 1011h: Restore Default Parameters With this object the default values of parameters according to the communication or device profile are restored. By read access the device provides information about its capabilities to restore these values. This command can only be carried out if the module is in ready to switch on mode. SEVERAL PARAMETER GROUPS ARE DISTINGUISHED: - Sub-index Sub-index Sub-index Sub-index Sub-index 0h: contains the largest sub-index that is supported. 1h: restores all parameters. 2h: restores communication parameters 100Ch, 100Dh, 1015h, 1017h, and 1029h. 4h: restores motor axis 1 parameters (6040h… 6084h) 7h: restores device parameters / TRINAMIC specific parameters (2000 h… 270Eh). In order to avoid the restoring of default parameters by mistake, restoring is only executed when a specific signature is written to the appropriate sub-index. This signature is load. Signature ASCII hex www.trinamic.com MSB d 64h a 61h o 6Fh LSB l 6Ch TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 16 On reception of the correct signature in the appropriate sub-index the device restores the default parameters and then confirms the SDO transmission (initiate download response). If the restoring failed, the device responds with an Abort SDO Transfer (abort code: 0606 0000 h). If a wrong signature is written, the device refuses to restore the defaults and responds with an Abort SDO Transfer (abort code: 0800 002xh). The default values are set valid after the device is reset (reset node for sub-index 1h – 7Fh, reset communication for sub-index 2h) or power cycled. restore default reset / power cycle default values valid Figure 3.1 Restore procedure On read access to the appropriate sub-index the device provides information about its default parameter restoring capability with the following format. Structure of restore read access UNSIGNED 32 MSB bits 31-1 Reserved (0) LSB 0 0/1 OBJECT DESCRIPTION Index 1011h Name Restore default parameters Object Code ARRAY Data Type UNSIGNED 32 ENTRY DESCRIPTION Sub-Index 00h 01h 02h 04h 07h Description Largest sub-index supported Restore all default parameters Restore special communication parameters Restore motor axis 1 parameters Restore device parameters (TRINAMIC specific parameters) Access ro PDO Mapping no Value Range 1h-7Fh Default Value no rw no UNSIGNED32 no rw no UNSIGNED32 no rw no UNSIGNED32 no rw no UNSIGNED32 no Please mind the figures above which explain the value ranges of the write access and the read access for the sub-indices. www.trinamic.com TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 17 3.1.11 Object 1014h: COB-ID Emergency Object This object defines the COB-ID of the emergency object (EMCY). OBJECT DESCRIPTION Index 1014h Name COB-ID emergency object Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range UNSIGNED32 Default Value 80h + NODE ID 3.1.12 Object 1015h: Inhibit Time EMCY The inhibit time for the EMCY message can be adjusted via this entry. The time has to be a multiple of 100µs. OBJECT DESCRIPTION Index 1015h Name Inhibit time EMCY Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range UNSIGNED16 Default Value 0 3.1.13 Object 1016h: Consumer Heartbeat Time The consumer heartbeat time defines the expected heartbeat cycle time and thus has to be higher than the corresponding producer heartbeat time configured on the module producing this heartbeat. The monitoring starts after the reception of the first heartbeat. If the consumer heartbeat time is 0 the corresponding entry is not used. The time has to be a multiple of 1ms. MSB bits value encoded as 31-24 Reserved - LSB 15-0 Heartbeat time UNSIGNED16 23-16 Node-ID UNSIGNED8 Table 3.1 Structure of consumer heartbeat time entry OBJECT DESCRIPTION Index 1016h Name Consumer heartbeat time Object Code ARRAY Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Description Number of entries 01h Consumer heartbeat time Access ro PDO Mapping no Value Range 0… 127 Default Value no rw no UNSIGNED32 no 3.1.14 Object 1017h: Producer Heartbeat Time The producer heartbeat time defines the cycle time of the heartbeat. The producer heartbeat time is 0 if it is not used. The time has to be a multiple of 1ms. OBJECT DESCRIPTION Index 1017h Name Producer heartbeat time Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping no Value Range UNSIGNED16 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 18 3.1.15 Object 1018h: Identity Object The object 1018h contains general information about the device. The Vendor ID (sub-index 01h) contains a unique value allocated to each manufacturer. The vendor ID of TRINAMIC is 286h. The manufacturer-specific Product code (sub-index 2h) identifies a specific device version. The Manufacturer-specific Revision number (sub-index 3h) consists of a major revision number and a minor revision number. OBJECT DESCRIPTION Index Name Identity object 1018h Object Code RECORD Data Type Identity Category Optional ENTRY DESCRIPTION Sub-Index 00h Description Number of entries Access ro PDO Mapping no Value Range 0… 3 Default Value number of entries:3 01h Vendor ID ro no UNSIGNED32 reads 0x0286 02h Product code ro no UNSIGNED32 03h Revision number ro no UNSIGNED32 depends on the device e.g. 142 or 146 firmware revision number; reads e.g. 0x20003 for version 2.3 3.1.16 Object 1023h: OS Command The OS Command object is used as a command driven interface to programmable devices. The host system puts the command into the object OS Command, which is of the type Command Par. OBJECT DESCRIPTION Index Name OS command 1023h Object Code RECORD Data Type Command Par Category Optional ENTRY DESCRIPTION Sub-Index 00h 01h 02h 03h Description Number of supported entries Command (TMCL command) Status (error code of a TMCL command) Reply (reply of a TMCL command) Access PDO Mapping Value Range Default Value number of entries: 3 (for direct TMCL™ communication) ro no 3 rw no Octet string no ro no UNSIGNED8 no ro no Octet string no 3.1.17 Object 1029h: Error Behavior If a device failure is detected in operational state, the device can be configured to enter alternatively the stopped state or remain in the current state in case of a device failure. Device failures include the following errors: - Communication error Application error OBJECT DESCRIPTION Index Name Error behavior 1029h Object Code ARRAY Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Description Number of error classes Access ro PDO Mapping no Value Range 01h Communication error rw no UNSIGNED8 0 (enter stopped state) Application error rw no UNSIGNED8 1 (remain in current state) 02h www.trinamic.com 2h Default Value 2 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 19 3.1.18 Objects 1400h-1403h: Receive PDO Communication Parameter This object contains the communication parameters for the PDOs the device is able to receive. The sub-index 0h contains the number of valid entries within the communication record. Its value is at least 2. OBJECT DESCRIPTION 1400h-1403h Index Name Receive PDO parameter Object Code RECORD Data Type PDO CommPar 1400h RPDO 1 RECORD PDO CommPar 1401h RPDO 2 RECORD PDO CommPar 1402h RPDO 3 RECORD PDO CommPar 1403h RPDO 4 RECORD PDO CommPar ENTRY DESCRIPTION Sub-Index 00h Description Largest sub-index supported Access PDO Mapping ro no Value Range Number of entries: 2 01h COB-ID used by PDO rw no UNSIGNED32 02h Transmission type rw no UNSIGNED8 Default Value 2 Index Index Index Index Index Index Index Index 1400h: 1401h: 1402h: 1403h: 1400h: 1401h: 1402h: 1403h: 200h 300h 400h 500h Ffh Ffh Ffh Ffh + + + + Node-ID Node-ID Node-ID Node-ID 3.1.19 Objects 1600h-1603h: Receive PDO Mapping This object contains the mapping for the PDOs the device is able to receive. The sub-index 0h contains the number of valid entries within the mapping record. This number of entries is also the number of the application variables which shall be transmitted/received with the corresponding PDO. The subindices from 1h to the number of entries contain the information about the mapped application variables. These entries describe the PDO contents by their index, sub-index and length. All three values are hexadecimal coded. OBJECT DESCRIPTION 1600h-1603h Index Name Receive PDO mapping Object Code RECORD Data Type PDO Mapping 1600h Mapping for RPDO 1 RECORD PDO Mapping 1601h Mapping for RPDO 2 RECORD PDO Mapping 1602h Mapping for RPDO 3 RECORD PDO Mapping 1603h Mapping for RPDO 4 RECORD PDO Mapping ENTRY DESCRIPTION Sub-Index Description Access PDO Mapping Value Range 00h Number of mapped application objects in PDO rw no 1… 3 0 deactivated 01h Mapping entry 1 rw no UNSIGNED32 02h Mapping entry 2 rw no UNSIGNED32 03h Mapping entry 3 rw no UNSIGNED32 www.trinamic.com Index Index Index Index Index Index Index Index Index Index Index Index Index Index Index Index 1600h: 1601h: 1602h: 1603h: 1600h: 1601h: 1602h: 1603h: 1600h: 1601h: 1602h: 1603h: 1600h: 1601h: 1602h: 1603h: Default Value 1 2 2 2 60400010h 60400010h 60400010h 60400010h 0 60600008h 607A0020h 60FF0020h 0 0 0 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 20 3.1.20 Objects 1800h-1803h: Transmit PDO Communication Parameter These objects contain the communication parameters for the PDOs the device is able to transmit. OBJECT DESCRIPTION Index 1800h-1803h 1800h 1801h 1802h 1803h Name Transmit PDO communication parameter Object Code Data Type RECORD PDO CommPar RECORD PDO CommPar RECORD PDO CommPar RECORD PDO CommPar RECORD PDO CommPar TPDO 1 transmit communication parameter TPDO 2 transmit0 communication parameter TPDO 3 transmit communication parameter TPDO 4 transmit communication parameter ENTRY DESCRIPTION Sub-Index Description Access PDO Mapping 00h Largest sub-index supported ro no 01h TPDO 1-4, 6: COB-ID rw no UNSIGNED32 02h Transmission type rw no UNSIGNED8 03h Inhibit time rw no UNSIGNED16 04h Compatibility entry ro no 05h Event timer rw no UNSIGNED8 0 not used UNSIGNED16 www.trinamic.com Value Range 2… 5 Number of entries: 5 Default Value 5 Index Index Index Index Index Index Index Index 1800h: 1801h: 1802h: 1803h: 1800h: 1801h: 1802h: 1803h: 180h 280h 380h 480h ffh ffh 1 1 0 0 0 + + + + Node-ID Node-ID Node-ID Node-ID TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 21 3.1.21 Objects 1A00h-1A03h: Transmit PDO Mapping Parameter These objects contain the mapping for the PDOs the device is able to transmit. OBJECT DESCRIPTION Index 1A00h-1A03h 1A00h 1A01h 1A02h 1A03h Name Transmit PDO mapping parameter TPDO 1: transmit PDO mapping parameter TPDO 2: transmit PDO mapping parameter TPDO 3: transmit PDO mapping parameter TPDO 4: transmit PDO mapping parameter Object Code Data Type RECORD PDO mapping PDO mapping RECORD PDO mapping RECORD PDO mapping RECORD PDO mapping RECORD ENTRY DESCRIPTION Sub-Index Description Access PDO Mapping 00h Number of mapped application objects in PDO rw no Value Range 0 deactivated Number of entries: 1… 3 no 01h 02h 03h Mapping entry 1 Mapping entry 2 Mapping entry 3 www.trinamic.com rw UNSIGNED32 no UNSIGNED32 no UNSIGNED32 rw rw Default Value Index 1A00h: 1 Index 1A01h: 2 Index 1A02h: 2 Index 1A03h: 2 Index 1A00h: 60410010h Index 1A01h: 60410010h Index 1A02h: 60410010h Index 1A03h: 60410010h Index 1A00h: 0 Index 1A01h: 60610008h Index 1A02h: 60640020h Index 1A03h: 606c0020h Index 1A00h: 0 Index 1A01h: 0 Index 1A02h: 0 Index 1A03h: 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 22 4 Device Profile Objects (CiA402) and Modes of Operation The PDS behavior depends on the activated mode of operation. The PDS implements several modes of operation. Since it is not possible to operate the modes in parallel, the user is able to activate the required function by selecting a mode of operation. The control device writes to the modes of operation object in order to select the operation mode. The drive device provides the modes of operation display object to indicate the actual activated operation mode. Controlword, statusword, and set-points are used mode-specific. This implies the responsibility of the control device to avoid inconsistencies and erroneous behavior. THE FOLLOWING OPERATION MODES CAN BE CHOSEN: - Profile position mode Homing mode Profile velocity mode Please refer to object 6060h (section 4.1.6) for information about how to choose an operation mode. 4.1 Detailed Object Specifications 4.1.1 Object 605Ah: Quick Stop Option Code This object indicates what action is performed when the quick stop function is executed. The slow down ramp is the deceleration value of the used mode of operations. The following quick stop option codes are supported in the current version of the CANopen firmware: VALUE DEFINITION Value 1 2 5 6 Slow Slow Slow Slow down down down down on on on on Definition slow down ramp and transit into switch on disabled quick stop ramp and transit into switch on disabled slow down ramp and stay in quick stop active quick stop ramp and stay in quick stop active OBJECT DESCRIPTION Index 605Ah Name Quick stop option code Object Code Variable Data Type SIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 2 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.1.2 23 Object 605Bh: Shutdown Option Code This object indicates what action is performed if there is a transition from operation enabled state to ready to switch on state. The slow down ramp is the deceleration value of the used mode of operations. The shutdown option code always has the value 0 as only this is supported. VALUE DEFINITION Value 0 Definition Disable drive function (switch-off the drive power stage) OBJECT DESCRIPTION Index Name Shutdown option code 605Bh Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access r0 00h 4.1.3 PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 0 Object 605Ch: Disable Operation Option Code This object indicates what action is performed if there is a transition from operation enabled state to switched on state. The disable operation option code always has the value 1 as only this is supported. VALUE DEFINITION Value 1 Definition Slow down with slow down ramp; disable of the drive function OBJECT DESCRIPTION Index Name Disable operation option code 605Ch Object Code Data Type Variable UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access r0 00h 4.1.4 PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 1 Object 605Dh: Halt Option Code This object indicates what action is performed when the halt function is executed. The slow down ramp is the deceleration value of the used mode of operation. The halt option code always has the value 1 as only this is supported. VALUE DEFINITION Value 1 Definition Slow down on slow down ramp and stay in operation enabled OBJECT DESCRIPTION Index 605Dh Name Halt option code Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access r0 www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 1 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.1.5 24 Object 605Eh: Fault Reaction Option Code This object indicates what action is performed when fault is detected in the power drive system. The slow down ramp is the deceleration value of the used mode of operation. The fault reaction option code always has the value 2 as only this is supported. VALUE DEFINITION Value 2 Definition Slow down on quick stop ramp OBJECT DESCRIPTION Index Name Fault reaction option code 605Eh Object Code Data Type Variable UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access r0 00h 4.1.6 PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 2 Object 6060h: Modes of Operation This object indicates the requested operation mode. Supported operating modes are: VALUE DEFINITION Value 0 1 3 6 Definition No mode* Profile position mode Profile velocity mode Homing mode * The motor will not run when the operating mode is set to 0. It will be stopped when the motor is running in one of the supported operating modes and the operating mode is then switched to 0. OBJECT DESCRIPTION Index Name Modes of operation 6060h Object Code Variable Data Type SIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h 4.1.7 PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 0 Object 6061h: Modes of Operation Display This object shows the operating mode that is set. VALUE DEFINITION Value 0 1 3 6 Definition No mode* Profile position mode Profile velocity mode Homing mode * The motor will not run when the operating mode is set to 0. It will be stopped when the motor is running in one of the supported operating modes and the operating mode is then switched to 0. OBJECT DESCRIPTION Index 6061h Name Modes of operation display Object Code Data Type Variable SIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.1.8 25 Object 606Ah: Sensor Selection Code This object provides the source of the velocity sensor actual value. It selects whether an encoder is to be used or not. VALUE DEFINITION Value 0 -1 Definition Encoder used No encoder OBJECT DESCRIPTION Index Name Sensor selection code 606Ah Object Code Variable Data Type SIGNED16 ENTRY DESCRIPTION Sub-Index Access rw 00h 4.1.9 PDO Mapping Refer to CiA402-3 Value Range See value definition above Default Value -1 Object 608Fh: Position Encoder Resolution This object indicates the configured encoder increments and number of motor revolutions. The position encoder resolution is calculated by the following formula (all values are dimensionless.): OBJECT DESCRIPTION Index Name Position encoder resolution 608Fh Object Code Array Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h 01h 02h Description Highest sub index supported Encoder increments Motor revolutions Entry category Access PDO Mapping Value Range Default Value Mandatory c Refer to CiA402 02h 2 Mandatory rw Refer to CiA402 UNSIGNED32 1 Mandatory ro Refer to CiA402 UNSIGNED32 2 4.1.10 Object 60FDh: Digital Inputs This object contains the states of the digital inputs of the module. Starting from bit 0, every bit reflects the state of one digital input. The number of valid bits depends on the number of digital inputs on the module used. VALUE DEFINITION Value 0b Definition Switched off 1b Switched on OBJECT DESCRIPTION Index 60FDh Name Digital inputs Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access r0 www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value 0000 0000h TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 26 4.1.11 Object 6502h: Supported Drive Modes This object provides information on the supported drive modes and contains always the value 0x00000025 which means that the following modes are provided by the drive: - 0 1 3 6 = = = = no mode profile position mode profile velocity mode homing mode OBJECT DESCRIPTION Index 6502h Name Supported drive modes Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access r0 www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range See above Default Value 0x00000025 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.2 Profile Position Mode A target position is applied to the trajectory generator. It is generating a position-demand-value for the position control loop described in the position control function. Please refer to object 6060h (section 4.1.6) for information about how to choose an operation mode. Object 6061 h (section 4.1.7) shows the operation mode that is set. 4.2.1 Detailed Object Specifications The following text offers detailed object specifications. According to this it is necessary to show how the state machine works in detail: Controlword 6040h Power disabled Fault Start Fault reaction active automatically automatically 0 14 Not ready to switch on Fault 15 automatically 1 Switch on disabled 2 7 Ready to switch on 10 12 3 6 98 13 Switched on 4 5 Operation enable 11 13 16 Quick stop active 13 Power enabled Statusword 6041h Figure 4.1 Finite state machine NOTES ON STATE TRANSITIONS - Commands directing a change in state are processed completely and the new state achieved before additional state change commands are processed. Transitions 0 and 1 occur automatically at drive power-on or reset. Transition 14 occurs automatically, too. All other state changes must be directed by the host. Drive function disabled indicates that no current is being supplied to the motor. Drive function enabled indicates that current is available for the motor and profile position and profile velocity reference values may be processed. www.trinamic.com 27 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 28 4.2.1.1 Object 6040h: Controlword This object indicates the received command controlling the power drive system finite state automation (PDS FSA). The CiA-402 state machine can be controlled using this object. Please refer to Figure 4.1 Finite state machine for detailed information. STRUCTURE OF CONTROLWORD / VALUE DEFINITION 15 11 nu 10 9 8 7 r oms h fr 4 6 oms 3 2 1 0 eo qs ev so LSB MSB LEGEND: nu = not used; r = reserved; oms = operation mode specific; h = halt; fr = fault reset; eo = enable operation; qs = quick stop; ev = enable voltage; so = switch on OPERATION MODE SPECIFIC BITS IN PP MODE Bit Name 4 New set point 5 6 9 Change immediately Absolute/relative Change set point Definition 0-to-1: The next positioning will be started after the last one has completed. Not supported 0 = new position is absolute; 1 = new position is relative Not supported COMMAND CODING Command Bit 7 0 0 Shutdown Switch on Switch on + enable operation Disable voltage Quick stop Disable operation Enable operation Fault reset Bits of controlword Bit 3 Bit 2 Bit 1 x 1 1 0 1 1 Bit 0 0 1 Transitions 2, 6, 8 3 0 1 1 1 1 3 + 4 (NOTE) 0 0 0 0 x x 0 1 x x 0 1 1 x 0 1 1 1 x x x 1 1 x 7, 9, 10, 12 7, 10, 11 5 4, 16 15 OBJECT DESCRIPTION Index 6040h Name Controlword Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h rw Refer to CiA402-3 www.trinamic.com Value Range See command coding above Default Value Device and operation mode specific TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 29 4.2.1.2 Object 6041h: Statusword This object provides the status of the PDS FSA. It reflects the status of the CiA402 state machine. Please refer to Figure 4.1 Finite state machine for detailed information. The object is structured as defined below. For more information about the coding refer to the CANopen Drives and motion control device profile, part 2 please. STRUCTURE OF STATUSWORD / VALUE DEFINITION 15 14 ms oms 11 10 9 8 7 6 5 4 3 2 1 0 ila tr rm ms w sod qs ve f oe so rtso LSB MSB LEGEND: ms = manufacturer specific; oms = operation mode specific; ila = internal limit active; tr = target reached; rm = remote; w = warning; sod = switch on disabled; qs = quick stop; ve = voltage enabled; f = fault; oe = operation enabled; so = switched on; rtso = ready to switch on TRINAMIC SPECIFIC BITS Bit 14 15 Name Motor activity Direction of rotation Definition 0 = motor stop; 1 = motor rotates This bit determines/shows the direction of rotation OPERATION MODE SPECIFIC BITS IN PP MODE Bit 10 12 13 Name Target reached Set point acknowledge Following error Definition Set when the motor is within the target position window 0 = set point processed; 1 = set point still in process Not supported STATE CODING xxxx xxxx x0xx 0000b Statusword PDS FSA state Not ready to switch on xxxx xxxx x1xx 0000b Switch on disabled xxxx xxxx x01x 0001b Ready to switch on xxxx xxxx x01x 0011b Switched on xxxx xxxx x01x 0111b Operation enabled xxxx xxxx x00x 0111b Quick stop active xxxx xxxx x0xx 1111b Fault reaction active xxxx xxxx x0xx 1000b Fault OBJECT DESCRIPTION Index 6041h Name Statusword Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h r0 Refer to CiA402-3 www.trinamic.com Value Range See state coding above Default Value no TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 30 4.2.1.3 Object 6062h: Position Demand Value This object provides the demanded position value. The value is given in microsteps. Object 6062h indicates the actual position that the motor should have. It is not to be confused with the objects 6063h and 6064h. OBJECT DESCRIPTION Index 6062h Name Position demand value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value no 4.2.1.4 Object 6063h: Position Actual Internal Value This object provides the actual value of the encoder or the motor. Please use the sensor selection object 606Ah (4.1.8) for selecting the motor or the encoder first. Object 6063h indicates the actual position of the encoder or the motor, re-scaled to the microstep resolution. The value is given in microsteps. OBJECT DESCRIPTION Index 6063h Name Position actual internal value Object Code Data Type Variable SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value no 4.2.1.5 Object 6064h: Position Actual Value This object provides the actual value of the position measurement device. It always contains the same value as object 6063h. OBJECT DESCRIPTION Index 6064h Name Position actual value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value no TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 31 4.2.1.6 Object 6065h: Following Error Window This object indicates the configured range of tolerated position values symmetrically to the position demand value. If the position actual value is out of the following error window, a following error occurs. A following error may occur when a drive is blocked, unreachable profile velocity occurs, or at wrong closed-loop coefficients. The value shall be given in microsteps. If the value of the following error window is 0 or FFFF FFFFh, the following control will be switched off. When the difference between motor position (object 6062 h) and encoder position (object 6063h or 6064h) is greater than the value set here, the motor will be stopped and an emergency message will be sent. Setting this object to zero will turn off this feature completely. Setting this object to a too low value will lead to false alarms! OBJECT DESCRIPTION Index 6065h Name Following error window Object Code Data Type Variable UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value 0… 8388607 4.2.1.7 Object 6067h: Position Window This object indicates the configured symmetrical range of accepted positions relative to the target position. If the actual value of the position encoder is within the position window, this target position is regarded as having been reached. The value is given in increments. If the value of the position window is FFFF FFFFh, the position window control is switched off. If this object is set to zero, the target reached event will be signaled when the demand position (6062h) has reached the target position (6064h). When the position window is set to a value greater than zero, the target reached event will be signaled when the actual encoder position value (6064h) is within the target position - position window and target position + position window. OBJECT DESCRIPTION Index 6067h Name Position window Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value 0… 8388607 4.2.1.8 Object 6068h: Position Window Time This object indicates the configured time, during which the actual position within the position window is measured. The value is given in ms. If this object is set to a value greater than zero and also the position window (6067h) is set to a value greater than zero the target reached event will not be signaled until the actual position (6064h) is at least as many milliseconds within the position window as defined by this object. OBJECT DESCRIPTION Index 6068h Name Position window time Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range UNSIGNED16 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 32 4.2.1.9 Object 60A4h: Profile Jerk This object indicates the configured set of jerk parameters that shall be used during the profile movement. The bow of S-shaped ramps is set here. Object 60A4h can only be used when S-shaped ramps are selected by setting object 6086h to 1. OBJECT DESCRIPTION Index 60A4h Name Position jerk Object Code ARRAY Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 01h Description Bow of S-shaped ramps Entry category Access PDO Mapping Value Range Default Value Mandatory rw Refer to CiA402-3 UNSIGNED32 1… 18 4.2.1.10 Object 606Ch: Velocity Actual Value This object shows the actual velocity value of the motor. The value is given in internal or user-defined velocity units (depending on object 208Ch, described in paragraph 5.1.13). OBJECT DESCRIPTION Index 606Ch Name Velocity actual value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value no 4.2.1.11 Object 607Ah: Target Position The target position is the position that the drive should move to in profile position mode using the current settings of motion control parameters (such as velocity, acceleration, deceleration, motion profile type etc.). The value of this object is interpreted as absolute or relative depending on the abs/rel flag in the controlword. It is given in microsteps. OBJECT DESCRIPTION Index 607Ah Name Target position Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value -2147483647… +2147483647 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 33 4.2.1.12 Object 607Dh: Software Position Limit This object indicates the configured maximal and minimal software position limits. These parameters define the absolute position limits for the position demand value and the position actual value. Every new target position is checked against these limits. The limit positions are always relative to the machine home position. Before being compared with the target position, they are corrected internally by the home offset as follows: Corrected min position limit Corrected max position limit = = min position limit – home offset max position limit – home offset The limit positions are given in microsteps (same as target position). Two limits for moving the motor in positioning mode can be set here. It will then not be possible to leave this window. OBJECT DESCRIPTION Index 607Dh Name Software position limit Object Code Array Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 01h Description Min position limit Entry category Mandatory Access rw PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value -2147483647 02h Max position limit Mandatory rw Refer to CiA402-3 SIGNED32 -2147483647 4.2.1.13 Object 6081h: Profile Velocity This object indicates the configured velocity normally attained at the end of the acceleration ramp during a profiled motion and is valid for both directions of motion. The profile velocity is the maximum velocity used when driving to a new position. It is given in internal or user specific units (depending on object 208Ch, paragraph 5.1.13) OBJECT DESCRIPTION Index 6081h Name Profile velocity Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value depends on the units 4.2.1.14 Object 6083h: Profile Acceleration This object indicates the configured acceleration. Object 6083h sets the maximum acceleration to be used in profile positioning mode. Please choose the units for object 6083h with object 208Eh, described in paragraph 5.1.14. Object 208Eh reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. OBJECT DESCRIPTION Index 6083h Name Profile acceleration Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value depends on the units TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 34 4.2.1.15 Object 6084h: Profile Deceleration This object indicates the configured deceleration. It sets the maximum deceleration used in profile positioning mode. Please choose the units for object 6084h with object 208Eh, described in paragraph 5.1.14. Object 208Eh reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. The deceleration is according to the acceleration. OBJECT DESCRIPTION Index 6084h Name Profile deceleration Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value Depends on the units 4.2.1.16 Object 6085h: Quick Stop Deceleration This object indicates the configured deceleration used to stop the motor when the quick stop function is activated and the quick stop code object 605Ah is set to 2 [or 6]. The value is given in the same unit as profile acceleration object 6083h. Object 6085h defines the deceleration that is to be used during a quick stop operation. OBJECT DESCRIPTION Index 6085h Name Quick stop deceleration Object Code Data Type Variable UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value Depends on the units 4.2.1.17 Object 6086h: Motion Profile Type This object indicates the configured type of motion profile used to perform a profiled motion. Set this object to 0 for trapezoid ramps and to 1 for S-shaped ramps. VALUE DEFINITION Value 0 1 Definition Linear ramp, trapezoidal profile Sin2 ramp, S-shaped profile, refer to object 60A4h (profile jerk, paragraph 4.2.1.9) OBJECT DESCRIPTION Index 6086h Name Motion profile type Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range UNSIGNED16 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.2.2 How to Move a Motor in pp Mode Here is a little example that shows how to get a motor running in pp mode. In this little example we assume that the module has been reset (and then switched to pre-operational or operational) by NMT commands before. Please note, that the values are decimal. - If you do not have any limit switches connected, first disable the limit switch inputs by writing 3 to object 2005h. - Select pp mode by writing 1 to object 6060h. - Write 6 to object 6040h to switch to READY_TO_SWITCH_ON state. - Write 7 to object 6040h to switch to SWITCHED_ON state. - Write 15 to object 6040h to switch to OPERATION_ENABLED state. - Write the desired target position (e.g. 500000) to object 607Ah. - Mark the new target position as active by writing 31 to object 6040h. The motor starts moving now. - Reset the activation by writing 15 to object 6040h (this can be done while the motor is still moving). www.trinamic.com 35 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3 Homing Mode This clause describes the method by which a drive seeks the home position (reference point). There are various methods of achieving this using limit switches at the ends of travel or a home switch in mid-travel. Some methods also use the index (zero) pulse train from an incremental encoder. The user may specify the speeds, acceleration and the method of homing. There is no output data except for those bits in the statusword, which return the status or result of the homing process and the demand to the position control loops. There are four sources of the homing signal available: these are positive and negative limit switches, the home switch and the index pulse from an encoder. Figure 4.2 shows the defined input objects as well as the output objects. The user can specify the speeds, acceleration and method of homing. The home offset object 607C h allows displacing zero in the coordinate system for the home position. Controlword 6040h Homing method 6098h Homing speeds 6099h Statusword 6041h Homing method Homing acceleration 609Ah Position demand internal value 60FCh or Position demand value 6062h Home offset 607Ch Figure 4.2 Homing mode function BY CHOOSING A HOMING METHOD, THE FOLLOWING IS DETERMINED: - the homing signal (positive limit switch, negative limit switch, and home switch), the direction of actuation where appropriate, and the position of the index pulse. The home position and the zero position are offset by the home offset (see object 607Ch). THERE ARE FOUR SOURCES OF HOMING SIGNAL AVAILABLE: - negative and positive limit switches home switch index pulse of an encoder For the operation of positioning drives, an exact knowledge of the absolute position is normally required. Since for cost reasons drives often do not have an absolute encoder, a homing operation is necessary. Please refer to object 6060h (section 4.1.6) for information about how to choose an operation mode. Object 6061 h (section 4.1.7) shows the operation mode that is set. www.trinamic.com 36 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.1 37 Connecting Home Switch, Left Switch, and Right Switch First of all it is necessary to connect the switches. The tables and figures below will show you the right way. 4.3.1.1 TMCM-142-IF The TMCM-142-IF module consists of two PCBs, the TMCM-142 base board and the standard TMCM-IF adapter/interface add-on board. Connector 3 Pin 1 5 9 Pin 1 Connector 2 Pin 1 Pin 1 Standard adapter Base Terminal 1 1 6 USB Terminal1 Connector 1 GND +V B2 B1 A2 A1 Figure 4.3 Connectors of TMCM-142-IF Please connect home switch, left switch, and right switch as follows. Use base connector 3 (or rather the corresponding connector of the adapter board). CONNECTING SWITCHES Pin (connector 3) 23 19 7 Name HOME (IN_8) STOP_L STOP_R www.trinamic.com Function Digital user controlled input #9. Optically isolated, active low (power supply on pin 15) Optically isolated, active low limit switch input left Optically isolated, active low limit switch input right TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.1.2 PDx-146-60-SE The PDx-146-60-SE provides two D-SUB connectors for external connections, a 9-pin D-SUB male connector for CAN communication and a 26-pin high density D-SUB male connector for power, additional I/Os, and switches. Power and I/O connector 1 10 19 9 18 26 Figure 4.4 Connectors of PDx-146-60-SE Please connect home switch, left switch, and right switch as follows. Use the power and I/O connector. CONNECTING SWITCHES Pin Name 16 STOP_L 17 STOP_R 18 HOME www.trinamic.com Function Left stop switch input (+24V and +5V tolerant, internal 20k pull-down resistor, programmable 1k pull-up to +5V with protection diode) Right stop switch input (+24V and +5V tolerant, internal 20k pull-down resistor, programmable 1k pull-up to +5V with protection diode) Home switch input (+24V and +5V tolerant, internal 20k pull-down resistor, programmable 1k pull-up to +5V with protection diode) 38 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.2 Homing Methods There are several different methods of homing. For choosing your homing method, refer to object 6098h please. OVERVIEW: HOMING METHODS Method no. 0 1 2 3 5 17 18 19 21 33 34 35 Description No homing. This is the default setting. Search the left end switch, than search the next encoder index pulse. Search the right end switch, than search the next encoder index pulse. Search the positive edge of the home switch; then search the next encoder index pulse. Search the negative edge of the home switch; then search the next encoder index pulse. Search the left end switch. Search the right end switch. Search the positive edge of the home switch. Search the negative edge of the home switch. Search next index pulse in negative direction. Search next index pulse in positive direction. The actual position is used as home position. All position values (objects 6062h, 6063h, and 6064h) are set to zero, but the motor will not move. METHOD 1: HOMING ON NEGATIVE LIMIT SWITCH AND INDEX PULSE Using this method, the initial direction of movement shall be leftward if the negative limit switch is inactive (here: low). The home position shall be at the first index pulse to the right of the position where the negative limit switch becomes inactive. 1 Index pulse Negative limit switch Figure 4.5 Homing on negative switch and index pulse METHOD 2: HOMING ON POSITIVE LIMIT SWITCH AND INDEX PULSE Using this method, the initial direction of movement shall be rightward if the positive limit switch is inactive (here: low). The position of home shall be at the first index pulse to the left of the position where the positive limit switch becomes inactive. 2 Index pulse Positive limit switch Figure 4.6 Homing on positive limit switch and index pulse www.trinamic.com 39 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) METHOD 3: HOMING ON POSITIVE HOME SWITCH AND INDEX PULSE Using this method, the initial direction of movement shall be dependent on the state of the home switch. The home position shall be at the index pulse to either to the left or the right of the point where the home switch changes state. If the initial position is situated so that the direction of movement shall reverse during homing, the point at which the reversal takes place is anywhere after a change of state of the home switch. 3 3 Index pulse Home switch Figure 4.7 Homing on positive home switch and index pulse METHOD 5: HOMING ON NEGATIVE HOME SWITCH AND INDEX PULSE Using this method, the initial direction of movement shall be dependent on the state of the home switch. The home position shall be at the index pulse to either to the left or the right of the point where the home switch changes state. If the initial position is situated so that the direction of movement shall reverse during homing, the point at which the reversal takes place is anywhere after a change of state of the home switch. 5 5 Index pulse Home switch Figure 4.8 Homing on negative home switch and index pulse www.trinamic.com 40 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) METHOD 17, 18, 19, AND 21: HOMING WITHOUT INDEX PULSE These methods are similar to methods 1 to 5 except that the home position is not dependent on the index pulse but only dependent on the relevant home or limit switch transitions. Method 19 (similar to method 3) is shown in Figure 4.9. Method no. 17 18 19 21 Description Search the left end switch. (Similar to method 1) Search the right end switch. (Similar to method 2) Search the positive edge of the home switch. (Similar to method 3) Search the negative edge of the home switch. (Similar to method 5.) 19 19 Home switch Figure 4.9 Homing without index pulse METHOD 33 AND 34: HOMING ON NEXT INDEX PULSE Using these methods, the direction of homing is negative or positive respectively. The home position shall be at the index pulse found in the selected direction as shown in Figure 4.10. 33 34 Index pulse Figure 4.10 Homing on index pulse METHOD 35: HOMING ON INDEX PULSE / CURRENT POSITION AS HOME POSITION In this method, the current position shall be taken to be the home position. This method does not require the drive device to be in operation enabled state. www.trinamic.com 41 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.3 42 Detailed Object Definitions 4.3.3.1 Object 6040h: Controlword This object indicates the received command controlling the power drive system finite state automation (PDS FSA). The CiA-402 state machine can be controlled using this object. Please refer to Figure 4.1 Finite state machine for detailed information. STRUCTURE OF CONTROLWORD / VALUE DEFINITION 15 9 see 4.2.1.1 7 8 Halt 6 5 4 see 4.2.1.1 Reserved (0) Homing operation start 3 0 see 4.2.1.1 LSB MSB OPERATION MODE SPECIFIC BITS IN HM MODE Bit 4 8 Name Homing operation start Halt Definition Set to 1 to start homing; setting to 0 stops homing Not supported OBJECT DESCRIPTION Index Name Controlword 6040h Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range See command coding above. Default Value device and operation mode specific TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.4 43 Object 6041h: Statusword This object provides the status of the PDS FSA. It reflects the status of the CiA402 state machine. Please refer to Figure 4.1 Finite state machine for detailed information. The object is structured as defined below. For more information about the coding refer to the CANopen Drives and motion control device profile, part 2 please. STRUCTURE OF STATUSWORD / VALUE DEFINITION 15 14 13 see 4.2.1.2 12 11 Homing error Homing attained see 4.2.1.2 10 9 Target reached 0 see 4.2.1.2 LSB MSB OPERATION MODE SPECIFIC BITS IN HM MODE Bit Name 10 Target reached 12 13 Homing attained Homing error Definition Set when the zero position has been found or homing has been stopped by setting controlword bit 4 to zero Set when the zero position has been found Not supported DEFINITION OF BIT 10, BIT 12, AND BIT 13 Bit 13 0 0 0 0 1 1 1 Bit 12 0 0 1 1 0 0 1 Bit 10 0 1 0 1 0 1 x Definition Homing procedure is in progress Homing procedure is interrupted or not reached Homing is attained, but target is not reached Homing procedure is completed successfully Homing error occurred, velocity is not 0 Homing error occurred, velocity is 0 reserved OBJECT DESCRIPTION Index 6041h Name Statusword Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h r0 Refer to CiA402-3 Value Range See state coding above Default Value No 4.3.4.1 Object 606Ch: Velocity Actual Value This object shows the actual velocity value of the motor. The unit can be selected with object 208Ch, described in paragraph 5.1.13. OBJECT DESCRIPTION Index 606Ch Name Velocity actual value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value No TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 44 4.3.4.2 Object 607Ch: Home Offset This object indicates the configured difference between the zero position for the application and the machine home position/home switch (found during homing). While homing, the machine home position is found and once the homing is completed, the zero position is offset from the home position by adding the home offset to the home position. The effect of setting the home position to a non-zero value depends on the selected homing method. The value of this object is given in microsteps. Negative values indicate the opposite direction. Zero position Home switch Home offset Figure 4.11 Home offset definition OBJECT DESCRIPTION Index 607Ch Name Home offset Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value -2147483647… +2147483647 4.3.4.3 Object 6098h: Homing Method The homing method to be used in homing mode can be selected here. The actual firmware supports the following homing methods. VALUE DEFINITION Value 0 1 2 3 5 17 18 19 21 33 34 35 Definition No homing. This is the default value, but there is actually no homing method 0. Search the left end switch, than search the next encoder index pulse. Search the right end switch, than search the next encoder index pulse. Search the positive edge of the home switch, than search the next encoder index pulse. Search the negative edge of the home switch, than search the next encoder index pulse. Search the left end switch. Search the right end switch. Search the positive edge of the home switch. Search the negative edge of the home switch. Search next index pulse in negative direction. Search next index pulse in positive direction. The actual position is used as the home position. All position values (objects 6062 h, 6063h, and 6064h) are set to zero, but the motor will not move. OBJECT DESCRIPTION Index Name Homing method 6098h Object Code Variable Data Type SIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range 0, 3, 5, 19, 21, 33, 34, 35 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 45 4.3.4.4 Object 6099h: Homing Speeds This object indicates the configured speeds used during homing procedure. The values are given in units, which can be selected with object 208Ch, described in paragraph 5.1.13. Using object 6099h a fast and a slow homing speed can be set. In most homing modes, the home switch is searched with the fast speed first. When the home switch has been found, the motor will be decelerated to the slow speed (using the homing acceleration, object 609Ah) and then stopped at the exact switch point. OBJECT DESCRIPTION Index 6099h Name Homing speeds Object Code ARRAY Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Description Entry category Access PDO Mapping Value Range 01h Fast homing speed Mandatory rw Refer to CiA402-3 UNSIGNED32 02h Slow homing speed Mandatory rw Refer to CiA402-3 UNSIGNED32 Default Value Depends on the unit setting Depends on the unit setting 4.3.4.5 Object 609Ah: Homing Acceleration This object indicates the configured acceleration and deceleration to be used during homing operation. The values for accelerating to the fast homing speed and for decelerating to the slow homing speed can be set here. The values are given in units, which can be selected with object 208Eh, described in paragraph 5.1.14. OBJECT DESCRIPTION Index 609Ah Name Homing acceleration Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access rw PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 4.3.4.6 Object 2100h: Home Offset Display The value is given in microsteps. OBJECT DESCRIPTION Index 2100h Name Home offset display Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range Refer to home offset Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 4.3.5 How to Start a Homing in hm Mode Here is a little example that shows how to home the motor in hm mode. In this little example we assume that the module has been reset (and then switched to pre-operational or operational) by NMT commands before. The home switch must be connected to the home switch input. It can be operated manually. - Select hm mode by writing 6 to object 6060h. - Write 6 to object 6040h to switch to READY_TO_SWITCH_ON state. - Write 7 to object 6040h to switch to SWITCHED_ON state. - Write 15 to object 6040h to switch to OPERATION_ENABLED state. - Select homing method 19 by writing 19 to object 6098h. - Set the homing speeds by writing e.g. 50000 to object 6099h sub index 1 and e.g. 10000 to object 6099h sub index 2. - Write 31 to object 6040h to start the homing process. - Press and release the home switch. - When homing has finished, write 15 to object 6040h again. www.trinamic.com 46 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 47 4.4 Profile Velocity Mode The profile velocity mode is used to control the velocity of the drive without a special regard of the position. It contains limit functions and trajectory generation. THE PROFILE VELOCITY MODE COVERS THE FOLLOWING SUB-FUNCTIONS: - Demand value input via trajectory generator Monitoring of the profile velocity using a window-function Monitoring of velocity actual value using a threshold THE OPERATION OF THE REFERENCE VALUE GENERATOR AND ITS INPUT PARAMETERS INCLUDE: - Profile velocity Profile acceleration Profile deceleration Emergency stop Motion profile type 4.4.1 Detailed Object Definitions 4.4.1.1 Object 6040h: Controlword This object indicates the received command controlling the power drive system finite state automation (PDS FSA). The CiA-402 state machine can be controlled using this object. Please refer to Figure 4.1 Finite state machine for detailed information. STRUCTURE OF CONTROLWORD / VALUE DEFINITION 15 9 see 4.2.1.1 8 7 Halt see 4.2.1.1 4 6 Reserved 3 0 see 4.2.1.1 LSB MSB There are no mode specific bits supported in this mode. OBJECT DESCRIPTION Index 6040h Name Controlword Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h rw Refer to CiA402-3 www.trinamic.com Value Range See command coding above Default Value Device and operation mode specific TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 48 4.4.1.2 Object 6041h: Statusword This object provides the status of the PDS FSA. It reflects the status of the CiA402 state machine. Please refer to Figure 4.1 Finite state machine for detailed information. The object is structured as defined below. For more information about the coding refer to the CANopen Drives and motion control device profile, part 2 please. STRUCTURE OF STATUSWORD / VALUE DEFINITION 15 14 13 see 4.2.1.2 12 11 10 Max slippage error Speed see 4.2.1.2 Target reached 9 0 see 4.2.1.2 LSB MSB OPERATION MODE SPECIFIC BITS IN PV MODE Bit 10 12 13 Name Target reached Speed Max slippage error Definition Indicates that the desired speed is reached Not supported Not supported OBJECT DESCRIPTION Index 6041h Name Controlword Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h r0 Refer to CiA402-3 Value Range See state coding above Default Value No 4.4.1.3 Object 6062h: Position Demand Value This object provides the demanded position value. The value is given in microsteps. Object 6062h indicates the actual position that the motor should have. It is not to be confused with objects 6063 h and 6064h. OBJECT DESCRIPTION Index 6062h Name Position demand value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value No 4.4.1.4 Object 6063h: Position Actual Internal Value This object indicates the actual position of the encoder, re-scaled to the microstep resolution of the motor. If necessary, the data unit may be transformed from user-defined units to increments. The value is given in microsteps or encoder steps, depending on object 606Ah (described in paragraph 4.1.8). OBJECT DESCRIPTION Index 6063h Name Position actual internal value Object Code Data Type Variable SIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value No TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 49 4.4.1.5 Object 6064h: Position Actual Value This object provides the actual value of the position measurement device. It always contains the same value as object 6063h. The value is given in microsteps. OBJECT DESCRIPTION Index 6064h Name Position actual value Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value No 4.4.1.6 Object 6065h: Following Error Window This object indicates the configured range of tolerated position values symmetrically to the position demand value. If the position actual value is out of the following error window, a following error occurs. A following error may occur when a drive is blocked, unreachable profile velocity occurs, or at wrong closed-loop coefficients. The value is given in microsteps. If the value of the following error window is 0 or FFFF FFFFh, the following control will be switched off. When the difference between motor position (object 6062 h) and encoder position (object 6063h or 6064h) is greater than the value set here, the motor will be stopped and an emergency message will be sent. Setting this object to zero will turn off this feature completely. Setting this object to a too low value will lead to false alarms. OBJECT DESCRIPTION Index 6065h Name Following error window Object Code Data Type Variable UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access rw PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value 0… 8388607 4.4.1.7 Object 606Ch: Velocity Actual Value This object gives the actual velocity value derived either from the velocity sensor or from the position sensor. OBJECT DESCRIPTION Index 606Ch Name Velocity actual value Object Code Variable Data Type INTEGER32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range INTEGER32 Default Value no TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 50 4.4.1.8 Object 607Dh: Software Position Limit This object indicates the configured maximal and minimal software position limits. These parameters define the absolute position limits for the position demand value and the position actual value. The position actual vale is always checked against these limits. The limit position is always relative to the machine home position. Before being compared with the target position, they have to be corrected internally by the home offset as follows: Corrected min position limit Corrected max position limit = = min position limit - home offset max position limit - home offset This calculation needs only be performed when home offset or software position limit is changed. The limit positions are given in microsteps (same as target position). Two limits for moving the motor in positioning mode can be set here. Overstepping the window will lead to an emergency message and the motor will be stopped. OBJECT DESCRIPTION Index 607Dh Name Software position limit Object Code Array Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index 01h Description Min position limit Access rw PDO Mapping Refer to CiA402-3 Value Range SIGNED32 Default Value -2147483647… +2147483647 02h Max position limit rw Refer to CiA402-3 SIGNED32 -2147483647… +2147483647 4.4.1.9 Object 6083h: Profile Acceleration This object indicates the configured acceleration. Object 6083h sets the maximum acceleration to be used in profile velocity mode. Please choose the units for object 6083h with object 208Eh, described in paragraph 5.1.14. Object 208Eh reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. OBJECT DESCRIPTION Index 6083h Name Profile acceleration Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value Depends on the units 4.4.1.10 Object 6084h: Profile Deceleration This object indicates the configured deceleration. It sets the maximum deceleration used in profile velocity mode. Please choose the units for object 6083h with object 208Eh, described in paragraph 5.1.14. Object 208Eh reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. OBJECT DESCRIPTION Index 6084h Name Profile deceleration Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value Depends on the units TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 51 4.4.1.11 Object 6085h: Quick Stop Deceleration This object indicates the configured deceleration used to stop the motor when the quick stop function is activated and the quick stop code object 605Ah is set to 2 or 6. The quick stop deceleration is also used if the fault reaction code object 605Eh is 2 and the halt option code object 605Dh is 2. Object 6085h defines the deceleration that is to be used during a quick stop operation. The value is given in the same physical unit as profile acceleration object 6083h. You can choose the units for object 6083h with object 208Eh, described in paragraph 5.1.14. Object 208Eh reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. OBJECT DESCRIPTION Index Name Quick stop deceleration 6085h Object Code Data Type Variable UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping Refer to CiA402-3 Value Range UNSIGNED32 Default Value Depends on the units 4.4.1.12 Object 60FFh: Target Velocity This object indicates the configured target velocity and is used as input for the trajectory generator. Object 60FFh sets the target velocity when using profile velocity mode. The drive then accelerates or decelerates to that velocity using the acceleration and deceleration set by objects 6083 h and 6084h. The values are given in units, which can be selected with object 208Ch, described in paragraph 5.1.13. OBJECT DESCRIPTION Index Name Target velocity 60FFh Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access PDO Mapping Value Range 00h rw Refer to CiA402-3 SIGNED32 4.4.2 Default Value -2147483647… +2147483647 / depends on selected units How to Move a Motor in pv Mode Here is a little example that shows how to get a motor running in pv mode. In this little example we assume that the module has been reset (and then switched to pre-operational or operational) by NMT commands before. - If you do not have any limit switches connected, first disable the limit switch inputs by writing 3 to object 2005h. - Select pv mode by writing 3 to object 6060h. - Write 6 to object 6040h to switch to READY_TO_SWITCH_ON state. - Write 7 to object 6040h to switch to SWITCHED_ON state. - Write 15 to object 6040h to switch to OPERATION_ENABLED state. - Write the desired target speed (e.g. 100000) to object 60FFh. The motor now accelerates to that speed. - Stop the motor by writing 0 to object 60FFh. www.trinamic.com TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 52 5 Manufacturer Specific Area The manufacturer segment contains manufacturer specific objects. These objects control the special features of the TRINAMIC motion control devices TMCM-142 and PD-146. 5.1 Detailed Object Specifications 5.1.1 Object 2000h: Microstep Resolution This object sets the microstep resolution of the drive. A value of 0 means 2048 microsteps (2048/2 x). It is only writeable in the SWITCHED_ON_DISABLED state, but always readable. OBJECT DESCRIPTION Index 2000h Name Microstep resolution Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h 5.1.2 PDO Mapping no Value Range 0… 11 Default Value 0 Object 2001h: Fullstep Resolution This object shows the fullstep resolution of the motor shipped with a PANdrive. It is normally 200 (1.8° motor). OBJECT DESCRIPTION Index 2001h Name Fullstep resolution Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range 200 Default Value 200 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 5.1.3 53 Object 2002h: Brake Delay Times With this object the delay times for applying and releasing an (optional) brake can be defined. Please see also object 200Ah for an additional delay between enabling the power stage and releasing the brake. Both times are given in ms. Brake Bridge ON OFF ON OFF t1 Operation Enable t2 200Ah 2002h t3 2002h sub index sub index 2 1 Figure 5.1 Brake output timing OBJECT DESCRIPTION Index 2002h Name Brake delay times Object Code ARRAY Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 01h 02h 5.1.4 Description Time between applying brake / disabling power stage Time between releasing brake / switching the state machine to operational Access PDO Mapping Value Range Default Value rw no 0… 65535 0 rw no 0… 65535 0 Object 2003h: Maximum Current This object defines the current used when the motor is moving. A value of 16 means 100% of the maximum current of the drive. OBJECT DESCRIPTION Index 2003h Name Maximum current Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h 5.1.5 PDO Mapping no Value Range 0… 16 Default Value 7 Object 2004h: Standby Current This object defines the current used when the motor is standing. A value of 16 means 100% of the maximum current of the drive. OBJECT DESCRIPTION Index 2004h Name Standby current Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping no Value Range 0… 16 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 5.1.6 54 Object 2005h: Limit Switches This object defines which limit switches are to be used. Bit 0 stands for the left and bit 1 stands for the right limit switch. If a bit is set, the corresponding limit switch will not be used. So this object has to be set to the value 3 if limit switches are not connected. The object can only be written when the drive is in the SWITCHED_ON_DISABLED state (but is always readable). The limit switches can also be inverted using bit 2 and bit 3: - Bit 2 inverts the left limit switch Bit 3 inverts the right limit switch OBJECT DESCRIPTION Index Name Limit switches 2005h Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h Bit 0 1 2 3 4 5 5.1.7 PDO Mapping no Value Range 0… 7 Default Value 0 Definition Left limit switch deactivated, if set. Right limit switch deactivated, if set. Left limit switch inverted, if set. Right limit switch inverted, if set. Home switch deactivated, if set. Home switch inverted, if set. Object 200Ah: Enable Drive Delay Time This is an additional delay time (in milliseconds) between enabling the power stage and releasing the brake. It can be used to prevent the brake from being released too early (before the hold current in the motor has been reached). Please see also object 2002h. OBJECT DESCRIPTION Index 200ah Name Enable drive delay time Object Code Data Type Variable UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping no Value Range 0… 65535 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 5.1.8 55 Object 200Bh: Encoder Parameters This object defines the polarity SWITCHED_ON_DISABLED state. of the encoder channels. It is only writable in OBJECT DESCRIPTION Index 200bh Name Encoder parameters Object Code ARRAY Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Description Null channel polarity Bit 0 Access PDO Mapping Value Range Default Value rw no UNSIGNED8 7 Polarity of channel A on index pulse (0=low, 1=high) Polarity of channel B on index pulse (0=low, 1=high) Polarity of channel N on index pulse (0=low, 1=high) Ignore channel A/B polarity on index pulse Bit 1 01h Bit 2 Bit 3 02h Direction of rotation rw no 0/1 0 03h Initialize position*) rw no 0/1 1 5.1.9 Object 200Ch: Brake Current Feed This object configures how much current has to be fed into the brake to apply and to release it. 0 means 0%, 255 means 100% of the maximum current (this depends on the module). In most cases it is needed to feed current into the brake to release it. The default configuration is made for this case. Setting both values to 0 disables the automatic brake control. This object is only writable in SWITCHED_ON_DISABLED state. OBJECT DESCRIPTION Index 200ch Name Brake current feed Object Code ARRAY Data Type Unsigned8 ENTRY DESCRIPTION Sub-Index 01h Description Apply current 02h Release current Access rw PDO Mapping no Value Range UNSIGNED8 Default Value 0 rw no UNSIGNED8 255 5.1.10 Object 2089h: Standby Delay Time after the motor is stopped until the motor current is changed to standby current (in units of 4.096ms). This can only be changed in SWITCHED_ON_DISABLED mode. OBJECT DESCRIPTION Index 2089h Name Standby delay Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw www.trinamic.com PDO Mapping no Value Range 0… 4096 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 56 5.1.11 Object 208Ah: Mixed Decay Run Use mixed decay when the motor is running if set to 1. This can only be changed in SWITCHED_ON_DISABLED mode. OBJECT DESCRIPTION Index 208ah Name Mixed decay run Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range 0… 1 Default Value 1 5.1.12 Object 208Bh: Mixed Decay Standby Use mixed decay when the motor is standing if set to 1. This can only be changed in SWITCHED_ON_DISABLED mode. OBJECT DESCRIPTION Index 208bh Name Mixed decay standby Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range 0… 1 Default Value 0 5.1.13 Object 208Ch: Velocity Dimension Index Writing 0 selects internal units, writing 181 sets PPS units for velocity and PPS/s units for acceleration. This can only be changed in SWITCHED_ON_DISABLED mode. OBJECT DESCRIPTION Index 208ch Name Velocity dimension index Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range 0 or 181 Default Value 0 5.1.14 Object 208Eh: Acceleration Dimension Index This object reads 0 when internal units are selected or 179 when user units (PPS/s) are selected. This depends on the setting of object 208Eh, paragraph 5.1.14) OBJECT DESCRIPTION Index 208eh Name Acceleration dimension index Object Code Data Type Variable UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range 0 or 179 Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 57 5.1.15 Object 2100h: Home Offset Display The value is given in microsteps. OBJECT DESCRIPTION Index 2100h Name Home offset display Object Code Variable Data Type SIGNED32 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping no Value Range Refer to Home offset Default Value 0 5.1.16 Object 2102h: Driver Error Flags This object shows the hardware error flags of the motor driver IC. THERE ARE THE FOLLOWING ERROR BITS: Bit 7 6 5 4 3 2 1 0 Name OT OTPW UV OCHS OLB OLA OCB OCA Function Overtemperature Temperature prewarning Driver undervoltage Overcurrent high side Open load bridge B Open load bridge A Overcurrent bridge B low side Overcurrent bridge A low side Remark 1 = chip of due to overtemperature 1= prewarning temperature exceeded 1 = undervoltage on VS 3 PWM cycles with overcurrent within 63 PWM cycles No PWM switch off for 14 oscillator cycles No PWM switch off for 14 oscillator cycles 3 PWM cycles with overcurrent within 63 PWM cycles 3 PWM cycles with overcurrent within 63 PWM cycles OBJECT DESCRIPTION Index 2102h Name Driver error flags Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index Access ro 00h PDO Mapping no Value Range 0… 255 Default Value 0 5.1.17 Object 2107h: Microstep Resolution Display This object shows the microstep resolution (set by object 2000h when internal units are selected or calculated when user units are selected). OBJECT DESCRIPTION Index 2107h Name Microstep resolution display Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access ro PDO Mapping no Value Range 0… 11 Default Value 0 5.1.18 Object 2108h: Absolute Resolver Value This object shows the actual value of the encoder. OBJECT DESCRIPTION Index 2108h Name Absolute resolver value Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range 0… 4095 Default Value no TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 58 5.1.19 Object 2700h: TMCL Direct Communication After writing the make signature 0x656b616d to this object the drive switches to TMCL™ mode. The drive can then only be controlled via TMCL™ commands written to the OS command object 1023/01h The drive has to be reset (using the DS-301 reset application command) to return to normal CANopen functionality. OBJECT DESCRIPTION Index Name Microstep resolution display 2700h Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access PDO Mapping 00h ro no Value Range Make signature 0x656b616d Default Value 0 5.1.20 Object 2701h: Manufacturer Specific Mode Writing the make signature to this object turns on the manufacturer specific mode. The manufacturer specific mode can be turned off again by writing the kill signature to this object. read: 0 = manufacturer specific mode is inactive 1 = manufacturer specific mode is active write: 656b616dh = make signature 6c6c696bh = kill signature The manufacturer specific mode has the following features: - PDOs do not need to be disabled and re-enabled when the PDO mapping is to be changed The RTR bit in the COB-ID of PDO definitions is ignored. OBJECT DESCRIPTION Index 2701h Name Manufacturer specific mode Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index Access rw 00h PDO Mapping no Value Range see textbox Default Value 0 5.1.21 Object 2702h: Digital inputs Bits 16… 23 of this object reflect the states of the digital inputs of the module. Bit 16 17 18 19 etc. Input IN_O IN_1 IN_2 IN_3 OBJECT DESCRIPTION Index 2702h Name Digital inputs Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range - Default Value 0 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 59 5.1.22 Object 2703h: Digital Outputs With this object the digital outputs (general purpose outputs) can be set. Bits 16… 23 of sub index 1 switch outputs OUT_0 and OUT_1 of the module. Bits 16… 23 of sub index 2 determine which outputs can be switched. The number of available digital outputs depends on the module type. OBJECT DESCRIPTION Index Name Digital outputs 2703h Object Code Array Data Type ENTRY DESCRIPTION Sub-Index 01h Description Physical outputs 02h Output mask Access rw PDO Mapping no Value Range UNSIGNED32 Default Value 0 rw no UNSIGNED32 0 With this object the digital outputs (general purpose outputs) can be set. Bits 16..23 of sub index 1 switch outputs 0..8 of the module. Bits 16..23 of sub index 2 determine which outputs can be switched. The number of available digital outputs depends on the module type. 5.1.23 Object 2704h: CAN Bit Rate With this object it is possible to change the CAN bit rate. To do this, first write the new value to this object. Then, store the new setting by writing the save signature to object 2706. After that, reset the module. The new setting becomes active now. OBJECT DESCRIPTION Index Name CAN bit rate load 2704h Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access rw PDO Mapping no Value Range 20, 50, 125, 250, 500, 1000 Default Value 1000 5.1.24 Object 2705h: Node ID On modules that do not have address switches the node ID can be selected using this object. On modules with address switches the node ID is normally selected using the address switches. Only when the address switches are set to an invalid value (0 or >127) this object overrides the address switch setting. To change the node ID, first write the new node ID to this object. Then, store the new setting by writing the save signature to object 2706h. After that, reset the module. The new setting becomes active now. OBJECT DESCRIPTION Index Name Node ID load 2705h Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access rw PDO Mapping no Value Range 1… 127 HOW TO CHANGE THE NODE ID: - Write new node ID in object 2705h. - Write safe signature 65766173h in sub-index 01h of object 2706h. - Reset module. www.trinamic.com Default Value 1 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 60 5.1.25 Object 2706h: Store Writing the save signature to this object permanently saves changes made on objects 2707 h and 2708h. Save signature: 65766173h OBJECT DESCRIPTION Index Name Store 2706h Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 00h Access ro PDO Mapping no Value Range Highest sub-index supported Default Value 1 01h rw no Save signature 0 5.1.26 Object 2707h: CAN Bit Rate Load Shows the selected CAN bit rate. OBJECT DESCRIPTION Index Name CAN bit rate 2707h Object Code Variable Data Type UNSIGNED16 ENTRY DESCRIPTION Sub-Index 00h Access ro PDO Mapping No Value Range 20, 50, 125, 250, 500, 800, 1000 Default Value 1000 5.1.27 Object 2708h: Node ID load This object shows the selected node ID. OBJECT DESCRIPTION Index Name Node ID 2708h Object Code Variable Data Type UNSIGNED8 ENTRY DESCRIPTION Sub-Index 00h Access ro www.trinamic.com PDO Mapping no Value Range 1… 127 Default Value Depends on ID switches TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 61 5.1.28 Object 270Eh: Device Analog Inputs This object provides the values of the analog inputs of the device (if the device is equipped with analogue inputs). OBJECT DESCRIPTION Index 270Eh Name Device Analog Inputs Object Code Variable Data Type UNSIGNED32 ENTRY DESCRIPTION Sub-Index 01h Access ro ro PDO Mapping no no Value Range Highest sub-index 0..1023 Default Value 8 0 02h ro no 0..1023 0 03h ro no 0..1023 0 04h ro no 0..1023 0 05h ro no 0..1023 0 06h ro no 0..1023 0 07h ro no 0.1023 0 08h ro no 0..1023 0 00h www.trinamic.com TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 6 Emergency messages The module sends an emergency message if an error occurs. The message contains information about the error type. The module can map internal errors and object 1001h (error register) is part of every emergency object. ERROR CODES FOR THE PD-146 AND THE TMCM-142: Error code Add. byte Description 1 2 3 4 5 0000h 0 0 0 0 0 1000h 1 0 0 0 0 1000h 2 0 0 0 0 2310h 0 0 0 0 0 2311h 0 0 0 0 0 2312h 0 0 0 0 0 3230h 0 0 0 0 0 4310h 1 0 0 0 0 Overtemperature pre-warning The temperature in the motor driver exceeds the pre-warning limit. 4310h 2 0 0 0 0 Overtemperature error The motor driver has been switched off because the temperature limit has been exceeded. 5441h 0 0 0 0 0 6320h 0 0 0 0 0 8110h 1 0 0 0 0 81110h 2 0 0 0 0 CAN Tx buffer overflow The software CAN transmit buffer is full and thus some CAN messages are lost. 81110h 3 0 0 0 0 CAN Rx buffer overflow The software CAN receive buffer is full and so some CAN messages are lost. 8120h 0 0 0 0 0 8140h 0 0 0 0 0 8611h 0 0 0 0 0 0xff00 0 0 0 0 0 Undervoltage The supply voltage is too low to drive a motor. ff01h 1 0 0 0 0 Positive software limit The actual position is outside the range defined by object 0x607d. www.trinamic.com Fault reset The fault reset command has been executed. Generic error: open load bridge A The motor driver indicates open load on bridge A. It is possible that the motor cable is broken or that there is an error in the power amplifier itself. Generic error: open load bridge B The motor driver indicates open load on bridge B. It is possible that the motor cable is broken or that there is an error in the power amplifier itself. Overcurrent high side The motor driver indicates an overcurrent on the high side. This can be caused by a short circuit in the driver stage. Overcurrent bridge B The motor driver indicates that there is overcurrent on bridge B. This can be caused by a short circuit in the motor itself or in the motor driver stage. Overcurrent bridge A The motor driver indicates that there is overcurrent on bridge A. This can be caused by a short circuit in the motor itself or in the motor driver stage. stallGuard™ error The actual load value exceeds the stallGuard™ limit. Please note, that the actual versions of PD-146 and TMCM-142 do not have the stallGuard™ feature. We consider this for future versions. Shutdown switch active The enable signal is missing (due to the shutdown switch) and the motor driver has been switched off. Parameter error The data in the received PDO is either wrong or cannot be accepted due to the internal state of the drive. CAN controller overflow The receive message buffer of the CAN controller hardware is full and some CAN messages are lost. CAN error passive The CAN controller has detected communication errors and has entered the CAN Error passive state. CAN controller recovered from bus-off state The CAN controller had detected too many errors and had changed into the bus-off state. The drive has been stopped and disabled. This message is sent after the CAN controller has recovered from bus-off state and is bus-on again. Following error The deviation between motor position counter and encoder position counter has exceeded the following error window. 62 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) ff01h 2 0 0 0 0 Negative software limit The actual position is outside the range defined by object 0x607d. ff01h 3 0 0 0 0 Positive limit switch The positive limit switch has been touched outside of the homing function. ff01h 4 0 0 0 0 Negative limit switch The negative limit switch has been touched outside of the homing function. www.trinamic.com 63 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 7 Life Support Policy TRINAMIC Motion Control GmbH & Co. KG does not authorize or warrant any of its products for use in life support systems, without the specific written consent of TRINAMIC Motion Control GmbH & Co. KG. Life support systems are equipment intended to support or sustain life, and whose failure to perform, when properly used in accordance with instructions provided, can be reasonably expected to result in personal injury or death. © TRINAMIC Motion Control GmbH & Co. KG 2011-2014 Information given in this data sheet is believed to be accurate and reliable. However neither responsibility is assumed for the consequences of its use nor for any infringement of patents or other rights of third parties, which may result from its use. Specifications are subject to change without notice. www.trinamic.com 64 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 8 Revision History 8.1 Firmware Revision Version 3.00 3.01 Author Date 2009-SEP-15 OK 2009-OCT-12 OK 3.02 3.03 3.05 2010-JAN-07 OK 2010-JAN-29 OK 2010-DEC-15 OK 3.06… 3.17 3.18 OK 25.04.2014 OK Description First version for TMC457 based modules Home switch polarity reversed Node ID and bitrate can be configured via manufacturer specific objects Home switch polarity switchable (via object 2005h) Internal error corrections and optimizations Heartbeat consumer functionality added Non volatile storage of some motor parameters added Analog inputs can be read via object 270Eh Not deployed. Attention! Per default, the encoder is not active. Set the sensor selection code (object 606Ah) to meet your needs. New or modified objects: 100Ch guard time new 100Dh life time factor new 1010h store parameters updated 1011 restore default parameters updated 2108h absolute resolver value new 6098h homing methods updated and new methods added 2108h absolute resolver value new Table 8.1 Firmware revision www.trinamic.com 65 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 8.2 Document Revision Version 0.95 0.96 1.00 1.01 1.02 1.03 Date Author 2009-SEP-15 OK 2009-OCT-12 OK 2010-FEB-23 SD 2010-MAR-15 SD 2010-MAY-24 SD 2010-JUN-15 SD 1.04 2011-AUG-01 SD 2.00 2014-JUN-26 SD Description Initial version for TMC457 based modules Description of homing modes corrected Initial version based on version 0.96 Controlword and statusword corrected Objects 2704h, 2705h, 2707h, 2708h corrected Object 2706h and 6098h corrected, minor changes Objects 1010h, 1011h, and 1016h added; new front page Attention! Per default, the encoder is not active. Set the sensor selection code (object 606Ah) to meet your needs. New or modified objects: 100Ch guard time new 100Dh life time factor new 1010h store parameters updated 1011 restore default parameters updated 2108h absolute resolver value new 6098h homing methods updated and new methods added 2108h absolute resolver value new 200Bh updated Changes related to the design. Table 8.2 Document revision www.trinamic.com 66 TMCM-142/PD-146 CANopen V3.18 Manual (Rev. 2.00 / 2014-JUN-26) 9 References [TMCM-142-IF] [TMCM-142-IF] [PD-146-60-SE] [PD-146-60-SE] [TMCM-IF] [QSH5718] [QSH6018] www.trinamic.com TMCM-142-IF Hardware Manual (see http://www.trinamic.com) TMCM-142-IF TMCL™ Firmware Manual (see http://www.trinamic.com) PD-146-60-SE Hardware Manual (see http://www.trinamic.com) PD-146-60-SE TMCL™ Firmware Manual (see http://www.trinamic.com) TMCM-IF Hardware Manual (see http://www.trinamic.com) QSH5718 Manual (see http://www.trinamic.com) QSH6018 Manual (see http://www.trinamic.com) 67