UMI——斯坦福刷盘机器人:从手持夹持器到动作预测Diffusion Policy(含代码解读)-上

七月在线实验室

共 11745字,需浏览 24分钟

 ·

2024-05-28 20:19

新课《大模型机器人二次开发线下营》文末开秒

前言

没想到今年年初的斯坦福mobile aloha的热度刚过,而到今年2月的下旬,斯坦福另一个团队又推出了UMI刷盘机器人,且这两个团队还互相认识、还在一块共同切磋(顺带小小感叹一下,斯坦福的氛围是真好而且真高产)

斯坦福UMI刷盘机器人

  • 其与mobile aloha(以及AirExo: Low-Cost Exoskeletons for Learning Whole-Arm Manipulation in the Wild)最大的不同在于其收集数据处理的非真实的机器人,而是一个手持夹持器(从而大幅降低成本)
  • 而其与此文《模仿学习的集中爆发:从Dobb·E、Gello到斯坦福Mobile ALOHA/UMI、FMB、DexCap》中第一部分的纽约大学Dobb·E最大的不同,则在于Dobb·E需要针对特定环境进行动作策略上的微调,而UMI面对陌生环境有比较好的泛化能力
24年5.9日更新:我们总算和合作伙伴共同把斯坦福的UMI、DexCap成功复现了(应该是国内最早复现这两模型的团队或之一了),然后接下来会把这两者的所有硬件全部换成国产平替
1. 至于复现过程中所遇到的问题或困难,如群内的姚博士所说,“说实话github上逻辑很顺的,如果只是复现原视频难度不大,主要还是要想训练自己的功能,所有的算法逻辑都要很熟悉才可以

 UMI的环境直接用了docker,预训练数据都有的

其实主要问题他们在论文中也说了,就是视觉SLAM,其实这种方法信息量还是不够的,成功率没那么高,最终还是要增加数据源 ”
2. 为不断扩大整个大模型机器人的开发队伍,需要从课程中选拔更多人才  故推出:机器人二次开发线下营(线下提供价值20万的实体机器人 供线下实操)
↓↓↓扫码了解/抢早鸟优惠↓↓↓
课程咨询可找苏苏老师VX:julyedukefu008或七月在线其他老师

01

比Mobile Aloha成本更低的UMI刷盘机器人

1.1 斯坦福UMI的主要特点和手持夹持器的设置

24年2.19,斯坦福和哥伦比亚大学、丰田研究所的研究者(Cheng Chi、Zhenjia Xu等8人)发布了一个通用操控界面UMI,借助这个UMI,可以自由的完成刷盘等各种任务

论文地址项目地址
GitHub代码地址(universal_manipulation_interface)
硬件安装指南(UMI Hardware Guide)
数据收集教程(UMI Data Collection Instruction)
3D Printing TutorialAssembly Tutorial

其主要特点有:

  1. UMI本质是一个用于数据收集和策略学习的框架,其使用手持夹持器可以简单快速且低成本的收集一系列训练机器人的数据

  2. 且其更考虑了三方面的延迟:机器人观察环境存在延迟(传感器导致)、拿到环境数据后做推理有延迟、推理完成到做出动作亦有延迟

使用鱼眼镜头感知环境,且通过改造SLAM与GoPro内置的IMU传感器结合使用,并在夹持器上的两端各自添加一面镜子,以提供立体观察  如下图所示,从左到右分别表示人类做示范的手持夹持器、观测空间、机器人设置,其中①是一个相机,④是“相机① ”中自带的IMU感知姿态跟踪器②是带有广角视野的鱼眼镜头,③是两个侧面镜用于提供立体视觉,⑤是对夹持器的跟踪⑥是基于运动学的数据过滤

  1.  这六个部分的细节很快将在下文逐一阐述
  2. 使用扩散策略进行动作预测,当然,也可以换成mobile aloha所用的ACT算法  扩散策略的更多细节在本文第三部分进行阐述

1.1.1 GoPro摄像头、鱼眼镜头、侧面镜、IMU感知跟踪

首先,在手腕上安装一个GoPro摄像头作为输入观察,此外,无需任何外部摄像头设置。之后在机器人上部署UMI时,将GoPro摄像头放置在与手持夹持器上的相同位置相对应的同一3D打印手指处

其次,如下图所示,如果将一个大的155°视场图像矫正为针孔模型会严重拉伸外围视野(蓝线外),同时将中心最重要的信息压缩到一个小区域(红线内),故UMI策略使用原始鱼眼图像作为观测

接着,为看弥补单目相机视野中缺乏深度感知的问题,在相机的左右两端分别放置了一块镜子,如下图所示,UMI侧面镜。超广角相机与位置合理的镜子相结合,实现了隐式立体深度估计

  • (a):每个镜子的视角有效地创建了两个虚拟相机,其姿态相对于主相机沿镜子平面反射
  • (b):盘子上的番茄酱在主相机视野中被遮挡,但在右侧镜子内可见,证明镜子模拟具有不同光学中心的相机
  • (c):对镜子内的内容进行数字反射以进行策略观察。请注意,在反射后,杯子把手的方向在所有3个视图中保持一致
