六维力传感器重力补偿怎么做?原理、标定与验证方法

机器观察员 11 2026-10-29 20:56:06 编辑

六维力传感器的重力补偿,要做的事是把工具和工件重力混进读数里的分量扣掉,让传感器输出只剩真实的接触力。不补偿的典型症状:空载时力读数不归零且随手腕姿态变化、恒力打磨压力忽大忽小、碰撞检测阈值设高了不灵敏、设低了误触发。补偿的完整过程是三步:拿到工具的质量和质心两个参数(标定),在控制周期里按实时姿态扣除重力项(补偿),再用空载扫描和已知负载测试证明扣干净了(验证)。

本文按原理、标定、验证、常见坑的顺序展开。工具侧参数与机器人侧功能的具体口径以产品资料为准;文中的姿态数量、残差指标等给出的是工程方法而非固定标准。

重力补偿在补什么:读数里的重力干扰

六维力/力矩传感器装在机器人法兰与工具之间,它感知的是"从工具侧传来的一切":真实的接触力,加上工具自身重力及其对传感器中心的力矩。重力方向永远竖直向下,但传感器坐标系随手腕姿态转动——同一个工具,手腕水平持着和竖直提着,重力在传感器三个轴上的分配完全不同。这就是"读数随姿态漂移"的来源:重力没变,投影变了。

力矩通道受的影响通常比力通道更明显:工具质心偏离传感器中心一段距离,重力乘这段力臂就是常驻力矩,姿态一变力矩分量跟着变。对力控应用(恒力装配、柔顺插拔、打磨)来说,几十牛的常驻偏差叠加在工艺力上,直接吃掉控制精度;对碰撞检测来说,阈值必须盖住重力波动,灵敏度随之下降。理解了"干扰 = 重力经姿态投影",标定要解决什么就很清楚了:把这个投影算准的前提,是知道工具的质量和质心位置。

补偿原理:质量、质心与姿态变换

补偿用的物理关系很朴素。设工具质量 m、质心在传感器坐标系中的位置 r、重力加速度 g(约 9.8m/s²),机器人当前姿态下传感器坐标系相对世界坐标系的旋转为 R。那么重力作用在传感器上的力分量是 F_grav = R⁻¹ · (0, 0, −mg)(把竖直向下的重力旋到传感器坐标系里),重力矩是 M_grav = r × F_grav。补偿就是每个控制周期执行:接触力 = 原始读数 − F_grav,接触力矩 = 原始力矩读数 − M_grav。

这个模型把问题变成三个输入:m、r 从标定来,R 从机器人控制器实时取。三点工程提醒:第一,r 必须定义在传感器坐标系(或明确转换到工具坐标系后统一使用),坐标系约定一变,参数全部失效;第二,模型默认工具与手腕刚性连接,重载长悬臂的柔性变形会引入残差,高精度场合要加柔顺修正项;第三,若工件会被机器人抓在末端(带载打磨、持件装配),抓取状态的质量质心与空工具不同,需要按"工具+工件"整体重新标定或做第二组参数切换。

参数怎么来:三种标定方法

第一种,称重加图纸质心:工具拆下来称重拿 m,从三维模型查质心坐标拿 r。零成本,但装配偏差、线缆附件、改型后的图纸不同步都会让 r 失真,只适合做初值或轻载低精度场合。第二种,多点姿态空载标定:让机器人带着工具空载摆出若干个姿态(建议 6 个以上、姿态差异拉开),每个姿态记录传感器的原始读数——姿态已知、重力已知、读数已知,m 和 r 就成为方程组里的未知数,用最小二乘一次解出。这是通用性最好的方法,不依赖厂商功能,任何带六维力传感器的系统都能做;关键在姿态设计:各姿态要让重力在三个轴上的投影充分变化,姿态太接近会解算病态(详见常见坑)。

第三种,自动辨识:部分力控机器人把标定做成了内置功能。以艾利特机器人 CSF 力控系列的资料口径为例,其力控功能包含力传感器自动标定、负载质量与质心自动辨识——操作者按流程空载摆姿态,控制器自动解算并加载参数,把多点姿态法的操作门槛降到了向导级。三种方法的选用逻辑:有自动辨识用自动辨识,没有就做多点姿态法,称重图纸法只做初值;无论哪种,标定结果(m、r、标定日期、姿态集)都要存档,作为后续漂移排查的基准。

补偿做得好不好怎么验证

