鉴源实验室

Jianyuan Lab

自动驾驶仿真测试介绍

发布时间:2023-02-24 作者:上海工业控制安全创新科技有限公司 点击次数:

作者 | 楼泽如 上海控安可信软件创新研究院研发工程师
来源 | 鉴源实验室

01
引 言

自动驾驶汽车的兴起,正在重新定义汽车行业。随着自动驾驶技术的发展,自动驾驶汽车将会大大提升交通安全、减少事故发生、减少交通拥堵、提高公路容量等等,为人类带来前所未有的便利。然而,由于自动驾驶汽车需要面对复杂的交通环境和意外事件,使得自动驾驶汽车的开发和测试颇具挑战性。
传统的自动驾驶测试方法包括在实际道路上进行封闭场地和公共道路测试,但这些方法都存在很大的安全风险和高成本。因此,自动驾驶仿真测试逐渐成为了自动驾驶汽车开发过程中必不可少的一部分,对于提高自动驾驶汽车的安全性、可靠性、精度和性能等方面都有着重要的意义。仿真测试不仅可以在更加安全、低成本的环境下进行测试,而且可以提供更多的测试数据和测试情况,加速自动驾驶汽车的开发和实际应用。

02
自动驾驶仿真测试的重要性

自动驾驶仿真测试是一种通过仿真技术来模拟测试自动驾驶汽车的功能和性能的方法,以评估自动驾驶汽车的可靠性、安全性和适应性等,便于优化自动驾驶汽车的功能、性能和行驶体验。
自动驾驶仿真测试凭借其测试场景丰富、计算速度快、测试效率高、资源消耗低、可重复性好、可嵌入汽车开发的各个环节等原因,能够很好地在实际路面行驶之前,对车辆进行全面、安全的测试。这种测试方法可以提高自动驾驶系统的安全性和可靠性,并减少实际测试的风险和成本,加速自动驾驶技术的发展和应用。仿真测试在自动驾驶技术开发中具有以下几个重要性和必要性:
(1)安全性保障:自动驾驶汽车具有高度的复杂性和安全性要求,直接进行实地测试会存在很高的风险。仿真测试可以在虚拟环境中模拟各种复杂的路况和交通情况,对自动驾驶汽车的各项功能进行测试,从而发现潜在的安全隐患,保障自动驾驶汽车的安全性。
(2)成本效益:自动驾驶汽车的研发需要大量的测试,如果全部在实际道路上进行测试,将会耗费大量的时间和金钱。仿真测试可以在虚拟环境中快速、精准地模拟各种场景和情况,有效地降低测试成本,缩短研发周期,提高测试效率。
(3)多样化的测试场景:仿真测试可以模拟各种复杂的路况、天气状况、道路建设和交通情况等,进行多种不同情况下的测试,以确保自动驾驶汽车的安全性和可靠性。
(4)提高测试覆盖率:仿真测试可以模拟大量测试场景,提高测试的覆盖率和深度,从而更好地发现和解决潜在的问题。
(5)系统性的测试:自动驾驶汽车涉及到多个系统的协同作用,仿真测试可以对整个系统进行系统性的测试,确保系统各个部分的配合协调性。

03
自动驾驶仿真测试的类型

自动驾驶仿真测试作为一种高效、安全、低成本的测试方法,会针对自动驾驶系统的功能和性能、安全性、可靠性等,进行全面、充分的测试,以保证自动驾驶汽车能够达到路面行驶的要求。自动驾驶汽车的功能测试是测试自动驾驶汽车是否能够按照预期执行各种功能,例如遵守交通规则、感知道路标志和障碍物等。Huang等[3]将功能测试分为
(1)感知层功能测试:感知测试主要用于测试自动驾驶汽车的感知能力,包括车道线和道路标志的检测、障碍物识别和检测、行人检测和识别等。感知测试的目的是检查自动驾驶汽车的感知系统在不同的情况下的准确性和稳定性。
(2)决策层功能测试:决策测试主要用于测试自动驾驶汽车的决策能力,包括行驶路径规划、车辆间的跟车和超车等情况。决策测试的目的是检查自动驾驶汽车的决策系统在不同的情况下的正确性和合理性。
(3)控制层功能测试:控制测试主要用于测试自动驾驶汽车的控制能力,包括加速、制动、转向等控制。控制测试的目的是检查自动驾驶汽车的控制系统在不同情况下的稳定性和精度。
除了功能测试以外,还有一些其他的测试类型也被广泛应用于自动驾驶仿真测试中,比如安全测试、性能测试等。安全测试主要用于测试自动驾驶汽车在紧急情况下的反应能力和安全性。安全测试的目的是检查自动驾驶汽车的安全性,例如急刹车或避让等威胁场景中自动驾驶汽车是否能安全应对。而性能测试主要用于测试自动驾驶汽车的性能表现,例如加速、最高速度、燃油效率等。性能测试的目的是检查自动驾驶汽车的性能表现是否符合设计要求。
需要注意的是,自动驾驶汽车的测试不仅仅是仿真测试,还需要在实际路况下进行测试。实际测试可以验证仿真测试的结果,同时也可以发现一些仿真测试无法模拟的特殊情况。因此,自动驾驶汽车的测试需要结合仿真测试和实际测试,以保证测试结果的准确性和可靠性。

