机器人转向运动控制方法和装置、机器人、存储介质制造方法及图纸

技术编号:19540751 阅读:34 留言:0更新日期:2018-11-24 20:08
本发明专利技术公开了一种机器人转向运动控制方法和装置、机器人、存储介质。其中,该方法包括:根据机器人的位置信息和外部环境信息计算目标物对机器人产生的虚拟引力和障碍物对机器人产生的虚拟斥力;获取与虚拟合力相关联的第一角度变化,其中,虚拟合力由虚拟引力和虚拟斥力确定;计算与虚拟合力相关联的速度变化;获取与速度变化相关联的第二角度变化;根据第一角度变化和第二角度变化计算目标转角;控制机器人按照目标转角进行转向。本发明专利技术解决了现有技术基于人工势场法避障技术中障碍物处于机器人和目标之间且障碍物和目标都在机器人正前方时无法避障的技术问题。

Robot Steering Motion Control Method and Device, Robot and Storage Media

The invention discloses a robot steering motion control method and device, a robot and a storage medium. Among them, the method includes: calculating the virtual gravity produced by the object to the robot and the virtual repulsion produced by the obstacle to the robot according to the position information and the external environment information of the robot; obtaining the first angle change associated with the virtual resultant force, in which the virtual resultant force is determined by the virtual gravity and the virtual repulsion force; The virtual resultant force is associated with the velocity change; the second angle change associated with the velocity change is obtained; the target angle is calculated according to the first angle change and the second angle change; and the robot is controlled to steer according to the target angle. The invention solves the technical problem of obstacle avoidance in the existing technology based on artificial potential field method when obstacles are between the robot and the target and obstacles and targets are in front of the robot.

【技术实现步骤摘要】
机器人转向运动控制方法和装置、机器人、存储介质
本专利技术涉及控制领域,具体而言,涉及一种机器人转向运动控制方法和装置、机器人、存储介质。
技术介绍
随着机器人技术的进步,移动机器人与人的互动已经成为了机器人技术发展的一个方向。当人和机器人出现在同一个环境中时,避免人机碰撞是需要首先解决的一个问题。由于人会移动,所以无法通过事先对环境的建模来避开。为了避开像人这样的无法事先预测的障碍物,需要为机器人设计一个实时的避障算法。目前,对于一些基于人工智能的避障算法,如遗传算法和神经网络算法等,由于计算相对复杂,不易实现实时控制。在未知环境中解决避障问题时,人工势场法由于其数学上的简洁性,成为了移动机器人实时避障的首选方法。人工势场法是由Khatbi提出的一种机器人路径规划方法(OussamaKhatib,Real-TimeobstacleAvoidanceforManipulatorsandMobileRobots.ProcofThe1994IEEE.)。该算法将机器人在环境中的运动看成是在人造的引力场中的运动。在这个引力场中,目标物对机器人产生引力,障碍物对机器人产生斥力,通过计算机器人在这个引力场中所受到的合力来改变机器人的运动。人工势场法避障有一个缺陷就是当机器人所受的合力方向与机器人运动方向相反(即目标物与障碍物都处于机器人运动方向上,且障碍物在机器人与目标物之间)时,这个合力只会令机器人减速停下,不会导致机器人的转向,所以机器人无法绕过这个障碍,只会在这条线上来回运动。针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种机器人转向运动控制方法和装置、机器人、存储介质,以至少解决现有技术基于人工势场法避障技术中障碍物处于机器人和目标之间且障碍物和目标都在机器人正前方时无法避障的技术问题。根据本专利技术实施例的一个方面,提供了一种机器人转向运动控制方法,包括:根据机器人的位置信息和外部环境信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力;获取与虚拟合力相关联的第一角度变化,其中,所述虚拟合力由所述虚拟引力和所述虚拟斥力确定;计算与所述虚拟合力相关联的速度变化;获取与所述速度变化相关联的第二角度变化;根据所述第一角度变化和所述第二角度变化计算目标转角;控制所述机器人按照所述目标转角进行转向。进一步地,获取与所述速度变化关联的第二角度变化包括:将所述速度变化与预设系数相乘,得到所述第二角度变化。进一步地,控制所述机器人按照所述目标转角进行转向,包括:判断所述目标转角是否大于第一预设转角;如果所述目标转角大于所述第一预设转角,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第一速度向前运动。进一步地,如果所述目标转角小于等于所述第一预设转角,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第二速度向前运动,其中,所述第二速度大于所述第一速度。进一步地,控制所述机器人以第二速度向前运动,包括:根据以下公式计算所述第二速度:其中,v表示所述第二速度,vmax表示所述第二速度所能取到的最大值,ωmax表示所述第一预设转角,ω表示所述目标转角,ω∈[0,ωmax]。进一步地,获取与虚拟合力相关联的第一角度变化,包括:根据矢量合成法对所述虚拟引力和所述虚拟斥力进行合成,得到所述虚拟合力,并根据所述虚拟合力得到所述第一角度变化。进一步地,根据所述第一角度变化和所述第二角度变化计算目标转角,包括:将所述第一角度变化和所述第二角度变化按照预设权重进行加权,得到所述目标转角。进一步地,根据机器人的位置信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力,包括:根据以下公式计算所述虚拟引力和所述虚拟斥力:其中,Fatt表示所述目标物对所述机器人产生的虚拟引力,Frep(i)表示第i个方向上所述障碍物对所述机器人产生的虚拟斥力(i=1,2,3;分别表示前方、左方和右方),k1和k2分别表示虚拟引力和虚拟斥力的系数,dgoal表示所述目标物与所述机器人之间的距离,drep(i)表示第i个方向上所述障碍物与所述机器人之间的距离。根据本专利技术实施例的另一方面,还提供了一种机器人转向运动控制装置,包括:第一计算单元,用于根据机器人的位置信息和外部环境信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力;第一获取单元,用于获取与虚拟合力相关联的第一角度变化,其中,所述虚拟合力由所述虚拟引力和所述虚拟斥力确定;第二计算单元,用于计算与所述虚拟合力相关联的速度变化;第二获取单元,用于获取所述速度变化相关联的第二角度变化;第三计算单元,用于根据所述第一角度变化和所述第二角度变化计算目标转角;控制单元,用于控制所述机器人按照所述目标转角进行转向。进一步地,所述第二获取单元用于:将所述速度变化与预设系数相乘,得到所述第二角度变化。进一步地,所述控制单元包括:判断子单元,用于判断所述目标转角是否大于第一预设转角;第一控制子单元,用于在所述目标转角大于所述第一预设转角的情况下,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第一速度向前运动。进一步地,所述控制单元还包括:第二控制子单元,用于在所述目标转角小于等于所述第一预设转角的情况下,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第二速度向前运动,其中,所述第二速度大于所述第一速度。进一步地,所述第二控制子单元用于:根据以下公式计算所述第二速度:其中,v表示所述第二速度,vmax表示所述第二速度所能取到的最大值,ωmax表示所述第一预设转角,ω表示所述目标转角,ω∈[0,ωmax]。进一步地,第一获取单元用于:根据矢量合成法对所述虚拟引力和所述虚拟斥力进行合成,得到所述虚拟合力,并根据所述虚拟合力得到所述第一角度变化。进一步地,所述第三计算单元用于:将所述第一角度变化和所述第二角度变化按照预设权重进行加权,得到所述目标转角。进一步地,所述第一计算单元根据以下公式计算所述虚拟引力和所述虚拟斥力:其中,Fatt表示所述目标物对所述机器人产生的虚拟引力,Frep(i)表示第i个方向上所述障碍物对所述机器人产生的虚拟斥力(i=1,2,3;分别表示前方、左方和右方),k1和k2分别表示虚拟引力和虚拟斥力的系数,dgoal表示所述目标物与所述机器人之间的距离,drep(i)表示第i个方向上所述障碍物与所述机器人之间的距离。根据本专利技术实施例的另一方面,还提供了一种机器人,包括:探测器,用于探测机器人的位置信息和外部环境信息,以及上述的机器人转向运动控制装置。在本专利技术实施例中,通过虚拟引力和虚拟斥力的向量加法,得到机器人所需的虚拟合力,为了便于控制,只计算由虚拟合力引起的角度变化,然而,在沿机器人运动方向上的力只会引起速度的变化,并不会改变机器人方向。因此,将机器人速度的变化也映射为转角,以便机器人能避开正前方的障碍物,将这个角度变化(第二角度变化)与由虚拟合力引起的角度变化(第一角度变化)相叠加作为机器人在当前位置应该执行的转角(目标转角),由于机器人的减速也被映射为转角的变化,因此在机器人正前方有障碍物时,机器人也能产生转角变化,从而绕过这个障碍,达到了高效避障的技术效果本文档来自技高网...

