对RoboCup比赛的NAO机器人寻球步态优化方法与流程

文档序号:17789264发布日期:2019-05-31 19:54阅读:834来源:国知局
对RoboCup比赛的NAO机器人寻球步态优化方法与流程

本发明涉及机器人领域,尤其涉及在robocup(robotworldcup(机器人世界杯))上nao机器人寻球步态优化方法。



背景技术:

随着智能技术的飞速发展,nao机器人高度融合了自动化,机械,人工智能领域的研究成果,被广泛的应用于robocup比赛中。现有技术中,nao机器人寻球转身方式是依靠腿部的上下较小幅度的抖动,使得每次只有一条腿着地,而另一条腿则在半空中通过腿部关节达到细微的转动,如此左右腿配合达到转身的效果。nao机器人摔倒后会按照其原生naoqi系统原有的给定方式起身站立,再用头部的摄像头部件捕捉足球的方位,得到角度差,之后通过双腿的上下抖动来达到转身一定角度、寻球的目的。通过实际比赛和演练证明nao机器人,在原来的起立方式之下通过腿部抖动来转身寻球,不仅速度较慢,而且稳定性差,易被周围机器人绊倒,如图1所示。可见,由于nao机器人系统现有技术在机器人转身程序上有缺陷,使其转身速度较慢,稳定性较差,影响其寻球速度,对于比赛中机器人的表现产生一定影响。



技术实现要素:

本发明所要解决的技术问题是针对现有的nao机器人容易倒下,且倒下起立之后寻球速度慢,稳定性差的缺陷,提供一种更迅速更稳定的寻球优化方法。

本发明解决其技术问题所采用的技术方案是:

提供一种nao机器人,该nao机器人的两只脚底均安装四个压力传感器,其中两个压力传感器安装在脚掌,另外两个压力传感器安装在脚后跟,四个压力传感器与nao机器人的主控芯片连接,主控芯片实时采集压力传感器的数据,并通过串口发送至上位机。

本发明还提供一种nao机器人的寻球步态优化方法,包括以下步骤:

nao机器人头部摄像头寻找并确认识别到足球并锁定,计算足球与nao机器人的方位角度差;

若角度差θ小于75°时,则使用naoqi系统原生给定的腿部上下抖动方式旋转;

若角度差θ大于75°小于105°时,采取转向为90°的库文件,并在机器人前进靠近足球的过程中进行小幅度的调整角度;

若角度差θ在105°和135°之间时,则采取转向120°的库文件,nao机器人按照120°的库文件中的各关节在不同时间段的数据值来动态调节各腿部关节进行滑动转向;

若角度差θ在135°与180°之间时,则采用转向150°的库文件,nao机器人按照150°的库文件中的各关节在不同时间段的数据值来动态调节各腿部关节进行滑动转向;其中90°、120°和150°的库文件均为预先存储的、nao机器人通过腿部和脚底在地面直接产生滑动完成整体的转向的库文件。

3.根据权利要求1所述的nao机器人的寻球步态优化方法,其特征在于,90°、120°和150°的库文件所使用的数据获取过程如下:

通过实验者在规定时间内,以两腿先在左右张开,然后在地面以腿部弯曲滑动的形式完成旋转转向,分为90°、120°、150°三组;

在实验者身上安装传感设备,并用红外传感器获取得实验者运动过程中腿部脚踝、膝盖关节处的角度变化情况,并记录;

根据记录数据,将每次采集到的数据拟合为一条曲线,多条曲线构成一个面,取数据面中处于中间的80%的数据重新构成一个数据面,将数据面上下范围扩大20°,以5°为一个角度节点进行取样,0.2秒为一个时间节点进行采样,得到多组时间—角度的数据列表;

将红外摄像头测得的左腿,右腿,盆骨的角度用欧拉角表示,并与在机器人动作开始到成功完成选择这段时间形成函数关系,仿真得出一条曲线,之后取每一个时间节点不同的左腿,右腿,盆骨的欧拉角进行组合,按照一定时间节点插入关节数据,分别将取的数据输入至图形化软件内驱动nao机器人,让nao机器人的腿部关节按照所输入的欧拉角数据进行活动,完成转身动作;

在驱动nao机器人的同时记录下机器人的旋转时间和摇晃程度,摇晃程度分为三个等级记录,摇晃最大角度超过25°记录为不稳定,摇晃程度超过10°小于25°为较稳定,摇晃程度在10°即为稳定,同时也记录下晃动的时间;

若在某个动作摇晃程度太大,则将此动作的前后两个时间点间隔扩大,延长动作的时间,增强其稳定性,同时运动总时长也增大;

采集nao机器人脚底的压力传感器数据,计算机器人身体重心偏移程度;记录下摔倒时的数据值,作为是否摔倒的节点值,取在摔倒节点值以内的各关节数据为有效值;

将拟合得到的各腿部关节的各时间点欧拉角通过naoqi这一嵌入式软件编写,让nao机器人产生脚掌滑动来旋转的程序,并植入nao机器人的底层文件。

接上述技术方案,计算机器人身体重心偏移程度时,赋予压力传感器不同的权重,权重的比例为四个传感器到中心的投影距离,并根据贝塞尔方差公式求出传感器的差值,并用方差来衡量稳定性的大小。

本发明还提供一种计算机可读存储介质,包括可被处理器执行的计算机程序,该计算机程序具体执行上述nao机器人的寻球步态优化方法。

本发明产生的有益效果是:本发明通过在nao机器人的每个脚底安装四个传感器,将机器人的转身过程变为直接利用腿部各个关节之间的灵活转动,使得腿部和脚底在地面直接产生滑动,帮助机器人完成整体的转向,同时保持良好的稳定性。以腿部各关节的良好配合完成在地面平滑移动代替腿部上下抖动,完成nao机器人的原地转身寻球,使得nao机器人摔倒后寻球更加快捷稳定,不易被绊倒。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1为robocupspl2017(决赛)机器人起立时相互绊倒的示意图;

图2为本发明nao机器人脚底压力传感器安放位置示意图;

图3为本发明的nao机器人转向判定流程图;

图4a-4c为本发明nao机器人各关节拟合欧拉角与时间的曲线。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明nao机器人的寻球步态优化方法,包括以下步骤:

nao机器人头部摄像头寻找并确认识别到足球并锁定,计算足球与nao机器人的方位角度差;该方位角度差为足球与nao机器人正面朝向方向的夹角。

若角度差θ小于75°时,则使用naoqi系统原生给定的腿部上下抖动方式旋转;

若角度差θ大于75°小于105°时,采取转向为90°的库文件,并在机器人前进靠近足球的过程中进行小幅度的调整角度;

若角度差θ在105°和135°之间时,则采取转向120°的库文件;

若角度差θ在135°与180°之间时,则用转向150°的库文件进行转向,在转向过程中,nao机器人按照150°的库文件中的各关节在不同时间段的数据值来动态调节各腿部关节进行运动,使得nao机器人实现腿部在地面上的滑动转向;其中90°的库文件、120°的库文件和150°的库文件均为预先存储的、nao机器人通过腿部和脚底在地面直接产生滑动完成整体的转向的库文件。

本发明实施例中,先从nao机器人的官网查询得机器人各部分关节的活动范围数据,得到nao机器人关键关节活动范围参数,见表1。

为了得到上述实施例中nao机器人的寻球步态优化方法,本发明通过改进nao机器人获得相应的测试数据。如图2所示,该nao机器人的两只脚底均安装四个压力传感器,其中两个压力传感器安装在脚掌,另外两个压力传感器安装在脚后跟,四个压力传感器与nao机器人的主控芯片连接,主控芯片实时采集压力传感器的数据,并通过串口发送至上位机。四个传感器分别装在nao机器人脚掌左上、右上、左上、右下处,距离边缘为1厘米左右的距离。

nao机器人是双足仿人机器人,其关节活动大致符合人体的活动规律。可先选取5名志愿者,让他们在2秒时间内,以两腿先在左右张开,然后在地面以腿部弯曲滑动的形式完成旋转转向,分为90°、120°、150°三组。在实验者身上安装传感设备,并用红外传感器获取得实验者运动过程中腿部脚踝、膝盖关节处的角度变化情况。每个实验者每组各测5组数据,共15组。

整理所得数据,以90°转向为例:将实验者身上的传感器连接上位机,将每次采集到的数据拟合为一条曲线,多条曲线构成一个面,取数据面中处于中间的80%的数据重新构成一个数据面,将数据面上下范围扩大20°(在符合其活动范围内进行扩充),以5°为一个角度节点进行取样,0.2秒为一个时间节点进行采样,得到时间—角度(多组)的数据列表。

