返回Learn

如何设置ALOHA式双手电话设备

打造一个ALOHA式双手电话设备: 4x WidowX 250, 3 摄像头,ROS 2 适度,领导者跟随者同步.

斯坦福大学的ALOHA(低成本开源双臂遥操系统) 已成为模仿学习的参考双手机电话平台.本教程通过构建您自己的:四个WidowX 250手臂 (两个领导者,两个追随者),三个摄像头,ROS 2 Humble和领导跟随者同步.

电话操作总时间:约8小时 困难:高级更新 2026年4月

你将实现什么

在本教程结束时,您将有一个工作的ALOHA式双手机远程操作设备:操作员持有两个领袖臂,两个跟随手臂可在实时内反射运动,三台摄像头可以从天花板,左手腕和右手腕录取场景.您可以将一集录制到磁盘上并将其输入到 [LeRobot]T16) 或ACT / 传播政策培训管道中.

双手操纵可以解锁一个手臂真正难以完成的任务,解锁一个扭曲,从一个船到另一个船,路由电缆.在共享的框架上使用廉价的双手操纵是使双手模仿学习在实验室预算上成为实用的突破.

条件

  • 预计大约20,000至32,000美元的全4臂的构建,包括摄像头,框架和工作站.
  • 空间:**一个1.5米×1.0米的桌子加上站后的空间.
  • 技能: 机械组装,USB/电源线,Ubuntu和ROS 2基础设施的舒适性.
  • 工作站: Ubuntu 22.04,RTX级GPU,16+CPU核心.Intel NUC 13 Pro或相等.

步骤

  1. 订购零件,规划工作空间

完整的电机的核心零部件列表:

  • 4x Trossen WidowX 250 6-DOF 臂 (或全套Troossen ALOHA 2套件,如果你想要所有的东西都预先集成).
  • 3x摄像头 英特尔RealSense D405是ALOHA参考;Logitech C922也仅适用于RGB.
  • 80/20挤出和架的支架.
  • RTX 3080+ GPU 的工作站 (数据收集是 CPU/IO 绑定;训练是 GPU 绑定).
  • 电源USB3.0枢纽,至少有7个端口 (4臂+3部摄像头).

计划工作空间,以使领导手臂坐在操作员前面,跟随手臂面向任务区域,并使用共享桌面.如果你对此新鲜,请从托森套件开始.

  1. 起框架,把手臂安装起来

组装挤出框架.参考ALOHA框架将操作员区与任务区分开大约50厘米,使操作员的手不与追随者的工作空间碰撞. 固定每个臂紧贴在框架上. 使用官方的托森基板,并将所有M5螺旋 (约5N·m).

T6,T7,T8,T9,你会在一个小时内感谢自己.

  1. 电线和USB

每个WidowX 250都需要自己的12V/5A电源.将每个臂的U2D2USB连接器插入电源枢纽. 使用一个每个端口电源隔离的电源枢纽 动力动机吸收足够的电源,以使一个廉价的无电源枢纽会.

通过一个按,可以切断四个手臂的电源.

  1. ###安装ROS2Humble在工作站上

通过官方的 apt 路径安装:

```
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8

sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

# Follow the ROS 2 Humble install docs to add the apt repo, then:
sudo apt install ros-humble-desktop
```

T10. 加入T11,所以它总是加载.

  1. 安装了"国际波动SOS2"堆

托洛森为WidowX维护了Interbotix ROS 2堆. 按照官方的托洛森/Interbotix安装说明,一般模式是:

```
mkdir -p ~/interbotix_ws/src
cd ~/interbotix_ws/src
git clone https://github.com/Interbotix/interbotix_ros_manipulators.git -b humble
cd ..
rosdep install --from-paths src --ignore-src -r -y
colcon build
source install/setup.bash
```

检查你能和一个手臂说话:

```
ros2 launch interbotix_xsarm_control xsarm_control.launch.py robot_model:=wx250s
```

在此测试期间,不要把手放在工作场所.

  1. 上和数相机

设置上下面的相机,看着工作场所,每个接手臂上设置手腕相机,

关键:创建 udev 规则,使摄像头总是在同一路径上列出.否则,你会发现在录音会话的半途中,左手腕和右手腕摄像头已经交换.

```
# /etc/udev/rules.d/99-aloha-cameras.rules
SUBSYSTEM=="video4linux", ATTRS{serial}=="", SYMLINK+="aloha_wrist_left"
SUBSYSTEM=="video4linux", ATTRS{serial}=="", SYMLINK+="aloha_wrist_right"
SUBSYSTEM=="video4linux", ATTRS{serial}=="", SYMLINK+="aloha_top"
```

