Reference Guide

PMAC Quick Reference Guide
Motion Programs 49
For example: G17 will cause a jump to N17000 of PROG 1000; G117 will cause a jump to N17000 of
PROG 1010; G973.1 will cause a jump to N73100 of PROG 1090.
M-codes are the same, except they use PROG 10n1; T-codes use PROG 10n2; D-codes use PROG 10n3.
Most of the time, these codes have numbers within the range 0 to 99, so only PROGs 1000, 1001, 1002,
and 1003 are required to execute them. For those who want to extend code numbers past 100, PROGs
1010, 1011, etc. will be required to execute them.
Linear Blended Moves
The move time is set directly by TM or indirectly based on the the distances and feedrate (F) parameters set:
TM100
X3 Y4
or
FRAX(X,Y)
X3 Y4 F50 ;
msec 100
50
5000
50
2
4
2
3I190
TM ==
+
=
If the move time above calculated is less than the TA time set, the move time used will be the TA
time instead. In this case, the programmed TA (or 2*TS if TA<2*TS) results in the minimum move
time of a linearly interpolated move.
If the TA programmed results to be less than twice the TS programmed, TA<2*TS, the TA time used
will be 2*TS instead.
The acceleration time TA of a blended move cannot be longer than two times the previous TM minus
the previous TA, otherwise the value 2*(TM- ½ TA) will be used as the current TA instead.
The safety variables Ix16 and Ix17 will override these parameters if they are found to violate the
programmed limits.
If TM < TA, TM = TA
If TA < 2*TS, TA = 2*TS
If TA
i+1
> 2*(TM
i
-
½
TA
i
), TA
i+1
= 2*(TM
i
-
½ TA
i
)
Example:
To illustrate how PMAC blends linear moves, a series of velocity Vs time profiles will be shown. The
moves are defined with zero S-curve components. The concepts described here could be used for non-
zero S-curve linear moves.
1. Consider the following motion program code:
close
delete gather
undefine all
&1
#1->2000x
OPEN PROG 1 CLEAR
LINEAR ; Linear mode
INC ; Incremental mode
TA100 ; The acceleration time is 100 msec, TA
1