动态环境下移动机器人路径跟踪与避障
王仲民1,刘开旭2
(1天津工程师范学院机械工程学院,天津300222,2大庆师范学院物理与电气信息工程学院,黑龙江大庆163712)
摘 要:采用模糊神经网络并结合模糊逻辑控制的方法,研究在动态环境下移动机器人的在线路径跟踪与实时避障问题。针对移动机器人的运动学模型,依据点与直线问的距离关系设计了移动机器人的路径跟踪算法,提出了一种基于模糊神经网络的移动机器人在线路径跟踪方案,采用改进的BP算法对网络进行学习与训练,利用梯度下降法调整网络的权值与闽值,使其实际输出与期望输出的误差总均方差最小。同时,运用模糊逻辑控制,实现了移动机器人的实时进障仿真实例证实了控制方案的有效性,表明了所提出的跟踪算法与控制方案具有良好的动态路径跟踪与实时避障能力。
关键词:移动机器人;路径跟踪;模糊神经网络;避障
中图分类号:TP 27 文献标识码:A
1引言
路径跟踪是移动机器人最基本和最重要的问题之一,是其完成工作任务所必须具备的自主行为之一。尤其是在动态环境下,移动机器人的路径跟踪更是一个较难解决的问题,它要求移动机器人在行进过程中尽量不要偏离所指定的路径,除非遇到运动的障碍物时不得不绕开行走,但在躲过障碍物后,移动机器人必须回到原路径,直至到达目的地。
目前,关于移动机器人路径跟踪的研究成果很多,多数方法是采用线性反馈控制或非线性反馈控制,不仅需要系统准确的运动学或动力学模型,而且设计复杂、鲁棒性与实时控制效果也不好;基于模糊推理的移动机器人路径跟踪方法,虽然不需要建立系统精确的数学模型,但模糊规则难以面面俱到,且缺乏泛化能力。模糊神经网络是神经网络与模糊理论结合的产物,不但具有广泛的逼近特性,还可实现从输入到输出的任意非线性映射。因此,本文采用模糊神经网络实现了移动机器人的在线路径跟踪,应用模糊逻辑控制实现了移动机器人的实时避障,并通过仿真实验验证丁本文所提出的路径跟踪算法与控制策略的芷确性与有效性。
2移动机器人路径跟踪系统建模
本文针对两轮独立驱动的轮式移动机器人进行研究,随动轮仅在运动过程中起支撑作用,其在运动学模型中的影响忽略不记,分别为移动机器人的平移速度与旋转速度。移动机器人的运动学模型为
因此,只要控制U =[v,w]T,就可以得到当前移动机器人的实时位姿。将移动机器人所跟踪的路径分割成若干路径点,各个路径点间依次连线就构成该路径,利用两点间连线设汁移动机器人的路径跟踪算法,如图1所示。
假设移动机器人沿着4点到B点间的直线运 径跟踪模型的分析,本文采用了一个标准的5层模动,机器人与路径方向的夹角为θ,θ的范围为[-π,π], A点的坐标为A(xa,ya),B点的坐标为B(Xb,yb),移动机器人的当前坐标为P(xp,yp),则4点与B点间的直线方程4为
定义移动机器人偏离路径的距离为d,则根据点到直线的距离公式,得:
为研究问题需要,若机器人在所跟踪路径的上方时,定义d为正;若机器人在其下方,则d定义为负。定义机器人逆时针转动时,θ为正;顺时针转动时,θ为负,若机器人运动方向与路径方向一致时,定义为0.
3基于模糊神经网络的路径跟踪实现
1)糊神经网络(FNN)来实现,结构如图2所示。
de和θe为移动机器人的期望位置,而dr和θr为其实际位置。第一层为输入层,其作用是将输入值传送到下一层。第二层表示输入语言变量的词集,每个神经元代表一种语言变量,表达为一个隶属度函数。第三层和第四层在一起表示模糊控制的规则,其中,第三层用于实现模糊逻辑规则的前件匹配,规则节点完成模糊与运算;第四层表示规则的后件,执行模糊或运算。第五层表示模糊控制的输出,即输出控制信号代表第
四层到第五层间的联接权,其初始值设为1。
用D表示d的模糊变量,用Theta代表日的模糊变量,将D和Th,eta分别划分为5个模糊子集{NB,NS,zo,Ps,PB}={负大,负小,零,正小,正大},具有3个模糊等级{ STOP.SLOW.FAST}={停止,慢速,快速}
w有5个模糊等级:
{NB,NS,z0,PS,PB}={负快,负慢,零,正慢,正快}
隶属度函数本文采用高斯型隶属度函数:
根据图2所示的模糊神经网络结构,通过网络训练与自学习不断调整cji,δij及wij最后一层的连接权(其初始值任意),使得网络的实际输出值
望输出值误差最小。
2)网络学习算法 该模糊神经网络中需要确定的参数主要为cji,δij及wij本文采用附加动量项改进的BP算法对网络进行训练。根据规则学习,利用梯度下降法,通过调整权值和阈值使网络实际输出与期望输出的误差总均方差最小,附加动量项改进BP算法的权值修正迭代过程可以表示为
由于BP算法使误差函数朝负梯度方向下降,因此第k层的网络权值修正公式可表示为
令误差函数为E=(y - P)2/2,其中,r为期望信号,P为实际输出信号,则加入动量项后,得:
同理可以推导出.
4移动机器人避障行为设计
避障是移动机器人必须具备的行为之一。当动态环境信息表明移动机器人接近到障碍物时,其采取的首要的行为就是避障。为了及时获取动态环境中的环境信息,假设装在穆动机器人上的传感器被分为三组,分别用来感知机器人左方、前方和右方的障碍物,移动机器人避障行为的示意图,如图
3所示。
用简单的IF-THEN规则很容易实现避障,在这里不再具体介绍,可见文献[7]。同时,为了使移动机器人很好地在动态环境中完成路径跟踪任务,必须使移动机器人避障行为的优先级高于路径跟踪的优先级。需指出的是,倘若移动机器人仅有这两种行为,则不能判断是否到达目标位置。如果
移动机器人要执行经过若干个指定路径点的路径跟踪,那么其必须要知道何时到达一个路径点,可通过再给移动机器人增加一个目标检查行为,来检查是否已经到达所指定路径的终点,即可解决。
5仿真实验及分析
在仿真实验中,学习步长s取为0. 05,移动机器人起始位置可以任意设定,静态障碍物的数量与位置及动态障碍物的位置由仿真程序随机设定,动态障碍物的运动方向与运动速度是随机的。在计算机仿真过程中,令动态障碍物的运动速度不能大于移动机器人的移动速度,这是因为如果障碍物运动太快,则可能导致移动机器人不能及时躲开障碍物而便二者发生相互碰撞,同时对动态障碍物运动方向的变化也要加以限制,防止其剧烈变化。
在动态环境中的仿真实验结果,如图4所示。
预定的路径为起点到终点间的曲线,移动机器人用一个黑色实心圆表示,空心圆表示移动机器人的运动轨迹。运动障碍物正向移动机器人的预定路径运动,并将封锁机器人的路径,见图(a);当机器人探测到这个障碍物时,急剧右转弯,见图(b)、(c);当移动机器人躲过障碍物后,又迅速回到了预定的路径直至终点,见图(d)。
移动机器人跟踪误差曲线,如图5所示。
6结语
本文针对移动机器人所处的动态环境,利用神经网络来实现模糊推理而构成模糊神经网络控制器,对移动机器人的路径跟踪进行了有效控制,同时采用模糊逻辑控制实现了移动机器人的实时避障。仿真实例结果表明,该方法可以提高移动机器人在动态环境下的路径跟踪能力,成功完成了路径跟踪任务,不仅具有较强的环境适应能力,实时避开静态障碍物和动态障碍物,而且具有模块化的特点,便于系统功能的扩展及智能水平的提高。下一
步,将在移动机器人平台上进行实验研究,进一步验证本文所阐述的控制策略与方法的有效性。
|