GELLO UR5|机械臂遥操作器图解复现

伯克利开源遥操作

来自 UC Berkeley 的开源机器人遥操作项目:用六关节微型控制臂与夹爪扳机示教真实机械臂。本页整理原版 UR5 控制器的论文、MIT 开源代码、八章图解、打印模型与原始采购链接;属于第三方资料整理,尚未完成实物复现。

alan000

arXiv:2309.13037 2023

参数信息

控制关节
6+1 轴

复现文档

01|先看它如何工作

你移动桌上的小型GELLO控制臂,软件读取其关节角度,再把角度映射给对应真实机械臂。扳机提供夹爪开合输入。本页先完成一只UR5版控制器及仿真核对,再进入实机阶段。

![UR5版结构总览|原作者装配讲义第11页。双臂演示需要两套控制器和两套目标机械臂。](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/01a1b98a99924e68950cb84f89eb43fc.png)*UR5版结构总览|原作者装配讲义第11页。双臂演示需要两套控制器和两套目标机械臂。*

本页不包括自动学习策略训练;遥操作录制也不等于机器人已经学会自主操作。

*来源:原作者装配讲义与锁定版本官方软件仓库;中文整理,待实物验证。*

02|把八个打印件摆齐

从锁定版本的ur5目录取base、L1—L5,从gripper目录取handle、trigger。不要用xArm、Franka或YAM连杆替换。原讲义建议多数零件使用支撑,并展示摆放方向;未给一套可通用的打印参数。

![base|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/0a6d559f86a6488098428f714cb04c6d.png)*base|对应原图;打印后核对孔位和关节间隙*

![L1|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/f6ed9b2e7a194751ac45201db62aea59.png)*L1|对应原图;打印后核对孔位和关节间隙*

![L2|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/e4af61c02d124dfd980101a2912162df.png)*L2|对应原图;打印后核对孔位和关节间隙*

![L3|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/a435a0f9bc9849a8a26bb0716a414128.png)*L3|对应原图;打印后核对孔位和关节间隙*

![L4|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/2737d9f73e40408da2f532468531d1b2.png)*L4|对应原图;打印后核对孔位和关节间隙*

![L5|对应原图;打印后核对孔位和关节间隙](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/24a1c14321004f5a8b1c6a745d131e99.png)*L5|对应原图;打印后核对孔位和关节间隙*

![handle|末端手柄](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/c662347744734ce496c4392f0bcfdc22.png)*handle|末端手柄*

![trigger|扳机](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/5f3eccb49df44bdaae4ff0721d0b241e.png)*trigger|扳机*

验收:无支撑残留卡住孔位,无裂纹;对照STL核尺寸。数量1件/文件为单臂整理推定,打印前仍应核对总装。

*来源:原作者装配讲义与锁定版本官方软件仓库;中文整理,待实物验证。*

03|先编号,再装连杆

取6台XL330-M288-T作为关节1—6;取1台XL330-M077-T作为扳机ID 7。每次只连接一台,用Dynamixel Wizard设置唯一ID;本页锁定的偏置脚本使用57,600 baud,通信设置应与该版本保持一致。

![电机识别原图|这张照片中的标签为M077-T示例,不表示7个电机全部用M077-T。](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/2d2ffc8cb569431fb07931e4fd71c1cf.jpg)*电机识别原图|这张照片中的标签为M077-T示例,不表示7个电机全部用M077-T。*

1. 断电后把底座、连杆和电机按总装图排列,先核对各关节轴线和线缆出口。

2. 电机壳体侧用随包长螺丝,舵盘侧用短螺丝;原讲义未列每孔螺丝规格,不能凭外观强拧。

3. 从底座逐级装到末端;每连接一节,检查能否在预期范围内活动、线缆是否受挤压。

4. 用合适十字刀轻拧紧。发现滑牙、孔位不合或干涉时停止,不以加大力矩修正。

图解边界:上游主要提供总装图,没有每一颗螺丝的连续分解图。本稿仍需实物装配补拍,才能达到只看图即可完整复现的标准。

*来源:原作者装配讲义与锁定版本官方软件仓库;中文整理,待实物验证。*

04|装扳机与回位弹簧

![手柄件:连接控制臂末端与扳机电机](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/c662347744734ce496c4392f0bcfdc22.png)*手柄件:连接控制臂末端与扳机电机*

![扳机件:弹簧装入对应槽位](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/5f3eccb49df44bdaae4ff0721d0b241e.png)*扳机件:弹簧装入对应槽位*

1. 将handle安装到控制臂末端。

2. 把回位弹簧装入trigger的槽位,再把trigger连接到M077-T。

3. 把电机和扳机组件装入手柄,确认弹簧另一端落入预留位置。

4. 手动小幅按下、释放扳机;确认回位顺畅且不把电机线拉紧。

验收:手动开合无摩擦卡死;开合角度最后通过本机校准记录,不能照抄别人的角度端点。

