技术文章

为自动驾驶功能实现混合车辆在环测试方法

作者 Selim Solmaz,Virtual Vehicle Research GmbH


“基于模型的设计...使我们能够将精力集中于将混合动力测试作为一种方法来进行验证,而不必关注低级编码和实现细节。”

高级驾驶辅助系统 (ADAS) 和自动驾驶 (AD) 系统需要在各种不同驾驶场景中经过广泛的测试,才能在量产车中安全使用。由于当前常用的两种主流方法存在局限性,这种测试可能给汽车工程师带来巨大挑战。第一种方法是以纯仿真方式测试 AD 和 ADAS 功能。该方法对于早期算法开发有效,但无法捕获到真实车辆动态特性和硬件相关的效应,而这可能严重影响算法性能。第二种方法是在实车中进行测试。该方法虽然可以消除上述局限性,但更耗时、成本更高且难以复制 - 更不用说在某些驾驶场景下可能不安全。

为了弥补纯仿真和车辆测试之间的差距,我的虚拟车辆研究团队实现了一种混合测试方法。这种方法是在一个协同仿真框架中纳入整合真实车辆和虚拟车辆的车辆在环测试,从而能够在仿真交通场景中安全、逼真地测试 ADAS 和 AD 功能(图 1)。例如,在突然制动场景下,可以应用这种混合测试方法来运行某个自动紧急制动系统的测试。该系统充分考虑真实车辆的质量、制动系统动态热性、硬件延迟及其他在模型中很难甚至无法捕获到的细微差别,同时不存在发生真实追尾事故的风险。

视频长度为 0:28

图 1. 协同仿真框架支持对 ADAS 和 AD 功能进行安全、逼真的测试。

借助 MATLAB® 和 Simulink®,我们通过基于模型的设计测试了内部开发的 ADAS 功能,对我们的混合测试方法进行了验证。这些功能结合了横向和纵向跟踪以及车道变更决策功能,以支持自适应巡航控制 (ACC)、车道保持辅助 (LKA) 和轨迹规划 (TP) 功能。借助基于模型的设计,我们能够快速进行建模、仿真和生成 ADAS 功能的代码。这使我们能够将精力集中于将混合动力测试作为一种方法来进行验证,而不必关注低级编码和实现细节。

混合测试的工作原理

在混合测试中,一辆配备 AD 或 ADAS 软件和硬件的真实车辆在封闭的试验场内行驶,该试验场中没有任何其他车辆或障碍物。控制软件并不感应和响应真实的交通状况,而是与虚拟环境进行交互,该虚拟环境会在车辆穿过试验场时不断实时更新。在我们的设置中,测试车辆是一辆 Ford® 蒙迪欧混合动力车。该车配备了 ADAS 套件,可以完全控制车辆的节气门、制动、转向和换挡。试验场是奥地利格拉茨附近的 ÖAMTC Lang/Lebring 试验车道(图 2)。此外,虚拟环境基于 Simulation of Urban MObility (SUMO)。SUMO 是一个开源的持续交通仿真包。静态环境(包括路标、车道坐标和其他基础架构元素)是使用 ASAM OpenDRIVE® 格式设定定义的。

试验场俯视图:显示真实车辆的测试轨道和试验车道的虚拟展示。

图 2. 试验场鸟瞰图(上图)及其虚拟表示(下图)。

当测试车辆在多车道轨道上行驶时,GPS 和其他车载传感器会捕获其位置、速度和方向。这些信息会转发到在车上工控机上运行的虚拟环境中。在此环境中,这些信息用于在交通仿真中确定测试车辆(自主车辆)的方向。基于对自主车辆及其相对于虚拟车辆和静态基础架构元素的位置的仿真,虚拟环境生成一组物体列表和车道检测信息,并通过 CAN 总线接口发送到在 dSPACE® MicroAutoBox 实时硬件上运行的 ADAS 控制软件。该控制软件使用物体列表和车道信息来做出关于制动、加速、变道和轨迹规划方面的决策,然后通过 CAN 总线向车辆的转向、节气门和制动作动器发送执行这些决策所需的信号(图 3)。

混合测试设置的架构概览:显示各种硬件组件和实车在协同仿真平台工作流中的位置。

图 3. 混合测试设置的架构概述。

ADAS 功能的建模、仿真和代码生成

我们使用同事为另一项 ADAS 应用开发的一套 Simulink 模型开始开发 ADAS 功能的 ACC、LKA 和轨迹规划组件 - 我们称之为 Motorway Chauffeur (MWC)。我们对这些模型进行了调整以使用来自虚拟环境的物体列表和车道信息,并在桌面上运行一系列闭环仿真来验证系统的基本功能(图 4)。我们还使用 Model.CONNECT 集成平台对 IPG CarMaker 的 ADAS 控制模型进行仿真。

某个 ADAS 功能的 Simulink 模型截图:显示车辆如何制动、启动节气门和换挡以及调整车速。

图 4. 某个车辆功能的 Simulink 模型。

通过仿真测试 ADAS 功能后,我们使用 Embedded Coder® 从模型中生成了 C++ 代码,然后将代码部署到 MicroAutoBox 目标硬件上,为车内测试做准备。

进行车内测试和后处理结果

我们在测试车辆中安装了整套硬件设置,包括 MicroAutoBox 硬件和工控机(图 5)。使用这种配置,我们在试验场进行了大量测试以评估各种 ADAS 和 AD 功能,包括在虚拟交通中响应基础架构至车辆信息性消息 (IVIM) 的车道变更和车速变化。

在测试车辆后备箱中安装的 MicroAutoBox 硬件和工控机,以及描述其各种标注组件的表。

图 5. 在测试车辆中安装的 MicroAutoBox 硬件和工控机。

试驾后,我们使用 MATLAB 分析了车载传感器记录的数据,并生成了显示车速、转向角度和位置随时间变化的绘图(图 6)。这一分析是我们研究目标的核心,因为它使我们能够使用车辆在环测试来评估 ADAS 功能的关键性能指标 (KPI)。

三个绘图显示在坡道场景下变化的车辆参数,包括随时间变化的车速、随时间变化的车辆转向角和车辆位置。

图 6. 坡道场景下的车辆参数绘图。(此图使用 MATLAB 创建。)

MATLAB 中的后处理数据也有助于分析我们在测试中发现的问题。例如,在一次测试中,我们用直接来自 MobilEye ADAS 摄像头的类似数据替换了来自虚拟环境的物体列表数据。当用来自真实传感器的数据交换仿真数据时,我们注意到控制信号中发生振荡。我们的分析显示,问题源于车道检测数据中存在大约 300 毫秒的延迟。在我们的 Simulink 模型中引入相同的延迟后,随后的仿真显示出类似的振荡。然后,我们可以修改控制算法来消除这种延迟,并重新生成代码来解决问题。

后续步骤

我们的团队还在继续开发我们已实现的混合测试方法。我们当前正在探索几项增强功能,包括用交通场景的三维可视化代替当前的鸟瞰图可视化。计划中的另一项增强功能是在仿真框架中包含物理传感器模型,这将支持感知算法的开发和车辆在环测试,并实现混合测试中车载传感器的进一步集成。

2024 年发布

使用到的产品

了解更多

查看文章,了解相关行业