手眼标定良好(TCP 不正确),但触碰测试失败(机器人定位精度差)

问题

您的手眼标定结果看起来不错,但触碰测试失败了。

手眼变换

手眼残差

投影验证

触碰测试

合理的

良好的手眼标定结果示例

手眼变换矩阵看起来合理,与粗略的手动测量结果一致(见下表和图像)。

手眼变换矩阵

0.999

-0.002

0.0412

-55.598

0.001

0.999

0.0283

-90.654

-0.041

-0.028

0.998

129.044

0

0

0

1

../../_images/eye_in_hand_approximate_hand_eye_matrix.png

标定的残差在可接受的范围内,表明优化已成功收敛。

残差

N(位姿)

平均旋转角度(°)

最大旋转角度(°)

平均平移残差(mm)

最大平移残差(mm)

10

0.021

0.042

0.109

0.172

对于小型机器人,我们预计残差在亚毫米范围内;而对于大型机器人,残差则在毫米范围内。至于残差的旋转分量,我们预计其在亚度范围内。

全部的残差数据
残差

位姿

旋转角度(°)

平移量(mm)

1

0.017292

0.163

2

0.008218

0.135

3

0.028

0.172

4

0.009

0.053

5

0.042

0.080

6

0.008

0.098

7

0.022

0.138

8

0.025

0.077

9

0.036

0.125

10

0.013

0.048

使用投影进行验证也通过了,表明手眼变换是正确和准确的。

../../_images/projection_verification_good.png

成功完成手眼标定后,您会立即观察到以下一种或多种情况:

  • 触碰测试失败(未落在预期位置)。

  • 机器人定位似乎不准确(例如,物体拾取/放置始终存在偏移)。

  • 在 TCP 坐标系中旋转时,机器人尖端会"漂移"或以小弧线扫过。

潜在原因

工具中心点 (TCP) 不正确(测量错误或未对准)。

即使手眼标定结果的残差看起来良好,错误的TCP也意味着机器人*假定的*工具尖端位置与*实际*尖端位置不符。这会导致:

  • 良好的手眼标定数学

  • 物理精度差

  • 触碰测试未命中目标

  • TCP坐标系中的旋转导致工具尖端出现可见漂移(这是最可靠的指标)。

这种不匹配是手眼标定正确完成后触碰测试失败的最常见原因。

如果触碰测试失败,如何验证 TCP?

这是推荐且最安全的 TCP 验证方法。它无需任何接触,只需 旋转 即可,并且能够清晰地显示 TCP 错误。

备注

建议使用机器人制造商提供的 TCP 校准方法和验证工具。

先决条件:

  • 已启用示教/慢速模式。

  • 坚硬、固定的尖状物体(例如,垂直立在平面上的螺丝)。

  • 配备尖锐工具的机器人。

流程:

  1. 定位工具末端:移动机器人,使工具的尖端与参考对象的尖端精确重合。(无需施加接触力,仅进行对齐即可。)

  2. 切换到 TCP 坐标系:在机器人示教器上,选择 TCP 坐标系。

  3. 围绕 TCP 旋转:围绕 X、Y 和 Z 轴进行小幅旋转(±10-30°)。不要 进行平移。

  4. 请查看工具尖端:

    • 如果 TCP 正确: 工具尖端在整个旋转过程中始终保持在参考点上。

    • 如果TCP不正确: 旋转过程中,工具尖端会明显地扫过一个圆弧或相对于参考点发生偏移。这种漂移是 TCP 错误或测量不准的决定性标志。

  5. 如果发现漂移,则重新测量 TCP。

潜在解决方案

  1. 使用尖头参考物以及机器人内置的 TCP 校准程序,重新标定 TCP。

  2. 重复进行 TCP 验证旋转测试。

  3. 确认 TCP 正确后,重新运行触碰测试。

备注

  • 即使 TCP 错误,手眼标定残差看起来良好也是正常的。手眼标定解决的是坐标系之间的转换问题,而不是工具尖端的物理位置问题。

  • 当有疑问的时候,通过旋转法来验证 TCP 比重跑一次标定要快得多。