【技术保护点】
1.一种机器人转向运动控制方法,其特征在于,包括:根据机器人的位置信息和外部环境信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力;获取与虚拟合力相关联的第一角度变化,其中,所述虚拟合力由所述虚拟引力和所述虚拟斥力确定;计算与所述虚拟合力相关联的速度变化;获取与所述速度变化相关联的第二角度变化;根据所述第一角度变化和所述第二角度变化计算目标转角;控制所述机器人按照所述目标转角进行转向。

【技术特征摘要】
1.一种机器人转向运动控制方法,其特征在于,包括:根据机器人的位置信息和外部环境信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力;获取与虚拟合力相关联的第一角度变化,其中,所述虚拟合力由所述虚拟引力和所述虚拟斥力确定;计算与所述虚拟合力相关联的速度变化;获取与所述速度变化相关联的第二角度变化;根据所述第一角度变化和所述第二角度变化计算目标转角;控制所述机器人按照所述目标转角进行转向。2.根据权利要求1所述的方法,其特征在于,获取与所述速度变化关联的第二角度变化,包括:将所述速度变化与预设系数相乘,得到所述第二角度变化。3.根据权利要求1所述的方法,其特征在于,控制所述机器人按照所述目标转角进行转向,包括:判断所述目标转角是否大于第一预设转角;如果所述目标转角大于所述第一预设转角,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第一速度向前运动。4.根据权利要求3所述的方法,其特征在于,如果所述目标转角小于等于所述第一预设转角,控制所述机器人按照所述目标转角进行转向,并控制所述机器人以第二速度向前运动,其中,所述第二速度大于所述第一速度。5.根据权利要求4所述的方法,其特征在于,控制所述机器人以第二速度向前运动,包括:根据以下公式计算所述第二速度:其中,v表示所述第二速度,vmax表示所述第二速度所能取到的最大值,ωmax表示所述第一预设转角,ω表示所述目标转角,ω∈[0,ωmax]。6.根据权利要求1所述的方法,其特征在于,获取与虚拟合力相关联的第一角度变化,包括:根据矢量合成法对所述虚拟引力和所述虚拟斥力进行合成,得到所述虚拟合力,并根据所述虚拟合力得到所述第一角度变化。7.根据权利要求1所述的方法,其特征在于,根据所述第一角度变化和所述第二角度变化计算目标转角,包括:将所述第一角度变化和所述第二角度变化按照预设权重进行加权,得到所述目标转角。8.根据权利要求1至7中任一项所述的方法,其特征在于,根据机器人的位置信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力,包括:根据以下公式计算所述虚拟引力和所述虚拟斥力:其中,Fatt表示所述目标物对所述机器人产生的虚拟引力,Frep(i)表示第i个方向上所述障碍物对所述机器人产生的虚拟斥力(i=1,2,3;分别表示前方、左方和右方),k1和k2分别表示虚拟引力和虚拟斥力的系数,dgoal表示所述目标物与所述机器人之间的距离,drep(i)表示第i个方向上所述障碍物与所述机器人之间的距离。9.一种机器人转向运动控制装置,其特征在于,包括:第一计算单元,用于根据机器人的位置信息和外部环境信息计算目标物对所述机器人产生的虚拟引力和障碍物对所述机器人产生的虚拟斥力;第一获取单元,用于获取与虚拟合力相关联的第一角度...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:深圳光启合众科技有限公司深圳光启创新技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1