Delta Tau GEO BRICK LV Manuale Utente
Turbo PMAC User Manual
Setting Up a Coordinate System
267
Coordinate System Transformations with Kinematics
A coordinate system established with kinematic algorithms can still use the on-line {axis}= and
buffered PSET translations of the axis programming origins, just as for a coordinate system with standard
axis definition statements. When one of these commands is executed, Turbo PMAC executes the inverse
kinematic algorithm to calculate a new position bias register (suggested M-variable Mxx64) for each
affected motor in the coordinate system. This is done invisibly to the user; the effect is to offset the
programming origin for the axis. Axis transformations for the X, Y, and Z axes may also be used with the
kinematic algorithms.
buffered PSET translations of the axis programming origins, just as for a coordinate system with standard
axis definition statements. When one of these commands is executed, Turbo PMAC executes the inverse
kinematic algorithm to calculate a new position bias register (suggested M-variable Mxx64) for each
affected motor in the coordinate system. This is done invisibly to the user; the effect is to offset the
programming origin for the axis. Axis transformations for the X, Y, and Z axes may also be used with the
kinematic algorithms.
Executing the Kinematic Programs
Once the forward-kinematic and inverse-kinematic program buffers have been created for a coordinate
system, Turbo PMAC will execute them automatically at the proper times once the kinematic calculations
have been enabled by setting coordinate system I-variable Isx50 to 1. No modification to a motion
program is required for access to the kinematic programs at the proper time.
system, Turbo PMAC will execute them automatically at the proper times once the kinematic calculations
have been enabled by setting coordinate system I-variable Isx50 to 1. No modification to a motion
program is required for access to the kinematic programs at the proper time.
The forward-kinematic program is executed automatically each time an R (run) or S (step) command is
given to the coordinate system if Isx50 is 1. This is done to ensure that the starting tip (axis) position is
correct for the calculation of the initial move, even if joint (motor) moves, such as jogs, have been done
since the last programmed move. The forward-kinematic program is also executed automatically each
time a PMATCH command is given to the coordinate system if Isx50 is 1.
(With Isx50 = 0 and normal axis definition statements, Turbo PMAC executes this same function by
mathematically inverting the equations of the axis-definition statements to derive the starting axis positions
from present commanded motor positions. The axis-definition statements are technically inverse-
kinematic equations, so their mathematical inverse forms the forward-kinematic equations. Because the
standard axis-definition statements are limited to mathematically linear equations, in general their inverse
can be derived automatically.)
given to the coordinate system if Isx50 is 1. This is done to ensure that the starting tip (axis) position is
correct for the calculation of the initial move, even if joint (motor) moves, such as jogs, have been done
since the last programmed move. The forward-kinematic program is also executed automatically each
time a PMATCH command is given to the coordinate system if Isx50 is 1.
(With Isx50 = 0 and normal axis definition statements, Turbo PMAC executes this same function by
mathematically inverting the equations of the axis-definition statements to derive the starting axis positions
from present commanded motor positions. The axis-definition statements are technically inverse-
kinematic equations, so their mathematical inverse forms the forward-kinematic equations. Because the
standard axis-definition statements are limited to mathematically linear equations, in general their inverse
can be derived automatically.)
The inverse-kinematic program is executed automatically each time Turbo PMAC computes new axis
positions during the execution of a motion program. This occurs at the end-point of each programmed
move block for non-segmented moves, such as those in RAPID mode. It occurs at the end of each
intermediate segment – every Isx13 milliseconds – for segmented moves (LINEAR and CIRCLE-mode
moves with Isx13 > 0).
positions during the execution of a motion program. This occurs at the end-point of each programmed
move block for non-segmented moves, such as those in RAPID mode. It occurs at the end of each
intermediate segment – every Isx13 milliseconds – for segmented moves (LINEAR and CIRCLE-mode
moves with Isx13 > 0).
(With normal axis definition statements, Turbo PMAC executes this same function by using the equations
of the axis definition statements to derive motor positions from axis positions.)
of the axis definition statements to derive motor positions from axis positions.)