User's Manual

Turbo PMAC User Manual
276 Writing and Executing Motion Programs
This section covers the acceleration limiting algorithms of Mode 1 only. The acceleration limiting
function of the special lookahead buffer (Mode 3) is discussed in a manual section devoted to that
function, below.
If the acceleration calculated from the motion exceeds the maximum programmed acceleration (set by
Ixx17 in counts/msec
2
) for any motor involved in the move, the acceleration for all motors in the move is
decreased in proportion so that no motor exceeds this limit. The path through space is not changed, nor is
the shape of the velocity profile for any motor. If you want to specify acceleration rate directly, set TA
and TS to very small so as always to violate the limit, in which case the acceleration is controlled by the
motors’ I-variables Ixx17.
Note:
Unless the coordinate system is in segmentation mode (Isx13 > 0), do not set both
the TA and TS (Isx87 and Isx88) times to zero, even if you are planning to rely on
the acceleration. This would cause a divide-by-zero error, yielding possible erratic
performance.
When Too Effective
When blending linear moves together, the Ixx17 limit is enforced even for the intermediate decelerations
to a stop that are removed to blend into the next move. As Turbo PMAC calculates each move in the
blended sequence, it has to assume that it could be the last move in the sequence, and it will try to make
sure that the deceleration to a stop at the programmed position obeys this limit. This can result in a
deceleration time longer than the programmed move time (specified either directly with TM, or indirectly
by distance over F feedrate), which will cause the move to execute at lower than the programmed speed.
This can be especially limiting when moves are broken into very small pieces to be blended together. The
Ixx17 limit must be set higher than the top speed divided by the smallest segment time in order not to
limit the speed. This can make it too high for effective acceleration control.
When Not Effective Enough
Without the special lookahead buffer enabled, Turbo PMAC looks two moves ahead of actual move
execution to perform its acceleration limit, and can recalculate these two moves to keep the accelerations
under the Ixx17 limit. However, there are cases in which more than two moves, some much more than
two, would have to be recalculated in order to keep the accelerations under the limit. In these cases,
Turbo PMAC will limit the accelerations as much as it can, but because the earlier moves have already
been executed, they cannot be undone, and therefore the acceleration limit will be exceeded.
If you desire robust acceleration control in cases where the acceleration limiting may require modifying
the speed of several moves, the special lookahead buffer should be used. See the Turbo PMAC
Lookahead Function section in this manual for details.
Minimum Move Time
If a feedrate-specified move segment is so short in distance that it cannot reach its target velocity, it will
spend its entire time in acceleration (yielding a triangular rather than trapezoidal profile). The minimum
time for such a move is thus the specified acceleration time (the larger of TA or 2*TS). For a single move
remember to add on the extra acceleration time to decelerate to a stop.
In a time-specified move segment, if TM is less than the acceleration time, the segment will be done in
acceleration time, not TM time.
In other words, the acceleration time is the minimum time for an individual blended move or blended
move segment. This is in part a protection against move times getting so short that Turbo PMAC cannot
calculate them in real time. If you are working with very short move segments and your move sequence
is going more slowly than you want, this acceleration-time limit may well be causing the problem.