MEI Hardware Information MEI Software Engineering & Application Services Technology Information at MEI International Contact Information

Trajectory Modification

Decrease Move Times and Machine Cycle Times by Modifying Motion ON-THE-FLY

In the XMP series controllers, a motion trajectory can be changed at any time and as often as needed by updating acceleration, velocity, and/or position (more than one can be changed at the same time). The DSP on board XMP controllers automatically recalculates the trajectory in real time.


Many engineers are under pressure to reduce machine cycle times and increase machine throughput by increasing motion performance. A key step in this process is the elimination of unnecessary machine stop and starts. Machine designers can eliminate needless machine stops and starts by using on-the-fly trajectory modifications involving dynamic interactions with I/O and vision systems.
Trajectory Graphic

On-the-fly trajectory modification is useful in high-speed applications that integrate vision systems, such as electronic assembly machines that need to verify component orientation before placement. It is also a very useful mechanism to improve overall machine throughput, as moves can be commanded and then updated in response to the calculation or input from the operator.

A pick-and-place application with sensor or vision-based correction is a good example of this. While a part is moving to a nominal placement position, a sensor scans it, and the actual placement location is determined. The host then commands a new move to this newly calculated placement location, and the XMP immediately moves the axes to this new location.
The XMP controller has a latency of about 1 msec (including communication time). Timing measurements are made from the beginning of the mpiMotionStart() function call (commanding the motion) to the initial change of DAC voltage at our output. This latency can be reduced to an average of 250 microseconds (with our standard 2KHz sample) rate using "gated" moves. The motion parameters are pre-loaded in the controller and the motion starts immediately when the function call to "open" the gate is made. 

The XMP controller, based on the Analog Devices SHARC DSP, is programmed using the Motion Programming Interface, or MPI. Part of the standard MPI is a command called mpiMotionModify(…). The mpiMotionModify(…) method allows programs to perform on-the-fly trajectory modification at any time during a motion, and as often as needed. The mpiMotionModify(…) method can update the target position, acceleration, deceleration, velocity and/or jerk percentage (more than one can be changed at the same time).

The host will download the new trajectory parameters, then the DSP automatically recalculates the trajectory in real time and modifies the currently executing motion based on the new trajectory parameters.