2021-01-13

PanoSim使用心得

在完成智能网联课程作业TJP过程中使用了Panosim与Simulink联合进行仿真设计,首先在Panosim中搭建场景、放置车辆、加载传感器,然后使其运行生成Simulink模型,再在Simulink中搭建自己的控制模块,然后保存。通过在Panosim中的仿真效果调试自己的Simulink模型,最终实现功能。

第一章主要针对 TJA 系统进行综述,简要介绍了 TJA系统的产生原因、发展情况并阐述本课题研究的意义。
第二章对Panosim的仿真环境和所使用传感器进行介绍。
第三章结合Simulink搭建的算法框图对 TJA 系统的主要控制策略进行研究。首先简要介绍决策层的整体架构,再对相关的控制策略进行设计,主要包括对车辆的纵向控制和横向控制。 第四章主要介绍了仿真结果及分析。
第五章得出结论并提出进一步研究或探讨的部分。

1前言
1.1 TJA系统概述

传统的自适应巡航系统(ACC)的研制和开发主要针对的是在高速公路上快速行驶的车辆。在车速低于 30km/h 时传统 ACC
仅能使用节气门控制,因此无法在城市道路或交通拥堵环境下应用,而且某些 ACC
系统不能在车速较低时设定期望的目标车速或是将目标车速设定为一个较低的值;在高速公路道路环境较为单一,车辆密集程度不高、车辆车速相对较高、车间距相对较远、道路清晰可见,而在城市道路高架下的车速普遍低于60km/h,拥堵道路上的车速甚至仅有 0-20km/h的平均车速,拥堵的道路情况也会导致跟随的目标车频繁发生变化,同时可能有道路线的遮挡、腐蚀或丢失,这会影响到 ACC系统的跟踪目标判别或是引发不舒适的极端控制动作,大大增加发生碰撞事故的概率。 因此,为解决在城市交通流量较大、车辆较密集、车辆行驶车速较低的环境下的汽车自适应巡航控制,一些研发技术人员在传统 ACC系统的基础上开发了带有走停功能(Stop&Go)的交通拥堵辅助(Traffic Jam Assistant,TJA)下的自适应巡航控制系统。交通拥堵辅助系统(TJA)是专门针对城市低速、拥堵行驶环境而研发的汽车横、纵向联合控制系统,其主要功能包括自适应巡航控制系统、车道保持辅助系统、自动紧急制动系统等。其功能与传统ACC、LKA、AEB 相似,但不同的是,TJA是针对城市工况下所研发的驾驶辅助系统,更注重于城市道路环境的驾驶场景和较低车速下的车辆控制方法。TJA 控制下的车辆能够通过车载传感器检测到前方逐渐停止或已静止的目标车,并控制自车减速跟随目标车至停车;当前方目标车起步之后,自车判断当满足起步跟随的条件之后也会起步并跟随前车行驶。TJA系统的正常工作速度区间在 0-60km/h,相比于传统的自适应巡航系统,交通拥堵辅助巡航控制系统在城市工况下的适应性使其有着更大的优势,因此TJA是研究实现自动驾驶的重要基础之一。与传统 ACC 系统比较而言,TJA不仅可以实现中高速下的定速自适应巡航、高速保持距离跟随的传统 ACC 功能,还能够在 0-60km/h的中低速实现驾驶员定速巡航、低速保持距离稳定跟车、跟随目标车逐渐跟停、跟随目标车逐渐起步、弯道降速等功能。TJA系统的基本功能、典型的使用案例和应用场景有以下几种:
(1)中低速定速巡航功能。主车保持在主车道上行驶不换道,若前方道路上没有推荐跟踪目标,交通拥堵辅助巡航控制系统为驾驶员提供中低速下的定速巡航行驶功能,驾驶员可以设定低于30km/h 巡航车速,TJA 能够控制车辆在设定的低速下巡航行驶,若驾驶员主动调整设定车速大小,TJA 也能够控制主车达到目标车速巡航;若前方存在推荐目标车且目标车车速高于主车车速,此时主车仍然保持定速巡航行驶,不会跟随前方目标车加速行驶;若前方稳定跟随的目标车开始换道至其他车道且主车道上没有其他目标车,TJA 也会控制主车按照预设的车速巡航行驶。
(2)识别并跟随目标车功能。主车保持在主车道上行驶不换道,TJA功能开启控制主车在一定的设定车速巡航行驶,若前方较远距离存在推荐目标车且目标车车速较低,主车首先按照定速巡航行驶逐渐接近目标车,当与目标车距离达到合适位置时,TJA系统会控制主车降速以保持与前车的纵向安全距离,此时驾驶员设定车速不起作用,主车会稳定在与前车相同的车速行驶,并最终保持稳定。
(3)稳定跟随目标车功能。主车保持在主车道上行驶不换道,主车前方有中低速行驶的稳定跟随目标时,若目标车在主车道内适当加减速行驶,TJA也可以控制主车跟随目标车加减速行驶,若目标车行驶车速超过主车驾驶员设定的巡航车速,主车便不会跟随目标车加速行驶,而是保持驾驶员预设的巡航车速定速巡航。
(4)逐渐跟停和起步功能。主车保持在主车道上行驶不换道,主车前方有中低速行驶的稳定跟随目标,若目标车逐渐减速至停车,TJA 可以控制主车跟随目标车减速并直至跟停,保持一定的停车距离,当目标车开始起步时,主车达到起步条件后可以跟随目标车起步行驶,最后稳定跟随行驶;若前方道路上存在静止目标车,主车在较低车速下定速巡航接近后,TJA
系统也可以控制主车逐渐减速并跟停前方静止的目标车。巡航接近并跟停静止的目标车这一工况具有较大危险性,设定的巡航车速不能过高,一般规定主车与目标车的最大相对速度不应超过 60km/h。
(5)目标车切入判别功能。主车保持在主车道上行驶不换道,主车前方有中低速行驶的目标车且主车稳定跟随,若此时旁侧车道上存在目标车向主车道并线换道,TJA 能够提前识别并作出处理,切换跟随的目标车,控制主车保持车距以避免发生剐蹭或碰撞事故。在城市道路上车辆并线换道的情况尤为频繁,许多交通事故都是发生于车辆换道期间,驾驶员注意力不集中、车内视线被A 柱或装饰物遮挡等都是引发该种事故的原因之一。TJA 能够通环境传感器有效地识别城市道路上车辆并线工况,通过控制决策提前为驾驶员作出响应动作,降低事故发生频率。
(6)弯道降速功能。主车保持在主车道上行驶不换道,前方道路车道线清晰可见,前方道路一段直道后开始进入弯道,此时若主车以一定的车速定速巡航行驶,但在入弯时车速较大易出现危险,TJA可以在入弯之前通过环境传感器采集道路线数据,经过控制器决策出安全的设定巡航车速并控制主车车速从当前设定车速逐渐降至新的巡航车速,从而安全平稳地入弯行驶;当弯道行驶结束即将出弯时,TJA-ACC控制巡航车速回到驾驶员设定值,继续按前设速度巡航行驶。

1.2 TJA研究意义
相较于传统 ACC 系统,拥堵辅助巡航控制系统(TJA)能够适用于城市道路工况。在城市道路拥堵时,驾驶员不需要控制油门踏板和制动踏板,仅需控制车辆行驶方向,TJA 系统可以对车辆纵向运动状态进行控制,有效地适用于拥堵时走走停停的工况,减少驾驶员进行频繁复杂的操作,降低驾驶疲劳;并且 TJA系统还能对拥堵时并线的旁车道车辆预先判别,降低发生事故的风险,提高驾驶安全性。TJA 系统能在中低速下实现很多工况(极端条件除外)的纵向自动驾驶功能,能够为研究更高级别的自动驾驶技术的起到重要的带头作用。
1.3主要研究内容
交通拥堵辅助巡航控制系统(TJA)是在传统 ACC 系统的基础上发展而来的一种适用于城市中低速拥堵工况的巡航控制系统,它能在交通拥堵、走走停停的城市工况下为驾驶员提供纵向的辅助驾驶功能。因在城市工况下具有良好的适用性,此报告通过在 Panosim 中搭建真实道路交通环境进行仿真试验,以分层式的系统整体架构为基础搭建了拥堵辅助巡航控制系统控制策略,主要包括环境感知分析策略、决策控制策略以及执行器控制策略。

2仿真场景及传感器介绍
2.1仿真场景
场景包括四条车道线,同时具有直道和弯道,可以完成TJA的功能实现。
实现场景一为车辆切入。在切入车辆未被检测为引导车辆之前,TJA不会跟随此车辆行驶。
实现场景二为车辆切出。TJA不会跟随引导车辆进行侧向移动,如果未检测到新的引导车辆,TJA会自动解除,并按照设定的速度(40kph)定速巡航。
实现场景三为跟车加减速。在拥堵路况下,车辆的速度一般低于60kph,经常走走停停。TJA可以跟随前车速度变化。
实现场景四为车道返回。TJA在传统ACC的基础上增加了对汽车的横向控制,如果TJA的作用开始于车辆远离车道中心的某一点,TJA可以平缓的将车辆转回车道中心。
实现场景五为弯道行驶。TJA 将车辆控制在自身车道内行驶。
2.2传感器
仿真场景中用到了两种传感器,都安装在车辆前部,分别是毫米波雷达传感器和相机检测传感器,用来采集前方车辆和车道线信息,接下来将各自详细介绍。
2.2.1毫米波雷达传感器
毫米波雷达用于探测远距离目标的位置和速度信息,目前能够检测的物体有车辆和行人,在此次仿真实验中用来识别前方车辆。雷达传感器模型两种类型变量。第一种类型:第一个端口写出检测到的对象数。第二种类型:其余端口包含输出总线的矢量。矢量维度大小是传感器的最大可检测对象数。
2.2.2相机检测传感器
相机检测传感器适用车道线和交通参与者的检测识别,在此次仿真实验中用来识别车道线。相机检测传感器模型输出RGB格式的图像数据。

3 Simulink算法框图搭建
3.1总体控制
在这里插入图片描述
拥堵自动辅助驾驶(TJA)作为部分自动驾驶功能之一,通过前向摄像头和毫米波雷达传感器的数据采集,用以实现对车辆纵向和横向的同时控制。以分层式的系统整体架构为基础搭建拥堵辅助巡航控制系统控制策略,主要包括环境感知分析策略、决策控制策略以及执行器控制策略。
3.2纵向控制
车辆的纵向控制主要是对汽车行驶速度以及两辆车之间的距离进行控制。

图3-2 纵向控制框图
纵向控制流程图
首先进行传感器信息采集,并通过对数据的处理判断出同车道前方是否存在引导车辆,同时不会将相邻车道上的车辆确定为引导车辆。主要数据处理程序为:
*

function [Vr,Dr]= fcn(Width,Speed,Distance,Angle)
Width = 1;
X=zeros(1,Width);
Y=zeros(1,Width);
Vr=0;
Dr=0;
for i=1:Width
    X(i)=double(Distance(i))*cos(double(Angle(i))*pi/180);
    Y(i)=double(Distance(i))*sin(double(Angle(i))*pi/180);
end
for i=1:Width
    if abs(Y(i))<1.7    % CIPV:Closed in Path Vehicle
        Vr=double(Speed(i));
        Dr=double(Distance(i));
        break
    end
end
end*

若引导车辆存在,将通过传感器数据判断引导车辆的速度是否大于60kph。若大于60kph,将不会跟随此车辆,而是将速度保持在60kph进行巡航。
前方车辆速度大于60kph时

前方车辆速度大于60kph时的控制框图
在这个控制图中,Vp=60*1/3.6m/s;Vx是自车速度,Kv-P=4
含义是对自车进行速度控制, 如果前车速度大于60kph,那么自车将不会再跟随前车,而是保持60kph,定速巡航。(60-Vx)*4,自车速度小于60kph,计算值为正,自车将不断加速至60kph左右振荡,当自车速度大于60kph时,计算值为负,意味着加速度为负,汽车将减速。至此,汽车速度保持60kph定速巡航。
若引导车辆的速度小于60kph,那么自车将跟随前方车辆。
前方车辆速度小于60kph时

前方车辆速度小于60kph时的控制框图
在这个控制框图中上一部分是速度控制,和前车速度大于60kph时的控制一样,只不过这里的Vp为前车速度,意义为跟随前车。
(((Vx*T)+Min_distance)-D)*Kd_p为间距控制。其中Vx是自车速度;T=0.5s;Min_distance是从内部获得的一个数值,代表它定义的两车间的最小距离;D为传感器测得的两车间距;Kd_p=-0.8。具体实现过程理解为自车如果以现在的速度行驶,如果两车间距过近,即D小,前面因数大于0,乘一个负数,得到的加速度为负,车辆减速,两车之间间距拉大……

3.3横向控制
车辆的横向控制主要是将自车的行驶轨迹维持在车道线中央。若位置偏离中央,TJA可平稳地控制车辆返回车道中央;若驶入弯道,也可使车辆保持在车道线内转弯,不会冲出车道。以下是控制汽车转向角的程序:


```c
function [DetectionFlag,SW_angle]=fcn(type,distance,c0,c1,c2,c3,Vx_mps)
x2=distance(2);
x3=distance(3);
y2=c0(2)+c1(2)*x2+c2(2)*power(x2,2)+c3(2)*power(x2,3);
y3=c0(3)+c1(3)*x3+c2(3)*power(x3,2)+c3(3)*power(x3,3);
L=2.776;    % 车辆前后轴距,单位m
isw=16.95;  
K0=0.002; 
PointX1=(x2+x3)/2;
PointY1=(y2+y3)/2;
if type(2)==1 && type(3)==1     % type(1)~type(4)分别表示从右向左四条车道的有效性    SW_angle=2*L*isw*(1+K0*power(Vx_mps,2))*PointY1/(power(PointX1,2)+power(PointY1,2));
DetectionFlag=1;    %检测到最相关两条车道线的标志。
else
SW_angle=0;
DetectionFlag=0;    %没有检测到最相关两条车道线的标志。
end
end

``

4仿真及结果讨论

场景一: 在这里插入图片描述

图4-1 场景一——车辆切入 在切入车辆未被检测为引导车辆之前,TJA不会跟随此车辆行驶。

场景二: 在这里插入图片描述

图4-2 场景二——车辆切出 TJA不会跟随引导车辆进行侧向移动,如果未检测到新的引导车辆,TJA会自动解除,并按照设定的速度定速巡航。

场景三: 在这里插入图片描述

图4-3 场景三——车辆跟随 在拥堵路况下,车辆的速度一般低于60kph,经常走走停停。TJA可以跟随前车速度变化而做出相应变化。

场景四: 在这里插入图片描述

图4-4 场景四——起始位置

在这里插入图片描述 图4-5 场景四——车辆返回车道中心 如果TJA的作用开始于车辆远离车道中心的某一点,TJA可以平缓的将车辆转回车道中心。

场景五: 在这里插入图片描述 图4-6 场景五——弯道巡航 TJA 将车辆控制在自身车道内行驶,不会冲出车道。

5结论

本次实验通过对TAJ 系统的学习与建模仿真,深入理解了TAJ
的工作原理,也通过实验证明TAJ系统在拥堵的道路交通环境中是有一定的实用价值,甚至可以解放驾驶员的双手双脚。在此报告中以分层式的系统整体架构为基础搭建的拥堵辅助巡航控制系统控制策略可以满足TAJ系统要求的基本功能。在车辆未被检测为引导车辆时不会跟随;在车辆切出时会保持在自身车道内;在拥堵路况走走停停时也可以跟随前车速度变化并保持一定车距;当车辆偏离车道线中央位置时可以逐渐调整回去;在弯道行驶时也不会驶离当前车道。
同时,也发现了TAJ系统在实际情况中有一定的局限性。经查阅相关资料总结如下:
TJA适用于当摄像头等传感器检测不到车道标线信息时,利用前方探测到的车辆信息进行横向控制,由于ADAS车辆的摄像头通常安装在挡风玻璃后方,故前方较低速的相邻车辆通常会遮挡当前车辆摄像头对目标车道线的检测,而在交通拥堵的情况下,前方车辆的探测信息对于当前车辆的轨迹预测规划则更可靠、更稳定。因此,这种情况下应该在车道线消失点继续跟随可探测的前车保持横向对中行驶。此外,在很多低速情况下,当其前视摄像头探测视野范围受阻,则可以利用在泊车控制中的环视摄像头进行道线探测,并维持车辆对中到车道中央继续行进,因为环视摄像头的探测距离和探测范围有限,因此该策略仅适合于跟随前车停走状态下的低速行驶,配合跟车轨迹行驶控制,可以进一步延长拥堵状态下的横向控制时间。对于TJA过程估计中需要根据其定义的可行驶区域来划分相应的前方交通参与者,并定义其与自车的偏移量。在TJA中,当没有车道线信息时,对于十分复杂的交通情况不太可能被直接分析出来,比如当车道线消失时刻点不是平行状态时,可能造成后续对于虚拟车道线的模拟无法继续进行。

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值