一种四足机器人仿生跳跃动作的控制方法、装置、电子设备及计算机可读介质与流程
本发明涉及电机技术领域,尤其涉及一种四足机器人仿生跳跃动作的控制方法、装置、电子设备及计算机可读介质。
背景技术:
四足机器人的运动方式相比传统的轮式机器人来说有极大的不同。在跨越障碍物的能力上,四足机器人有本质上的优势。现有的四足机器人借助对角小跑步态能顺利通过一些不规则的路面,如草地、崎岖石滩等,但是对于有一定高度或长度的障碍物必须借助跳跃的方式来实现越障功能。
在自然界,跳跃动作是四足动物越过具有一定高度或长度的障碍时常见的一种运动方式。在动物的实际运动中,向非正前方跳跃并带有身体朝向的扭转是常见的动作,这有助于动物快速地调整前进方向。将这种向各个方向跳跃并伴随扭转的运动方式引入四足机器人中将有利于增强四足机器人的运动能力,实现全向跳跃,提高对地形的适应性。
发明专利公布号为cn111367327a的专利申请,该申请公开的技术方案只能实现向正前方的跳跃,运动方向以及运动中的身体姿态单一,不利于在高速运动下快速切换身体的姿态。另外,在目标着地点空间较为狭小、向正前方跳跃难以越过障碍,以及需要变换身体朝向才能安全落地的情况下,上述方案由于只能保持身体朝向不变向正前方跳跃,难以安全落在目标着地点。
技术实现要素:
本发明实施例的目的是提供一种四足机器人仿生跳跃动作的控制方法、装置、电子设备及计算机可读介质,以解决目前在跳跃的同时伴随侧向移动和身体朝向扭转的方法尚无描述的问题。
为了达到上述目的,本发明实施例所采用的技术方案如下:
第一方面,本发明实施例提供一种四足机器人仿生跳跃动作的控制方法,包括:
将四足机器人简化成刚体模型;
根据简化后的刚体模型,利用陀螺仪数据结合足端状态、四条腿的关节角,计算得到身体质心的实际状态;
在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;
根据得出的质心虚拟力和虚拟力矩,获得支撑腿各关节力矩;
支撑腿各关节力矩经电机执行后实现跳跃动作。
第二方面,本发明实施例提供一种四足机器人仿生跳跃动作的控制装置,包括:
简化模块,用于将四足机器人简化成刚体模型;
第一计算模块,用于根据简化后的刚体模型,利用陀螺仪数据结合足端状态、四条腿的关节角,计算得到身体质心的实际状态;
第二计算模块,用于在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;
第三计算模块,用于根据得出的质心虚拟力和虚拟力矩,获得支撑腿各关节力矩;
执行输出模块,用衣服支撑腿各关节力矩经电机执行后实现跳跃动作。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述第一方面所述的一种四足机器人仿生跳跃动作的控制方法。
第四方面,本发明实施例提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述第一方面所述的一种四足机器人仿生跳跃动作的控制方法。
根据以上技术方案,本发明的有益效果如下:目前的四足机器人的跳跃运动控制方法中,均以机器人向前方或向上方跳跃为目标,实际上,四足动物的跳跃运动并不总是单纯地向上方或前方跳跃,实际的跳跃运动中常常伴随侧向移动和身体朝向的扭转达到快速达到特定位姿的目的。目前在跳跃的同时伴随侧向移动和身体朝向扭转的方法尚无描述。本发明提出了一种四足机器人的运动控制方法,在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;使得四足机器人能够在跳跃中实现前向和侧向移动,并能够通过扭转改变身体的朝向,实现全向跳跃。应用上述方法,可以使得四足机器人在竖直向上跃起的同时发生身体向侧向的跳跃和身体朝向的扭转,单次跳跃后身体朝向的扭转角度最大可以达到180度。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种四足机器人仿生跳跃动作的控制方法的流程图;
图2是本发明实施例中身体坐标系的示意图;
图3是根据本发明实施例的机器人起跳过程的四个阶段的示意图;
图4是根据本发明实施例的一种四足机器人仿生跳跃动作的控制装置的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
图1是根据本发明实施例的一种四足机器人仿生跳跃动作的控制方法的流程图,如图1所示,该方法包括如下步骤:
步骤s101,将四足机器人简化成刚体模型;
步骤s102,根据简化后的刚体模型,利用陀螺仪数据结合足端状态、四条腿的关节角,计算得到身体质心的实际状态;
步骤s103,在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;
步骤s104,根据得出的质心虚拟力和虚拟力矩,获得支撑腿各关节力矩;
步骤s105,支撑腿各关节力矩经电机执行后实现跳跃动作。
在本发明实施例中,忽略四足机器人的腿部质量和转动惯量,将整个机器人简化成一个刚体,采用比例-微分加前馈的控制律追踪期望的运动轨迹,可以将复杂的机器人运动学模型简化成简单的由一组作用在刚体质心处的力和力矩实现的刚体运动。采用本发明实施例的机器人跳跃动作控制方法能够使得机器人身体在起跳过程精确追踪期望轨迹,最终实现预期的跳跃动作。
还可包括:在飞行阶段,四足机器人的四个足端均运动到与各自髋部正下方在x和y方向上距离不超过第一阈值的位置,四个足端在z方向上各自的距离不超过第二阈值。上述限定的目的是在飞行阶段要把腿部展开,四个足端构成的四边形要稍微大一点,这样有利于稳定落地。
下面对上述的各步骤做详细的描述。
步骤s101,将四足机器人简化成刚体模型;
具体地,忽略四条腿的质量和转动惯量,建立身体和世界坐标系,将机器人简化成三维空间中的刚体模型,如图2所示。
步骤s102,根据简化后的刚体模型,利用陀螺仪数据,结合足端状态、四条腿的关节角通过正向运动学计算出的结果,计算得到身体质心的实际状态;
具体地,机器人质心处装有imu陀螺仪,提供实时的身体质心的实际姿态θ=[θroll,θpitch,θyaw]t、实际角速度
步骤s103,在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;
具体地,本实例将四足机器人的运动分为准备、起跳、飞行、落地四个阶段,机器人起跳过程中的四个阶段如附图3所示,具体包括:
第一阶段,准备:四足机器人四足着地,身体的运动轨迹规划为将身高降低到给定高度,并且将身体向与期望的跳跃旋转方向相反的方向扭转预定角度;这样的好处在于能够为第二阶段的起跳动作提供足够大的可活动关节空间,产生更大的动能。
第二阶段,起跳:身体起始状态为第一阶段的终止状态,第二阶段的终止状态为身体有绕z轴转动的角速度
第三阶段,飞行:起始状态为第二阶段的终止状态,第三阶段的终止x状态为四足机器人的四个足端均运动到与各自髋部正下方在x和y方向上距离不超过第一阈值的位置,四个足端在z方向上各自的距离不超过第二阈值;身体有大于等于第六阈值的绕z轴转动的角速度,并且相对于第二阶段的终止状态有绝对值为第七阈值以上的沿x或y方向的位移,或有绝对值为第八阈值以上的yaw角度的变化;四足落地的时间差小于等于第五阈值;
第四阶段,落地:起始状态为第三阶段的终止状态,第四阶段的终止状态为四足均处于着地状态,身体的roll、pitch和yaw的角度、角速度均为0。
这里需要说明的是,本实施例给出了第一阈值为0.15m,第二阈值为0.05m,第三阈值为0.2rad,第四阈值为0.1rad/s,第五阈值为0.3s,第六阈值为0.5rad/s,第七阈值为0.3m,第八阈值为1rad,上述的阈值可以根据实际情况自行设置。
根据起跳过程中准备、起跳和落地三个不同的阶段分别规划身体质心的期望位置pd(xd,yd,zd)、期望速度
根据机器人期望的质心状态和实际状态,计算出质心处所需要的虚拟力fpd和虚拟力矩τpd:
其中pd,p,
计算前馈的力fff和前馈力矩τff:
其中m,i分别是机器人身体的质量矩阵与转动惯量矩阵,g为重力加速度向量;
所需要施加的总的虚拟力与虚拟力矩为:
步骤s104,根据得出的质心虚拟力和虚拟力矩,获得支撑腿各关节力矩;
具体地,各支撑腿的足端发力为f=[f1;f2;f3;f4],fi表示第i条腿的足端力,选择矩阵s代表选择处于发力状态的腿,位置矩阵a包含各腿位置与质心位置的向量信息,
其中,
通过求解线性二次型方程得到各腿发力fsolution:
fsolution=min(af-fv)ts(af-fv)
机器人雅可比矩阵为ji,支撑腿各关节力矩为
实施例2:
图4为本发明实施例提供的一种四足机器人仿生跳跃动作的控制装置的结构示意图,该装置可以执行任意本发明任意实施例所提供的一种四足机器人仿生跳跃动作的控制方法,具备执行该方法相应的功能模块和有益效果。如图4所示,该装置包括:
简化模块91,用于将四足机器人简化成刚体模型;
第一计算模块92,用于根据简化后的刚体模型,利用陀螺仪数据结合足端状态、四条腿的关节角,计算得到身体质心的实际状态;
第二计算模块93,用于在四足机器人的准备、起跳和落地阶段,给定期望的加速度和角加速度并分别规划出四足机器人身体的位置和姿态,由给定的加速度和角加速度计算前馈的虚拟力和虚拟力矩,并由期望状态与实际状态之间的误差,根据比例-微分控制律并加上前馈量,计算出质心处需要的总的虚拟力和虚拟力矩;
第三计算模块94,用于根据得出的质心虚拟力和虚拟力矩,获得支撑腿各关节力矩;
执行输出模块95,用于支撑腿各关节力矩经电机执行后实现跳跃动作。
实施例3:
本发明实施例提供一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述的一种四足机器人仿生跳跃动作的控制方法。
实施例4:
本发明实施例提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述一种四足机器人仿生跳跃动作的控制方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除