自动化故障注入测试提高软件质量

发表于:2020-2-06 14:16

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:moon3    来源:博客园

  Pickering Interfaces 支持ECU测试的自动化故障注入过程,帮助汽车制造商在更短的时间内进行更多测试
  如今,测试发动机控制单元(ECU),特别是与安全相关部分,在软件测试和硬件测试方面都很重要——这是因为ECU内需要增加更多的智能来控制刹车,防止翻车,并且确保在不安全的驾驶模式下能够将动力应用于正确的轮胎上。Magna Powertrain,Delphi和Continental等汽车制造商在测试其产品的安全运行方面也存在同样的问题。
  
  在本文中,我们重点关注汽车分动箱的案例。分动箱是一种机械/电子设备,它可以监控车轮打滑并确保动力施加在不打滑的车轮上。
  作为设计过程的一部分,制造商进行一系列测试确保控制分动箱的软件能够对系统故障(如开路,短路和交叉/内联电阻)做出预测和安全的反应。最终,这将提高客户的满意度和降低保修成本。
  例如,一个制造商开发出一款测试装置,该装置允许手动注入故障。虽然这个装置是能工作的,但手动切换故障十分耗费时间——这限制了他们在特定单元上可运行的测试事件的数量。此外,手动装置需要频繁的维护,这进一步减少了测试时间。最后,还容易出现操作失误从而影响测试结果。
  这就是他们联系Pickering的原因。这些产品包括用于硬件在环仿真系统(HIL)的故障注入(FIU)开关解决方案和程控电阻。FIU开关模块可用于将电气故障注入系统,该系统能够模拟由于腐蚀,短路/开路和其它电气故障而可能发生的各种情况,这些情况通过老化,损坏甚至是错误安装所导致的。
  使用Pickering故障注入模块来自动完成故障注入,他们可以在更短的时间内运行更多的测试事件,并且使他们的测试更加可重复,全面,并且他们可以在开发周期的早期发现并修复问题。
  检测故障
  传动装置用于将汽车变速器的动力分配到前轴和后轴。一个例子是:车辆双速自动循迹系统(ATC),ATC的特点包括一个湿式多片离合器,机电换挡驱动和前置链条驱动输出。该系统可确保前后轮之间的动态扭矩分配,并可进行调整,以在各种地形和恶劣天气下提供所需的车辆性能特点。
  作为TCCM(分动箱控制机构)的一部分,分动箱电子控制机构单元(ECU)控制分动箱的操作。它连接到分动箱中的传感器和执行器,以及与车辆控制器区域网络(CAN)的接口。 当驾驶员换档时,分动箱ECU接收该命令,然后确定它是否可以执行该换档。 成功完成换档后,分动箱ECU将其上传给网络。
  在实际操作中,可能会发生许多不同的故障。 例如,考虑使用八芯电缆将分动箱中的执行器和传感器连接到控制模块。 这些连接可能出现问题如开路或短路到相邻导体,此外,随着汽车老化,高阻抗连接和高阻短路都可能出现,这些可能导致分动箱在现场失效。
  为确保分动箱在这些故障条件下安全运行,分动箱制造商在其控制实验室中需要模拟这些故障。
  硬件在环测试已经成为测试电子控制单元的一种非常流行的方式,例如当今汽车中使用的分动箱ECU。 HIL模拟器可以提供车辆的所有输入和输出,而无需实际构建原型车辆。 它为ECU制造商节省了大量资金,不仅因为他们不必制造原型车,还因为他们可以在实验室而不是在测试轨道或测功机上进行详尽的测试。
  他们甚至可以测试分动箱ECU而无需实际具有分动箱的机械装置。 在这种模式下,HIL测试系统除了模拟车辆的其余部分外还模拟分动箱。
  为了测试分动箱ECU软件,设计人员开发了许多不同的操作情景。 这些包括车辆启动,关闭和驾驶场景,旨在使分动箱控制模块完成其进程。 例如,在一种情况下,命令分动箱到达其所需位置。 其他场景执行各种其他产品功能(各种换档方案,冷启动曲线,电压曲线等)。
  当有问题的制造商首次开始进行这种类型的测试时,他们建立了一个测试装置,如图1所示,称为分线盒,用于手动插故障注入。 分线盒接在分动箱和其控制模块之间,技术人员将手动切换故障。 如前所述,这限制了它们在任何给定时间范围内可以运行的测试事件的数量,需要更频繁的维护,更慢的测试时间,并且还容易出现操作员错误,这可能危及测试结果。 虽然这种方法是一种有效的入门方式,但显然还有很大的改进空间。
