Delta Tau GEO BRICK LV Manual Do Utilizador
Turbo PMAC User Manual
Writing and Executing Motion Programs
311
In this mode, if the lookahead algorithm, while scanning ahead in the programmed trajectory, determines
that any motor in the coordinate system would exceed one of its desired position limits, it will suspend the
program and force a stop right at that limit. It will then work backwards through the buffered trajectory
segments to bring the motors to a stop along the path at that point in the minimum time that does not
violate any motor’s Ixx17 acceleration constraint.
that any motor in the coordinate system would exceed one of its desired position limits, it will suspend the
program and force a stop right at that limit. It will then work backwards through the buffered trajectory
segments to bring the motors to a stop along the path at that point in the minimum time that does not
violate any motor’s Ixx17 acceleration constraint.
However, if bit 14 of Ixx24 is also set to 1, the program does not stop at the limit. Instead, it will
continue, with the offending motor saturating at the limit value.
continue, with the offending motor saturating at the limit value.
When stopped on a desired position limit within lookahead, the program is only suspended, not aborted.
The action is equivalent to issuing a \ quick-stop command. It is possible to “retrace” the path coming
into the limit, or even to resume forward execution after changing the limit value. An “abort” command
must be issued before another program can be started.
The action is equivalent to issuing a \ quick-stop command. It is possible to “retrace” the path coming
into the limit, or even to resume forward execution after changing the limit value. An “abort” command
must be issued before another program can be started.
Note, however, that if an actual position limit is also tripped during the deceleration to a stop at the
desired position limit, the program is aborted, so retracing and resuming are not possible. For this reason,
if the possibility of retracing and resuming is important, Ixx41 should be set to a large enough value so
that the actual position limit is never tripped during a desired position limit stop.
desired position limit, the program is aborted, so retracing and resuming are not possible. For this reason,
if the possibility of retracing and resuming is important, Ixx41 should be set to a large enough value so
that the actual position limit is never tripped during a desired position limit stop.
This technique permits these software position limits to be placed just within the hard stops of the
machine. Without the desired position limits, the software position limits cannot be detected until the
actual trajectory actually passes the limit. This requires that these limits be placed far enough within the
hard stops so that the motors have enough distance to stop after they pass the limits. (When a motor hits a
software position limit without lookahead, the deceleration of motors is controlled by Ixx15, not Ixx17,
and deceleration is not necessarily along the programmed path.)
machine. Without the desired position limits, the software position limits cannot be detected until the
actual trajectory actually passes the limit. This requires that these limits be placed far enough within the
hard stops so that the motors have enough distance to stop after they pass the limits. (When a motor hits a
software position limit without lookahead, the deceleration of motors is controlled by Ixx15, not Ixx17,
and deceleration is not necessarily along the programmed path.)
Velocity Limits
Variable Ixx16 for each Motor xx defines the magnitude of the maximum velocity permitted for the
motor. These variables are defined in the raw PMAC units of counts per millisecond, so a quick
conversion must be calculated from the user units (e.g. millimeters per minute).
Variable Ixx16 for each Motor xx defines the magnitude of the maximum velocity permitted for the
motor. These variables are defined in the raw PMAC units of counts per millisecond, so a quick
conversion must be calculated from the user units (e.g. millimeters per minute).
If the algorithm, while looking ahead in the programmed trajectory, determines that any motor in the
coordinate system is being asked to violate its velocity limit, it will slow down the trajectory at that point
just enough so that no limit is violated. It will then work backwards through the buffered trajectory
segments to create a controlled deceleration along the path to this limited speed in the minimum time that
does not violate any motor’s Ixx17 acceleration constraint.
coordinate system is being asked to violate its velocity limit, it will slow down the trajectory at that point
just enough so that no limit is violated. It will then work backwards through the buffered trajectory
segments to create a controlled deceleration along the path to this limited speed in the minimum time that
does not violate any motor’s Ixx17 acceleration constraint.
Note:
During the initial move-block calculations, before move data is sent to the
lookahead function, a couple of factors can result in commanded velocities lower
than what is programmed. First, if the vector feedrate commanded in the motion
program with the F command exceeds the maximum feedrate parameter Isx98,
then Isx98 is used instead. Second, if the move-block time, either specified
directly with the TM command, or calculated as vector-distance divided by vector-
feedrate, is less than the programmed acceleration time (the larger of TA or 2 *
TS), the programmed acceleration time is used instead. This results in a speed less
than what was programmed. The lookahead function can further slow these
moves, but it cannot speed them up.
lookahead function, a couple of factors can result in commanded velocities lower
than what is programmed. First, if the vector feedrate commanded in the motion
program with the F command exceeds the maximum feedrate parameter Isx98,
then Isx98 is used instead. Second, if the move-block time, either specified
directly with the TM command, or calculated as vector-distance divided by vector-
feedrate, is less than the programmed acceleration time (the larger of TA or 2 *
TS), the programmed acceleration time is used instead. This results in a speed less
than what was programmed. The lookahead function can further slow these
moves, but it cannot speed them up.
Acceleration Limits
Variable Ixx17 for each Motor xx defines the magnitude of the maximum acceleration permitted for the
motor. These variables are defined in the raw PMAC units of counts per (millisecond-squared), so a
quick conversion must be calculated from the user units (e.g. in/sec
Variable Ixx17 for each Motor xx defines the magnitude of the maximum acceleration permitted for the
motor. These variables are defined in the raw PMAC units of counts per (millisecond-squared), so a
quick conversion must be calculated from the user units (e.g. in/sec
2
, or g’s).