机器人评论:索尼2001年产的机械狗是个啥构造?
投稿 @ 2019.02.08 , 11:12 下午本文由蛋友 Aler 投递
大家好我是Aler,一个机器人爱好者。
我开始做这个系列的动机是:日本的机器人设计制造工艺有很多值得我们学习的地方;而Aibo系列。自1999年问世以来,至今已经有20年历史了,这在现代机器人领域少有的多自由度机器人商用化的例子(虽然是以高级玩具的形式)。20年前的工程师就已经有了这种成熟程度的思考和产品化的能力,这非常了不起。在观察和学习Aibo的时候我经常能发现很多有趣到令人惊叹的设计思路。我自己同时也是一家机器人公司的创始人和一个机器人工程师,由于我们的产品在从设计到生产的过程中也经历过无数的坑,结合自己在产品设计生产方面的经验深入地分析一下这些机器人产品的特点,给大家从不同的角度分享下这件工程学上的杰作。
我平常并不写技术博客,分享到煎蛋来主要是觉得这里可能会有对机器人感兴趣的人,同时也觉得现在煎蛋翻译的文章越来越短,内容越来越神棍,干货比例直线下降,导致很多人现在一上煎蛋就跳过主页直奔无聊图开始摸鱼(不,我说的并不是我,我只是在陈述这个现象,真的。)需要一些改变。平时工作比较忙,现在正好趁着过年整理下。全文基本上都是从零手打,也没啥具体的参考资料,都是自己在研究过程中总结下来的。煎蛋首发!
今天先简单介绍下我在2018年机缘巧合收到的两只索尼产的机械狗Aibo: ERS210(Blue) 和ERS311:
这是刚收到时210的包装箱。实际上里面的狗狗长这样:
ERS210(右)是索尼机械狗里的第二世代,首次发行时间为2001年,也就是已经18岁了,售价为150,000日元;而左边的白色是ERS311(左),第三世代的机械狗,时间为2003年,发行售价为98000日元。当然说是发行售价,实际上现在这些狗狗都已经是及其具有历史感的电子古董了,全新的市场上几乎是无法找到的。而成色新,功能健全的狗狗的价值一般会远远高于发行价格。当然也有很多因为各种原因损坏的二手狗狗,给了很多有能力维修的人很多捡漏的机会。
篇幅原因,我一只一只写。今天的主角是这只ERS210,这只Aibo已经18岁了!18岁!在我按下开关键,狗狗舒展身体,各个关节开始正常运转的那个瞬间,我真的感受到了什么是”Proper Engineering”, 让我无数次惊叹日本的工程师在设计上花的心思,用料上的扎实。我知道这听起来是一个宽泛的陈述,我会在以后的文章详细评论他们的工程投入。
ERS210技术上相对第一世代已经比较成熟了,采用了模块化设计,四肢和头还有手都可以通过一个滑块结构轻松的拆除。ERS310作为一款“降级”版本的狗狗,被赋予了更可爱的外观,更低的价格,同时也阉割掉了模块化设计和很多自由度。整只狗的自由度(在多关节机器人系统里自由度可理解为可活动关节)已下图上标出:
简单的说:每条四肢三个自由度;尾巴两个自由度,可以同时上下左右摇晃,里面用了一组很有趣的共轴万向节传动机构,使得体积进一步缩小;ERS210的头部相对复杂很多,一对耳朵各2个自由度,脖子三个自由度,所以不但可以点头摇头,甚至可以歪头,同时嘴巴上很慷慨的也加了一个电机,可以张和嘴巴,让整个狗狗的神态有灵气很多(对比之下,国内近几年某头和身体梗着连在一起脖子一个关节也没有的人型机器机器人简直是…诶,比狗还不像人…这是18年前的产品啊同志们,18年前!)ERS311的头部就简化了很多,耳朵是没有电机的,就是挂在那里…同样头部也少了左右歪头的自由度;尾部的电动尾巴也给替换成了一个摇杆(输出转输入?还挺有意思的,经过后来的调查发现这根尾巴真的可以当遥控器使)四肢基本一样。
好的简介到此结束(不好意思我一说起机器人来就刹不住车,我尽量保持简洁…),我们先从视频了解下Aibo ERS210:
视频1 What can Aibo ERS-210 do :
视频2 Aibo ERS-210 dancing to music:
Aibo的行为主要取决于身体内放置的记忆棒。一般Aibo默认随机携带的卡都是成长卡,“Aibo Life”,类似一个实体养成游戏,可以把狗狗从小养大,根据方式不同狗狗会成长为不同的性格,也会对应不同的行为。总之就是非常额眉zing。还有“派对吉祥物”“舞蹈者Aibo”“Aibo好朋友”等各种功能卡。根据卡的内容不一样,Aibo会执行不同的任务,听起来非常的符合逻辑,唯一的小问题是,一张卡的内存大概只有8M(手动捂脸),所以能做的事情其实相当有限…在这上面编写程序有种在写8Bit游戏的感觉哈哈
拿这个视频做一个例子,视频开头按下开关后机械狗首先开始Boot Up。得力于索尼自己开发了基于MIPS架构的内核,使得开机时间仅仅需要15秒!(我也不知道我说这句话的时候到底有没有在反讽) 在Boot Up过程中记忆卡的内容被Load到内核里,然后Aibo慢慢开始苏醒。第一个四脚张开的动作是为了确保Aibo能够从任意姿态恢复到站立的复位动作。看起来是个笨办法,不过有意思的是我后来发现Aibo是有内置IMU的!!! (Inertia Measuring Unit) 所以Aibo理论上是自己知道自己的姿态的。IMU现在每个智能手机,无人机,智能手环都有,但是在2001年绝对是稀罕玩意,能用在Aibo上不知道索尼又多花了多少钱…
视频里展现的很多动作组其实是非常值得推敲的:
比如里面一个简单的打招呼,从输入到输出端依次经过了:人的声音>进入麦克风>离线进行声纹比对>语音识别>协同控制三自由度的狗爪子和狗头运动
而像踢球经过了:摄像头捕捉图像(那个时候的帧率,分辨率都低的可怜,存储卡一次能存7张照片…)>颜色+形状识别>判断距离和方向(只有一个摄像头!不是双目! 饿妹zing!)>驱动四足进行Locomotion>通过肢体运动学控制全身或手臂撞击球体
最后的听歌抖动身体,也相当的复杂,要知道这个硬件是2000年定稿开始设计的,板载计算能力和今天的计算机相比天差地别。所以在有限的算力下索尼的工程师是怎么得到最好的效果的呢?我猜测是做了分段判断,并且将动作编组,相对于根据每一个beat调整动作,根据一整段节奏调整动作组的播放时间和动作组的类型听起来更经济一些,事实上经过我的测试我认为他们也是这么做的。
在继续往下说之前大家可以先参考下我这张Windows画板强行绘出的Aibo功能结构图:
粗略的分一下机械狗身上的输入输出设备:
输入:头部的麦克风阵列,摄像头,红外距离检测传感器,四肢的轻触开关,头顶,下巴,以及后背上的触摸开关
输出:扬声器,LED阵列,舵机模块,螺线管模块
Aibo本身的结构是这样的:它的计算中枢在胸腔里,索尼官方称之为“Core”。Core是一个每个面都有连接器的类似方盒子一样的东西,两面分别连接了四肢,顶面连接了头部和尾部。而在Core的内部承载着可更换的电池模组和“大脑”——没错就是万恶的索尼Memory Stick。其实说是大脑,也只是方便大家理解,实际上Memory Stick里的东西更像是一组组动作的指令集,主要描述了当A事件发生的时候应该执行B指令,B指令包括对每个电机具体角度速度的定义等等。下层基本的电机控制,传感器的预处理应该都是在Core里面实现的。
这就是Core. 到这一步其实都并不能算是很复杂的拆解,事实上索尼的模块化设计本来就允许用户用一个小探针随意的拆卸四肢和头部尾巴,最开始的目的可能是为了设备的可维护性。(比如用户的Aibo左腿受损,只需要从厂家订购一条腿而不是寄回整只狗给索尼去维修,这样大大降低运输成本和售后成本。),可是在从第三世代,以及其之后的版本里索尼都取消了模块化设计,原因不明。我个人觉得这个设计非常天才,我没事就喜欢拆狗玩。
这个设计通过一组2*3的卡槽限制住5个自由度,和一个凸起的卡扣锁住外部零件。
粗拆之后大概长这样:
Core同时连接六个部分,头部,四肢和尾巴。其中四肢最容易理解,主要由三个高度定制化的舵机模块构成,作为系统的输出。而在每条腿的掌心有一个小开关作为输入,来检测脚掌是否与地面接触,便宜又好用。比如当Aibo四只脚全部离开地面时,它会自己伸直前腿和后腿,像是被举高在水面上的柯基一样,让自己更整体,以保护自己不会在突然的坠落中折断四肢。非常科学。
上图是打开外壳后里面骨架的样子。这种骨架+外壳的设计方法让我想到万代的MG,PG高达模型。虽然这张照片还没往里面拆,不过我们已经可以看到一个两条腿的结构非常紧凑,这里有一个我一直认为明显有很多优点但是现在国内很少看到有人做的设计,也就是通过一个定制化的电机系统设计一个中心出轴的输出轴:
左侧的图是现在市面上看到的很多人形机器人的设计方法,拿一个单边出轴的舵机(黑色),套上一个H形的架子(蓝色),在反面做一个虚轴(红色标记部分),然后把另外半边连上去。在外侧再套一层工业设计过的外壳(绿色)。好的,这样你就获得了一个完美的垃圾舵机系统。他结构强度低,占的空间高,扭矩空间比低,并且非常不优雅。什么叫优雅?恰到好处的设计。我们再看右图,索尼的设计就非常优雅,中心出轴,两侧都有轴承,结构强度高,扭矩密度高,同时工业设计可以不用小心翼翼地绕过所有傻傻的结构件。
头部:
一边的耳朵有两个自由度,可以旋转和朝向脸颊方向折叠。有意思的是为了节省成本,这里的驱动器采用了两组定制化的“solenoid”(应该翻译成螺线管?) 出于工程师的好奇和对真理的追寻,我把它拆了,大家可以看下反面的构造:
实际上是一个异形的线圈固定在一个限制了轨道的零件上,也就是说只有开盒合两个状态。虽然只有两个状态,但实际上这个执行器有两个方向的运动:旋转和折叠。运用一个连杆轨道实现,让耳朵看起来更灵动。这么做的好处是可以节省体积;传统的做法一般是在耳朵上直接装两组正交的舵机系统,但是体积大,成本高而且耳朵负载很小,没有必要采用舵机系统。这一组执行器的结构是针对这个耳朵模组专门设计的,索尼的工程师为了在头部这么小的空间里塞进一对能动的耳朵真的下了很多功夫!
我突然发现如果每个零件都照我这么写这篇文章可能会长出天际,今天先简单介绍下结构,到此为止。这仅仅是粗拆,很多极其精妙的设计都隐藏在细节里,详细的拆解内容可能要在日后的文章中再写。我不太确定自己的更新频率,不过我还有很多很多有关机器人设计方面想说的话,理想状态下应该还有很多可以分享给大家的东西,我们下次再见。
PREV : 无聊图大吐槽-20190208
NEXT : 健康人群服用某些营养补充剂有可能增加糖尿病的风险