将红外摄像头测得的左腿,右腿,盆骨的角度用欧拉角表示,并与在机器人动作开始到成功完成选择这段时间形成函数关系,用matlab仿真得出一条曲线,之后取每一个时间节点不同的左腿,右腿,盆骨的欧拉角进行组合,按照时间节点0.2秒插入关节数据,分别将取的数据输入至图形化软件choregraphe内驱动nao机器人,让nao机器人的腿部关节按照所输入的欧拉角数据进行活动,完成转身动作。并在机器人左右两个脚掌搭建四个压力传感器(见图2),在驱动的同时记录下机器人的旋转时间和摇晃程度,摇晃程度分为三个等级记录,摇晃最大角度超过25°记录为不稳定,摇晃程度超过10°小于25°为较稳定,摇晃程度在10°即为稳定,同时也记录下晃动的时间。若在某个动作摇晃程度太大,则将此动作的前后两个时间点间隔扩大,延长动作的时间,增强其稳定性,同时运动总时长也增大。

本发明实施例中,nao机器人脚底的四个压力传感器选用bf350-3aa/1.5aa小型压力传感器,输出信号,并选用arduino主控芯片实时采集压力传感器的数据,并通过串口发送至上位机,最后将这些数据使用matlab处理为一条曲线,便于观察比较。

同时将nao机器人脚底的四个压力传感器输出的数据记录下,并分别赋予四个传感器不同的权重,权重的比例为四个传感器到中心的投影距离,公式如下

(p1:p2:p3:p4)=l1:l2:l3:l4

并根据贝塞尔方差公式求出传感器的差值

用方差来初略衡量稳定性的大小,nao机器人脚底的四个压力传感器的方差越大即机器人身体重心偏移程度越大,越不稳定。并在matlab软件用该值和时间绘制曲线,记录下摔倒时的方差值,用该值作为是否摔倒的节点值,取在摔倒节点值以内的各关节数据为有效值。

因为机器人在不稳定状态下,继续进行其它动作极易摔倒,如果等待稳定又会大大缩短转弯时间,所以将转弯的动作幅度控制在一个机器人转弯不会超过不稳定状态的值,所以同时结合转弯时间和转弯的稳定性方差的数据,得到最佳的旋转时关节活动数据。转向120°与150°也通过此方法得到最佳时间范围的关节活动欧拉角度值。

最后将拟合得到的各腿部关节的各时间点欧拉角通过naoqi这一嵌入式软件编写,让机器人产生脚掌滑动来旋转的python程序,并植入nao机器人的底层文件,在之后机器人比赛需要时直接调用该集成好的库文件,按照此库文件中的关节欧拉角按照时间轴走向进行运动,完成旋转转身。

在robotcup比赛中nao机器人头部摄像头寻找并确认识别到足球的黑白色后,内部软件再进行形状特征匹配,若色块外框匹配黑足球相似度较高,则初步判断为足球,nao机器人此时将锁定此物品,并计算足球与自身的方位角度差。若角度差θ小于75°时,将使用naoqi系统原生给定的腿部上下抖动方式旋转。若角度差θ大于75°小于105°时,采取转向为90°的库文件,然后在机器人前进靠近足球的过程中进行小幅度的调整角度,此过程在nao机器人寻球前进过程会依据底层程序自动进行调整。若角度差θ在105°和135°之间时,则采取转向120°的库文件;若角度差θ在135°与180°之间时,则用转向150°的库文件进行转向。在转向过程中,nao机器人会按照库文件中的各关节在不同时间段的数据值来动态调节各腿部关节进行运动,使得nao机器人实现腿部在地面上的滑动转向。

表1nao机器人关键关节活动范围参数

本发明的nao机器人寻球的步态优化方法,通过获取机器人转身时的各部分关节的活动范围数据,采集稳定性能最为稳定的数据,结合转动时长,通过matlab拟合得到转动过程稳定性和快速性最佳的数据,并将最佳的动作数据编入naoqi系统的库函数中,使其能够在识别足球后进行判断,若转向角符合程序要求,则运行此程序,实现快速稳定转身寻球。本算法提高了机器人进行转身动作的稳定性,并且增加了其转身速度,解决了现有机器人转身程序的缺陷,提高机器人转身动作的成功率,采用该转身步态的机器人能在robocup比赛中具有一定优势。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1