点击上方蓝字谈思实验室
获取更多汽车网络安全资讯
为满足自动驾驶行车&泊车过程的纵向控制功能需求,需开发行车功能的纵向控制VLC以及泊车功能的轨迹速度规划TSP,其中,VLC负责将车辆纵向控制的加速度接口ax转化为驱动/制动力Fx(包括前馈控制与反馈控制),TSP进行S-V关系式拟合。
VLC控制算法简介
VLC技术方案简介
控制算法在本处选用LQR,假设通过选取合适的Q及R后,解算得到反馈系数:,进而得到期望加速度:
其中,K及x如上述算法所示。算法模型示意图如下图1所示:
图1 ACC模型及LQR算法示意图
其中,为期望的驱动力矩,为本车的重力,i为道路坡度(纵坡),为空气阻力系数,A为迎风面积,δ为旋转质量换算系数,m为本车质量。
图2 前馈及反馈算法示意图
图3 两车间期望距离及实际距离对比结果图
图4 本车速度及前车速度对比结果图
图5 ACC模型得到的期望加速度与本车实际加速度对比结果图
由图3、4及图5可以得到上述算法在跟驰前车上表现较好,对加速度的跟踪效果尚可。
在纵坡等路段,车辆的加速度传感器能够测得车辆的纵向加速度,但由于坡度的存在,其测量值往往可能存在较大偏差,需要通过滤波算法,对加速度进行重新估计,求得车辆速度、加速度的准确估计后,可根据加速度的测量值和估计值估计得到路面的坡度。
其中,T为采样周期,i为发生打滑的车轮。下一步将4个车轮旋转的当量车速按照从小到大进行升序排列:
(2)建立测量方程:
车辆在当前周期内的行驶速度将使用上述的,加速度则通过加速度传感器(IMU)获得,则测量方程为:
图6 纵向加速度测量
选取V、m、i为状态变量,构建状态空间表达:
在自动泊车场景下,本车周围通常存在许多的障碍物,如:墙壁、立柱、旁边车位停放的车辆等。如何在不发生碰撞的情况下,将车辆自动泊入所选定的车位,是自动泊车中的主要技术点,即路径规划。而在完成了路径规划之后,也需要对其进行相应的速度规划,使得车辆能够安全、高效、舒适的完成自动泊车任务。
从人类驾驶员的经验出发,一般距离障碍物越近时,人类驾驶员往往会选择降低车速,缓行通过,因此,本次TSP纵向速度规划主要是基于上述经验,对泊车过程中的本车速度进行规划。
首先确定边界条件。在规划的初始点,本车与障碍物之间的初始距离为,而本车当前速度,当前加速度;在规划的结束点,车辆成功泊入车位,本车与障碍物的最终距离为,本车规划的速度为。将上述两个边界条件带入三次多项式中,可得:
考虑到上述三个边界条件带入三次多项式曲线后得到的方程组求解的复杂度,在此处通过引入中间变量的方式对其进行变形,以简化求解,提高算法的实时性。通过分析,选取本车从泊车开始累计的行驶距离S作为中间变量,该中间变量与d之间的关系如下式:
将上式带入三次多项式曲线中,可得到以S作为自变量的新的三次多项式曲线,表达式如下:
因此,由三个边界条件所得到的三个约束条件,使得三次多项式曲线的自由变量(系数)只剩下一个,最后将结合优化的方法来求得该系数的最优值,在此处该自由变量为。
对上式两边同时对时间求一阶及二阶导数,可得速度和加速度分别为:
纵向速度优化模型
从舒适性的角度出发,加速度与冲击度应当尽量的小;从效率的角度出发,希望车辆完成泊车任务的时间尽可能的短;因此,在考虑上述目标后,设定目标函数如下:
其中,目标函数中的第一项的物理意义为完成泊车过程所用的时间,即对应效率的目标,第二项及第三项则对应舒适性的目标即平稳泊车的目标。为优化的权重系数。最后将上面的的表达式带入该代价函数,化简可得关于变量的代价函数如下式:
上述代价函数为关于的一元多次函数,目标是找到最优的让代价函数取得最小值。对于一元函数求极值的问题,使用KKT原理是比较有效的方法,因此,对上式关于进行求导,并令该式等于0得到若干个解,最后比较这几个点的函数值即可确定最优的解,而根据的关系也得到,至此所规划的速度曲线已经被唯一确定,完成了TSP纵向速度规划。
在本次的算法测试中初始条件设置为:,最后求得的,完成整个泊车过程的时间为2.286s,带入得到:,的关系图如下图所示:
图7 规划的速度与加速度
上述算法还是较复杂,考虑到其实时求解问题,可将其简化,假设,则简化后关于变量的代价函数如下式:
图8 规划的速度与加速度(可行解1)
图9 规划的速度与加速度(可行解2)