整臂扭矩传感器标定方法
1 适用范围
本文用于指导 G 系列机械臂完成整臂关节扭矩传感器标定、参数写入回读校验和标定脚本内置位姿校验。
当前已经提供并验证的型号为 G40 和 G35。运行标定前必须根据实际机械臂型号选择对应脚本;其他 G 系列型号暂不在本文附件的可用范围内。
| 项目 | 要求 |
|---|---|
| ARCS 版本 | 0.32.2-alpha.15 及以上 |
| App 版本 | 0.10.2-rc.9 及以上 |
| 关节固件版本 | 1.0.0-alpha.27 及以上 |
| 当前支持型号 | G40、G35 |
| 安装方向 | 正装 |
| 负载 | 满载,并准确设置实际质量和重心 |
1.1 G35 与 G40 标定脚本差异
由于 G35 暂未配置振动抑制频率,当前须按机型使用不同的标定脚本:
| 型号 | 振动抑制 | 到达采样位姿后的稳定等待时间 |
|---|---|---|
| G40 | 已开启在线振动抑制 | 10 秒 |
| G35 | 暂未开启振动抑制 | 15 秒 |
上述等待时间同时用于标定数据采样和标定脚本内置位姿校验的数据采样。后续 G35 补充振动抑制频率后,可统一标定脚本,无需再按机型区分。
安全警告: 标定工程会控制机械臂依次经过多个大范围关节位姿。仅允许经过培训的人员操作。运行前必须清空机械臂臂展及可能扫过的全部区域,确保急停装置可用,并在整个运行过程中保持现场监护。
2 标定附件
下载并解压以下附件:
压缩包内包含:
| 文件 | 用途 |
|---|---|
torque_sensor_calibration_new.pro |
标定工程 |
AUBO_joint_torque_calibration-G40.lua |
G40 标定及内置位姿校验脚本 |
AUBO_joint_torque_calibration-G35.lua |
G35 标定及内置位姿校验脚本 |
AUBO_joint_torque_validation.lua |
标定参数独立误差采集脚本,不写入硬件参数 |
.pro 工程的脚本节点默认引用 AUBO_joint_torque_calibration-G40.lua。解压后须保持工程和 Lua 文件位于同一目录,不要修改脚本文件名。G35 使用时必须在脚本节点中改为加载 AUBO_joint_torque_calibration-G35.lua。
3 标定前置检查
3.1 机械零点
确认机械臂已完成徕卡机械零点标定。零点未标定或结果不可信时,禁止继续。
3.2 底座水平度
使用水平仪检查机械臂底座水平度:
- 在底座上选取至少 3 个不同位置。
- 在每个位置分别按东、南、西、北、东南、西南、东北和西北 8 个方向检查。
- 所有位置、所有方向相对地面的倾斜角均须小于
1°。
任一测点不满足要求时,应先重新调平底座。
3.3 重力加速度补偿
按以下步骤完成重力加速度补偿:
读取并记录机械臂当前的重力加速度数据。
使用水平仪测量机械臂底座相对水平面的偏差。
进入
ec_robot_config工具所在目录,执行以下命令,根据测量结果写入底座偏置:./ec_robot_config base gravity-calib写入完成后重新读取重力加速度数据,确认数据正常、有效。
未完成重力加速度补偿或重力加速度数据异常时,禁止执行扭矩传感器标定。
3.4 安装与负载
- 将机械臂正装并固定牢靠。
- 安装该型号的满载负载。
- 在 App 中准确设置有效负载质量和重心。
下图为正装示例。现场工装和负载以实际标定配置为准。

注意: 截图中的负载数值仅为示例,不可直接照抄。质量或重心设置错误会直接影响重力力矩计算和标定结果。
4 操作步骤
4.1 调整至零位
上电后,将 6 个关节调整至机械零位,并确认界面中的各关节角度均为 0.00°。

4.2 设置满载负载
进入负载配置页面,选择或新建对应负载,准确填写质量和重心,并将其设为当前有效负载。

4.3 检查扭矩传感器数据
在主页打开“力矩传感器”页签,检查各关节的 torq 和 sensor_torq:
- 两组数据均不得显示为
1111.11。 - 数据应为有效数值,并能随机械臂状态变化。
若任一关节始终显示 1111.11、无数据或数值不变化,应停止标定,先排查传感器、关节固件和通信状态。

4.4 导入并运行标定工程
- 将解压后的
.pro和 3 个.lua文件保持在同一目录。 - 在 AuboStudio 中打开
torque_sensor_calibration_new.pro。 - 根据实际型号,在工程脚本节点中选择对应的标定脚本:
- G40:
AUBO_joint_torque_calibration-G40.lua,到达采样位姿后等待 10 秒。 - G35:
AUBO_joint_torque_calibration-G35.lua,到达采样位姿后等待 15 秒。
- G40:
- 确认当前工程的机器人型号与实际设备一致。若 AuboStudio 提示工程型号不匹配,应新建对应型号的工程并添加文件型脚本节点,不得忽略型号不匹配提示直接运行。
- 再次确认机械臂运动范围内没有人员和物品,然后启动工程一次。

