一种基于人体示教的仿人机器人步态规划的方法与流程

文档序号:13496327阅读:320来源:国知局
一种基于人体示教的仿人机器人步态规划的方法与流程

本发明属于人工智能和机器人控制领域,尤其涉及一种基于人体示教的仿人机器人步态规划的方法。



背景技术:

仿人机器人结构与人体相似,在人类社会环境中,仿人机器人可代替人类完成各种作业,扩展人类的能力,并表现出很好的环境适应性。近年来仿人机器人在服务,医疗,教育,娱乐等多个领域得到广泛的应用,相关的研究工作也逐步展开。仿人机器人行走问题的研究一直是机器人领域的一大研究热点,目前依据动力学模型并结合规划的zmp轨迹形成稳定步态是主要方法,但依靠规划形成的运动模式往往需要复杂的运算,而且运动形式单一。

面对仿人机器人行走步态规划的难题,模仿这一方式逐渐被引入到机器人运动控制中。令机器人对示教者运动信息进行采集,并通过模仿实现运动技能,这种方式大大简化了仿人机器人步态规划的复杂性,并且依据人体姿态生成的机器人运动形式更具拟人化,更重要的是赋予仿人机器人对人体示教行为的模仿能力,可以增强其在复杂环境下的决策能力,提高智能性。

虽然通过人体示教规划机器人步态有很多优点,但由于机器人是对示教者的直接模仿,这会造成机器人步态的稳定性问题,面对行走等对动态性能要求较高的运动过程时,平衡的控制尤为重要。与依据稳定性判据规划开环步态不同,基于人体动作规划机器人步态面临如下三个问题:(1)人体示教过程提供了机器人驱动角度,但由于质量分布的不同,还需要结合质心信息进行补偿调整以满足平衡;(2)期望zmp轨迹不再由人为设定,而是结合示教数据去计算期望zmp轨迹;(3)要对人体示教动作进行支撑脚判别后再用于机器人步态规划。针对以上存在的问题,提出一种基于人体示教的仿人机器人步态规划的方法,使仿人机器人通过人体示教数据获得稳定的步态信息,实现稳定的步态规划。



技术实现要素:

本发明将人体运动信息引入到仿人机器人的步态规划中,提出一种基于人体示教的仿人机器人步态规划的方法,捕捉人体运动过程的骨骼点数据,通过对骨骼信息的逆运算获得机器人关节驱动角度,为满足仿人机器人运动过程中的稳定性,利用人体示教数据预估机器人质心轨迹信息,并结合zmp判据与机器人质心-角度雅可比矩阵对机器人驱动角度进行补偿控制,在支撑脚的选择中,通过滞回曲线判别人体示教过程的支撑脚切换以确定机器人的支撑脚选取。

为实现上述目的,本发明采用如下的技术方案:

一种基于人体示教的仿人机器人步态规划的方法,将人体运动过程中的骨骼信息作为示教数据,依据示教数据进行机器人的步态规划与平衡控制,实现仿人机器人对人体步态的模仿,具体步骤如下:

步骤(1)、利用体感摄影机kinect获取人体行走过程的骨骼点数据,确定人体骨骼点与机器人驱动关节的匹配关系,并通过逆运算获得机器人驱动角度。

步骤(2)、为满足机器人运动过程中的稳定性,依据人体示教数据预估机器人质心轨迹信息,并利用滞回曲线确定支撑脚,然后结合机器人稳定性判据zmp判据计算质心补偿量。

步骤(3)、再确定质心补偿量后,需通过机器人的质心-角度雅可比矩阵计算角度补偿值,利用补偿角度与驱动角度的相加值驱动机器人可保持机器人步态的稳定性。

作为优选,步骤1中对人体骨骼点与机器人驱动关节进行了匹配,通过空间向量运算获得示教驱动角度。

作为优选,步骤2中利用人体运动过程中的骨骼点信息构建关节向量,通过人体关节向量与机器人质量信息预估机器人质心轨迹信息。

作为优选,步骤2中利用滞回曲线判别示教过程中支撑脚的选取,确保了机器人步态的稳定。

本发明涉及一种基于人体示教的仿人机器人步态规划的方法,属于人工智能与机器人控制领域。本发明将人体运动信息用于仿人机器人的步态规划中,通过对人体运动过程中骨骼信息的逆运算获得机器人关节驱动角度,为满足仿人机器人运动过程中的稳定性,利用人体示教数据预估机器人质心轨迹信息,并结合zmp判据与机器人质心-角度雅可比矩阵对机器人驱动角度进行补偿控制,在支撑脚的选择中,通过滞回曲线判别人体示教过程的支撑脚切换以确定机器人的支撑脚选取。本发明大大简化了仿人机器人步态规划的复杂性,并且基于人体示教的步态规划可使机器人的运动过程更具拟人化。

