浅析NAO机器人的舞步程序设计
刘勇
【期刊名称】《《电子测试》》
【年(卷),期】2019(000)024
【总页数】4页(P5-7,27)
【关键词】NAO; 人形机器人
【作 者】刘勇
【作者单位】黑龙江农业工程职业学院 黑龙江哈尔滨 150088
【正文语种】中 文
0 引言最有前途的编程语言
伴随着自动化技术的进步,机器人正越来越多的走进人们的生活。对机器人的研究成为各大高校、研究机构关注的焦点。人形机器人以其类人的结构,控制复杂,应用广泛,代表机器人技术的前沿,受到各国的高度重视。
2005年,一家叫Aldebaran Robotic公司的公司成立,开始了机器人的研发工作。几年后,该公司第一代具25个自由度,集多种功能于一身,外形小巧可爱的人形机器人问世,被起名为Nao。2010年,20个NAO在上海世博会的法国馆和巴黎大区馆的舞台上亮相,并进行了精彩的舞蹈表演,成为近一千万参观者注意的焦点。这个Nao机器人身高只有0.58m,体重4.3kg,动作流畅、灵活。内部使用了惯性导航仪技术,使机器人在移动时既能保持平衡,又能完成空间上的定位。超声传感器可以帮助它探测障碍物,并将信号传回中央处理器,改变行动规划。此外,它还具有声音合成、图像采集等功能,并可以通过分布与各处的发光二极管来营造视觉效果或信息提示与互动。在通用性方面,它支持Windows、Mac OS、Linux等主流操作系统,使编程变得更容易。NAO机器人形象如图1所示。
1 NAO机器人本体结构
NAO机器人高58厘米、重5公斤,一经问世就引起各界的关注。由于价格的原因NAO机器
人并未在中国被大数家庭所接受,但已在教育界有一定的应用,在国外已在70多个国家里成为机器人研究的主要平台。NAO 机器人的本体结构如下图2,机械结构解剖图如图3。
(1)机体规格与材料:身高约58cm,重约4.3kg,机体材料为工程塑料。
图1 法国Aldebaran Robotic公司的Nao机器人
(2)充电器为AC90-230V/DC24V,电池能量持续时间约90min。
(3)具有25个自由度(DOF):其中头部2个DOF,手臂5个DOF(每只手臂),胯部1个DOF,腿部5个DOF(每条腿),手部1个DOF;有三个手爪(每只手)。
(4)2个扬声器,4个扩音器,2个CMOS数码摄像头,8个脚底压力传感器(每只脚各四个),1个双轴陀螺仪、1个三轴加速器,2个碰撞器(每只脚各一个)、双通道超声波传感器,2个红外传感器,9个触觉传感器。
(5)Network access连接类型为Wi-fi(IEEE 802.1 1g),以太网,通过胸前的按钮可以获得机器人的无限网络地址。
(6)致动器基于霍尔效果传感器(32个)、dsPICS 微控制器和MAXON空芯杯直流电机。
(7)控制器主板采用1.6 GHz Intel Atom;RAM:1GB/闪存:2GB。
(8)操作系统:嵌入式Linux(32bit x86 ELF),使用OpenEmbedded基础上加以适当调整的发行套件,编程语言:Choregraphe,C++,URBI,Python。
(9)随机配备Bluetooth;学术(科研)版。
(10)基础功能:拥有人脸识别能力、动态图像追踪能力、中文英文语言识别能力、传感器的数据采集功能、电机运动控制功能。
图2 NAO机器人本体结构图
图3 NAO机器人机械结构解剖图
NAO机器人具有25个自由度。它的下肢关节具有12个自由度,例如髋、膝、踝关节分别为3、1、2个自由度,并且左右对称[1]。
2 NAO机器人步态规划设计
NAO机器人是人型机器人,它的运动是仿人的行走,关键在于步态的控制。所谓步态,就是指机器人行走移动脚步的某种方式。对机器人步态的规划,是从研究人的行走开始,也可以算是仿生学的一种应用。如果按着机器人关节的运动生成的方式来划分,大致可以分成三大类别:(1)参考轨迹法;(2)自然动力学法;(3)强制学习法。这三种方式中,又以参考轨迹法研究最多,是一种步态综合方法。参考轨迹法又可分为3类:(1)人类步行数据法;(2)中枢模式发生器法;(3)动力学模型法。下面加以说明:
(1)人类步行数据法
这种方法是靠传感器采取人行走时的轨迹数据,经过相应的转换,得到各关节的角轨迹和机器人的姿态、加速度等。
采集到的人的行走的数据需要处理,主要的处理方法有二种,如表1所示。
通过以上的方法借助于图像处理来进行步规是比较有发展前途的。这种方法是用录像采集人类步行影像,把转换的数据直接对应到机器人的各个关节,从而实现规划。
表1 对人的行走数据处理方法表序号 方法 结果1对人类步行数据的分析和简化后用初等数学函数描述步态[5]形成参数化步态(如以步长,抬脚高度等作为参数),改变这些参数就得到不同的步态2对人类步行数据进行运动元分析,常用的基本运动元包括站立、下蹲、迈步等每一种运动元包括一些参数,把人类运动数据经过分析划为这些运动元的序列后,就得到参数化步态
(2)中枢模式发生器法
Central Pattern Generator,简称CPG,即中枢模式发生器法,在人形机器人的神经网络控制系统中,中枢模式发生器是由非常多的节律振动神经元(RON)组成的[2]它是从动物的神经网络的工作原理入手解决步态生成的问题。
(3)动力学模型法
所谓动力学模型法首先要建立人形机器人的简化的动力学的模型,通常的做法是把质心约束在一个与地面相平行的平面里,在该约束条件下根据预先给出的ZMP 轨迹,通过求解解耦二阶微分方程式得到质心的轨迹,最后再利用逆运动学的求解方法得到有关关节角的参考轨迹[3]。经常用到的动力学模型如下表2,图4所示。
表2 动力学模型序号 动力学模型1平面倒摆模型2三维线性倒摆模型3基于ZMP 的集中质量模型4虑重力补偿的倒摆模型
图4 常用动力学模型
Nishiwaki提出的ZMP与CoG动态关系的集中质量模型,如图4(c)所示。该模型可表述为:
其中:m为机器人的总质量;为重力加速度为机器人所受外力;p G =为机器人重心(COG), ,为ZMP,ZZ是地面高度。
将(1)写成分量形式得到:
COG运动的轨迹实际是一个依靠 ZMP的闭型解[4]。
3 NAO机器人向前行走过程分析
按照动力学模型法对机器人的向前行走进行规划,一般是把人形机器人的腰部关节约束在与地面相平行的平面里进行运动,可以用如图5所示的简图示意在平整地面上的机器人向前
行走运动。
图5 人形机器人平整地面行走的过程简图
一般情况下我们认为人形机器人的行走是循环的动作,可以看成是有周期的。一个行走周期由二部分组成,第一部分是人形机器人迈步期,第二部分是人形机器人站立期。第一部分和第二部分交替出现,形成闭链或开链结构。初始状态、步行参数、终止状态等特征对人行机器人行走过程影响较大,对人形机器人行走的步态进行规划应按以下三个阶段,见表3所示。
表3 机器人行走过程三阶段序号 步行的过程 动作描述1 起步阶段首先是人型机器人两腿对身体支撑站立,在站姿状态下,机器人两足与地面完全接触保持受力。起步后,人型机器人向侧向摆动,一腿加速,以另一腿为支撑,摆动腿离地,向前运动至重新落地,该阶段结束。2 周期行走阶段这一阶段与上一阶段相衔接,从摆动腿落地开始,摆动腿完全落地后,转换支撑腿,原来的运动腿转换为支撑腿,支撑腿转换为运动腿,抬起到离地状态,向前摆动,重复上一过程,至摆动腿完全着地后,该过程结束。3 收步阶段这一阶段为人形机器人行走结束阶段,人形机器人上体按惯性继续向前移动,摆动腿落地后与支撑腿交
换重心,支撑腿转换为摆动腿,向前摆动出半步,与支撑腿保持平齐后落地,在摆动腿落地后实现人形机器人侧向减速和向前减速。人形机器人双腿微曲状态站立停止,完成行走。
图6 舞步运动程序设计流程图
图7 NAO机器人舞步运动程序
相对于从前直接对人形机器人的完整步长进行规划(将第一个阶段和第三个阶段看作是第二个阶段的特殊情况),将人形机器人行走过程分为上表中的三段,主要优点如表4所示。
表4 人形机器人三段行走优点序号 优点 注释1 跟实际步行过程情况更为吻合实际步行过程就是从起步开始,到达目标点后收步