霍淑珍(天津市职业大学, 天津 300402)
基于PXI系统的汽车电控类产品测试系统设计
霍淑珍
(天津市职业大学,天津300402)
汽车电控类产品实现了对汽车的数字化控制,被用于不同的汽车子系统中,如发动机控制系统,传动控制系统,车身控制系统等。论文针对这类产品开发了适用于该类产品生产制造的测试系统,该系统以PXI系统为核心,能够适用于不同电控类产品的生产测试中。在电控类产品的生产过程中对于产品质量提高起到非常重要作用。
PXI;测试系统;LabWindows CVI;汽车电子
现代汽车各个子系统中广泛使用了多种电子控制产品,各个产品功能不同,有着不同数量和种类的输入输出形式,输入有开关量,模拟量,频率信号等,输出有线圈,电磁阀,电机等。汽车电子控制单元将各种输入信号通过信号调理整形等处理进入CPU,通过控制算法计算,然后通过输出电路控制系统执行规定的动作。根据其不同的应用场合,电路复杂程度不同,控制的目标也不相同,所需的测试系统的复杂程度也就有所区别。本文设计了基于PXI系统的自动化测试系统。该系统具有通用性,通过更换负载箱和夹具满足不同负载,不同功能多种类产品自动化测试的要求。
该自动测试系统由硬件设计及软件设计两部分组成。在硬件设计上采用PXI产品提供所需的硬件资源进行控制及测量,考虑负载和输入量的不确定性设计了可扩展的卡箱和可以安插在卡槽中的继电器开关卡及矩阵开关卡。单个系统总共安装5个卡箱,依次分别安装PIN卡,源设备矩阵卡,测量设备矩阵卡,2A继电器卡和10A继电器卡。每个机箱可以安装12块卡,机箱的卡通过总线控制,每块卡都有自己的片选信号线,公用控制总线和数据总线。机箱的控制通过PCI-DIO96进行控制。可以根据需要选择卡的种类和数量。继电器开关卡设计成10A和2A两种规格。10A卡具有20条通道,总共可以有240路通道。2A卡具有48条通道,总共可以有576条通道。如果需要更大规格继电器可以通过2A继电器进行控制。通过采用定制的卡可以节省成本,避免使用昂贵的PXI型产品而且可以适应电控类单元输出负载大的特点。通过继电器开关卡实现产品负载接通与断开,模拟各种故障状态等。
矩阵开关在自动测试系统中占有重要的位置,具有信息交换中枢的作用。信号源、电源等激励信号通过矩阵开关能够自动切换到被测对象的任意输入端口,相应的被测对象输出端口的信号通过矩阵开关能够自动切换到相应的测试仪器、仪表[1]。本系统中源设备矩阵卡与测量矩阵卡是同一种卡,只是连接有区别。源设备卡箱的每一块卡的列线与产品的输入端相连接同时与PIN卡通过接口相连接。PIN卡提供每个输入信号的上拉下拉互相接通等操作,同时将信号引入到MIO6031E进行A/D测量。该卡模拟了产品输入信号的上拉下拉操作,而A/ D测量能够测试所连接管脚的电气性能。对于电压或频率等输入信号,通过源设备矩阵卡及卡箱槽中的仪表卡引入到相应的信号源。仪表卡安插在卡箱的第一槽中,行总线与卡箱背板的行总线相连接,12组列线可以使每个输入端连接到最多12种仪器设备。源设备卡箱最多可以连接到352路产品的输入端上。测量矩阵系统可以将测量仪器仪表等设备连接到产品输出端或需要测量的任何地方。例如将万用表NI4070引到某一输出端进行电压测量,还可以使用四线法进行电阻测量等。当电压过高时,可以通过信号调理电路引入到测量仪表端。测量矩阵卡箱最多可以测量352路信号。所有硬件资源引出到易插拔的VPC连接器上,该连接器可以无限次插拔。待测产品的负载箱和产品连接用的夹具采用配套的VPC连接器实现快速更换,从而实现了不同产品的快速切换。系统各个单元的连接及结构示意图如图1所示。
图1 系统结构Fig.1 System structure
1.1硬件配置及功能
(1)工控机。选择工控机作为系统的主控制器,可以使得系统安插更多的资源,配置更为灵活。PCI插槽中安插PXI机箱通讯卡,8-Port多串口卡,两块PCI-DIO96卡和PCI-8152CAN 卡 。PCIDIO96是具有96通道的数字I/O卡,为系统设计的卡箱提供驱动并且查询系统某些传感器的状态。系统可以通过多串口卡和CAN卡PCI-8512与产品进行通讯。
(2)PXI设备。基于PXI总线的测试技术代表了目前较先进的总线测试技术,其特点是高性能、体积小、低成本,适用于电子系统的组、部件测试[2~7]。系统采用NI PXI-8042型8-Slot机箱,采用如下硬件:
NI PXI-6115模块具有4条采样通道,每通道采样率10 MS/s,16位垂直分辨率。2路12位模拟输出,4 MS/s。该板卡输入通道连接到测量设备卡槽的仪表卡上,输出连接到源设备卡箱的仪表卡上。使用该卡能够测试电子单元输出的波形,并且为频率信号提供输入。
NI PXI-4070为高性能的数字万用表,61/2位测量精度下,测量速度为100 S/s。该设备提供了对电子单元的电压、电流和电阻等多种信号的测量能力。
NI PXI-MIO6031E具有64路单端或32路差分型的A/D转化器,分辨率为16bits。在本系统中和PIN卡的每一路相连接,共192路,对电子单元连接到信号源列线的输入进行A/D测量。
(3)台式设备。台式设备包括可编程电源N6700和其他非PXI型设备。台式设备使用GPIB进行通讯控制。
1.2继电器和矩阵卡结构
继电器开关卡和矩阵卡是本系统的核心,满足了系统灵活配置的要求。在这里以矩阵卡为例介绍本系统的开关卡,其它卡的驱动及控制方式类似,只是继电器拓扑结构不同。系统设计了总线结构,同一卡箱内的板卡共享总线,满足该总线结构的开关单元插入到该总线上,共享总线,一条总线由PCI DIO96的一组I/O进行驱动,原理上不同类型的卡可以插入到同一卡箱中。总线上的数据通过缓冲器MC74HC541ADW进入板卡,然后进入锁存器MC74HC273ADW。锁存器的数量根据驱动继电器的数量不同而不同,在矩阵开关卡中有八片锁存器。锁存器的CLK端通过与门MC74HC32AD的输出控制。与门的输入由板卡的片选信号和MC74HC138AD译码器的输出控制。当某个锁存器有效,锁存器的输出驱动八路Mosfet,通过Mosfet驱动继电器动作。背板总线的控制总线包括板卡的片选信号和板卡锁存器的选择信号以及锁存器的复位信号等。矩阵开关卡的结构如图2所示。
图2 板卡结构Fig.2 Cards Structure
系统采用Lab windows CVI编写控制系统的应用软件。Lab Windows CVI是NI公司推出的虚拟仪器软件开发工具[8]。软件包括用户界面、仪器设备控制及驱动、测试项目、数据存储、路径控制等几个部分。交互界面提供了系统的统一的人机交互接口。数据存储模块将数据存储到硬盘或者数据库中。路径控制模块向CAM服务器查询产品生产流程控制信息。软件组成如图3所示。具体测试项目的开发需要系统软件和产品内部测试软件共同配合,完成整个产品的质量测试。产品内部测试软件是独立于产品应用软件专门为工厂测试而开发的。实际应用中可以以多种方式让产品进入测试模式也可以当产品测试完成后擦除测试软件,重新刷写产品的应用软件。
图3 软件组成Fig.3 Software structure
2.1程序流程
系统启动时,首先读取系统的INI配置文件,该文件包括SPC,数据存储,产品型号以及对应的限值文件,线程配置等信息。然后初始化各个仪器设备,如果设备正常,则根据系统设置情况,启动系统的每个测试线程。系统为多线程模式,可以有一个线程或多个线程。每个线程有自己的交互面板,用于显示该线程的当前型号,测试模式,当前状态,测试项目等信息。线程启动后在主窗口内显示各个线程的界面。每个线程对应一个产品,所以在具体项目设计时,要确定线程及所测产品数量并且分配好硬件资源。每个线程启动后,不断地查询产品是否开始测试的信号,当被触发后,开始产品测试序列进行产品测试,显示并判断系统的每一个项目的测量结果,根据设置情况系统选择遇到失败项目后是否进行下面的测试内容,如果选择为停止测试,系统则显示失败项目并且停止测试,如果选择不停止,则系统继续测试直到所有项目完成。测试项目完成后,显示产品的测量结果。并将测试结果传入到数据库中。软件流程如图4所示。
图4 程序流程Fig.4 Program flow
2.2测试项目
测试项目的实现在DLL动态链接库中。系统启动时,加载动态链接库DLL。开发人员可以只编写动态链接库文件实现二次开发,不用考虑其它部分的实现工作。
测试项目DLL文件实现了电子单元要求的所有测试项目。在测试项目DLL中调用仪器设备的驱动函数,来实现对所用仪器设备的控制,产生需要的激励信号,或者对于需要测量的量进行测量。在编写DLL代码时,需要控制某设备,首先将该设备的驱动程序库加入到软件的工程项目中。然后,在仪器初始化函数中将所有用到的仪器进行初始化,得到该仪器设备的驱动句柄,这样就可以实现对仪器的控制,设置或读取所需的信息。
例如对电源的初始化的操作如下:
agN67xx_init("USB0:2391:2311:MY43016809:0::INSTR",VI_FALSE,VI_TRUE,&ag_6700);
该函数根据第一个参数所提供的仪器设备在系统内的名称得到该仪器设备的操作句柄,并将其存放在变量ag_6700内。对于该仪器设备的操作如下:
gN67xx_outputVoltCurr(ag_6700,2,46,0.5);
agN67xx_setOutputEnabled(ag_6700,2,1);
第一个函数设置电源二通道的电压值为46伏,电流限压值为0.5安。第二个函数将电源的输出设为使能状态。
针对所设计的板卡系统,系统开发了驱动函数例如对于继电器控制卡,其驱动代码如下:
RlyCnt("68",ON);RlyCnt("68",OFF);
该函数将设置68号继电器的开关状态。
对于开关阵列卡的驱动函数如下:
RlySetScan(21,1,INST_DMMV,NO_INST,NO_SCAN,NO_INST,NO_INST,NO_SCAN,NO_SCAN,NO_INST,NO_ INST,NO_SCAN,NO_INST,NO_INST);
该函数设置了将列线21和列线1连接到万用表1的正负两端。后面的参数可以设定是否连接到其他仪器设备。如果将21和1颠倒位置,则将1连接到万用表的正端,21连接到万用表的负端。
有了仪器的控制和开关动作的驱动后可以较容易的实现测试项目的要求。例测量如产品的某一管脚开路状态下的电压值,测试代码实现如下:
RlySetScan(15,1,INST_DMMV,NO_INST,NO_SCAN,NO_INST,NO_INST,NO_SCAN,NO_SCAN,NO_INST,
NO_INST,NO_SCAN,NO_INST,NO_INST);
Sleep(100);
DmmGetMeas(&dwResult, DMM_SAMPLE_1,DMM_TIMEOUT_1s,DMM_ARM_IMM);
CheckLimits(CurrentState,TestInfo,dwResult);
首先现将万用表的两端连接到该管脚和产品的地上,然后等待100毫秒的电气稳定时间,测量两端的电压值。
当所有测试项目完成后或者遇到失败项目且不要求继续测试的情况下,系统根据设置将结果存储进数据库或者硬盘上记录测试结果。
系统完成后,首先进行单产品1000次循环测试,系统MSA及CPK分析,性能测试结果参考文献:
满足Gage R&R<10%,CPK>1.67等TS2审核要求。在正式产品生产过程中,实践证明该系统可靠性强,可扩展性好,能够满足不同种类的电子单元测试指标的需要。
[1]张毅刚,杜威达.一种矩阵开关MA模块的设计[J].国外电子测量技术,2011,6.
[2]项学智,开湘龙,张振宇,等.基于PXI总线的矩阵开关模块设计[J].国外电子测量技术,2013,12.
[3]宋栓军.基于PXI总线的远程检测系统[J].现代电子技术,2003,24.
[4]王瑞,张彦军,于晓光.基于PXI总线的遥测信号测试平台的设计[J].微型机与应用,2010,3.
[5]卢振达,陈建辉,张延生.基于PXI总线的某型导弹数字组合自动测试系统设计[J].仪表技术,2009,4.
[6]蔡征宇,张合新.基于PXI总线的虚拟测试实验系统[J].计算机测量与控制,2006,5.
[7]何远辉,谭业双.基于PXI总线某型装备自动测试系统[J].四川兵工学报,2009,30.
[8]周星,孟晨,魏保华.基于Lab Windows/CVI自动测试系统软件界面设计[J].电子测量技术,2003,1.
Test System Design for Electric Control Units of Vehicles Based on PXI System
HUO Shu-Zhen
(Tianjin Vocational Institute,Tianjin 300402,China)
Digital control technology is very important parts in vehicle control by using electronic control units such as engine control,transmission control and body control.In this paper,the testing system which is suitable for mass production quality control is introduced.The system is based on PXI system and can be configured to use in different products and is proved to be efficient in control the product quality.
PXI;test system;Labwindows CVI;vehicle electronic
TB47
Adoi:10.3969/j.issn.1002-6673.2015.05.040
1002-6673(2015)05-107-04
2015-03-15
霍淑珍(1976-),女,副教授。研究方向:电机控制,自动检测,控制理论。