自动驾驶虚拟仿真测试介绍
基于VTD的高保真自动驾驶虚拟测试方案

基于VTD的高保真自动驾驶虚拟测试方案14th, June, 2018目录1.背景概述2.VIRES公司及VTD产品简介3.基于仿真的自动驾驶测试方法4.静态场景开发5.动态场景开发6.环境仿真7.传感器仿真8.智能驾驶仿真测试综合解决方案背景概述“人-车-路-交通-环境”背景1. 方法:基于仿真的论证-仿真要素☐动力系统☐制动系统☐转向系统☐人机交互道路交通车辆交通标志☐视频传感器☐毫米波雷达☐超声波雷达☐激光雷达☐GPS ☐V2X☐道路☐交通车辆☐交通标志☐交通设施☐……感知处理融合决策执行☐场景仿真复杂与随机程度☐场景数目接近于无限☐极限与危险工况的复现☐真实环境的融合☐系统设计参数的获取☐决策算法的训练背景2. 基于仿真的论证-自动驾驶场景仿真面临的挑战背景3. 基于仿真的论证-智能驾驶测试评估认证VIRES公司及VTD产品简介发起如下标准的合作伙伴:集中在关键产品:VIRES Virtual Test Drive ®总部地址:Grassinger Straße 883043 Bad Aibling Germanyp +49.8061.939093-0f +49.8061.939093-13e info@ i 合作伙伴: Open SCENARIOOpen CRG Open DRIVE 分部地址:Wiener Straße 122700 Wiener Neustadt Austria成立:1996员工:30+管理层:Marius Dupuis Wunibald Karl 如下研究项目的合作伙伴:+ additional ones (2 starting 2018)Auto Drive Challenge (via MSC.Software)产品简介VIRES 是谁?VTD 是什么?高度模块化的基于Linux的可定制的是一个软件工具链创建模拟感知管理用于虚拟交通环境软件在环(SIL)模型在环(MIL)驾驶员在环(DIL)车辆在环(VIL)硬件在环(HIL)通过应用支持开发测试验证系统的高度自动驾驶高级驾驶员辅助(ADAS)主动安全产品简介VTD产品介绍Open SCENARIOOpen CRGOpen DRIVE道路网络2006+路面2008+行为2016+动态内容静态内容产品简介复杂道路交通环境仿真的标准●从道路设计到仿真框架的完整工具链●车道级数据应用能力●使用开放标准(OpenDRIVE, OpenCRG ,OpenScenario etc.)●交通仿真与高性能实时图像渲染●开放式架构,高度模块化,强灵活性●实时传感器仿真能力和开发环境●触发框架●支持XIL 仿真测试●支持分布式仿真产品简介主要特点基于仿真的自动驾驶测试方法基于仿真的自动驾驶测试方法虚拟道路交通环境中的测试•如何组织最有效率的测试?•感知和决策并行测试•仿真和实车并行,快速迭代,提高测试效率•不同阶段的仿真测试使用不同的感知模型感知系统能力需求传感器选型感知算法和融合算法开发理想感知系统建模系统需求定义决策控制层需求决策控制层策略建模决策控制层仿真测试感知系统的实车测试(感知能力评估)高逼真度感知系统模型+感知算法系统级仿真测试实车场地测试实车开放道路测试仿真架构仿真测试解决方案HighFidelityAdamsModelSuspensionModelTire Model RoadVehicleModelDriverSoftware inthe Loop(SIL)Offline1DataAnalyticsBig Data(Simulation)Big Data(Operational Data Gathering)Environment EventsQuantifying Safety with AI5DrivingSimulatorTest InputRealTimeModelReal Time2100X Real Time3Simulating theEnvironmentEvent Space4基于”V流程”的面向XIL的应用静态场景开发人工搭建☐人工创建☐细节尺寸人工确定☐交通标识库、素材库及扩展☐手动搭建路网结构地图☐地面细节☐模板保存与导入☐场景库扩展高精地图导入☐图商地图数据提取:地图数据和素材库☐道路数据转换成OpenDRIVE☐素材库合成与命名,并保存在场景库☐场景生成自动匹配☐地面细节☐模板保存与导入仿真流程静态场景-真实场景开发OSM 地图导入☐快速导入与快速生成☐自动转换成OpenDRIVE 格式☐道路几何尺寸☐车道线☐Signal 和junction ☐人工修改仿真流程静态场景-真实场景开发仿真流程静态场景-真实场景开发动态场景开发•交互的、基于编辑器的GUI•支持OpenSCENARIO •脚本功能•大量的触发选项•成群的交通流•200+并行车辆仿真流程动态场景-工况编辑Open SCENARIO 交通场景仿真车辆动力学模型受测试系统交通流仿真第三方仿真GPS 数据现场数据仿真流程场景仿真-交通场景仿真•自动的vs.确定的行为•现实交通密度及特征•微观级交通环境•无限数量的外部实体•可配置的驾驶员模型•可配置的车辆动力学模型•行人模拟图像车辆动力学模型控制器自定义驾驶员模型VTD 驾驶员模型用户自定义动作用户自定义车辆动力学模型VTD 车辆动力学模型3D 模型驾驶员ADAS / HAD 算法交通流仿真(比如SUMO)MSC Adams / AdamsRT 模型3D 模型实体仿真流程场景仿真-工况编辑与配置仿真流程场景仿真-基于OpenSCENARIO的工况设置Simple Steering Two lane changes Two lane changes & emergency brakeLane change right/left Overtaking Traffic jam and corridor仿真流程场景仿真-基于随机交通的工况仿真环境仿真环境仿真复杂“五要素”环境环境仿真天气模拟环境仿真路面积水环境仿真高保真光影渲染环境仿真物理光源环境仿真物理光源环境仿真车辆灯光仿真传感器仿真解决方案几何材料Open SCENARIO交通场景仿真环境感知车辆动力学模型ADAS / HAD系统基础设施受测试的系统驾驶员传感器模型摄像头激光雷达雷达超声波红外线全球卫星导航传感器仿真仿真原理传感器仿真传感器模型原理传感器仿真传感器模型特性r e a l -t i m ecomplexitys p e e d (l o g s c a l e )Perfect SensorAdvanced Object SensorPhysically Based SensorsAccurate Sensors*Real Sensor Hardware•LDR/HDR 渲染•实时性能•支持在监视器、网络和共享内存空间进行图像输出•支持通过软件开发工具包进行客户化定制•可定制的材质•单/多通道分布式渲染•可配置的畸变、混杂等•鱼眼、环视、景深摄像头•各种天气和光照条件S H MM o n i t o r图像生成器插件图像阅读器交通图像阅读器人摄像头传感器仿真解决方案视频类传感器色差与像差Image Generator (rendermode)Custom RDB Image ReaderMaterial DBIntrinsic ParametersPlug-InsPost-ProcessingPipeline ShaderPPPConfigurationS H M传感器仿真解决方案视频类传感器鱼眼•通过后处理途径实现•交互的“凸镜生成器”工具Image Generator(render mode)Custom RDB Image ReaderMaterial DBIntrinsic Parameters Plug-InsPost-ProcessingPipeline ShaderPPPConfigurationS H M传感器仿真解决方案视频类传感器传感器仿真解决方案实时激光点云传感器传感器仿真解决方案实时物理级传感器•多种类型,多种安装方式•并行实时运算与数据传输•持续数据更新传感器仿真解决方案多传感器仿真传感器仿真解决方案环境感知&标注智能驾驶仿真测试综合解决方案智能驾驶仿真测试综合解决方案Virtual EnvironmentPerception Creation Animation ManagementSystem Under Test MSC Adams MSC AdamsRTMSC Scenario LibrariesMSCActive AI Gym MSC SimManagerMSC AI DriverFootage Real EnvironmentFootageMSCAI Verification智能驾驶仿真测试综合解决方案ADAMS RT & VTD测试活动设计数据分析智能采样环境感知交通场景模拟数据源车辆动力学模型环境模型(3d场景、表面、材料、地图等)参数化的场景数据库定位•从XiL到HPC集群( )•对第三方集成开放的架构Hexagon/MSC/VIRES自动驾驶仿真测试综合解决方案。
自动驾驶车辆模拟仿真测试平台技术要求

