1. 手眼标定概述

什么是手眼标定

手眼标定(Hand-Eye Calibration)是机器人视觉系统中的核心步骤,用于求解相机坐标系与机器人末端/基座坐标系之间的空间变换关系。简单来说,就是让机器人“知道”眼睛(相机)看到的目标在自身坐标系下的精确位置和姿态。

在数学上,手眼标定求解的是以下齐次变换矩阵方程:

AX = XB

其中:

  • A:机器人末端在两次运动之间的相对位姿变换(由机器人控制器读取)
  • B:相机在两次观测中看到的标定板相对位姿变换(由视觉算法计算)
  • X:待求的手眼变换矩阵(相机到机器人末端或基座的固定关系)
核心结论:手眼标定不依赖标定板的位置,只依赖相对运动约束,因此可在现场任意位置完成标定。

为什么需要手眼标定

在工业自动化现场,机器人执行抓取、装配、焊接等任务时,视觉系统提供的目标坐标是相机坐标系下的数据。机器人只能理解自身基座或末端坐标系下的指令。没有手眼标定,视觉数据与机器人运动之间就是“两张皮”。

问题 无标定后果 有标定后效果
目标定位 相机看到工件位置,但机器人不知道往哪抓 视觉坐标直接转换为机器人抓取位姿
装配精度 视觉引导偏差大,零件无法装入 亚毫米级装配重复精度
焊接轨迹 焊缝跟踪偏移,焊接质量不稳定 实时纠偏,焊缝一致性高
产线换型 每次换型需重新示教机器人路径 视觉自动适配新工件,无需示教
现场经验:超过80%的3D视觉部署失败案例,根源都在手眼标定精度不达标或标定流程不规范。标定是“一劳永逸”的基础工作,值得投入足够时间。

手眼标定的应用场景

手眼标定在工业自动化中覆盖三大核心场景,每种场景对标定方式和精度要求有所不同:

1. 抓取(Bin Picking / 无序抓取)

  • 典型配置:眼在手外(Eye-to-Hand)或眼在手上(Eye-in-Hand)
  • 精度要求:±1~3 mm(视工件尺寸和夹具容差而定)
  • 标定特点:通常使用棋盘格或圆点标定板,一次标定长期使用
  • 现场难点:料箱深度大、光照变化、工件反光导致视觉抖动

2. 装配(精密装配 / 轴孔配合)

  • 典型配置:眼在手上(Eye-in-Hand)为主
  • 精度要求:±0.1~0.5 mm
  • 标定特点:需高精度标定板,多次采样取平均,标定后需验证
  • 现场难点:机器人运动学误差、相机畸变、温度漂移

3. 焊接(焊缝跟踪 / 自适应焊接)

  • 典型配置:眼在手上(Eye-in-Hand),相机固定在焊枪旁
  • 精度要求:±0.5~1.0 mm(焊缝宽度方向)
  • 标定特点:需考虑焊接弧光干扰,标定板需耐高温
  • 现场难点:焊接热变形、飞溅遮挡、相机冷却防护
⚠ 常见误区:很多工程师认为“标定一次管所有场景”。实际上,更换相机、更换机器人末端工具、甚至机器人长时间运行后关节磨损,都需要重新标定。建议建立定期复标制度(如每月一次或每500小时一次)。
手眼标定核心概念:坐标系变换关系 机器人基座 坐标系 {B} 机器人末端 坐标系 {E} 3D 相机 坐标系 {C} 标定板 坐标系 {P} 目标工件 坐标系 {O} 机器人运动学 T_BE 手眼矩阵 X (待求) 视觉测量 T_CP 最终目标:T_BO 💡 标定方程 AX = XB 通过机器人多次运动(A)和相机多次观测(B),求解固定手眼变换 X。 标定完成后,视觉检测到的目标坐标即可转换为机器人可执行的抓取/装配位姿。 手眼标定三大应用场景 🤖 抓取 典型配置 眼在手外 / 眼在手上 精度要求 ±1 ~ 3 mm 标定方式 棋盘格 / 圆点标定板 现场难点 料箱深度大 光照变化、反光 工件堆叠遮挡 🔧 装配 典型配置 眼在手上(主流) 精度要求 ±0.1 ~ 0.5 mm 标定方式 高精度标定板 现场难点 机器人运动学误差 相机畸变校正 温度漂移 🔥 焊接 典型配置 眼在手上(焊枪旁) 精度要求 ±0.5 ~ 1.0 mm 标定方式 耐高温标定板 现场难点 焊接弧光干扰 飞溅遮挡 相机冷却防护