Delta Tau GEO BRICK LV User Manual
Turbo PMAC User Manual
340
Writing and Executing Motion Programs
I11
1 2
3
4
5
6
1
2
3
4
time
"R"
Execute
Calculate
A. Two moves ahead
LINEAR with I13=0
SPLINE1
LINEAR with I13=0
SPLINE1
B. One move ahead
LINEAR with I13>0
CIRCLE, PVT
LINEAR with I13>0
CIRCLE, PVT
I11
1
2
3
4
5
1
2
3
4
time
"R"
Execute
Calculate
C. No moves ahead
Ix92=1, RAPID,
HOME, DWELL,"S"
Ix92=1, RAPID,
HOME, DWELL,"S"
I11
1
2
3
1
2
3
time
"S"
"R"
"R"
Execute
Calculate
I11
DWELL
time
I11
2a
2a
PMAC Motion Program Precalculation
Calculation of Subsequent Moves
As soon as the actual execution of a move by the trajectory generating routines starts, a flag is set for
Turbo PMAC to calculate all of the succeeding program statements down to and including the next move
statement, putting the data thus computed into a queue for the trajectory generator. Program calculation is
then held up until the trajectory generator starts the next move, and Turbo PMAC performs other tasks
(PLC programs, communications, etc.).
Turbo PMAC to calculate all of the succeeding program statements down to and including the next move
statement, putting the data thus computed into a queue for the trajectory generator. Program calculation is
then held up until the trajectory generator starts the next move, and Turbo PMAC performs other tasks
(PLC programs, communications, etc.).
Insufficient Calculation Time
If Turbo PMAC cannot finish calculating the trajectory for a move by the time execution of that move is
supposed to begin, Turbo PMAC will abort the program, showing a run-time error in its status word. This
usually happens when move times are made very short (a few milliseconds) and/or there is a very large
amount of calculation in between move commands. The limit on this move block calculation rate is very
application-dependent, but is generally several hundred blocks per second.
supposed to begin, Turbo PMAC will abort the program, showing a run-time error in its status word. This
usually happens when move times are made very short (a few milliseconds) and/or there is a very large
amount of calculation in between move commands. The limit on this move block calculation rate is very
application-dependent, but is generally several hundred blocks per second.
If concerned about this move calculation limit, during development make the move times continually
shorter until Turbo PMAC fails. Then for the final application, make sure that the minimum move time is
greater than this, usually with a safety margin of at least 25%.
shorter until Turbo PMAC fails. Then for the final application, make sure that the minimum move time is
greater than this, usually with a safety margin of at least 25%.