T13重新加载.

  1. 运行领导跟随者电话

启动双手通讯节点. 国际博 ALOHA 备忘录提供一个; 确切的启动文件在版本中移动,但典型的模式是:

```
ros2 launch interbotix_xsarm_dual aloha_bringup.launch.py \
  leader_left:=wx250s leader_right:=wx250s \
  follower_left:=wx250s follower_right:=wx250s
```

引力补偿领袖,扭矩启用追随者,并设置控制循环至100Hz最小.抓住领袖手腕,移动它追随者应该以不到30ms的延迟以实时反射.

  1. ###记录你的第一集

运行电话,启动一个录音节点,订阅联合状态,跟随器命令和三个摄像头主题,然后写一个时间刻印的集到磁盘:

```
ros2 run aloha_data_collection record_episode \
  --task pick_and_place \
  --duration 20 \
  --output ~/aloha_episodes/
```

视觉化器使用检查录音.如果图像,联合状态和操作看起来一致,你就准备好进行完整的录音会议.通常每任务50到200集.下一个站点是[我们的LeRobot录音教程]T18) 或[VLA细调]T19).

接下来要做什么?

一旦你的设备清洁地录制,下次的投资会很快回报: (1) 添加第四部摄像头在侧面角以获得更好的深度线索, (2) 添加每个手腕的力扭矩传感器用于接触丰富的任务,以及 (3) 复制任务类别.大双手动数据集的宽度为20个任务,每个50集都超过1个任务,用于通用化的1000集.

常见故障模式

** 追随者滞后领袖:** 循环速度太低,或者您正在运行可视化器在同一个ROS节点上.将远程控制循环分开在自己的执行器上.

录音中部有一只手臂掉下来:

手臂摄像头重新启动后交换身份: udev规则缺失或未重新加载.

操作员疲劳:**真实.30分钟的会议,强制性的休息.

深度潜水:装备与DIY

对于每一个实验室都提出的问题:购买Trossen ALOHA 2套件,或者从零开始生产零件?纯粹是为了硬件成本,DIY节省了10%到15%.在时间到第一集,预集成的套件几乎总是便宜的,当你包括工程师时间时预算40到60个工程师小时来进行干净的DIY构建,而解包和委托套件大约8个小时. 如果这是您的第一个设备,请购买套件,并随着您的行程学习整合.如果这是您的第三个设备,并且您有具体的修改 (不同的抓住器,不同的摄像头布局), DIY给您提供了自由.

购买预制的手臂和领导后续电缆,但制造自己的框架. 框架是最容易的部分进行定制,并且你最常想根据你的具体任务修改的部分 (台高度,摄像头角度,双站布局).

深度潜水:破坏双手册数据的微妙东西

单独看起来很好,但总体而言,破坏数据集:

  • 非同步时钟. 摄像头框架,追随器联合状态和领导命令都应该共享一个参考钟.如果摄像头使用自己的钟,20 ms的偏移将数据集转化为低质量的噪音.使用ROS 2 T14同步器或单个过程中的时间标签.
  • 追随者合规调整. 太硬,操作员觉得不连接;太合规,追随者滞后于快速运动. 80%的名义增长是一个好的起点.
  • 摄像头曝光漂移.自动曝光反应移动的手臂,使每个节目看起来略有不同.
  • 抓住器囊. WidowX抓住器具有明显的囊. 每臂均可定位开放和闭位置,而不是仅仅一个值.

深度潜水:双手册数据集格式

双手动集通常将双7DOF动作 (6关节+抓手) 包装成14维动作向量.大多数下游堆 LeRobot,OpenVLA,HuggingFace数据集 接受任意动作维度,但您需要明确地说明您的元数据中的动作排序.我们建议的公约: T15. 记录它在数据集卡上,以便任何训练你的数据的人知道这些道意味着什么.

常见问题

我需要ROS 2来使用ALOHA吗官方堆使用ROS 2 Humble. 通过写下自己的串行公交协调员,你可以在没有ROS的情况下运行双手电话,但这只是很大的工作.

我可以替换不同的手臂吗 是的 只要领导者跟随者几何学匹配.团队为较低的预算构建了ALOHA式平台,使用Koch v1.1,Moss和SO-ARM双手动变体.

要训练一个政策的节目是多少? ACT在双手续任务上,50是最低,100-200个好点.

** 强制反领导者?** 标准的ALOHA设备是非性.

相关教程和资源