标定过程中,脚本会自动完成以下阶段:
- 依次运行各关节标定轨迹并采集数据。
- 对传感器力矩与重力力矩进行线性拟合。
- 在写入硬件前保存标定结果。
- 写入并回读校验
sensor_calib_k和sensor_calib_b。 - 参数回读通过后,运行标定脚本内置位姿校验并保存结果。
标定脚本内置校验的阈值根据本次标定结果逐关节动态计算:
校验阈值 = |对应关节的最大拟合误差| × 1.25
对 J2~J6,所有校验位姿的绝对误差均不超过对应关节的校验阈值时,该关节判定为 PASS;只要有一个位姿超过阈值,该关节即判定为 FAIL。J1 采用特殊标定方式,只记录校验数据,不参与 PASS/FAIL 判定。
运行期间不要手动移动机械臂、停止工程或切断电源。若发生安全风险,应立即按下急停,并将本次标定结果视为无效。
4.5 等待标定完成
工程正常结束时会弹出以下提示:
关节扭矩传感器校验通过,结果已保存

仅看到工程停止或 CSV 文件生成,不能单独作为标定成功依据,还须按下一节检查两个结果文件。
5 结果检查
结果保存在目录:
/root/arcs_ws/log/.trace/
每次运行会按时间戳生成两个文件:
| 文件 | 内容 |
|---|---|
calibration_YYYYMMDD_HHMMSS.csv |
拟合结果、参数写入与回读结果、标定采样数据 |
validation_YYYYMMDD_HHMMSS.csv |
标定脚本内置位姿校验状态、各关节汇总和详细数据 |

标定成功须同时满足:
- App 弹出“关节扭矩传感器校验通过,结果已保存”。
calibration_*.csv中PARAMETER_WRITE_FINAL_RESULT为PASS。validation_*.csv中状态为COMPLETED,PASS,且VALIDATION_FINAL_RESULT为PASS。
脚本对 J1 使用特殊处理:k 固定为 1.0,b 根据零重力位置计算;J1 不参与标定脚本内置位姿校验的最终判定,因此校验汇总中的 J1 显示 SKIP 属于正常现象,不代表失败。
6 验证参数写入
完成标定并保存结果后,按规范对机械臂断电,再重新上电。在上电日志中搜索:
JOINT_TRQ_SENSORCALIB_K
JOINT_TRQ_SENSORCALIB_B
逐关节确认日志打印的 k、b 与本次 calibration_*.csv 中的写入及回读结果一致。任一关节不一致时,不得判定标定成功,应保留结果文件和上电日志继续排查。
7 使用独立误差采集脚本
AUBO_joint_torque_validation.lua 用于标定完成后的独立误差采集。该脚本适用于当前支持的 G40 和 G35,其行为如下:
- 直接回读硬件中的
sensor_calib_k和sensor_calib_b。 - 自动运动至 5 个测量位姿并采集重力力矩和传感器力矩。
- 计算每个关节的预测重力力矩、误差、绝对误差及汇总统计。
- 不写入或修改任何硬件标定参数。
- 不执行
PASS/FAIL判定,输出数据须结合技术要求进一步分析。
建议在完成第 6 节的重新上电及参数写入验证后运行:
- 保持与标定时一致的安装方向、满载负载、质量和重心配置。
- 在对应型号的 AuboStudio 工程中添加文件型脚本节点,并加载
AUBO_joint_torque_validation.lua。 - 清空机械臂全部运动区域,确认急停装置可用后运行脚本。
- 等待弹窗提示“各关节误差采集完成,结果已保存”。
结果保存在:
/root/arcs_ws/log/.trace/joint_torque_error_YYYYMMDD_HHMMSS.csv
文件中包含机械臂序列号、脚本版本、重力加速度、各位姿逐关节误差,以及 mean_error、MAE、RMSE、max_abs_error 等汇总数据。
注意: “各关节误差采集完成”只表示数据采集和文件保存完成,不等同于标定校验通过。该脚本不会输出
PASS或FAIL。
8 异常处理
| 现象 | 处理方法 |
|---|---|
torq 或 sensor_torq 显示 1111.11、无数据或不变化 |
停止标定,检查传感器、关节固件版本和通信状态 |
| 提示“写入硬件前保存标定 CSV 失败” | 参数写入已取消;检查 /root/arcs_ws/log/.trace/ 的目录权限和可用空间 |
| 提示“参数回读校验失败” | 标定结果已保存,但标定脚本内置位姿校验未执行;检查 calibration_*.csv 中的期望值、回读值和差值 |
| 提示“校验失败,参数已写入,结果已保存” | 参数仍保留在硬件中;保存两个 CSV 和运行日志,停止重复标定并交由相关人员分析 |
validation_*.csv 显示 NOT_RUN,NOT_RUN |
参数回读校验未通过,不能按标定成功处理 |
独立误差采集脚本提示无法完整回读 k、b |
停止运行,检查硬件标定参数是否已正确写入 |
已生成 joint_torque_error_*.csv,但没有 PASS |
属于正常设计;该脚本只采集误差,不进行合格判定 |
| 运行被急停、断电或人为中止 | 本次结果无效;排除中止原因并重新执行完整流程 |
9 注意事项
- 机械零点、底座水平度和重力加速度补偿三个前置条件必须全部满足,否则禁止执行扭矩传感器精标定。
- 本文适用于 G 系列,当前附件仅支持 G40 和 G35;其他型号不得仅修改文件名后直接使用。
- 标定前后都应保留负载质量、重心、软件版本和关节固件版本记录,便于结果追溯。
- 不要只依据弹窗或单个 CSV 判断成功,应同时核对参数回读、标定脚本内置位姿校验和重新上电后的日志。