Trapezoidal Moving Average Time
The Trapezoidal Moving Average Time profile is equivalent to the trapezoidal profile, but is passed through a moving average filter to prevent sudden changes in acceleration. The averaging time of the moving average filter is defined with the moving average time parameter. This value will be rounded to the closest multiple of the cycle time. Compared to a Trapezoidal profile with identical parameters, the moving average time profile will take this time longer to complete. This profile type is identical to the Trapezoidal profile if the moving average time is set to 0. The moving average time is reduced from the specified value if a profile could otherwise not be generated due to a high initial or end velocity.
This profile uses the following profile parameters:
Parameter |
Description |
|---|---|
Maximum velocity |
|
Maximum acceleration |
|
Maximum deceleration |
|
Initial velocity |
|
Final velocity |
|
Moving average time in milliseconds |
The following plots show the position, velocity, acceleration, and jerk of a trapezoidal moving average profile.

Like other profiles, the trapezoidal moving average time profile supports overrides and setting the initial and end velocities. If the initial or end velocity is nonzero, the profile will be adjusted to maintain the correct initial velocity, end velocity, and travel distance while having the same acceleration and deceleration shape.
The following plots show the position, velocity, acceleration, and jerk of a trapezoidal moving average profile with nonzero initial and end velocities.

The trapezoidal moving average time profile differs from the other WMX3 profile types in that it preserves the acceleration during overrides instead of setting the acceleration to 0 at the beginning of the override. This can reduce the physical strain on the machine when an override is executed while the axis is accelerating or decelerating.
The following plots show the position, velocity, acceleration, and jerk of a trapezoidal moving average profile that overrides a position command while the axis is accelerating.
