Linear Interpolation – TML Programming Details

In Linear Interpolation mode the motion controller together with the slave axes execute a 2D/3D coordinated move. The trajectory is defined through a series of linear segments. Optionally, for each segment a vector speed and acceleration can be specified. The motion controller splits each segment in PVT (Position, Velocity and Time) points and sends them to the slave axes. On receiving the PVT points the slaves rebuild their path using 3rd order interpolation.

The 2D/3D path can be stored locally in the non-volatile memory of the motion controller or it can be received via communication channel from a host. When used together with a host, an unlimited number of incremental segments may be given in a continuous move sequence, making the linear interpolation mode ideal for following a piece-wise linear path.

Remarks:

The path sequence must begin when the slave loads/motors are not moving and must complete with the End Segment – a segment with zero increment.
You can switch at any moment to another motion mode.

Upon reception, each segment is stored in a reception buffer. The segment buffer is of type FIFO (first in, first out). The reference generator from the motion controller empties the buffer as the segments are executed. The motion controller automatically sends warning messages when the buffer is full, low or empty. The host address is taken from the TML parameter MASTERID. The buffer full condition occurs when the number of segments in the buffer is equal with the buffer size. The buffer low condition occurs when the number of segments in the buffer is less or equal with a programmable value. The buffer empty condition occurs when the buffer is empty and the execution of the last segment is over.  When the buffer becomes empty the motion controller:

Remains in Linear Interpolation mode if the last segment executed was the end segment and waits for new segments to receive
Enters in quick stop mode if the last segment executed was not the end segment.

Remarks:

The buffer size is programmable and if needed can be increased. By default it is set to 4 segments.
The buffer low condition is set by default when the last segment from the buffer is read and starts to be executed
The Linear Interpolation mode requires the slave drives/motors to be setup for position control. If one of the slaves has a configuration different then position control will not be available for X, Y or Z axes selection.
If one of the slave axes fails during the coordinated move the motion controller will execute the TML code defined by the user in Int12 – Error on slave has occurred. If Int12 – Error on slave has occurred is not enabled or there is no TML code defined then the motion controller will continue the execution of the profile.

 

 

See also:

Linear Interpolation– Related TML Instructions and Data

TML Description