Controller/driver module up to 10a rms/12...48v dc can, rs232/rs485 optional, mechatronic device with 57 mm bldc servo motor up to 10a rms/12...48v dc can, rs232/rs485 optional incremental encoder hall sensors (18 pages)
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 1 Features The TMCM-6110 is a compact 6-axes stepper motor controller/driver standalone board. It supports up to 6 bipolar stepper motors with up to 1.1A RMS coil current. There are separate motor and reference/end switch connectors for each motor.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 2 Overview The software running on the microprocessor of the TMCM-6110 consists of two parts, a boot loader and the firmware itself. Whereas the boot loader is installed during production and testing at TRINAMIC and remains untouched throughout the whole lifetime, the firmware can be updated by the user.
THINGS YOU NEED TMCM-6110 with up to six appropriate motors (e.g. QSH4218) Interface (RS485, CAN or USB) suitable to your TMCM-6110 module with cables Nominal supply voltage +24V DC (+9… +28V DC) for your module TMCL-IDE program (can be downloaded free of charge from www.trinamic.com)
Page 7
Description RS485- Bi-directional Differential RS485 bus signal (inverting) Power (GND) Signal and system ground RS485+ Bi-directional Differential RS485 bus signal (non-inverting) RS485 as field bus interface normally requires an adapter. TRINAMIC offers the USB-2-485 converter between USB and RS485. www.trinamic.com...
Page 8
Connect the USB interface with the appropriate connector (see Figure 3.1). To make use of the USB interface, a device driver has to be installed first. When the TMCM-6110 module is connected to the USB interface of a PC for the first time, you will be prompted for a driver by the operating system. The tmcm- 6110.inf file is available on www.trinamic.com.
Page 9
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 3.1.1.3 Motor The TMCM-6110 controls up to six 2-phase stepper motors. Connect one coil of each motor to the terminals marked A0 and A1 and the other coil to the connectors marked B0 and B1.
Page 10
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 3.1.1.5 I/Os Connect inputs and outputs with the appropriate connectors (see Figure 3.1), if you want to use them. Label Connector type Mating connector type Connector housing CVIlux: CI010105000-A Contacts CVIlux: CI01T011PE0-A...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 3.1.2 Start the TMCL-IDE Software Development Environment The TMCL-IDE is available on www.trinamic.com. TMCL-IDE: NSTALLING THE Make sure the COM port you intend to use is not blocked by another program.
Start TMCL Direct Mode. Direct Mode If the communication is established the TMCM-6110 is automatically detected. If the module is not detected, please check cables, interface, power supply, COM port, and baud rate. Issue a command by choosing Instruction, Type (if necessary), Motor, and Value and click Execute to send it to the module.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 3.1.4 Important Motor Settings There are some axis parameters which have to be adjusted right in the beginning after installing your module. Please set the upper limiting values for the speed (axis parameter 4), the acceleration (axis parameter 5), and the current (axis parameter 6).
Download Click on Icon Assemble to convert the TMCL into machine code. Then download the program to the TMCM-6110 module via the icon Download. Press icon Run. The desired program will be executed. Click Stop button to stop the program.
That is, a host computer (e.g. PC/PLC) acting as the interface bus master will send a command to the TMCM-6110. The TMCL interpreter on the module will then interpret this command, do the initialization of the motion controller, read inputs and write outputs or whatever is necessary according to the specified command.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) HECKSUM CALCULATION As mentioned above, the checksum is calculated by adding up all bytes (including the module address byte) using 8-bit addition. Here are two examples to show how to do this: in C: unsigned char i, Checksum;...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.4 TMCL Command Overview In this section a short overview of the TMCL commands is given. 4.4.1 TMCL Commands Command Number Parameter Description <motor number>, <velocity> Rotate right with specified velocity <motor number>, <velocity>...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.4.2 Commands Listed According to Subject Area 4.4.2.1 Motion Commands These commands control the motion of the motor. They are the most important commands and can be used in direct mode or in standalone mode.
Page 19
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.4.2.5 Calculation Commands These commands are intended to be used for calculations within TMCL applications. Although they could also be used in direct mode it does not make much sense to do so.
Page 20
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.4.2.6.3 Interrupt Vectors: The following table shows all interrupt vectors that can be used. Interrupt number Interrupt type Timer 0 Timer 1 Timer 2 Target position reached axis 0 Target position reached axis 1...
Page 21
The beginning of the program above then looks like the following: #include Interrupts.inc VECT TI_TIMER0, Timer0Irq SGP TI_TIMER0, 3, 1000 EI TI_TIMER0 EI TI_GLOBAL Please also take a look at the other example programs (see www.trinamic.com). 4.4.2.7 ASCII Commands Mnemonic Command number Meaning Enter ASCII mode Quit ASCII mode and return to binary mode.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.5 The ASCII Interface There is also an ASCII interface that can be used to communicate with the module and to send some commands as text strings. ROCEED AS FOLLOWS The ASCII command line interface is entered by sending the binary command 139 (enter ASCII mode).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.5.4 Configuring the ASCII Interface The module can be configured so that it starts up either in binary mode or in ASCII mode. Global parameter 67 is used for this purpose (please see also chapter 6.1).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6 Commands The module specific commands are explained in more detail on the following pages. They are listed according to their command number. 4.6.1 ROR (rotate right) The motor will be instructed to rotate with a specified velocity in right direction (increasing the position counter).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.2 ROL (rotate left) The motor will be instructed to rotate with a specified velocity (opposite direction compared to ROR, decreasing the position counter). Internal function: first, velocity mode is selected. Then, the velocity value is transferred to axis parameter #2 (target velocity).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.3 MST (motor stop) The motor will be instructed to stop. Internal function: the axis parameter target velocity is set to zero. Related commands: ROL, ROR, SAP, GAP Mnemonic: MST <motor>...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.4 MVP (move to position) The motor will be instructed to move to a specified relative or absolute position or a pre-programmed coordinate. It will use the acceleration/deceleration ramp and the positioning speed programmed into the unit.
Page 28
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Versatile options for the MVP COORD command: Moving only one motor: Set the <motor> parameter to the motor number (0…2). Moving multiple motors without interpolation: Set bit 7 of the <motor> parameter. Now the bits 0…2 of the <motor>...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.5 SAP (set axis parameter) With this command most of the motion control parameters can be specified. The settings will be stored in SRAM and therefore are volatile. That is, information will be lost after power off.
4.6.6 GAP (get axis parameter) Most parameters of the TMCM-6110 can be adjusted individually for the axis. With this parameter they can be read out. In standalone mode the requested value is also transferred to the accumulator register for further processing purposes (such as conditioned jumps). In direct mode the value read is only output in the value field of the reply (without affecting the accumulator).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.7 STAP (store axis parameter) An axis parameter previously set with a Set Axis Parameter command (SAP) will be stored permanent. Most parameters are automatically restored after power up. For a table with parameters and values which can be used together with this command please refer to chapter 5.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.8 RSAP (restore axis parameter) For all configuration-related axis parameters non-volatile memory locations are provided. By default, most parameters are automatically restored after power up. A single parameter that has been changed before can be reset by this instruction also.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.9 SGP (set global parameter) With this command most of the module specific parameters not directly related to motion control can be specified and the TMCL user variables can be changed. Global parameters are related to the host interface, peripherals or application specific variables.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.10 GGP (get global parameter) All global parameters can be read with this function. Global parameters are related to the host interface, peripherals or application specific variables. The different groups of these parameters are organized in banks to allow a larger total number for future products.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.11 STGP (store global parameter) This command is used to store TMCL user variables permanently in the EEPROM of the module. Some global parameters are located in RAM memory, so without storing modifications are lost at power down.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.12 RSGP (restore global parameter) With this command the contents of a TMCL user variable can be restored from the EEPROM. For all configuration-related axis parameters, non-volatile memory locations are provided. By default, most parameters are automatically restored after power up.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.13 RFS (reference search) The TMCM-6110 has a built-in reference search algorithm which can be used. The reference search algorithm provides switching point calibration and supports up-to three switches. The status of the reference search can also be queried to see if it has already been finished.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.14 SIO (set input / output) This command can be used as follows: SIO sets the status of the general digital output either to low (0) or to high (1). Bank 2 is used for this purpose.
Page 39
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) CONNECTOR Connector 0 Connector 1 Direction Description Power (GND) Power Connected to V of power connector DIGITAL DIGITAL DIGITAL (supply output) Dedicated analog input, AIN_0 AIN_4 Input input voltage range: 0… +10V, resolution: 12bit (0…...
Page 40
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) WITCHING THE PULL UP RESISTORS OF THE REFERENCE SWITCH INPUTS SIO can be used to switch the pull-up resistors for all reference switch inputs on and off. Bank 0 is used for this purpose.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.15 GIO (get input /output) With this command the status of the two available general purpose inputs of the module can be read out. The function reads a digital or analogue input port. Digital lines will read 0 and 1, while the ADC channels deliver their 12 bit result in the range of 0…...
Page 43
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) EADING ALL DIGITAL INPUTS WITH ONE COMMAND Set the type parameter to 255 and the bank parameter to 0. In this case the status of all digital input lines will be read to the lower eight bits of the accumulator.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.16 CALC (calculate) A value in the accumulator variable, previously read by a function such as GAP (get axis parameter) can be modified with this instruction. Nine different arithmetic functions can be chosen and one constant operand value must be specified.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.17 COMP (compare) The specified number is compared to the value in the accumulator register. The result of the comparison can for example be used by the conditional jump (JC) instruction.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.18 JC (jump conditional) The JC instruction enables a conditional jump to a fixed address in the TMCL program memory, if the specified condition is met. The conditions refer to the result of a preceding comparison. Please refer to COMP instruction for examples.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.19 JA (jump always) Jump to a fixed address in the TMCL program memory. This command is intended for standalone operation only. Internal function: the TMCL program counter is set to the passed value.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.20 CSUB (call subroutine) This function calls a subroutine in the TMCL program memory. This command is intended for standalone operation only. Internal function: the actual TMCL program counter value is saved to an internal stack, afterwards overwritten with the passed value.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.21 RSUB (return from subroutine) Return from a subroutine to the command after the CSUB command. This command is intended for use in standalone mode only. Internal function: the TMCL program counter is set to the last value of the stack. The command will be ignored if the stack is empty.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.22 WAIT (wait for an event to occur) This instruction interrupts the execution of the TMCL program until the specified condition is met. This command is intended for standalone operation only.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.23 STOP (stop TMCL program execution) This function stops executing a TMCL program. The host address and the reply are only used to transfer the instruction to the TMCL program memory.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.24 SCO (set coordinate) Up to 20 position values (coordinates) can be stored for every axis for use with the MVP COORD command. This command sets a coordinate to a specified value. Depending on the global parameter 84, the coordinates are only stored in RAM or also stored in the EEPROM and copied back on startup (with the default setting the coordinates are stored in RAM only).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.25 GCO (get coordinate) This command makes possible to read out a previously stored coordinate. In standalone mode the requested value is copied to the accumulator register for further processing purposes such as conditioned jumps.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.26 CCO (capture coordinate) The actual position of the axis is copied to the selected coordinate variable. Depending on the global parameter 84, the coordinates are only stored in RAM or also stored in the EEPROM and copied back on startup (with the default setting the coordinates are stored in RAM only).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.27 ACO (accu to coordinate) With the ACO command the actual value of the accumulator is copied to a selected coordinate of the motor. Depending on the global parameter 84, the coordinates are only stored in RAM or also stored in the EEPROM and copied back on startup (with the default setting the coordinates are stored in RAM only).
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.28 CALCX (calculate using the X register) This instruction is very similar to CALC, but the second operand comes from the X register. The X register can be loaded with the LOAD or the SWAP type of this instruction. The result is written back to the accumulator for further processing like comparisons or data transfer.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.29 AAP (accumulator to axis parameter) The content of the accumulator register is transferred to the specified axis parameter. For practical usage, the accumulator has to be loaded e.g. by a preceding GAP instruction. The accumulator may have been modified by the CALC or CALCX (calculate) instruction.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.30 AGP (accumulator to global parameter) The content of the accumulator register is transferred to the specified global parameter. For practical usage, the accumulator has to be loaded e.g. by a preceding GAP instruction. The accumulator may have been modified by the CALC or CALCX (calculate) instruction.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.31 CLE (clear error flags) This command clears the internal error flags. This command is intended for use in standalone mode only and must not be used in direct mode. <...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.32 VECT (set interrupt vector) The VECT command defines an interrupt vector. It needs an interrupt number and a label as parameter (like in JA, JC and CSUB commands). This label must be the entry point of the interrupt handling routine.
Page 61
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Example: Define interrupt vector at target position 500 VECT 3, 500 Binary format of VECT: Byte Index Function Target- Type Motor/ Operand Operand Operand Operand Instruction address Number Bank Byte3 Byte2...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.33 EI (enable interrupt) The EI command enables an interrupt. It needs the interrupt number as parameter. Interrupt number 255 globally enables interrupts. Related command: DI, VECT, RETI Mnemonic: EI <interrupt number>...
Page 63
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Examples: Enable interrupts globally EI, 255 Binary format of EI: Byte Index Function Target- Type Motor/ Operand Operand Operand Operand Instruction address Number Bank Byte3 Byte2 Byte1 Byte0 Value (hex) Enable interrupt when target position reached...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.34 DI (disable interrupt) The DI command disables an interrupt. It needs the interrupt number as parameter. Interrupt number 255 globally disables interrupts. Related command: EI, VECT, RETI Mnemonic: DI <interrupt number>...
Page 65
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Examples: Disable interrupts globally DI, 255 Binary format of DI: Byte Index Function Target- Type Motor/ Operand Operand Operand Operand Instruction address Number Bank Byte3 Byte2 Byte1 Byte0 Value (hex) Disable interrupt when target position reached...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.35 RETI (return from interrupt) This command terminates the interrupt handling routine, and the normal program execution continues. At the end of an interrupt handling routine the RETI command must be executed.
4.6.36 Customer Specific TMCL Command Extension (user function) The user definable functions UF0… UF7 are predefined functions without topic for user specific purposes. A user function (UF) command uses three parameters. Please contact TRINAMIC for a customer specific programming. Internal function: Call user specific functions implemented in C by TRINAMIC.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.37 Request Target Position Reached Event This command is the only exception to the TMCL protocol, as it sends two replies: One immediately after the command has been executed (like all other commands also), and one additional reply that will be sent when the motor has reached its target position.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.38 BIN (return to binary mode) This command can only be used in ASCII mode. It quits the ASCII mode and returns to binary mode. Related Commands: none Mnemonic: BIN Binary representation: This command does not have a binary representation as it can only be used in ASCII mode.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 4.6.39 TMCL Control Functions There are several TMCL control functions, but for the user are only 136 and 137 interesting. Other control functions can be used with axis parameters. Instruction number...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5 Axis Parameters The following sections describe all axis parameters that can be used with the SAP, GAP, AAP, STAP, and RSAP commands. EANING OF THE LETTERS IN COLUMN CCESS Access...
Page 72
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. Absolute max. The maximum value is 255. This value means 0… 255 current 100% of the maximum current of the module. (CS / Current The current adjustment is within the range 0…...
Page 73
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. Microstep full step 0… 8 resolution half step 4 microsteps 8 microsteps 16 microsteps 32 microsteps 64 microsteps 128 microsteps 256 microsteps Reference switch For three-switch mode: a position range, 0…...
Page 74
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. Chopper Hysteresis start setting. Please remark, that 0… 8 hysteresis start this value is an offset to the hysteresis end value. Chopper off time The off time setting controls the minimum 0 / 2…...
Page 75
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. stallGuard2 filter Enables stallGuard2 filter more enable precision of the measurement. If set, reduces measurement frequency measurement per four fullsteps. In most cases it is expedient to set the filtered mode before using coolStep.
Page 76
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. smartEnergy Sets the motor current which is used below 0… 255 slow run current the threshold speed. Random chopper Enable randomizing the slow decay phase...
Page 77
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description Range [Unit] Acc. TMC260 driver Bit 0 stallGuard2 status error flags (1: threshold reached) Bit 1 Overtemperature (1: driver is shut down due to overtemperature) Bit 2...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5.1 stallGuard2 Related Parameters The module is equipped with TMC260 motor driver chip. The TMC260 features load measurement that can be used for stall detection. stallGuard2 delivers a sensorless load measurement of the motor as well as a stall detection signal.
Page 79
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Axis Parameter Description stallGuard2 This signed value controls stallGuard2 threshold level for stall output and sets threshold the optimum measurement range for readout. A lower value gives a higher sensitivity. Zero is the starting value. A higher value makes stallGuard2 less sensitive and requires more torque to indicate a stall.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5.2 coolStep Related Parameters The figure below gives an overview of the coolStep related parameters. Please have in mind that the figure shows only one example for a drive. There are parameters which concern the configuration of the current.
Page 81
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) ARAMETERS NEEDED FOR ADJUSTING THE COOL TEP FEATURE Number Axis parameter Description The maximum value is 255. This value means 100% of the maximum current of the module. The current adjustment is within the range 0…...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5.3 Reference Search The built-in reference search feature (instruction RFS, no. 13) offers switching point calibration and supports up-to two end / stop / limit switches and one home switch. Depending on the selected reference search mode (see table below), one of the limit switches or the home switch might be used as reference switch and the end / limit switches are either respected or ignored during the reference search.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) XIS PARAMETERS RELATED TO REFERENCE SEARCH Number Axis Parameter Description Reference switch The logical state of the home switch. status Right limit The logical state of the right limit switch. switch status...
Page 84
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) SAP 193, 0, 2 Search right stop switch, then search left stop switch : reference search speed (axis parameter 194) : reference switch speed (axis parameter 195) start stop left limit / end / stop switch right limit / end / stop switch Figure 5.3: Search right stop switch, then search left stop switch...
Page 85
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) SAP 193, 0, 6 Search home switch in positive direction, reverse direction in case right stop switch is hit : reference search speed (axis parameter 194) : reference switch speed (axis parameter 195)
Motors that have the same group index belong to the same group All motors that belong to one group must be controlled by the same TMCM-6110 module. This method allows a great flexibility for grouping motors together. For example, it is possible to form two groups of three motors, or three groups of two motors, or one group of four motors or any other combinations.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5.5 Calculation: Velocity and Acceleration vs. Microstep- and Fullstep-Frequency The values of the axis parameters, sent to the TMC429 do not have typical motor values, like rotations per second as velocity. But these values can be calculated from the TMC429 parameters, as shown in this document.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 5.5.2 Fullstep Frequency To calculate the fullstep frequency from the microstep frequency, the microstep frequency must be divided by the number of microsteps per fullstep. fsf: fullstep-frequency The change in the pulse rate per time unit (...
TMCL-IDE and serve for loading microstep and driver tables. Normally these parameters remain untouched. If you want to use them for loading your specific values with your PC software please contact TRINAMIC and ask how to do this. Otherwise you might cause damage on the motor driver!
Page 90
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Global parameter Description Range Acc. EEPROM magic Setting this parameter to a different value as $E4 0… 255 will cause re-initialization of the axis and global parameters (to factory defaults) after the next power up.
Page 91
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Number Global parameter Description Range Acc. End switch polarity 0 - normal polarity motor axis 0..5 0,1,2,3 1 - reverse polarity motor axis 0..2, normal polarity motor axis 3..5 2 - normal polarity motor axis 0..2, reverse polarity motor axis 3..5...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) to receive too late. To overcome this problem, set the telegram pause time (global parameter #75) of the module to 15 (or more if needed) by issuing an SGP 75, 0, 15 command in direct mode. The parameter will automatically be stored in the configuration EEPROM.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 6.4 Bank 3 Bank 3 contains interrupt parameters. Some interrupts need configuration (e.g. the timer interval of a timer interrupt). This can be done using the SGP commands with parameter bank 3 (SGP <type>, 3, <value>). The priority of an interrupt depends on its number.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 7 TMCL Programming Techniques and Structure 7.1 Initialization The first task in a TMCL program (like in other programs also) is to initialize all parameters where different values than the default values are necessary. For this purpose, SAP and SGP commands are used.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 7.4 Using Variables User variables can be used if variables are needed in your program. They can store temporary values. The commands SGP, GGP and AGP are used to work with user variables: is used to set a variable to a constant value (e.g.
Page 96
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) XAMPLE //Jump commands to the TMCL routines Func1: JA Func1Start Func2: JA Func2Start Func3: JA Func3Start Func1Start: MVP ABS, 0, 1000 WAIT POS, 0, 0 MVP ABS, 0, 0 WAIT POS, 0, 0...
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) 9 Revision History 9.1 Firmware Revision Author Version Date Description 1.10 2011-AUG-22 First version supporting all features 1.11 2011-SEP-05 WAIT command updated. Inverting home switch during reference search corrected. 1.12 2011-DEC-20 STAP/RSAP 140 corrected.
TMCM-6110 TMCL Firmware V1.31 Manual (Rev. 1.09 / 2015-FEB-24) Version Date Author Description Chapter 5.3 Reference Search corrected and updated. 1.08 2014-DEC-10 Several minor additions for clarification Chapter 5.5, description and default values for axis 1.09 2015-FEB-24 parameter pulse_div und ramp_div corrected.
Need help?
Do you have a question about the TMCM-6110 and is the answer not in the manual?
Questions and answers