PMAC Product Guide More than one motor may be assigned to the same axis in a coordinate system. This is common in gantry systems, where motors on opposite ends of the crosspiece are always trying to do the same movement. By assigning multiple motors to the same axis, a single programmed axis move in a program causes identical commanded moves in multiple motors. Usually, this is done with two motors but up to eight motors have been used in this manner with PMAC. Remember that the motors still have independent servo loops, and that the actual motor positions will not necessarily be exactly the same.
An axis in a coordinate system can have no motors attached to it (a phantom axis), in which case programmed moves for that axis cause no movement, although the fact that a move was programmed for that axis can affect the moves of other axes and motors. For instance, if sinusoidal profiles are wanted on a single axis, the easiest way to do this is to have a second, phantom axis and program circularly interpolated moves. Axis Definition Statements A coordinate system is established by using axis definition statements. An axis is defined by matching a motor (which is numbered) to one or more axes (which are specified by letter). The simplest axis definition statement is something like #1->X .
This simply assigns motor #1 to the X axis of the currently addressed coordinate system. When an X axis move is executed in this coordinate system, motor #1 will make the move. The axis definition statement also defines the scaling of the axis’ user units. For instance, #1->10000X also matches motor #1 to the X axis, but this statement sets 10,000 encoder counts to one X-axis user unit (e.g. inches or centimeters). Once the scaling has been defined in this statement, the axis can be programmed in engineering units without ever needing to deal with the scaling again. Permitted Axis Names: X, Y, Z, U, V, W, A, B, C X,Y,Z:
Traditionally Main Linear Axes • Matrix Axis Definition • Matrix Axis Transformation • Circular Interpolation • Cutter Radius Compensation A, B, C: Traditionally Rotary Axes (A rotates about X, B about Y, C about Z) • Position Rollover (Ix27) U, V, W: Traditionally Secondary Linear Axes • Matrix Axis Definition Writing a Motion Program 1. Open a program buffer with OPEN PROG {constant} where {constant} is an integer from 1 to 32767 representing the motion program to be opened. 2. PMAC can hold up to 256 motion programs at one time.
For continuous execution of programs larger than PMAC’s memory space, a special PROG0, the rotary motion program buffers, allow for the downloading of program lines during the execution of the program and for the overwriting of already executed program lines. 3. The CLEAR command empties the currently opened program, PLC, rotary, etc. buffer. 4. Many of the statements in PMAC motion programs are modal in nature. These include move modes, which specify what type of trajectory a move command will generate; this category includes LINEAR , RAPID , CIRCLE , PVT , and SPLINE . 70 Motion Programs