广州菱控自动化科技有限公司
主营:欧姆龙,三菱,安川,Pro-face
首页 > 解决方案 > 电子_数据采集 > 基于LABVIEW的电子产品测试
行业类别
全部 航空航天 新能源 冶金 石油 石化 化工 汽车 建材 包装 造纸印刷 纺织印染 机械 机床 木工 矿业 塑胶 交通 铁路 机场 港口 仓储 物流 能源 电力 输配电 水利 环保水处理 电子 食品饮料 制药医疗 烟草 电梯 网络通讯 市政 商业 楼宇 安防 锅炉供暖 制冷 金融保险 邮政 广电 军工 机器人 其它
产品类别
全部 PLC 变频器 伺服 DCS 触摸屏 传感器 机器视觉 仪器仪表 工业以太网 现场总线 工控机 嵌入式 数据采集 软件 低压电器 数传 电源 数控 机柜箱体 工具 单片机 流体 工业安全 安防 媒体 其它

基于LABVIEW的电子产品测试

发布日期:2025/8/9

 作者:

沙 文瀚 - 
刘 琳 -

 

一、引言

随着汽车电子化快速发展,汽车电子产品的可靠性验证成了重要的课题被一再的优化和推进,电子产品的测试平台也成了加速电子产品研发进度的重要工具和载体。本文通过搭建测试平台,针对不同的车载电子模块进行测试,提高车载电子产品的开发进度。

二、背景

传统的测试仪器是采用单片机作为控制电路,以 LED 作为指示灯,以各种按钮作为开关量输入的形式,以汽车车身电子控制系统为例,该系统主要包括:灯光控制、电动车窗控制、中央门锁控制、防盗报警控制、安全气囊控制、雨刮器控制等,并拥有CAN总线及诊断功能。

如图一所示,汽车车身电子控制系统需要进行功能测试以保证产品质量,测试人员需要按照模块的各种功能通过手动方式一步一步进行测试,测试效率低,可靠性差。

图一 传统汽车电子产品测试仪

三、趋势

自动测试系统(ATS, Automatic Test System)是指以计算机为控制核心,在程序控制下完成某种测试任务而组合起来的测试仪器和其他设备的有机整体的总称。目前的第三代自动测试系统是以虚拟仪器技术的出现为标志。20 世纪 80 年代 NI 公司首先提出这一概念。虚拟仪器技术的出现使得软件在整个测试系统中成为重点,虚拟仪器技术在自动测试领域的应用使得测试系统的通用性问题得以解决。

虚拟仪器通常由硬件设备与应用软件两大部分构成,其结构体系框图如图二所示:

图二 基于虚拟仪器的结构体系

四、构成及特点

  1. 虚拟仪器基本由三大部分构成,每部分在其中都起到必不可少的作用,互相关联、互相支持,组成一个完整的系统:

  1.1 模块化的I/O 硬件:分析测试系统的要求和系统的功能,根据系统功能的要求,在软件和硬件之间进行优化选择,从而确定仪器所必需的硬件模块,以便用最少的模块实现仪器的最佳功能。根据应用情况与实际的条件,选择基于计算机的虚拟仪器的仪器模块以及传感器、信号调理电路、DAQ 数据采集、信号源等模块;

 1.2 高效的软件:硬件确定以后,主要确定软件功能模块,哪些仪器功能由软件实现,将软件功能划分为相对独立的模块。然后选择易于编写的图形化的软件平台。LabVIEW 平台是一种图形化编程环境,提供了虚拟仪器的控件、丰富的数据处理分析函数、仪器驱动程序及数据库工具软件包,LabVIEW 提供的SQL、DataSocket 软件都是容易建立网络化测试环境的软件包。采用LabVIEW 编写虚拟仪器软件简化了程序设计,提高了效率。我们利用LabVIEW 和NI 的数据采集卡实现了数据采集、虚拟示波器、虚拟信号发生器;

 1.3 用于集成的软硬件平台:NI 首先提出的专为测试任务设计的PXI 硬件平台,已经成为当今测试、测量和自动化应用的标准平台,它的开放式构架、灵活性和PC 技术的成本优势为测量和自动化行业带来了一场翻天覆地的改革。PXI 作为一种专为工业数据采集与自动化应用度身定制的模块化仪器平台,内建有高端的定时和触发总线,再配以各类模块化的I/O 硬件和相应的测试测量开发软件,就可以建立完全自定义的测试测量解决方案。

     2. 系统特点如下:

          2.1 电压可调:可自动进行9~16V电压输出遍历测试,高、低电压模拟(0~30V)测试及发动机启动电压模拟测试;

          2.2    可进行手动、自动功能测试。可通过手工操作按键模拟各种开关和变量进行测试;也可通过计算机控制各采集卡模拟各种开关和变量进行自动测试,不需人为干预;

          2.3    加载模拟负载、实际负载进行测试;一般状态下为加载模拟负载进行测试,并可模拟大电流、过压保护测试等;也可通过变更接线加载实车负载进行测试;

          2.4   每一个子功能测试项均可在各点火状态(OFF、ACC、ON、START)下进行测试,增加遍历性,减少测试盲点;

          2.5   测试过程中,可通过CAN与被测模块进行通讯,检测对被测模块的诊断、刷新数据(Boot loader)等功能;

          2.6   进行测试数据记录、处理、存储并自动生成测试报表,包括测试电压、时间、各测试项测试状态、故障状态等;