自动驾驶车辆模拟仿真测试平台技术要求1.概述2.功能要求2.1地理环境模拟模拟仿真测试平台应能准确模拟各类城市、乡村、高速公路以及特殊路况的地理环境,包括道路宽度、曲线半径、坡度、交通标志、信号灯等元素,以便对不同路况下的自动驾驶系统进行充分测试。
2.2环境感知模块模拟仿真测试平台应具备环境感知模块,能够模拟传感器(如摄像头、激光雷达、毫米波雷达等)获取的数据,并生成点云、图像数据等,以供自动驾驶系统处理和决策。
2.3自动驾驶控制模块模拟仿真测试平台应提供自动驾驶控制模块,能够模拟车辆的加速、刹车、转向等操作,并根据自动驾驶系统的运行状态和输入指令,进行车辆控制。
2.4车辆动力学模型模拟仿真测试平台应具备精确的车辆动力学模型,能够准确模拟车辆的运动、加速度、制动过程等,以提供真实的车辆行驶感。
2.5性能评估与优化模拟仿真测试平台应提供丰富的性能评估指标,包括车辆的舒适性、安全性、燃油经济性等,同时,还应提供能够对控制算法进行优化的工具,以提高自动驾驶系统的性能。
2.6精确的仿真时间模拟仿真测试平台应具备精确的仿真时间,能够准确模拟实际行驶过程中的时间变化,以保证仿真的真实性和可靠性。
3.技术要求3.1高性能计算模拟仿真测试平台应具备高性能的计算能力,能够处理大规模复杂场景的仿真计算,保证仿真结果的准确性和稳定性。
3.2实时数据处理模拟仿真测试平台应具备快速的数据处理能力,能够实时处理传感器数据和控制指令,并通过高效的算法,将处理结果反馈给自动驾驶系统。
3.3多模态数据模拟模拟仿真测试平台应支持多模态数据(如图像、点云、声音等)的模拟和处理,以更全面地评估自动驾驶系统的感知和决策能力。
3.4分布式计算架构模拟仿真测试平台应采用分布式计算架构,能够实现不同模块之间的并行计算和通信,以提高仿真效率和可扩展性。
3.5开放式接口与标准模拟仿真测试平台应具备开放式接口,能够与各类自动驾驶系统、传感器和控制器进行无缝对接,同时,还应符合行业标准,以提高平台的互通性和兼容性。
自动驾驶技术的安全性评估与测试方法

