1 引言
随着虚拟仪器技术的飞速发展,对测控平台进行“虚拟化”改造已成为一种潮流。在这种潮流的影响下,我们在原有测控平台的基础上结合虚拟仪器技术,建立基于虚拟仪器结构的综合测试系统,以改善实验条件,提高测试效率,使得数据处理更加快捷准确。虚拟仪器及技术将成为工业自动控制领域的重要方法和手段,具有非常广阔的发展前景。[1]
2 系统的组成
本系统主要由硬件和软件两大部分组成。其中硬件平台采用PXI(PCI extensions for instrumention)总线系统,软件平台采用NI公司的LabVIEW(laboratory virtual instrument engineering workbench)可视化图形编程平台。
2.1 系统硬件结构
系统的硬件主要由传感器、信号调理模块、PXI主机、PXI-4472数据采集卡和网络服务器等组成。系统硬件结构如图1所示。
图1 系统硬件结构图
(1)PXI主机的选择:PXI最初只能使用内嵌式控制器(零槽控制器),后来NI公司又发布了MXI-3接口,扩展了PXI的系统控制。包括直接PC控制、多机箱扩展和更长的距离控制,扩大了PXI的应用范围。由于一个零槽控制器就需要好几万的价格,比台式机要贵
上好几倍,因此选用台式机加MXI3作为控制方案。从而需要配置PXI8335, PCI8335和两者通信的光缆连接线。
(2)数据采集卡和调理模块的选择:由于综合测试系统涉及的参数是很丰富的,有温度、压力、振动参数等模拟量,也有数字信号量,有些情况下对信号测量的同步性要求比较高,所以我们选择选择NI公司的PXI-4472多功能数据采集卡和SCXI1121信号调理模块。PXI-4472多功能数据采集卡基于PXI总线,将Compact PCI的集成式触发功能与 Windows操作系统结合在一起,在保留PCI总线与Compact PCI模块结构功能的基础上,增加了系统参考时钟与触发器总线等,使得PXI系统更加适合构建工业自动化测控系统。对于输出是非标准的输出信号,需要选择调理模块,针对压力传感器和温度传感器以及速度传感器分别选用SCXI1121的模块。
(3)网络服务器件的选择:考虑到网络远程数据浏览和控制的需要,要给系统配置一台服务器和客户端(调试用)以及集线器。在系统设计的时候把和PXI通过MXI3连接的PC机作为服务器。
PXI主机和PXI-4472多功能数据采集卡是整个测试系统的核心,在系统中担负着接收用户命令、数据采集、波形显示、数据存储和数据分析等任务。
2.2系统软件结构
软件是虚拟仪器的灵魂。一个高效的软件开发平台有利于构建功能强大的虚拟仪器系统。本综合测试系统软件部分设计采用NI公司的LabVIEW作为开发平台,LabVIEW主要用于仪器控制、数据采集、数据分析等领域,是一个很好的虚拟仪器开发环境,它使用图形化的编程语言,具有形象、直观、集成度高等特点。LabVIEW程序中包含丰富的函数库,同时集成了GPIB、 VXI、RS-232、RS-485等通信模块,可以方便的进行模块化编程;LabVIEW还具有内置程序库,提供了大量的联结机制,通过DLLs、共享库、OLE等途径实现与外部程序代码或软件的连接[2,3]。
为实现测试系统软件的可扩展和易维护,需要在系统软件的设计阶段仔细地设计软件结构,使系统软件能够适应新的硬件模块和算法。采用通用框架的处理方法,把数据和测试流程分开,从而实现测试软件的通用性和灵活性。测试仪器、测试项目的配置参数由项目配置文件来保存,测试结果数据由数据库来管理,而测试流程的任务则是读取配置文件的数据,配置测试仪器,并进行相应的数据采集、分析计算,以及把测试结果写到测试结果数据库中。
经过分析,可以按照如下功能对系统进行架构:
(1)测试项目配置:完成测试项目的工作参数配置,采用结构化的通用设计思想,把测试过程中用到的硬件参数,软件参数以及一些特殊的要求存到一个配置文件里,并把必要的参数存入数据库,测试的时候只要调用各项目的配置文件,就能完成相应的测试任务,这样操作人员不需要对系统有太深的指示,或对计算机要有太多的了解,只需按照测试流程用鼠标进行简单的操作即可。综合测试系统中的信号分析系统采用模块化的软件编程设计思想,每个分析功能的实现都由一个模块来完成。信号分析系统包括数据采集与存储、波形显示、参数测量和信号分析等部分,最终能够实现数据的采集、存储、分析和显示等功能。
(2)物理通道的标定:由于数据采集卡采来的是电压或电流信号,并不直接反映物理量的大小,他需要通过一个转换的过程,这个过程就叫标定。比如从压力传感器采到的数据是100mv,而实际上加载在传感器上的压力是1Mpa,那么标定的结果就是10Mpa/V。系统实际工作的过程中存在非线性的误差,所以在标定的时候要考虑如何进行校正,本文在实现该功能时应用了非线性的校正的方法。
(3)系统自检和数据采集卡配置:系统在工作之前需要确保各个部分都正常工作,所以要对通道进行检测,对系统进行自检。否则当实验进行到后来才发现出了问题,那样既浪费了人力,又浪费的时间。
(4)数据采集:这个部分是系统的重点,也是系统最为复杂的一个部分,它包括录波,数据存盘,数据实时发布,简单的数据处理等诸多功能。
(5)数据回放:这个部分是系统的核心,所有数据分析和处理都在这个部分完成,它包括处理结果入库,报表自动生成,打印报表等功能。
(6)数据管理:由于所有的测试结果都是要求存入数据库,所以对测试数据的管理其实就成了对测试数据库的管理,管理的内容包括测试记录的检索等功能,即可以在本地机管理,也可以在网络上进行管理。
(7)使用帮助:一个应用软件系统如果没有一个清晰明了的帮助系统就不会是一个好的系统,通过浏览帮助可以让一个新手很快熟练使用。
在综合考虑系统功能的基础上,把整个软件划分为主控模块、通道标定配置模块、系统自检模块、数据采集模块、数据回放模块、数据管理模块、帮助模块等,各模块又可分别划分为更小的子模块来实现。各模块之间的关系如图2所示。
图2 系统软件总体结构
3 信号的分析与处理[5,6]
数据的分析处理是综合测试系统的关键环节。对采样数据进行分析和处理的方法有很多,它们各有不同的功能,实际工程测试中常常需要同时采用多种不同的方法才能得到满意的结果。因此,综合测试系统利用LabVIEW开发了信号分析处理软件包,对采集的信号进行分析和处理。主要分析包括数据预处理、时域分析、频域分析和联合时频分析。
传感器采集到的输出信号经过采样和A/D转换为数字信号,在送入分析处理系统前,还要对采样信号进行数据预处理。数据预处理的目的是尽可能地去除混杂在信号中的噪声,以提高信号的信噪比。数据预处理的范围很广,通常包括加窗、数字滤波、去除均值、提取趋势项、标准化处理等,然后,再根据需要对数据进行分析处理。
4 网络功能的实现
为了实现远程测控,我们利用虚拟仪器技术中的DataSocket技术,将不同地域不同功能的设备联系起来,实现资源共享,使数据采集和远程传输成为可能。具体步骤如下:利用网络上单独的一台计算机作为DataSocket Server,即服务器,用来实现数据采集和数据发布的功能,即作为 DataSocket Publisher;连接在网络上的其他计算机作为DataSocket Subscriber。服务器采集数据,在数据发送端,设置数据采集卡的设备号和采集通道,选择合适的采样数及采集速度,采用AI Sample Channel. vi采集信号,利用 DataSocket Publisher把采集到的数据发布到DataSocket Server中,客户端利用 DataSocket Subscriber从DataSocket Server中接收数据。应用DataSocket技术进行数据采集和传输程序流程图如图3所示[4]。
在图4中,数据发布端,调用DataSocket Write函数向URL(uniform resource locator)指定的位置写数据; 在远程客户接收端,调用DataSocket Read函数从URL指定的位置读取数据,并还原为原来的数据类型送到前面板窗口中的 Waveform Graph中显示。在本例中,URL指定的位置是“dstp://ni-302aph”。在数据发送端和远程接收端,While循环中的stop按钮分别可以控制数据采集、数据发送和接收的终止。
图3 数据采集发送端和远程接收端程序流程图
5 小结
本文采用了PXI总线以及LabVIEW可视化编程软件设计了一套具有模块化、通用化、系列化的综合测试系统,具有数据采集、数据测量、数据存储、数据共享和数据分析处理功能够快速有效地反映出被测系统的各种参数信息,便于对被测对象进行状态监测与故障诊断。与传统测试仪器相比,基于虚拟仪器技术的综合测试系统结构紧凑、功能丰富,发挥了软件设计的灵活性,以一台计算机取代多台仪器,具有可操作性强,通用性好,性价比高,功能强大,快捷方便的特点,并且能够实现远程在线实时监测。因此,该系统具有广阔的发展应用前景。