Delta Tau GEO BRICK LV User Manual

Page of 440
 
Turbo PMAC User Manual 
190
 
Setting Up the Servo Loop 
Backlash Compensation 
Turbo PMAC can perform sophisticated backlash compensation for all motors.  If the position feedback 
utilizes a sensor on the motor and there is physical backlash in the coupling to the load (as in a typical 
gear train), the physical position of the load for a given sensor-reported position will differ depending on 
the direction of motion.  Unless this is compensated for, significant position errors can result in the 
application. 
With Turbo PMAC’s backlash compensation, on reversal of the direction of the commanded velocity, a 
pre-programmed backlash distance is added to or subtracted from the commanded position.  This 
backlash distance can be constant over the travel of the motor, or it can be a function of motor position.  
The rate at which the backlash is introduced or removed is programmable, as is the magnitude of the 
reversal required for backlash to be introduced or removed.  The backlash amount is hidden from any 
position reporting. 
Constant Backlash Parameter 
Variable Ixx86 for Motor xx is the constant backlash distance parameter.  When the direction of the 
motor’s commanded movement changes from positive to negative, this value is introduced into the active 
backlash compensation register, which is subtracted from the nominal commanded position.  When the 
direction of the motor’s commanded movement changes from negative to positive, the value of the 
backlash compensation register is reduced to zero.   
Note that a positive value of Ixx86 adds extra distance to the travel of the motor on reversal, which is 
what is desired to compensate for true physical backlash.  (The only known practical use of a negative 
backlash parameter is when the motor is electronically geared as a slave to an axis with physically greater 
backlash.)  The units of Ixx86 are 1/16 of a count, so the value should be 16 times the number of counts 
of backlash compensation required (e.g. Ixx86=72 specifies 4.5 counts of backlash). 
Backlash Take-Up Rate 
Variable Ixx85 controls the rate at which backlash is introduced or removed upon reversal for Motor xx.  
This permits the user to optimize for swift but smooth backlash compensation.  When reversal is detected, 
each background cycle (between each scan of each PLC) an amount equal to Ixx85 is added to or subtracted 
from the active backlash compensation register, as appropriate, until a value Ixx86 or 0 in that register is 
reached.  In general, the highest value of Ixx85 that produces smooth transitions should be used. 
Backlash Hysteresis 
Variable Ixx87 controls for Motor xx the number of counts in the new direction of the net commanded 
position that must be seen before PMAC determines that a reversal has occurred and the backlash must be 
changed.  As such, it acts as a “hysteresis” term.  It is particularly important if a master encoder is used to 
drive the motor, so slight dithering in the master encoder does not cause repeated introduction and 
removal of backlash.  Ixx87 has units of 1/16 count, so the default value of 64 provides a 4-count 
hysteresis. 
Backlash Compensation Tables 
A backlash compensation table created with the DEFINE BLCOMP command can be used to create 
backlash distances that vary with the position of the addressed motor.  Most often this is used in 
conjunction with a leadscrew compensation table to create the effect of a bi-directional leadscrew 
compensation table.  In this case, the backlash table (added to the constant backlash parameter) contains 
the difference between the positive-going compensation and the negative-going compensation.  Delta 
Tau’s Flycal calibration program for the PC can generate these tables automatically.