自动驾驶技术的安全性评估与测试方法随着科技的不断发展,自动驾驶技术成为了汽车行业的热门研究领域。
然而,要实现真正的自动驾驶,必须确保其安全性。
自动驾驶技术的安全性评估和测试方法是确保这一目标实现的关键。
安全性评估是评估自动驾驶系统在各种道路和交通条件下的性能和安全性。
评估的方法旨在发现潜在的隐患,并提供改进和优化的建议。
下面将介绍一些常用的自动驾驶技术的安全性评估和测试方法。
首先,是仿真测试。
通过使用计算机模型和虚拟场景来模拟能够在不同实际道路上行驶的自动驾驶汽车。
这种方法可以提供大规模和多样化的道路条件和交通模式,以及在安全的环境中进行测试和优化的机会。
仿真测试可以降低测试成本,缩短测试周期,并为多种测试场景提供便利。
其次,是测试集集成。
这种方法是编写一系列各种道路和交通情况的测试用例,以模拟真实世界的驾驶场景。
测试集集成方法可以确保自动驾驶系统在各种情况下保持高效运行,并验证其对突发事件的响应能力。
这要求测试集覆盖广泛,包括不同类型的道路、各种天气条件、不同的交通状况等。
第三,是在实际道路上进行测试。
这种方法是将自动驾驶汽车放在真实的道路上进行测试。
通过真实道路测试,可以评估系统在实际环境中的性能和安全性。
这种方法可以收集真实的数据,为算法改进和系统调整提供依据。
然而,实际道路测试可能受到道路交通和法律法规的限制,且成本较高。
另外一种方法是漏洞扫描和安全性测试。
这种方法着重于发现自动驾驶系统中的漏洞和脆弱性,以及可能被黑客利用的潜在入侵点。
通过对系统进行深入的安全分析和测试,可以找到潜在的安全隐患,并提供改进和修复的方案。
最后,是通过数据演练来评估系统的安全性。
这种方法使用历史数据和模拟数据进行演练,以评估系统在不同环境条件下的性能和安全性。
数据演练可以模拟各种道路和交通情况,以及紧急情况和意外事件。
通过演练,可以发现系统的漏洞和不足之处,并提供改进的建议。
总而言之,自动驾驶技术的安全性评估和测试方法是确保汽车行业向自动驾驶迈进的关键。
自动驾驶车辆测试