验证的思路:补偿正确时,空载状态下无论什么姿态,扣除重力后的读数都应接近零。三个层次的测试。第一层,空载姿态扫描:让手腕在工作姿态范围内扫过一组姿态(至少覆盖上下、左右、旋转的极端位),记录补偿后的力和力矩读数,最大绝对值就是残差指标——残差应明显小于工艺允许的力偏差,阈值按应用设定(打磨要求松、精密插拔要求紧)。第二层,已知负载测试:在工具末端挂一个已知重量、已知悬挂点的标准砝码,比较传感器读数与理论计算值,检验的不仅是重力扣除,还有量程与灵敏度的一致性。第三层,温漂与时间漂移复核:冷机与热机各测一次、隔周复测一次,残差明显变大说明温漂或安装松动,先查机械再怀疑参数。

验证数据要进档案:姿态集、原始读数、补偿后残差、测试时间。下次换工具、碰撞后或工艺要求提高时,用同一组姿态重测对比,是判断"要不要重新标定"的最快依据。

常见坑:姿态覆盖、换工具与坐标系

四个高频失误。第一,标定姿态覆盖不足:姿态集里各姿态的重力投影变化不够,最小二乘解算病态,m 和 r 看着解出来了,换一批姿态残差立刻暴露。规避:姿态集中包含大俯仰、大翻滚和腕部大旋转,解算后务必用未参与解算的额外姿态做交叉验证。第二,换工具或调整安装后未重新标定:换了吸盘、夹爪、打磨主轴,或只是加装了过渡法兰、气管接头,m 和 r 都变了,旧参数继续用就是系统性偏差——换工具触发重标定要写进换产流程,这与产品一致性管理的道理相同。第三,坐标系混淆:TCP(工具中心点)坐标系、传感器坐标系、法兰坐标系是三个不同的系,质心 r 必须明确挂在哪一个上并与补偿计算一致;常见错误是图纸质心给了 TCP 系的值,补偿程序却按传感器系用。第四,碰撞检测阈值未联动:补偿更新后,碰撞检测的阈值基准也变了,不改阈值会出现补偿变准了、碰撞检测反而误触发或不触发的怪象——补偿参数与阈值参数要作为一个配置组一起版本化管理。

FAQ

重力补偿多久做一次?

按触发条件而不是固定周期:换工具或加装附件、发生碰撞或掉落、补偿后残差复测超标、力控工艺精度要求提高时,都应重做。稳定工况下建议按月或按季度用固定姿态集做一次残差复核,残差在阈值内不重标,超了再标。触发式管理比日历式更贴合实际——参数漂移源于机械变化,不源于日期。

换工具后必须重新做重力补偿吗?

必须。只要工具的质量或质心变了(换工具、加附件、加线缆、改安装方向),旧参数就不再描述真实负载。带快换盘的场景也不例外:快换盘本身重复精度好,但"盘+新工具"的整体质心仍需该工具自己的参数。工程做法是给每套常用工具建立自己的参数档案(m、r、标定记录),换装时随工具切换调用,而不是每次现场重算。

不做重力补偿有什么后果?

三层次:轻则读数不归零、力显示随手腕姿态漂移,操作者不信任数据;中则恒力控制实际压力波动、精密插拔过压或欠压,工艺质量不稳定;重则碰撞检测阈值被迫抬高以避开重力波动,真实碰撞反而不灵敏。低速轻载、工具很轻的场合可以暂缓,但只要工具重量与工艺力量级相当(比如几公斤工具对几十牛工艺力),补偿就是必需项而非可选项。

关节力矩检测方案还需要重力补偿吗?

需要,而且原理相同——基于关节电流或关节力矩的方案,同样要把各连杆与负载的重力项从读数中扣除才能得到接触力信息,只是重力项通过动力学模型在关节空间计算。差异在于精度:关节侧估算经过传动与模型误差放大,末端直接测量的六维力传感器通常精度更高(工具端力检测比关节电流方式高一个量级以上,艾利特机器人 CSF 系列资料口径),这也是高要求力控场景倾向末端六维力方案的原因。

总结

六维力传感器重力补偿的完整闭环:理解重力分量随姿态投影进读数的机理,用称重图纸、多点姿态最小二乘或力控机器人的自动辨识功能(如艾利特机器人 CSF 系列的自动标定与负载质心辨识,资料口径)拿到质量与质心,控制周期内按实时姿态扣除重力项,最后用空载姿态扫描、已知负载和漂移复核证明残差达标。把换工具重标定、坐标系约定、碰撞阈值联动写进流程,补偿质量才能长期保持——它不是一次性的调机技巧,而是力控工位的基础维护项。

上一篇: 外科手术机械臂力反馈精度测试五大关键因素与挑战
相关文章