CN108205318B - 机器人轨迹规划方法及装置 - Google Patents
机器人轨迹规划方法及装置 Download PDFInfo
- Publication number
- CN108205318B CN108205318B CN201711233817.3A CN201711233817A CN108205318B CN 108205318 B CN108205318 B CN 108205318B CN 201711233817 A CN201711233817 A CN 201711233817A CN 108205318 B CN108205318 B CN 108205318B
- Authority
- CN
- China
- Prior art keywords
- robot
- curvature
- discrete point
- maximum
- track
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 49
- 238000009795 derivation Methods 0.000 claims description 9
- 239000006185 dispersion Substances 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 6
- 238000012790 confirmation Methods 0.000 claims 1
- 238000005452 bending Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种机器人轨迹规划方法,包括:获取机器人的运行速度范围,按照第一预设算法,得到该机器人按照该运行速度范围运行时对应的运行轨迹曲率范围,规划该机器人的目标轨迹,使该目标轨迹的曲率不超过该机器人运行轨迹的曲率范围,按照预设时间周期离散该目标轨迹,得到多个离散点,并按照预设规则,得到各该离散点上该机器人的运行信息,该机器人的运行信息包括该机器人的运行速度和与该运行速度对应的运行时间。本发明还公开了一种机器人轨迹规划装置,综合考虑了机器人自身的运动学特性,将机器人的运行速度和运动轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
Description
技术领域
本发明涉及机器人领域,尤其涉及一种机器人轨迹规划方法及装置。
背景技术
目前,移动机器人的轨迹规划问题,是移动机器人学科中的一个重要部分。一般,机器人结合传感器和地图信息,由轨迹规划算法生成目标轨迹,将其作为自动行驶的跟踪目标,从而实现在环境中的自主移动。
但影响目标轨迹生成的因素很多,在现有技术中提供的一些轨迹规划算法,如静态路径最短路径算法(A*,A-star),动态路径最短路径算法(D*,D-star)等算法,都只考虑了环境中的因素问题,例如,如何在避开障碍物的同时又能保持最快到达目的地。这些算法都无法保证机器人能够有效准确的按照生成的目标轨迹跟踪目标,因此机器人运行效率较低。
发明内容
本发明的主要目的在于提供一种机器人轨迹规划方法及装置,旨在解决现有技术中的机器人轨迹规划方法不能准确有效的保证机器人按照生成的目标轨迹跟踪目标的技术问题。
为实现上述目的,本发明第一方面提供一种机器人轨迹规划方法,包括:
获取机器人的运行速度范围,按照第一预设算法,得到所述机器人按照所述运行速度范围运行时对应的运行轨迹曲率范围;
规划所述机器人的目标轨迹,使所述目标轨迹的曲率不超过所述机器人运行轨迹的曲率范围;
按照预设时间周期离散所述目标轨迹,得到多个离散点,并按照预设规则,得到各所述离散点上所述机器人的运行信息,所述机器人的运行信息包括所述机器人的运行速度和与所述运行速度对应的运行时间。
本发明提供一种机器人轨迹规划装置,包括:
参数获取模块,用于获取机器人的运行速度范围;
曲率计算模块,用于按照第一预设算法,得到所述机器人按照所述运行速度范围运行时对应的运行轨迹曲率范围;
规划模块,用于规划所述机器人的目标轨迹,使所述目标轨迹的曲率不超过所述机器人运行轨迹的曲率范围;
离散模块,用于按照预设时间周期离散所述目标轨迹,得到多个离散点;
确认模块,用于按照预设规则,得到各所述离散点上所述机器人的运行信息,所述机器人的运行信息包括所述机器人的运行速度和与所述运行速度对应的运行时间。
从上述本发明实施例可知,本发明提供的机器人轨迹规划方法及装置,通过获取机器人的运行速度范围,得到机器人的运行轨迹曲率范围,再规划该机器人的目标轨迹,并按照预设时间周期离散该目标轨迹,得到多个离散点,然后按预设规则,得到各离散点上该机器人的运行信息,综合考虑了机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例提供的机器人轨迹规划方法的流程示意图;
图2为本发明第二实施例提供的机器人轨迹规划方法的流程示意图;
图3为本发明第三实施例提供的机器人轨迹规划装置的结构示意图;
图4为本发明第四实施例提供的机器人轨迹规划装置的结构示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的机器人轨迹规划方法,基于机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,获取目标轨迹在空间上的各离散点,再按照预设规则,得到各该离散点上该机器人的运行速度、与该运行速度对应的运行时间。
请参阅图1,图1为本发明第一实施例提供的机器人轨迹规划方法的流程示意图,该方法包括以下步骤:
S101、获取机器人的运行速度范围,按照第一预设算法,得到该机器人按照该运行速度范围运行时对应的运行轨迹曲率范围;
具体的,获取机器人的运行速度范围,该运行速度范围可以包括线速度范围和角速度范围,然后,按照第一预设算法,得出该机器人的运行轨迹曲率范围。
其中,机器人的运行速度范围受机器人的物理参数和应用规则所限制,物理参数指机器人的电机性能,如电机功率、电池参数,应用规则指工作人员对机器人的客观设定,如,运行速度的最小值和最大值的设定,且,工作人员对速度的设定受机器人的物理参数所限制。
S102、规划该机器人的目标轨迹,使该目标轨迹的曲率不超过该机器人运行轨迹的曲率范围;
具体的,该机器人的目标轨迹规划前为参考轨迹,由高层轨迹规划算法得出,高层轨迹规划算法可以包括静态路径最短路径算法(A*,A-star),动态路径最短路径算法(D*,D-star)等算法,规划该目标轨迹,使该目标轨迹的曲率不超过该机器人的运行轨迹曲率范围。
其中,该高层轨迹规划算法的选取,可以根据机器人当前所处的位置信息,目标位置的信息、周围环境情况等进行选择,优选的,当外界环境不变时,可选择A*算法,当外界环境不断发生变化,即不能计算预测的情况下,可选择D*算法。
S103、按照预设时间周期离散该目标轨迹,得到多个离散点,并按照预设规则,得到各该离散点上该机器人的运行信息,该机器人的运行信息包括该机器人的运行速度和与该运行速度对应的运行时间。
从实际工程应用的角度出发,将目标轨迹以较小的时间周期离散化,例如,该时间周期可以为1毫秒(ms),得到多个离散点,按照预设规则,得到各该离散点上该机器人的运行速度、与该运行速度对应的运行时间。
其中,该运行速度可以包括线速度和角速度。
从上述本发明实施例可知,通过获取机器人的运行速度范围,得到机器人的运行轨迹曲率范围,再规划该机器人的目标轨迹,并按照预设时间周期离散该目标轨迹,得到多个离散点,然后按预设规则,得到各离散点上该机器人的运行信息,综合考虑了机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
请参阅图2,图2为本发明第二实施例提供的机器人轨迹规划方法的流程示意图,该方法包括以下步骤:
S201、获取该机器人的最大线速度、最小线速度和最大角速度,按照第一预设算法,得到该机器人的最大运行轨迹曲率和临界运行轨迹曲率;
具体的,令ωmax为该最大角速度,Vmax为该最大线速度,Vmin为该最小线速度,该机器人运行轨迹的最大曲率为Kmax,该机器人运行轨迹的临界曲率为Kc,则:
Kmax=ωmax/Vmin,Kc=ωmax/Vmax
其中,曲率是指曲线偏离直线的程度,曲率越大,曲线的弯曲程度越大。
最大运行轨迹曲率是指机器人在曲线轨迹的运行过程中,该曲线轨迹能够达到的最大弯曲程度。
临界运行轨迹曲率是指机器人在曲线轨迹的运行过程中,该曲线轨迹在同时具有最大线速度和最大角速度的情况下,能够达到的弯曲程度。
需要说明的是,机器人的最小运行轨迹曲率和最小角速度为0,该最小运行轨迹曲率是指机器人在曲线轨迹的运行过程中,该曲线轨迹能够达到的最小弯曲程度,即,该曲线轨迹为直线。
S202、规划该机器人的目标轨迹,使该目标轨迹的曲率不超过该机器人运行轨迹的曲率范围;
获取该机器人的起点位置参数、终点位置参数和预设范围内障碍物的位置参数,得到由高层轨迹规划算法得出的参考轨迹,选取该参考轨迹上的多个控制点,若存在控制点的曲率超过机器人的最大运行轨迹曲率,则放弃所有符合该条件的控制点,再运用三次样条插值法,将剩余的控制点中,每两个相邻的控制点拟合为一条可用三次多项式表示的曲线段,该剩余的控制点的曲率不超过机器人的最大运行轨迹曲率,即均符合Kyi小于或等于Kmax,该曲线段满足曲线段本身、曲线段的一阶导数和二阶导数均连续,所有曲线段组成的曲线称作一条光滑曲线。
其中,控制点,是在给定的轨迹端点之间插入用于控制的中间点序列。
三次样条插值法,简称Spline插值法,是一种工业设计中常用的,得到平滑曲线的一种方法。优点是采用此方法得出的曲线具有收敛性和稳定性,能满足实际应用的需求。
具体的,在本实施例中,运用三次样条差值法平滑处理的过程:选取该参考轨迹上的若干控制点P0、P1、......、Pi,建立直角坐标系,将该参考轨迹的起始控制点P0作为坐标系的原点,该直角坐标系的横轴与纵轴均表示控制点距离横轴与纵轴的距离长度。相应的,得出该多个控制点在该直角坐标系上的直角坐标Pi(Xi,Yi),运用三次样条插值法,将相邻两个控制点之间的部分,如P0和P1、P5和P6,拟合为一条由三次多项式表达的曲线段yi,得到多条由三次多项式表达的曲线段,其中,i可取为两个控制点中的前一个点,根据三次多项式的数学特性,该曲线段存在一阶导数yi’和二阶导数yi”,则由曲线曲率的数学表达式,该曲线段的曲率Kyi的表达式为:
进一步地,由该三次多项式曲线段yi的具体表达式,根据导数计算公式,得出该三次多项式的一阶导数yi’关于x的具体表达式、该三次多项式的二阶导数yi”关于x的具体表达式,将控制点Pi(Xi,Yi)的直角坐标中的横坐标值Xi带入该一阶导数yi’关于x的具体表达式和二阶导数yi”关于x的具体表达式,计算得出一阶导数yi’和二阶导数yi”的具体数值,然后,将该一阶导数yi’和二阶导数yi”的具体数值带入上述曲线段的曲率Kyi的表达式中,得出Kyi的具体数值。
举例说明,假设控制点P5、与控制点P6之间拟合的曲线y5的三次多项式的表达式的为y5=x5 3-2x5 2+2x5-1,控制点P5的直角坐标为(2,2),P6的直角坐标为(5,3):
将y5=x5 3-2x5 2+2x5-1的两边对x5求导,得出:
y5’=3x5 2-4x5+2 2≤x≤5
然后,将y5’=3x5 2-4x5+2的两边二次求导,得出:
y5”=6x5-4
然后,将控制点P5(2,2)的横坐标值2带入y5’=3x5 2-4x5+2和y5”=6x5-4,得出:
y5’=6,y5”=8
然后,将y5’=-1,y5”=1带入Kyi的表达式,得出:
进一步地,比较控制点Pi的曲率Kyi与机器人的最大运行轨迹曲率Kmax,当Kyi大于Kmax时,舍去构成该曲线段yi的控制点Pi,保留剩余的控制点,再通过三次样条插值法,将该剩余的控制点进行拟合,得到一条光滑的曲线,该光滑曲线即目标轨迹。
S203、按照预设时间周期离散该目标轨迹,得到多个离散点,获取该多个离散点的坐标参数,根据曲线方程的求导法则和曲率的数学公式,得到多个离散点的曲率;
将离散化后得到的若干离散点M0、M1、......、Mi作为观察对象,然后,获取所有离散点在该平面直角坐标系上的坐标参数,根据该坐标参数中的横坐标参数,找到与该横坐标参数对应的曲线段方程,根据该曲线段方程和该离散点的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出离散点的曲率。
其中,离散点Mi的曲率的具体求出方法可根据上述求控制点曲率的方法求出,此处不再赘述。
S204、比较各离散点的曲率与该机器人的最大运行轨迹曲率和临界曲率之间的大小,按照预设规则,得到各离散点上对应的该机器人的运行速度;
当存在离散点的曲率Ki小于或等于机器人运行轨迹的临界曲率Kc时,并按照第二预设算法,令在该离散点上的该机器人的线速度为Vi,在该离散点上的该机器人的角速度为ωi,则:
Vi=Vmax,ωi=Ki·Vmax
其中,Ki为该离散点的曲率,Vmax该机器人的最大线速度。
进一步地,当存在离散点的曲率Ki大于机器人运行轨迹的临界曲率Kc且不超过机器人运行轨迹的最大曲率Kmax,则在该离散点上的该机器人的角速度为该机器人的最大角速度,并根据该机器人的最大角速度和该离散点的曲率,按照第三预设算法,得到在该离散点上的该机器人的线速度,则:
ωi=ωmax,Vi=ωmax/Ki
ωi为在该离散点上的该机器人的角速度,Vi为在该离散点上的该机器人的线速度,ωmax为该机器人的最大角速度,Ki为该离散点的曲率。
S205、按照预设规则,给各该机器人的运行速度分配相应的运行时间。
经过上述步骤后,该目标轨迹已经转化为一系列离散的点,且每个离散点都分配了相应的角速度和线速度。
进一步地,在时间上,需要对在该离散点上的该机器人的线速度和角速度进一步的分配相应的运行时间。观察相邻的两个离散点,和该两个离散点之间的微小区间。基于几何微积分的近似处理,认为机器人在此微小区间的运行速度恒定,其中,该运行速度包括线速度和角速度,该运行速度中线速度大小为此两个离散点上分配的线速度的均值,计算出该线速度均值的大小。基于此,根据距离和速度的数学公式,计算出完成此微小区间所需要的运行时间,最后,将该运行时间分配给该离散点。
具体的,设相邻的两个离散点为Mi、Mi+1,离散点Mi与离散点Mi+1之间的距离为ΔSi,Vi为在该离散点上的该机器人的线速度,Vi+1为在与该离散点相邻的下一个离散点上的该机器人的线速度,则该运行时间Ti:
Ti=2·(ΔS)/(Vi+1+Vi)
从上述本发明实施例可知,通过获取机器人的运行速度范围,得到机器人的运行轨迹曲率范围,再规划该机器人的目标轨迹,并按照预设时间周期离散该目标轨迹,得到多个离散点,然后按预设规则,得到各离散点上该机器人的运行信息,综合考虑了机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
请参阅图3,图3为本发明第三实施例提供的机器人轨迹规划装置的结构示意图,该装置包括以下模块:
参数获取模块301、曲率计算模块302、规划模块303、离散模块304和确认模块305。
参数获取模块301,用于获取机器人的运行速度范围。
该运行速度范围包括线速度范围和角速度范围。
曲率计算模块302,用于按照第一预设算法,得到该机器人按照该运行速度范围运行时对应的运行轨迹曲率范围。
该运行轨迹曲率范围可以包括最大运行轨迹曲率和临界运行轨迹曲率。
规划模块303,用于规划该机器人的目标轨迹,使该目标轨迹的曲率不超过该机器人运行轨迹的曲率范围。
离散模块304,用于按照预设时间周期离散该目标轨迹,得到多个离散点;
确认模块305,用于按照预设规则,得到各该离散点上该机器人的运行信息,该机器人的运行信息包括该机器人的运行速度和与该运行速度对应的运行时间。
本发明实施例中的装置用于执行前述图1所述实施例的方法,未描述的技术细节与前述图1所示实施例相同,此处不再赘述。
从上述本发明实施例可知,通过获取机器人的运行速度范围,得到机器人的运行轨迹曲率范围,再规划该机器人的目标轨迹,并按照预设时间周期离散该目标轨迹,得到多个离散点,然后按预设规则,得到各离散点上该机器人的运行信息,综合考虑了机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
请参阅图4,图4为本发明第四实施例提供的机器人轨迹规划装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。本实施例所示的装置与图3所示的装置不同之处在于:
进一步的,参数获取模块301,具体用于获取该机器人的获取该机器人的最大线速度、最小线速度和最大角速度。
曲率计算模块302,具体用于按照该第一预设算法,得到该机器人运行轨迹的最大曲率和临界曲率,令该机器人运动轨迹的最大曲率为Kmax,令该机器人运动轨迹的临界曲率为Kc,则:
Kmax=ωmax/Vmin,Kc=ωmax/Vmax
其中,ωmax为该机器人的最大角速度,Vmax该机器人的最大线速度,Vmin为该机器人的最小线速度。
规划模块303,具体用于获取该机器人的起点位置参数、终点位置参数和预设范围内障碍物的位置参数,得到由高层轨迹规划算法得出的参考轨迹,选取该参考轨迹上的多个控制点,建立平面直角坐标系,该平面直角坐标系以该参考轨迹的起始控制点为坐标原点,该平面直角坐标系的横轴与纵轴表示该控制点分别距离该横轴与纵轴的距离长度,获取各该控制点在该平面直角坐标系上的坐标参数,通过三次样条插值法,将相邻两个控制点之间的部分拟合为一条曲线,得到多条曲线段,以及该多条曲线段的曲线方程,根据该曲线方程和该曲线段上控制点的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出该曲线段的曲率,以及该曲线段上的控制点的曲率,判断该控制点的曲率是否超过该机器人的最大运行轨迹曲率,若超过,则清除该控制点,通过三次样条插值法,将剩余的控制点拟合,得到目标轨迹和该目标轨迹的曲线方程组,该剩余的控制点的曲率不超过该机器人的最大运行轨迹曲率。
进一步的,确认模块305具体包括:
参数获取模块301,还用于获取各该离散点在该平面直角坐标系上的坐标参数;
曲率计算模块302,还用于根据该目标轨迹的曲线方程组和该离散点在该平面直角坐标系上的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出各该离散点的曲率;
判断模块3051,用于判断是否存在离散点的曲率小于或等于该机器人的最大运行轨迹曲率;
速度分配模块3052,用于若存在该离散点,则在该离散点上的该机器人的线速度为该机器人的最大线速度,并根据该机器人的最大线速度和该离散点的曲率,按照第二预设算法,得到在该离散点上的该机器人的角速度,令在该离散点上的该机器人的线速度为Vi,在该离散点上的该机器人的角速度为ωi,则:
Vi=Vmax,ωi=Ki·Vmax
其中,Ki为该离散点的曲率,Vmax该机器人的最大线速度。
判断模块3051,还用于判断是否存在离散点的曲率大于该机器人的最大运行轨迹曲率,且不超过该机器人运行轨迹的最大曲率;
速度分配模块3052,还用于若存在该离散点,则在该离散点上的该机器人的角速度为该机器人的最大角速度,并根据该机器人的最大角速度和该离散点的曲率,按照第三预设算法,得到在该离散点上的该机器人的线速度,则:
ωi=ωmax,Vi=ωmax/Ki
ωi为在该离散点上的该机器人的角速度,Vi为在该离散点上的该机器人的线速度,ωmax为该机器人的最大角速度,Ki为该离散点的曲率。
参数获取模块301,还用于获取该离散点和与该离散点相邻的下一个离散点之间的距离、该离散点的线速度、与该离散点相邻的下一个离散点的线速度;
时间分配模块3053,用于按照第四预设算法,得出该机器人的运行时间,并将该机器人的运行时间分配给在该离散点上的该机器人的线速度和角速度,令该运行时间为Ti,则:
Ti=2·(ΔS)/(Vi+1+Vi)
其中,ΔS为该离散点和与该离散点相邻的下一个离散点之间的距离,Vi为在该离散点上的该机器人的线速度,Vi+1为在与该离散点相邻的下一个离散点上的该机器人的线速度。
本发明实施例中的未描述的技术细节,参见前述图1至图3所示各实施例,此处不再赘述。
从上述本发明实施例可知,通过获取机器人的运行速度范围,得到机器人的运行轨迹曲率范围,再规划该机器人的目标轨迹,并按照预设时间周期离散该目标轨迹,得到多个离散点,然后按预设规则,得到各离散点上该机器人的运行信息,综合考虑了机器人自身的运行学特性,将机器人的运行速度和运行轨迹曲率参考进轨迹规划的过程,提高生成的目标轨迹的准确性,保证了机器人良好的跟踪性能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的一种机器人轨迹规划方法及装置的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种机器人轨迹规划方法,其特征在于,所述方法包括:
获取机器人的最大线速度、最小线速度和最大角速度;
按照第一预设算法,得到所述机器人按照所述最大线速度、最小线速度和最大角速度运行时对应的运行轨迹的最大曲率和临界曲率;
所述第一预设算法为:令所述机器人运动轨迹的最大曲率为Kmax,令所述机器人运动轨迹的临界曲率为Kc,则:
Kmax=ωmax/VminKc=ωmax/Vmax
其中,ωmax为所述机器人的最大角速度,Vmax所述机器人的最大线速度,Vmin为所述机器人的最小线速度;
规划所述机器人的目标轨迹,使所述目标轨迹的曲率不超过所述机器人运行轨迹的曲率范围;
按照预设时间周期离散所述目标轨迹,得到多个离散点,并按照预设规则,得到各所述离散点上所述机器人的运行信息,所述机器人的运行信息包括所述机器人的运行速度和与所述运行速度对应的运行时间。
2.如权利要求1所述的方法,其特征在于,所述规划所述机器人的目标轨迹,使所述目标轨迹的曲率不超过所述机器人运行轨迹的曲率范围包括:
获取所述机器人的起点位置参数、终点位置参数和预设范围内障碍物的位置参数,得到由高层轨迹规划算法得出的参考轨迹;所述高层轨迹规划算法包括静态路径最短路径算法和动态路径最短路径算法,当外界环境不变时,可选择所述静态路径最短路径算法,当外界环境不断发生变化,即不能计算预测的情况下,选择动态路径最短路径算法;
选取所述参考轨迹上的多个控制点,建立平面直角坐标系,所述平面直角坐标系以所述参考轨迹的起始控制点为坐标原点,所述平面直角坐标系的横轴与纵轴表示所述控制点分别距离所述横轴与纵轴的距离长度;
获取各所述控制点在所述平面直角坐标系上的坐标参数,通过三次样条插值法,将相邻两个控制点之间的部分拟合为一条曲线,得到多条曲线段,以及所述多条曲线段的曲线方程;
根据所述曲线方程和所述曲线段上控制点的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出所述曲线段的曲率,以及所述曲线段上的控制点的曲率;
判断所述控制点的曲率是否超过所述机器人的最大运行轨迹曲率,若超过,则清除所述控制点,通过三次样条插值法,将剩余的控制点拟合,得到目标轨迹和所述目标轨迹的曲线方程组,所述剩余的控制点的曲率不超过所述机器人的最大运行轨迹曲率。
3.如权利要求2所述的方法,其特征在于,所述按照预设规则,得到各所述离散点上所述机器人的运行信息包括:
获取各所述离散点在所述平面直角坐标系上的坐标参数;
根据所述目标轨迹的曲线方程组和所述离散点在所述平面直角坐标系上的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出各所述离散点的曲率;
判断是否存在离散点的曲率小于或等于所述机器人的最大运行轨迹曲率;
若存在所述离散点,则在所述离散点上的所述机器人的线速度为所述机器人的最大线速度,并根据所述机器人的最大线速度和所述离散点的曲率,按照第二预设算法,得到在所述离散点上的所述机器人的角速度,令在所述离散点上的所述机器人的线速度为Vi,在所述离散点上的所述机器人的角速度为ωi,则:
Vi=Vmaxωi=Ki·Vmax
其中,Ki为所述离散点的曲率,Vmax所述机器人的最大线速度。
4.如权利要求3所述的方法,其特征在于,所述按照预设规则,得到各所述离散点上所述机器人的运行信息还包括:
判断是否存在离散点的曲率大于所述机器人的最大运行轨迹曲率,且不超过所述机器人运行轨迹的最大曲率;
若存在所述离散点,则在所述离散点上的所述机器人的角速度为所述机器人的最大角速度,并根据所述机器人的最大角速度和所述离散点的曲率,按照第三预设算法,得到在所述离散点上的所述机器人的线速度,则:
ωi=ωmax Vi=ωmax/Ki
ωi为在所述离散点上的所述机器人的角速度,Vi为在所述离散点上的所述机器人的线速度,ωmax为所述机器人的最大角速度,Ki为所述离散点的曲率。
5.如权利要求4所述的方法,其特征在于,所述按照预设规则,得到各所述离散点上所述机器人的运行信息还包括:
获取所述离散点和与所述离散点相邻的下一个离散点之间的距离、所述离散点的线速度、与所述离散点相邻的下一个离散点的线速度;
按照第四预设算法,得出所述机器人的运行时间,并将所述机器人的运行时间分配给在所述离散点上的所述机器人的线速度和角速度,令所述运行时间为Ti,则:
Ti=2·(ΔS)/(Vi+1+Vi)
其中,ΔS为所述离散点和与所述离散点相邻的下一个离散点之间的距离,Vi为在所述离散点上的所述机器人的线速度,Vi+1为在与所述离散点相邻的下一个离散点上的所述机器人的线速度。
6.一种机器人轨迹规划装置,其特征在于,所述装置包括:
参数获取模块,获取机器人的最大线速度、最小线速度和最大角速度;
曲率计算模块,按照第一预设算法,得到所述机器人按照所述最大线速度、最小线速度和最大角速度运行时对应的运行轨迹的最大曲率和临界曲率;
规划模块,用于规划所述机器人的目标轨迹,使所述目标轨迹的曲率不超过所述机器人运行轨迹的曲率范围;
离散模块,用于按照预设时间周期离散所述目标轨迹,得到多个离散点;
确认模块,用于按照预设规则,得到各所述离散点上所述机器人的运行信息,所述机器人的运行信息包括所述机器人的运行速度和与所述运行速度对应的运行时间。
7.如权利要求6所述的装置,其特征在于,所述参数获取模块具体用于获取所述机器人的获取所述机器人的最大线速度、最小线速度和最大角速度;
所述曲率计算模块具体用于按照所述第一预设算法,得到所述机器人按照所述最大线速度、最小线速度和最大角速度运行时对应的运行轨迹的最大曲率和临界曲率,所述第一预设算法为:令所述机器人运动轨迹的最大曲率为Kmax,令所述机器人运动轨迹的临界曲率为Kc,则:
Kmax=ωmax/VminKc=ωmax/Vmax
其中,ωmax为所述机器人的最大角速度,Vmax所述机器人的最大线速度,Vmin为所述机器人的最小线速度。
8.如权利要求7所述的装置,其特征在于,所述规划模块具体用于获取所述机器人的起点位置参数、终点位置参数和预设范围内障碍物的位置参数,得到由高层轨迹规划算法得出的参考轨迹,所述高层轨迹规划算法包括静态路径最短路径算法和动态路径最短路径算法,当外界环境不变时,可选择所述静态路径最短路径算法,当外界环境不断发生变化,即不能计算预测的情况下,选择动态路径最短路径算法,选取所述参考轨迹上的多个控制点,建立平面直角坐标系,所述平面直角坐标系以所述参考轨迹的起始控制点为坐标原点,所述平面直角坐标系的横轴与纵轴表示所述控制点分别距离所述横轴与纵轴的距离长度,获取各所述控制点在所述平面直角坐标系上的坐标参数,通过三次样条插值法,将相邻两个控制点之间的部分拟合为一条曲线,得到多条曲线段,以及所述多条曲线段的曲线方程,根据所述曲线方程和所述曲线段上控制点的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出所述曲线段的曲率,以及所述曲线段上的控制点的曲率,判断所述控制点的曲率是否超过所述机器人的最大运行轨迹曲率,若超过,则清除所述控制点,通过三次样条插值法,将剩余的控制点拟合,得到目标轨迹和所述目标轨迹的曲线方程组,所述剩余的控制点的曲率不超过所述机器人的最大运行轨迹曲率。
9.如权利要求8所述的装置,其特征在于,所述确认模块包括:
参数获取模块,还用于获取各所述离散点在所述平面直角坐标系上的坐标参数;
曲率计算模块,还用于根据所述目标轨迹的曲线方程组和所述离散点在所述平面直角坐标系上的坐标参数,由曲线方程的求导法则和曲率的数学公式,得出各所述离散点的曲率;
判断模块,用于判断是否存在离散点的曲率小于或等于所述机器人的最大运行轨迹曲率;
速度分配模块,用于若存在所述离散点,则在所述离散点上的所述机器人的线速度为所述机器人的最大线速度,并根据所述机器人的最大线速度和所述离散点的曲率,按照第二预设算法,得到在所述离散点上的所述机器人的角速度,令在所述离散点上的所述机器人的线速度为Vi,在所述离散点上的所述机器人的角速度为ωi,则:
Vi=Vmaxωi=Ki·Vmax
其中,Ki为所述离散点的曲率,Vmax所述机器人的最大线速度;
判断模块,还用于判断是否存在离散点的曲率大于所述机器人的最大运行轨迹曲率,且不超过所述机器人运行轨迹的最大曲率;
速度分配模块,还用于若存在所述离散点,则在所述离散点上的所述机器人的角速度为所述机器人的最大角速度,并根据所述机器人的最大角速度和所述离散点的曲率,按照第三预设算法,得到在所述离散点上的所述机器人的线速度,则:
ωi=ωmaxVi=ωmax/Ki
ωi为在所述离散点上的所述机器人的角速度,Vi为在所述离散点上的所述机器人的线速度,ωmax为所述机器人的最大角速度,Ki为所述离散点的曲率;
参数获取模块,还用于获取所述离散点和与所述离散点相邻的下一个离散点之间的距离、所述离散点的线速度、与所述离散点相邻的下一个离散点的线速度;
时间分配模块,用于按照第四预设算法,得出所述机器人的运行时间,并将所述机器人的运行时间分配给在所述离散点上的所述机器人的线速度和角速度,令所述运行时间为Ti,则:
Ti=2·(ΔS)/(Vi+1+Vi)
其中,ΔS为所述离散点和与所述离散点相邻的下一个离散点之间的距离,Vi为在所述离散点上的所述机器人的线速度,Vi+1为在与所述离散点相邻的下一个离散点上的所述机器人的线速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711233817.3A CN108205318B (zh) | 2017-11-30 | 2017-11-30 | 机器人轨迹规划方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711233817.3A CN108205318B (zh) | 2017-11-30 | 2017-11-30 | 机器人轨迹规划方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108205318A CN108205318A (zh) | 2018-06-26 |
CN108205318B true CN108205318B (zh) | 2021-07-30 |
Family
ID=62603507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711233817.3A Active CN108205318B (zh) | 2017-11-30 | 2017-11-30 | 机器人轨迹规划方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108205318B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968045B (zh) * | 2018-09-30 | 2021-03-26 | 杭州海康机器人技术有限公司 | 移动目标的速度控制方法、装置和可读存储介质 |
CN109884979B (zh) * | 2019-01-31 | 2020-02-21 | 北京华航唯实机器人科技股份有限公司 | 设备运动点的处理方法及装置 |
CN111562780A (zh) * | 2019-02-13 | 2020-08-21 | 北京京东尚科信息技术有限公司 | 一种搬运设备运行轨迹设置方法和装置 |
CN109557929B (zh) * | 2019-02-18 | 2019-07-05 | 深兰人工智能芯片研究院(江苏)有限公司 | 移动机器人的运动控制方法及装置 |
CN110001637B (zh) * | 2019-04-10 | 2023-09-29 | 吉林大学 | 一种基于多点跟踪的无人驾驶汽车路径跟踪控制装置及控制方法 |
CN111123951B (zh) * | 2019-12-31 | 2024-02-06 | 深圳市优必选科技股份有限公司 | 一种双足机器人及其轨迹跟随方法和装置 |
CN111158368B (zh) * | 2019-12-31 | 2024-02-02 | 深圳市优必选科技股份有限公司 | 一种双足机器人及其轨迹跟随方法和装置 |
JP2023536727A (ja) | 2020-08-06 | 2023-08-29 | ピアジオ ファスト フォワード インク | ペアモードおよびスマート行動モードを有するエチケットベースの車両およびその制御システム |
CN112197778A (zh) * | 2020-09-08 | 2021-01-08 | 南京理工大学 | 基于改进a*算法的轮式机场巡界机器人路径规划方法 |
CN113031592A (zh) * | 2021-02-25 | 2021-06-25 | 杭州国辰机器人科技有限公司 | 一种基于五阶贝塞尔曲线的机器人路径平滑方法及系统 |
CN112947487B (zh) * | 2021-03-31 | 2024-04-16 | 深圳市优必选科技股份有限公司 | 一种自动引导车辆及其曲线路径跟踪方法、控制装置 |
CN113608525A (zh) * | 2021-06-23 | 2021-11-05 | 北京迈格威科技有限公司 | 机器人运动状态的指示方法、装置、电子设备及存储介质 |
CN114474064B (zh) * | 2022-03-04 | 2024-01-09 | 美智纵横科技有限责任公司 | 机器人控制方法及其装置、扫地机器人和存储介质 |
CN115870976A (zh) * | 2022-11-16 | 2023-03-31 | 北京洛必德科技有限公司 | 一种机械臂的采样轨迹规划方法和装置、电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246236A (zh) * | 2013-05-23 | 2013-08-14 | 南京工业大学 | 一种考虑小直线段和连接点速度的数控系统速度控制方法 |
CN105500354A (zh) * | 2016-02-02 | 2016-04-20 | 南京埃斯顿机器人工程有限公司 | 一种工业机器人应用的过渡轨迹规划方法 |
CN105739505A (zh) * | 2016-04-13 | 2016-07-06 | 上海物景智能科技有限公司 | 一种机器人的路径控制方法及系统 |
CN105867379A (zh) * | 2016-04-13 | 2016-08-17 | 上海物景智能科技有限公司 | 一种机器人的运动控制方法及控制系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8898016B2 (en) * | 2013-03-15 | 2014-11-25 | Applied Minds, Llc | Method and apparatus for two-stage planning |
-
2017
- 2017-11-30 CN CN201711233817.3A patent/CN108205318B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246236A (zh) * | 2013-05-23 | 2013-08-14 | 南京工业大学 | 一种考虑小直线段和连接点速度的数控系统速度控制方法 |
CN105500354A (zh) * | 2016-02-02 | 2016-04-20 | 南京埃斯顿机器人工程有限公司 | 一种工业机器人应用的过渡轨迹规划方法 |
CN105739505A (zh) * | 2016-04-13 | 2016-07-06 | 上海物景智能科技有限公司 | 一种机器人的路径控制方法及系统 |
CN105867379A (zh) * | 2016-04-13 | 2016-08-17 | 上海物景智能科技有限公司 | 一种机器人的运动控制方法及控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108205318A (zh) | 2018-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108205318B (zh) | 机器人轨迹规划方法及装置 | |
CN110260867B (zh) | 一种机器人导航中位姿确定、纠正的方法、设备及装置 | |
CN109434831B (zh) | 机器人运行方法、装置、机器人、电子设备及可读介质 | |
CN107980109B (zh) | 机器人运动轨迹规划方法及相关装置 | |
CN112612273B (zh) | 一种巡检机器人避障路径规划方法、系统、设备和介质 | |
CN110162029B (zh) | 一种基于规划路径的运动控制方法及装置、机器人 | |
CN107710084B (zh) | 一种加工路径规划方法、加工路径规划装置及数控机床 | |
EP3486612B1 (en) | Method for generating a trajectory | |
CN110488843B (zh) | 避障方法、移动机器人及计算机可读存储介质 | |
CN113110521B (zh) | 移动机器人路径规划控制方法及其控制装置、存储介质 | |
CN112622933B (zh) | 车辆停靠点的确定方法及装置 | |
KR102560681B1 (ko) | 최적 경로 생성 방법 및 이를 위한 장치 | |
CN110647151A (zh) | 坐标转换方法及装置、计算机可读存储介质、电子设备 | |
CN111813112A (zh) | 一种车辆轨迹点确定方法、装置、车辆及存储介质 | |
CN103941739A (zh) | 一种基于多项式的卫星姿态机动方法 | |
CN114771551A (zh) | 自动驾驶车辆轨迹规划方法、装置和自动驾驶车辆 | |
CN116476864A (zh) | 车辆自动驾驶参考线平滑方法、装置、系统、设备及介质 | |
CN114834484A (zh) | 一种车辆轨迹跟随控制方法、装置、电子设备及存储介质 | |
US10935386B2 (en) | Self-propelled device, and method and travel control computer program of controlling traveling of self-propelled device | |
Yang et al. | A practical joint-space trajectory generation method based on convolution in real-time control | |
CN114838737B (zh) | 一种行驶路径的确定方法、装置、电子设备及存储介质 | |
CN113156962B (zh) | 运动控制方法、装置、机器人及存储介质 | |
CN113401141B (zh) | 路线处理方法及装置 | |
CN111399489A (zh) | 用于生成信息的方法和装置 | |
CN115302520B (zh) | 机器人路径的优化方法及装置、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200119 Address after: 518060 floor 15, Xinghe worldg2-14, No.1 Yabao Road, Bantian street, Longgang District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Institute of artificial intelligence and Robotics Applicant after: Chinese University Hong Kong (Shenzhen) Address before: 518060 Longxiang Avenue, Longgang District, Shenzhen, Guangdong 2001 Applicant before: Chinese University Hong Kong (Shenzhen) |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |