Joint Zero-Position Calibration (Homing / Offset Calibration)
零位标定(零点标定)CommonMeasuring the actual joint angle when a sensor reads zero, so the software model matches the physical robot.
A robot's forward kinematics and its URDF model both assume that when every joint angle reads 0, the robot is in one specific, well-defined posture (the zero position). But when an encoder is physically installed, its reading origin is essentially arbitrary, and assembly tolerances or a motor swap can leave the reading offset from the model's angle by some fixed amount. Zero-position calibration measures that offset and stores it, so every later reading gets corrected by it. A joint using an incremental encoder (which only tracks relative changes) needs to be re-homed every time it powers on: it's driven to a mechanical hard stop, a limit switch, or an encoder index pulse, and the count is reset there; an absolute encoder usually only needs calibrating once. Servos have an analogous parameter too, such as Dynamixel's Homing Offset. An inaccurate zero position introduces a systematic error into the end-effector position, and also means the same policy won't transfer cleanly to a different physical robot.
ExampleAfter assembling a LeRobot SO-101 arm, you run lerobot-calibrate: first every joint is moved to the middle of its own range of motion, then each is rotated through its full range in turn. The official docs explain this step ensures the leader and follower arms read the same value at the same physical pose, which is what lets a trained model transfer to another robot.
- Also called
- Homing, Zero Offset Calibration, Homing Offset
- Related
- Rotary Encoder · Incremental Encoder · Absolute Encoder · Kinematic Calibration · Joint Limits · Leader-Follower Teleoperation
- Sources
- Incremental encoder - Wikipedia
ROBOTIS e-Manual: XM430-W350 (Homing Offset)
LeRobot Docs: SO-101 (Calibrate)