User's Manual

PMAC User Manual
Setting Up a Coordinate System 139
Axis Types
An axis can have several attributes, as specified below. Note that for most axis functions, it does not
matter what type of axis is used, or what letter is given it. However, for some features, only particular
axis names may be used.
Cartesian Axis
A Cartesian axis is one that may be put into a grouping of two or three axes so that movement along an
axis is a linear combination of motion on two or three motors. X, Y, and Z form one set of Cartesian
axes; U, V, and W form the other. In addition, there are several commands (NORMAL, circular move)
which can reference the X, Y, and Z axes through the use of I, J, and K vectors, respectively.
To make a cartesian axis a linear combination of several motors, use an extended form of the axis
definition statement. For instance, to get a 30
o
rotation of the axes from the motors with the following
axis definition statements:
#1->8660.25X-5000Y
#2->5000X+8660.25Y
In this case, a request for a Y-axis (or an X-axis) move would cause both motors #1 and #2 to move.
Only the X, Y, and Z cartesian axes may be used for the PMAC circular interpolation routines, cutter
radius compensation routines, and matrix axis transformation routines. To do circular interpolation on
other axes, do it through blended short moves and trigonometry in subroutines. See example program
CIRCTRY.PMC
Rotary Axis
A rotary axis is one that permits rollover, but cannot be assigned to combinations of motors. A rotary
axis must be named A, B, or C. The rollover is technically a motor function, specified by Ix27 for motor
x, but it can only operate when the motor is assigned to a rotary axis. Rollover permits the motor to take
the shortest path around the rotary range when an absolute axis move is specified in a program.
Feedrate Axis
A feedrate axis is an axis in a coordinate system that figures into the calculations of a feedrate-specified
move. The time for a feedrate-specified move is calculated as the vector distance for the feedrate axes
divided by the feedrate itself. If other axes are commanded to move in the same statement, they will be
linearly interpolated over this same computed time.
The default feedrate axes are the Cartesian axes X, Y, and Z. This setting can be changed with the FRAX
(feedrate axis) command.
Axis-Motor Position Re-matching
There is only one type of calculation in which PMAC converts from commanded motor position to
commanded axis position. This is in the PMATCH (position-match) function. This is needed in only a few
cases.
First, when a motor function, such as a jog move, open-loop move, or a stop on abort or limit, has
changed the motor commanded position since the last axis move (or home search move). In other words,
the axis does not know where the motor has gone. In order for the next axis (programmed) move to
function properly, the axis must be told where it is starting from. This is what the PMATCH function does.
Second, if there is an absolute position sensor, the PMATCH function should be used before the first
programmed move, because the motor will not, in general, power up at zero position (as it does for an
incremental sensor), and the axis must be given this starting point.