1.一种基于动态窗口与虚拟目标点的避障方法,具体步骤如下:步骤1:预测障碍物运动;
通过利用机器人传感器上反馈的有关障碍物的距离与角度信息预测障碍物的运动;定义在t=ti时刻机器人的坐标为 其前进方向与世界坐标系x轴的夹角为θ(ti);通过机器人的传感器反馈有关障碍的信息为[α(ti) d(ti)];机器人传感器的检测范围为rd;其中,i为正整数,表示机器人处于开始工作后的第i个工作周期;xr(ti)表示t=ti时刻机器人坐标 中的横坐标;yr(ti)表示t=ti时刻机器人坐标 中的横坐标;α(ti)为t=ti时刻机器人的朝向与障碍物之间的角度;d(ti)为t=ti时刻机器人与障碍物的距离;记在t=ti时刻机器人的位置为O,障碍物的位置为A;在t=ti+1时刻机器人的位置为O′,障碍物的位置为A′,障碍物运动矢量为其中 表示由A至O的向量; 表示由O至O′的向量; 表示由O′至A′的向量;定义在t=ti+k时刻下对障碍物A的预测坐标为obsA(ti+k),则:其中,t=ti+k中k为正整数,表示机器人对障碍物的预测是t=ti后,第k个运动周期;
表示由A至A′的向量;
步骤2:生成虚拟目标点;
定义机器人的半径为rr,在t=ti时刻第j个虚拟目标点的坐标其中,m为虚拟坐标点的个数; 为t=ti时刻虚拟目标点VGj的横坐标, 为t=ti时刻虚拟目标点VGj的纵坐标;虚拟目标点VGj的评价函数G1(VGj)为:G1(VGj)=α1heading1(VGj)+β1dist1(VGj) (7),其中 表示机器人和第j个虚拟目标点VGj的连线与机器人和真实目标点连线的角度;
表示虚拟目标点与真实目标点之间的距离;α1与β1为评价函数G1(VGj)的两个可调参数;
最终选择评价函数值最小的VGj作为最优的虚拟目标点;
步骤3:生成动态窗口;
定义机器人的运动学参数为: 其中,υmax与ωmax分别表示机器人的最大线速度与角速度; 与 表示机器人的最大线加速度与角加速度;
accυ与accω表示机器人线速度与角速度的最小分辨率;定义机器人在t=ti时刻的速度为[υr(ti) ωr(ti)],则在t=ti+1时刻下,机器人速度的动态窗口υd为:其中,Δt为相邻时刻间的时间间隔;动态窗口υd的评价函数G2(υ,ω)为:G2(υ,ω)=α2heading2(υ,ω)+β2dist2(υ,ω)+γvelocity2(υ,ω) (11),其中,l为动态窗口υd中备选速度的个数;γk表示第k组来自动态窗口υd的速度下机器人的朝向角与其和目标点连线夹角的角度;ρk表示第k组来自动态窗口υd的速度下机器人与最近一个障碍物的距离;υr(ti)k表示第k组来自动态窗口υd的速度下机器人的速度值;α2,β2与γ为评价函数G2(υ,ω)的三个可调参数;最终选择评价函数值最大的速度[υr(ti+1) ωr(ti+1)]作为机器人在t=ti+1时刻的控制量;
在速度控制量[υr(ti+1) ωr(ti+1)]下,机器人位姿更新如下:当ωr(ti+1)≠0:
当ωr(ti+1)=0:
步骤4:判断是否到达目标位置;
定义机器人在t=ti+1时刻,机器人与目标点的距离为d:其中,xg为目标点的横坐标,yg为目标点的纵坐标;定义dreach判断机器人是否到达目标位置:若d≤dreach,则机器人到达目标位置,结束本避障方法;若d>dreach,则机器人还未到目标位置,需要继续迭代步骤1、步骤2与步骤3,直至d≤dreach。
2.根据权利要求1所述的一种基于动态窗口与虚拟目标点的避障方法,其特征在于,步骤2中,利用m个虚拟目标点 替换真实目标点,并通过评价函数G1(VGj)=α1heading1(VGj)+β1dist1(VGj)选择最优的虚拟目标点。
3.根据权利要求1所述的一种基于动态窗口与虚拟目标点的避障方法,其特征在于,步骤3中,根据对动态障碍物位置的预测 筛选动态窗口 中的
可行速度。