冯绪永, 崔立堃, 王承祥, 杜明明
(陕西理工大学 机械工程学院, 陕西 汉中 723000)
随着汽车工业和交通运输业的不断发展,全球各国汽车保有量不断提高,由此导致城市交通道路堵塞、能源消耗、交通事故等问题。车辆编队行驶可以缩短跟车距离,提高道路容车量,降低由风阻引起的油耗,提高车辆行驶安全性[1],近几年成为学术界的一个研究热点。车辆编队的主要控制方法分为分布式控制和集中式控制,分布式包含人工势场法[2]、基于行为法和领航跟随法[3],集中式控制分为图论法与虚拟结构法[4-5]。智能车辆编队研究内容主要包括队形形成、队形保持等[6]。文献[7]基于虚拟领航者与人工势场相结合的方法实现了车辆编队模型的队形形成。文献[8]针对全向机器人的运动学特点,采用BackStepping方法设计控制器,实现全向机器人的编队控制。文献[9]针对三轮机器人的非线性运动学特点,研究多智能体编队控制问题,基于机器人领航-跟随模型,构造了系统位姿误差运动学方程,将非线性系统编队控制问题改变成跟随者对虚拟领航者运动轨迹的追踪问题。文献[10]采用领航跟随法,利用跟随机器人位姿参数生成虚拟机器人,通过反步法构造对该虚拟机器人的轨迹跟踪控制器,实现车式移动机器人的编队控制。文献[11]基于跟随领航者编队算法,设计了反馈线性控制器;针对传统反馈线性控制器参数存在不确定性的问题,进一步设计了基于变量估计的自适应反馈线性控制器。文献[12]考虑纵-横耦合的车队模型和传感器故障的影响,设计基于LMI的模型预测控制方法实现车队的安全稳定运行。文献[13]在领航跟随的基础上再利用李雅普诺夫稳定性理论设计了一个新的控制器。最后通过实验仿真,验证了所设计的控制器的有效性。文献[14]将参数辨识的自适应控制器和抗干扰的鲁棒控制器相结合,以解决具有不确定参数和外部干扰的主从跟踪问题,通过实例研究验证了车辆编队系统的环境适应性、稳定性和有效性。文献[15]考虑了把四轮车辆编队转变为每辆车对指定路径的跟踪,但在设计控制器时没有考虑到车辆横向控制的不足。
有关车辆编队问题,将车辆编队行驶转变为多车辆协同轨迹跟踪问题的研究比较少见,在传统反馈线性化控制器设计中对车辆横向控制的考虑也有不足,没有考虑纵向误差对横向误差的影响。本文利用虚拟结构法生成编队车辆的期望轨迹,将6辆车编队行驶转变为6辆车协同轨迹跟踪问题;在考虑纵向误差对横向误差影响的情况下设计跟踪反馈控制器,利用李雅普诺夫(Lyapunov)第二法证明该控制器的稳定性,最后基于MATLAB平台利用所设计的控制器对编队车辆跟踪误差进行控制仿真。
对于一组编队车辆,虚拟结构的基本思想是使用一辆编队参考车辆(VRF)行驶的轨迹作为基线,该参考车辆定义了一个虚拟结构的中心,将整个编队表示为一个移动的虚拟结构,并为编队中的车辆生成预定义的路径信息。该路径可以表示为
Γ0(ti)=(xr0(ti),yr0(ti))T,
(1)
式中Γ0(ti)为编队参考车辆(VRF)所走过的轨迹,(xr0(ti),yr0(ti))T为其在惯性坐标系下的位置坐标。
如图1所示,以参考车辆几何中心为原点建立车身坐标系,(xr0,yr0)为参考车辆的车身坐标,汽车前进方向为横坐标正向。当编队参考车辆以期望的速度行驶时,可以通过引入相对于参考车辆车身坐标系原点的偏移向量li(i=1,2,3,…)来生成一组路径,表示为
图1 协同编队的路径设置
(2)
(3)
li为偏移向量,表达式为
(4)
如图2所示,假定车辆是后轮驱动,前轮转向,不考虑路面坡度、轮胎侧偏、前轮最大转角的限制等因素。(x1,y1)为车辆后轴中心点,(x,y)为车辆几何中心点,v为车辆线速度,w为车辆横摆角θ的变化率,d为车辆后轴中心点到车辆几何中心点的距离。
图2 车辆运动学模型
由图2可知
(5)
对式(5)求导可得
(6)
以车身几何中心为参考点建立车辆的运动学模型:
(7)
控制目标:使所有实际车辆i跟踪其指定的虚拟车辆r,且当时间趋于无穷时,跟踪误差尽量小。
车辆间形成固定队形是通过每个实际车辆调整各自的线速度v和角速度w来跟踪虚拟结构中相应的虚拟车辆来实现的。下标f表示跟随车辆,下标r表示虚拟车辆。则第i个跟随车辆与它要跟随的第i个虚拟车辆在车身坐标系下的位姿误差计算公式为
(8)
假设第i辆虚拟车辆的速度为(vri,wri),实际跟随车辆以速度(vf i,wf i)前进。对误差向量公式(8)求微分可得
(9)
跟随车辆与虚拟车辆都满足车辆运动学模型(7),将式(7)、(8)代入式(9),得到跟随车辆与虚拟车辆的位置误差系统模型
(10)
通过设计(vf i,wf i)来使式(10)误差系统趋于最小值。
设计跟随车辆的控制输入(vf i,wf i)为
(11)
式中k1i>0,k2i>0,W为跟随车辆角速度补充项。
将式(11)代入式(10)得到(下面去掉下标i)
(12)
构造系统的Lyapunov函数为
(13)
从式(13)很明显看出V≥0,只有当e1、e2、e3同时等于零时,才有V=0。
对式(13)求导可得
(14)
将式(11)代入式(14)可得
(15)
为了能使系统在出现vr=0时仍然保持稳定,可将式(15)右边放大。在式(15)中用-k4dsine3代替vrsine3,且k4>0,则式(15)经过简单的整理又可变成
(16)
(17)
对C进行放大,得到
(18)
(19)
将式(19)代入式(11),得到所设计的控制器为
(20)
本文在MATLAB环境中对编队行驶的车辆进行编程仿真,以验证所设计控制器的有效性。设置仿真场景为6辆车在正弦道路上行驶。选取6辆车在惯性坐标系下的初始位置分别为
Local1=(8.759 3, 1.688 2),Local2=(6.172 2,-8.072 2),
Local3=(-3.688 2, -10.759 3),Local4=(-10.660 1,-3.579 9),
Local5=(-8.171 1,6.171 1),Local6=(1.688 2,8.759 3),
其初始航向角、初始速度(线速度和角速度)均为零,因为采取六边形编队,所以偏移向量li为
选取基线路径为Γ0(t)=(t,10sin(0.1t))T,参考车辆的线速度与角速度可通过式(2)和车辆运动方程(7)计算得出,计算过程如下:
图3 6辆车编队运动轨迹
经过调试,选取控制器参数k1、k2、k3、k4均为1,设定车辆后轴中心点到车辆几何中心点的距离d为1.8 m,仿真得到6辆编队车辆在60 s内的运动轨迹如图3所示。
从图3可以看出,6辆车根据它们与各自道路线形的位姿误差和虚拟领航车辆的速度信息来控制车辆的线速度与角速度输出,较好地实现了预期的六边形编队队形,编队轨迹较为平缓,编队车辆行驶稳定。其中一辆车的纵向误差、横向误差与航向角误差如图4、图5、图6所示。
图4 路径跟随误差e1 图5 路径跟随误差e2
图6 路径跟随误差e3
从图4—图6看出编队车辆可以很好地以期望的队形行驶,纵向位置误差e1在10 s之内就快速收敛到稳态值;车辆的横向位置误差e2在初始时刻不为0,随着编队车辆在控制器作用下的行驶,在经过1 s左右车辆编队的横向误差相对于平衡点有一个较小的稳态误差;车辆的航向角误差e3非常快速地收敛到稳态值。从误差e2、e3非常快速的响应速度可以看出,车辆的航向角误差与车辆的横向位置误差存在某种关系,当航向角误差趋于稳定值时,若车辆横向位置误差没有达到稳态值,这时就会存在一个稳态的误差,这个误差值是可以通过调整控制器中的参数来尽量达到最小值的。通过上述分析可见,在编队车辆以基线为正弦曲线路径移动的仿真中,车辆可以很好地达到跟踪效果。
本文基于虚拟结构法,规划出了编队车辆的路径信息,基于四轮车辆的运动学模型,在考虑纵向误差对横向误差影响的情况下,设计了满足Lyapunov稳定性的车辆线速度与角速度控制器。通过MATLAB仿真实验证明了该控制器可使编队系统控制误差在较短的时间内收敛到稳态值,6辆车在正弦道路编队行驶场景中较好地实现了预期的六边形编队队形,且在实现编队队形的过程中编队车辆行驶稳定,从而验证了控制器的有效性。