Glossary · Robotics and control

Feed-forward control

Also called feed-forward, feedforward, servo feed-forward, velocity feed-forward

Telling a motor in advance what a planned movement will need, instead of waiting for an error to build up and then correcting it.

A controller can react or it can anticipate. Feedback reacts: it measures the error between where a joint is and where it should be, and pushes against it. Feed-forward anticipates: it uses what it already knows about the planned movement to send the command a motor will need before any error appears.

Feedback alone always runs a little behind a moving target. A position servo pulls a joint towards its target angle like a spring, with a damper that resists speed. If the target moves at a steady angular velocity q˙ref\dot q^{\text{ref}}, the joint settles into following it a fixed time behind, about

τ=kdkp\tau = \frac{k_d}{k_p}

where kpk_p is the spring’s stiffness and kdk_d the damping. To cancel that lag, the target sent to the servo is moved ahead of the reference by the same amount:

qtarget=qref+τ q˙refq^{\text{target}} = q^{\text{ref}} + \tau \, \dot q^{\text{ref}}

The joint then moves with the reference, not behind it. Feedback is still there for everything the plan didn’t foresee: a shove, a foot landing early.

People do this too. A skilled movement is mostly planned in advance; the corrections come from what the senses report along the way.

In this project

Every servo in the fighter’s body lags by about τ=0.4/6≈0.067\tau = 0.4/6 \approx 0.067 s. For the jab, the servo targets lead the punch’s reference by that lag, or the fist can’t keep up with a fast punch. When the fighter learnt to walk, the steps fell short at first: a forward step covered 4 % of its planned distance, a sideways one under 20 %. Adding the same feed-forward to the walk, together with episodes that start mid-step (reference state initialisation), brought them to 58 % and 56 %, and steps back to 92 %, within about 6 M steps (see Footwork).

Related terms

Used in

← All terms