User's Manual

PMAC User Manual
Writing Programs for PMAC 175
The acceleration parameters TA and TS can change between each move. If the final deceleration to a
stop should use a different TA or TS from the previous blending acceleration time in a sequence, declare
the new TA or TS after the final move command in the sequence, but before the DWELL or other feature
that stops the continuous sequence.
Rapid-Mode Moves
Rapid mode moves are essentially jog moves for each motor assigned to an axis specified in the move.
The acceleration for each motor is controlled by the values of Ix19 to Ix21 (jog acceleration limit and
time) in force at the time of the move. The speed of the move is controlled either by the jog speed
parameter Ix22 or the maximum-speed parameter Ix16. Global variable I50 controls which of these is
used for all motors (I50=0 means Ix22 is used; I50=1 means Ix16 is used).
On a multi-axis rapid mode move, only the motor calculated to take the longest time at its specified speed
will actually be commanded to move at that speed. The commanded speeds for other motors are lessened
so that they have the same ratio of distance to speed. This makes the move path approximately linear.
However, if the acceleration times are not the same for all motors, the commanded move path will not be
perfectly linear.
A rapid-mode move is never blended with another move; all motors will be commanded to at least a
momentary stop before the next move is commanded to start.
A motion program is put into this mode using the RAPID statement. It is taken out of this mode by
another move mode command (e.g., LINEAR, CIRCLE1, CIRCLE2, PVT, SPLINE1). RAPID is
equivalent to the RS-274 G-Code G00.
Motion Program Move-Until-Trigger
The move-until-trigger function permits a programmed move to be interrupted by a trigger and terminated
by a move relative to the position at the time of the trigger. It is very similar to a homing search move,
except that the motor zero position is not altered, and there is a specific destination in the absence of a
trigger.
The move-until-trigger is a variant of the RAPID move mode on PMAC. Speeds and accelerations are
governed by the same variables as for regular rapid moves. The move-until-trigger function for an axis,
and therefore for any motor(s) defined to that axis, is specified by adding a ^{data} specifier to the
move command for the axis, where {data} is the distance to be traveled relative to the trigger before
stopping.
This makes the axis command for a move-until trigger {axis}{data} ^{data}, something like
X50^-5. The first value is the destination position or distance (depending on whether the axis is in
absolute or incremental mode) to be traveled in the absence of a trigger. The second value is the distance
to be traveled relative to the position at the time of the trigger. This value is always expressed as a
relative distance, regardless of whether the axis is in absolute or incremental mode. Both values are
expressed in the axis user units.
Other axes can be specified on the same line without a colon and second value. These axes will do a
simultaneous normal rapid move. However, if an axis matrix transformation is active for the X, Y, and Z
axes in this coordinate system (TSELECT has been used to select a matrix), or if there is a move-until-
trigger on any of the X, Y, and Z axes, the other axes in the XYZ triplet will also execute a move until
trigger. If no post-trigger move is specified for the axis, the post-trigger distance is assumed to be zero.
If no move at all is specified for the axis, a zero-distance pre-trigger move is assumed.
The trigger condition for each motor is set up just as for homing search moves:
Ix03 bit 17 specifies whether input flags are used to create the trigger, or the warning following error
limit status bit is the trigger (torque-limited triggering): 0=flags, 1=error status