自动驾驶车辆测试自动驾驶技术的快速发展使得自动驾驶车辆的测试成为一个重要的环节。
通过测试,可以确保自动驾驶车辆的安全性、可靠性以及适应性,为实现自动驾驶的商业化应用打下坚实的基础。
本文将针对自动驾驶车辆测试进行探讨,包括测试方法、测试环境以及测试车辆等方面。
一、测试方法1. 实际道路测试实际道路测试是自动驾驶车辆测试的重要方式之一。
通过在真实交通环境中进行测试,可以模拟真实场景,评估自动驾驶车辆在各种道路条件和交通情况下的表现。
测试中应该包括日间和夜间的行驶测试,不同天气条件下的测试,以及各类路况和交通模式下的测试。
2. 仿真测试仿真测试是通过使用计算机软件模拟真实的驾驶场景来进行测试。
通过在虚拟环境中进行测试,可以更加高效地测试自动驾驶车辆的各项功能,并且可以模拟各种复杂的场景,如恶劣天气、车辆故障等,以提高测试的全面性和覆盖性。
3. 实验室测试实验室测试是在受控环境下进行的测试,主要用于测试自动驾驶车辆的基本功能和性能。
通过在实验室中模拟不同的驾驶情景和交通场景,可以更加精确地评估自动驾驶车辆的性能指标,并进行相关的调试和优化。
二、测试环境1. 道路基础设施测试自动驾驶车辆需要选择合适的道路基础设施,包括不同类型的道路、交通信号灯、交通标识等。
这些基础设施能够提供多样化的驾驶场景,对自动驾驶车辆的感知、决策和控制进行全面测试。
2. 通信设备测试自动驾驶车辆还需要建立良好的通信网络,以实现车辆与基础设施、其他车辆之间的实时信息交换。
通信设备的稳定性和可靠性对于测试的准确性和可行性有着重要的影响。
3. 数据采集和处理设备测试自动驾驶车辆还需要配备数据采集和处理设备,用于记录车辆的行驶轨迹、传感器数据以及测试过程中的各项参数。
这些数据对于评估和分析自动驾驶车辆的性能和安全性至关重要。
三、测试车辆测试车辆是进行自动驾驶车辆测试的工具和载体。
测试车辆需要具备自动驾驶功能,并且要满足测试的需求和要求。
测试车辆应该具备完善的传感器系统、高度可靠的控制系统以及灵活的数据采集和存储能力。
Python与自动驾驶仿真利用Python进行自动驾驶仿真和测试

Python与自动驾驶仿真利用Python进行自动驾驶仿真和测试自动驾驶技术是当今汽车科技领域的热门话题之一,Python作为一种强大的编程语言,正逐渐在自动驾驶仿真与测试方面发挥着重要作用。
本文将探讨Python在自动驾驶仿真和测试中的应用。
一、自动驾驶仿真简介自动驾驶仿真是指使用计算机模拟技术,通过构建虚拟环境来模拟真实的驾驶场景,从而对自动驾驶系统进行测试和验证。
自动驾驶仿真主要包括道路建模、车辆控制、感知算法等方面。
二、Python在自动驾驶仿真中的使用1. 道路场景建模在自动驾驶仿真中,Python可以用于构建道路场景模型。
通过使用Python的图形库(如Pygame、Pyglet等),我们可以创建出逼真的道路、车辆以及其他交通参与者的模型。
对于道路的几何形状、标志标线的绘制和实时变化等功能,Python都能够提供便捷的解决方案。
2. 车辆控制与运动模拟Python在自动驾驶仿真中能够实现车辆的控制算法和运动模拟。
通过使用Python编写控制算法,我们可以实现车辆的轨迹规划、路径跟踪等功能。
同时,Python的数值计算库(如NumPy、SciPy等)可以帮助我们进行车辆运动模拟和动力学仿真,从而更好地评估自动驾驶系统的性能。
3. 感知与决策算法自动驾驶仿真中的感知与决策算法是其中的关键环节。
Python作为一种灵活的编程语言,可以实现各种感知和决策算法,如目标检测、道路识别、车辆跟踪、行为规划等。
Python的机器学习库(如TensorFlow、PyTorch等)更是为算法的开发和优化提供了强大的支持。
三、Python在自动驾驶测试中的应用1. 单元测试Python的单元测试框架(如unittest)可以帮助开发者进行自动驾驶系统的单元测试。
通过编写测试用例并运行自动化测试,可以验证自动驾驶系统的各个组件是否符合预期的功能和性能要求。
2. 集成测试Python的集成测试工具(如Pytest)可以对整个自动驾驶系统进行集成测试。
汽标委 自动驾驶系统仿真测试标准

