Speed pre-control for faster response
What is speed pre-control?
Velocity feedforward is a supplement to cascaded position control that drastically reduces tracking error during dynamic movements. Instead of deriving the entire velocity command from the position error, a precalculated velocity signal is fed directly into the velocity control loop.
Why is this important?
In a pure feedback position control system, a position error must exist in order for the controller to command a speed. During a traverse movement, this results in a systematic tracking error —the axis always lags behind the target path. The more dynamic the movement, the greater the error.
Feedforward control fundamentally solves this problem:
- Reduces tracking error to virtually zero at constant speed
- Improves path accuracy during multi-axis movements
- Relieves the feedback controller —it only has to compensate for disturbances, not generate the entire speed command.
- Enables higher dynamics without loss of stability
How does it work?
SOMANET drives offer two feedforward mechanisms:
1. Drive-side speed feedforward (0x2015): The drive differentiates the position setpoint signal and adds the calculated speed directly to the output of the position controller. A configurable low-pass filter (cut-off frequency, default: 20 Hz) suppresses noise that is amplified by the differentiation.
- Gain — in per mille; 1000 = gain 1.0 (recommended start value); default: 0 (disabled)
- Cutoff frequency — compromise between accuracy (high value) and noise reduction (low value)
Requirement: Encoder resolution > 14 bits per revolution recommended.
2. Master-side velocity control (0x60B1 — Velocity Offset): The EtherCAT master calculates the target velocity externally (e.g., from the trajectory planner) and sends it to the drive as a cyclic PDO. This bypasses drive-side differentiation and avoids quantization effects.
3. Torque offset (0x60B2): For acceleration offset, the master can inject a precalculated torque—for example, from an inverse dynamic model of the robot (inertia compensation, gravity compensation). The update is performed at the full EtherCAT cycle rate (typically 4 kHz).
How does SOMANET implement this?
The drive-side speed pilot control is activated via the Object Dictionary (0x2015) and is available in both Cyclic Synchronous Position (CSP) and Profile Position Mode. In Profile Position Mode, the drive generates the target path internally at 4 kHz — interpolation and distributed clocks are not required.
In CSP mode with a slower EtherCAT cycle time, command smoothing must be configured, as otherwise the differentiation will produce step artifacts.
Further links: