Delta Tau GEO BRICK LV User Manual

Page of 440
Turbo PMAC User Manual 
Writing and Executing Motion Programs
 
287
 
No Blending 
A rapid-mode move is never blended with another move at the programmed end-point; all motors will be 
commanded to at least a momentary stop before the next move is commanded to start.  However, unlike 
in other modes, rapid-mode moves may be broken into at arbitrary points along the trajectory to change to 
a different destination.  This can be implemented with the move-until-trigger and altered-destination 
functions described below. 
Motion Program Move-Until-Trigger 
The move-until-trigger function permits a programmed rapid-mode move to be interrupted by a trigger 
and terminated by a move relative to the position at the time of the trigger.  It is 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 Turbo 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 motors 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 caret 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), 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: 
• 
Ixx97 bit 1 specifies whether input flags are used to create the trigger, or the warning-following-error 
limit status bit is the trigger (the magnitude of the following error exceeds Ixx12): 0=flags, 1=error 
status.  Triggering on following error is often known as “torque-limited triggering.” 
• 
If input flags are to create the trigger, Ixx25 specifies the flag register. 
• 
If input flags are to create the trigger, Encoder/Flag I-variables I7mn2 and I7mn3 for this channel 
specify which edges of which signals will cause the trigger. 
• 
Ixx97 bit 0 specifies whether the hardware-captured counter value is used as the trigger position – 
suitable for incremental encoder signals, real or simulated – or the software-read position is used 
instead – suitable for other types of feedback (0=hardware, 1=software).  The software-read position 
must be used if the warning-following-error status is used for the trigger. 
Note that each motor has an independent triggering function and move relative to the trigger, even if the 
motors are assigned to the same axis.  If a common trigger signal is desired for multiple motors, the same 
trigger signal must be wired into the flag inputs for all of those motors. 
Turbo PMAC will blend each motor smoothly from the pre-trigger move to the post-trigger move 
according to the jog/home acceleration parameters Ixx19, Ixx20, and Ixx21.