Delta Tau GEO BRICK LV Manual Do Utilizador
Turbo PMAC User Manual
Synchronizing Turbo PMAC to External Events
349
Step 2: Interpolation
Once decoded and counted, the value from the signal is brought into the encoder conversion table once
per servo cycle, exactly as a position feedback signal would be. Using the 1/T conversion method here is
highly recommended; because this method gives a very good sub-count interpolation of the signal (using
timers associated with the counter) that significantly enhances the smoothness of the time base
information. Make sure that the conversion table is set up to process the counter from the input signal
this way. The factory-default configuration for the encoder conversion table is for 1/T conversion of the
present encoder counters. See the description of the encoder conversion table for more details.
per servo cycle, exactly as a position feedback signal would be. Using the 1/T conversion method here is
highly recommended; because this method gives a very good sub-count interpolation of the signal (using
timers associated with the counter) that significantly enhances the smoothness of the time base
information. Make sure that the conversion table is set up to process the counter from the input signal
this way. The factory-default configuration for the encoder conversion table is for 1/T conversion of the
present encoder counters. See the description of the encoder conversion table for more details.
Step 3: Time Base Calculation
A separate entry in the encoder conversion table takes the interpolated position information from the
above step, subtracts out the interpolated position information from the previous servo cycle, and
multiplies this difference by a scale factor to produce the time base value for the servo cycle. (This time
base value is then a multiplying factor in the position update calculations, so the amount of update is
proportional to the number of counts received from the time base signal in the last servo cycle.)
above step, subtracts out the interpolated position information from the previous servo cycle, and
multiplies this difference by a scale factor to produce the time base value for the servo cycle. (This time
base value is then a multiplying factor in the position update calculations, so the amount of update is
proportional to the number of counts received from the time base signal in the last servo cycle.)
The two set-up items in this step are the source of information (the interpolated position register) and the
scale factor. Both of these are entries (I-variables) in the encoder conversion table. See the description of
the table for more details on how to enter these.
scale factor. Both of these are entries (I-variables) in the encoder conversion table. See the description of
the table for more details on how to enter these.
The equation for the time base conversion is:
% value = (100.0 * SCALE_FACTOR * INPUT_FREQ) / 2
N
where the % value (also known as feedrate override value) is what controls the rate of position update –
when it equals 100.0, programs and moves operate in “real time” (i.e. at the times and speeds specified in
the program).
when it equals 100.0, programs and moves operate in “real time” (i.e. at the times and speeds specified in
the program).
SCALE_FACTOR is the integer value that must be determined to set up time base following properly.
INPUT_FREQ is the count rate (as determined by the signal and I7mn0) in counts/millisecond. N is
equal to 17 for normal (untriggered) time base (2
INPUT_FREQ is the count rate (as determined by the signal and I7mn0) in counts/millisecond. N is
equal to 17 for normal (untriggered) time base (2
17
is 131,072); N is 14 for triggered time base (2
14
is
16,384) – see below for details of triggered time base.
To set the scale factor, decide on a real-time input count frequency – the rate of input counts at which the
program and moves should execute at the specified rate. Since this is the rate at which the value will be
100.0, solve for the scale factor as:
program and moves should execute at the specified rate. Since this is the rate at which the value will be
100.0, solve for the scale factor as:
SCALE_FACTOR = 2
N
/ (REAL_TIME_INPUT_FREQ)
Since the scale factor must be an integer, and we are dividing into a power of 2, make the real time input
frequency a power of 2 in units of counts/msec. For instance, if there is a system where the typical full-
speed input count frequency is 60,000 counts/second, define the real-time input frequency to be 64
counts/msec. This would then make the scale factor for untriggered time base equal to 131,072 / 64 =
2,048.
frequency a power of 2 in units of counts/msec. For instance, if there is a system where the typical full-
speed input count frequency is 60,000 counts/second, define the real-time input frequency to be 64
counts/msec. This would then make the scale factor for untriggered time base equal to 131,072 / 64 =
2,048.
So far, all we have is a value in a register proportional to the master frequency. Now we must make use
of this value to control our motion program.
of this value to control our motion program.
Step 4: Using the Time-Base Calculation
Time base values work on a coordinate system. Each coordinate system has an I-variable that tells it
where to look for its time base information. This variable is Isx93 for Coordinate System x. The default
values for Isx93 are the addresses of registers that are under software control, not the control of an
external frequency. For a coordinate system that you wish to be under external time-base control, you
must put the address of the scaled time-base value determined above in the encoder conversion table.
where to look for its time base information. This variable is Isx93 for Coordinate System x. The default
values for Isx93 are the addresses of registers that are under software control, not the control of an
external frequency. For a coordinate system that you wish to be under external time-base control, you
must put the address of the scaled time-base value determined above in the encoder conversion table.