先记住一句话

机器人硬件选型必须闭合五本账:力矩—转速、惯量—带宽、电流—电压、功率—能量、峰值—热;再用通信时序和故障状态把它们连成系统。

任务 trajectory/contactjoint load envelopemotor/transmissiondrive/batterybus/compute timingbring-up + fault tests
Mechanicsτ,ω,J,force
ElectricalV,I,P,Wh
Thermalpeak vs continuous
Timingrate, latency, sync
Safetyfault state
系统 sizing 是互相约束的闭环账本;任何单一 catalog 最大值都不能代表整机 operating envelope。

1. 一台现代机器人的两张网络

DATA / CONTROL
camera ─┐
LiDAR ──┼→ perception computer → policy/planner → real-time controller
IMU ────┘                                      │
                                  EtherCAT / CAN / RS-485
                                               │
                                      drives ↔ encoders

POWER / SAFETY
battery+BMS → fuse/precharge/contactor → DC bus → drives → motors
                                  └→ DC/DC → compute+sensors
E-stop + watchdog + limits ─→ safety controller ─→ torque-off/contactor

数据网和电源网共享物理机身,却有不同设计规则。安全链要能在 perception、policy、普通 OS 或主通信失效时仍执行最后保护。

2. 控制频率不是一个数字

典型职责示意数量级(非标准)
PWM/电流环三相电流、硬件保护10–40 kHz
drive/joint loop位置、速度、阻抗、状态1–5 kHz
whole-body control全身动力学、接触力分配500 Hz–2 kHz
learned policy动作/目标生成30–200 Hz
vision/planning感知、地图、任务5–60 Hz

真实架构可能合并或拆开这些层。关键是为每条链定义采样时刻、deadline、worst-case latency、jitter、watchdog 与插值/保持方式,而不是让所有模块“尽量快跑”。

3. 从任务得到关节负载

  1. 列出姿态、payload、接触和加速度的 worst credible cases。
  2. 通过静力学/逆动力学得到每个关节 τ(t), ω(t),而非单一峰值。
  3. 加入碰撞、模型误差和控制裕量,但不要用一个随意 safety factor 掩盖未知。
  4. 计算机械功率 P=τω、RMS torque 和 duty cycle。
  5. 检查结构/齿轮冲击载荷与 bearing load,而不仅是电机电磁力矩。

4. 一个简化膝关节例子

假设某姿态下膝关节要支撑等效 10 kg 质量,重力力臂 0.20 m:

τstatic = mgl = 10 × 9.81 × 0.20 ≈ 19.6 N·m

若动态分析给出 3 倍瞬态,目标约 59 N·m。选 N=9、效率 η=0.9

τmotor ≈ 59/(9×0.9) ≈ 7.3 N·m  ωmotor = 9ωjoint

Kt=0.20 N·m/A(仅示例且先确认电流定义),峰值 Iq≈36.5 A。接下来仍不能宣布选型完成,还要验证:

  • 目标关节速度下 back-EMF + 电阻压降是否低于可用母线电压;
  • 36.5 A 能保持多久,驱动器、绕组、连接器和电池是否都允许;
  • 动作周期的 RMS 电流是否满足连续热边界;
  • 转子惯量经 反射后是否破坏带宽/碰撞性能;
  • 齿轮、输出轴承和外壳能否承受冲击与倾覆力矩。

Unitree G1 页面给出的膝关节最大力矩 90/120 N·m 是理解真实量级的参照,但它没有替代上述任务、连续热和速度曲线分析。

5. 规格书必须追问的指标

类别至少要拿到
力矩/速度连续与峰值、峰值秒数/占空比、完整 torque-speed curve、测试母线电压和温度
电气工作/绝对电压、phase/DC continuous & peak current、Kt/Kv 定义、R/L、回生边界
机械减速比/效率、质量、转子与输出惯量、回差、刚度、最大径向/轴向/倾覆载荷
反馈/控制编码器 resolution + accuracy、update/latency、控制模式、带宽、增益/限位、力矩估计误差
通信物理层、协议、bitrate、最大 control rate、同步、CRC/watchdog、bus load 与故障行为
环境/寿命散热条件、温度、IP、冲击振动、齿轮/轴承寿命、线缆弯折和连接器插拔次数
安全硬件过流/过压/过温、STO/disable、机械制动、失联状态、认证边界

6. 电池与母线按整条轨迹选

Pbus(t) ≈ Σ τi(t)ωi(t)/ηi + Pcompute + Psensors + losses

