Streaming Motion

What is Streaming Motion?

Streaming point motion is when the controller is given a stream of data points which represent an entire motion profile. The controller executes the data points with an update rate of up to 48KHz. It can be used for a single axis or several axes at the same time using a Multiaxis object. This document describes all the different ways to do streaming point motion and the advantages and disadvantages for each.

Types of Streaming Motion

PT Motion

This Streaming Motion is the simplest to use because it only requires an array of Positions and Time deltas. The controller is responsible for figuring out the velocity, and acceleration for each motion segment. MovePT currently supports two types of interpolation: SimplePT and BSpline. Other types of motion interpolation are Bessel, Spline, and BSpline2 which can be added by request.

This Streaming Motion is a bit more complicated to use because it requires an array of Positions, Velocities, and Time deltas. The controller is only responsible for figuring out the acceleration for each motion segment. This makes it more flexible and gives users more control over the motion path.

This Streaming Motion is a lot more complicated to use because it requires an array of Positions, Velocities, Acceleration, Jerk, and Time deltas. The controller is not responsible for figuring out anything because it streams the arrays straight to the frame buffer. This makes it very flexible and gives users absolute control over the motion path. The controller does not do any interpolation or calculations because everything it needs is calculated beforehand in the PVAJT arrays.

Multi-Axis Streaming

All motion streaming methods can be used for coordinated motion on multi-axis objects. It is important that you setup your arrays appropriately for a multi-axis object. See the examples in the different streaming method pages on how to structure your arrays for multi-axis motion.

FAQ’s

Does the column order of the motion points given to streaming methods (ex: MovePT) correspond to the order in which the individual Axis objects were added to the MultiAxis?

Correct. The order in which you add the points will correspond to the order in which you added the axes to the MultiAxis object.

Sample Apps: