Skip to content
PreciSim
Lab manual
lab2-hand-eye

Lab 2 · Hand-eye calibration

Goal
Solve the camera-to-motion relationship with the nine-point method, and see why the two configurations must not be mixed up.
Estimated time
45min
Level
Introductory
Prerequisites
Complete Lab 1.
Watch on YouTube

Goal

Solve for T_World_Cam — and deliberately produce the illusion of "wrong configuration, small residual".

Steps

  1. Confirm C1 pixel size is done and still valid (Calibration → Overview).
  2. Calibration → Hand-eye, configuration eye-to-hand, nine points, 60 mm span.
  3. Record residual RMS and verify deviation.
  4. Get it wrong on purpose: switch the configuration to eye-in-hand and re-solve on the same data. Record the residual — it may still be small.
  5. Use the verify deviation to decide which one is right.
  6. Close the loop: click a point in the image, let the stage move there, measure how far off it lands.

Pass criteria

Item Criterion
Step 3 residual RMS < 0.03 mm
Step 3 deviation < 0.05 mm
Step 4 residual possibly just as small — that is the point of this lab
Step 4 deviation far outside tolerance
Step 6 closed-loop error < 0.08 mm

Common mistakes

  • Wrong configuration. No error is raised; you get a small residual and a wrong answer.
  • Nine points in a line. The matrix is near singular and the solve is unstable. Spread them into a grid.
  • Touching the camera mid-run. The extrinsics change and every earlier pose is invalid.
  • Solving and verifying on the same data. The residual is guaranteed to look good and proves nothing.

Review questions

  1. Why can the residual stay small when the configuration is wrong? What does that say about "self-consistent" versus "correct"?
  2. What happens if the nine points form a 3×3 grid with only 2 mm spacing? Sketch how the condition number changes with span.
  3. In the closed-loop error, how much comes from hand-eye, how much from pixel size, how much from motion? Decompose it with the error budget method.