最后,UMI通过利用GoPro内置的能力来记录IMU数据(加速度计和陀螺仪)到标准的mp4视频文件中(UMI captures rapid move-ments with absolute scale by leveraging GoPro’s built-incapability to record IMU data (accelerometer and gyroscope) into standard mp4 video files)
通过联合优化视觉跟踪和惯性姿态约束,基于OBR-SLAM3的惯性单目SLAM系统(By jointly optimizing visual tracking and inertial pose constraints, our Inertial-monocular SLAM system based on OBR-SLAM3 [7]),即使在视觉跟踪失败(如运动模糊或缺乏视觉特征,例如俯视桌子)的情况下,仍能维持一段时间的跟踪

1.1.2 连续夹持器控制与基于运动学的数据过滤

与之前的机器人一般使用的二进制开合动作(要么抓住、要么放开),但如果连续指定夹持器的夹持宽度则可以执行更多任务,比如投掷一个球时,需要在一个准确的时刻来扔掉物体

由于物体具有不同的宽度,二进制的抓放动作很难满足精度要求。在UMI夹爪上,通过基准标记连续跟踪指宽,从而通过使用系列-弹性末端执行器原理,UMI可以通过调节软手指的变形来隐式记录和控制抓握力,最终连续控制抓手宽度(finger width is continuously tracked via fiducial markers [16] (Fig. 2 left). Using series-elastic end effectors principle [42], UMI can implicitly record and control grasp forces by regulating the deformation of soft fingers through continuous gripper width control)

此外,虽然数据收集过程是机器人不可知的,我们应用简单的基于运动学的数据过滤来选择不同机器人实体的有效轨迹

具体而言,当知道机器人底座的位置和它的运动学特性时,使用SLAM技术得到终端执行器(如机器人手臂的末端)的精确位置信息,可以帮助我们对演示数据进行运动学和动力学的可行性分析。通过在这些经过筛选的数据集上进行训练,可以确保机器人的行为策略不仅是可行的,而且符合其结构的特定运动限制(when the robot’s base location and kinematics are known, the absolute end-effector pose recovered by SLAM allows kinematics and dynamics feasibility filtering on the demonstration data. Training on the filtered dataset ensures policies comply with embodiment-specific kinematic constraint)

最终,UMI夹持器重量为780g,外部尺寸为 L310mm × W 175mm ×H210mm,手指行程为80mm
3D打印的夹持器的BoM成本为 $73,而GoPro相机及配件的总成本为 $298

说白了,不含「计算电脑和那两UR5机械臂」的仅用于数据收集的硬件成本为400刀,当然 好的机械臂才贵

1.2 UMI的策略接口设计

正如人在路上开车一样
  • 从开始观察到真正感知到环境时 有观测反应时间,即观测延迟  而感知到环境做决策时,则有决策时的反应时间,即推理延迟  最后,决策好之后 做出行动 也会有一个执行时间,即执行延迟
  • 机器人在实际操控当中,也是类似的,也会一一存在观察延迟

 策略推断延迟

执行延迟,且简单地丢弃过时的动作,只执行每个硬件在之后具有所需时间戳的动作

下图表示的是UMI 策略接口设计
  • (b) UMI 策略接收一系列同步观察结果(RGB 图像、6自由度末端执行器姿态、和夹持器宽度),并输出一系列期望的末端执行器姿态和夹持器宽度作为动作  相当于先感知环境,然后做出动作预测
  • (a)  同步不同的观察流,以弥补物理测量的延迟
  • (c)  提前发送动作命令以补偿机器人的执行延迟

1.3 完成刷盘的任务

1.3.1 刷盘任务的拆解

任务机器人需要执行7个步骤顺序地独立动作(打开水龙头、抓住盘子、拿起海绵、洗涤并擦拭盘子直到番茄酱被清除、放置盘子、放置海绵并关闭水龙头),如下图所示

能力这项任务从几个方面推动了机器人操纵能力的边界:

  1. 这是一个超长视野任务,每个步骤的成功都依赖于前一个步骤

  2. 机器人需要感知和操纵复杂的流体,包括牛顿流体(即,水)和非牛顿流体(即,番茄酱)

  3. 擦拭动-作需要使用一个可变形工具(即,海绵)同时协调双臂相对于水流

  4. 操纵受限关节物体(即,打开和关闭水龙头)需要由软指提供的机械顺应性

  5. 策略也需要对“清洁度”的概念语义上的鲁棒性。当在洗涤过程中或即使洗涤阶段完成后添加了额外的番茄酱时,机器人需要继续洗涤和擦拭

1.3.2 微调一个CLIP预训练的ViT-B/16视觉编码器来训练扩散策略