04
自动驾驶仿真测试的方式

汽车的V字开发流程是一种经典的产品开发流程,它将整个产品开发过程划分为左侧的需求分析、设计、开发等阶段,以及右侧的系统测试、集成测试等阶段,形成一个“V”字形状,因此被称为“V字开发流程”。

图1 汽车的V字开发流程[3]
针对自动驾驶的仿真测试同样也必须满足汽车的 V 字开发流程,具备覆盖 SIL(软件在环)、HIL(硬件在环)、VIL(车辆在环)全流程验证的能力。
(1)软件在环测试(Software-in-the-Loop,SIL)
软件在环测试是在开发的早期,将被测试的软件系统结合到仿真环境中进行测试。在SIL测试中,采用仿真环境来执行软件,而不是将软件实际加载到目标硬件中执行。在SIL测试中,可以对软件的算法和逻辑进行测试和验证,以检查其是否符合规格和设计要求。SIL测试可以在早期发现软件问题,这样可以更快地纠正错误,降低软件开发成本,并加快产品上市时间。
(2)硬件在环测试(Hardware-in-the-Loop,HIL)
硬件在环测试是指将真实的汽车硬件设备与模拟的系统环境相结合,通过模拟各种实际的驾驶场景和条件,对硬件进行测试和验证。在 HIL 测试中,真实的硬件设备(如控制器、传感器、执行器等)被连接到模拟的虚拟系统环境中。整个虚拟的系统环境向硬件设备发送模拟信号,从而模拟出真实的自动驾驶场景。例如,在对ECU进行测试时,ECU会接收到仿真环境发出的各种信号和数据,车速、转速、油门踏板信号、刹车信号等。通过这些信号和数据,ECU可以模拟不同的驾驶场景,例如加速、制动、转弯、变道等。
(3)车辆在环测试(Vehicle-in-the-Loop,VIL)
车辆在环测试是指将实际车辆放置在测试环境中进行测试的方法。在VIL测试中,车辆被连接到仿真系统,仿真系统提供了场景和其他车辆的虚拟信息,通过控制车辆的行为,进行测试和验证。汽车通过实际的控制系统与仿真环境进行交互,例如汽车的传感器(如雷达、摄像头)可以接收来自仿真环境的虚拟信息,汽车的控制系统也可以将车辆的实际状态(如速度、转向、制动)反馈给仿真环境。

05
小 结

在未来的自动驾驶汽车研发中,自动驾驶仿真测试将继续发挥重要的作用,在保证安全的前提下,大幅降低测试成本,并且覆盖更广泛的测试场景。同时,自动驾驶仿真测试也需要不断发展和改进,加强模拟环境的复杂性,提高数据的准确性和可靠性,提升模拟场景与真实场景的一致性,从而更好地满足自动驾驶汽车的测试需求,促进自动驾驶技术的发展。

参考文献:
[1]中国电动汽车百人会. 中国自动驾驶仿真蓝皮书 [R]. (2020) .
[2]朱冰,张培兴,赵健,陈虹,徐志刚,赵祥模,邓伟文.基于场景的自动驾驶汽车虚拟测试研究进展[J].中国公路学报,2019,32(06):1-19.DOI:10.19721/j.cnki.1001-7372.2019.06.001.
[3]Huang W L, Wang K, Lv Y, et al. Autonomous vehicles testing methods review[C]//2016 IEEE 19th International Conference on Intelligent Transportation Systems (ITSC). IEEE, 2016: 163-168.
[4]Schöner H P. Simulation in development and testing of autonomous vehicles[C]//18. Internationales Stuttgarter Symposium: Automobil-und Motorentechnik. Springer Fachmedien Wiesbaden, 2018: 1083-1095.
[5]Rosique F, Navarro P J, Fernández C, et al. A systematic review of perception system and simulators for autonomous vehicles research[J]. Sensors, 2019, 19(3): 648.

阅读原文