本发明涉及自动驾驶领域,具体地涉及自动驾驶跟车方法。
背景技术:
在自动驾驶过程中,自动驾驶车辆遇到前方运动车辆时,需要安全快速地跟随前车。
当前主流自动跟车方法,都采用了取用户设定的最高车速、道路曲率限速以及根据最大纵向加速度、最大纵向减速度和安全距离计算得到的最大速度中值最小的速度作为自动驾驶的跟车速度。这样做具有以下缺陷:
1、当自动驾驶车辆开始变速时,如果距前车的距离较近,则会导致自动驾驶车辆加速较慢,进而使得从车辆开始变速到稳定跟车的行驶距离会拉长。
2、当前车速度变化频率较高时,从车辆开始变速到稳定跟车的较长行驶距离,会导致自动驾驶车辆在部分工况下无法达到稳定速度。
当前也有少数研究其他跟车算法,并纳入了诸如安全、动力、舒适等多评价指标,虽然能一定程度上弥补传统跟车方法的不足,但多采用模糊分析、深度学习等非规则化逻辑,算法运算量大,实时性较差,不适于实际应用场景,尤其是高速跟车变速的需求。
技术实现要素:
本发明针对上述问题,提供自动驾驶跟车方法,能够在较短时间内稳定到与前车相同的车速,且保持设定的安全时距;能够较为稳定舒适地跟车。
为解决上述问题,本发明提供的技术方案为:一种自动驾驶跟车方法,适用于缩短从车辆开始变速到下一次稳定跟车的行驶距离,包含以下步骤:
s100、获取当前车速、前方障碍物速度和前方障碍物离当前车辆的距离;
s200、计算期望速度,然后输出给执行系统;所述期望速度按下式计算:
当s>0时,
vp=α*vf+(1-α)*vlimit1
当s<=0时,
vp=min{max{vf-velocity_reduced_value,0},vlimit1}
其中,vp为期望速度;vf为前方障碍物速度;velocity_reduced_value为小于安全时距时速度降低值,是人工预置的常量;vlimit1为设定的最高车速,是人工预置的常量;α为障碍物对最大速度的影响权重;所述障碍物对最大速度的影响权重是障碍物的速度在由本方法计算得到的自动驾驶车辆期望速度中所占的比例,按下式计算:
α=min{dsafe/sf,1}
其中,sf为前方障碍物离当前车辆的距离;dsafe为安全距离,按下式计算:
dsafe=max{动态最小安全距离,安全时间*v0}
其中,v0为当前车速;安全时间和动态最小安全距离是人工预置的常量;所述最大速度是自动驾驶车辆被允许行驶的速度上限,是人工预置的常量;
s为变速距离,按下式计算:
s=sf–dsafe
其中,sf为自动驾驶车辆到前方障碍物的距离;
s300、计算期望加速度,然后输出给执行系统;具体包括以下步骤:
s310、计算变速时间;
s320、计算期望加速度;
s330、对期望加速度进行限制性优化;
s340、输出优化后的期望加速度到执行系统;
s400、执行系统根据期望速度和期望加速度,对电子加速器发出加速指令,对电子减速器发出减速指令,调整车辆的加速度为期望加速度,并以期望速度进入终点后保持期望速度并匀速运行。
优选地,所述变速时间按下式计算:
t=max{s/[(v0+vp)/2],1}。
优选地,所述期望加速度按下式计算:
ap=(vp-v0)/t
其中,ap为期望加速度。
优选地,所述对期望加速度进行限制性优化按下式计算:
ap=max{min{ap,accmax_lon},-decmax_lon}
其中,accmax_lon为最大纵向加速度,是人工预置的常量;decmax_lon为最大纵向减速度,是人工预置的常量。
本发明与现有技术对比,具有以下优点:
1、当前车加速或减速到某个稳定车速时,自动驾驶车辆能够在较短时间内稳定到与前车相同的车速,且保持设定的安全时距。
2、期望加速度变化率平缓,能够较为稳定舒适地跟车。
附图说明
图1为本发明的具体实施例的流程图。
图2为本发明的具体实施例的跟车距离对比图。
图3为本发明的具体实施例的车速对比图。
图4为本发明的具体实施例的行驶距离对比图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
本实施例的工况参数为:前方车辆初始速度为0km/h,当前车辆的初始速度为0km/h,初始时刻当前车辆与前方车辆的距离为10m,前方车辆起步加速度为1.51m/s2。前方车辆的目标速度为60km/h,前方车辆速度稳定后的加速度扰动为±0.15m/s2。
本实施例的预设数值为:最大纵向加速度参数accmax_lon为1m/s2、最大纵向减速度参数decmax_lon为5m/s2、设定的最高车速vlimit1为70km/h、动态最小安全距离为2m、安全时间为2s、小于安全时距时速度降低的值velocity_reduced_value为0.556m/s;此外处于安全考虑,预设控制指令响应延时100毫秒。
如图1所示,一种自动驾驶跟车方法,适用于缩短从车辆开始变速到下一次稳定跟车的行驶距离,包含以下步骤:
s100、获取当前车速、前方障碍物速度和前方障碍物离当前车辆的距离。
s200、计算期望速度,然后输出给执行系统;具体包括以下步骤:
s210、计算安全距离,按式(1)计算:
dsafe=max{动态最小安全距离,安全时间*v0}(1)
其中,dsafe为安全距离,v0为当前车速;安全时间和动态最小安全距离是人工预置的常量。
s220、计算变速距离,按式(2)计算:
s=sf–dsafe(2)
其中,s为变速距离;sf为自动驾驶车辆到前方障碍物的距离。
s230、计算障碍物对最大速度的影响权重,按式(3)计算:
α=min{dsafe/sf,1}(3)
其中,α为障碍物对最大速度的影响权重;sf为前方障碍物离当前车辆的距离;
s240、计算期望速度;所述期望速度按式(4)或(5)计算:
当s>0时,
vp=α*vf+(1-α)*vlimit1(4)
当s<=0时,
vp=min{max{vf-velocity_reduced_value,0},vlimit1}(5)
其中,vp为期望速度;vf为前方障碍物速度;velocity_reduced_value为小于安全时距时速度降低值,是人工预置的常量;vlimit1为设定的最高车速,是人工预置的常量;
s300、计算期望加速度,然后输出给执行系统;具体包括以下步骤:
s310、计算变速时间;所述变速时间按式(6)计算:
t=max{s/[(v0+vp)/2],1}(6)
s320、计算期望加速度;所述期望加速度按式(7)计算:
ap=(vp-v0)/t(7)
其中,ap为期望加速度。
s330、对期望加速度进行限制性优化;所述对期望加速度进行限制性优化按式(8)计算:
ap=max{min{ap,accmax_lon},-decmax_lon}(8)
其中,accmax_lon为最大纵向加速度,是人工预置的常量;decmax_lon为最大纵向减速度,是人工预置的常量。
s340、输出优化后的期望加速度到执行系统。
s400、执行系统根据期望速度和期望加速度,对电子加速器发出加速指令,对电子减速器发出减速指令,调整车辆的加速度为期望加速度,并以期望速度进入终点后保持期望速度并匀速运行。
将本实施例的工况参数和预设数值带入本发明的方法,并对比现有技术,可以得如表1所示的跟车距离对比结果。根据表1可以得到图2,很明显可以看到,采用本发明方法的自动驾驶车辆的跟车距离一直小于使用现有技术的自动驾驶车辆。
表1跟车距离对比表
将本实施例的工况参数和预设数值带入本发明的方法,并对比现有技术,可以得如表2所示的速度对比结果。根据表2可以得到图3,很明显可以看到,采用本发明方法的自动驾驶车辆早于使用现有技术的自动驾驶车辆达到最高速度,亦即跟车时的变速时间更短,相较现有技术更早完成跟车操作。
表2车速对比表
将本实施例的工况参数和预设数值带入本发明的方法,并对比现有技术,可以得如表3所示的行驶距离对比结果。根据表3可以得到图4,很明显可以看到,采用本发明方法的自动驾驶车辆的行驶距离比使用现有技术的自动驾驶车辆几乎没有变化;又由于跟车距离总小于使用现有技术的自动驾驶车辆,因此本发明方法的稳定性更好。
表3行驶距离对比表
以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。