2
基于LabVIEW的虚拟信号分析仪软件设计
2008-12-22 20:18:24 admin 浏览:1893次 【

摘要:介绍了用LabVIEW6.1和NI6024E采集卡实现虚拟信号分析仪基本功能的方法,并重点阐述了波形采集、波形存储、波形读取等程序的编程方法、框图程序和关键技术。本文设计的系统实现了信号分析仪的基本功能,成功地用于教学实验中,具有造价低、操作方便等特点。             
关键词:虚拟仪器;LabVIEW;数据采集;波形存储;波形读取

1 引言

    虚拟仪器(VI)概念的提出是测控技术领域的一次革命。由于虚拟仪器可借助PC机强大的计算及处理能力,可由用户定义和扩展功能,且价格低廉,深受广大用户青睐。目前,虚拟仪器已经逐渐走进大学实验室,开始为实验教学和科研服务。本文介绍一种虚拟信号分析仪的软件设计方法,以美国NI公司的Labview6.1为开发平台,配合NI公司的6024E采集卡,实现虚拟信号分析仪设计。

2 分析仪功能介绍

    信号分析仪是用来对电信号进行测量、显示、波形存储、时域和频域分析的仪器。虚拟信号分析仪主要由参数设置、功能选择、信号一、信号二和互相关分析五个模块构成:
(1) 参数设置模块。完成通道配置,设置扫描率、扫描数和缓冲区大小。
(2) 功能选择模块。实现波形显示、波形存储、读取波形数据、更新信号和退出。
(3) 信号一。对应采集通道一,可实现滤波及加窗、自相关分析、自功率谱分析、统计分析和幅值分析。
(4) 信号二。对应采集通道二,功能与信号一类似。
(5) 互相关分析。对信号一和信号二进行互相关分析和功率谱分析。
    程序运行时,首先通过往通道控件中输入通道号,来控制数据采集时的通道数,同时对扫描数、扫描率和缓冲大小进行配置。配置完成以后,可以点击波形采集,先观察信号的具体波形,如果不满足要求,则可以重新进行参数配置。当所要采集的波形满足要求后,可以点击波形存储,把波形数据保存到指定的文件当中。点击读取波形数据,把以前存储到文件中的数据读出来,并把相应的信号输送到信号一和信号二。此时通过点击滤波及加窗,对信号进行滤波及加窗函数处理,同时把处理之后的数据输出到相关分析单元,对输出信号进行相关分析。

3 波形采集

    波形采集的框图程序如图1所示。框图程序中用到的子函数功能如下。


 
AI Config VI:设置采样前的各种参数。
DAQ Occurrence Config VI:设置一个数据采集事件。
AI Start VI:指定程序中用于开始采集的参数,如设置扫描次数、采样率等。
AI Read VI:设定从采样缓存区读取数据的那些参数,如设定每次读取的数量。
Clear VI:把task ID废除,从而将采样所用的内存缓存区和其它资源释放。
Simple Error Handler VI:将出错信息通知用户。
Wait On Occurrence VI:处理事件等待。
    在波形采集程序中,用上述函数,根据数据流将它们组合起来,再对其进行一些必要的处理。第一个DAQ Occurrence Config VI设置一个数据采集事件。在While循环中,Wait On Occurrence函数在后台休眠,也就有效地把While循环设置于休眠状态。在设定的数据采集事件发生后,即采集到事先指定数量的数据,LabVIEW通知Wait On Occurrence函数停止等待。由于Wait On Occurrence函数的time out(超时)输出参数连接到包含有AI Read VI的选择结构的选择端口上,就一定在 Wait On Occurrence函数停止等待后,才会用AI Read VI。

4 波形存储
 

    波形存储的框图程序如图2所示。框图程序中用到的子函数功能如下。


图2波形存储框图程序
Open/Creat/Replace File VI:提示数据是以BIN(二进制)为后缀的形式存储在文件中。
AI Config VI:设置采样前的各种参数。
AI Start VI:指定程序中用于开始采集的参数,如设置扫描次数、采样率等。
AI Read VI:设定从采样缓存区读取数据的那些参数,如设定每次读取的数据点数。
AI Clear VI:把task ID作废,从而将采样所用的内存缓存区和其它资源释放。
Simple Error Handler VI:将出错信息告诉用户。
时间日期子VI:显示数据存储时的具体时间和日期。
Match Pattern VI:把输入的字符串分成3段来表示,如年、月、日。
Scan Form String VI:把输入的字符串转换为相关格式的字符串。
Concatenate String VI:把输入的字符串放在一个数组中输出。
Format Date/Time String:把输入的时间、日期字符串以规定的格式输出。
Replace Array Subset VI:用其它的数据代替索引所指数组中的数据。
Search 1D Array VI:从一维数组的第一个数开始寻找指定的元素。
Seconds To Date/Time:输出的格式为年、月、日、小时、秒。
    配置头文件子VI:把时间日期子VI中所显示的日期和时间及通道号的配置放在一起,以字符串的形式输出。
    写头文件子VI:把配置头文件子VI输出的字符串,以头文件的形式存入前面指定的文件中。
    Write File位于Functions>>File I/O子模板,通过Open/Creat/Replace File函数中的dup refnum(文件标识)把配置头文件子VI输出的字符窜以头文件的形式存储到指定的文件中。
    写波形数据VI的框图程序如图3所示。


 
图3写波形数据框图程序
    Write File位于Functions>>File I/O子模板。该函数通过写头文件子VI中的dup refnum,把采集来的数据以二进制的形式存储到前面指定的文件里。同时输出dup refnum、出错信息和已写到文件里的字节数。
关闭文件用于关闭文件,并输出相关的出错信息。
    在波形存储程序中调用上述函数和子VI,根据数据流将它们组合起来,再对其进行必要的处理。


5 波形读取


    波形读取框图程序如图4所示。

图4波形读取框图程序


Open/Creat/Replace File VI:用于提示数据是以BIN为后缀的形式存储于文件中的。
Simple Error Handler VI:将出错信息告诉用户。
    读头文件子VI:用来读取文件中的内容。程序中通过前面Open/Creat/Replace File VI的dup refnum,把指定文件中的内容读出来,并且把文件中的相关内容,如时间、日期等字符串的形式输出;mark after read表示为所读数据的字节数;同时输出dup refnum和出错信息。
    显示头文件子VI把读头文件子VI输出的相关信息,如时间、日期、通道等信息在波形读取的前面板显示出来。其框图程序如图5所示。

    AI Hardware Config VI:把二进制中的数据转换为可读的电压数,以便把图形画出来。
    Type Cast VI:该函数将输出的数据转换成指定的数据。
    Search/Split String:将输出的字符串分解成两个子字符串。
    读波形数据子VI:把文件中的波形数据读出来,输出到波形读取的前面板显示器上。
    Read File:通过前面的dup refnum,把文件中的二进制数据读出来,并把数据以16位整形的形式输出到一个二维数组中,同时输出文件的dup refnum、出错信息和所读数据的字节数。

6 结束语

    本虚拟信号分析仪软件以Labview6.1为开发平台,在配以NI6024E采集卡,实现了信号分析仪的基本功能。所构成的信号分析仪成功地用于教学实验中,具有造价低、操作方便等特点。

参考文献:

[1] 杨乐平等. LabVIEW程序设计与应用.电子工业出版社,2001.
[2] LabVIEW高级教程培训教材.北京中科泛华测控技术有限公司
[3] 李刚等. LabVIEW-易学易用的计算机图形化编程语言.北京航空航天大学出版社,2001.
[4] Gary W . Jhonson,Richard,USA:National Instruments corporation,2000.
[5] 刘君华.基于LabVIEW的虚拟仪器设计.电子工业出版社,2003.
[6] 袁渊、古军.LabVIEW程序设计与应用.电子科技大学出版社,2000.

2 条评论
查看更多评论
  • 附件包括开题报告、论文、源程序1本选题的意义及国内外发展状况1.1研究目的和意义    随着工业自动化程度不断发展,对位移测量的精准度、效率以及..

    浏览:3994次 评论:0
    2020-02-21 09:30:14
浏览:5529次 评论:0
2018-05-13 22:08:20
浏览:8088次 评论:1
2018-04-14 20:41:34
  • 摘 要:探讨在MATLAB中使用FIS编辑器与Simulink相结合的方法构造模糊推理结构,并通过MATLAB Script Node实现LabVIEW与MATLAB的混合编程,设计出具有模糊自整..

    浏览:4556次 评论:0
    2017-07-28 15:43:26
  • 摘要:针对现代工业过程控制中实时通讯要求和现场总线存在的缺点,用现在流行的开放式标准接口技术OPC规范,设计了一种基于LabV IEW的PC与PCC实时数据通讯方..

    浏览:4589次 评论:0
    2017-07-28 15:27:50
作者专栏
  • NNN

    注册时间:2024-12-23 09:48:46

  • sltang

    注册时间:2024-12-21 15:45:59

  • samhuang63

    注册时间:2024-12-20 09:42:58

  • csq663347

    注册时间:2024-12-05 16:34:39

  • guohuiming

    注册时间:2024-11-14 08:49:44

Copyright@http://nilab.com.cn all rights reserved 备案号:京ICP备12043750号-1
Powered by qibosoft V9.0 Code © 2003-2017 qibosoft
LABVIEW之家 QQ:181237912; email:Labviewzj@qq.com 项目合作 微信及手机:18510627229