附图说明

图1机器人步态模仿的系统结构;

图2kinect2.0提取的人体骨骼信息;

图3姿态与角度的映射关系;

图4右脚支撑下的质心的计算;

图5右脚支撑下的右大腿雅可比矩阵计算;

图6用于支撑脚选择的滞回曲线;

图7基于滞回曲线的支撑脚选取;

图8进行补偿调整后的机器人zmp轨迹。

具体实施方式

本发明提供一种基于人体示教的仿人机器人步态规划的方法,如图1所示,捕捉人体运动过程的骨骼点数据,通过对骨骼信息的逆运算获得机器人关节驱动角度,为满足仿人机器人运动过程中的稳定性,利用人体示教数据预估机器人质心轨迹信息,并结合zmp判据与机器人质心-角度雅可比矩阵对机器人驱动角度进行补偿控制,在支撑脚的选择中,通过滞回曲线判别人体示教过程的支撑脚切换以确定机器人的支撑脚选取。具体实现过程如下:

(1)利用kinect2.0捕捉人体运动信息,kinect2.0的骨骼数据由25个关节空间坐标组成,s=[s1,s2,s3λ,s25],其中si=(xi,yi,zi),如图2所示。在visualstudio中利用kinect开发套件对示教者进行骨骼追踪并记录,用于后续的模仿学习。

(2)由于kinect获得的是人体空间位置信息,为得到示教关节角度,需对人体骨骼点与机器人驱动关节进行匹配,通过空间向量运算获得示教驱动角度。以nao机器人右脚踝的两个自由度为例,进行求解说明,如图3所示,从kinect读取骨骼点footright、ankleright、kneeright、hipright,分别记为s1,s2,s3,s4,记

s3,4s2,3=s3s4×s2s3(2)

踝关节滚动角为:

踝关节俯仰角为:

(3)为保证机器人步态的稳定性,需对机器人的质心轨迹信息进行预估,包括质心位置与质心加速度用于稳定性控制。设m为机器人质量,mj为机器人每个连杆的质量,cj为在以平衡点为原点的坐标系下,从原点指向连杆质点的向量。n为机器人自由度数目,则机器人质心位置计算公式如下:

机器人的质量为已知量,向量cj由机器人关节角度经正运动学运算得到,但由于仿人机器人自由度多,结构冗余,质点位置的计算需大量的旋转矩阵叠乘,运算相对复杂,实时性差,因此本发明充分利用仿人机器人的结构与人体结构的相似性,通过骨骼点采集器获取的人体关节坐标模型可以看作是成比例放大后的机器人关节坐标模型,因此本文利用人体关节坐标模型求取机器人连杆质点的向量cj,并结合机器人质量数据计算机器人的质心位置。下面以右脚作支撑脚为例,说明右大腿质点的向量求解方法。如图4所示,根据骨骼信息可得到以骨骼采集器为原点的坐标系下右脚,右膝,右胯的空间向量x1,x2,x3,则右大腿质点向量x4可由下式计算得到:

在以右脚骨骼点为原点的坐标系下,右大腿的质点向量x5可由下式计算得到:

x5=x4-x1(7)

由于示教者与机器人身高存在差异,经计算得到的质点向量需按比例缩小μ倍,crightthigh可表示为:

crightthigh=μx5(8)

根据示教者身高的不同,参数μ选取0.3-0.4之间,可根据实验效果进行微调。根据上述方法依次计算各连杆质点的向量后,便可得到机器人关节坐标模型,结合机器人各连杆的质量数据,根据质心计算公式(5)便可得到机器人质心的预估值。在得到质心空间坐标点的一组离散值后,在t时刻的质心加速度可通过下式计算:

其中t为采样周期,c为质心的空间位置坐标,为求取的机器人质心加速度。

(4)在预估了机器人质心轨迹信息后,便可基于zmp判据进行稳定性控制。通过骨骼点采集器可获得人体示教过程中足部的运动轨迹,由于机器人与示教者之间存在着身高差异,所以利用缩小后的足部运动轨迹作为行走模仿过程中zmp的期望轨迹,记为pref。在由示教数据驱动机器人的条件下,机器人的质心偏移会影响zmp轨迹,因此本文通过补偿质心偏移满足zmp方程,如式(10)所示:

其中c为机器人质心,δc为质心补偿量,h为机器人质心等价高度,g为重力加速度。

令pres为机器人实际zmp点,可有:

此时式(10)可转换为:

δc=pref-pres(12)

即质心补偿量的计算可由期望zmp与机器人实际zmp的差值求得。

