APP下载

基于风险评估的自主车辆主动避障预测控制

2022-01-26

浙江工业大学学报 2022年1期
关键词:前轮转角障碍物

(浙江工业大学 信息工程学院,浙江 杭州 310023)

国家统计局统计数据显示,2011—2019年我国平均每年有约6万人死于交通事故[1]。被动安全解决方案,例如安全带和安全气囊,已成为减少死亡人数的标准车辆功能[2]。现代车辆具备传感、计算和执行功能,可安装主动安全系统,即高级驾驶员辅助系统,例如自适应巡航控制[3-4]和车道保持系统[5]。自动驾驶车辆无需人为干预,可以显著减少因为驾驶员认知错误或操作不当引起的事故。目前,针对为自动驾驶车辆规划安全无碰撞路径的研究较多,其中模型预测控制算法(Model predictive control, MPC)在处理车辆多约束问题上具有一定的优势。Gao等[6]提出两种MPC算法解决方案:第1种方案为分层MPC,上层进行轨迹规划,下层进行跟踪控制;第2种方案为单层MPC方案,将避障问题转化为一个非线性MPC优化问题,轨迹规划通过将包含障碍物信息的避障函数作为MPC目标函数优化项实现。这两种解决方案都是基于控制层面的安全避障方法。同样Funke等[7-8]也通过构造包含障碍物信息的惩罚函数,在自动驾驶车辆全局路径不变的情况下,为出现障碍物的路段重新规划轨迹。Gao等[9]将避障函数作为MPC的约束来实现避障,在避开障碍物的同时也兼顾了不碰撞到道路边界,使车辆轨迹更趋于实际场景应用。这些方法由于参考路径的预定义特性,无法应用于涉及多个不同障碍或更复杂的情况。

随着智能交通系统的发展,越来越多的汽车通过车对车(V2X)通信技术连接到互联网,让自主车辆与其他车辆(V2V通信)、道路基础设施(V2R通信)和行人(V2P通信)等交换数据。大量数据的传输和获取变得更加便利,这给车辆避障系统带来新的机遇,同时衡量车辆行驶环境及其动态变化趋势的安全程度也成为新的问题。Chen等[10]使用卡尔曼滤波器模型来预测车辆行驶轨迹及其运动状态,再基于两车速度和位置建立新型碰撞概率模型对车辆碰撞的可能性进行风险评估,但该风险评估模型只能应用于典型的十字交叉路口场景;Chen等[11-14]基于两车相对位置、速度和车辆运状态对车辆行车风险进行描述,然而该类行车安全模型过于片面,无法反映车辆与交通环境的相互作用,也无法处理动态变化的行车环境;Wolf等[15-18]将人工势场(Artificial potential field, APF)应用于车辆,把车辆的行驶环境看作势能场,用该位置处势场的大小量化车辆行车风险;Huang等[19-20]利用MPC优化算法来规划基于APF的局部路径,并通过仿真验证该方法能在多种场景下实现动态避障;陈虹等[21]将人工势场与MPC结合,解决城市交通环境下避障系统的车辆局部路径规划问题;同样Rasekhipour等[22-24]利用两物体之间的间距(Signed distance, SD)构建势场函数,并利用MPC优化算法完成自主车辆轨迹规划与跟踪控制。MPC以滚动时域优化的方式解决自主车辆轨迹规划与跟踪控制中多任务、多目标的问题,同时考虑车辆在行驶过程中环境状态的更新。综上,选择MPC算法解决本研究的路径规划问题。目前,关于车辆路径规划的研究集中在两辆车的碰撞预警和回避策略上[25-27],侧重于获得安全有效的避障路径。由于现实世界存在诸多不确定因素,完全避免交通事故是不现实的。因此,在交通事故不可避免的情况下(如转向空间不足、突然出现障碍物和传感器测量错误等),控制算法应该能够识别出碰撞不可避免的情况,并且规划出碰撞损失最小的路径,从而尽量降低碰撞损失以及保障乘车人员的生命安全。从人工势场出发,将行车环境抽象为势能场,利用势场函数进行碰撞风险评估,并采用规避操作避开即将发生的碰撞,同时在碰撞不可避免的情况下尽量降低碰撞损失。为体现势场函数功能,统一称之为风险评估函数。将笔者所提方法在高保真CarSim车辆模型上进行仿真,以验证方法的有效性。

