Delta Tau GEO BRICK LV 用户手册
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.
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.
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.
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.
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.
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.”
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.
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.
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.
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.
according to the jog/home acceleration parameters Ixx19, Ixx20, and Ixx21.