五、测试平台总体设计

系统目的及目标:

在项目不同阶段需要进行不同众多的测试内容,针对不同的测试目的,采取不同的测试、观察、 记录方法,如果针对每种情况编写一个独立的测试程序,则提高程序代码量,降低程序的通用性,移植性,更不方便整个测试系统的管理与测试用户选择应用,不利于提高工作效率。为了满足更多的要求,更方便的应用,更人性化的人机交互界面,建立此系统测试平台。系统结构图,如图三所示。

图三 系统结构图

六、测试界面及方法

测试配置:通过相应的配置界面,进行测试模式、测试层面和测试单元的配置选择;图四、图五为测试配置图。

图四  测试配置图

图五 测试配置图

手动测试:根据图形界面完全采取人工控制的方法输入数据。可以针对特定的输入输出反复测试,观察分析特定的测试结果,方便发现细节问题;但是时间难以控制,对有精确时序要求的测试基本无能为力,结果完全靠人工自己判断是否符合要求,而且测试速度慢,工作效率低。这种方法基本用于测试早期,针对特定要求的测试,或者在自动测试过程中发现的问题,而不方便观察分析的情况。

半自动测试:指由测试程序读取一定格式的文件、数据库等测试输入数据的方式自动读取测试输入信号,通过界面显示一些过程中信号的变化情况,与结果输出信号,并将结果存放在特定的文件或数据库中,以便观察分析。此种方法在测试过程中基本不需要人为干预,测试的激励信号由程序自动产生,但是不能判断测试结果的正确性,只是记录下测试结果的详细数据,需要用户对数据进行分析判别,所以称之为半自动测试。

全自动测试:系统中测试的最高阶段,整个测试过程不需要测试人员干预,自动读取一定格式的文件、数据库等测试输入数据,自动测试、自动与标准结果相比较智能判断测试的通过性,并记录于特定文件中。用户开始测试后只需在测试完成后检查结果文件,就可以很方便的了解测试的结果通过性。测试效率高,结果简洁有效,能快速反应问题。测试软件本身编写难度大,以及输入数据文件的编写。整个测试系统提供不同的测试方法,便于不同阶段,不同问题,不同目的,不同速度的测试,方便用户根据实际情况灵活选择应用,做到一个测试系统满足测试人员的所有测试要求。

测试执行如图六、图七所示:

图六 测试执行图

图七 测试执行图

按照前述选择的手动测试、半自动或者全自动测试,选择测试配置,通过点选开关组合或者读取输入信号文件等方式,开始功能测试,并给出测试结论。

七、测试输入信号的产生

数字系统得测试一般比较复杂,需要复杂的测试信号,信号由多位不同的逻辑值组成,成为测试图形,它必须覆盖所有测试要求中可能出现的情况,产生较复杂的测试图形的一种重要方法就是存储响应(Stored Response)法,它把需要的标准图形存入大容量的存储器中,测试时先调入告诉缓冲存储器,然后按要求的条件取出以供测试。