1 车辆模型

1.1 车辆动力学模型

选取车辆二自由度自行车模型作为车辆动力学模型[28-29],其动力学方程为

(1)

式中:u,v,r分别为车辆质心处的纵向速度、横向速度和横摆角速度;Fx为车辆总纵向轮胎力;Fyf,Fyr分别为前、后轮侧向力;Iz为车辆绕z轴的转动惯量;m为车辆的质量;lf和lr分别为车辆质心到前、后轴中心的距离。

将车辆位置转化至全局坐标系可得

(2)

式中:X,Y分别为车辆在全局坐标系下的横向位置和纵向位置;φ为车辆横摆角。

由于在行驶过程中,车辆滑移角及前后轮侧偏角都接近于0°,因此在计算车辆轮胎力的过程中采用小角度近似,即假设cosθ≈1,sinθ≈θ,tanθ≈θ,其中θ表示各个角。在前后轮轮胎侧偏角和滑移率均较小的情况下,轮胎力可以用线性轮胎模型近似描述,即

(3)

式中:Cyf,Cyr分别为前、后轮侧偏刚度;αf,αr分别为前、后轮侧偏角;δf为前轮转角。

联合式(1~3)可得车辆非线性动力学方程为

(4)

考虑车辆非线性动力学模型式(4),定义状态量x=[φ,u,v,r,X,Y]T和控制量u=[δf,ax]T,得到状态方程为

(5)

为了便于利用计算机进行求解,需要对连续时间的状态方程式(5)进行离散化。采用零阶保持器进行离散化,得k+1时刻预测方程为

x(k+1)=x(k)+Tsf(x(k),u(k))

(6)

式中Ts为采样时间。

1.2 车辆约束

由于车辆的转向系统存在饱和现象,前轮转角存在一定限度,前轮转角也与舒适性相关,因此前轮转角δf需要满足约束条件

δf min≤δf≤δf max

(7)

式中:δf min,δf max分别为车辆最小前轮转角和最大前轮转角。

车辆转向系统执行转向动作的速度Δδf在实际情况下不能无限增大,并且过大的转角变化速度会对车辆的机械结构造成一定程度的破坏,剧烈的转向也可能会对乘车人员造成伤害,因此前轮转角变化率应满足约束条件,即

Δδf min≤Δδf≤Δδf max

(8)

式中:Δδf min,Δδf max分别为车辆最小前轮转角变化量和最大前轮转角变化量。

限于车辆动力系统的性能,车辆纵向加速度ax和纵向加速度变化量Δax也有一定的上限,同时加速度及其变化量与乘车人员的舒适性、心理感受及车辆燃油经济性相关,故车辆纵向加速度及其变化量应满足约束条件

ax min≤ax≤ax max

(9)

Δax min≤Δax≤Δax max

(10)

式中:ax min,ax max分别为车辆最小加速度和最大加速度;Δax min,Δax max分别为车辆最小加速度变化量和最大加速度变化量。

同理,质心侧偏角β=v/u是车辆稳定性的重要体现,较大的质心偏角往往意味着较低的车辆稳定性,为保证车辆的正常行驶,需要限制车辆的质心偏角,质心偏角应满足

βmin≤β≤βmax

(11)

式中:βmin,βmax分别为车辆最小质心偏角和最大质心偏角。

2 主动避障滚动优化控制器设计

设计的控制器需要解决以下多目标控制问题:保证车辆稳定性、提升乘车人员舒适性、考虑车辆燃油经济性以及避免发生碰撞或减小碰撞损失。为了满足这些控制目标,将车辆控制性能指标、舒适性指标、燃油经济性指标以及碰撞风险系数指标加入到MPC优化问题中,并实时在线计算得到车辆纵向加速ax和车辆前轮转角δf。在MPC相关的前期工作中,轨迹规划和跟踪控制两个问题已被统一为组合规划控制[20]。

