CN111506081B - 一种机器人轨迹跟踪方法、系统及存储介质 - Google Patents
一种机器人轨迹跟踪方法、系统及存储介质 Download PDFInfo
- Publication number
- CN111506081B CN111506081B CN202010410198.6A CN202010410198A CN111506081B CN 111506081 B CN111506081 B CN 111506081B CN 202010410198 A CN202010410198 A CN 202010410198A CN 111506081 B CN111506081 B CN 111506081B
- Authority
- CN
- China
- Prior art keywords
- robot
- sequence
- path
- coordinate system
- max
- 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
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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
Abstract
本发明公开了一种机器人轨迹跟踪方法、系统及存储介质,将轨迹优化和控制融合到一起,更好的保证机器人进行轨迹跟踪的可行性。机器人穿越稠密障碍物时,本发明采用自适应的权重,根据差动机器人当前位置同障碍物间的最短距离相应调整目标函数中的权值,从而使得机器人在进行轨迹跟踪时能兼顾安全性、运行速度,改善障碍物区域的轨迹跟踪性能。本发明通过将避障约束放到目标函数中,将其转化为软约束,通过在容许控制空间中采样的方式寻找到最优控制输入,解决了非凸的优化问题,同时,通过动态调整权重的方式提高了移动机器人避障性能。
Description
技术领域
本发明涉及双轮差动式机器人轨迹跟踪控制领域,特别是一种机器人轨迹跟踪方法、系统及存储介质。
背景技术
进入二十一世纪第二个十年以来,国内外对机器人技术的发展越来越重视,机器人技术被认为是对新兴产业发展具有重要意义的高技术之一。在计算机技术、网络技术、MEMS技术等新技术发展的推动下,机器人技术正从传统的工业制造领域向医疗服务、教育娱乐等领域迅速扩展,大量的用于室内的服务型机器人前景广阔。
由于双轮差动型移动方式成本低廉而被室内服务型机器人广泛采用。当移动机器人运行在室内,经常会遇到需要穿越障碍物区域的情况,而目前,大多数双轮差动移动机器人的在穿越障碍物区域时,运行速度、安全性能不能很好地兼顾。运动规划问题通常包括两个步骤,首先进行路径规划,之后在路径规划的基础上完成轨迹跟踪。这类方法大多是基于凸优化来实现的,而空间中障碍物的存在往往使问题变为非凸的,无法解决非凸的优化问题。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种机器人轨迹跟踪方法、系统及存储介质,解决现有双轮驱动机器人穿越障碍物区域时,运行速度、安全性能不能兼顾的问题。
为解决上述技术问题,本发明所采用的技术方案是:一种机器人轨迹跟踪方法,其特征在于,包括以下步骤:
1)获取全局路径序列其中,表示全局规划路径在全局坐标系下的第i个路径点对应的横坐标,表示全局规划路径在全局坐标系下的第i个路径点对应的纵坐标,表示全局规划序列在全局坐标系下的第i个路径点对应的航向角,N对应全局规划的路径中路径点的数量;
2)将机器人轨迹跟踪问题构建成最优化规划问题采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列 U*:={vi,ωi}i=1,...n-1;其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解, X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列,U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,n对应求解出的轨迹点数量;
3)将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给机器人执行器;
4)若机器人到达终点,则停止;否则跳转至步骤2)。
本发明的上述步骤融合了轨迹优化和控制,可以更好的保证机器人进行轨迹跟踪的可行性,可以很好地解决非凸的优化问题,兼顾了机器人运行速度和安全性能。步骤2)中,构建最优化规划问题的具体实现过程包括:
A)构建机器人全局坐标系和机器人运动坐标系,并获取当前机器人在全局坐标系下的位姿xi=(xi,yi,θi),即运动坐标系相对于全局坐标系的位姿;其中,机器人运动坐标系以机器人质心为原点,机器人速度方向为x轴正向,垂直x轴逆时针方向为y轴正向;全局坐标系与大地固连,定义为初始时刻机器人的运动坐标系,即机器人将要开始运动时,以机器人质心为原点,机器人将要行进的速度方向为x轴正向,垂直x轴逆时针方向为y轴正向构建的坐标系;
B)在全局坐标系下,将机器人轨迹跟踪构建成最优化问题,即代价函数γk包括γpath1、γpath2、γobstacle1、γobstacle2、γgoal、γvelocity,分别对应为各个子代价函数为fpath1、fpath2、fobstacle1、fobstacle2、fgoal、fvelocity的权重,其中,γobstacle1、γgoal、γvelocity为设定的固定权重,γpath1、γpath2、γobstacle2为自适应变动的权重:
domin表示当前位置距离各个障碍物的最小距离,γpath1,min和γpath1,max分别表示权重γpath1的最小值和最大值,γpath2,max和γpath1,min分别表示权重γpath2的最大值和最小值,γobstacle2min表示权重γobstacle2的最小值,Ds为设定的阈值,Kc为设定的参数,a 为设定的参数;
fk(B)表示各个子代价函数,各子代价函数具体形式如下:
fpath1=eΓ(dpath,min,rpmax,ε,S,n);
fpath2=dpath,min;
fobstacle1=eΓ(-dp omin,-romin,ε,S,n);
fobstacle2=dp omin;
其中,dpath, min代表求解出的轨迹序列中点与全局路径序列中相应点的距离中的最小值,rpmax代表最大容许跟踪误差;dp omin代表求解出的轨迹序列中点与障碍物距离中的最小值,romin代表求解出的容许机器人靠近障碍物的最短距离;
eΓ(b,br,ε,S,n)为约束函数,b代表目标变量,br代表期望目标变量的上限,S、 n、ε为人为设定参数;xgoal、ygoal是机器人终点位置坐标,xi、yi是相应的机器人位置坐标,θi是相应的机器人航向角;v代表优化问题求解出的机器人局部轨迹行驶的平均速度;
所述优化问题的约束如下:
0≤vi≤vmax;
-ωmax≤ωi≤ωmax;
其中,ΔT表示机器人控制周期,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,ai,αi分别为机器人从路径点i-1到路径点i点加速度与角加速度, amax,αmax分别为机器人加速度和角加速度的上限。
上述步骤A)、B)采用自适应的权重,根据差动机器人当前位置同障碍物间的最短距离相应调整目标函数中的权值,使得机器人在进行轨迹跟踪时能兼顾安全性、运行速度,改善障碍物区域的轨迹跟踪性能。将机器人路径跟踪构建成最优化问题,保证机器人满足运动学和动力学约束的情况下,可以更准确、全面的描述机器人轨迹跟踪时需要完成的跟踪与避障。
为了提高移动机器人避障性能,步骤2)中,利用所述动态窗口法求解所述最优化规划问题的具体实现过程包括:
I)根据机器人速度/角速度限制Vl1={v∈[0,vmax],ω∈[-ωmax,ωmax]}、加速度/角加速度限 Vl2={v∈[v-amaxΔT,v+amaxΔT],ω∈[ω-αmaxΔT,ω+αmaxΔT]},得到机器人速度/角速度空间;
II)在速度/角速度空间中按Δv,角速度空间Δw等间隔采样,将不同的速度与角速度组合起来,模拟机器人在未来T时间内的行进轨迹;
III)通过代价函数J对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n和控制量序列U:={vi,ωi}i=1,...n-1。
为了保证求解优化问题足够快,满足实时性要求,步骤3)的具体实现过程包括:
A)组合速度、角速度序列的前m个值U*:={vi,ωi}i=1,...m与控制周期ΔT,得到组合后的数据{v1,ω1,ΔT},{v2,ω2,ΔT},...,{vm,ωm,ΔT};
B)将{v1,ω1}下发至执行器,并保持ΔT时间,之后将{v2,ω2}下发给执行器,并保持ΔT时间,以此类推,直至发送完{vm,ωm}。
步骤4)的具体实现过程包括:
i)获取机器人当前位置xi=(xi,yi);
ii)将机器人当前位置与目标位置xgoal=(xgoal,ygoal)比较,若位置差在以目标位置为圆心,半径为容许误差的范围内,则结束,否则跳转至步骤2),继续进行轨迹跟踪。
通过比较当前位置与目标位置的距离来判断是否到达目标位置的容许误差范围内,方法简单易行,资源消耗小,可实现性佳。
相应地,本发明还提供了一种机器人控制系统,其包括:
上层规划器,用于获取全局路径序列其中,表示全局规划路径在全局坐标系下的第i个路径点对应的横坐标,表示全局规划路径在全局坐标系下的第i个路径点对应的纵坐标,表示全局规划序列在全局坐标系下的第i个路径点对应的航向角,N对应全局规划的路径中路径点的数量;
1)轨迹跟踪器,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1,并将求解得到的速度、角速度序列的前m个值 Um *:={vi,ωi}i=1,...m,按照控制周期下发给执行器;其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列 U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点 i-1到路径点i的速度和角速度,n对应求解出的轨迹点数量;
本发明的系统还包括判断模块,用于判断机器人是否到达终点,若到达,则向轨迹跟踪器反馈终止命令;否则,向轨迹跟踪器反馈继续进行轨迹跟踪的命令。
本发明所述轨迹跟踪器包括:
建模单元,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi) 代表轨迹序列U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,n对应求解出的轨迹点数量;
计算单元,用于采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1;
传输单元,用于将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给执行器;
优选地,所述计算单元包括:
采样模块,用于在速度/角速度空间中按Δv,角速度空间Δw等间隔采样,将不同的速度与角速度组合起来,模拟机器人在未来T时间内的行进轨迹;
评分模块,用于通过代价函数J对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1。
作为一个发明构思,本发明还提供了一种计算机存储介质,其存储有程序,该程序被配置为用于执行本发明方法的步骤。
与现有技术相比,本发明所具有的有益效果为:
1.相比于传统机器人轨迹跟踪方法,本发明方法将轨迹优化和控制融合到一起,可以更好的保证机器人进行轨迹跟踪的可行性。
2.机器人穿越稠密障碍物时,本发明采用自适应的权重,根据差动机器人当前位置同障碍物间的最短距离相应调整目标函数中的权值,从而使得机器人在进行轨迹跟踪时能兼顾安全性、运行速度,改善障碍物区域的轨迹跟踪性能。
3.本发明通过将避障约束放到目标函数中,将其转化为软约束,通过在容许控制空间中采样的方式寻找到最优控制输入,解决了非凸的优化问题,同时,通过动态调整权重的方式提高了移动机器人避障性能。
附图说明
图1本发明所述方法的流程图;
图2动态窗口法流程图;
图3 eΓ(x,xr,ε,S,n)函数的约束效果示意图;
图4动态窗口法示意图;
图5为轨迹跟踪仿真示意图;
图6仿真跟踪误差;
图7仿真速度图;
图8仿真角速度图;
图9机器人控制系统框图。
具体实施方式
本发明实施例提供了一种基于弹性约束的室内双轮差动机器人的轨迹跟踪方法,如图1所示,包括以下步骤:
步骤二,全局路径序列,将差动机器人轨迹跟踪问题构建成最优化规划问题,采用动态窗口法求解得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列 U*:={vi,ωi}i=1,...n-1;
步骤三,将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给机器人底盘执行器,m取为1;
步骤四,若机器人到达终点则停止,否则跳转至步骤二。
步骤一中的方法具体步骤如下:
步骤3,轨迹跟踪层接收到全局路径后,向上层给出反馈并开始轨迹跟踪任务。步骤二中的方法具体步骤如下:
步骤1,由于机器人在进行轨迹跟踪的过程中需要时时刻刻获取位姿反馈(机器人运动坐标系相对于全局坐标系的平移和旋转),所以需要在机器人运行前规定好相应的坐标系。本发明中,构建机器人全局坐标系和机器人运动坐标系,以获取机器人相对于全局坐标的位姿,其中,机器人运动坐标系以机器人质心为原点,机器人速度方向为x轴正向,垂直x轴逆时针方向为y轴正向;全局坐标系与大地固连,定义为初始时刻机器人的运动坐标系,即机器人将要开始运动时,以机器人质心为原点,机器人将要行进的速度方向为x轴正向,垂直x轴逆时针方向为y 轴正向构建的坐标系;
步骤2,将机器人轨迹跟踪构建成多目标约束最优化问题
对于优化目标函数其中,γk代表各个子代价函数对应的权重,fk(B)代表各个子代价函数,本发明中,γk包括γpath1、γpath2、γobstacle1、γobstacle2、γgoal、γvelocity,相应的对应的子代价函数分别为fpath1、fpath2、 fobstacle1、fobstacle2、fgoal、fvelocity。B:={X,U}代表可行解, X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列,U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,n对应求解出的轨迹点数量;
各子代价函数具体形式如下:
fpath1=eΓ(dpath,min,j,rpmax,ε,S,n)
fpath2=dpath,min
fobstacle1=eΓ(-dp omin,-romin,ε,S,n);
fobstacle2=dp omin;
函数可以保证,当b>br时,代价函数值迅速增大,在优化问题中利用这个函数以将目标变量约束到一定范围内,其中, S、n、ε是影响函数约束性能的一些参数,其中,S、n、ε是影响函数约束性能的一些参数,分别设为0.1,2.1,0.1。
fpath1=eΓ(dpath, min,rpmax,ε,S,n),fpath2=dpath, min代表轨迹点限制,其目的是将上层规划器传来的全局路径点的一定范围内从而保证跟踪精度,其中,dpath, min代表求解出的轨迹序列中点与全局路径序列中相应点的距离中的最小值,rpmax代表最大容许跟踪误差;相比于fpath2,fpath1在机器人远离轨迹到一个阈值时,惩罚呈指数增长,提供强效的约束作用,能将机器人限制在全局路径的一定范围内,本实例中rpmax取为0.25。
而fobstacle1=eΓ(-dp omin,-romin,ε,S,n),fobstacle2=dp omin代表障碍物点限制,其目的是限制机器人是其远离障碍物,dp omin代表求解出的轨迹序列中点与各个障碍物的距离中的最小值,romin代表容许机器人靠近障碍物的最短距离;相比于fobstacle2, fobstacle1在机器人远离轨迹到一个阈值时,惩罚呈指数增长,提供强效约束作用,能将机器人限制在远离障碍物的一定范围内,本实例中romin取为0.5。
这一项中,arctan(·)表示反正切函数、y是机器人当前坐标,而xgoal、ygoal是机器人终点位置坐标,这一项使机器人可以尽量保持朝向终点位置行进,可以保证全局轨迹失效时,机器人还有到一定达终点位置的能力。这一项的作用是使得机器人可以行进的更快,尽量快速的完成任务。 eΓ(a,ar,ε,S,n)函数保证当a>ar时,代价函数值迅速增大,在优化问题中利用这个函数以将目标变量约束到一定范围内。
相应的约束如下:
0≤vi≤vmax
-ωmax≤ωi≤ωmax
其中,ΔT表示机器人控制周期,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,ai,αi分别为机器人从路径点i-1到路径点i点加速度与角加速度, amax,αmax分别为机器人加速度和角加速度的上限。
当机器人按照规划轨迹进行跟踪时,若原定路径附近出现了新的障碍物,则迅速远离障碍物成为第一要务,此时,释放掉机器人因远离全局轨迹所造成的代价,当机器人远离障碍物后再将这部分重新加入到代价函数中,因此,令fpath1和fpath2对应的权重自适应改变
同理,为了提高机器人通过障碍物区域的能力,令fobstacle2对应的权重自适应改变,使得当机器人距障碍物过近时,距离障碍物代价项对应的权重变大
以保证机器人尽量远离障碍物,其中,domin代表机器人与障碍间的最小距离。本实例中Ds取为0.5,Kc取为0.1,a取为1。
在本发明中,起点坐标设置为(0,0),期望坐标设置为(10,10),γpath2,max=0.005,γpath1,max=0.3,γpath1,min=γpath2,min=0,γobstacle1=0.03,γobstacle2,min=0.15,γgoal=0.08,γv=0.08。
步骤3,使用动态窗口法求解优化问题。
步骤二中的动态窗口法步骤如下:
步骤1,根据机器人速度/角速度限制Vl1={v∈[0,vmax],ω∈[-ωmax,ωmax]}、加速度/角加速度限制Vl2={v∈[v-amaxΔT,v+amaxΔT],ω∈[ω-αmaxΔT,ω+αmaxΔT]} 得到机器人速度/角速度空间,ΔT取为0.1s,vmax取得为1m/s,wmax取为20°/s, amax取为0.2m/s2,αmax取为50°/s2。
步骤2,在速度空间中按Δv=0.1m/s,角速度空间Δw=0.1°/s等间隔采样,将不同的速度与角速度组合起来模拟机器人在未来T时间内的行进轨迹,T取为3s。Δv,Δw和T的取值范围同机器人上控制器的性能相关,根据经验选取,但是,当Δv,Δw,和T增大时算法的复杂度会增大,求解时间随着Δv,Δw,和T的增大而增大,因此在本发明中,设定Δv=0.1,Δw=0.1,对于一般的轨迹跟踪来说就已经可以较好的完成任务了,将他们的值取得更小可能能获得更好的效果。对于时间T,对于室内机器人,运行速度较低,一般取2-5s即可;
步骤3,通过代价函数对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n、控制量序列U*={vi,ωi}i=1,...n-1
步骤四中的方法具体步骤如下:
步骤1,将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m同控制周期ΔT组合起来,{v1,ω1,ΔT},{v2,ω2,ΔT},...,{vm,ωm,ΔT}
步骤2,将{v1,ω1}下发到执行器,并保持ΔT时间,之后将{v2,ω2}下发给执行器,并保持ΔT时间,以此类推,直到第m个值,本发明中,m取为1;
步骤五中的方法具体步骤如下:
步骤1,接收传感器发来的机器人当前位置xi=(xi,yi);
步骤2,将机器人当前位置与目标位置xgoal=(xgoal,ygoal)比较,若当前位置距离目标位置的距离在容许误差(可选择0.05~0.2m)范围内,则结束轨迹跟踪流程,否则跳转至步骤二,继续进行轨迹跟踪。本发明中到达距目标位置0.1米范围内即停止跟踪。
本实施例跟踪效果如图5所示,其中,虚线为全局规划路径,实线为机器人实际行进轨迹,椭圆表示障碍物,星形代表目标位置,圆圈代表机器人本体。在图中,当机器人沿着路径行进到靠近坐标为(10,4)障碍物附近时,代价函数中γpath1和γpath2变为0,偏离全局路径代价释放,而γobstacle2增大,达到使机器人远离障碍物的方向行进的效果。
本发明的另一实施例提供了机器人控制系统,其包括:
上层规划器,用于获取全局路径序列其中,表示全局规划路径在全局坐标系下的第i个路径点对应的横坐标,表示全局规划路径在全局坐标系下的第i个路径点对应的纵坐标,表示全局规划序列在全局坐标系下的第i个路径点对应的航向角,N对应全局规划的路径中路径点的数量;
轨迹跟踪器,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1,并将求解得到的速度、角速度序列的前m个值U*:={vi,ωi}i=1,...m,按照控制周期下发给执行器(即机器人底盘处的电机及其驱动模块,功能是将输入的速度与角速度信号转化为电机的转矩);其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1 到路径点i的速度和角速度,n对应求解出的轨迹点数量;
判断模块,用于判断机器人是否到达终点,若到达,则向轨迹跟踪器反馈终止命令;否则,向轨迹跟踪器反馈继续进行轨迹跟踪的命令。
本实施例控制系统中各部分子代价函数与上述实施例中子代价函数表达式相同,最优化规划问题的求解过程与上述实施例中的求解过程相同,此处不再赘述。需要注意的是,本发明控制系统中的上层规划器、轨迹跟踪器可以集成于一个微处理器中,也可以分别配置在两个微处理器中。
本实施例的轨迹跟踪器包括:
建模单元,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi) 代表轨迹序列U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,n对应求解出的轨迹点数量;
计算单元,用于采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1;
传输单元,用于将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给执行器;
本实施例中的计算单元包括:
采样模块,用于在速度/角速度空间中按Δv,角速度空间Δw等间隔采样,将不同的速度与角速度组合起来,模拟机器人在未来T时间内的行进轨迹;
评分模块,用于通过代价函数J对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1。
本发明另一实施例还提供了一种计算机存储介质,其存储有程序,该程序被配置为用于执行本发明实施例方法的步骤。
Claims (10)
1.一种机器人轨迹跟踪方法,其特征在于,包括以下步骤:
1)获取全局路径序列其中,表示全局规划路径在全局坐标系下的第i个路径点对应的横坐标,表示全局规划路径在全局坐标系下的第i个路径点对应的纵坐标,表示全局规划序列在全局坐标系下的第i个路径点对应的航向角,N对应全局规划的路径中路径点的数量;
2)将机器人轨迹跟踪问题构建成最优化规划问题B:={X,U},采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1;其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列;U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,n对应求解出的轨迹点的数量;构建最优化规划问题的具体实现过程包括:
A)构建机器人全局坐标系和机器人运动坐标系,并获取当前机器人在全局坐标系下的位姿xi=(xi,yi,θi),即运动坐标系相对于全局坐标系的位姿;其中,机器人运动坐标系以机器人质心为原点,机器人速度方向为x轴正向,垂直x轴逆时针方向为y轴正向;全局坐标系与大地固连,定义为初始时刻机器人的运动坐标系,即机器人将要开始运动时,以机器人质心为原点,机器人将要行进的速度方向为x轴正向,垂直x轴逆时针方向为y轴正向构建的坐标系;
B)在全局坐标系下,将机器人轨迹跟踪构建成最优化问题,即代价函数B:={X,U};γk包括γpath1、γpath2、γobstacle1、γobstacle2、γgoal、γvelocity,分别对应为各个子代价函数为fpath1、fpath2、fobstacle1、fobstacle2、fgoal、fvelocity的权重,其中,γobstacle1、γgoal、γvelocity为设定的固定权重,γpath1、γpath2、γobstacle2为自适应变动的权重:
domin表示当前位置距离各个障碍物的最小距离,γpath1,min和γpath1,max分别表示权重γpath1的最小值和最大值,γpath2,max和γpath1,min分别表示权重γpath2的最大值和最小值,γobstacle2min表示权重γobstacle2的最小值,Ds为设定的阈值,Kc为设定的参数,a为设定的参数;
fk(B)表示各个子代价函数,各子代价函数具体形式如下:
fpath1=eΓ(dpath,min,rpmax,ε,S,n);
fpath2=dpath,min;
fobstacle1=eΓ(-dp omin,-romin,ε,S,n);
fobstacle2=dp omin;
其中,dpath, min代表求解出的轨迹序列中点与全局路径序列中相应点的距离中的最小值,rpmax代表最大容许跟踪误差;dp omin代表求解出的轨迹序列中点与障碍物距离中的最小值,romin代表求解出的容许机器人靠近障碍物的最短距离;eΓ(b,br,ε,S,n)为约束函数,b代表目标变量,br代表期望目标变量的上限,S、n、ε为人为设定参数;xgoal、ygoal是机器人终点位置坐标,xi、yi是相应的机器人位置坐标,θi是相应的机器人航向角;v代表优化问题求解出的机器人局部轨迹行驶的平均速度;
所述优化问题的约束如下:
0≤vi≤vmax;
-ωmax≤ωi≤ωmax;
其中,ΔT表示机器人控制周期,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,ai,αi分别为机器人从路径点i-1到路径点i点加速度与角加速度,amax,αmax分别为机器人加速度和角加速度的上限;
3)将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给机器人执行器;
4)若机器人到达终点,则停止;否则跳转至步骤2)。
2.根据权利要求1所述的机器人轨迹跟踪方法,其特征在于,步骤2)中,利用所述动态窗口法求解所述最优化规划问题的具体实现过程包括:
I)根据机器人速度/角速度限制Vl1={v∈[0,vmax],ω∈[-ωmax,ωmax]}、加速度/角加速度限Vl2={v∈[v-amaxΔT,v+amaxΔT],ω∈[ω-αmaxΔT,ω+αmaxΔT]},得到机器人速度/角速度空间;
II)在速度/角速度空间中按Δv,角速度空间Δw等间隔采样,将不同的速度与角速度组合起来,模拟机器人在未来T时间内的行进轨迹;
III)通过代价函数J对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1。
3.根据权利要求1所述的机器人轨迹跟踪方法,其特征在于,步骤3)的具体实现过程包括:
A)组合速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m与控制周期ΔT,得到组合后的数据{v1,ω1,ΔT},{v2,ω2,ΔT},...,{vm,ωm,ΔT};
B)将{v1,ω1}下发至执行器,并保持ΔT时间,之后将{v2,ω2}下发给执行器,并保持ΔT时间,以此类推,直至发送完{vm,ωm}。
4.根据权利要求1所述的机器人轨迹跟踪方法,其特征在于,步骤4)的具体实现过程包括:
i)获取机器人当前位置xi=(xi,yi);
ii)将机器人当前位置与目标位置xgoal=(xgoal,ygoal)比较,若位置差在以目标位置为圆心,半径为容许误差的范围内,则结束,否则跳转至步骤2),继续进行轨迹跟踪。
5.一种机器人控制系统,其特征在于,包括:
上层规划器,用于获取全局路径序列其中,表示全局规划路径在全局坐标系下的第i个路径点对应的横坐标,表示全局规划路径在全局坐标系下的第i个路径点对应的纵坐标,表示全局规划序列在全局坐标系下的第i个路径点对应的航向角,N对应全局规划的路径中路径点的数量;
轨迹跟踪器,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数B:={X,U},采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1,并将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给执行器;其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列,U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人的速度和角速度,n对应求解出的轨迹点的数量;
其中,轨迹跟踪器构建最优化规划问题的具体实现过程包括:
A)构建机器人全局坐标系和机器人运动坐标系,并获取当前机器人在全局坐标系下的位姿xi=(xi,yi,θi),即运动坐标系相对于全局坐标系的位姿;其中,机器人运动坐标系以机器人质心为原点,机器人速度方向为x轴正向,垂直x轴逆时针方向为y轴正向;全局坐标系与大地固连,定义为初始时刻机器人的运动坐标系,即机器人将要开始运动时,以机器人质心为原点,机器人将要行进的速度方向为x轴正向,垂直x轴逆时针方向为y轴正向构建的坐标系;
B)在全局坐标系下,将机器人轨迹跟踪构建成最优化问题,即代价函数B:={X,U};γk包括γpath1、γpath2、γobstacle1、γobstacle2、γgoal、γvelocity,分别对应为各个子代价函数为fpath1、fpath2、fobstacle1、fobstacle2、fgoal、fvelocity的权重,其中,γobstacle1、γgoal、γvelocity为设定的固定权重,γpath1、γpath2、γobstacle2为自适应变动的权重:
domin表示当前位置距离各个障碍物的最小距离,γpath1,min和γpath1,max分别表示权重γpath1的最小值和最大值,γpath2,max和γpath1,min分别表示权重γpath2的最大值和最小值,γobstacle2min表示权重γobstacle2的最小值,Ds为设定的阈值,Kc为设定的参数,a为设定的参数;
fk(B)表示各个子代价函数,各子代价函数具体形式如下:
fpath1=eΓ(dpath,min,rpmax,ε,S,n);
fpath2=dpath,min;
fobstacle1=eΓ(-dp omin,-romin,ε,S,n);
fobstacle2=dp omin;
其中,dpath, min代表求解出的轨迹序列中点与全局路径序列中相应点的距离中的最小值,rpmax代表最大容许跟踪误差;dp omin代表求解出的轨迹序列中点与障碍物距离中的最小值,romin代表求解出的容许机器人靠近障碍物的最短距离;eΓ(b,br,ε,S,n)为约束函数,b代表目标变量,br代表期望目标变量的上限,S、n、ε为人为设定参数;xgoal、ygoal是机器人终点位置坐标,xi、yi是相应的机器人位置坐标,θi是相应的机器人航向角;v代表优化问题求解出的机器人局部轨迹行驶的平均速度;
所述优化问题的约束如下:
0≤vi≤vmax;
-ωmax≤ωi≤ωmax;
其中,ΔT表示机器人控制周期,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度,ai,αi分别为机器人从路径点i-1到路径点i点加速度与角加速度,amax,αmax分别为机器人加速度和角加速度的上限。
6.根据权利要求5所述的机器人控制系统,其特征在于,还包括判断模块,用于判断机器人是否到达终点,若到达,则向轨迹跟踪器反馈终止命令;否则,向轨迹跟踪器反馈继续进行轨迹跟踪的命令。
7.根据权利要求5所述的机器人控制系统,其特征在于,各部分子代价函数表达式为:
fpath1=eΓ(dpath,min,j,rpmax,ε,S,n);
fpath2=dpath,min;
fobstacle1=eΓ(-dp omin,-romin,ε,S,n);
fobstacle2=dp omin;
其中,dpath, min代表求解出的轨迹序列中点与全局路径序列中相应点的距离中的最小值,rpmax代表最大容许跟踪误差;dp omin代表求解出的轨迹序列中点与障碍物距离中的最小值,romin代表求解出的容许机器人靠近障碍物的最短距离;eΓ(b,br,ε,S,n)为一个约束函数,其中,b代表目标变量,br代表期望目标变量的上限,S、n、ε为人为设定参数;xgoal、ygoal是机器人终点位置坐标,xi、yi是相应的机器人位置坐标,θi是相应的机器人航向角;v代表优化问题求解出的机器人局部轨迹行驶的平均速度。
8.根据权利要求5所述的机器人控制系统,其特征在于,所述轨迹跟踪器包括:
建模单元,用于将机器人轨迹跟踪问题构建成最优化规划问题,即代价函数B:={X,U};其中,γk代表各个优化目标的权重,fk(B)代表相应的各部分子代价函数;B:={X,U}代表可行解,X:={xi}i=1,...,n,xi=(xi,yi,θi)代表轨迹序列;U:={ui}i=1,...,n-1,ui=(vi,ωi)代表控制量序列,vi,ωi分别为机器人从路径点i-1到路径点i的速度和角速度;
计算单元,用于采用动态窗口法求解所述最优化规划问题,得到局部最优轨迹序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1;
传输单元,用于将求解得到的速度、角速度序列的前m个值Um *:={vi,ωi}i=1,...m,按照控制周期下发给执行器。
9.根据权利要求8所述的机器人控制系统,其特征在于,所述计算单元包括:
采样模块,用于在速度/角速度空间中按Δv,角速度空间Δw等间隔采样,将不同的速度与角速度组合起来,模拟机器人在未来T时间内的行进轨迹;
评分模块,用于通过代价函数J对机器人行进轨迹评分,选出局部最优轨迹对应路径序列X*:={xi,yi,θi}i=1,...n和控制量序列U*:={vi,ωi}i=1,...n-1。
10.一种计算机存储介质,其存储有程序,其特征在于,该程序被配置为用于执行权利要求1~4之一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010410198.6A CN111506081B (zh) | 2020-05-15 | 2020-05-15 | 一种机器人轨迹跟踪方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010410198.6A CN111506081B (zh) | 2020-05-15 | 2020-05-15 | 一种机器人轨迹跟踪方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506081A CN111506081A (zh) | 2020-08-07 |
CN111506081B true CN111506081B (zh) | 2021-06-25 |
Family
ID=71876935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010410198.6A Active CN111506081B (zh) | 2020-05-15 | 2020-05-15 | 一种机器人轨迹跟踪方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506081B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111994169A (zh) * | 2020-09-08 | 2020-11-27 | 北京北特圣迪科技发展有限公司 | 基于位置补偿的独立驱动转向的表演小车运动控制方法 |
CN112092809A (zh) * | 2020-09-15 | 2020-12-18 | 北京罗克维尔斯科技有限公司 | 一种辅助倒车方法、装置、系统及车辆 |
CN112578790B (zh) * | 2020-10-30 | 2022-12-23 | 芜湖哈特机器人产业技术研究院有限公司 | 局部路径规划方法及agv小车 |
CN112650217B (zh) * | 2020-12-03 | 2022-06-28 | 南京理工大学 | 一种基于评估函数的机器人轨迹跟踪策略动态优化方法 |
CN112904719B (zh) * | 2021-01-15 | 2022-08-02 | 哈尔滨工程大学 | 一种适用于水下机器人位置环形区域跟踪控制方法 |
CN113108796B (zh) * | 2021-04-19 | 2023-10-20 | 北京有竹居网络技术有限公司 | 导航方法、装置、存储介质及设备 |
CN113778082B (zh) * | 2021-08-23 | 2023-08-22 | 北京科技大学 | 一种基于自触发机制的无人车轨迹跟踪控制方法及系统 |
CN114089743B (zh) * | 2021-11-01 | 2023-12-12 | 厦门理工学院 | 一种配电室移动机器人的轨迹优化方法 |
CN114167721B (zh) * | 2021-11-08 | 2023-07-25 | 中国民航大学 | 一种载人机器人的线性自抗扰轨迹跟踪控制方法和控制器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914068A (zh) * | 2013-01-07 | 2014-07-09 | 中国人民解放军第二炮兵工程大学 | 一种基于栅格地图的服务机器人自主导航方法 |
CN106647769A (zh) * | 2017-01-19 | 2017-05-10 | 厦门大学 | 基于a*提取引导点的agv路径跟踪与避障协调方法 |
CN110018689A (zh) * | 2019-05-15 | 2019-07-16 | 福州大学 | 一种基于动态窗口的多虚拟目标点全局动态路径规划算法 |
EP3468336B1 (en) * | 2016-06-10 | 2020-04-08 | CNH Industrial Italia S.p.A. | Swath tracking system for an off-road vehicle |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628326B (zh) * | 2018-07-11 | 2020-04-07 | 哈尔滨工程大学 | 一种智能水下机器人运动重规划策略 |
KR20210055038A (ko) * | 2018-07-16 | 2021-05-14 | 악셀 로보틱스 코포레이션 | 자율 매장 추적 시스템 |
US11340610B2 (en) * | 2018-07-24 | 2022-05-24 | Huili Yu | Autonomous target following method and device |
CN110703763A (zh) * | 2019-11-05 | 2020-01-17 | 武汉理工大学 | 无人车路径跟踪及避障方法 |
-
2020
- 2020-05-15 CN CN202010410198.6A patent/CN111506081B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914068A (zh) * | 2013-01-07 | 2014-07-09 | 中国人民解放军第二炮兵工程大学 | 一种基于栅格地图的服务机器人自主导航方法 |
EP3468336B1 (en) * | 2016-06-10 | 2020-04-08 | CNH Industrial Italia S.p.A. | Swath tracking system for an off-road vehicle |
CN106647769A (zh) * | 2017-01-19 | 2017-05-10 | 厦门大学 | 基于a*提取引导点的agv路径跟踪与避障协调方法 |
CN110018689A (zh) * | 2019-05-15 | 2019-07-16 | 福州大学 | 一种基于动态窗口的多虚拟目标点全局动态路径规划算法 |
Non-Patent Citations (4)
Title |
---|
A Hybrid Path Planning Algorithm for Unmanned Surface Vehicles in Complex Environment With Dynamic Obstacles;Zheng Chen; Youming Zhang; Yougong Zhang; Yong Nie; Jianzhong Ta;《IEEE Access》;20190821;第7卷;全文 * |
Chin-Lung Chen;Chih-Chung Chou;Feng-Li Lian.Trajectory planning for human host tracking and following of slave mobile robot on service-related tasks.《2011 IEEE International Conference on Robotics and Biomimetics》.2012, * |
基于激光雷达的室内移动机器人自主导航与行人跟踪研究;郑灿涛;《中国优秀硕士学位论文全文数据库•信息科技辑》;20190115;1-75 * |
融合动态窗口法与A*算法的港口AGV路径规划方法研究;张晓熠;《中国优秀硕士学位论文全文数据库•基础科学辑》;20200215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111506081A (zh) | 2020-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111506081B (zh) | 一种机器人轨迹跟踪方法、系统及存储介质 | |
Dominguez et al. | Comparison of lateral controllers for autonomous vehicle: Experimental results | |
CN110450156B (zh) | 多自由度机械臂系统自适应模糊控制器的优化设计方法 | |
CN109176525A (zh) | 一种基于rbf的移动机械手自适应控制方法 | |
Zha et al. | A survey of intelligent driving vehicle trajectory tracking based on vehicle dynamics | |
CN109857100B (zh) | 一种基于反演法和快速终端滑模的复合轨迹跟踪控制算法 | |
CN104808590A (zh) | 一种基于关键帧策略的移动机器人视觉伺服控制方法 | |
CN108459605B (zh) | 基于agv系统的轨迹跟踪控制方法 | |
CN107966907A (zh) | 一种应用于冗余度机械臂的障碍物躲避解决方法 | |
CN113276848A (zh) | 一种智能驾驶换道避障轨迹规划、跟踪控制方法及系统 | |
CN110789530B (zh) | 一种四轮独立转向-独立驱动车辆轨迹跟踪方法和系统 | |
CN109991934B (zh) | 一种时间最优的在线s型加减速规划方法 | |
Wang et al. | Research on logistics autonomous mobile robot system | |
Chen et al. | An adaptive path tracking controller based on reinforcement learning with urban driving application | |
CN114670191A (zh) | 一种七自由度肘偏置机械臂轨迹规划方法 | |
Zhang et al. | Structured road-oriented motion planning and tracking framework for active collision avoidance of autonomous vehicles | |
Liu et al. | An improved hybrid error control path tracking intelligent algorithm for omnidirectional AGV on ROS | |
CN112650217B (zh) | 一种基于评估函数的机器人轨迹跟踪策略动态优化方法 | |
Farag | Model-predictive-control complex-path tracking for self-driving cars | |
CN116009530A (zh) | 一种自适应切向避障的路径规划方法和系统 | |
CN114378830A (zh) | 一种机器人腕关节奇异规避方法及系统 | |
CN114179818A (zh) | 基于自适应预瞄时间和滑模控制的智能汽车横向控制方法 | |
Khalifa et al. | Vehicles platooning in urban environments: Integrated consensus-based longitudinal control with gap closure maneuvering and collision avoidance capabilities | |
CN112882460A (zh) | 基于模型预测控制的无人驾驶车辆动态避障轨迹规划方法 | |
Dominguez-Quijada et al. | Comparison of lateral controllers for autonomous vehicle: experimental results |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |