基于LabVIEW 语言的信号采集与处理

发布者:知音学友最新更新时间:2011-06-10 关键字:LabVIEW  信号采集 手机看文章 扫描二维码
随时随地手机看文章

  1 概述

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

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

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

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

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

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

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

1.jpg


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

  2 PCI-1714 数据采集卡

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

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

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

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

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

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

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

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

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

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

  从功能上分,该程序主要分为三部分:a)对采集卡进行初始化,完成采集卡重要工作参数的设置,如用户缓存、采样速率(scan rate)、输入限制等。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 的驱动编写、数据的存储, 还是对数据的调用与分析都可以充分的调用该语言提供的专用VI, 并且在图形化语言编写环境中,获得清晰的数据流程。而且LabVIEW 语言也支持用户对VI 的二次开发,并可以调用其他语言编写的程序, 还可以将用户自行编写的程序方便地封装成标准VI,供后续程序调用,为提高程序编写的效率及扩展程序功能带来极大方便。

 

 

关键字:LabVIEW  信号采集 引用地址:基于LabVIEW 语言的信号采集与处理

上一篇:基于微处理器的宽频带相位测量系统的设计与应用
下一篇:基于LabVIEW和C8051F350的纺丝张力监控系统

推荐阅读最新更新时间:2024-03-30 22:14

基于DSP的核信号采集系统通讯接口原理及设计
 数字信号处理器的发展也是日新月异,不仅行指令速度越来越快,而且其功耗也越来越低。许多仪器或检测设备都不约而同地将DSP 应用到那些数据量庞大而且需实时传送数据的系统中。核信号数据采集系统也不例外,利用 DSP 可以实时有效地处理采集的信号,并将处理数据发送至上位机进行进一步处理。 通常 数据采集系统下位机与上位机的通讯采用串口方式,这种方式不仅协议简单,而且连接方便。 但是这种方式的数据传送速率不高,而USB 总线接口具有方便快捷、支持即插即用、可实 现高速数据通讯等优点,在很多领域得到广泛应用。USB 总线接口在USB1.1 协议下传输速 率可达12Mbps ,USB2.0 协议下可达480Mbps ,完全可以满足目
[嵌入式]
基于DSP的核<font color='red'>信号采集</font>系统通讯接口原理及设计
利用CompactRIO和LabVIEW控制心脏模拟器
挑战: 开发一个逼真、可靠和可重新配置测试环境,帮助最新的心脏辅助装置进行提高和改善,而无需进行动物试验。 解决方案: 利用NI CompactRIO创建一个独立的硬件在环(HIL)测试环境。该测试环境可以把人工机械心脏与循环血流模型相结合,创造一个包含真实血液动力环境的生动的解决方案。 由心脏病导致的死亡占发达国家所有死亡人口的将近一半。心脏移植仍然是治疗心脏病最有效的方式,但捐献的器官远远及不上需求。为了解决这种不平衡情况,目前人们正在研究使用。利兹大学正在开发的一种新颖的机械人工心脏辅助装置被命名为智能心室辅助装置(iVAD)。该装置能够作为人造肌肉包覆心脏,通过在心脏心室外表面周围施加与自然节律同步的压力,为衰竭的
[测试测量]
采用LabVIEW的PC机与变频器的串口通信
  1 引言   本文针对摩擦学试验研究的特点,采用广泛使用的LabVIEW编程语言,开发用于东元7200MA 变频器 运行频率的控制串口通讯程序。   由于摩擦学试验机和摩擦学测试的特殊性,摩擦学试验中的变频器调速有着不同于一般工业变频控制的特点。一方面,要求变频器调速能够在较大范围内满足摩擦学测试的要求,使得试验结果具有可比性;另一方面,摩擦磨损试验过程中,对控制有一些特殊的要求,例如需要特殊的速度、运动的非周期性以及设备的快速启动和停止等。在一些疲劳试验中,甚至要求电机进行寸动或者往复运动以检测材料的性能,有的试验现场对人体的损害比较大,需要远距离进行控制和检测电机的运转情况。所以,必须利用 计算机 程序控制变频器实