2.1 行车风险评估

车辆行驶是一个复杂的动态过程,为了完成驾驶任务,车辆控制器需要根据时刻变化的交通场景自适应地输入合适的控制量。行车风险场可以揭示行车环境与自主车辆之间的关系,预测由于环境变化而产生的行车安全变化趋势。基于Chen等[10]将行车风险场分为可跨越障碍风险场Ucrossable、不可跨越障碍风险场Unon-crossable和道路风险场Uroad3部分,即

(12)

式中:Ucrossable,i为第i个可跨域障碍物风险场;Unon-crossable,j为第j个不可跨越障碍物风险场;Uroad为道路风险场。

2.1.1 可跨越障碍风险评估

人们在正常驾驶车辆过程中,若遇到小型坑洼路面或小型垃圾等对行车影响不大的障碍物,一般不会为了避障而紧急制动或大幅度调节车辆转角,因此即使越过这类障碍物也不会对乘客和车辆造成不利影响。采用高斯函数来描述这类障碍物风险场[30],即

(13)

式中:Ucrossable,i为可跨越障碍物的风险;Ac为可跨越障碍物风险场幅度系数;Di,Li分别为车辆与障碍物之间的纵向距离和横向距离;σcd,i,σcl,i分别为可跨越障碍物的纵向影响范围参数和横向影响范围参数。风险场的最大值可以通过幅度系数Ac调节,幅度系数越大表明障碍物的危险系数越高,同时可以通过调节系数σcd,σcl适当增大或减小障碍物风险场对自主车辆的影响范围。

2.1.2 不可跨越障碍风险评估

不可跨越障碍整体风险场可以认为是纵向风险在横向上的延伸。根据障碍物的形状不同,用不同大小的矩形来表示不同障碍物。风险场在横向和纵向上分布并不均匀,横向上车辆的相对速度很小,风险大小主要与相对距离相关;纵向风险除了考虑车辆相对距离,还要考虑车辆相对速度和绝对速度,当车辆相对速度较大时,车辆进行换道或降低车速至与障碍车车速相同所需的安全距离显然会变大。

以障碍车辆为例对不可跨越障碍物进行说明,障碍车势场分布如图1所示。以障碍车车尾中点为原点建立车身坐标系,并以y轴为分界线将二维平面分为α和β两个部分。同时,分别在障碍车前后增加矩形安全区域和三角形安全区域,三角形区域可以有效引导车辆换道,矩形区域则保证自车在回到原车道时与障碍车之间有足够的安全距离。安全距离S=τVr+Smin,其中τ为传感器采样时延;Vr为自主车辆与障碍之间的相对速度;Smin为最小安全距离。障碍前方安全距离s=ξV+Smin,其中参数ξ与障碍车辆速度V正相关。

图1 障碍车势场分布Fig.1 Risk field distribution of vehicles as obstacles

不可跨越障碍物风险评估函数定义[19]为

(14)

式中:Dj为车辆到障碍后方安全区域顶点的纵向距离;Lj为障碍与车辆之间横向距离;σlong,j,σlater,j分别为纵向和横向风险场影响系数;Anon-crossable为风险场幅度参数;常数Along为β区域内的风险场最大值。

2.1.3 道路风险评估

道路风险场由道路边界风险场Uboard和分道线风险场Ulane组成,道路边界风险场用于将车辆约束在道路内部,分道线风险场使得自主车辆在正常行驶时靠近车道中间而非横跨两条车道。道路风险评估函数为

(15)

式中:Aboard为道路边界风险幅度参数;yboard,m为第m条道路边界线,m∈{1,2};Alane为分道线风险幅度参数;ylane为分道线的横向位置;σlane为分道线横向影响范围参数。

2.2 避障控制

通过集成轨迹规划目标扩展非线性MPC方法,从而形成组合规划与控制的概念。将表征车辆行车风险的风险评估函数纳入非线性MPC优化问题中,即

