自动驾驶虚拟仿真测试介绍_第1页
自动驾驶虚拟仿真测试介绍_第2页
自动驾驶虚拟仿真测试介绍_第3页
自动驾驶虚拟仿真测试介绍_第4页
自动驾驶虚拟仿真测试介绍_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自动驾驶虚拟仿真测试介绍自动驾驶虚拟仿真测试介绍〔 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》的报告,要证明自动驾驶汽车相比于人类驾驶员能够削减2080亿公里的公共道路测试,假设由100辆车组成的车队每年365天每天24小时不间歇的以40km/h的平均速度进展测试,或许需要225年。这个测试时间明显是不现实的。就要求在实车测试之外,寻求其他的方法,大幅缩短测试时间。在虚拟环境下进展大规模的仿真测试,成为了必需选择的方法。比方waymo公司的CarCraft仿真平台中,有25000台仿真车辆同时进展测试,每天总计可进展1200万公里的测试。依据这个速度,完成上面提到的 80亿公里的测试,仅需要 2年。自动驾驶虚拟仿真测试介绍〔 3〕:测什么一、自动驾驶算法构成二、自动驾驶仿真测试的两个阶段“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第三篇:测什么,介绍仿真测试的被测对象是什么。”一、自动驾驶算法构成一个完整的自动驾驶算法,可以粗略的用以下图表示。传感器的感知模块从真实环境中猎取信息, 并将其转换为原始信号发送给识别模块;识别模块从原始信号中识别出目标,并发出目标列表。比方摄像头的原始信号为图片数据,激光雷达的原始信号为点云数据,识别模块从中识别出前方目标的类型、位置和速度等信息。融合模块对来自不同传感器的目标列表进展处理后, 发出统一的目标列表给决策模块。决策模块分析目标列表,对目标将来的状态进展推测,并规划自车的行驶路径。掌握模块依据目标行驶路径,发出加速、制动和转向等掌握指令,对车辆状态进展掌握。依据上面的分析,大体上可以将一个完整的自动驾驶算法分为两个局部:感学问别模块,其输入是外部环境,输出是目标列表;决策掌握模块,其输入是目标列表,输出是对车辆的掌握指令。二、自动驾驶仿真测试的两个阶段远期的目标,自然是对完整的自己驾驶算法进展仿真测试,不过考虑到近期的实际状况,大致要分为两个进展阶段〔固然这两个阶段可能并没有明显的时间界限〕。阶段一:在试验室和封闭试验场内对传感器的感学问别模块进展测试,在虚拟仿真环境对决策掌握模块进展测试,仿真环境直接向决策掌握模块供给目标列表。这主要是由于目前对传感器的建模还有很多局限,从而不能进展有效〔甚至是正确〕的仿真。比方摄像头输出的图片较简洁仿真,但是污渍、强光等特性仿真难度较大;而对于毫米波雷达假设建立精度较高的模型,计算速度较慢,不能满足仿真测试的需求。在试验室和封闭试验场可以对测试环境进展完整的掌握和数据记录。 比方布置不同类别、位置和速度的行人和车辆,甚至可以对雨、雪、雾和强光的环境要素进展模拟,并将传感器处理输出的目标列表与真实环境进展比照,从而给出对感学问别模块的评估结果和改进建议。这么做的好处是,在传感器建模有很多局限的状况下,照旧能够在仿真环境下对决策掌握模块进展测试,提前享受仿真测试的优势。阶段二:在虚拟仿真环境进展高精度的传感器建模, 从而对完整的自动驾驶算法进展测试。这样不仅可以在同一环境下进展测试,从而提高测试效率、测试场景掩盖率和简单度;而且可以对一些基于 AI的算法进展端到端的测试。这一阶段的难点,一方面是前面提到的满足测试需求的传感器建模,另外一方面是不同传感器厂家和 OEM厂家直接交互的接口很可能不全都〔有些状况下可能并不存在〕。自动驾驶虚拟仿真测试介绍〔 4〕:用什么测一、仿真测试平台的构成二、仿真测试工具的流派三、仿真测试工具的选择“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第四篇:用什么测,介绍自动驾驶虚拟仿真测试平台的构成。”一、仿真测试平台的构成我们在上一篇《测什么》中用了一张图来概括自动驾驶算法的构成:自动驾驶算法通过各种传感器探测四周环境的状态, 进展决策后对车辆进展掌握。为了在仿真环境对自动驾驶算法进展测试,需要模拟自动驾驶算法的各种输入,并响应其输出,从而“哄骗”它,让它以为在真实世界工作。为此,比照真实世界,仿真测试平台由交通场景模块、传感器模块、车辆动力学模块和测试治理模块构成。如以下图所示:交通场景模块交通场景模块用于模拟车辆运行的外部世界。一方面,模拟各种交通场景要素,比方:①高速大路、城市道路等不同的道路构造;②标志标线、护栏、交通灯等道路附属设施;③轿车、卡车、摩托车、行人等交通参与者;④路障、锥桶、遗撒物等临时物体;⑤晴、阴、雨、雪、白天、黑夜等不同的天气。另一方面模拟不同交通场景要素之间的组合和动态关系, 即不同的“场景”。比方:高速大路上,一辆轿车在被测车辆前方快速切入;十字路口黄灯时,一辆卡车在被测车辆前方紧急制动停车。传感器模块传感器模块用于模拟车辆上安装的各种传感器,从而获得交通场景的状态。一方面,依据传感器种类的不同,模拟不同的信号内容,比方:摄像头传感另一方面,依据传感器特性和参数的不同,模拟出其“局限”,比方:传感器的探测范围,摄像头的畸变和炫光,不同材质对激光雷达光线吸取的影响,护栏对毫米波雷达的杂波影响。车辆动力学模块车辆动力学模块用于模拟车辆本身对自动驾驶算法掌握的响应, 特别是对加速、制动和转向的响应。车辆动力学模块一般参照真实车辆,由车身、动力传动系统、悬架系统、转向系统、制动系统和车轮等不同的子系统构成。测试治理模块测试治理模块,负责对以上三个局部组成的仿真测试环境的治理,保证仿真测试的效果和效率。一方面,对测试流程进展治理,比方:测试用例的选择、测试的启动和终止、仿真模块的调度。另一方面,对测试数据进展治理,比方:测试用例的更、测试数据的记录和分析、测试报告的生成。二、仿真测试工具的流派目前常见的仿真测试工具有很多种,依据自动驾驶开发团队的来源,大致可分为如下几个流派:传统主机厂倾向于使用汽车工业的商业软件,使用机器人平台开发自动驾驶算法的团队常常使用 ROS/Gazebo很多擅长计算机图形学的团队基于玩耍引擎开发仿真工具。而大规模简单交通流的仿真需求,则由交通规划领域的软件来满足。以下图列举了一些常见的工具:比方汽车工业的CarSimCarMakerVTD和PreScanROS和Gazebo,基于玩耍引擎的CARLAAirSim和LGSVL件VISSIM和SUMO三、仿真测试工具的选择如上一篇《测什么》中所说,一个完整的、精度高的仿真测试平台自然是最终的目标,但是在实际的自动驾驶开发中,团队肯定会依据当下的具体需求和本钱限制进展选择。比方:是否需要高精度的传感器模型?假设想承受 VISSIM等工具模拟区域交通流,是否有符合实际的交通调查数据?自动驾驶算法测试使用的车辆动力学模型,是否要与底盘调教的车辆模型使用一样的精度?高保真的视觉场景是否满足测试效率的要求?成熟的商业软件是否满足特定的需求?承受开源软件的话,团队的力量和工程进度是否允许?等等诸如此类的问题,都需要依据不同的实际状况认真评估后,再做选择。自动驾驶虚拟仿真测试介绍〔 5〕:怎么测一、较低等级和较高等级自动驾驶的测试差异二、基于用例和基于场景的测试三、测试场景的来源“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。这是第五篇:怎么测,介绍自动驾驶虚拟仿真测试的方法。”一、较低等级和较高等级自动驾驶的测试差异较低等级〔L1L2〕的自动驾驶或者说 ADAS,与较高等级〔L3-L4〕自动驾驶相比,有个直观上比较大的区分是:较低等级的自动驾驶面对的工况简单度和工况范围比较小,或者说由于驾驶行为的主要由人类驾驶员负责,自动驾驶系统仅需处理有限数量的、确定的工况即可;而较高等级的自动驾驶,驾驶行为主要由自动驾驶系统负责,其处理的工况简单度和工况范围很大,甚至不能提前预知。这种比照,可以用以下图做一个示意:ADAS用一个较窄的矩形表示,高等级自动驾驶用一个较大的矩形表示。基于两者的这个差异,ADAS高等级自动驾驶则需要使用基于场景的测试方法。二、基于用例和基于场景的测试基于用例的测试方法,即是预设测试输入和测试过程,通过查看被测算法是否实现预期的功能来评价是否通过测试。比方对 ACC的测试,预先设定被测车辆和前车的初始车速,以及前车减速的时刻和减速度,查看被测车辆是否能够跟随减速停车。基于场景的测试方法,即是预设测试输入,但不预先设定测试过程,只设定交通车辆的行为,赐予被测算法较大的自由度,通过查看被测算法是否达成预期的目标来评价是否通过测试。比方对直线道路行驶的测试,预先设定被测车辆和前车的初始车速,以及前车减速的时刻和减速度,但是不限定被测车辆是通过减速还是换道超车的方式避开与前车相撞。造成对于不同等级的自动驾驶功能需要使用不同的测试方法的一个缘由是:低等级的自动驾驶一般能够分解为简洁而独立的功能, 可以把单一功能作为被测对象;而高等级的自动驾驶较难分解成简洁而独立的功能,只得把整个自动驾驶系统或其相对较大的一局部作为被测对象。三、测试场景的来源假设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论