基于LabVIEW 语言的信号采集与处理-基础电子_第1页
基于LabVIEW 语言的信号采集与处理-基础电子_第2页
基于LabVIEW 语言的信号采集与处理-基础电子_第3页
基于LabVIEW 语言的信号采集与处理-基础电子_第4页
基于LabVIEW 语言的信号采集与处理-基础电子_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑基于LabVIEW语言的信号采集与处理-基础电子摘要:基于虚拟仪器技术,利用LabVIEW语言进行信号采集系统的研制具有重要意义。文章介绍信号采集与处理系统的主要流程。详细介绍PCI-1714数据采集卡的原理及功能,通过数据采集程序实例介绍基于LabVIEW语言实现PCI-1714采集卡的全过程,利用LabVIEW语言编写的程序用于将存储数据调出,并对信号波形特点进行分析。

1概述

实验室虚拟仪器工程平台(LabVIEW)是一种专门用于数据采集、分析及仪器控制的图形化软件,它所开发的虚拟仪器将计算机强大的数据处理能力与仪器的硬件测试控制能力很好地结合在一起。

LabVIEW的图形化开发环境具有、高效、功能强大、开发简易、实时性强、界面友好等优点,为用户提供了强大功能和使用的灵活性,非常适合用于进行仿真、实时检测和控制。目前,LabVIEW已经成为测试领域应用广泛和有前途的软件开发平台之一,也是应用广、发展快、功能强的图形化软件开发集成环境之一。

虚拟仪器可以利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化应用,与传统的测量仪器相比,具有成本低、功能强大、集成度高、质量可靠、维护方便等优点,能很方便地组建测试系统,满足多种测量要求。因此,基于虚拟仪器技术,利用LabVIEW语言进行信号采集系统的研制具有重要意义。

LabVIEW虚拟仪器主要包括前面板、框图和图标/接口部件三部分。

前面板是VI的交互式用户界面,即用户与程序代码发生联系的窗口。VI前面板是控件和指示器的组合,控件仿真常规仪器上的输入输出设备类型,如旋钮和开关,并提供一种机制,将输入从前面板传送到基本框图。

信号采集与处理系统主要应用的是数据采集卡的A/D(模/数)转换功能,通过数据采集卡将采集端采集到的模拟电信号利用高速模数转换电路转换为数字信号,经过数据采集卡板载缓存,利用计算机中的程序不断从缓存中提取数据,存入计算机中,并进行相关处理,提取有用数据进行硬盘存储。

利用LabVIEW语言编写数据采集卡的驱动程序,对信号分析处理及存储流程如图1所示。

图1信号采集与处理系统总流程图。

2PCI-1714数据采集卡

Advantech公司的PCI-1714是一款PCI接口的高速4通道同步数据采集卡,可用于高速数据采集应用,性价比较高,适用于仪器测试、图像处理、视频数字化处理及声音与振动测试等领域。

PCI-1714是高速、高分辨力、高容量的PCI数据采集卡,配备4组模拟输入端,具备同步采集功能。其特性可归纳为:a)内含4个独立ADC(模数转换器),可使4个信道同步取样,当4组模拟输入同时使用时,采样频率理论可达30MS/s。b)每路ADC内建32KFIFO内存,使用者在高速采样时有足够缓冲区可供暂存,以维持数据采集速度及完整性。c)提供多种输入范围,包含±5V、±2.5V、±1V、±0.5V等,使用者通过工具程序即可轻松完成设定。d)高达6种触发模式,包含软件触发、Pacer、Post-Trigger、Pre-Trigger、Delay-Trigger及About-Trigger触发方式,方便客户按需求自行设定。

基于PCI-1714的通用高速数据采集系统结构如图2所示。

图2基于PCI-1714的高速数据采集系统结构框图。

将需监测的现场信号经滤波器滤波后送入PCI-1714板卡,卡上A/D转换器对信号进行高速模数转换。转换数据首先暂存在板卡的32K板载FIFO(先入先出)中,当FIFO半满或全满时,向DMA(动态内存存取)控制器发送DMA请求,使用直接内存存取方式,经PCI(外设组件互连)总线将数据从FIFO输出到内部缓冲区中,PCI总线传输带宽很宽,可以满足4通道高速同步采样时所带来的高速数据传输要求。

内部缓冲区作为高速数据采集系统的海量缓存,它与用户缓冲区一样,都是数据采集程序动态分配给驱动程序使用的两块内存区域,区别在于内部缓冲区存放的是从FIFO取来的原始值,用户缓冲区存放的是经转换之后的电压值。

在进行长时间高速数据采集时,PCI-1714多采用循环方式。在此方式下,启动采集过程能进行无数次的A/D转换。此时内部缓冲区分成前后对等的两个半区使用,当前半区填满后,将此半区的数据向用户缓冲区传送,同时将新转换的数据放在内部缓冲区的后半部分。当后半区填满后,此半区数据向用户缓冲区传送。同时自动将新转换的数据放到早已传输完毕的前半个缓冲区。可通过查询状态寄存器的状态来判断FIFO缓冲区的状态,分别判断空标志位(Emptyflag)、半满标志位(Halffullflag)以及全满标志位(Fullflag)。

内部缓冲区和用户缓冲区的数据可以在程序控制下以文件的形式保存至计算机中,实现采集数据性存储,便于后期数据分析处理。

3基于LabVIEW语言实现的PCI-1714采集卡数据采集程序实例

下面介绍用LabVIEW语言编写的PCI-1714采集卡数据采集驱动程序。该程序能够实现对传感系统外界信号的数据进行连续采集,并能根据需要对有用数据进行存储。

从功能上分,该程序主要分为三部分:a)对采集卡进行初始化,完成采集卡重要工作参数的设置,如用户缓存、采样速率(scanrate)、输入限制等。b)进行数据采集和有用数据的存储,就是将数据先放入采集卡的板载缓存FIFO中,再由计算机读取板载缓存中的数据,写入由计算机的内存中分配出的用户缓存,然后根据需要将有用数据从内存中存入计算机硬盘。具体存储格式可以为多种,该部分中包括的子VI有读取数据模块、数据存储模块以及显示所采集信号的时域图形的模块。c)在采集结束后关闭采集卡。

为了使用PCI-1714进行连续高速的数据采集,需要对采集速率、用户缓存大小等重要参数进行合理设置。如前所述,数据采集卡进行A/D转换时是连续进行的,也就是说采集卡往板载缓存中放入数据是连续进行的,而计算机从板载缓存FIFO中读取数据放入用户缓存时是在FIFO半满或全满的状态下批量读取的,同时,如果要进行数据的存储,从用户缓存再向硬盘中写入数据时也是批量进行的。

由于用户缓存的大小受计算机内存空间大小的限制,不可能无限大,在使用过程中,只能尽量设得比较大,一般可以设为内存的十分之一左右。在保持一定的数据采样率并且用户缓存确定的情况下,如果存储过程中,单批量写入硬盘的数据过少,会出现不能及时将数据从用户缓存中读出,从而导致用户缓存溢出的错误。而当单批量写入硬盘的数据过多时,又会出现从用户缓存读取数据过快,可能会读出空数据的错误,所以这几个参数必须互相配合设定才能使采集卡获得良好的采集和数据存储的性能。

4基于LabVIEW的数据调用与处理

利用上述程序完成信号采集的同时可以将有用信号存储,用于后续分析,下面举例说明如何将存储之后的波形数据重新调出并进行分析。

将以TXT格式存储的数据从文件中调出并进行频谱分析的程序。在程序前面板中可以同时将一段数据表示的信号时域波形及利用“FFT功率谱”VI分析获得功率谱波形显示出来。

利用LabVIEW语言编写一个用于将存储数据调出并对信号波形特点进行分析的程序,该程序可以将一个具有多信道的监测信号从存储文件中调出,不同信道的监测信号各不相同,根据信号波形的特点,可以选用相关方法进行信号处理,分析各信号对应的监测环境的变化。利用LabVIEW所提供的“调用库函数节点”模块,可以很方便地把C语言编写的程序嵌入LabVIEW程序中,并且可以封装成子VI,供主程序调用。适用于一些LabVIEW语言编程效率不高的应用场合,利用“调用库函数节点”模块编写的子VI程序。

5结束语

从以上分析可以看出,利用LabVIEW语言可以方便地解决信号采集与处理领域的相关问题,无论是对数据采集卡PCI1714的驱动编写、数据的存储,还是对数据的调用与分析都可以充分的调用该语言提供的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论