Справочник Пользователя для Delta Tau GEO BRICK LV
Turbo PMAC User Manual
Writing and Executing Motion Programs
289
If a RAPID-mode move is in progress when the command is issued, Turbo PMAC will extend the current
trajectory of each motor for Ixx92 milliseconds. At that point, it will break into the trajectory of each
motor, compute a smooth blending for each motor to the RAPID-mode trajectory toward the new
destination, and execute the modified trajectory. Because the altered-destination move is itself a RAPID-
mode move, its destination can be modified with a subsequent altered-destination command.
trajectory of each motor for Ixx92 milliseconds. At that point, it will break into the trajectory of each
motor, compute a smooth blending for each motor to the RAPID-mode trajectory toward the new
destination, and execute the modified trajectory. Because the altered-destination move is itself a RAPID-
mode move, its destination can be modified with a subsequent altered-destination command.
If a move of some other mode is in progress when this command is issued, Turbo PMAC will reject the
command with an error.
command with an error.
Use of Altered Destination
The altered-destination command is most often used to modify the destination of a RAPID-mode move
executing from the coordinate system’s rotary motion-program buffer as the last move in that buffer. In
typical use, the RAPID move will be started with an approximate idea of the final destination, while some
sensor, such as a vision system, determines the exact location. The altered-destination command is then
sent to the coordinate system with the exact coordinates of the final destination.
executing from the coordinate system’s rotary motion-program buffer as the last move in that buffer. In
typical use, the RAPID move will be started with an approximate idea of the final destination, while some
sensor, such as a vision system, determines the exact location. The altered-destination command is then
sent to the coordinate system with the exact coordinates of the final destination.
If the altered-destination command is not received before the end of the move, there will be a momentary
pause before the move to the final end position is started, but all axes end up in the same location as if the
command were received before the end of the move. Note, however, that in this case, certain status bits
such as desired-velocity-zero, and in-position may get set at the end of the initial move, and so cannot be
counted on by themselves to show that the modified end-point has been reached.
pause before the move to the final end position is started, but all axes end up in the same location as if the
command were received before the end of the move. Note, however, that in this case, certain status bits
such as desired-velocity-zero, and in-position may get set at the end of the initial move, and so cannot be
counted on by themselves to show that the modified end-point has been reached.
The altered-destination command can also be used to modify a RAPID-mode move that is not at the end
of the rotary buffer, or one that is in a “fixed” motion-program buffer. In this case, there are a couple of
things to watch. First, if axes are in incremental mode, the subsequent moves in the program are modified
by the altered destination. Second, if the altered-destination command is received after the RAPID-mode
move is finished; it may be rejected with an error, depending on what the program is executing
subsequently.
of the rotary buffer, or one that is in a “fixed” motion-program buffer. In this case, there are a couple of
things to watch. First, if axes are in incremental mode, the subsequent moves in the program are modified
by the altered destination. Second, if the altered-destination command is received after the RAPID-mode
move is finished; it may be rejected with an error, depending on what the program is executing
subsequently.
Spline-Mode Moves
Turbo PMAC can perform two types of cubic splines (cubic in terms of the position-vs.-time equations)
to blend together a series of points on an axis. Its SPLINE1 mode is a uniform non-rational cubic B-
spline and its SPLINE2 mode is a non-uniform non-rational cubic B-spline. It can, of course, do either
spline for all of the axes simultaneously. Splining is particularly suited to odd (non-Cartesian)
geometries, such as radial tables and rotary-axis robots, where there are odd axis profile shapes even for
regular tip movements.
to blend together a series of points on an axis. Its SPLINE1 mode is a uniform non-rational cubic B-
spline and its SPLINE2 mode is a non-uniform non-rational cubic B-spline. It can, of course, do either
spline for all of the axes simultaneously. Splining is particularly suited to odd (non-Cartesian)
geometries, such as radial tables and rotary-axis robots, where there are odd axis profile shapes even for
regular tip movements.
How They Work
In SPLINE1 mode, a long move is split into equal-time segments, each of TM or TA time (depending on
the setting of global variable I42). Each axis is given a destination position in the motion program for
each segment with a normal move command line like X1000Y2000. Looking at the move command
before this and the move command after this, Turbo PMAC creates a cubic position-vs-time curve for
each axis so that there is no sudden change of either velocity or acceleration at the segment boundaries.
The commanded position at the segment boundary may be “relaxed” slightly to meet the velocity and
acceleration constraints (see figures below).
the setting of global variable I42). Each axis is given a destination position in the motion program for
each segment with a normal move command line like X1000Y2000. Looking at the move command
before this and the move command after this, Turbo PMAC creates a cubic position-vs-time curve for
each axis so that there is no sudden change of either velocity or acceleration at the segment boundaries.
The commanded position at the segment boundary may be “relaxed” slightly to meet the velocity and
acceleration constraints (see figures below).
The spline move time as used in the actual spline calculations is a 24-bit fixed-point value with 12 bits of
integer and twelve bits of fraction. This provides a range of up to 4096 milliseconds (just over 4 seconds)
with a resolution of about ¼-microsecond. If I42 is set to the default value of 0, this time is specified in a
TM command, which supports the fractional resolution. If I42 is set to 1, this time is specified in a TA
command, which does not support the fractional resolution. This mode is mainly for compatibility with
older non-Turbo PMAC applications.
integer and twelve bits of fraction. This provides a range of up to 4096 milliseconds (just over 4 seconds)
with a resolution of about ¼-microsecond. If I42 is set to the default value of 0, this time is specified in a
TM command, which supports the fractional resolution. If I42 is set to 1, this time is specified in a TA
command, which does not support the fractional resolution. This mode is mainly for compatibility with
older non-Turbo PMAC applications.