汽标委自动驾驶系统仿真测试标准随着自动驾驶技术的快速发展,自动驾驶系统的仿真测试标准成为了汽车行业关注的焦点。
为了规范自动驾驶系统的仿真测试,中国汽车技术标准化委员会(汽标委)着手制定了一系列标准,旨在为自动驾驶系统的仿真测试提供指导和支持。
本文将介绍汽标委自动驾驶系统仿真测试标准制定的背景、目的、主要内容和实施建议。
一、背景自动驾驶技术的发展对于汽车产业和社会的影响巨大,而仿真测试是自动驾驶系统开发过程中必不可少的一环。
为了保证仿真测试的准确性和可靠性,汽标委制定了自动驾驶系统仿真测试标准,旨在为相关企业和机构提供一套科学、规范的测试方法和指南。
二、目的本标准的制定旨在规范自动驾驶系统的仿真测试过程,确保测试结果的准确性和可靠性,为自动驾驶系统的研发和评估提供科学依据和指导。
具体来说,本标准的目的包括:1.规范仿真测试方法,确保测试过程的科学性和规范性。
2.统一仿真测试指标,提高测试结果的可比性和可重复性。
3.为企业和机构提供一套可操作的测试指南,方便其进行仿真测试。
三、主要内容本标准主要包括以下内容:1.术语和定义:明确仿真测试相关的术语和定义。
2.测试环境:规定仿真测试所需的硬件和软件环境,包括仿真器、模拟交通流等。
3.测试内容:规定仿真测试需要涵盖的安全性、性能、可靠性等方面的内容。
4.测试方法:提供多种仿真测试方法,包括基于规则的方法、基于模型的方法等。
5.测试报告:规定仿真测试报告的格式和内容,包括测试结果、分析结论等。
四、实施建议本标准的实施建议包括以下几点:1.加强宣传和培训:组织相关企业和机构进行培训和学习,使其了解和掌握仿真测试标准和方法。
2.建立测试评估体系:建立仿真测试评估体系,对相关企业和机构进行评估和监督,确保其按照标准进行仿真测试。
3.加强合作与交流:加强与国内外相关组织和机构的合作与交流,共同推动自动驾驶系统仿真测试标准的制定和应用。
4.定期评估和修订:根据实施情况和反馈意见,定期对标准进行评估和修订,不断完善标准内容。
自动仿真驾驶总结报告

自动仿真驾驶总结报告自动仿真驾驶总结报告自动仿真驾驶技术是利用计算机和传感器等设备来模拟真实道路环境,并通过算法进行智能决策,实现车辆自动驾驶的技术。
本次自动仿真驾驶实验旨在测试车辆在不同道路环境和交通情况下的自主驾驶能力,并评估其安全性和性能。
经过一段时间的实验和数据分析,以下是对本次实验的总结报告。
首先,本次实验中,我们使用了虚拟仿真环境来模拟真实道路环境。
通过这种方式,我们可以更好地控制实验条件,包括道路类型、交通量和天气情况等因素,从而更好地评估自动驾驶系统的性能。
虚拟仿真环境的设计合理,能够提供逼真的图像和场景,使得车辆能够在接近真实的环境中进行驾驶。
其次,本次实验中,我们对多个自动驾驶系统进行了测试和比较。
通过对数据进行统计和分析,我们发现不同系统在不同道路环境下表现出一定的差异。
某些系统在直线道路上驾驶更为稳定,但在弯道和复杂交叉口等复杂情况下表现较差;而另一些系统则对复杂道路情况有更好的适应能力。
此外,我们还发现一些系统在夜间驾驶方面表现更加出色,能够更好地识别和处理来自车辆前方和两侧的光照问题。
另外,我们还对车辆的安全性进行了评估。
通过分析数据,我们发现在大多数情况下,自动驾驶系统能够稳定地遵守交通规则,与其他车辆保持安全的距离。
但在某些情况下,例如紧急情况的处理以及人行横道的识别和让行等方面,仍然存在一定的改进空间。
因此,在进一步发展自动驾驶技术的过程中,需要更加注重系统的安全性和应急处理能力的提升。
最后,本次实验还暴露出一些潜在的问题和挑战。
首先,当前自动驾驶系统依然在某些复杂道路情况下存在误判和决策不准确的问题,需要进一步完善和优化算法。
此外,当前自动驾驶系统对于不同天气条件和光照情况的适应性还需要提升,以保证在各种环境下都能够进行可靠的驾驶。
另外,自动驾驶系统与人工驾驶模式之间的切换仍然需要进一步研究和测试,确保平稳和安全的过渡。
综上所述,本次自动仿真驾驶实验对于评估不同系统的性能和安全性提供了有益的参考。
自动驾驶车辆的测试方法及装置

