一种四足机器人仿生跳跃动作的控制方法和装置与流程

文档序号:21360267发布日期:2020-07-04 04:33阅读:426来源:国知局
一种四足机器人仿生跳跃动作的控制方法和装置与流程

本发明涉及机器人控制领域,尤其涉及一种四足机器人仿生跳跃动作的控制方法和装置。



背景技术:

目前现有的机器人可以实现简单的步行、跑跳等动作,对于一些草地、坡地和台阶有一定的通过能力。现实世界中除了以上规整的路面还存在大量不规则的障碍,如横贯道路的石阶或管道。而四足机器人相对轮式机器人来说由于运动方式不同而在跨越障碍能力上有着本质的优势。轮式机器人对于有一定高度和宽度的障碍物难以实现跨越。

跳跃动作是四足动物常见的一种运动方式,按照腿部发力顺序可分为四足同时起跳方式(“pronk”)和前双足仰起身体后双足蹬地起跳的方式。

目前与本发明最相似的技术实现方案为机器人四足同时起跳,向前跳跃,模仿的原型是动物仿生学中的“pronk”动作,此动作一般多见于动物处在安全环境下的娱乐。现有的跳跃方式跳跃距离有限,后腿落地位置较前腿起跳位置超越的距离较少,所以可以跨越的障碍体积较小。同时由于机器人在空中的收腿和伸腿动作也需要一定的时间完成,所以机器人有效的跳跃高度和距离比较有限。



技术实现要素:

本发明的目的是提供一种四足机器人仿生跳跃动作的控制方法和装置,以解决相关技术中由于机器人在空中的收腿和伸腿动作需要一定的时间完成,所以机器人有效的跳跃高度和距离比较有限的问题。

为了达到上述目的,第一方面,本发明实施例提供一种四足机器人仿生跳跃动作的控制方法,包括:

将四足机器人简化成刚体模型;

根据简化后的刚体模型,利用陀螺仪数据结合足端状态计算得到身体质心的实际状态;

考虑实际状态和期望状态的闭环,计算出质心处需要的虚拟力和力矩;

根据得出的质心需要的虚拟力和力矩,获得支撑腿各关节力矩;

支撑腿各关节力矩经电机执行后实现跳跃动作。

进一步地,所述实际状态包括身体质心的实际位置p(x,y,z)、实际速度实际姿态θ(r,p,y)和实际角速度

进一步地,身体质心的实际位置p和实际速度由机器人足端位置和速度结合陀螺仪数据进行推导得出,认为机器人的足底与地面不存在相对移动。

进一步地,所述期望状态包括身体质心的期望位置pd(xd,yd,zd)、期望速度期望姿态θd(rd,pd,yd)和期望角速度

进一步地,所述三个阶段具体为:

第一阶段,机器人四足着地,身体的运动轨迹简单的规划为保持姿态不变,只将身高降低到给定高度;

第二阶段,身体起始状态为第一阶段的终止状态,第二阶段的终止状态为身体有一定角度和角速度的后仰,同时具有一定的x向和z向的速度,即前双足离地,同时后双足着地;

第三阶段,起始状态为第二阶段的终止状态,第三阶段的终止状态为身体有较大的x向和z向的速度,即后双足离地,身体腾空。

进一步地,计算出质心处需要的虚拟力和力矩,包括:

fxyz,torquerpy分别为作用于质心的力和力矩,m,i分别为机器人的质量和转动惯量,pd,p分别为质心的期望位置和实际位置,θd,θ,wd,w分别为各姿态角的期望角度、实际角度、期望角速度和实际角速度,kp,d,kd,p,kp,w,kd,w均为pd控制参数。

进一步地,根据所述需要的虚拟力和力矩,获得支撑腿各关节力矩,包括:

各腿的发力为f=(f1t,f2t,f3t,f4t)t,fi表示第i条腿,通过选择矩阵s和位置矩阵a,选择矩阵s代表选择处于发力状态的腿,位置矩阵a包含各腿位置与质心位置的向量信息,得到bd=af的形式,通过解线性二次型方程得到各腿发力fsolution:

机器人雅可比矩阵为j,各关节力矩为τ=jtfsolution。

第二方面,本发明实施例还提供一种四足机器人仿生跳跃动作的控制装置,包括:

简化模块,用于将四足机器人简化成刚体模型;

第一计算模块,根据简化后的刚体模型,利用陀螺仪数据结合足端状态计算得到身体质心的实际状态;

第二计算模块,考虑实际状态和期望状态的闭环,计算出质心处需要的虚拟力和力矩;

第三计算模块,根据所述需要的虚拟力和力矩,获得支撑腿各关节力矩;

执行输出模块,支撑腿各关节力矩经电机执行后实现跳跃动作。

第三方面,本发明实施例还提供一种设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述第一方面所述的一种四足机器人仿生跳跃动作的控制方法。

第四方面,本发明实施例还提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行第一方面所述的一种四足机器人仿生跳跃动作的控制方法。

根据以上技术方案,优化了机器人的腿部发力方式,即分为三个阶段,采用前后腿根据阶段分别发力的方式,此举将机器人腿部控制电机的扭矩输出能力几乎利用到极限,并且更加合理的利用了机器人在空中滞留的时间,得到了明显优于“pronk”动作的跳跃距离和清障高度,跨越距离达到1.5m左右。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种四足机器人仿生跳跃动作的控制方法的流程图;