*来源:原作者装配讲义与锁定版本官方软件仓库;中文整理,待实物验证。*

05|接线、固定底座、装平衡橡皮筋

1. 断电布线:把三针TTL线沿运动链逐级连接,长距离位置使用原BOM的450mm线。

2. 按ROBOTIS电源板说明装控制接口与供电板,将控制器固定到基座;电源板背面与金属件绝缘。

3. 检查电源电压和极性,再接电机供电。原BOM仅给电源链接,不足以替代电气规格核对。

4. 底座固定到可靠工作面;在第2、4关节安装橡皮筋,先少量测试平衡,再调整。

5. 连接U2D2到电脑,扫描确认ID 1—7全部存在,无重复、无断连。

验收:全行程内插头不受拉、线缆不进入夹点;扳机回位正常;手柄松手不猛烈倒下。

*来源:原作者装配讲义与锁定版本官方软件仓库;中文整理,待实物验证。*

06|安装软件并校准自己的控制器

以下是依据锁定README和脚本整理的Linux路线,未在本机执行。先按uv官方文档安装uv,再使用独立环境。ZIP保留用于审阅;需要子模块时优先使用Git方式。

```

git clone https://github.com/wuphilipp/gello_software.git

cd gello_software

git checkout 204f53a64bef89471a1e483b0f874f755fbd2d3a

git submodule update --init --recursive

uv venv --python 3.11

source .venv/bin/activate

uv pip install -r requirements.txt

uv pip install -e .

uv pip install -e third_party/DynamixelSDK/python

```

![上游提供的GELLO参考校准姿态](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/81beb8a71e5f4a22b88e74d0df64b95b.jpg)*上游提供的GELLO参考校准姿态*

![上游提供的目标机械臂参考姿态:结合UR5关节定义核对,不照抄其他型号。](https://orecord-files.oss-cn-zhangjiakou.aliyuncs.com/sbp/projects/efa14e8d-3ecd-431a-a187-f442e40dbfc6/files/image/45aa2378d5554414ad36e2d5711af28c.jpg)*上游提供的目标机械臂参考姿态:结合UR5关节定义核对,不照抄其他型号。*

只连接GELLO进行偏置读取。把控制器放到文档对应姿态,再用实际U2D2路径替换下面的占位符。

```

python scripts/gello_get_offset.py \

--start-joints 0 -1.57 1.57 -1.57 -1.57 0 \

--joint-signs 1 1 -1 1 1 1 \

--port /dev/serial/by-id/实际U2D2路径

```

把本机输出的6个offset及7号扳机端点写入`gello/agents/gello_agent.py`的`PORT_CONFIG_MAP`。串口、ID、方向、offset、夹爪端点都必须对应自己的装配;不沿用仓库中作者设备的序列号。

*来源:锁定版本官方软件仓库;中文整理,未执行实机验证。*

07|先仿真,再接真实UR

终端A启动仿真后端;终端B启用GELLO。两个终端都要进入项目目录并激活`.venv`。锁定代码中的`sim_ur`使用UR5e及Robotiq 2F-85模型,不能把仿真结果当作任意UR5/夹爪组合的实机兼容证明。

```

python experiments/launch_nodes.py --robot sim_ur

```

```

python experiments/run_env.py --agent gello --gello-port /dev/serial/by-id/实际U2D2路径

```

1. 一次只移动一个关节,记录仿真中对应关节的方向。

2. 检查第3关节的符号、各关节零位和扳机开闭。

3. 任何跳变、反向或串口断连先退出并修正校准,不启动实机。

4. 实际UR阶段另核ur_rtde、机器人控制器设置、末端夹爪接口和网络IP。使用小幅低速动作,操作员保持急停可达。

实际后端入口:python experiments/launch\_[nodes.py](http://nodes.py) --robot ur --robot-ip 实际机器人IP。这是会连接实际设备的入口,只有完成设备设置与现场检查后才运行。

*来源:锁定版本官方软件仓库;中文整理,未执行实机验证。*

08|录制一段示教并验收

通过仿真与实机核对后,使用录制界面保存短示教。上游`run_env.py`默认关闭相机客户端,默认录制不应被描述成完整视觉训练数据。

```

python experiments/run_env.py --agent gello --gello-port /dev/serial/by-id/实际U2D2路径 --use-save-interface

```

1. 检查启动终端提示的保存目录;锁定`run_env.py`默认`data_dir`为`~/bc_data`,不与YAM界面的data目录混写。

2. 录制前确认关节、夹爪和时间记录;相机需要单独配置节点与同步。

3. 先保存短序列,检查文件确实生成、关节维数和时间长度合理。

4. 记录软件commit、设备ID、端口、offset、符号和具体机器人型号,随本次复现报告保存。

验收表:7个电机稳定识别/8类打印件核齐/底座固定/每关节方向正确/扳机回位/低速跟随一致/短录制可读。所有条目目前均为待实物验证,不能勾选成通过。

*来源:锁定版本官方软件仓库;中文整理,未执行实机验证。*