自动驾驶车辆的测试方法及装置随着智能交通技术的不断发展,自动驾驶车辆已经成为了汽车行业研发的热点。
然而,对于自动驾驶车辆而言,如何进行科学有效的测试是不可或缺的。
下面将介绍自动驾驶车辆的测试方法及装置。
一、测试方法
1. 仿真测试法:通过计算机技术模拟真实情况,以人工智能算法为核心,模拟车辆行驶过程,评估自动驾驶车辆的控制策略和决策能力。
这种测试法可以大大缩短测试的时间和费用,同时避免了可能的危险和伤亡。
2. 车辆测试法:通过在实际道路上进行测试,检测自动驾驶车辆的性能和可靠性。
这种测试法可以体现车辆在真实环境下的表现,并对实际操作提供了可操作性的数据。
二、装置
1. 视觉感知系统:由多个摄像头和激光传感器组成,用于感知车辆周围的路面、障碍物、交通标志等信息。
2. 车联网通信系统:通过车载无线通信技术实现车辆与基础设施以及其他车辆之间的信息交流。
3. 控制系统:控制整个自动驾驶车辆的运行和行驶方向。
4. 定位和导航系统:利用多个卫星进行定位,并使用地图和路标信息在车辆行驶时提供导航指示。
5. 环境感知系统:用于获取车辆周围的环境信息,包括地形、行人、动物等。
以上是自动驾驶车辆的测试方法及装置的介绍,希望能对自动驾驶技术的发展提供支持,使自动驾驶车辆真正走向我们的生活并为我们提供更好的服务。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
自动驾驶虚拟仿真测试介绍自动驾驶虚拟仿真测试介绍(1):是什么一、引子二、自动驾驶汽车的仿真测试的不同手段三、不同仿真测试手段的选择一、引子说到仿真测试大家可能会觉得陌生,不过其原理其实已经被广泛采用。
比如李雷想要开车从北京去上海,但是不知道需要多长时间,于是他做了这样的估算:北京到上海距离s=1200km,开车时速v=120km/h,那么需要的时间为t=s/v=10h;考虑到不是全程高速、中间可能会休息,假设平均时速v’=80km/h会更合理,于是需要的时间为t=s/v’=15h。
通过这个例子,我们可以体会到两点:仿真即是通过一组公式模仿真实世界,或者说使用一个数学模型简化替代真实世界;数学模型的复杂度越高,计算结果与真实世界越相近,但是建模难度越高、计算速度越慢。
二、自动驾驶汽车的仿真测试的不同手段我们首先考虑真实世界的情况,自动驾驶汽车在开放道路进行测试时,可以用下图来表示:自动驾驶车辆主要由传感器、控制器和执行器构成(当然这主要是指自动驾驶部分,车身、底盘等传统车辆部分暂且不提),驾驶员驾驶车辆在不同的道路、交通和天气环境下接受测试。
当然高级别的自动驾驶不需要驾驶员,所以图中用虚线表示。
当在仿真环境中模拟其中的不同部分时,可以得到仿真测试的不同手段。
列举如下表所示:注:后面会有一篇详细介绍不同仿真测试手段的区别,敬请关注。
三、不同仿真测试手段的选择经常会有人遇到要不要做HIL、要不要买个视频暗箱、要不要买个驾驶模拟器等等疑问,这时如果能先自问自答这样一个问题应该会有所帮助:我们准备测试的被测对象是什么?如果被测对象仅仅是开发阶段的算法,那只使用MIL/SIL就可以;如果被测对象是要在实车使用的控制器,那可能需要一套HIL设备提前进行测试、提前发现问题。
如果不采用视频暗箱、雷达回波模拟器等设备就不能实现测试闭环,那此类传感器信号仿真设备也是需要的。
诸如此类,如果能时刻谨记被测对象是什么和测试目的是什么,应该对选择仿真测试手段有很大帮助。
自动驾驶虚拟仿真测试介绍(2):为什么一、仿真测试是汽车工程师的自然需求二、仿真测试是汽车开发流程的必然要求三、仿真测试是自动驾驶开发的必经之路“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。
这是第二篇,介绍为什么要进行仿真测试。
”一、仿真测试是汽车工程师的自然需求仿真测试其实在结构开发领域早已广泛应用。
如果说验证一个螺栓强度还可以翻手册、使用公式计算,那么对于一些复杂的零件的强度校核和结构优化,就要借助仿真手段,这就是CAE(Computer Aided Engineering),比如下图中对零件的应力分布计算。
CAE手段的使用有效减少了样件的数量,缩短了试验时间,节省了开发成本。
这些好处主要是零部件结构开发部门所享受,算法和控制器的开发部门自然很是羡慕。
我们可不可以在算法开发阶段就进行测试发现一些低级错误?可不可以在办公室就可以对算法和控制器进行测试,而不是每个版本的新程序都要到实车上测试、在寒冬酷暑的室外调试很久?可不可以在计算机上对真实世界中危险或不易实现的场景进行测试?可不可以在解决bug或算法升版后,对之前的测试场景方便的进行重复测试?欣慰的是,这些需求仿真测试都可以满足。
二、仿真测试是汽车开发流程的必然要求V模型是广泛在软件开发和测试中使用流程,如下图所示:V模型要求在开发团队进行不同阶段的开发同时,测试团队编制对应的测试用例,并在开发阶段完成后立即进行测试。
这就要求在集成测试、系统测试等暂无完整产品样件的情况下,就开始进行测试。
另外,有数据表明,在汽车电控系统的开发过程中,越早发现问题则修正问题的成本越低。
在开发的早期,就建立起测试验证的手段,快速高效的发现和解决开发过程中的问题,可以有效减低开发成本、提高开发效率。
而在开发的早期进行测试,在暂无完整产品样件的情况下进行测试,就需要仿真手段提供测试环境。
三、仿真测试是自动驾驶开发的必经之路自动驾驶汽车是一个新生事物,消费者对其安全性还不够信任。
那么,自动驾驶汽车的安全性达到什么水平才能被消费者接受呢?我想其安全水平不低于人类驾驶员,应该是一个最起码的要求。
根据RAND公司一份名为《Driving to Safety》的报告,要证明自动驾驶汽车相比于人类驾驶员能够减少20%交通事故死亡率,需要进行约80亿公里的公共道路测试,假设由100辆车组成的车队每年365天每天24小时不间歇的以40km/h的平均速度进行测试,大概需要225年。
这个测试时间显然是不现实的。
就要求在实车测试之外,寻求其他的方法,大幅缩短测试时间。
在虚拟环境下进行大规模的仿真测试,成为了必须选择的方法。
比如waymo 公司的CarCraft仿真平台中,有25000台仿真车辆同时进行测试,每天总计可进行1200万公里的测试。
按照这个速度,完成上面提到的80亿公里的测试,仅需要2年。
自动驾驶虚拟仿真测试介绍(3):测什么一、自动驾驶算法构成二、自动驾驶仿真测试的两个阶段“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。
这是第三篇:测什么,介绍仿真测试的被测对象是什么。
”一、自动驾驶算法构成一个完整的自动驾驶算法,可以粗略的用下图表示。
传感器的感知模块从真实环境中获取信息,并将其转换为原始信号发送给识别模块;识别模块从原始信号中识别出目标,并发出目标列表。
比如摄像头的原始信号为图片数据,激光雷达的原始信号为点云数据,识别模块从中识别出前方目标的类型、位置和速度等信息。
融合模块对来自不同传感器的目标列表进行处理后,发出统一的目标列表给决策模块。
决策模块分析目标列表,对目标未来的状态进行预测,并规划自车的行驶路径。
控制模块根据目标行驶路径,发出加速、制动和转向等控制指令,对车辆状态进行控制。
根据上面的分析,大体上可以将一个完整的自动驾驶算法分为两个部分:(1)感知识别模块,其输入是外部环境,输出是目标列表;(2)决策控制模块,其输入是目标列表,输出是对车辆的控制指令。
二、自动驾驶仿真测试的两个阶段远期的目标,自然是对完整的自己驾驶算法进行仿真测试,不过考虑到近期的实际情况,大致要分为两个发展阶段(当然这两个阶段可能并没有明显的时间界限)。
(1)阶段一:在试验室和封闭试验场内对传感器的感知识别模块进行测试,在虚拟仿真环境对决策控制模块进行测试,仿真环境直接向决策控制模块提供目标列表。
这主要是因为目前对传感器的建模还有很多局限,从而不能进行有效(甚至是正确)的仿真。
比如摄像头输出的图片较容易仿真,但是污渍、强光等特性仿真难度较大;而对于毫米波雷达如果建立精度较高的模型,计算速度较慢,不能满足仿真测试的需求。
在试验室和封闭试验场可以对测试环境进行完整的控制和数据记录。
比如布置不同类别、位置和速度的行人和车辆,甚至可以对雨、雪、雾和强光的环境要素进行模拟,并将传感器处理输出的目标列表与真实环境进行对比,从而给出对感知识别模块的评估结果和改进建议。
这么做的好处是,在传感器建模有很多局限的情况下,依然能够在仿真环境下对决策控制模块进行测试,提前享受仿真测试的优势。
(2)阶段二:在虚拟仿真环境进行高精度的传感器建模,从而对完整的自动驾驶算法进行测试。
这样不仅可以在同一环境下进行测试,从而提高测试效率、测试场景覆盖率和复杂度;而且可以对一些基于AI的算法进行端到端的测试。
这一阶段的难点,一方面是前面提到的满足测试需求的传感器建模,另外一方面是不同传感器厂家和OEM厂家直接交互的接口很可能不一致(有些情况下可能并不存在)。
自动驾驶虚拟仿真测试介绍(4):用什么测一、仿真测试平台的构成二、仿真测试工具的流派三、仿真测试工具的选择“本系列尝试从是什么、为什么、测什么、用什么测、怎么测和谁来测等方面来介绍什么是自动驾驶虚拟仿真测试。
这是第四篇:用什么测,介绍自动驾驶虚拟仿真测试平台的构成。
”一、仿真测试平台的构成我们在上一篇《测什么》中用了一张图来概括自动驾驶算法的构成:自动驾驶算法通过各种传感器探测周围环境的状态,进行决策后对车辆进行控制。
为了在仿真环境对自动驾驶算法进行测试,需要模拟自动驾驶算法的各种输入,并响应其输出,从而“欺骗”它,让它以为在真实世界工作。
为此,对照真实世界,仿真测试平台由交通场景模块、传感器模块、车辆动力学模块和测试管理模块构成。
如下图所示:(1)交通场景模块交通场景模块用于模拟车辆运行的外部世界。
一方面,模拟各种交通场景要素,比如:①高速公路、城市道路等不同的道路结构;②标志标线、护栏、交通灯等道路附属设施;③轿车、卡车、摩托车、行人等交通参与者;④路障、锥桶、遗撒物等临时物体;⑤晴、阴、雨、雪、白天、黑夜等不同的天气。
另一方面,模拟不同交通场景要素之间的组合和动态关系,即不同的“场景”。
比如:高速公路上,一辆轿车在被测车辆前方快速切入;十字路口黄灯时,一辆卡车在被测车辆前方紧急制动停车。
(2)传感器模块传感器模块用于模拟车辆上安装的各种传感器,从而获得交通场景的状态。
一方面,根据传感器种类的不同,模拟不同的信号内容,比如:摄像头传感器输出图像信号,激光雷达传感器输出点云信号,导航传感器输出定位信号。
另一方面,根据传感器特性和参数的不同,模拟出其“局限”,比如:传感器的探测范围,摄像头的畸变和炫光,不同材质对激光雷达光线吸收的影响,护栏对毫米波雷达的杂波影响。
(3)车辆动力学模块车辆动力学模块用于模拟车辆本身对自动驾驶算法控制的响应,特别是对加速、制动和转向的响应。
车辆动力学模块一般参照真实车辆,由车身、动力传动系统、悬架系统、转向系统、制动系统和车轮等不同的子系统构成。
(4)测试管理模块测试管理模块,负责对以上三个部分组成的仿真测试环境的管理,保证仿真测试的效果和效率。
一方面,对测试流程进行管理,比如:测试用例的选择、测试的启动和终止、仿真模块的调度。
另一方面,对测试数据进行管理,比如:测试用例的更新、测试数据的记录和分析、测试报告的生成。
二、仿真测试工具的流派目前常见的仿真测试工具有很多种,根据自动驾驶开发团队的来源,大致可分为如下几个流派:传统主机厂倾向于使用汽车工业的商业软件,使用机器人平台开发自动驾驶算法的团队常常使用ROS/Gazebo,很多擅长计算机图形学的团队基于游戏引擎开发仿真工具。
而大规模复杂交通流的仿真需求,则由交通规划领域的软件来满足。
下图列举了一些常见的工具:比如汽车工业的CarSim、CarMaker、VTD和PreScan,机器人开发的ROS 和Gazebo,基于游戏引擎的CARLA、AirSim和LGSVL,以及交通规划软件VISSIM和SUMO。