图2是本发明实施例中身体坐标系和世界坐标系的示意图;

图3是根据本发明实施例的机器人起跳过程的三个阶段的示意图;

图4是根据本发明实施例的一种四足机器人仿生跳跃动作的控制装置的流程图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1:

根据本发明实施例,提供了一种四足机器人跳跃动作控制方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种四足机器人仿生跳跃动作的控制方法的流程图,如图1所示,该方法包括如下步骤:

步骤s101,将四足机器人简化成刚体模型;

步骤s102,根据简化后的刚体模型,利用陀螺仪数据结合足端状态计算得到身体质心的实际状态;

步骤s103,分三个阶段规划质心曲线,考虑实际状态和期望状态的闭环,计算出质心处需要的虚拟力和力矩;

步骤s104,根据得出的质心需要的虚拟力和力矩,获得支撑腿各关节力矩;

步骤s105,支撑腿各关节力矩经电机执行后实现跳跃动作。

在本发明实施例中,将四足机器人简化成刚体模型,并考虑期望轨迹与实际轨迹的闭环,可以将复杂的机器人运动学模型简化成简单的由一组作用在刚体质心处的力和力矩实现的刚体运动。采用本发明实施例的机器人跳跃动作控制方法既能保持机器人身体在起跳过程符合期望轨迹,最终实现跳跃动作。

下面对上述的各步骤做详细的描述。

步骤s101,将四足机器人简化成刚体模型;

具体地,建立身体和世界坐标系,将机器人简化成三维空间中的刚体模型,如图2所示。

步骤s102,根据简化后的刚体模型,利用陀螺仪数据结合足端状态计算得到身体质心的实际状态;

具体地,机器人质心处装有imu陀螺仪,可以提供实时的身体质心的实际姿态θ(r,p,y)、实际角速度和xyz三个方向上的实际加速度身体质心的实际位置p(x,y,z)、实际速度由机器人足端位置和速度结合陀螺仪数据进行推导得出,认为机器人的足底与地面不存在相对移动。

步骤s103,考虑实际状态和期望状态的闭环,计算出质心处需要的虚拟力和力矩;

具体地,在机器人起跳过程中具体分为三个阶段,如附图3所示,在三个阶段中身体位置姿态和速度的规划都有相应的区别。具体地,第一阶段,机器人四足着地,身体的运动轨迹可简单的规划为保持姿态不变,只将身高降低到给定高度。第二阶段,身体起始状态为第一阶段的终止状态,第二阶段的终止状态为身体有一定角度和角速度的后仰,同时具有一定的向和向的速度,即前双足离地,同时后双足着地。第三阶段,起始状态为第二阶段的终止状态,第三阶段的终止状态为身体有较大的向和向的速度,即后双足离地,身体腾空。

根据起跳过程中三个不同的阶段分别规划身体质心的期望位置pd(xd,yd,zd)、期望速度期望姿态θd(rd,pd,yd)和期望角速度的曲线,同时考虑机器人身体质心的实际位置p(x,y,z)、实际速度实际姿态θ(r,p,y)和实际角速度形成期望和实际的闭环。

根据机器人期望的质心状态和实际状态可根据下面的公式计算出质心处所需要的虚拟力和力矩。

fxyz,torquerpy分别为作用于质心的虚拟力和力矩,m,i分别为机器人的质量和转动惯量,pd,p分别为质心的期望位置和实际位置,θd,θ,wd,w分别为各姿态角的期望角度、实际角度、期望角速度和实际角速度,kp,d,kd,p,kp,w,kd,w均为pd控制参数。

步骤s104,根据得出的质心需要的虚拟力和力矩,获得支撑腿各关节力矩;

具体地,各支撑腿的发力为f=(f1t,f2t,f3t,f4t)t,fi表示第i条腿,选择矩阵s代表选择处于发力状态的腿,位置矩阵a包含各腿位置与质心位置的向量信息,然后得到bd=af的形式,可以通过解线性二次型方程得到各腿发力fsolution:

机器人雅可比矩阵为j,支撑腿各关节力矩为τ=jtfsolution。

实施例2:

图4为本发明实施例提供的一种四足机器人仿生跳跃动作的控制装置的结构示意图,该装置可以执行任意本发明任意实施例所提供的一种四足机器人仿生跳跃动作的控制方法,具备执行该方法相应的功能模块和有益效果。如图4所示,该装置包括:

简化模块91,用于将四足机器人简化成刚体模型;

第一计算模块92,根据简化后的刚体模型,利用陀螺仪数据结合足端状态计算得到身体质心的实际状态;

第二计算模块93,分三个阶段规划质心曲线,考虑实际状态和期望状态的闭环,计算出质心处需要的虚拟力和力矩;

第三计算模块94,根据所述需要的虚拟力和力矩,获得支撑腿各关节力矩;

执行输出模块95,支撑腿各关节力矩经电机执行后实现跳跃动作。

实施例3:

本发明实施例提供一种设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述的一种四足机器人仿生跳跃动作的控制方法。

实施例4:

本发明实施例提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述一种四足机器人仿生跳跃动作的控制方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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