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

在故障注入自动化过程中,英国Pickering公司支持ECU测试,帮助汽车制造商在更短时间内运行更多的测试。 

分动箱控制机制(TCCM)测试发动机控制单元(ECU),尤其是与安全相关的车型,既需要进行软件测试,也需要进行硬件测试——这是因为ECU的智能化程度越来越高。ECU需要控制制动、防止侧翻,并确保在折衷的驾驶模式下为正确的车轮提供动力。汽车制造商如麦格纳 MagnaPowertrain、德尔福(Delphi)和大陆汽车公司(Continental)在测试其产品的安全运行时也有同样的担忧。  

本文关注的重点是汽车分动箱。分动箱是一种机械/电子设备,用于监测车轮滑移,并确保动力应用到没有打滑的车轮上。 

在设计过程中,制造商需要进行一系列测试,以确保控制分动箱的软件能够以一种安全可预测的方式应对系统故障(如开路、短路、交叉/内联电阻连接)。最终目的是提高客户满意度并降低保修成本。 

在一个例子中,一个制造商开发了一个允许手动注入故障的测试夹具。这个夹具虽然是有效的,但必须手动切换故障是非常耗时的——这限制了开发人员在特定单元上可以运行的测试的数量。此外,手动夹具通常需要更频繁的维护,这又进一步延长了测试时间。最后,手动夹具还容易出现操作误差,影响测试结果。 

这是他们联系英国Pickering公司的原因。这些产品包括 故障注入单元(FIU) 、硬件在环(HIL)模拟应用的开关解决方案和 程控电阻。FIU开关模块可用于将电气故障引入系统中,模拟由于腐蚀、短路/开路和其他电气故障而导致的各种情况。这些故障通常由老化、损坏或错误安装导致。 

使用Pickering的故障注入模块可以将故障注入过程自动化。这些产品可以在更短的时间内运行更多的测试。这些测试不仅可重复、更全面,还可以在产品开发的早期帮助发现和解决问题。 

查找故障 

分动箱用于将车辆变速器的动力分配到前后轴上。以双倍速ATC为例。ATC的特点包括多片湿式离合器、机电换挡驱动、链条驱动的前端输出。该系统保证了前轮和后轮之间的动态转矩分配,并且可以在各种地形和恶劣天气下进行调整,以提供所需的车辆性能特征。 

作为TCCM(分动箱控制机制)的一部分,分动箱电子控制单元(ECU)控制分动箱的操作。 分动箱ECU连接着传感器和制动器,以及与车辆的控制器区域网络(CAN)的接口。当驾驶员换挡时,分动箱ECU接收到指令,并决定是否可以进行换挡。在成功执行换挡后,分动箱ECU将此报告给网络。  

汽车在运行过程中,可能会出现许多不同的故障。例如,一根八芯电缆,将分动箱中的制动器和传感器连接到控制模块。这些连接可能与相邻导体断开或短路从而导致故障发生。此外,汽车的使用时间越长,越可能发生高电阻连接和高电阻短路,这可能会导致分动箱当场失效。 

为了确保分动箱将在故障状态下安全运行,分动箱制造商会在控制实验室中模拟出这些故障状态。

在当今的汽车系统中,硬件在环测试是测试电子控制单元,如分动箱ECU的一种非常常见的方法。即使没有实际建造出原型车,HIL仿真器也可以提供原型车的所有输入和输出。HIL仿真器为ECU制造商节省了大量资金,不仅因为他们不必制造原型车,还因为他们可以在实验室进行详尽的测试,无需使用测试轨道或者测功机。 

他们甚至可以在没有实际分动箱ECU机械部件的条件下,对分动箱ECU进行测试。在这种模式下,HIL测试系统既模拟了分动箱,也模拟了车辆的其他部分。 

为了测试分动箱ECU软件,设计师开发了许多不同的操作场景,包括车辆的启动、关闭,以及遍历分动箱控制模块每个动作的驾驶场景。例如,分动箱应该根据指令置于合适位置。在一些场景中,其他产品的特性也会被测试。(如各种换挡场景、冷启动特性、电压特性等)。 

当制造商第一次开始做这种类型的测试时,他们构建了一个测试夹具,如图1所示,这个测试夹具也被称为断线盒,用于手动注入故障。断线盒被插在分动箱和它的控制模块之间,由技术人员手动切入/切出故障。如前所述,这限制了测试人员在一定时间内运行测试的数量,需要更频繁的维护,延长了测试时间,也容易出现操作错误,影响测试结果的准确性。对初次进行此类测试的人员来说,这的确是一种有效的方法,但还有很大的改进空间。 

用于桌面测试的通用接线盒设计

图1:用于桌面测试的通用断线盒设计 

可以说,手动注入故障的最大问题在于运行一系列测试需要很长时间。使用断线盒运行一个测试最高需要8分钟。而汽车制造商需要运行成千上万个测试。很明显,他们必须从一开始就找到一种更高效的方法来减少测试时间。 

手动注入故障的另一个缺点是,他们只能注入短路和断路。为了更彻底地测试分动箱ECU,他们还需要注入电阻故障。 

手动注入故障的第三个问题是断线盒是硬连接的,因此不太灵活。为了测试不同的分动箱ecu或不同的产品配置,测试工程部门不得不构建新的断线盒或重新连接到现有断线盒上。这种方法成本高、耗时久。 

自动化故障注入 

显然,制造商一直在思考如何将故障注入自动化。这个分动箱制造商的目标不仅是加快测试的执行,而且还要提高注入电阻故障的能力,使测试设备更加通用。他们认为,如此可以帮助他们模拟更多真实故障,从而生产出更可靠的产品。 

