Delta Tau GEO BRICK LV User Manual

Page of 440
 
Turbo PMAC User Manual 
194
 
Setting Up the Servo Loop 
then the correction applied to a 16-bit DAC at 600 counts would be: 
[ ]
(
)
bits
3
50
83
500
750
500
600
50
Correction
=
+
=
 
How to Calculate Table Entry Values 
Torque compensation tables are most commonly used to correct for torque ripple in motors due to 
“cogging torque” effects.  The simplest way of determining the entries in the table is to command a move 
to each point you desire in the table and using integral gain to drive the error to zero, wait for the motor to 
settle at this position.  Then read the command output of the servo loop as a 24-bit value.  This value is 
best read in the motor’s quadrature/torque command value (X:$0000BF for Motor 1).  Read as a 24-bit 
value (e.g. use RX:$BF in the Executive program’s Watch window), this can be the entry into the table 
for that position. 
Reporting Table Information 
The header information for a torque compensation table – entered with the DEFINE TCOMP command – 
can be queried with the LIST TCOMP DEF command.  The contents of the table can be queried with the 
LIST TCOMP command 
Enabling and Disabling Tables 
All torque compensation tables (as well as position and backlash compensation tables) are enabled when 
I51 is set to 1.  All of these tables are disabled when I51 is set to 0. 
Active Calculation of Corrections 
The torque compensation is performed inside the servo loop (every servo cycle) to obtain the maximum 
speed and accuracy.  Turbo PMAC takes the position of the motor and finds the matching position in the 
table.  Typically this is between two entries in a table, so Turbo PMAC linearly interpolates (weighted 
average) between these entries to obtain the correction for the current servo cycle.  It then adds this 
correction to the desired output from the position/velocity servo loop of the motor.  Both the loop output 
and the correction are 24-bit values at this point.   
The torque correction for a motor is stored each servo cycle in a specific register for the motor.  For 
Motor 1, this is the register at Y:$0000BF, and the net output with correction is stored at X:$0000BF.  If 
I51 is set to 0, it is permissible to write values directly to the correction register.  Regardless of the setting 
of I51, the value in this register is added into the net desired output value for the motor every servo cycle. 
Deleting Tables 
The DELETE TCOMP command erases the torque compensation table for the presently addressed motor.  
Torque compensation tables must be deleted in order from those assigned to the lower-numbered motors 
to those assigned to higher numbered motors.