Servo applications require defined, controlled movements, often to move a part to a specified position at a precise velocity or along a predetermined path. A motion profile provides the physical motion information and graphically depicts how the motor should behave during the movement (often in terms of position, velocity, and acceleration) and is used by the servo controller to determine what commands (voltages) to send to the motor.
The type of motion profile required for an application depends on the purpose of the movement. For example, is the system simply transporting a part between workstations, or is it placing electrical components onto a circuit board? Although there are many different motion profiles that can achieve a given physical movement, the two most common types of motion profile are triangular and trapezoidal — so named because of the shape they depict when velocity is plotted as a function of time.
Triangular motion profiles: For quick, point-to-point movements
A triangular motion profile is characterized by equal acceleration and deceleration times (and distances), with no time spent at a constant velocity. In other words, a triangular motion profile divides the time allowed for the move into two halves — an acceleration period and a deceleration period.
This profile is commonly used for applications that don’t require a period of constant velocity — such as transport and pick-and-place — since it provides the fastest movement between two points.
Calculations of velocity and acceleration for a triangular motion profile are based on the geometry of a triangle, making them relatively simple. The height of the triangle represents the maximum velocity, and acceleration is found by dividing the maximum velocity by the time to accelerate, which is ½ of the total move time.
For a standard triangular move profile, where ½ of the time is used for acceleration and ½ for deceleration:
Trapezoidal motion profiles: For steady, constant-velocity movements
Unlike a triangular move, a trapezoidal motion profile allows a specified time (or distance) to be spent at a constant velocity. The mathematically simplest version of the trapezoidal profile breaks the total move time into thirds, allowing 1/3 of the total move time for acceleration, 1/3 for constant (maximum) velocity, and 1/3 for deceleration. But it is quite common for trapezoidal moves to use a longer portion of the time for constant velocity, with very quick acceleration and deceleration rates.
The trapezoidal motion profile is arguably the most common in motion control applications, since it forms the basis of processes that require a period of constant velocity, such as dispensing, measuring, and machining.
The motion calculations for trapezoidal move profiles are a bit more complex than for triangular moves. The best way to analyze a trapezoidal motion profile is to break the profile into two right triangles (for the acceleration and deceleration phases of the move) and a rectangle (for the constant velocity phase).
For a standard trapezoidal move profile, where 1/3 of the total time is used for acceleration, 1/3 for constant velocity, and 1/3 for deceleration:
Adding curves produces smoother motion
Despite underpinning the majority of motion control applications, neither triangular nor trapezoidal move profiles are ideal for motion systems due to a phenomenon known as “jerk.” Jerk is the rate of change of acceleration, and for trapezoidal and triangular move profiles, the initial acceleration and final deceleration occur instantly, meaning jerk is (theoretically) infinite.
Jerk is especially problematic for systems that require smooth, accurate motion because it causes vibrations that can reduce positioning accuracy and extend settling time.
To reduce jerk, the beginnings and ends of the acceleration and deceleration phases of the move are smoothed into an “S” shape. This limits the rate of change of acceleration and deceleration (jerk) and produces smoother motion and more accurate positioning.
For an in-depth dive on generating motion profiles and calculating velocity and acceleration, check out these resources from linearmotiontips.com: