首页 > 范文大全 > 正文

基于LabVIEW的网络化数据采集及处理系统

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于LabVIEW的网络化数据采集及处理系统范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:针对直升机旋翼试验台测试系统的要求,使用LabVIEW平台以及DataSocket网络技术开发了网络化多通道数据采集及处理系统。该系统由服务器端和客户端组成,服务器端负责数据采集、保存及,并具有频谱、功率谱、自相关、时域分析以及文件回放、数字滤波、波形监测等功能。客户端主要负责数据的远程显示。两者之间通过DataSocket Server建立连接。该系统通用性和可移植性强,可用于其他用途的测试领域。

关键词:LabVIEW;DataSocket网络技术;数据采集;文件回放

中图分类号:TP274文献标识码:A

文章编号:1004-373X(2010)02-182-03

Networked Data Acquisition and Processing System Based on LabVIEW

CHEN Songlin1,HUANG Jianping2

(1.School of Electronic and Information Engineering,Nanchang Hongkong University,Nanchang,330063,China;

2.Key Lab.of Helicopter Rotor Dyn.National Defense Sci.and Tech.,Helicopter Research and Development Institute,Jingdezhen,333001,China)

Abstract:Requirements for the helicopter rotor tower testing system,using LabVIEW platform and Socket network technology developed a network of multi_channel data acquisition and processing system.The system consists of server_side and client_side components,the server_side responsible for data acquisition,save and publish,with the spectrum,power spectrum,autocorrelation,time_domain analysis and document playback,digital filtering,waveform monitoring function.Client is mainly responsible for the data remote display,a connection is established with DataSocket Server.This system has strong versatility and portability,it also can be used to test area for other purposes.

Keywords:LabVIEW;DataSocket network technology;data acquisition;file playback

0 引 言

在进行直升机旋翼试验时,需要对试验台各系统的参数进行采集,包括桨叶、桨毂、旋翼轴等旋转测试参数和天平、传动系统、滑油系统等非旋转参数;同时,还需要对关键参数进行实时监控,对重要参数进行实时处理。

根据试验台的需要,测试系统通常包括:数据采集处理单元、监视报警单元和示波单元等。传统的方法是每个单元相互独立,都要配备单独的数据采集器。这样做的优点是单一的故障不会影响到系统其他部分,缺点是浪费设备、通用性和可移植性差。随着网络技术、虚拟仪器技术的飞速发展,这种基于现场的测试系统被逐步淘汰。

1 labview及其DataSocket技术简介

LabVIEW是美国NI公司开发的一种基于图形程序的虚拟仪器开发平台,它以PC为核心,通过软件建立虚拟仪器面板,配置特定的硬件接口模块完成仪器控制、数据采集、显示以及分析处理[1]。LabVIEW作为测试测量领域的专业软件,其拥有丰富的图形控件、友好的人机界面、强大的数据显示、处理以及仪器控制能力等众多优点[2]。将网络技术与虚拟仪器技术相结合,构建网络化虚拟仪器系统,是虚拟仪器系统发展的方向之一。LabVIEW提供的DataSocket技术是一种基于TCP/IP协议,面向测控的网络技术。用户不必进行复杂的底层TCP编程就可以同时通过计算机网络向多个终端现场测量数据。

DataSocket由DataSocket API与DataSocket Server两部分组成。DataSocket API是用户访问或写入网络数据的接口;DataSocket Server负责提供DataSocket技术自带的协议(DataSocket Transfer Protocol,DSTP)协议和管理底层网络通信。数据者通过DataSocket API以字节流的方式向DataSocket Server中写入数据。数据订阅者通过DataSocket API从DataSocket Server中还原数据。

2 系统设计

2.1 系统硬件设计

系统硬件主要有凌华公司的PCI-9112数据采集卡、计算机、传输网络、旋翼试验台及分布在试验台上的各种传感器。其中采集卡具有16路单端或8路差分模拟输入通道,12位采样分辨率,110 kS/s最高采样率,±10 V最大模拟输入范围,3个可独立编程16位计数/定时器,携带A/D FIFO内存。其性能可满足一般工业现场需要。系统硬件结构图如图1所示。

图1 系统硬件结构图

2.2 系统软件设计

系统由服务器端和客户端组成,服务器端负责数据采集、保存及,并具有频谱、功率谱、自相关、时域分析以及文件回放、数字滤波、波形监测等功能。客户端负责数据的远程显示及保存。设在服务器端的DataSocket Server负责两者之间的数据传输。

数据采集模式设为连续采集。为减少数据读取周期,数据读取和处理使用两个并行循环。循环之间的数据传输使用队列(Queue)技术。队列结构是一种先进先出(FIFO)的结构,可以保证有序的数据传递,避免竞争或冲突。读取循环连续读取数据并放入队列,处理循环连续从队列读取并删除数据。如果数据处理周期大于读取周期,新读取的数据会缓存在队列中,队列内存设置足够大数据不会丢失。如果处理周期小于读取周期,当队列为空时,在设置的时间内处理循环处于等待状态,数据不会重复分析。为进一步减少数据读取周期、保证参加统计的样本数量,提高统计的准确性,数据保存、时域处理及直方图统计在采集停止后进行。

3 程序实现

3.1 DataSocket Sever的建立

在使用DataSocket Sever之前,必须在DataSocket Sever Manager中建立预定义数据项并进行相应的各种配置。在开始菜单中选择“程序/National Instruments/DataSocket/DataSocket Sever Manger”选项,打开“DataSocket Sever Manger”,在该程序中创建数据项并设置访问权限、客户端最大数目。只有创建了数据项,服务器端和客户端才能对该数据项进行访问。完成设置后,选择Settings/Save Setting Now选项保存当前设置。

在开始菜单中选择“程序/National Instruments/DataSocket/DataSocket Sever”,启动DataSocket Sever后,它所包含的数据项就可以在被允许访问的计算机上通过DSTP访问。

当软件界面右上角的绿灯亮时,表示已成功连接DataSocket Seve中指定的数据项。红灯亮则表示连接失败。

3.2 服务器端数据采集及处理

台湾凌华公司免费提供的软件包PCIS_DASK和DAQ_LVIEW PnP包含了采集卡驱动及LabVIEW接口函数,利用这些函数可在LabVIEW 8.2平台上实现数据采集与处理。前面板和程序流程图分别如图2,图3所示。

图2 服务器端前面板图

图3 服务器端程序流程图

当采集开始时启动两个While Loop循环分别进行数据采集及处理。采集循环中通过AI Config.vi以及AI Star.vi设置采样通道、缓存大小、采样模式、采样率等参数并启动采集,连续向缓冲区写入数据。用一个While Loop循环连续读取缓冲区的数据。第一次读取数据点数可设,以后每次读取点数为缓冲区中所剩数据和设置值的较大者。

读取的数据先经滤波子VI进行数字滤波,滤除试验中的随机干扰和噪声成分。使用了Butterworth滤波器,它在所有频率上提供平滑的响应,过渡带下降较缓慢,陡峭程度同阶数成正比。滤波后的数据分成两个数据流,一个由Enquene Element.vi将数据添加到队列尾部,供数据处理循环使用;一个送入Waveform Chart进行波形显示并写入DataSocket Sever。

数据写入DataSocket Sever有两种方式:一是使用DataSocket API中DataSocket Write.vi;二是利用Waveform Chart控件属性中的数据绑定功能。该系统使用第二种方式:右键点击Waveform Chart,选择属性:数据绑定,在数据绑定选择下拉框中“DataSocket”,访问类型选择“只写”,通过浏览选择DataSocket Sever中指定数据项的路径。

超限报警子VI对各通道进行波形监测,当所选通道的采集数据超过设置的限制值时,红色报警灯亮。其主要用到了Amplitude and Levels.vi。

每次读取的数据送入Insert Into Array.vi,利用移位寄存器将数据插入之前所有数据的尾部,停止采集后,所有数据流向时域、文件以及直方图子VI。文件子VI中使用Write to Spreadsheet File.vi将数据及采样率写入Excel电子表格。时域子VI使用Basic Averaged DC_RMS.vi以及Amplitude and Levels.vi计算各通道的平均值、有效值、最大值、最小值。直方图子VI使用Histogram.vi对所选通道进行直方图统计,显示各数据点的概率分布。

数据处理循环使用Dequeue Element.vi从队列中连续读取并删除数据,其超时等待设为1 s,即当队列为空时,循环等待1 s后若队列中无元素则中止循环。频谱分析使用FFT.vi对数据进行单边FFT变换,计算信号的频率组成成分。功率谱分析使用FFT Power Spectrum.vi计算随机信号的能量分布。自相关分析使用AutoCorrelation.vi检测信号中的周期成分。

当接线板第1~3通道无输入,第4通道接1 500 Hz,2.5 V的正弦波时,其功率谱、自相关分析、时域分析及直方图统计界面如图4所示。

3.3 文件回放

文件回放主要从Excel表格中读取数据进行波形显示和分析。通过Read From Spreadsheet File.vi一次性读取表格中所有数据,再通过While Loop循环以及Array Subset.vi逐次读取设定的点数。在读取循环中对数据进行频谱、功率谱、自相关分析。数据读取停止后,进行时域分析以及直方图统计。其程序框图如图5所示。

图4 服务器端数据处理界面图

图5 服务器端文件回放程序框图

3.4 客户端数据显示

客户端通过DataSocket API中的DataSocket Read.vi以及一个While Loop循环连续地从DataSocket Sever中指定的数据项读取数据并进行显示和保存,其程序框图如图6所示。

图6 客户端程序框图

图6中“dstp://20080715_0011/newdouble”为指定数据项的访问路径。其格式为“dstp://计算机名/数据项名”。

4 结 语

该系统是基于直升机旋翼试验而开发的,服务器端设在测控间,主要采集直升机旋翼试验台上应变、压力、力、力矩等参数。客户端设在试验管理人员办公室,对试验数据进行实时监控。该系统数据处理功能较多,通用性及可移植性强,还可用于其他用途的测试领域。

参考文献

[1]闫玲,方开翔,姚寿广.基于LabVIEW的多功能数据采集与信号处理系统[J].江苏科技大学学报,2006,20(3):50-54.

[2]陈锡辉,张银鸿.LabVIEW 8.20程序设计从入门到精通[M].北京:清华大学出版社,2007.

[3]高占风,杜彦良,刘玉红,等.基于LabVIEW的远程数据采集与传输系统[J].微电子学与计算机,2007,24(3):102-104.

[4]杨乐平,李海涛,赵勇,等.LabVIEW高级程序设计[M].北京:清华大学出版社,2002.

[5]梁惺彦,和卫星.LabVIEW实现远程数据采集与传输[J].微计算机信息,2004,20(9):44-45.

[6]燕延,马增强,杨明.基于LabVIEW的数据采集与处理软件编程技巧[J].微计算机信息,2005,21(5):153-154.

[7]王剑.基于LabVIEW的数据采集及分析系统的开发[D].哈尔滨:哈尔滨理工大学,2004.

[8]孙春龙.基于LabVIEW多通道数据采集分析系统开发[D].武汉:武汉大学,2004.

[9]赵永立,张玉红,杨建成.虚拟仪器_测试技术的新领域[A].天津市自动化学会第十四届学术年会论文集\.2005.

[10]陈维芹.用于直升机旋翼试验的多功能测试系统及应用[J].测试技术学报,2003,17(1):29-32.