Delta Tau GEO BRICK LV ユーザーズマニュアル
Turbo PMAC User Manual
Writing and Executing Motion Programs
315
This size of the buffer for these assignments must be at least as great as the largest number of assignments
expected during the time for lookahead. There is no penalty for reserving more memory for these
synchronous M-variable assignments than is needed, other than the loss of this memory for other uses.
expected during the time for lookahead. There is no penalty for reserving more memory for these
synchronous M-variable assignments than is needed, other than the loss of this memory for other uses.
Note:
The buffer reserved in this manner for synchronous M-variables under lookahead
is distinct from the fixed-size buffer used for synchronous M-variables without
lookahead.
is distinct from the fixed-size buffer used for synchronous M-variables without
lookahead.
For example, the command &1 DEFINE LOOKAHEAD 500,50 creates a lookahead buffer for
Coordinate System 1 that can store 500 segments for each motor assigned to the coordinate system at that
time, plus 50 synchronous M-variable assignments.
Coordinate System 1 that can store 500 segments for each motor assigned to the coordinate system at that
time, plus 50 synchronous M-variable assignments.
Running a Program with Lookahead
The lookahead function is active when a motion program is run in a coordinate system, provided the
following conditions are true:
following conditions are true:
1. The coordinate system is in segmentation mode (Isx13 > 0).
2. The coordinate system is told to look ahead (Isx20 > 0).
3. A lookahead buffer has been defined for the coordinate system since the last board power-up/reset, or
2. The coordinate system is told to look ahead (Isx20 > 0).
3. A lookahead buffer has been defined for the coordinate system since the last board power-up/reset, or
if the lookahead buffer structure has been saved with I14 = 1.
4. The motion program is executing LINEAR or CIRCLE-mode moves.
The lookahead function is active under these conditions even when Turbo PMAC is performing inverse-
kinematic calculations every segment to convert tip positions to joint positions. This permits the user to
write a motion program in convenient tip coordinates, yet still observe all joint-motor limits automatically.
This is particularly important if the tip path passes near a singularity, requesting very high joint velocities
and accelerations.
kinematic calculations every segment to convert tip positions to joint positions. This permits the user to
write a motion program in convenient tip coordinates, yet still observe all joint-motor limits automatically.
This is particularly important if the tip path passes near a singularity, requesting very high joint velocities
and accelerations.
Other move modes – RAPID, SPLINE, and PVT – can be executed with the lookahead buffer defined, but
the lookahead function is not active when these moves are being executed.
the lookahead function is not active when these moves are being executed.
Note:
Absolutely no change is required to the motion program to utilize the lookahead
function.
function.
It is important to realize the implications of the lookahead function on several aspects of the motion
program. Each of these areas is covered below.
program. Each of these areas is covered below.
Vector Feedrate
Without lookahead, the vector feedrate value (Fxxx) is a command for each programmed move block in
the motion program. That is, each move is calculated so that it is traversed at the programmed vector
feedrate (speed). With lookahead active, the feedrate value is only a constraint. The move will never be
executed at a higher speed, but it may be executed at slower speeds during some or all of the move as
necessary to meet the motor constraints.
the motion program. That is, each move is calculated so that it is traversed at the programmed vector
feedrate (speed). With lookahead active, the feedrate value is only a constraint. The move will never be
executed at a higher speed, but it may be executed at slower speeds during some or all of the move as
necessary to meet the motor constraints.
If the move is programmed by move time instead of feedrate, the programmed move time becomes a
(minimum) constraint; the move will never be executed in less time, but it may be executed in greater
time.
(minimum) constraint; the move will never be executed in less time, but it may be executed in greater
time.
Acceleration Time
The programmed acceleration times – Isx87 and Isx88 by default, or TA and TS in the motion program,
are the times before lookahead. The lookahead function will control the actual acceleration times that are
executed, but the programmed acceleration times are still important for two reasons.
are the times before lookahead. The lookahead function will control the actual acceleration times that are
executed, but the programmed acceleration times are still important for two reasons.