附录_子课程三_双臂
本文档属于 Robotics Tutorial 项目,作者:Pengfei Guo,达妙科技。采用 CC BY 4.0 协议,转载请注明出处。
子课程三附录(双臂 D01-D10)¶
【双臂】附录 A:项目精读优先级表¶
附录不维护独立 Stars 快照;核心 C++ 项目可参考调研报告主表(截至 2026-05 查询),ACT/RDT/GELLO/LeRobot 等学习或遥操作项目以项目主页为准,表内仅保留项目索引。
| 优先级 | 项目 | GitHub | Stars 口径 | 精读重点 | 对应章节 |
|---|---|---|---|---|---|
| ★★★★★ | OMPL | ompl/ompl | 见调研报告/项目主页 | ConstrainedStateSpace 三种方法 | D02 |
| ★★★★★ | MoveIt2 | moveit/moveit2 | 见调研报告/项目主页 | dual_arm_panda_moveit_config | D01, D09 |
| ★★★★★ | ACT/ALOHA | tonyzhaozh/act | 见调研报告/项目主页 | CVAE Transformer;14D qpos | D04 |
| ★★★★★ | RDT-1B | thu-ml/RoboticsDiffusionTransformer | 见调研报告/项目主页 | 128D 统一 action;DiT 架构 | D04 |
| ★★★★★ | GELLO | wuphilipp/gello_software | 见调研报告/项目主页 | 关节镜像;offset 标定 | D08 |
| ★★★★★ | LeRobot | huggingface/lerobot | 见调研报告/项目主页 | 双臂数据采集+训练+部署 | D04, D08 |
| ★★★★☆ | robosuite | ARISE-Initiative/robosuite | 见调研报告/项目主页 | TwoArm envs;OSC 控制器 | D03, D04 |
| ★★★★☆ | Drake | RobotLocomotion/drake | 见调研报告/项目主页 | 双臂 QP-IK;GCS 轨迹优化 | D02, D03 |
| ★★★★☆ | OpenTeleVision | OpenTeleVision/TeleVision | 见调研报告/项目主页 | VR→IK→joint 管线 | D08 |
| ★★★★☆ | dex-retargeting | dexsuite/dex-retargeting | 见调研报告/项目主页 | 三种 retargeting 优化器 | D08 |
| ★★★★☆ | Mobile ALOHA | MarkFzp/mobile-aloha | 见调研报告/项目主页 | co-training;16D action | D04 |
| ★★★★☆ | dVRK | jhu-dvrk/sawIntuitiveResearchKit | 见调研报告/项目主页 | 遥操作安全层;clutch | D08 |
| ★★★☆☆ | PerAct2 | markusgrotz/peract_bimanual | 见调研报告/项目主页 | 双臂 benchmark;13 任务 | D04 |
| ★★★☆☆ | BiGym | chernyadev/bigym | 见调研报告/项目主页 | H1 双臂 RL benchmark | D04 |
| ★★★☆☆ | PDDLStream | caelan/pddlstream | 见调研报告/项目主页 | 符号-连续 TAMP | D02 |
| ★★★☆☆ | ACE | ACETeleop/ACETeleop | 见调研报告/项目主页 | 跨 embodiment 外骨骼 | D08 |
| ★★★☆☆ | UMI | real-stanford/universal_manipulation_interface | 见调研报告/项目主页 | SLAM 数据采集管线 | D08 |
| ★★☆☆☆ | TIAGo++ dual | pal-robotics/tiago_dual_robot | 见调研报告/项目主页 | 商用双臂 URDF;CartesI/O | D09 |
| ★★☆☆☆ | chai3d | chai3d/chai3d | 见调研报告/项目主页 | 触觉渲染;god-object 算法 | D05 |
【双臂】附录 B:论文精读路线(按重要性排序)¶
必读论文(12 篇)¶
- Uchiyama & Dauchez 1988 — 对称协调;grasp matrix 雏形;内力概念奠基
- Chiacchio et al. 1996 — 绝对/相对变量;Relative Jacobian 的"官方出处"
- Caccavale et al. 2008 — 双臂 6-DOF 阻抗;事实标准文献
- Berenson et al. 2011 — TSR + CBiRRT;约束规划工程化框架
- Kingston et al. 2018 — 约束规划综述;五类方法对比
- Anderson & Spong 1989 — 散射变量;时延无源性开山之作
- Niemeyer & Slotine 1991 — 波变量;传输线物理类比
- Lawrence 1993 — 透明度严格定义;四通道架构;Llewellyn 准则
- Ryu et al. 2004 — TDPA;不需知道时延的实时无源控制
- Zhao et al. 2023 (ACT/ALOHA) — 双臂模仿学习 landmark;底层位控分析
- Liu et al. 2025 (RDT-1B) — 双臂扩散基础模型;128D 统一 action space
- Smith et al. 2012 — 双臂综述;最被引用的领域导引
推荐论文(15 篇)¶
- Schneider & Cannon 1992 — Object Impedance Control
- Williams & Khatib 1993 — 虚拟连杆内力模型
- Bonitz & Hsia 1996 — 内力主动整形
- Lee, Chang, Jamisola 2014 — Relative Impedance
- Krebs & Asfour 2022 — 双臂任务分类学
- Jaillet & Porta 2013 — AtlasRRT;约束流形 atlas
- Kingston et al. 2019 — IMACS;OMPL ConstrainedStateSpace
- Garrett et al. 2020 — PDDLStream;TAMP
- Hannaford 1989 — 二端口网络;四种子架构
- Colgate & Brown 1994 — Z-width;虚拟墙被动条件
- Franken et al. 2011 — 双层透明+能量罐架构
- Nuño et al. 2011 — 统一无源控制教程
- Fu et al. 2024 — Mobile ALOHA;co-training
- Hokayem & Spong 2006 — 双边遥操作历史综述
- Chitnis et al. 2020 — 双臂 RL task schema
【双臂】附录 C:推荐学习路线¶
速成路线:双臂优先(8 周,全职)¶
适合有明确双臂项目需求(如:双 Franka 装配)的工程师。
Week 1: D01(协调运动学)——Augmented/Relative Jacobian
Week 2-3: D02(约束规划)——OMPL ConstrainedStateSpace 重点
Week 4: D03(协调力控)——Object Impedance + 内力
Week 5: D04(双臂学习)——ACT 复现
Week 6-7: D09(MoveIt2 系统集成)
Week 8: D10(综合实战路线 α)
跳过:D05-D08(遥操作理论)。
速成路线:遥操作优先(8 周,全职)¶
适合要搭建遥操作数据采集系统的工程师。
Week 1: D05(二端口网络/透明度)
Week 2-3: D06(波变量/散射变换)
Week 4: D07(TDPA 工程实现)
Week 5-6: D08(运动映射/ALOHA/GELLO/UMI)
Week 7-8: D10(综合实战——遥操作+ACT 部分)
跳过:D01-D04(双臂协调)、D09(MoveIt2 集成)。
完整路线(24 周,全职)¶
按大纲顺序从 D01 到 D10 完整学习,不跳过任何章节。
RL 研究路线(12 周,全职)¶
适合已有 RL 背景、想进入双臂+遥操作研究的工程师。
Week 1: D01(协调运动学——重点 J_rel 和约束流形)
Week 2: D03(协调力控——重点 Object Impedance 和内力)
Week 3-4: D04(双臂学习——ACT/RDT-1B 精读 + bimanual RL)
Week 5: D05(透明度——理解力反馈的理论极限)
Week 6: D07(TDPA——理解安全约束)
Week 7-8: D08(运动映射——重点 retargeting + 数据采集效率)
Week 9-10: 自选方向深入(Bi-ACT 复现 / GELLO+力反馈 / PerAct2)
Week 11-12: 论文写作——选 robosuite/BiGym 上一个双臂 benchmark
【双臂】附录 D:与已有大纲的衔接点¶
| 已有大纲章节 | 本大纲衔接 | 衔接说明 |
|---|---|---|
| B M01 Pinocchio | D01, D03 | J_aug, J_rel 计算;Grasp matrix 需要 FK + Ad |
| B M03 IK | D08 | 异构遥操作的笛卡尔映射需 IK |
| B M04 碰撞检测 | D02, D09 | 双臂互碰检测;ACM 扩展 |
| B M05 QP/NLP | D03 | 双臂 QP-WBC 加 Grasp 约束 |
| B M07 OMPL | D02 | ConstrainedStateSpace 扩展 |
| B M14 MoveIt2 | D09 | dual-arm planning group;both_arms 配置 |
| C F01 导论 | D05 | 阻抗/导纳概念直接迁移到遥操作 |
| C F02 操作空间 | D01, D03 | Λ, J̄ 的双臂扩展;Augmented Object Model |
| C F02.4 无源性 | D05, D06, D07 | 端口无源 → Llewellyn 准则 → 散射/波变量 → TDPA |
| C F04 libfranka 阻抗 | D08, D09 | slave 侧阻抗底层;双臂 impedance_controller |
| C F05 导纳控制 | D09 | 双臂 admittance_controller × 2 配置 |
| C F09 学习型力控 | D04 | VICES→双臂阻抗 action space;SERL→双臂 RL |
| 续篇 Ch84 VLA | D04 | ACT/Diffusion/π0 的概念已知;本大纲补底层控制分析 |
| 续篇 Ch85 数据采集 | D08 | ALOHA/UMI 的概念已知;本大纲补运动映射和力反馈分析 |
【双臂】附录 E:硬件平台推荐¶
仿真优先(零成本入门)¶
| 组件 | 推荐 | 说明 |
|---|---|---|
| 仿真器 | MuJoCo + mujoco_ros2_control | 接触物理最佳;免费 |
| 双臂模型 | 双 Franka Panda URDF(MoveIt2 提供) | 教学标准 |
| RL 环境 | robosuite TwoArm envs | 4 个双臂 benchmark |
| 替代 RL | BiGym(Unitree H1 双臂, Apache-2.0) | 人形双臂 |
| 开发机 | Ubuntu 22.04 + RTX 3060+ | RL 训练需 GPU |
最小化双臂真机(~\(5k-\)15k)¶
| 组件 | 推荐 | 价格 |
|---|---|---|
| 双臂 | 2× Koch v1.1 / SO-100(LeRobot 支持) | ~$1k-2k |
| Leader | 2× GELLO(3D 打印 + Dynamixel) | ~$600 |
| 相机 | 3× RealSense D435(top + wrist ×2) | ~$900 |
| 工作站 | i7 + 32GB + RTX 3060 | ~$2k |
| 总计 | ~$5-6k |
研究级双臂真机(~\(60k-\)120k)¶
| 组件 | 推荐 | 价格 |
|---|---|---|
| 双臂 | 2× Franka Research 3 | ~$50-70k |
| F/T 传感器 | 内置(Franka)或 2× ATI Mini40 | ~$5k 外置 |
| 遥操作 | ALOHA 2 leader × 2 或 GELLO × 2 | ~$1-5k |
| 力反馈(可选) | 2× Haply Inverse3 或 1× Omega.7 | ~$5-25k |
| 工作站 | i9 + 64GB + RTX 4090 + PREEMPT_RT | ~$5-8k |
| 总计 | ~$60-110k |
遥操作数据采集专用(~\(1k-\)5k)¶
| 组件 | 推荐 | 说明 |
|---|---|---|
| 低成本 | UMI 手持夹爪 + GoPro | ~$500;无需机器人 |
| 中等成本 | GELLO × 2 + 已有机器人 | ~$600 |
| VR | Meta Quest 3 + OpenTeleVision | ~$500 VR + 已有机器人 |
| 外骨骼 | ACE 被动外骨骼 | ~$200 |
【双臂】附录 F:常见错误与 FAQ¶
F.1 双臂规划常见错误¶
错误 1:用标准 RRT 做闭链规划
症状:规划永远超时(0/100 成功率)
原因:在 14 维 C-space 中随机采样命中 8 维约束流形概率为零
修复:使用 OMPL ConstrainedStateSpace(Projected/Atlas/TangentBundle)
验证:先检查 start/goal 是否满足约束(‖h(q)‖ < 1e-4)
错误 2:MoveIt2 both_arms 规划不考虑闭链约束
症状:两臂规划出独立路径,执行时物体被扯散
原因:MoveIt2 的 both_arms 组只是拼接两臂的 JointModelGroup,
IK 是分别求解,不感知闭链约束
修复:(a) 使用 OMPL ConstrainedStateSpace 替换默认 planner;
(b) 或用 MTC 的 constraint-aware stage + TSR
错误 3:xacro 忘加 prefix 导致 joint name 重复
症状:URDF 解析报 "joint 'panda_joint1' already defined"
原因:两臂 xacro 实例化时都用默认名称
修复:加 prefix="left_" / prefix="right_",所有 link/joint/sensor 名都带前缀
错误 4:ACM(Allowed Collision Matrix)首次生成漏跨臂碰撞对
症状:双臂规划极慢(每步碰撞检查几十 ms)
原因:Setup Assistant 生成的 ACM 默认全量检测所有 link 对,
包括不可能碰撞的跨臂远端 link 对(如左 link0 vs 右 link7)
修复:在 Setup Assistant 重新生成 ACM 时勾选"Never"对远端 link;
或手动编辑 SRDF 添加 <disable_collisions> 条目
F.2 双臂力控常见错误¶
错误 5:两臂都用位控抬刚性物体 → Force Fight
症状:内力飙升到几百 N,可能损坏工件或关节
原因:两臂独立位控时,1 mm 标定误差 × 50000 N/m 刚度 = 50 N 内力
修复:至少一臂切阻抗/导纳模式;或显式内力控制 f_int_ref
典型:K_follower = 100-200 N/m,K_leader = 1000+ N/m
错误 6:Grasp Matrix G 计算用错坐标系
症状:力分配结果物理不合理(物体不动但有净力矩)
原因:G_i = Ad_{g_{oc_i}}^{-T} 要求 g_{oc_i} 从物体系到接触系;
常见错误是用了基座系到接触系的变换
修复:确保 T_oL = T_obj.actInv(T_left_ee),而非 T_left_ee 本身
错误 7:内力设置不足导致物体滑落
症状:抬起后物体从手间滑出
原因:f_int_normal < mg/(2μ)
修复:f_int ≥ 1.5 × mg/(2μ)(安全余量 50%)
例:3 kg 物体,μ=0.4 → f_int ≥ 1.5 × 3×9.81/(2×0.4) ≈ 55 N
F.3 遥操作常见错误¶
错误 8:波变量不做波积分 → 位置漂移
症状:master 回到原点但 slave 偏移几厘米不回
原因:波变量传速度,积分不对齐
修复:实现 Niemeyer 1996 波积分(同时传 U_m, V_s);
加弱弹簧 K_drift = 10-50 N/m 闭环归位
错误 9:TDPA 的 PC 在低速区 α → ∞
症状:slave 突然"卡住"(极大阻尼)
原因:α = -E_obs/(v²ΔT),v→0 时 α→∞
修复:(a) 阈值保护:if |v| < v_min then α = α_max;
(b) Ryu 2005 reference energy following
(c) 串联/并联 PC 自动切换
错误 10:ALOHA 跨机器人使用忘改 calibration offset
症状:follower 臂初始化时暴力运动到错误位置
原因:constants.py 中的 calibration_offset 是特定于每台机器的
修复:每台新机器重新运行标定程序;GELLO 的 gello_get_offset.py 是参考
F.4 FAQ¶
Q1:双臂和双边遥操作有什么关系? A:双臂是"两个自主臂之间的协调";遥操作是"人臂与机器臂之间的协调"。数学框架高度重叠——都基于端口无源性、力分配、运动映射。ALOHA 的 leader-follower 就是"最简单的遥操作"(无力反馈、关节直接映射)。
Q2:为什么 ALOHA 不用力反馈? A:三个原因(D8.5 详述):硬件无 F/T 传感器;50 Hz Python 循环太慢无法渲染有意义的力;被动柔顺(backdrive + 低 PID)已经"够用"——学习层(ACT)从视觉补偿了底层的粗糙。
Q3:SLAM 工程师学双臂/遥操作最大的门槛是什么? A:从"无约束空间搜索"到"约束流形上搜索"的思维转变(跨越一)。SLAM 的 pose graph 优化在欧氏空间;双臂约束规划在一个嵌入在 R^14 中的 8 维弯曲流形上——需要理解切空间、atlas、投影的几何含义。
Q4:波变量和 TDPA 可以同时用吗? A:可以!Franken 2011 的双层架构就是"上层波变量 + 下层 TDPA/能量罐"。工业系统(KONTUR-2)采用的正是这种组合。
Q5:RDT-1B 的 128 维动作空间能否扩展到包含力/扭矩? A:理论上可以(加 force 槽位);但当前 95% 训练数据缺乏力信息,扩展后需要重新预训练——这是 2025-2026 最有价值的研究空白之一。
【双臂】附录 G:遥操作时延量级参考表¶
| 通信方式 | 单向延迟 | RTT | 典型控制架构 | 代表部署 |
|---|---|---|---|---|
| ALOHA USB/Dynamixel | ~1 ms | ~2 ms | 关节直接映射 50 Hz | ALOHA/GELLO |
| 局域网 Ethernet | <0.5 ms | <1 ms | 四通道/PP 高透明 | da Vinci/dVRK |
| 局域 WiFi 6 | 1-5 ms | 2-10 ms | 波变量(可选) | OpenTeleVision |
| 城域光纤 | 2-10 ms | 5-20 ms | 波变量 + LFF | DLR 实验室 |
| 跨国互联网 | 50-150 ms | 100-300 ms | Franken 双层 + TDPA | 远程超声 |
| 卫星 GEO | 120 ms | 240 ms | 监督 + 局部自主 | 早期空间遥操作 |
| 卫星 LEO(Starlink) | 20-40 ms | 40-80 ms | 波变量 + TDPA | 未来趋势 |
| ISS S-band 直射 | 5-15 ms | 10-30 ms | 四通道 + TDPN | KONTUR-2 |
| 月球 | 1.3 s | 2.6 s | 纯监督 + waypoint | 规划中 |
| 火星近日点 | 3 min | 6 min | move-and-wait | Curiosity |
| 火星远日点 | 22 min | 44 min | 完全自主 | Perseverance |
趋势:Starlink LEO(20-40 ms 单向)有可能使跨洋遥操作从"波变量/TDPA 勉强可用"变为"四通道+LFF 透明可用"——这将对远程手术、远程制造产生变革性影响。
版本历史¶
| 版本 | 日期 | 变更 |
|---|---|---|
| v0.1 | 2026-04-21 | 初版完成:10 章(D01-D10) + 附录 A-E;双臂协调 4 章(30 篇论文 + 11 项目 + 8 数学框架) + 主从遥操作 4 章(25+ 篇论文 + 完整推导链) + 系统集成 2 章 |
| v0.2 | 2026-05-12 | 更新附录范围为 A-G:补充附录 F 常见错误与 FAQ、附录 G 遥操作时延量级参考表;修正 ALOHA 力反馈 FAQ 引用到 D8.5 |
子课程三全文完。
致谢:本大纲的科研脉络梳理参考了以下核心实验室的公开论文和开源代码:Stanford ASL(Khatib/Williams)、Tohoku-Dauchez(Uchiyama/Dauchez)、Napoli PRISMA(Caccavale/Chiacchio/Villani)、CMU PRL(Srinivasa/Berenson)、Rice Kavraki Lab(Kingston/Moll/Kavraki)、LAAS-CNRS(Porta/Jaillet)、KIT H²T(Asfour/Krebs)、UBC Telerobotics(Salcudean)、U Washington BRL(Hannaford/Ryu)、MIT NML(Slotine/Niemeyer)、DLR Telepresence(Artigas/Panzirsch/Preusche)、JHU LCSR(Kazanzides/dVRK)、Stanford IRIS(Finn/Zhao/Chi)、Physical Intelligence(Black/Levine)、Keio Sakaino(Sakaino/Tsuji/Kobayashi)、THU-ML(Liu/RDT)。所有论文引用和项目星数截至 2026-05 查询。