图1 用于机台测试的常用分线盒设计
  可以说,手动故障注入最棘手的问题是运行一系列测试需要很长时间。 使用分线盒,运行一个测试用例最多需要8分钟。 由于它们运行了数千个测试用例,因此从一开始就很明显,他们必须找到一种方法来缩短测试时间。
  以这种方式手动注入故障的另一个缺点是它们只能引入短路和开路。 为了更彻底地测试分动箱ECU,他们还需要能够引入电阻故障以及硬开路和短路故障。
  以这种方式手动插入故障的第三个问题是分线盒是硬接线的,因此不是很灵活。 为了测试不同的分动箱ECU或不同的产品配置,测试工程部门必须建立一个新的分线盒或重新连接现有的分线盒。 这样做既昂贵又耗时。
  自动故障注入
  显然,制造商一直在考虑如何自动插入故障。 这种特殊的分动箱制造商的目标不仅是加速测试执行,而且还增加了引入电阻故障的能力,并使测试设备更加通用。 他们推断,实现这些目标将使他们能够模拟更多真实的故障,从而产生更加稳定的产品。
  在评估了几家供应商的开关系统后,该客户将Pickering Interfaces产品确定为一种很有前景的解决方案。 他们购买了一个19插槽的PXI机箱,其中装有多个PXI总线模块(我们的PXI 30A故障注入开关模块,(型号40-191),如图2所示),以模拟短路和开路。 该模块为高电流故障注入提供了强大的解决方案。 它采用固态开关元件,能够在单通道上承载40A,同时在所有通道上承载30A。 目的是在测试装置和被测设备之间引入三种不同的故障条件,包括开路,UUT连接之间的短路和外部信号的短路。
  每个通道上的固态继电器使测试系统能够将信号连接到UUT以进行开路。 故障注入总线允许任何通道短路到任何其他通道,并且还允许任何通道连接到外部信号,例如电源,点火或接地,以模拟故障状况。 该模块配有两个故障总线。
  由于故障并非总是完全开路或硬短路,我们的可编程电阻模块(型号40-295),如图2所示,用于模拟高阻故障。 该模块以8位分辨率提供多达18个完全隔离的可变电阻,或以16位分辨率提供10个完全隔离的可变电阻。 每个通道的电阻可以设置在0欧姆和16MΩ之间。
图2 PXI 30A故障注入模块40-191
 
  图3 PXI程控电阻40-295
  图4显示了如果实际的分动箱需要成为测试的一部分,则开关系统如何连接HIL模拟器,被测试的分动箱ECU和分动箱。
  
  图4 系统连接示意图
  开关系统用于注入所有潜在的故障。 例如,要注入开路故障,他们只需使线路断开即可。 要短接两条线路,它们将两条线路中的每条线路连接到故障注入模块,并将两条信号连接到模块的故障总线之一。 为了模拟电源或接地短路,他们将信号线连接到其中一个故障总线,然后将该总线连接到地或外部电压。
  为了将电阻故障注入到在分动箱和分动箱ECU之间运行的信号线之一,控制计算机将命令开关系统切换40-295可编程电阻器模块上的可变电阻器。 接下来,它们谨慎改变电阻:0Ω,5Ω,10Ω,20Ω,50Ω,100Ω,200Ω,500Ω,1,000Ω等,直到它们达到1MΩ,或直到线路表现为开路。
  注入故障后,它们会运行一个或多个驾驶场景并收集测试数据。 他们收集的最重要的数据之一是系统的电流。 异常高的电流是问题的明确迹象。 不过,他们也会查看其他一些参数。 这些包括CAN信号和由分动箱ECU和整个系统行为产生的电信号。
  通过自动注入故障,运行单个测试用例所需的时间从平均8分钟减少到大约4分钟 - 当您考虑到典型的测试运行可能包含20,000个测试用例并需要更多时,这可能超过一个月完全运行。 它还允许制造商减少运行完整测试所需的时间。 通过手动注入,必须有技术人员或测试工程师来切换故障。 然而,现在,只有在进行风险测试时才需要人员在场,因为大多数测试是在一夜之间进行的,无需监督。
  分析测试结果
  可以想象,这些测试会生成大量的测试数据,分析这些数据是一项艰巨的任务。 他们首先要寻找的是测试是否对UUT造成了任何损害。没有故障会损坏分动箱ECU,因此任何有关设备损坏的迹象都要引起重视。
  如果没有任何测试用例造成任何损害,他们就会开始分析其余的测试数据。 此时特别值得注意的是CAN信号和整体系统行为。他们正在寻找的数据表明在分动箱中无意的电机运动。 他们还可能检查分动箱ECU是否生成了相应的诊断代码。
  分析测试数据是一个团队的工作 - 团队不仅包括测试工程师,还包括设计分动箱的机械工程师,电子工程师和软件开发人员。 通过团队合作,他们不仅能够快速找到关注的领域,而且还能够更快地完成修复。
  未来是属于自动化的
  虽然客户的工程团队对Pickering开关系统允许他们自动化测试的方式非常满意,但他们意识到这只是一个开始。例如,他们不是为每个分动箱建立单独的测试装置,而是为他们的分动箱构建一个“通用”测试系统。使用计算机控制的开关系统让他们觉得他们可以做到这一点。
  制造商必须跨越的另一个障碍是弄清楚如何减少分析测试数据所需的时间。自动注入故障使他们能够运行更多测试,但它也增加了他们必须花费在分析测试数据上的时间。在这种情况下,考虑如何自动分析测试数据。开发一个可以自动标记可能存在问题的测试数据的工具可以节省大量时间。
  正在努力减少测试用例的数量。在我们客户的案例中,他们的工程师认为他们可以通过识别测试用例来做到这一点,这些测试用例实际测试的是相同东西,并从测试程序中消除它们。还应注意,通常在NPI中开发的测试用例的子集用于产品测试策略。与NPI测量相比,这种策略提供了一致的测试结果,并加快了生产测试的开发速度。
  Pickering产品帮助Engineering推出了“SMART Automation”,可在动态车辆条件下测试其他故障模式(内联电阻故障,交叉短路和交叉电阻短路),从而提高产品质量。
  作为此阶段测试的底线,Pickering Interfaces支持ECU制造商自动化故障注入过程,帮助他们在更短的时间内运行更多测试用例。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号