TIAGo¶
Mobile manipulator (PAL Robotics TIAGo). Same four workflows as UR10, adapted for a coupled-wrist end-effector, a mobile base, and (optionally) camera-based eye-hand calibration. → source folder
What's included¶
calibration.py— kinematic calibration (full pipeline flags identical to UR10's)identification.py— dynamic parameter identificationoptimal_config.py— D-optimal calibration configuration generation (supports both Hey5 and Schunk end-effectors via--end-effector)optimal_trajectory.py— exciting trajectory generation (uses IPOPT)utils/tiago_tools.py—TiagoCalibration/TiagoIdentification/TiagoOptimalCalibration/TiagoOptimalTrajectoryutils/simplified_collision_model.py— collision geometry for self-collision constraints during trajectory optimizationconfig/tiago_unified_config.yaml— extendshumanoid_robot.yaml(default); legacytiago_config.yaml/tiago_config_hey5.yamlalso present underconfig/archive/
This is the example new robots are scaffolded from
(examples/create_example.sh) — the reference to copy when adding support
for a new robot.
Run¶
cd examples/tiago
# 1. Optimal calibration configurations
python optimal_config.py --end-effector hey5
# 2. Kinematic calibration (full pipeline: calibrate → plot → save → export → viser viz)
python calibration.py
python calibration.py --viz-validation --model urdf/tiago_48_schunk_modified_20260127.urdf
# 3. Optimal identification trajectory (requires IPOPT)
python optimal_trajectory.py
# 4. Dynamic identification (html-report + verify on by default)
python identification.py
All saved files are timestamped: data/calibration/calibration_results_{ts}.npz,
urdf/tiago_48_schunk_modified_{ts}.urdf.
Outputs¶
Archived under results/runs/tiago-<asset>/{calibration,identification}/<timestamp>/
by default (or results/ with --no-archive) — HTML report, verification
JSON, and (for calibration) a compare.html for offline before/after
comparison. See Reporting & Verification.
See also¶
- Calibration Walkthrough / Identification Walkthrough
- Full README with class hierarchy, troubleshooting, and expected accuracy: figaroh-examples/examples/tiago/README.md