对于这项任务,UMI通过微调一个CLIP 预训练的ViT-B/16视觉编码器来训练扩散策略

看到这句话时,我的第一反应是这个视觉编码器和DALLE 2在CLIP阶段所用的视觉编码器是一个意思,即下图右上角的img encoder(来自此文:从CLIP到DALLE1/2、DALLE 3、Stable Diffusion、SDXL Turbo、LCM )

  总的来说,UMI达到了14/20 =70%的成功率。此外,他们还展示了他们的策略对各种干扰物、酱料类型(芥末、巧克力糖浆、焦糖糖浆)以及对扰动的鲁棒性而没有CLIP预训练的ViT视觉编码器「比如从头训练ResNet-34 [17]则任务完成度不行」,比如带有ResNet-34的基线策略学会了一种非反应性行为,并忽略了任何盘子或海绵位置的变化。因此,它不能执行任务,0/10 = 0%

02

UMI的硬件安装指南

2.1 详细的3D打印/组装教程(引用来源)

  • 3D打印教程: https://youtu.be/EJmAg1Bnp-k
  • 夹持器组装教程:https://youtu.be/x3ko0v_xwpg

2.2 材料清单

Part
Quantity
Link
Price 
(per unit)
夹持器Gripper Body
~$62
eSUN PLA PRO Warm White 1kg
0.5
https://amazon.com
$24.99
MGN9C 150mm Linear Rail
2
https://amazon.com
$17.89
M3 Screws and Nuts
14x M3x8mm
2x M3x12mm
4x M3x25mm
6x M3x35mm
0.5
https://amazon.com
$22.99
Compression Spring 
10mm OD 
0.7mm Wire size
50mm Free length
0.2
https://amazon.com
$5.49
M5 Nut
1


Plastic Stick-on Mirror

https//amazon.com
$9.99
Super Lube-21030

https://amazon.com
$10.00
Double-sided Tape

https://amazon.com
$9.99
Printed ArUcO tags (US letter)

https://drive.google.com

Gripper Finger
~$11
Polymaker TPU 95A Orange 750g
0.25
https://amazon.com
$29.99
3M TB641/GM641 
Grip Tape 1 inch wide 1ft
0.07
https://amazon.com
$54.14
GoPro Camera
~$298
GoPro Hero9 
1
https://amazon.com
$209.99
GoPro Max Lens Mod 1.0
https://amazon.com
$69.29
Micro SD Card 
V30 Rated
1
https://amazon.com
$17.99

For all-day operations, consider purchasing 2x more batteries per gripper and one battery charger per gripper.

https://amazon.com

2.3 CAD Models

  • UMI Gripper:Onshape

  • Soft Finger:Onshape

  • wsg50-UR5 mount:Onshape

  • wsg50-Franka mount:Onshape

2.4 3D printing instructions

Checkout our CURA 3mf examples for more detailed parameters:

https://drive.google.com/drive/folders/15vFeCd-fEt-NOYkRXebhpDGm5D2zX3MM?usp=sharing

Common Print Parameters (PLA+):

Nozzle diameter: 0.6mm

Layer height: 0.3mm

Wall thickness: 1.2mm

Top-bottom thickness: 1.2mm

Infill: 20% Gyroid

Temperature: 190C for eSun PLA+

Finger Print Parameters (TPU):
Nozzle diameter: 0.6mm
Layer height: 0.3mm
Infill: 100% lines
Temperature: 255C for polymaker TPU 95A
Part specific print parameters:
Part
Infill %
Support?
Wall mm
Top-bottom mm
Print 1: gripper_covers
bottom_plate




top_plate




Print 2: gripper_internals
grip
100

1.8

handle




Cube




finger_holder_left/right

Yes


gear_left/right




linkage_left/right


2.4
1.8
Print 3: gripper_fingers
finger
100



2.5 Photos

Reference for the position and orientation of ArUcO tags. Please note that left and right grippers have different tags! The ArUcO tags on the large cube are currently unused by the algorithm therefore completely optional.
Tag PDF for printing:
https://drive.google.com/drive/folders/1pCiuABTyev7k4EWJ3LQ-zKz3ZHjzeIDF?usp=sharing

更多见七月的大模型机器人二次开发线下营

校长July寄语

 1  截止到24年5月初,我们总算把斯坦福的UMI、DexCap成功复现了(国内最早复现这两模型的团队或之一,至于Mobile Aloha则大同小异),且已把这两者的所有硬件全部换成国产平替,欢迎加入本线下营

   2 通过本线下营共同实现一系列主流机器人的复现部署、二次开发之后,如合适,欢迎和我司的大模型机器人项目组合作,一方面,共同为高校/公司服务,二方面,共同打造世界级通用机器人  

↓↓↓扫码了解/抢早鸟优惠↓↓↓

课程咨询可找苏苏老师VX:julyedukefu008或七月在线其他老师

点击阅读原文”了解课程详情~

浏览 70
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报