先记住一句话

BMS 保护电芯,保险丝保护导线,驱动器保护功率器件,急停把系统带到定义好的安全状态;四者职责不同,不能互相替代。

motion power profilepack voltage/capacitypeak current/sagprecharge/contactorregen paththermal + fault validation
Cellsseries × parallel
BMS + fusepack protection
Precharge/contactorenergize bus
Drivesmotoring / regen
Thermal pathcontinuous limit
电能既会流向 actuator,也会在制动时回到 bus;每种 operating state 都要有受控路径。

1. 从电芯搭成电池包

  • S(串联数):提高包电压。13S 表示 13 组串联;若按 3.7 V 典型电芯估算,名义电压约 48.1 V,但真实范围由化学体系和 BMS 决定。
  • P(并联数):提高容量与可供电流,并要求电芯匹配和可靠连接。
  • Ah:电荷容量;Wh ≈ nominal V × Ah 更接近总能量。
  • C-rate:以容量倍数表示充放电流,但持续/峰值、温度和寿命条件必须看 datasheet。
  • 内阻:造成 ΔV = IR 电压下陷和 I²R 发热;SOC 低和低温时往往更明显。

Unitree G1 公开规格是 13S、9000 mAh smart battery、54 V 5 A charger。这些数字说明一个真实人形的电压和能量数量级,不代表可以绕开原厂 BMS 或改变充电参数。

2. BMS 做什么、不做什么

BMS 常做仍需整机做
单体电压、包电流与温度监测支路保险丝和导线/连接器配额
过充、过放、过流保护驱动器微秒级相过流/短路保护
SOC/SOH 估计与 cell balancing急停、torque-off、姿态安全与受控停车
充放电 MOSFET/接触器管理回生功率协调、DC bus 过压吸收

BMS 触发硬切电可能让机器人突然失去支撑,因此正常控制应在触发硬保护前根据 SOC、温度和电压主动降额并安全坐下。

3. 电源树怎么画

BATTERY + BMS
   │
service disconnect ─ fuse ─ precharge ─ main contactor ─ HV/DC bus
                                                        ├─ leg drives
                                                        ├─ arm drives
                                                        ├─ brake chopper
                                                        └─ isolated/nonisolated DC/DC
                                                             ├─ compute
                                                             ├─ sensors
                                                             └─ logic + safety

分支应定义额定/峰值电流、线径、连接器、保险丝、压降与回流。计算机电源要能扛住关节峰值导致的母线下陷;传感器/通信可能需要隔离或更干净的 rail。

4. 预充和接触器

驱动器 DC-link 电容在未充电时近似短路。直接插电会产生巨大 inrush、打火并损伤连接器。预充支路先通过电阻限制电流,监测母线接近电池电压后再闭合主接触器;断电时还要考虑电容放电和安全等待时间。

接触器有额定工作电压、电流、断开 DC 故障电流能力和线圈驱动要求。能承载 100 A 不代表能安全切断 100 A 的直流电弧。

5. 急停不是普通软件按钮

安全动作取决于机器人状态:站立人形立刻切所有力矩可能直接倒下;继续保持位置又可能夹伤人。因此系统要定义 stop category 和可接受风险,例如:

  1. 安全控制器或硬件链检测急停、倾倒、通信/看门狗故障。
  2. 若仍可控,先限力矩、减速或进入支撑姿态。
  3. 在限定时间后触发驱动 disable / STO 等 torque-off 路径。
  4. 必要时断开主接触器;机械制动按重力和掉电状态设计。
  5. 故障锁存,必须显式复位,不因消息恢复自动重启。

具体实现必须经过整机风险评估;本文是架构直觉,不替代功能安全标准和认证。

6. 回生能量和母线过压

Pregen ≈ −Σ τjoint ωjoint − losses

关节减速、落地吸收或被外力推动时,驱动器把能量送回母线。可用路径包括:

  • 电池接受充电;受 SOC、温度、BMS charge current 限制。
  • 其他关节或计算负载同时消耗。
  • brake chopper + resistor 把过剩能量变成热。
  • 控制器限制负向功率、减速度或动作。

只按“平均行走功率”选电池和母线会漏掉短时回生和峰值放电。

7. 热设计决定连续指标

copper loss ≈ I²R  switching loss ↑ with PWM frequency  Tjunction = Tambient + Ploss·Rθ

绕组、磁钢、MOSFET junction、PCB、减速器润滑和电池各有温度边界。温度传感器位置比热点冷,软件阈值要包含热模型和裕量。峰值电流通常先撞电子/磁饱和限制,连续电流通常撞热限制。

8. EMI、屏蔽和接地

dv/dt 的相线与高 di/dt 的回路会耦合到编码器、IMU 和通信。常见原则:

  • 缩小功率开关回路面积,DC-link capacitor 靠近桥臂。
  • 电机相线与敏感信号分开走线,差分对保持配对。
  • 屏蔽层、机壳地和信号地按系统方案连接,避免随意两端/单端经验法。
  • 跨越不同地电位的通信考虑 galvanic isolation、共模范围和浪涌保护。
  • 用示波器、电流探头、近场探头和故障注入验证,不靠“看起来走线整齐”。

9. 四个 power/safety/thermal 手算

例 1:series/parallel pack

12S4P、单 cell nominal 3.6 V、3 Ah:pack nominal voltage=12×3.6=43.2 V,capacity=12 Ah,energy≈43.2×12=518.4 Wh

例 2:可用续航

518 Wh pack 只用 80% SOC window,conversion efficiency=90%,可用 energy≈518×0.8×0.9=373 Wh。平均功耗 300 W 时理想 runtime≈1.24 h。

例 3:precharge RC

Bus capacitance=2000 μF、precharge resistor=100 Ω,time constant RC=0.2 s。约 5τ=1 s 后 capacitor 达 source voltage 的约 99.3%,再闭主 contactor 可降低 inrush。

例 4:制动回生能量

总等效 inertia=0.5 kg·m²、angular speed=10 rad/s,kinetic energy=Jω²/2=25 J。若 0.2 s 内制停,平均回生功率 125 W;电池不接受时必须由 brake resistor/other loads 吸收。

常见误解:

电池 500 Wh、机器人平均消耗 250 W,并不保证运行恰好 2 小时。可用 SOC 窗口、DC/DC/驱动效率、峰值压降、温度降额、待机负载和老化都会缩短时间。

自测

1. 为什么 BMS 过流保护不能替代关节驱动器相过流?

BMS 看包级电流且反应边界不同;MOSFET/绕组短路需要驱动器本地更快的相电流保护。

2. 为什么满电时回生制动更危险?

电池可能没有充电接受空间或 BMS 会拒绝回充,机械能只能抬高母线电压或由制动电阻吸收。

3. 为什么急停不总是“立刻断电”四个字?

人形机器人断力矩会倒下;必须基于风险设计受控停止、torque-off、制动和断电顺序,并确保独立安全路径最终收敛到安全状态。

一手资料

Unitree G1 Specifications 给出 13S/9000 mAh/54 V 实例;ODrive Component Selection 说明电源、电流和制动边界;TI Isolated RS-485 解释地电位差与 galvanic isolation。