新闻  |   论坛  |   博客  |   在线研讨会
基于LabVIEW的电路板信号检测系统——AET/2008 34(3)
canso | 2009-02-24 09:26:43    阅读:1754   发布文章

  摘 要: 以LabVIEW图形化程序设计语言为平台,成功地将PXI和GPIB总线技术应用于电路板信号检测。同时借助CPLD的可编程功能生成大量工作信号,逼真地模拟了电路板的工作状态。数据库的成功运用也为系统的完善提供了强有力的保障。

  关键词: LabVIEW; PXI; GPIB; CPLD; 数据库

  传统的电路板维修过程中,操作人员无法直接观察输入输出信号,只能通过故障现象,根据自身的经验和对电路的分析,猜测判断故障的位置。如果能全面直观地将输入输出信号全部显示出来,让维修人员清楚每一个引脚的信号特征,那么故障分析、定位以及维修难度将会极大降低。基于这个想法本文介绍了一种电路板信号检测系统。

  系统硬件

  本系统以计算机为核心,通过相应接口,分别控制PXI数据采集卡、遵循GPIB标准的示波器和信号发生器,并通过PXI系统发送控制指令,实现对信号发生系统的控制,通过电路板适配器的转接,使输出到电路板的信号和电源等信号正确到达被测电路板相应的管脚,同时反向获得被测电路板的工作信号。系统结构如图1所示。

  

 

  信号发生系统

  信号发生系统主要由CPLD、晶振以及相应的外设电路组成。在本系统中,CPLD主要完成:接收计算机通过PXI数据采集卡发送的控制信息;产生所需要的信号并根据控制信息有选择地输出[1]。其中接收控制信息的通信模块的原理图以及时序图如图2所示。图中da为要传输的控制信息,t为控制位,cl为同步时钟,r为奇偶校验结果。

  

 

  信号产生和输出模块的原理如图3所示。

  

 

  PXI总线系统

  PXI总线系统包括PXI机箱和PXI数据采集卡,是按照PXI规范建造的插卡式数据采集系统。系统中使用了NI PXI-1042机箱、NI PXI-8196嵌入式控制器、NI PXI-6259数据采集卡以及相应的附属部件[2]。由于这些设备都属于标准设备,因此系统构建相对简单,只需要按照规范要求进行连接即可。

  在本系统中,PXI总线系统主要用来完成数字信号以及低频模拟信号的产生和采集,同时利用数据采集卡中大量的静态I/O资源,完成对CPLD的复位、信号选择等。

  GPIB总线系统

  GPIB总线系统包括GPIB接口卡和遵循GPIB标准的仪器。由于GPIB不是标准PC总线,所以计算机到GPIB仪器的连接需要通过GPIB接口卡来实现[3]。在本系统中,GPIB总线系统用来生成PXI总线系统无法生成的信号。同时GPIB总线系统可以拓展PXI数据采集设备的频带限制,用来采集超过PXI数据采集卡最高采样速率的信号。这样可节省购置更高速率数据采集设备的费用,并且实现起来也比较容易。GPIB总线系统的组建同PXI总线系统。

  电路适配器板

  由于多块被测电路板规格上的差异,在系统中定义了电路适配器板。电路适配器板相当于一个被分解的继电器阵列,根据电路板的不同有不同的适配器板,可以稳定地为电路板路由工作电源、输入信号以及将输出信号路由至相应的数据采集端口,这样做不仅极大地降低了成本和实现难度,而且有利于后续的系统升级。

  系统软件

  系统软件包括LabVIEW开发系统主程序、PXI数据采集程序、GPIB仪器控制程序、数据库管理程序。下面分别详细介绍。

  在本系统中,主程序、数据采集程序、仪器控制程序以及数据库管理程序等都是由LabVIEW开发完成,其基本流程如图4所示。其中,主程序用来完成各个子模块的协调运行,并负责信息显示及程序的启动和退出等。

  

 

  PXI数据采集程序

  在本系统中,数据采集程序核心部分全部使用NI-DAQmx函数[4]。数据采集程序主要用来控制数据采集系统采集被测电路板的大部分数字和模拟信号以及部分数字和模拟信号的输出。

  图5所示为PXI数据采集的核心程序的一部分,由图可以看出,首先由DAQmx Create Virtual Channel函数创建了数字信号采集任务,接着DAQmx Timing函数将任务配置为有限采集,采样点数为100 000,采用PXI机箱提供的20MHz时钟。然后启动任务,采集方式为多通道多样本采集。这样采集出来的信号为一维的波形数据,要对采集出来的波形数据进行正确的显示,就必须对波形数据里面的dt项进行设置,设置dt为5E-8(这个数据由20MHz求倒数换算得来)。最后由DAQmx Wait Until Done函数和DAQmx Clear Task函数等待任务结束,并且释放系统资源。其他部分为辅助程序。

  

 

  图5 数据采集程序

  仪器控制程序

  仪器控制程序通过GPIB接口卡控制GPIB仪器产生或采集信号,并把生成的信号传送到被测电路板相应管脚,同时将采集到的信号传送给计算机。

  在本系统中,使用到的仪器有TDS220示波器和SG1501M信号源。图6为开发的仪器控制程序的一部分。

  

 

  图6 仪器控制程序

  从程序中可以看出,通过GPIB Write函数按照地址“1”,将示波器控制命令“DATa:SOUrce CH1;:DATa:ENCdg RIBINARY;WIDTH 1;:CURVe?”写给仪器,按照命令要求,示波器将会返回测试通道1的波形数据(数据格式为二进制)。此时返回数据的总数为3 000,然后GPIB Read函数读取返回值,3 000个数据中只有后2 500个是实际的波形数据,其他为附加信息,因此要剔除掉,同时进行格式转换。然后设置好参数就可以进行显示了。参数设置同样也是为了解决横轴和纵轴在示波器和程序中标度的不一致。图中设置的0.001为示波器的“秒/格”值除以2 500的结果。示波器在纵轴方向上的采样点数为256,所以3.125为“伏/格”除以256所得结果,然后再乘以Y值,即为实际信号的幅度。

  数据库管理程序

  数据库管理程序使用NI公司的专用工具包LabVIEW SQL Toolkit实现对数据库的访问,主要完成数据的存储、删除、读取以及查找等一些数据库的操作。图7为读取数据的部分程序。可以看出,程序中有GPIB仪器控制的部分,从数据库中读取仪器命令,通过GPIB Write函数传送到仪器中。此处为对信号源的控制。

  

 

  图7 数据库管理程序

  本系统可以实现对被测电路板所有输入输出信号的检测,因此工作人员可以很直观方便地看到自己感兴趣的信号,并且具有良好的视觉效果。本系统在投入实际使用之后,可以很大程度地提高电路板维修时的故障定位速度和精度,同时由于系统详细地反映了电路板各种信号特征,因此可以增强维修人员对电路板的熟悉程度和维修能力。

  参考文献

  [1] 潘松,王国栋.VHDL实用教程[M].成都:电子科技大学出版社,2000.

  [2] 侯国屏,王坤,叶齐鑫. LabVIEW7.1 编程与虚拟仪器设计[M].北京:清华大学出版社,2005.

  [3] 戴鹏飞,王胜开,王格芳,等.测试工程与LabVIEW应用[M]. 北京:电子工业出版社,2006.

  [4] 杨乐平,李海涛,杨磊.LabVIEW程序设计与应用[M].北京:电子工业出版社.2005.

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客