(16)

式中:Np为预测时域;•(k+i|k)为变量•在时刻k对未来时刻k+i的预测值;e(k+i|k)为当前纵向速度预测值v(k+i|k)与期望速度vdes的偏差;Δu(k+i|k)=u(k+i|k)-u(k+i-1|k)为相邻时刻控制量增量;xd为目标点纵向位置;正定矩阵Q,R,S,W分别为目标函数中各项的权重。式(16)中,除表征行车风险的风险评估函数U外,还包含使车辆尽可能以期望速度匀速行驶的车速跟踪项e、表征舒适性和燃油经济性[31]的控制量增量Δu以及保证轨迹规划与跟踪控制稳定性的终端惩罚函数项。由上述目标和约束构成自主车辆主动避障控制优化问题,即

(17)

2.3 碰撞缓解

最后转向点一般位于最后制动点之后,仅进行制动干预只能缓解碰撞,而自动驾驶车辆执行转向操作可以避免大多数碰撞。然而,即使车载传感器运行正常并且数据传输网络通讯情况良好,车道上也可能会突然出现障碍物导致碰撞不可避免,因此为减小碰撞损失,控制器需要能够处理障碍物突现的情况。碰撞损失函数用于描述碰撞发生时造成的损失大小,并结合MPC算法为自主车辆规划出碰撞损失最小轨迹。

2.3.1 最后转向点

最后转向点是指仅靠方向盘就可以避免碰撞发生的最大纵向位置,当车辆超过该位置时便无法通过操作方向盘避免碰撞[32]。将自动驾驶车辆与行驶环境中不可跨越障碍物(如行人、动态车辆等物体)之间的最小转向点作为MPC控制器的切换机制参考数值。当相对距离小于该值时,车辆无法通过转向或制动避开障碍物,此时控制器将结合碰撞损失函数进行车辆运动规划。最后转向点de定义为

(18)

式中:Δv为相对速度;Sy为避开障碍物所需的最小横向偏移量;ay为最大横向加速度。

2.3.2 碰撞损失函数

碰撞损失函数描述在碰撞不可避免的情况下,车辆与障碍物发生碰撞时造成的损失大小。实际交通数据显示:碰撞损失大小与碰撞对象的属性相关[32]。障碍物的质量越大,发生碰撞时自车的损毁程度也越大,可以简单用物体与自车的质量比来描述质量对碰撞损失的影响;碰撞双方相对速度越大,碰撞损失也越大,可以用速度比来描述相对速度的影响;碰撞双方的距离显然也需要考虑在内,同样采用距离之比进行描述。综上,结合质量、速度和距离,定义自动驾驶车辆与物体i之间的碰撞损失函数,即

(19)

式中:Δv0为车辆在到达最后转向点时与物体i的速度差;在类型Ti值的确定上,选择一种类型的对象作为标准,并将其T值设置为1,对于其他类型的物体,其T值为该类型物体的平均损失与标准类型的平均损失之比。将碰撞不可避免情况下与自动驾驶车辆发生碰撞的物体类型归纳为静止不可跨越障碍物、动态车和行人3 类。

2.3.3 碰撞损失最小控制器

碰撞损失函数描述自车与物体的碰撞损失,为了达到最小碰撞损失的目的,将碰撞损失函数加入MPC的目标函数中,同时为了更好发挥车辆避障性能,取消优化目标中车辆的跟踪性能项和向目标点前进的优化项。将乘客舒适性指标考虑在内,则是因为当车辆进行急减速和大幅度转弯时,车辆状态速度改变过快不仅会造成乘客的不适,还可能危及乘客的生命安全。

综上,碰撞损失最小控制器的优化目标函数定义为

(20)

式中P为损失函数项的权重系数。

自主车辆紧急避障时也无法违反车辆的硬件约束及动力学约束,结合式(20)构建优化问题,即

(21)

2.4 切换机制

