Unitree G1 左臂功耗线性可辨识,铜损加粘滞占八成、R²=0.933

Identification of a Physics-Based Electrical Power Consumption Model for the Unitree G1 Humanoid Arm

Nestor N. Deniz, Sebastian Vega, Simon Parsons, Fernando Auat Cheein

cs.RO

2026-06-15

给 Unitree G1 左臂七个关节建了物理可解释的线性电功率模型,铜损、粘滞、库仑摩擦加多关节耦合。897 条轨迹拟合 R²=0.933、RMSE 1.07 W,未见中间速度上验证 R²=0.965。

这篇在解决什么

人形机器人干活靠电池。Unitree G1 静止时整机大约 135 W,手臂一动功耗再叠上去。要做能耗感知规划、估任务能撑多久、给电机做热保护,得先能预测电功率。现成方案两头都不合用:神经网络拟合工业臂可以很准,但外推差,也看不出哪个关节在烧电;从绕组电阻、谐波减速器参数推第一性原理模型,商用平台又不给这些数。

工业机械臂的能耗建模已经有一批工作,UR5e 那种固定基座协作臂也有完整机电模型。人形臂的约束不一样:电池供电、机载功率传感器大约只有 1 Hz、站立时腿会为平衡补偿手臂反力、姿态一变重力补偿电流也变。这篇用机载功率当回归目标,给现代人形臂辨识一套物理可解释、对参数线性的电功率模型。

方法

对象是 G1 左臂 7 个关节:肩 pitch / roll / yaw、肘、腕 roll / pitch / yaw,SDK 电机编号 15–21。每个关节是无刷直流电机加谐波减速器。关节位置、速度、估计转矩走 100 Hz 的 ROS2 话题。功率用主板传感器(MBS):盯上身/手臂供电轨,静止约 120 W,比电池管理系统的 135 W 低 15 W,噪声更小,后面全程用它当回归目标。

单关节电功率拆成四项。机械功率是转矩乘角速度,系数 a 是齿轮效率的倒数。铜损是转矩平方,对应绕组电阻发热。库仑摩擦跟角速度绝对值成正比。粘滞摩擦跟角速度平方成正比。这是把电机方程写到关节侧之后的标准分解。

关键修正是基线铜损。手臂停在 home 姿态时,重力补偿电流已经打进基线功率。运动时用「当前转矩平方减去静止窗口平均转矩平方」当铜损回归量。手臂抬到比重力负载更轻的姿态时,这项变负,净功率可以为负。这是相对 home 少烧的那部分铜损,不是传感器噪声。

多关节同时动时,测到的功率高于各关节单独贡献之和,公共直流母线上的驱动交互会多吃一部分电。模型再加 21 个成对交互项:两关节角速度绝对值的乘积,系数非负。全部 49 个参数对功率线性,约束最小二乘就能解。约束是 a≥1、其余 ≥0,用 CasADi 调 IPOPT 解凸二次规划。

工程上有两处必须做对。第一,MBS 约 1 Hz、运动学 100 Hz,逐样本拟合条件数到 7.8×10¹¹,R² 不到 0.04。把每条轨迹平均成一行(中位约 1016 个样本),噪声大约降 32 倍,观测才重新独立。第二,快动作时站立平衡器会动腿,上身供电轨漏进腿的功耗。IMU 角速度标准差超过中位数 2.5 倍的轨迹直接扔掉:1017 条里丢掉 104 条。再跑两轮 3σ 残差剔除 16 条,峰度从 77 降到 2.97。留下 897 条做辨识。

实验时机器人站着、安全吊带、右手自然下垂,左手装着 Dex3-1。位置增益 400 N·m/rad,速度增益 12 N·m·s/rad。训练速度 0.5 / 1.0 / 1.5 / 2.0 / 2.5 rad/s,覆盖单关节扫描、全部两关节组合、以及三关节以上组合。腕部轨迹必须单独做:不做的话腕部的铜损和摩擦项不可辨识,求解器会给出任意值。验证另跑 46 条,速度卡在中间档 0.75 / 1.25 / 1.75 / 2.25 rad/s,路径跟采集时同一套路点,不再过滤。

结果

设置RMSEMAE
897 条辨识集(轨迹平均)0.9331.07 W0.86 W
46 条未见速度验证0.9653.58 W2.33 W
逐样本拟合(对照)<0.04数值退化数值退化

验证集功率量程拉到 121.7 W,训练集约 27 W 封顶,所以 RMSE 从 1.07 W 升到 3.58 W,相对满量程约 2.9%。偏差 −0.72 W,略低估。最差残差 17.2 W,出在 1.0 rad/s 的肘–腕 pitch–yaw 三关节快动作,训练里这个关节组合没覆盖到该速度。其余轨迹大多差几瓦。训练范围 −5 W 到 27 W,最快的四五关节组合误差最大到 3.3 W,论文怀疑是母线压降的非线性,线性交互项兜不住。

所有关节 a 都卡在下界 1,齿轮损耗被吸收进铜损和摩擦项,谐波减速器处在高效率区时常见。主导损耗按关节拆开:

关节主导项关键系数
肩 pitch、腕 roll / pitch / yaw粘滞摩擦腕 yaw 的 d=1.7848,全臂最大
肩 yaw、肘铜损b=0.2799 / 0.3942
肩 roll库仑摩擦c=1.2767,全表最大

腕 pitch 三项都不小(铜损 0.3768、库仑 0.3464、粘滞 1.2004),是最均衡的一轴。交互项最大的是肩 roll–肘(1.1053)和肩 pitch–肘(0.9090),运动链上经常一起动的那几对。

在 46 条验证集上按项拆贡献:铜损 42.4%、粘滞 38.2%,两项就超过 80%;机械功率 10.1%、库仑 4.7%、交互 4.5%。交互项不大,但去掉之后多关节功率会对不齐。

为什么重要

G1 已经进实验室做操作和强化学习。规划器和仿真里常见的「用转矩范数当能耗代理」看不见关节差异:肩 roll 主要在克服库仑摩擦,肘和肩 yaw 在烧铜损,手腕几乎是粘滞。做能耗感知轨迹、估电池、给电机热管理,这个粒度才有用。

模型对参数线性、49 个数、机载传感器就能辨识,不需要厂家给绕组电阻和谐波效率。已经嵌进深度强化学习的奖励,用来训节能伸手。

这是渐进工作:工业臂能耗建模的方法搬到人形臂,补上重力基线修正、多关节耦合、以及 1 Hz 传感器必须轨迹平均这三件脏活。没有和神经网络基线对打,论文也未附代码与数据。

局限与存疑

论文自己列了三条。绕组电阻随温度走,长实验里铜损系数会漂,没有用电机温度做校正。谐波减速器不能反驱,减速时效率跟加速不对称,模型却共用一个 a。两条关节速度曲线一样时,粘滞项和交互项完全共线,单个 d 和 e 分不开,只有合在一起可信。

另外几处没写透。全程装着 Dex3-1,腕 yaw / pitch 的大粘滞系数可能有一部分是手的转动惯量,不是齿轮摩擦;论文也承认要再做一轮空手对照。数据来自单次录制、站立吊带、只动左臂,验证路径还是训练那套路点,只是速度插在中间档。验证 R² 比训练集还高,量程差了四倍,最差点 17.2 W 的相对误差并不小。MBS 仍含部分上身负载,腿补偿漏电靠 IMU 阈值硬切,切掉了约 10% 轨迹。没有和 LSTM 或混合模型比过预测精度。强化学习嵌入只在结论提了一句,没有给出节能幅度。

术语

原文与代码

社区讨论

相关论文

全部论文解读