Delta Tau GEO BRICK LV User Manual

Page of 440
Turbo PMAC User Manual 
Writing and Executing Motion Programs
 
325
 
The F (feedrate) statement specifies a speed, the X statements command actual moves for the X-axis, and 
the DWELL statement commands a halt for the specified time.  This program simply specifies a basic 
move and return. 
Defaults 
A program this simple relies on quite a few default settings and modes.  This one uses the following 
defaults: LINEAR move mode, ABS (absolute) axis specification, with Isx87 and Isx88 specifying the TA 
and TS acceleration times, respectively. 
Controlling Parameters 
What the values in the program mean can depend on external parameters as well.  The X positions are in 
user units, as defined in the axis definition statement for the X-axis.  The F speed specification is in terms 
of user position units divided by feedrate time units, as set by variable Isx90 for the coordinate system. 
Simultaneous Moves on Multiple Axes 
To perform simultaneous coordinate moves of several axes in a coordinate system, simply put their move 
specifications on the same line.  For instance, if the above program was changed to: 
F5000 
X10000 Y10000 Z10000 
DWELL1000 
X0 Y0 Z0 
the X, Y, and Z-axes will command a simultaneous move to 10,000, stay there for one second, then 
command a simultaneous move to 0.   
If an axis in the coordinate system is not commanded in a given move line, a zero-distance move for that 
axis is assumed (note that it is technically performing a move, so it cannot be in- position). 
Sequential Moves 
If the program is in LINEARCIRCLEPVT, or SPLINE mode, and there is more than one move 
command line in a program without a DWELL or DELAY in between (there can be other statements in 
between), the moves will blend together without stopping.  The exact form of the blending will depend on 
the move mode in force (see Trajectory Features).  However, if Isx92 for the coordinate system (Move 
Blend Disable), this blending capability is disabled. 
Adding Logic 
A little logic can be added to make the language more powerful.  Suppose we wanted to repeat the above 
sequence 100 times.  Rather than repeating the above statements 100 times, we can create a loop: 
F5000 
P1=0 
WHILE (P1<100) 
 X10000 
 DWELL1000 
 X0 
 DWELL1000 
 P1=P1+1 
ENDWHILE 
Note that the F5000 statement is not inside the loop.  By putting it before the loop, we save PMAC from 
having to interpret and execute the statement every time through the loop.  Since it is a modal statement, 
its effect stays in force.  This is not essential, but if loop time is very short, it can make a difference.