车辆行驶环境复杂多变,控制器的目标是保证车辆安全经济行驶,一旦发生紧急情况,车辆首先应当进行避障控制,若无法避开障碍物则应当尽量降低碰撞损失。在对该问题的具体研究中,考虑了式(16,20)两种不同的优化目标。在车辆正常行驶时,MPC控制器的优化目标由环境风险场、车辆跟踪目标、车辆燃油经济性、乘客舒适性以及目标点驱动组成,即优化目标选取式(16);当车辆即将发生碰撞或碰撞不可避免时,MPC控制器的优化目标则是在保证乘车人员生命安全的前提下最小化碰撞损失,因此不考虑跟踪项和目标点驱动项,此时优化目标选取式(20)。

当自车超过最后转向点之后,即使对车辆进行最大程度的避障操作也无法避开障碍物,而若车辆在最后转向点之前便将MPC算法切换为损失最小控制器,那么车辆就可以提前进行紧急避障从而避免碰撞。为了使MPC算法提前切换到损失最小控制器,定义切换位置为

d=μde

(22)

式中:μ为切换系数,μ>1。为了保证车辆在正常超车时控制器不会突然切换到损失最小控制器,以及在道路上突现障碍物时控制器能够及时切换到损失最小控制器,要求切换系数μ的取值不能太大,也不能太小,经过多次仿真实验确定,一般取μ=1.3。若障碍物突现时两者之间的距离已经小于最小转向点,控制器将直接切换到最小损失控制器。

结合优化目标式(16,20)以及控制器切换机制,构建优化问题,即

(23)

式中:当D>d时,N=1;当D≤d时,N=2(D为自车与障碍物之间的距离)。

3 仿真与结果分析

仿真使用的车辆模型参数来自CarSim中C级掀背车模型,车辆模型相关参数及控制器相关参数见表1。控制算法中的优化问题通过调用Matlab中函数fmincon进行求解,fmincon函数可以求解带约束的优化问题,满足笔者算法需求。MPC控制器预测时域Np取15,采样时间取100 ms,实际控制算法的平均求解时间为60 ms,满足实时性要求。下面就当车道上突然出现障碍物时,对是否采用笔者提出的主动避障控制器进行避障效果仿真对比。

表1 车辆及控制器参数Table 1 The parameters of vehicle and controller

假设车辆所在道路为平直的单向双车道,初始位置为右车道中心,即初始坐标为(0,-2),并以10 m/s 的速度沿x轴正向行驶。当车辆行驶至x=13 m时,车辆正前方17 m,即位置(30,-2)处突然出现了一个不可跨越障碍物,在当前情况下,车辆无法通过传统的路径规划与避障算法避开障碍物。由于不可跨越障碍物的类型对仿真效果影响不大,仿真用障碍车来表示不可跨越障碍物。

应用传统MPC算法进行避障控制得到的车辆轨迹如图2所示。图2中两条实曲线表示车辆实际行驶轨迹的左右两侧,轨迹内部实心圆点的密度表示车辆的行驶速度;位于坐标(30,-2)处的矩形表示突然出现的障碍车辆;横向虚线表示当自主车辆行驶到该位置时,前方障碍车辆突然出现,其位置为x=13 m。

图2 传统MPC算法规划路径Fig.2 Path planning by traditional MPC

车辆状态与控制量的变化曲线如图3所示。由于车辆车速较快,避障距离过小,且在避障过程中没有明显减速迹象,前轮转角在经过短暂的变大之后便逐渐减小,车身在到达障碍物位置时横向位置太小,最终导致车辆未能完全避开障碍物。

图3 传统MPC状态与控制量变化曲线Fig.3 Control input and state profiles with traditional MPC

应用笔者提出的切换MPC算法进行避障控制得到的车辆轨迹如图4所示,在障碍物突然出现后,自主车辆显然执行了更强的避障动作,并且车速显著下降。切换MPC算法得到的车辆状态与控制变量的变化曲线图如图5所示。切换至损失最小控制器后,自主车辆纵向速度迅速下降,前轮转角迅速增加至约束上限,与此同时,车辆横摆角在大角度前轮转角下持续增加直至避开障碍物。

图4 切换MPC规划路径Fig.4 Path planning by switch MPC

图5 切换MPC状态与控制量变化曲线Fig.5 Control input and state profiles with switch MPC

图2中:自主车辆在障碍物突然出现之后依然采用传统MPC控制器,控制器在进行紧急避障规划时,算法的优化目标中仍然存在速度跟踪项、舒适性指标和目标点驱动项。传统MPC控制器在车辆正常行驶时使车辆尽可能地以恒定的期望速度行驶,并且兼顾乘客的舒适性、燃油经济性等。但是当障碍物突现,自主车辆需要进行紧急避障时,这些优化项便严重制约了车辆的紧急避障性能。图3(a)中:自主车辆在进行紧急避障时其纵向速度基本没有变化,纵向加速度也基本为零,过快的车速导致避障时间变短。图3(b)中:虽然自主车辆前轮转角在障碍物出现的下一时刻便开始增大,但是其变化速度不够快,也没有持续足够长的时间。图3(c)中:车辆横摆角的增大速度和范围均较小,自主车辆未能完全避开障碍物。

图4中:横向虚线表示障碍物突现时自主车辆的位置,横向实线表示自主车辆的状态切换位置,由于障碍物突现,并且距离自车位置较近,自主车辆的当前位置已经超过控制器切换位置,因此当障碍物突现,切换MPC控制器立即切换到了损失最小控制器。

结合图5(a),在切换到损失最小控制器之后,车辆行驶速度迅速下降,制动加速度以车辆的物理约束极限值迅速增大,并且在车辆速度降到足够低之前保持最大制动加速度。纵向车速的迅速下降为自主车辆在横向上进行避障争取到了足够的时间。图5(b)中:自主车辆的前轮转角在障碍物突现的第一时间迅速变大,并且在避开障碍物的过程中始终保持在最大值;与此同时,车辆横摆角以恒定的速度变大,直到完全避开障碍车辆。当自主车辆位于x=25 m,t=2.5 s附近时,结合车辆轨迹及横摆角可知车辆已完全避开障碍物。此时为避免撞上左侧道路边界,如图5(b)所示控制器输入的前轮转角开始迅速减小,车辆横摆角开始减小,当车辆横摆角降为0时,车身仍在道路范围。在x=40 m时自主车辆成功避开障碍物和道路边界,之后回到右侧车道正常行驶,整个避障过程结束。

在整个切换MPC控制器控制下的自主车辆紧急避障过程中,为了实现最大程度上的避障或最小化碰撞损失,车辆的制动加速度、前轮转角、前轮转角变化量和车辆横摆角均达到车辆的物理约束极限,自主车辆的避障性能得到充分发挥。而传统MPC控制器在控制车辆进行紧急避障控制时,虽然考虑到了乘客舒适性和车辆平稳性,但却不能避开障碍物,最终与障碍物发生碰撞,造成更大的损失。

4 结 论

基于模型预测控制,提出了一种切换MPC自主车辆主动避障控制方法。采用二自由度车辆动力学模型作为算法的预测模型,实现对自主车辆横纵两个方向的控制。用障碍物风险场来评估不同障碍物对自主车辆的影响,并将风险场加入到模型预测控制算法的优化目标函数中,以此实现自主车辆的轨迹规划与跟踪控制。定义碰撞损失函数,根据车辆紧急避障的需求设计碰撞损失最小控制器。结合车辆风险场定义车辆最小转向点,并以此建立两个优化目标之间的切换机制,从而保证车辆的正常行驶以及在突发情况下进行紧急避障。仿真实验验证了笔者所提方法的有效性。

猜你喜欢

前轮转角障碍物
玩转角的平分线
基于ANSYS分析的前轮油缸销轴改进
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
三次“转角”遇到爱
永春堂赢在转角
前轮和后轮
下一个转角:迈出去 开启“智”造时代
农用运输车前轮“摆头”故障排除方法
拆前轮不蹭碟