我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。
老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:
屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节能减排。
无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、焦虑、毁掉你本就不多的热情和定力。
时间不知不觉中,快要来到深秋。马上到了中秋和国庆的假期,成年人的我也不知道去哪里渡自己的灵魂,独自敲击一些文字算是对这段时间做一个记录。
一、背景信息
在汽车行业中,硬件在环(HIL)是指在专门配备的测试台上测试和验证复杂软件系统的一种方法,这些测试台从雷达和摄像头等物理设备接收数据输入。
硬件在环测试是一种方法,通过模拟或仿真实际硬件环境,将软件系统与真实或虚拟的硬件平台相结合,进行全面的功能验证和性能评估。在汽车行业中,硬件在环是指在专门配备的测试台上测试和验证复杂软件系统,这些测试台从雷达和摄像头等物理设备接收数据输入。
通过HIL测试,机器或系统的物理部分被仿真器所代替,并被广泛运用于汽车控制器开发过程中。在ECU开发过程中,系统软件和机械硬件结构通常是并行设计的。只有在集成后才能开展测试工作。如果在集成后发现了一些严重风险的安全Bug,就有可能造成人身伤害、损坏设备和项目延误。为了减少这些bug的发生,HIL测试得到了广泛的关注。
HIL测试在汽车行业特别是ECU(电子控制单元)开发中的几个优势:
-> 风险降低:正如您提到的,ECU开发中软件和硬件通常是并行设计的,这意味着在集成阶段可能会遇到各种兼容性和性能问题。HIL测试允许在集成之前发现并修复潜在的问题,从而显著降低因软件缺陷导致的安全风险、设备损坏和项目延误的风险。
-> 早期验证:通过HIL测试,工程师可以在开发周期的早期阶段就验证控制算法和系统的功能。这有助于加速开发过程,因为问题可以在更易于管理的阶段被发现和解决。
-> 复杂场景模拟:HIL测试能够模拟各种极端和复杂的运行条件,这些条件在实车测试中可能难以复现或过于危险。例如,可以模拟高速碰撞、极端天气条件或复杂的交通状况,以评估ECU的响应和性能。
-> 成本效益:虽然HIL测试系统的初始投资可能较高,但它能够显著减少因重复实车测试、修复和重新测试而产生的成本。此外,通过减少因设计缺陷导致的召回和维修费用,长期来看HIL测试能够带来显著的经济效益。
-> 符合法规和标准:汽车行业受到严格的法规和标准约束,要求ECU和控制系统在各种条件下都能正常工作。HIL测试可以帮助确保系统符合这些要求,提高产品的合规性。
-> 促进技术创新:随着自动驾驶和车联网技术的快速发展,对ECU和控制系统的要求越来越高。HIL测试为这些新技术的验证和测试提供了强有力的支持,促进了技术创新的快速推进。
二、HIL 工作原理
HIL 测试需要模拟被测电子控制单元(ECU)的车辆和环境输入,使其相信它正在对开阔道路上的真实驾驶条件做出反应。HIL测试台包含所有相关的车辆组件。模拟器向真实的摄像头和雷达系统提供输入,这些系统再向在测系统发送信号,看看它是否对输入作出正确响应。
HIL测试台的关键组件包括:
1、真实或虚拟的车辆组件:测试台可能包含实际的摄像头、雷达、传感器等,这些设备用于模拟车辆行驶时接收到的外部信号。这些设备通常连接到高保真度的仿真器,以确保信号的准确性和真实性。
2、仿真器:仿真器是HIL测试台的核心,它负责模拟车辆和环境的各种参数,如道路条件、交通状况、天气变化等。仿真器还向真实的摄像头和雷达系统提供输入信号,以模拟车辆在真实道路上行驶时可能遇到的各种情况。
3、被测ECU:这是HIL测试的主要对象。被测ECU被安装在测试台上,并通过适当的接口与仿真器和车辆组件相连。在测试过程中,被测ECU会接收到来自仿真器和真实传感器的信号,并根据其内部的控制算法进行处理和响应。
4、数据采集和分析系统:HIL测试台还配备了数据采集和分析系统,用于记录被测ECU的响应数据,并与预期结果进行比较。这有助于工程师评估ECU的性能和可靠性,并发现潜在的问题。
HIL测试的过程通常包括以下几个步骤:
-> 准备阶段:设置测试台,连接所有必要的设备和传感器,配置仿真器以模拟特定的测试场景。
-> 输入信号模拟:仿真器向真实的摄像头和雷达系统提供输入信号,模拟车辆在真实道路上行驶时可能遇到的各种情况。
-> 被测ECU响应:被测ECU接收到输入信号后,根据其内部的控制算法进行处理,并产生相应的输出信号。
-> 数据采集和分析:数据采集系统记录被测ECU的响应数据,并将其与预期结果进行比较。工程师分析这些数据,以评估ECU的性能和可靠性。
-> 问题诊断和修复:如果发现ECU存在性能问题或不符合预期,工程师将进行进一步的诊断,并采取相应的修复措施。
-> 重复测试:在修复问题后,工程师将重复进行测试,以确保ECU的性能和可靠性符合要求。
例如,测试脚本可以创建一种场景,其中一辆车在雨中以 60 mph 的速度绕着弯道行驶,它在道路中遇到一个未知物体,或者一辆迎面而来的汽车突然越过中心线。连接到HIL测试台的摄像头和雷达向ECU发送图像,在测系统必须实时处理这些数据,并决定要采取的行动步骤。
HIL的优势
HIL测试是现代汽车软件开发过程中不可或缺的一部分,原因有很多:
HIL测试可运行数百或数千个场景,而不用付出实际道路测试所需的时间和成本。
HIL测试可承受在道路上测试时过于危险或不现实的场景。
HIL测试是可重复的。
HIL测试过程是高度自动化的,可以支持多线程,因此多个测试可以同时进行,从而加快开发过程。
HIL支持具有已知系统行为性能的频繁软件发布过程。
在开发过程中,HIL测试位于SIL测试之后,但仍然在CI/CD/CT过程的参数范围内,让开发人员能够在产品发给OEM之前发现潜在缺陷。
HIL测试结果可分享给OEM和第三方的开发团队,这也会加快开发速度并提高质量、可靠性和安全性。
由于HIL测试台是绑定到特定位置的物理设备,所以软件开发历来是碎片化的。
三、总结
HIL(Hardware-in-the-Loop,硬件在环)测试是一种先进的测试方法,主要用于在产品开发阶段验证控制算法和嵌入式软件的性能和可靠性,特别是在涉及复杂控制系统(如汽车、航空、工业自动化等领域)时。HIL测试通过模拟实际或预期的运行环境,将真实的ECU(电子控制单元)或系统控制器连接到模拟的传感器和执行器上,从而在不依赖实际物理硬件的条件下进行测试。
HIL测试作为一种高效的测试手段,在控制系统和嵌入式软件的开发过程中发挥着重要作用。它不仅提高了测试效率和准确性,还降低了测试成本和安全风险。随着技术的不断发展,HIL测试将在更多领域得到应用,并不断完善和优化。
搁笔分享完毕!
愿你我相信时间的力量
做一个长期主义者