基于LabVIEW的虚拟信号分析仪的软件设计

2016-08-22 15:11:21来源: eefocus
1 引言

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

2 分析仪功能介绍

信号分析仪是用来对电信号进行测量、显示、波形存储、时域和频域分析的仪器。虚拟信号分析仪主要由参数设置、功能选择、信号一、信号二和互相关分析五个模块构成:

(1) 参数设置模块。完成通道配置,设置扫描率、扫描数和缓冲区大小。

(2) 功能选择模块。实现波形显示、波形存储、读取波形数据、更新信号和退出。

(3) 信号一。对应采集通道一,可实现滤波及加窗、自相关分析、自功率谱分析、统计分析和幅值分析。

(4) 信号二。对应采集通道二,功能与信号一类似。

(5) 互相关分析。对信号一和信号二进行互相关分析和功率谱分析。

程序运行时,首先通过往通道控件中输入通道号,来控制数据采集时的通道数,同时对扫描数、扫描率和缓冲大小进行配置。配置完成以后,可以点击波形采集,先观察信号的具体波形,如果不满足要求,则可以重新进行参数配置。当所要采集的波形满足要求后,可以点击波形存储,把波形数据保存到指定的文件当中。点击读取波形数据,把以前存储到文件中的数据读出来,并把相应的信号输送到信号一和信号二。此时通过点击滤波及加窗,对信号进行滤波及加窗函数处理,同时把处理之后的数据输出到相关分析单元,对输出信号进行相关分析。

3 波形采集

框图程序中用到的子函数功能如下。

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 波形存储

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输出的字符窜以头文件的形式存储到指定的文件中。

 

Write File位于Functions>>File I/O子模板。该函数通过写头文件子VI中的dup refnum,把采集来的数据以二进制的形式存储到前面指定的文件里。同时输出dup refnum、出错信息和已写到文件里的字节数。

关闭文件用于关闭文件,并输出相关的出错信息。

在波形存储程序中调用上述函数和子VI,根据数据流将它们组合起来,再对其进行必要的处理。

5 波形读取

 

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输出的相关信息,如时间、日期、通道等信息在波形读取的前面板显示出来。

 

AI Hardware Config VI:把二进制中的数据转换为可读的电压数,以便把图形画出来。

Type Cast VI:该函数将输出的数据转换成指定的数据。

Search/Split String:将输出的字符串分解成两个子字符串。

读波形数据子VI:把文件中的波形数据读出来,输出到波形读取的前面板显示器上。

Read File:通过前面的dup refnum,把文件中的二进制数据读出来,并把数据以16位整形的形式输出到一个二维数组中,同时输出文件的dup refnum、出错信息和所读数据的字节数。

6 结束语

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

关键字:LabVIEW  虚拟信号  分析仪

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/article_2016082216876.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
LabVIEW
虚拟信号
分析仪

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved