◎ 斯坦福把机器人遥操作系统装进背包。
△ 撰文:DONG.ZY
给机器人采集一批人类示范数据,通常要先搭建对应的遥操作设备。
手柄和VR控制器容易适配不同本体,但需要通过逆运动学把人的操作转换成机器人动作;GELLO等同构主端设备可以直接控制关节,却要围绕目标机械臂重新设计结构。
任务从桌面抓取转向移动操作后,系统还要加入底盘、观察视角和接触反馈。
近期,斯坦福大学REALab公开ModPack项目,团队将供电、计算、通信和数据存储装进一个可穿戴背包,再通过可更换模块接入不同机器人。
ModPack目前支持跨机器人关节级控制、移动操作、主动感知和力反馈。团队在两种双臂移动机器人上完成实验,并用遥操作示范训练Diffusion Policy。
它要解决的是遥操作设备长期存在的“一机一套”:机器人本体发生变化后,只替换必要模块,尽量保留供电、通信、软件和数据采集链路。
01.
一个背包,装下遥操作的通用部分
ModPack主体是一套3D打印背包,前后面板通过搭扣连接,内部设置5层可拆卸托架,用于安装迷你计算机、移动电源和选装设备。
团队将计算机与电源沿操作者脊柱方向布置,并减少面板和托架中的多余材料,以控制重量和改善散热。背包前方预留两组支撑杆插槽,用于安装主端机械臂;后方则布置iPhone、Vision Pro充电器和其他模块的安装位置。
背包使用PLA材料打印,填充率为15%,采用Gyroid填充结构、0.2毫米层高和0.4毫米喷嘴。主体被拆成两大部分,以便使用常见3D打印设备制造和修改。
这套配置使用3组25000mAh、145W移动电源,其中两组分别为左右主端机械臂供电,另一组支持迷你计算机,系统续航约为4至6小时。
背包形态解除了固定控制台对操作者的限制,人在任务区域内走动时,可以继续控制机器人双臂、底盘和视角,供电与数据记录设备也随人移动。
背包内的迷你计算机负责启动功能模块、管理示范回合、记录数据,并控制目标机器人程序的启停。
不同机器人通过统一Bridge API与ModPack连接,底层使用Robot Message Queue传输指令和机器人状态。
软件将系统分为编排、功能模块和机器人接口三部分:编排层负责启停和回合管理,功能模块处理主端机械臂、头显、底盘及数据记录,机器人接口再把这些指令送入具体本体。
每种机器人使用单独的配置文件,定义通信地址、需要启动的硬件和运行方式。接入新本体时,研发人员主要增加对应的机器人接口与配置,不需要改写整个背包软件。
系统使用robologger记录数据,并采用Zarr格式存储。头部与腕部相机、机器人关节状态、底盘和力矩数据会按照头部相机10至20Hz的时间戳同步。
关节位置与夹爪状态通过插值对齐,旋转信息使用球面线性插值处理,其他模态选择时间上最近的前序测量值。
统一记录与同步方式降低了本体切换后的数据处理成本,即使相机和关节数量发生变化,采集系统仍能沿用相近的数据组织方式。
02.
换主臂、接手机和头显,同时控制手、脚和视线
ModPack最主要的可替换硬件,是安装在背包前方的一对主端机械臂。
团队设计了两种版本,一套与定制移动机器人的6自由度ARX5机械臂对应,另一套与RB-Y1m的7自由度机械臂对应。
两套主端机械臂都根据目标机器人的CAD模型设计,与机器人的从端机械臂保持对应的运动学结构。操作者推动主端关节时,系统可以直接将关节位置发送给机器人。
这一设计沿用GELLO的同构遥操作思路,机械臂主体由3D打印部件和Dynamixel舵机组成,并加入主动重力补偿,抵消主端机械臂自身重量,降低操作者长时间抬臂产生的负担。
重力补偿根据主端机械臂的关节状态计算各关节所需力矩,并通过滤波和阻尼抑制抖动。不同关节还设置了电流上限,避免舵机因持续输出而过载。
ModPack没有用一套通用手柄间接控制所有机械臂,而是把主端机械臂也做成可替换模块。遇到不同自由度和关节排列的本体,研究人员更换机械结构,不必连带更换背包、通信和记录系统。
移动底盘由安装在背包上的iPhone控制,手机通过WebXR跟踪操作者在平面内的位置和朝向,再把人的前进、后退和侧向移动转换成机器人底盘目标。
手机安装在背包上,与人体实际旋转中心并不重合。ModPack先校正手机到背包安装中心的偏移,再校正背包到操作者身体中心的距离,以免把传感器绕身体转动的轨迹直接当作人的移动。

主动感知模块使用Apple Vision Pro,头显接收机器人头部相机传回的单目RGB画面或三维点云,并把操作者的头部运动转换成机器人相机姿态。
操作者走动和转头都会改变视角,ModPack分别跟踪背包和头显,再从头部指令中扣除机器人底盘移动已经造成的位姿变化,只保留操作者主动转头产生的相对运动。
操作者可以一边控制机器人移动和双臂操作,一边转头搜索被遮挡目标,机器人不需要在任务开始时就看见全部物体。
在RB-Y1m上,团队还启用了力反馈。机器人末端的力/力矩传感器记录接触受力,系统通过雅可比矩阵将末端受力映射为主端机械臂各关节的反馈力矩。
操作者搬运箱体时,可以通过主端机械臂感受到机器人接触物体产生的阻力。系统将反馈力矩叠加到重力补偿力矩上,并设置电流预算、变化速率和输出上限,以保护Dynamixel舵机。
团队使用两种本体验证ModPack。
第一种定制平台由两条6自由度ARX5机械臂、一条承担主动感知的ARX5机械臂和TidyBot++全向底盘组成;
RB-Y1m则配有两条7自由度机械臂、6自由度躯干、全向底盘和2自由度主动头部。
与现有方案相比,GELLO支持跨机器人关节级控制,但不包含移动和主动感知;Mobile ALOHA支持双臂移动操作,但系统围绕固定本体设计;部分全身遥操作方案支持移动和关节控制,却没有同时提供主动感知与力反馈。
ModPack同时覆盖跨本体适配、关节级控制、力反馈、移动操作和主动感知。但要注意的是,这项比较统计的是各套系统具备的功能,没有比较它们在相同任务中的实际性能。
03.
背包采到的数据,最终交给机器人学习
ModPack项目展示了布料放置、箱体搬运、乘坐电梯、调味和回收物品等遥操作过程。定量实验集中在布料放置和箱体搬运两项任务。

第一项实验是布料放置,机器人先移动到操作台抓起布料,再倒退离开,篮子随机位于机器人左侧或右侧,可能不在初始视野中,机器人需要主动寻找篮子,移动过去并将布料放入。
团队使用蓝色和粉色两种布料、两个篮子位置和随机布料初始位置,共采集125次示范。

仅使用头部相机的策略在25次测试中成功22次,成功率为88%;使用头部和双腕部相机的策略成功率为80%;仅使用腕部相机的策略为12%。
在布料放置任务中,头部RGB-D相机提供了深度和较宽的第一视角,覆盖了布料抓取、篮子搜索与底盘移动所需的信息,腕部相机接近操作位置,却容易在移动过程中失去篮子的整体位置信息。
仅使用腕部相机时,常见失败包括移动途中看不到布料,以及将布料放在篮筐边缘;头部相机策略也会出现没有抓稳布料便开始后退的情况。
相机数量没有直接决定任务成绩,布料任务需要大范围搜索和导航,头部相机的位置与视野比增加局部腕部画面更有用。
第二项实验是箱体搬运,机器人从柜体上抓起箱子,转向货架,判断上层或下层哪个位置空闲,再移动并完成双臂放置。
团队针对上下两种货架状态采集102次示范,并比较全部相机、仅头部相机,以及全部相机加双臂关节力矩三种策略。
全部相机加关节力矩的策略在20次测试中成功12次,成功率为60%;仅使用头部相机的策略为55%;全部相机但不加入力矩信息的策略为30%。
加入关节力矩后,模型在接近箱体和开始抓取时提高了对力矩信息的关注,关节力矩可能为抓取时机和抓取深度提供粗略的对齐信号。
失败案例包括抓取姿态不准、箱体在运输途中掉落、底盘移动过量推动柜体,以及放置时机械臂接近货架。
这里60%与30%的对照,比较的是“全部相机加关节力矩”和“全部相机”两种策略输入。现有对照没有单独测试遥操作力反馈对示范质量的影响;仅使用头部相机的策略也达到55%。这组实验主要反映关节力矩信息参与策略决策后的表现。
两项任务的示范数据被用于训练基于Transformer的Diffusion Policy。视觉画面由预训练CLIP ViT编码,关节力矩使用时序卷积编码,再共同作为DiT动作生成模型的条件输入。
定制机器人的动作空间为26维,包括全向底盘、主动相机机械臂、左右机械臂和夹爪;RB-Y1m的动作空间为21维,包括底盘、2自由度头部、左右机械臂和夹爪。
ModPack统一的不只是人的控制动作,操作者走动、转头和操作双臂时,系统同步记录视觉、底盘、关节状态和接触力信息,再把这些数据交给策略学习。
当前系统仍受硬件条件限制,Dynamixel舵机同时承担重力补偿和力反馈时,力矩余量有限;换用更大力矩的电机会增加穿戴设备的重量和体积。
多组电池支持了4至6小时运行,也增加了背包负担,团队计划让两条主端机械臂共享电池,并使用更轻的计算平台。
ModPack的遥操作与数据采集软件已经开源,策略训练和推理代码暂未包含在本次发布中,完整硬件资料仍在继续开放。该研究由美国国家科学基金会项目、Apple和Amazon提供部分支持。
ModPack目前在两种机器人和两项任务上完成策略验证,它给出的主要结果是一种遥操作系统的拆分方法:背包保留供电、计算、通信和记录,主端机械臂处理本体差异,手机和头显负责移动与观察,力反馈模块补充接触信息。
机器人本体继续增加后,这种复用能力会影响数据采集的接入时间和硬件投入。ModPack想做的,是让遥操作系统从机器人专属配件变成一套可以继续添加本体与功能的接口。
-END-



沪公网安备31010702008139