针对该系统,源信号设定为每10ms一组信号,每个测试文件的测试信号序列是依照一条或多条需求分析,在方便观察的基础上编写而成,信号序列没有必然的联系,必须采取存储响应法产生激励信号,但是对每10ms一组数据,则源信号数据文件庞大,而且人为编写麻烦、耗时、效率低、容易出错,并读进高速缓冲时占用空间大影响程序运行速度。为了解决这种问题,结合信号的特点:为了验证功能而且让人工测试能看清,并且程序有一些时间参数,每组信号一般持续一段时间,采用以下方法处理,如图八所示:

图八 信号处理

    程序首先读取数据文件进内存,分开时间序号与信号数据,利用时间序号数组实现对产生激励信号的控制:后一个时间序号值减去前一个值即为前面信号保持的时间跨度,为了保证结束信号的正确产生并值产生一次,利用结束信号序列值加1相减可得。

    利用两个循环实现自动产生的功能,外部循环是信号变化的情况,每变化一次循环加一,只有在此条件下,才会更改送进循环的信号值——array2;内部循环即为在信号保持时间内,利用序列差值控制产生相同信号的次数,即控制持续时间。可以利用参数millseconds to wait控制每组信号的间隔时间,在本系统中设默认值为10(ms)。通过此程序即可以实现每10ms产生一组信号给array3,利用此信号序列时,即可从array3引出。

程序通过软件的方法在保证产生正确激励信号的基础上,让程序员从庞大的数据文件中解放出来,并且比原来数据更容易观察、理解;提高了文档的可读性;大大减少了存取空间的利用,提高了程序运行速度,提高工作效率。

八、测试输出结果的处理

测试结果的要求分析:测试的基础是需求分析,为了验证程序的正确性,必须达到需求分析的功能要求与精度要求;测试数据的设计基础是需求分析文档,达到的效果为智能判断需求的通过性显示给用户并存档以供查询分析。

    测试结果的记录方式:在实际的结果数据产生并记录过程中,由于是循环的测试,会产生大量的相同的测试结果数据,在测试的结果中,需要自动处理相应的结果数据,并标记重复出现和偶尔出现的结果。在前述中(测试界面及方法:半自动测试与自动测试),输入信号是测试程序读取一定格式的文件、数据库等方式自动读取,测试输出数据是由每周期产生的一组的详细结果数据转化为输入信号同样格式的数据,主要是对输出数据不发生变化的时间段内进行简化。如图九所示。

图九 数据简化过程图

程序采用顺序结构,保证程序运行的时序性,避免结果混乱。程序采用有效数组追加方式组建转换后的结果数组testresult,先初始化一个空的二维数字数组,将原数组2ddata的起始数据第一个加到数组中,在中间阶段采取循环处理原数组中的每组数据。由于中间阶段只记录改变的信号,所以结果数组只能记录到信号最后一次变化时的时刻与信号。但不能明确知道最后信号的持续时间、整个信号的结束时刻。当信号发生突变,此处即为信号改变点。此时记录的信号就已经完整,但这种情况比较少。通过对中间阶段最后记录的信号序号与原数组2ddata的最大序号相比较即可判断中间阶段的数据是否完整。不完整的情况下,直接通过原数组获得最后时刻的数据与序号加入到新的结果数组中。

至此完成了对每10ms一组数据的庞大数据量转化为以时序表征的结果数组。达到与输入数组的格式统一,方便后期的智能化处理以及节约存取空间的效果。图十为数据处理后存取空间图。

图十 数据简化及存取图

    根据测试的结果,可以看出以下规律,即结果数据程序处理方式为:

  1.  记录开始信号以及相对时间零点;
  2.  过程中信号每次变化的时间与变化后的信号;
  3.  结束信号的时间及信号值。
  4. 、总结

    通过该测试平台,可以方便地修改配置程序及信号输入文件,针对不同的车载电子模块进行手动、半自动乃至全自动测试,且通过内置的算法,将庞大的测试结果加以处理及简化,便于测试人员实际使用,能大大提升车载电子产品的开发进度,满足电子技术在汽车领域特殊的时效性、可靠性要求,有着较强的通用性和使用性。


销售热线

销售微信