共计 2997 个字符,预计需要花费 8 分钟才能阅读完成。
要想造出一款真正拟人的机器人有多难?
通常机器人动起来,浑身的关节都会发出咔嗒声,但被 OpenAI 看到的创业公司 1X 却能做到不一样的事情,他们上周公开的新款人形机器人 NEO 可以做到安静且实用。如果我们把视频的音量调高,才能听到它弯腰捡起背包时电机发出的轻微嗡嗡声。
看完这个视频,真想问一句,这真不是个穿着皮套的人类吗?
如今的工业机器人可以把动作做得很快,但它在与东西接触之前,需要把速度减到极慢。为确保安全,这些机器人往往需要被关在安全笼中,而 NEO 却能轻柔地搂住视频中的女生,自然流畅地把书包递给她。这是如何做到的呢?
1X Technologies 的 AI 副总裁 Eric Jang 写了一篇博客,公开了 NEO 背后的技术。
他称这篇博客是一篇电机惯量和齿轮系统的教程。在加入 1X Technologies 之前,Eric Jang 曾在谷歌的机器人研究部门任职 6 年,但他坦言,直到加入 1X Technologies,他才深刻领悟到这些概念有多重要。
通过亲自进行物理计算,Eric Jang 更加坚定地认为,轻质且具有高扭矩的电机是打造具有学习能力的通用机器人的关键。
噪音大是因为关节动能转换效率低下?
设想有一个重量为 3 公斤、半径为 0.4 米的轮子,它以每秒 5 弧度的速度旋转。从轮子上延伸出一根杠杆,这根杠杆将与一个固定不动的木块发生碰撞。假设这次碰撞完全是非弹性的,这意味着轮子在碰撞后将停止旋转,不会木块上反弹。为了简化计算,我们假设杠杆臂没有质量,仅用于阻止轮子的旋转。
根据旋转动能公式
,其中 I 是转动惯量,ω 是角速度。因为假设杠杆没有质量,系统的惯性相当于一个固定的圆柱体:
。代入数值可以算出 I = 0.24 kg⋅m^2。因此,可以进一步算出这个系统的旋转动能为 3 焦耳。
在现实环境的非弹性碰撞中,轮子和木块的总动量守恒,而它们的总动能则不会。因此,系统的旋转动能将小于 3 焦耳。
能量是一个守恒量,那么其余的动能去哪了呢?
答案是,部分动能转化为了运动,剩余的动能则以热能、声音和内部材料变形的形式消耗掉了。当你听到机器人在移动时发出巨响,那是因为动能的传动效率低下,将机械功转化为了声音,能量被浪费了。
由于木块阻止了杠杆的移动,导致轮子的新速度降为零,相应的动能也降至零。这意味着要使轮子停止旋转,必须将全部的动能转化为其他形式的能量。幸运的是,3 焦耳并不是很大的能量,这相当于一只小狗以 1 米 / 秒的速度小跑着撞向你并停下来。
加入齿轮箱后的碰撞
把上面的系统稍作修改:现在我们有两个轮子,每个轮子的质量为 1.5 千克,半径为 0.4 米。这两个轮子分别以 5 弧度 / 秒和 50 弧度 / 秒(即第一个轮子速度的 10 倍)的速度旋转,并与一个固定的木块发生碰撞。第二个轮子的旋转速度是第一个轮子的 10 倍,通过齿轮装置驱动第一个轮子。这种设置相当于一个 10:1 的齿轮减速比,它降低了杠杆的最终速度。
系统的动能是两个轮子旋转动能的总和。和上一个例子一样,系统在碰撞后会静止,所有动能必须以热量、噪音和材料变形等形式耗散。
虽然杠杆接触木块的速度与之前相同,但总动能(150 焦耳)却是原来单轮系统的 50 倍!如果按机器人齿轮箱的标准,将齿轮比增加到 100,那么需要耗散的总动能将达到 15000 焦耳。
这大致相当于一个棒球以每小时 1000 英里的速度与你相撞。在这种速度下,杠杆碰撞到的任何物体,都会被彻底摧毁。当然,齿轮系统本身也将无法幸免。
这可能有点反直觉,因为齿轮连动装置往往是出于安全设计的。如果杠杆的最终速度保持不变,轮子的总质量也不变,也不设置木块阻止杠杆的运动,把两组装置的运动分别录下来观察,那么光看视频,看不出区别。但是,一旦涉及到碰撞 —— 尤其是那些意料之外的碰撞 —— 情况就会大不相同。
旋转电机的物理原理,对于人形机器人安全地与世界发生接触至关重要。大多数人形机器人公司选择将机器人部署在工厂而不是家庭中,是因为它们依赖于僵硬的高速齿轮传动系统。
正如前文中那个棒球「毁天灭地」的动能,这种系统在人身边并不安全,因此,需要用防护笼把他们围起来。
关在防护笼里的机器人
试想,如果想让机器人快速地端来一杯咖啡,那么需要它肢体的末端执行器快速移动,这意味着在机器人的肢体和齿轮的另一侧,必须有一个转速远远超过末端执行器的电机在运转。由于动能与角速度的平方成正比,机器人的动作实际是在由高速旋转的齿轮的惯性控制着,而非机器人的肢体链路本身。MIT 的 Russ Tedrake 教授在他的课上,对这些违反直觉的机器人动力学现象进行了精彩的阐释。
课程链接:
那么,既然齿轮箱又耗能又不安全,为何还要使用它们呢?
原因在于齿轮箱发挥了关键的机械杠杆作用:许多电机在单独工作时无法提供足够的扭矩,所以工程师们会在高速电机上安装齿轮,牺牲速度来换取必需的扭矩。
这种齿轮系统是「刚性」的,不能「反向驱动」,一旦齿轮开始转动,它们就会紧紧地咬合在一起,很难再往回转。因此在齿轮箱的另一端,需要施加更大的力量来抵抗高速电机产生的旋转力。
基于以上考虑,1X Technologies 在的过去十年中一直致力于制造高扭矩、低转速电机,最大限度地提升传动系统的安全性。得益于 NEO 机器人采用的齿轮比较小、重量较轻的电机和驱动系统,它成为了首款真正意义上能够安全融入家庭环境的家用机器人。
重新定义真人视频对于机器人训练的意义
除了从机器人处收集的数据,研究者们也可以采用真人执行任务的第一人称视角视频来训练机器人,思路是这样的:
1. 数据是通用机器人进步的「瓶颈」。机器人硬件价格昂贵,聘请人类远程操作员使用笨重的硬件执行任务,费用也同样不菲。而且远程操作的效率很低,远远低于人类直接完成任务的速度。
2. 如果我们将头戴式摄像机绑在人们身上,让他们戴上能遮住肉体的大号橡胶手套,这样很快就能收集到人们从事各种家务和任务的大量数据集。普通人每天在日常生活中,都会不自觉地完成大量不同的动作和操作任务。虽然直接感知原始运动输出存在难度,但我们可以通过分析视频中的姿势变化来推断动作。在更先进的硬件出现之前,这种数据收集方式有助于打破通用机器人发展的障碍。
3. 互联网上有许多第一人称和第三人称的视频,可以训练机器人识别和学习人们在视频中进行的各种活动,从而进一步扩大我们的数据规模。
在扩大这类数据收集规模之前,还需要注意一点,我们体内没有快速旋转的部件,与转速为 5000 RPM 的电机相比,肌肉的动能非常低,我们在移动时所携带的有效质量也要小得多,因此会发现虽然机器人的关节角度可能与人类大致相同,但它的旋转电机提供的有效质量可能过大,无法灵巧地完成任务。
即使我们开发出了高效的动作控制策略,机器人在执行如轻松开关电灯或优雅奔跑等动作时,仍然无法达到人类的速度和流畅度。这是因为机器人在接触物体时所施加的力与人类存在显著差异。
那么想要把人类的视频快速转化成为机器人的运动策略,还需要以下的方法:
1. 一款像 NEO 非常顺从和灵活的机器人
2. 让机器人以慢于 1 倍的速度跟踪视频的运动轨迹,而非直接复制「 人类硬件」的动态。不过这只适用于静态操作任务,对于在厨房里折叠衣服和准备食物等需要接触很多物体的任务来说,不太适用。
3. 将运动规划与动态规划解耦,让运动规划专注于达到目标位置,而动态规划则集中于控制发生碰撞时的力。