(5)在确定质心补偿量后,需对机器人进行补偿控制以保持机器人的行走平衡。对于机器人而言,机器人质心的变化本质上是连杆位姿的变化,而连杆位姿的变化本质上是关节角度的变化,因此,为通过质心补偿实现机器人的动态平衡,需利用机器人质心-角度雅可比矩阵j表达质心位置与关节角的关系并通过二次规划对补偿角度进行求解,利用雅可比矩阵的思想,假设机器人每一个关节角产生了微小的变化δq,会对整体质心产生一个微小的偏移δg,二者关系可用雅可比矩阵来表达:

δg=jδq(13)

假设当质心产生了一个偏移,为补偿偏移量,角度的补偿量可表达为:

δq=j-1δg(14)

此时问题转化为质心-角度的雅可比矩阵求解问题。已知

由于

其中mj代表各连杆质量,pj为各连杆位置,g为机器人质心位置,n为机器人自由度数目,定义连杆位置-角度的雅可比矩阵为:

此时j可由下式求得:

以右腿为支撑腿时为例,设右大腿的雅可比矩阵jp,如图5所示,t1,t2是轴方向上的单位向量,r1,r2是连杆质点坐标,l1,l2是由关节点指向右大腿质点的向量,连杆位置与角度的关系可表达为:

由此可知右大腿的雅可比矩阵jp=(t1×l1,t2×l2,0,0,0λ)∈r3×n,其中n代表机器人的自由度数目。依此方法求得个连杆的雅可比矩阵后便可根据式(18)确定质心-角度雅可比矩阵。

通过求解质心-角度雅可比矩阵,可以得到机器人质心与角度二者的变化关系,结合质心预估的偏移量,可求解对应的质心补偿角,但在求解关节角度补偿问题时,由于矩阵j不是一个方阵,因此引入伪逆矩阵进行求解,即j+=jt(jjt)-1,通过伪逆矩阵即可求出唯一解,此唯一解对应于全身所有自由度的调整以实现质心补偿,虽然平衡控制涉及到全身的关节角,但对于仅需小幅调整的平衡来说,应该通过尽可能少的关节调整来维持平衡,例如仅通过踝关节就可调整的质心偏移不必通过上肢的摆动来调整。因此采用权值可调的线性二次型优化方法进行求解,数学描述如下:

s.t.jδq=δg(21)

解得

δq=w-1jt(jw-1jt)-1δg(22)

对于指标其中δq表示为满足质心平衡做出的角度补偿,w为一个权值矩阵。在权值选取时,为保持模仿的相似性与平衡控制的合理性,对于上肢关节要取较大的权值进行抑制,而取较小的权值使下肢关节进行补偿调整。通过调整权值矩阵w便可优化模仿行为。

(6)在仿人机器人行走过程中,支撑脚合理的选择与切换是实现稳定行走的前提。在骨骼点采集时,由于环境或设备影响会造成数据波动,通过判别两脚在空间中的竖直高度来确定支撑脚的选取可能会造成支撑脚的频繁切换,从而造成机器人行走的不稳定,因此引入滞回曲线规划机器人模仿学习过程中支撑脚的变化。如图6所示,k表示人体示教数据中左右两脚竖直方向上的差值,通过设置参数flag判别支撑脚状态,定义右脚支撑时,令flag=1,左脚支撑时,令flag=0。在flag=1,即右脚支撑时,当k值小于-0.01m时令flag=0,即切换为左脚支撑。在flag=0,即左脚支撑时,当k值大于0.01m时令flag=1,即切换为右脚支撑。通过滞回曲线选取支撑脚可有效抑制因数据波动造成的不稳定。

实施例1:

通过体感摄影机kinect采集人体示教数据,通过示教数据规划机器人步态,实现机器人对人体动作的模仿,具体实施方式如下:

步骤1、利用体感摄影机kinect采集人体示教过程的骨骼点数据,针对下肢关节,对左右胯,左右膝,左右脚踝的共10个自由度进行示教角度的计算。

步骤2、利用体感摄影机kinect采集人体示教过程的骨骼点数据进行机器人质心轨迹信息的预估,在kinect坐标系下计算人体肢体向量,经等比例缩小0.32倍后,结合机器人质量分布预估机器人质心轨迹信息。

步骤3、利用滞回曲线判定行走过程的支撑脚选取,滞回区间为-1cm~+1cm,比较利用滞回曲线前后结果,如图7所示,滞回曲线的加入使支撑脚的切换变得稳定准确。

步骤4、将kinect坐标系下的人体示教足部信息缩小0.32倍后作为期望zmp轨迹,结合已得到的机器人质心轨迹预估信息求解质心补偿量,再确定支撑脚后,计算机器人质心-角度雅可比矩阵,通过二次型优化方法求解补偿角度。在webots下进行仿真实验,机器人步态与zmp轨迹如图8所示,zmp轨迹保持在支撑平面内,显然通过角度补偿实现了对人体示教动作的模仿并保持了步态的稳定性。

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