在评估了几个供应商的开关系统后,这位客户认为英国Pickering公司的产品是最有优势的解决方案。他们购买了一个 19槽的PXI机箱,和几个PXI模块( PXI 30A故障注入开关模块—— 型号40-191,如图2所示)能够用来模拟短路和开路。该模块位高电流故障注入提供了可靠的解决方案。它采用固态开关元件,能够在单通道状态时承载40A电流,或所有通道同时承载30A。该产品的设计目的是在测试夹具和被测设备之间插入三种不同的故障状态,包括开路、UUT连接线间的短路以及外部信号短路。 

每个通道上的固态继电器使测试系统能够将UUT信号设置为开路。故障注入总线允许所有通道短路到其他通道,也使任何通道连接到外部信号,如电源,点火或地面,以模拟故障条件。该模块有两条故障总线 

因为故障并不总是完全开路或硬短路,我们的 程控电阻模块(型号40-295),如图2所示,可以用于模拟高电阻故障。该模块提供高达18个完全独立的8位分辨率可变电阻通道或10个完全独立的16位分辨率可变电阻通道。每个通道的电阻值可以设定在0 ~ 16 MΩ。 

PXI 30A 故障插入开关模块,(型号 40-191)用于模拟短路和开路
图 2:PXI 30A 故障插入开关模块,40-191系列
程控电阻模块 —— 40-295 用于模拟高阻故障
图 3:PXI 程控电阻模块,40-295系列


图 4 示意了当需要一个实际的分动箱参与测试时,开关系统如何将HIL模拟器、正在测试的分动箱ECU以及分动箱链接起来。 

Diagram showing how the switching system connects the HIL simulator, the transfer case ECU being tested, and the transfer case, if an actual transfer case needs to be part of the test.

图 4

开关系统用于注入所有潜在的故障。例如,要注入开路故障,他们只需断开线路。要使两条线路短路,他们需要将这两条线路连接到故障注入模块,并将两个信号连接到模块的故障总线之一。为了模拟电源短路或接地短路,他们将信号线路连接到故障总线之一,然后将该总线接地或连接到外部电压。 

为了在分动箱和分动箱ECU之间的信号线路中注入电阻故障,控制计算机将命令开关系统切换到40-295程控电阻模块的一个电阻通道上。接下来,根据设定逐步调整电阻值的大小:0Ω,5Ω,10Ω,20Ω,50Ω,100Ω,200Ω,500Ω,1000Ω,等等,直到达到1 MΩ,或者直到线路表现为一个开路。 

一旦注入故障,他们就会模拟一个或多个驾驶场景并收集测试数据。收集到的最重要的数据之一是系统绘制的电流。异常高的电流是问题存在的明显迹象。不过,他们也会考虑其他一些参数,包括CAN信号和由分动箱ECU和整个系统行为产生的电子信号。 

通过自动化故障注入,运行单个测试所花费的时间已经从平均八分钟减少到大约四分钟。考虑到一个典型的测试可能需要耗时一个多月的时间,运行20000个测试用例,自动化故障注入可以帮助节省大量的时间。自动化故障注入帮助制造商缩短运行完整测试所需的时间。在手动注入故障的情况下,技术人员或测试工程师必须在场来切换故障的输入和输出。不过现在,只有在进行危险测试时,工作人员才需要在场,其余大多数测试都可以在夜间进行,不需要人为监督。 

有意思的是,节省下的时间并不一定都用于缩短测试运行时间,而是用于在相同的时间内运行更多的测试用例,例如包含电阻故障的测试用例。使用测试时间来提高测试效率体现了公司对软件质量和可靠性的重视程度。 

分析测试结果 

不难想象,这些测试会生成大量的测试数据,分析这些数据是一项艰巨的任务。他们首先要检查运行测试是否对UUT造成了损害。故障并不会损坏分动箱ECU,所以任何设备被损坏的迹象都是一个危险的信号。 

如果测试用例并未造成任何设备损伤,他们就开始分析其余的测试数据,尤其是CAN信号和整个系统的行为。他们会寻找能够显示分动箱中存在偶然运动的数据,还会分析数据保证分动箱ECU生成了适当的诊断代码。 

分析测试数据是一项团队工作——这个团队不仅包括测试工程师,还包括机械工程师、电子工程师和设计分动箱的软件开发人员。通过团队合作,他们不仅能够快速找到需要关注的特定领域,而且能够更快地完成修复。 

自动化是未来趋势 

虽然客户的工程团队对Pickering开关系统允许自动化测试的方式非常满意,但他们意识到这只是一个开始。例如,他们不会为每个分动箱构建单独的测试夹具,而是尝试构建一个更加“通用的”测试系统。他们认为利用计算机控制的开关系统可以实现这一点。 

制造商必须克服的另一个障碍是减少分析测试数据所需的时间。自动化故障注入使他们能够运行更多的测试,但这也增加了他们在分析测试数据上花费的时间。因此,他们正努力实现自动化分析测试数据。开发一个能够自动标记可能指出问题的测试数据的工具可以节省大量时间。 

他们还在努力减少测试用例的数量。在这个客户的案例中,他们的工程师认为可以通过识别测试用例来减少测试用例的数量,这些用例实际上用于测试相同的东西,并将它们从测试程序中删除。还需注意的是,在NPI中开发的测试用例的子设备通常被用于产品测试策略。与NPI测量相比,这种策略提供了连续的测试结果,并加快了产品测试的开发。 

Pickering产品帮助Engineering公司在动态车辆条件下引入了“SMART Automation”系统,用于测试额外的故障模式(内联电阻故障、交叉短路和交叉电阻短路),从而提高产品质量。 

这一测试阶段的最低要求是,英国Pickering 公司支持ecu制造商将故障注入自动化,并帮助他们在更短的时间内运行更多的测试用例。