[测试测量]
采用<font color='red'>LabVIEW</font>的PC机与变频器的串口通信
LabVIEW数据记录和存储(一)—文本文件
文本文件是由若干行字符构成的计算机文件,根据本文存储方式的不同有多种格式,如doc、txt、inf等。通常所指的文本文件是指能够被系统终端或者简单的文本编辑器中接受的格式,可以认为这种文件是通用的、跨平台的。对通用的英文文本文件而言,ASCII码是最为常见的编码标准;而如果需要存储带重音符号的英文或其它的非ASCII字符,则必须选择一种字符编码,如UTF-8。 尽管ASCII标准使得只含有ASCII字符的文本文件可以在Unix、Macintosh、Microsoft Windows、DOS和其它操作系统之间自由交互,但是在这些操作系统中,换行符并不相同,处理非ASCII字符的方式也不一致。 换行 (end-of-line, EOL)
[测试测量]
<font color='red'>LabVIEW</font>数据记录和存储(一)—文本文件
NI(美国国家仪器)最新推出无线传感器网络平台
  美国国家仪器有限公司(National Instruments,简称NI)近日宣布推出最新无线传感器网络(WSN)平台,它包含了LabVIEW图形化编程软件和新发布的性能可靠、低功耗的无线测试节点,构成一个完整的远程监控解决方案。当前,远程监控应用中无线技术的使用呈现出增长的态势,工程师和科学家们努力尝试寻求一种 集成的解决方案,可以确保满足测试质量、能源管理并提供可靠的、适合长期远程发布的硬件。NI WSN平台充分发挥了NI 公司30多年数据采集系统领导者的经验,向用户提供了一种简单易用的解决方案,它为用户提供了高质量的测试数据,可灵活管理设备功耗,以及可以通过自定义无线硬件来实现附加功能。作为该平台主要特色,LabVIEW
[模拟电子]
labview中要注意数据的表示格式
在这个小程序中,我发现 乘 的输出总是不正确。总是比与其的要小很多。 开始并没注意到是数据格式的问题。 那我们右键输出接点会弹出这样的对话框 表示法显示的是U16 而U16最大值为65536.所以 溢出了。 而U16是因为匹配到源数据类型才是U16的。如果前面的数据格式为U32则 这个输出也为U32。 我们不想修改前面的数据格式,因为U16对于前面的足够了,大了浪费内存。 那我们只要修改该输出的数据格式就好了。改成U32。 问题解决。
[测试测量]
LabVIEW 8.2的类和对象
 LabVIEW 8.2是NT公司为庆祝和纪念LabVIEW正式发布⒛周年而推出的纪念版本。与此同时首次推出了中文版本,并在软件中增加了许多功能和新特性。LabVIEW 8.2的新功能具体体现在以下方面。   面向对象编程   LabVIEW 8.2的面向对象编程结构和工具,可以设计更加复杂、更具模块化的 测试 应用,可以以最少的测试框架改动来集成新的测试模块,从而更便捷地扩展它们的测试应用。   与其他面向对象语言(如C++和Java)一样,LabVIEW也实现面向对象的编程,包含类结构、封装、继承等概念,可创建更易维护的代码,令代码的修改不影响应用程序中的其他代码。LabVIEW面向对象编程可用于创建用户定义的数据类型。
[测试测量]
基于LabVIEW的相关滤波器的设计与改进
  在目前的测试领域中,越来越广泛地利用相关检测的方法进行滤波。利用相关滤波可以方便地从复杂的待测信号(包括有用信号、直流偏置、随机噪声和谐波频率成分等)中分离出某一特定频率的信号。在数字技术迅速发展以后,相关滤波也经常利用A/D板对信号采样后,在计算机中实现,成为数字滤波的一种形式。本文设计了一种实现相关滤波的方法,这是相关分析在测试技术中的一个典型应用。图l所示为的典型框图。      Labview是美国国家仪器公司推出的一种基于“图形”方式的集成化程序开发环境,是目前国际上惟一的编译型图形化编程语言。在以PC机为基础的测量和工控软件中,Labview的市场普及率仅次于C++/C语言。Labview开发环境具有一系列
[安防电子]
基于<font color='red'>LabVIEW</font>的相关滤波器的设计与改进
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved