你的浏览器版本过低,可能导致网站不能正常访问!为了您能正常使用网站功能,请使用这些浏览器。
chrome
Firefox

工具栏

自动驾驶虚拟仿真测试介绍

“本系列尝试从是什么、为什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。介绍什么是自动驾驶仿真测试。”

本文来源:自动驾驶测试验证技术创新论坛


自动驾驶虚拟仿真测试介绍(1):是什么


一、引子


二、自动驾驶汽车的仿真测试的不同手段


三、不同仿真测试手段的选择


“本系列尝试从是什么、为什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第一篇,介绍什么是自动驾驶仿真测试。”


一、引子


说到仿真测试大家可能会觉得陌生,不过其原理其实已经被广泛采用。


比如李雷想要开车从北京上海,但是不知道需要多长时间,于是他做了这样的估算:


距离s=1200km,开车时速v=120km/h,那么需要的时间为t=s/v=10h;考虑到不是全程高速、中间可能会休息,假设平均时速v’=80km/h会更合理,于是需要的时间为t=s/v’=15h。



通过这个例子,我们可以体会到两点:


仿真即是通过一组公式模仿真实世界,或者说使用一个数学模型简化替代真实世界;


数学模型的复杂度越高,计算结果与真实世界越相近,但是建模难度越高、计算速度越慢。


二、自动驾驶的仿真测试的不同手段


我们首先考虑真实世界的情况,自动驾驶在开放道路进行测试时,可以用下图来表示:



自动驾驶车辆主要由传感器、控制器和执行器构成(当然这主要是指自动驾驶部分,车身底盘等传统车辆部分暂且不提),驾驶员驾驶车辆在不同的道路、交通和天气环境下接受测试。当然高级别的自动驾驶不需要驾驶员,所以图中用虚线表示。


当在仿真环境中模拟其中的不同部分时,可以得到仿真测试的不同手段。列举如下表所示:


注:后面会有一篇详细介绍不同仿真测试手段的区别,敬请关注。


三、不同仿真测试手段的选择


经常会有人遇到要不要做HIL、要不要买个视频暗箱、要不要买个驾驶模拟器等等疑问,这时如果能先自问自答这样一个问题应该会有所帮助:我们准备测试的被测对象是什么?


如果被测对象仅仅是开发阶段的算法,那只使用MIL/SIL就可以;如果被测对象是要在实车使用的控制器,那可能需要一套HIL设备提前进行测试、提前发现问题。如果不采用暗箱、雷达回波模拟器等设备就不能实现测试闭环,那此类传感器信号仿真设备也是需要的。


诸如此类,如果能时刻谨记被测对象是什么和测试目的是什么,应该对选择仿真测试手段有很大帮助。


自动驾驶虚拟仿真测试介绍(2):为什么


一、仿真测试是工程师的自然需求


二、仿真测试是开发流程的必然要求


三、仿真测试是自动驾驶开发的必经之路


“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第二篇,介绍为什么要进行仿真测试。”


一、仿真测试是工程师的自然需求


仿真测试其实在结构开发领域早已广泛应用。如果说验证一个螺栓强度还可以翻手册、使用公式计算,那么对于一些复杂的零件的强度校核和结构优化,就要借助仿真手段,这就是CAE(ComputerAidedEngineering),比如下图中对零件的应力分布计算。CAE手段的使用有效减少了样件的数量,缩短了试验时间,节省了开发成本。



这些好处主要是零部件结构开发部门所享受,算法和控制器的开发部门自然很是羡慕。


我们可不可以在算法开发阶段就进行测试一些低级错误?


可不可以在办公室就可以对算法和控制器进行测试,而不是每个版本的新程序都要到实车上测试、在寒冬酷暑的室外调试很久?


可不可以在计算机上对真实世界中危险或不易实现的场景进行测试?


可不可以在解决bug或算法升版后,对之前的测试场景方便的进行重复测试?


欣慰的是,这些需求仿真测试都可以满足。


二、仿真测试是开发流程的必然要求


V模型是广泛在软件开发和测试中使用流程,如下图所示:



V模型要求在开发团队进行不同阶段的开发同时,测试团队编制对应的测试用例,并在开发阶段完成后立即进行测试。这就要求在集成测试、系统测试等暂无完整产品样件的情况下,就开始进行测试。


另外,有数据表明,在电控系统的开发过程中,越早问题则修正问题的成本越低。在开发的早期,就建立起测试验证的手段,快速高效的和解决开发过程中的问题,可以有效减低开发成本、提高开发效率。



而在开发的早期进行测试,在暂无完整产品样件的情况下进行测试,就需要仿真手段提供测试环境。


三、仿真测试是自动驾驶开发的必经之路


自动驾驶是一个新生事物,消费者对其安全性还不够信任。那么,自动驾驶的安全性达到什么水平才能被消费者接受呢?我想其安全水平不低于人类驾驶员,应该是一个最起码的要求。


根据RAND公司一份名为《DrivingtoSafety》的报告,要证明自动驾驶相比于人类驾驶员能够减少20%交通事故死亡率,需要进行约80亿公里的公共道路测试,假设由100辆车组成的车队每年365天每天24小时不间歇的以40km/h的平均速度进行测试,大概需要225年。

这个测试时间显然是不现实的。就要求在实车测试之外,寻求其他的方法,大幅缩短测试时间。


在虚拟环境下进行大规模的仿真测试,成为了必须选择的方法。比如waymo公司的CarCraft仿真平台中,有25000台仿真车辆同时进行测试,每天总计可进行1200万公里的测试。按照这个速度,完成上面提到的80亿公里的测试,仅需要2年。



自动驾驶虚拟仿真测试介绍(3):测什么


一、自动驾驶算法构成


二、自动驾驶仿真测试的两个阶段


“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第三篇:测什么,介绍仿真测试的被测对象是什么。”


一、自动驾驶算法构成


一个完整的自动驾驶算法,可以粗略的用下图表示。



传感器的感知模块从真实环境中获取信息,并将其转换为原始信号发送给识别模块;识别模块从原始信号中识别出目标,并发出目标列表。比如摄像头的原始信号为图片数据,激光雷达的原始信号为点云数据,识别模块从中识别出前方目标的类型、位置和速度等信息。


融合模块对来自不同传感器的目标列表进行处理后,发出统一的目标列表给决策模块。决策模块分析目标列表,对目标未来的状态进行预测,并规划自车的行驶路径。控制模块根据目标行驶路径,发出加速、制动和转向等控制指令,对车辆状态进行控制。


根据上面的分析,大体上可以将一个完整的自动驾驶算法分为两个部分:


(1)感知识别模块,其输入是外部环境,输出是目标列表;


(2)决策控制模块,其输入是目标列表,输出是对车辆的控制指令。


文章由易车号作者提供

标签:

内容由作者提供,不代表易车立场

收藏

收藏成功 ! 去易车app查看收藏文章

猜你想看

+加载更多

活动推荐

广告
  • 奖 
  • 抢 
  • 奖 

CopyRight © 2000-2023 BitAuto,All Rights Reserved. 版权所有 北京易车信息科技有限公司    购车咨询:4000-168-168 (周一至周日 9:00 – 21:00) 法定假日除外