跳转至

校准

舵机从上电时所处的位置开始计数编码器步数。校准的作用,就是把这些计数变成 "肘部在 30°"。在完成校准之前,3D 视图里的机械臂和你桌上的机械臂对不上,而之后的 每个模块都会继承这个误差。

校准一共有三种,解决的是不同的问题。

1. 零位——模块 3

这是每个人都需要做的校准,也是课程的一部分。

模块 3 的校准步骤:3D 视图中显示的 HOME 姿态和 Calibrate 按钮

模块 3。把真实机械臂摆成模拟器中的 HOME 姿态,然后按 Calibrate。
  1. 模拟器显示 HOME 姿态。用手移动真实机械臂,直到与之一致。连接之后机械臂是 松软的,所以只需摆好姿态即可。
  2. Calibrate。应用关闭力矩并逐个处理关节——Preparing…Calibrating elbow…Calibrating wrist…Saving…
  3. 偏移量写入每个舵机自身的存储器,校准结果保存到你账户下的这台机器人中。

随后模块会让你验证:把腕部旋转驱动到 90°,检查它是否真的是 90°。

把 HOME 姿态摆准,就是全部的工作

这里马虎十度,之后每个模块里就是十度的误差。沿着连杆目测对齐,用桌子边缘做 参照,多花这一分钟是值得的。

之后的检查

模块 3 并不止于校准。它还要求你:

  • 用手转动关节 6,观察 3D 视图里的孪生体跟随运动,然后对每个关节重复——这是发现 某个关节接错 ID 的最快方法;
  • 比较每圈 36 个计数的关节 1 和每圈 4096 个计数的关节 2,让"分辨率"这个词不再 抽象;
  • 用三次尝试测量 重复性,再用三次测量 准确度。课程会给结果打分,并告诉你 这种规律意味着什么——随角度增大的误差,与随机跳动的误差,是两种不同的故障。

2. 运动范围——Calibrate robot 工具

零位告诉机械臂它在哪里,运动范围告诉它能走多远。Calibrate robot 工具记录每个 关节真实的机械限位,使软件限位与你面前的这台机器一致,而不是与标称设计一致。

Account → My robots → CalibrateTools 打开它。组装好机械臂时运行 一次,更换舵机或打印连杆后再运行一次。

3. 相机——Camera calibration 工具

仅适用于带腕部摄像头的机械臂,并且只在那些把相机所见换算成夹爪目标位置的模块之前 才需要。

该工具使用打印的棋盘格:从多个角度把它展示给相机,工具就能解算出镜头参数。结果随 机器人一起保存,可以在 Account → My robots → Show camera calibration data 中查看:焦距、主点、畸变系数、图像尺寸和 RMS 重投影误差。

重投影误差在一个像素左右以下就是不错的校准。如果大得多,值得让棋盘格占据画面更大 的部分,重新拍摄一遍。

什么时候需要重做

情况 重做
重新装配了某个关节或更换了舵机 零位,然后运动范围
机械臂摔过,或被强行掰过限位 全部
角度看起来正确,但机械臂总是偏差一个固定量 零位
机械臂伸得越远误差越大 运动范围,然后检查连杆是否装配到位
相机被移动过或重新对过焦 相机校准
换了一台电脑 无需重做——校准保存在你的账户中,而不是电脑上

在账户之间迁移校准

Account → My robots → Export robot 会写出一个包含校准数据的 JSON 文件; Import robot 则把它读回来。在只有一台机械臂、多名学习者的课堂上,大家就是这样 在不必每次轮换都重新校准的情况下,用上同一台校准好的机器。参见 共用一台机械臂