Delta Tau GEO BRICK LV User Manual

Page of 440
 
Turbo PMAC User Manual 
146
 
Motor Compensation Tables and Constants 
This can be used, for example, to average the readings of two sensors on opposite sides of a rotary table to 
take out the eccentricity, or to calculate the skew on a gantry by taking the difference of sensors on the 
two sides. 
This entry can use as source data only results in the conversion table.  It is strongly encouraged to use 
results from earlier in the table; using results from later in the table means results from the previous servo 
cycle are used.   
This is a one-line entry, split into four parts.   
• 
The first part is the first hex digit, which is always “E” for this type of entry.   
• 
The second part is the second hex digit (bits 16 – 19), which contains four mode-switch bits: 
• 
Bit 19, if set to 1, integrates the final result, adding the sum or difference calculated each cycle to 
the final result of the previous cycle. 
• 
Bit 18, if set to 1, instructs Turbo PMAC to ignore the second source, permitting this entry to 
simply negate and/or integrate a single value. 
• 
Bit 17, if set to 1, negates the second entry before adding it into the result, creating an effective 
subtraction. 
• 
Bit 16, if set to 1, negates the first entry before adding it into the result. 
• 
The third part uses the third and fourth hex digits as a number representing the offset from the 
beginning of the table of the second source used.  This can be calculated by subtracting 8000 from the 
I-variable number that corresponds to this result.   
• 
The fourth part uses the fifth and sixth hex digits as a number representing the offset from the 
beginning of the table of the first source used.  This can be calculated by subtracting 8000 from the I-
variable number that corresponds to this result.   
Examples: 
Using the following entries in the table as source data: 
I8000=$078200 
; 1/T interpolation of Servo IC 2 Encoder 1 
I8001=$078208 
; 1/T interpolation of Servo IC 2 Encoder 2 
I8002=$078210 
; 1/T interpolation of Servo IC 2 Encoder 3 
I8003=$078218 
; 1/T interpolation of Servo IC 2 Encoder 4 
I8004=$F78C00 
; Byte-wide parallel read of Acc-14E data 
I8005=$314000 
; Filtered, 20 bits, low byte, start at bit 0 
I8006=256 
; Max change of 256 LSBs per servo cycle 
The sum and difference entries can be used to do several processes: 
I8012=$E00001 
; Sum of results from I8000 and I8001 
I8013=$E10203 
; Subtract result of I8003 from result of I8002 
I8014=$E40006 
; Negate result of I8006 
I8015=$EC000D 
; Integrate result of I8013 
Time Base (Differentiation) 
Time-base entries in the conversion table provide scaled digital differentiation of source data.  Usually, the 
source data is encoder count value, so the differentiation calculates a frequency value.  This frequency value 
can then be used as an external time base for a coordinate system in order to slave the motion of axes in the 
coordinate system to the master encoder, creating an electronic cam.  Refer to the Synchronizing Turbo 
PMAC to External Events section for details in the use of this data for time base control.