Follow on Instagram
MediumControlKinova Gen3L6 robot quiz

The table is 5 mm too high. So why does the robot press with 200 newtons?

A position controller is a stiff spring between where the hand is and where it was told to be. Stiff means accurate in free air. Against a surface it means a tiny error becomes a large force.

table 5 mm higher than expected · stiffness lowered from 40,000 N/m to 1,000 N/m
How hard does it press with the same 5 mm error?
Pick one first. Each option tells you why it is right or wrong.

Worked solutionOne step at a time

A position controller behaves like a spring

It pushes back in proportion to how far the hand is from its target. The constant is the stiffness k.

F = k · error

The stiff case, from the reel

The hand was told to go to where the table should be. The table is 5 mm higher, so the hand stops 5 mm short and the spring stays stretched.

F = 40,000 N/m × 0.005 m = 200 N

The soft case

Same error, one fortieth of the stiffness.

F = 1,000 N/m × 0.005 m = 5 N

Answer: B, 5 N

The cost is accuracy. In free air a 5 N disturbance used to move the hand 0.125 mm and now moves it 5 mm. So impedance control makes the spring soft only along the contact direction: the hand yields to the table and still tracks its path sideways.

What the simulation showedSoft in one direction only

The reel has a Kinova Gen3 wipe a table in MuJoCo, with the table 5 mm higher than the robot was told.

  • Under stiff position control the 5 mm error turns into about 200 N of downward force, roughly the weight of a 20 kg load on the table.
  • With the stiffness lowered along the direction of contact, the press drops to a few newtons.
  • The wiping path across the table is unchanged, because the stiffness in those directions was left alone.

Wrong answersWhy each one is tempting

PickWhat went wrong
A · 0.5 NSlipped a factor of ten converting millimetres to metres.
C · 50 NUsed 10,000 N/m.
D · 200 NReused the stiff controller's answer.

Follow-ups an interviewer asks nextTry these before opening them

You want the robot to press with 10 N while wiping. What do you command?

With k = 1,000 N/m, set the target 10 mm below the surface: 1,000 × 0.010 = 10 N. Under impedance control you choose force by choosing how far into the surface to aim.

Why not make the arm soft in every direction?

It would sag under its own payload and drift off the path whenever anything brushed it. Softness is only wanted where the arm meets something stiffer than its model says.

What if the table height is off by 5 cm instead of 5 mm?

With k = 1,000 N/m that is 50 N, which may still be too much. Either lower the stiffness further or switch to controlling force directly in that direction.

How is this different from force control?

Force control measures the contact force and regulates it to a target. Impedance control never sets a force: it sets how position error and force relate, and lets the force come out of the contact.

Previous · 11Hand still, elbow swingingThat was the last oneBack to all questions