正值是放电,负值可能回生。用时间序列检查峰值功率、RMS/平均功率、回生峰值、SOC/温度下的电压下陷,再决定 cell、并联数、BMS、接触器、保险丝、铜线和 DC/DC。不能把每个关节峰值功率直接相加当常态,也不能假设它们永远不会同时峰值。

7. 总线按 deadline 和同步选

  • 先定义每轴 command/state 字段、字节数与 update rate,再算带宽。
  • 把 header、CRC、仲裁、inter-frame gap、reply turnaround 和重传算进去。
  • 区分“消息在 deadline 前到达”和“所有编码器同时采样”。
  • 多轴硬实时/同步优先评估 EtherCAT;低成本鲁棒小帧评估 CAN-FD;集成关节可用高速 RS-485;计算机消息层可用 Ethernet/DDS。
  • 实际选择还受现成 drive、线束、开源栈、认证、调试工具和团队经验约束。

8. 从零搭建的 bring-up 顺序

  1. 无电检查:原理图、pinout、极性、绝缘、接地、终端与机械限位。
  2. 限流低压:台式电源、小保险丝,先验证逻辑 rail、通信与传感器。
  3. 单驱动无负载:确认相序、编码器方向、电角 offset、硬件保护。
  4. 单关节低增益:悬空/治具固定,逐步测试电流、速度、位置与限位。
  5. 测 torque-speed/thermal:不要只做“转起来了”的 demo。
  6. 总线扩展:逐节点增加并监测 bus load、jitter、CRC/error counter。
  7. 整机吊装:低姿态、软限位、急停人员到位,先验证状态机和掉线。
  8. 故障注入:拔通信、模拟 encoder 错误/过温/低电、按急停,验证确实进入预期状态。

9. 一份可读的整机 BOM

子系统硬件设计输出
关节motor, drive, encoder(s), gearbox, bearings, housingtorque-speed-thermal envelope
电源cells, BMS, fuse, precharge, contactor, DC/DC, brakepower/energy/fault budget
控制real-time MCU/CPU, main compute, storagerate/deadline/watchdog table
通信transceivers, ESC/NIC, cable, connector, isolationtopology, timing and bus-load budget
感知IMU, encoders, F/T, cameras, LiDAR, thermistorsframe/time/calibration registry
安全E-stop, safety controller, STO/enable, brakeshazard analysis and safe-state machine

10. 四个整机 sizing 手算

例 1:重力关节 torque

5 kg link 的 center of mass 距 joint 0.30 m,水平时 gravity torque=mgl=5×9.81×0.30=14.7 N·m。若还要 2× dynamic margin,目标至少 29.4 N·m。

例 2:由 output 点反推 motor

Joint 要 30 N·m、120 rpm,gear N=10、η=0.8。Motor torque=30/(10×0.8)=3.75 N·m,speed=1200 rpm;两者必须在同一 torque-speed curve 工作点同时成立。

例 3:整机电流峰值

12 joints 同时各需 mechanical 200 W,总 mechanical=2.4 kW。Drive/motor combined efficiency=80%,DC input≈3 kW;48 V bus 电流≈3000/48=62.5 A

例 4:控制 deadline 预算

1 kHz loop 有 1 ms。Sensor latch 0.15 ms、bus receive 0.20、compute 0.30、bus transmit 0.20、drive apply 0.10,总=0.95 ms,margin 0.05 ms;应按 p99/worst-case 而非平均值验收。

最后一个常见误解:

“最大力矩、最高速度、最高带宽、最低重量”往往来自不同工作点,不能拼成一个想象中的最佳关节。真正的规格是一个带电压、温度、时间和控制条件的可行区域。

自测

1. 为什么只用静态重力矩选膝关节会失败?

没有包含加速度、落地冲击、速度下的电压限制、峰值持续时间、RMS 热和结构载荷。

2. 为什么 policy 50 Hz 不代表关节也只能 50 Hz 控制?

低层 drive/current/impedance loop 可以在 kHz 级运行,并在 policy 更新之间保持或插值目标。

3. 一个供应商只给峰值力矩,应追问什么?

至少追问对应速度、母线电压、电流定义、允许秒数/占空比、初始/环境温度、冷却、齿轮与驱动限制,以及完整 torque-speed curve。

一手资料

Unitree G1 Parameters 提供 35 kg、膝关节 90/120 N·m、13S 电池等整机量级;ODrive Component Selection 连接 Kv/Kt、电压、电流和散热;EtherCAT Technology 给出多轴过程数据和同步机制;G1 Low-level Example 展示 29 关节的 DDS 命令/状态边界。