Honda的ASIMO是如何行走的?简介想象一下未来的生活,机器人在你家里帮你煮饭,帮你做家务,帮你打扫房间或者在你工作的时候递上一杯热热的咖啡?机器人已经能够代替人类做很多人类不想做的事情,甚至不能做的事情。在世界各地的很多现代化工厂中,机器人已经很早就代替工人组装汽车,尤其是那些重复性很高的工作。现在的商场里,也早已开始出售各种类型的清洁机器人,能够自动帮助你清洁家里的地面,虽然目前功能上单一了一点,但是毕竟也帮你做了不少工作。日本的本田公司(Honda)在1986年就开始类人机器人的研究工作,到了2006年为止已经整整20年了。在这20年中,他们在这个领域取得了举世瞩目的成绩,ASIMO的研制成功让Honda公司成为目前这个领域最领先的公司。在这篇文章中,我们将详细了解一下ASIMO是如何工作的,基本的原理是什么。ASIMO的名称由来ASIMO,代表AdvancedStepinInnovativeMobility。是日本本田公司开发的目前世界上最先进的步行机器人。也是目前世界上唯一能够爬楼梯,慢速奔跑的双足机器人。虽然其它公司也有类似的双足机器人,但是没有任何一家的产品能在步态仿真度上面能达到ASIMO的水准。除了ASIMO杰出的步行能力以外,ASIMO的智能也同样出色。语音识别功能以及人脸识别功能能够使用语音控制ASIMO以及使用手势来进行交流。不仅如此,ASIMO的手臂还能够开电灯,开门,拿东西,拖盘子,甚至还能推车。图1:ASIMOHonda眼中的ASIMOHonda希望开发出的机器人是能够帮助人类,尤其是老年人的人类助手,而不是一个高科技玩具。因此ASIMO被设计成1.2米的高度,正好能够和轮椅上的人平视。这让ASIMO看上去非常有亲和力,因为大尺寸的机器人会让人有威胁感,小孩子也不会喜欢一个太高大的家伙。同时,这个高度也正好让ASIMO能够拿取桌子上的物体,如图2所示。这个设计因素在ASIMO被创建之初就已经考虑到了,可见Honda工程师们的用心良苦。图2:1.2米的高度正好让ASIMO能够拿取屋内多数的物品ASIMO的结构:类似人类的身体结构Honda的工程师们在项目初始阶段花费了大量的时间研究了昆虫,哺乳动物的腿部移动,甚至登山运动员在爬山时的腿部运动方式。这些研究帮助工程师们更好的了解我们在行走过程中发生的一切,特别是关节处的运动。比如,我们在行走的时候会移动我们的重心,并且前后摆动双手来平衡我们的身体。这些构成了ASIMO行走的基础方式。在行走过程中,我们的脚趾也扮演了非常重要的角色,在平衡我们身体上起了很大的作用。在ASIMO的脚上也有类似的机理,而且还使用了吸震材料来吸收行走过程中产生的对关节的冲击力,就像人类的软组织一样。图3:ASIMO正面照ASIMO和人类一样,有髋关节,膝关节和足关节。机器人中的关节一般用“自由度”来表示。一个自由度表示一个运动可以或者向上,或者向下,或者向右,或者向左。ASIMO拥有26个自由度,分散在身体的不同部位。其中脖子有2个自由度,每条手臂有6个自由度,每条腿也有6个自由度。腿上自由度的数量是根据人类行走,上下楼梯所需要的关节数研究出来的。图4:ASIMO关节图ASIMO身上两个传感器保证了ASIMO能够正常行走,它们是速度传感器和陀螺传感器。它们主要用来让ASIMO知道他身体目前前进的速度以及和地面所成的角度,并依次计算出平衡身体所需要调节量。这两个传感器起的作用和我们人类内耳相同。要进行平衡的调节,ASIMO还必须要有相应的关节传感器和6轴的力传感器,来感知肢体角度和受力情况。ASIMO的动作:类似人类的步行方式除非你很了解机器人学,否则你很难想象要让ASIMO象人类这样行走是多么的困难,而ASIMO又是如何令人难以置信的达到这个程度的。ASIMO的行走中最重要的部分就是它的调节能力。ASIMO除了能像人类一样正常的步行之外,它还能对行走过程中遇到的情况进行自我调节。比如在有一定斜度的平面上行走,甚至有可能在行走过程中被人推了一下,ASIMO都能快速对这些情况进行及时地处理,并进行相应的姿态调节,以确保能够正常的行走。为了实现这些,ASIMO的工程师们需要考虑ASIMO在行走中产生的惯性力。当机器人行走时,它将受到由地球引力,以及加速或减速行进所引起的惯性力的影响。这些力的总和被称之为总惯性力。当机器人的脚接触地面时,它将受到来自地面反作用力的影响,这个力称之为地面反作用力。所有这些力都必须要被平衡掉,而ASIMO的控制目标就是要找到一个姿势能够平衡掉所有的力。这称做zeromomentpoint(ZMP)。当机器人保持最佳平衡状态的情况下行走时,轴向目标总惯性力与实际地面反作用力相等。相应地,目标ZMP与地面反作用力的中心点也重合。当机器人行走在不平坦的地面时,轴向目标总惯性力与实际的地面反作用力将会错位,因而会失去平衡,产生造成跌倒的力。跌倒力的大小与目标ZMP和地面反作用力中心点的错位程度相对应。简而言之,目标ZMP和地面反作用力中心点的错位是造成失去平衡的主要原因。假若Honda机器人失去平衡有可能跌倒时,下述三个控制系统将起作用,以防止跌倒,并保持继续行走状态。地面反作用力控制:脚底要能够适应地面的不平整,同时还要能稳定的站住。目标ZMP控制:当由于种种原因造成ASIMO无法站立,并开始倾倒的时候,需要控制他的上肢反方向运动来控制即将产生的摔跤,同时还要加快步速来平衡身体。落脚点控制:当目标ZMP控制被激活的时候,ASIMO需要调节每步的间距来满足当时身体的位置,速度和步长之间的关系。图5:ASIMO的步态控制ASIMO的动作:稳步的行走ASIMO能够感应到即将摔倒的情况,并能够很快对此做出反应;但是ASIMO的工程师想要更多的功能。他们不但想让ASIMO能够行走的更顺畅,还想让ASIMO能够在不停止的情况下转身。目前绝大多数其它类人机器人无法做到这一点。图6:ASIMO的腿部特写当我们走到弯角处需要转身的时候,我们将我们身体的重心移到转身的位置。ASIMO使用了一种叫做“动作预测控制”,也叫做“iWalk”技术来实现。ASIMO需要预测转身所需要的重心的移动的位置以及持续时间。由于这个技术是实时(RealTime)技术,因此ASIMO能够不需要停止就能够转身,实现边走边转身。图7:重心移动原理本质上,ASIMO每走一步,他就需要计算一次他的重心位置以及惯量,并预测在下一步移动后的位置,同时计算出所需要的重心移动距离。他主要通过调节以下4个因素:步长:每步行走的长度位姿:身体的位置速度:整体移动的速度行走方向:下一步移动的方向图8:ASIMO的控制流程ASIMO的动作:上下楼梯上下楼梯的动作如果只是靠事先的程序输入的话绝对不可能实现。即使是输入了阶梯的高度及前后的距离,如果多达29层的话,也会因误差累积而无法正常走下来。为此,Honda在ASIMO的每只脚上,都装了一个6轴力传感器,用来监测每一步的稳定程度。再结合陀螺仪和加速度传感器,ASIMO使用了独特的数学算法来让他上下楼梯,并能够上下斜坡而如履平地。Honda的工程通过使其脚内侧不紧贴地面、脚趾比台阶边缘向前探出少许这样的站立方式来探测出台阶的边缘。在这一状态下,如果通过脚底的压力传感器进行压力分布测量的话,可以预先测出边缘的位置。下楼梯时的着地点也可以同样进行预测。虽然操作人员向ASIMO输入了楼梯大致的高度,但是最终则是通过ASIMO足底的传感器来确认楼梯位置的。不只是下楼梯,ASIMO还能够在斜坡上转弯。这时由于ASIMO的每一步都要变换姿势,并改变与ZMP的关系,较下楼梯难度更大。下楼梯与在斜坡转弯使用了相同的算法,因此不需要改变模式。图6:ASIMO在走楼梯ASIMO的技术参数:体重52公斤行走速度0-1.6公里/小时行走范围范围可调整,步幅可调整抓握力0.5公斤/手(每只手5个手指)作动器伺服电机+谐波减速器+驱动单元控制装置行走/操作控制单元,无线发送单元传感器脚部六轴向脚部方位传感器躯体陀螺仪和加速传感器电源部分38.4V/10AH(镍锌)操作部分操纵台和便携控制器自由度(类似人类的关节)头部颈关节(U/D,RT)*12DOF臂肩关节(F/B,U/D,RT)肘关节(F/B)腕关节(RT)3DOF1DOF1DOF5DOF×2手臂=10DOF手五个手指(抓握)1DOF1DOF×2手=2DOF腿髋关节(F/B,L/R,RT)膝关节(F/B)踝关节(F/B,L/R)3DOF1DOF2DOF6DOF×2腿=12DOF机器人ASIMO---关于ASIMO的未来设想:追求技术的不断进步。21世纪,Honda期待着ASIMO真正地对人类有益,丰富人类的生活。今后,Honda仍将以“挑战精神”继续研究和开发,与ASIMO一起,不断地向“未来之梦”迈进。笔者后记:新的ASIMO已经在行走能力上又有了新的突破,2004年12月发布的新型ASIMO已经能够达到每小时6KM的奔跑速度以及迂回行走。同时其关节自由度也达到了34个。新开发的技术根据其官方网站的描述为:主要新技术:1)能够实现像人类一样自然奔跑的新姿势控制技术2)自律性的连续移动技术3)配合人的活动而连贯活动的技术1、新姿势控制技术为了防止高速移动产生的足部打滑和空中旋转,保持平衡状态,Honda通过利用上半身弯曲和旋转的新姿势控制理论和新开发的高速应答硬件等,使ASIMO的最大奔跑速度达到了3km/h。同时,步行速度也由原来的1.6km/h提高到2.5km/h。2、自律性的连续移动技术通过地面传感器获得的周围环境信息和预先录入的地图信息等,ASIMO能够在步行的同时修正路线偏差,途中无需停歇地直接移动到目的地。通过地面传感器和头部视觉传感器发现障碍物时,ASIMO可以自身判断,迂回选择其他路线。3、配合人的活动而连贯活动的技术SIMO通过头部视觉传感器、手腕部位新增加的腕力传感器等检测人的动作,可以进行物品交接,或配合人的动作而握手,而且能够朝着手被牵引的方向迈步等,实现了与人相配合的动作。主要数据1、奔跑速度3km/h(跳跃时间0.05秒)2、普通步行速度2.5km/h(原来为1.6km/h)3、身高130cm(原来为120cm)4、体重54kg(原来为52kg)5、活动时间1小时(原来为30分钟)6、关节自由度34度(原来为26度)腰部旋转关节:奔跑或步行时,通过手腕部位的摆动,以及腰部积极地旋转,消除脚部摆动所产生的反作用力,从而提高步行速度。手腕弯曲关节:在手腕部位再增加2个轴,使手腕能够柔软、灵活地活动拇指关节:原来使用1个马达驱动5个手指,为了使拇指能够独立活动,再增加1个马达,使得ASIMO能够拿各种各样的东西。头部关节:在头部关节部位再增加1个轴,以增加头部的表达能力。※关于新姿势控制技术在实现机器人的奔跑方面,面临着2大课题。一个是正确地吸收飞跃和着陆时的冲击,另一个是防止高速带来的旋转和打滑。1、正确地吸收飞跃和着陆时的冲击实现机器人的奔跑,要在极短的周期内无间歇地反复进行足部的踢腿、迈步、着地动作,同时,还必须要吸收足部在着地瞬间产生的冲击。Honda利用新开发的高速运算处理电路、高速应答/高功率马达驱动装置、轻型/高刚性的脚部构造等,设计、开发出性能高于以往4倍以上的高精度/高速应答硬件。2、防止旋转、打滑在足部离开地面之前的瞬间和离开地面之后,由于足底和地面间的压力很小,所以很容易发生旋转和打滑。克服旋转和打滑,成为在提高奔跑速度方面所面临的控制上的最大课题。对此,Honda在独创的双足步行控制理论的基础上,积极地运用上半身的弯曲和旋转,开发出既能防止打滑又能平稳奔跑的新型控制理论。由此,ASIMO实现了时速达3km/h的像人类一样的平稳奔跑。而且,步行速度也由原来的1.6km/h提高到2.5km/h。另外,人类在奔跑时,迈步的时间周期为0.2-0.4秒,双足悬空的时间(跳跃时间)为0.05-0.1秒。目前,ASIMO的迈步时间周期为0.36秒,跳跃时间为0.05秒,与人类的慢跑速度相