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面对陌生环境有比较好的泛化能力
UMI的环境直接用了docker,预训练数据都有的
01
比Mobile Aloha成本更低的UMI刷盘机器人
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 Tutorial、Assembly Tutorial
其主要特点有:
UMI本质是一个用于数据收集和策略学习的框架,其使用手持夹持器可以简单快速且低成本的收集一系列训练机器人的数据
且其更考虑了三方面的延迟:机器人观察环境存在延迟(传感器导致)、拿到环境数据后做推理有延迟、推理完成到做出动作亦有延迟
使用鱼眼镜头感知环境,且通过改造SLAM与GoPro内置的IMU传感器结合使用,并在夹持器上的两端各自添加一面镜子,以提供立体观察 如下图所示,从左到右分别表示人类做示范的手持夹持器、观测空间、机器人设置,其中①是一个相机,④是“相机① ”中自带的IMU感知姿态跟踪器②是带有广角视野的鱼眼镜头,③是两个侧面镜用于提供立体视觉,⑤是对夹持器的跟踪⑥是基于运动学的数据过滤
-
这六个部分的细节很快将在下文逐一阐述 -
使用扩散策略进行动作预测,当然,也可以换成mobile aloha所用的ACT算法 扩散策略的更多细节在本文第三部分进行阐述
1.1.1 GoPro摄像头、鱼眼镜头、侧面镜、IMU感知跟踪
首先,在手腕上安装一个GoPro摄像头作为输入观察,此外,无需任何外部摄像头设置。之后在机器人上部署UMI时,将GoPro摄像头放置在与手持夹持器上的相同位置相对应的同一3D打印手指处
其次,如下图所示,如果将一个大的155°视场图像矫正为针孔模型会严重拉伸外围视野(蓝线外),同时将中心最重要的信息压缩到一个小区域(红线内),故UMI策略使用原始鱼眼图像作为观测
接着,为看弥补单目相机视野中缺乏深度感知的问题,在相机的左右两端分别放置了一块镜子,如下图所示,UMI侧面镜。超广角相机与位置合理的镜子相结合,实现了隐式立体深度估计
-
(a):每个镜子的视角有效地创建了两个虚拟相机,其姿态相对于主相机沿镜子平面反射 -
(b):盘子上的番茄酱在主相机视野中被遮挡,但在右侧镜子内可见,证明镜子模拟具有不同光学中心的相机 -
(c):对镜子内的内容进行数字反射以进行策略观察。请注意,在反射后,杯子把手的方向在所有3个视图中保持一致
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的策略接口设计
-
从开始观察到真正感知到环境时 有观测反应时间,即观测延迟 而感知到环境做决策时,则有决策时的反应时间,即推理延迟 最后,决策好之后 做出行动 也会有一个执行时间,即执行延迟 机器人在实际操控当中,也是类似的,也会一一存在观察延迟
策略推断延迟
执行延迟,且简单地丢弃过时的动作,只执行每个硬件在之后具有所需时间戳的动作
-
(b) UMI 策略接收一系列同步观察结果(RGB 图像、6自由度末端执行器姿态、和夹持器宽度),并输出一系列期望的末端执行器姿态和夹持器宽度作为动作 相当于先感知环境,然后做出动作预测 -
(a) 同步不同的观察流,以弥补物理测量的延迟 -
(c) 提前发送动作命令以补偿机器人的执行延迟
1.3 完成刷盘的任务
1.3.1 刷盘任务的拆解
任务机器人需要执行7个步骤顺序地独立动作(打开水龙头、抓住盘子、拿起海绵、洗涤并擦拭盘子直到番茄酱被清除、放置盘子、放置海绵并关闭水龙头),如下图所示
能力这项任务从几个方面推动了机器人操纵能力的边界:
这是一个超长视野任务,每个步骤的成功都依赖于前一个步骤
机器人需要感知和操纵复杂的流体,包括牛顿流体(即,水)和非牛顿流体(即,番茄酱)
擦拭动-作需要使用一个可变形工具(即,海绵)同时协调双臂相对于水流
操纵受限关节物体(即,打开和关闭水龙头)需要由软指提供的机械顺应性
策略也需要对“清洁度”的概念语义上的鲁棒性。当在洗涤过程中或即使洗涤阶段完成后添加了额外的番茄酱时,机器人需要继续洗涤和擦拭
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 )
02
UMI的硬件安装指南
2.1 详细的3D打印/组装教程(引用来源)
-
3D打印教程: https://youtu.be/EJmAg1Bnp-k -
夹持器组装教程:https://youtu.be/x3ko0v_xwpg
2.2 材料清单
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
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
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+
|
|
|
|
|
|
||||
|
||||
|
||||
|
||||
|
|
|
||
|
||||
|
||||
|
|
|||
|
||||
|
|
|
||
|
||||
|
|
2.5 Photos
更多见七月的《大模型机器人二次开发线下营》
校长July寄语
“ 1 截止到24年5月初,我们总算把斯坦福的UMI、DexCap成功复现了(国内最早复现这两模型的团队或之一,至于Mobile Aloha则大同小异),且已把这两者的所有硬件全部换成国产平替,欢迎加入本线下营
2 通过本线下营共同实现一系列主流机器人的复现部署、二次开发之后,如合适,欢迎和我司的大模型机器人项目组合作,一方面,共同为高校/公司服务,二方面,共同打造世界级通用机器人 ”
课程咨询可找苏苏老师VX:julyedukefu008或七月在线其他老师
点击“阅读原文”了解课程详情~