点击学习>>《龙哥手把手教你学labview视觉设计》视频教程
基于labview的虚拟频谱分析仪的设计与实现
o 引言
labview(laboratory virtual instrument engineering workbench)是一种图形化的编程语言,集成了满足gpib、vxi、rs-232和rs-485协议的硬件及数据采集卡通讯的全部功能,还内置了便于应用tcp/ip、activex等软件标准的库函数。利用labview可以方便地建立各种虚拟仪器。
频谱分析仪是对无线电信号进行测量的必备手段,是从事电子产品研发、生产、检验的常用工具,应用十分广泛,被称为工程师的射频万用表。传统的频谱分析仪的前端电路是一定带宽内可调谐的接收机,输入信号经变频器变频后由低通滤器输出。滤波输出信号作为垂直分量,频率作为水平分量,在示波器屏幕上绘出坐标图,就是输入信号的频谱图。由于变频器可以达到很宽的频率,例如30hz-30ghz,与外部混频器配合,可扩展到100ghz以上,所以频潜分析仪是频率覆盖最宽的测量仪器之一,无论测量连续信号或调制信号,频谱分析仪都是很理想的测量工具。但是传统的频谱分析仪只能测量频率的幅度,缺少相位信息,因此属于标量仪器,而且体积庞大。利用labview强大的虚拟仪器开发功能,可实现基于快速傅里叶变换(fft)的现代频谱分析仪功能,采用数字方法直接由模拟/数字转换器(adc)对输入信号取样,再经fft处理后获得频谱图,可以解决传统频谱分析仪价格昂贵,携带不便等缺点。
1 虚拟频谱分析仪总体设计方案
虚拟频谱分析仪由数据采集卡、计算机和在其上运行的用labview开发的应用软件组成,如图1所示。
虚拟频谱分析仪利用数据采集卡的模拟输入和模拟输出两个功能,用模拟输出功能产生所需的激励信号,并将其加到被测网络上,再用两个模拟输入通道将激励信号和网络输出端的响应信号同时采集到计算机中,经处理后,构成幅频和相频特性曲线,并显示在计算机屏幕上,最后对模拟生成的信号进行分析,在计算机屏幕上输出模拟信号的幅频/相频特性。
2 虚拟频谱分析仪组成及功能
2.1 虚拟仪器和频谱分析仪组成
本文设计的虚拟频谱分析仪由周期性信号发生器、滤波器以及幅频/相频特性、频谱分析结果三个子模块组成。信号发生器子模块生成两路模拟输入信号,一路是可调频率、相位和振幅的正弦信号,另一路是指可调频率、相位和振幅的余弦信号,最后利用信号合成器把两路信号混合起来作为生成的2路模拟信号;频谱分析和滤波器子模块利用labview强大的数字信号处理功能,对这组数据进行滤波、加窗、fft运算处理,得到信号的实部谱和虚部谱,最重要的是得到信号的幅频特性曲线和相频特性曲线;在频谱分析的结果子模块中,对生成信号的频谱进行分析,并将均方根值、一个周期内的信号均值等参数在系统退出时保存到文本文件中。其中,在滤波设置中可以控制滤波的通过方式以及截止频率,最后显示出频谱分析结果,系统退出时提示保存当前数据到文本文件。
虚拟频谱分析仪前面板分为3部分:周期性信号发生器、周期性信号滤波器及幅频/相频特性和周期性信号频谱分析结果,如图2所示。图中显示的是周期性信号发生器的界面,图中正弦波和余弦波信号可以通过鼠标拖拽和旋转按钮来改变信号的频率、振幅及相位。当拖拽的时候可以发现下方的2路原始模拟信号波形会发生变化,而且横坐标轴的最大值也会发生变化。程序内部通过调用后面介绍的xscalecontrol.vi就可以实现这个功能;对于周期性信号滤波器及幅频/相频特性和周期性信号频谱分析结果这两个功能模块界面限于篇幅不再赘述。
虚拟频谱分析仪后面板由五个子模块组成:波形生成模块,波形分析模块,控制x轴范围,滤波器以及幅频/相频特性和数据保存模块,如图3所示。
function imgzoom(id)//重新设置图片大小 防止撑破表格
{
var w = $(id).width;
var m = 650;
if(w signal analysis,参数对话框中共分为4个区域,分别是要求进行的幅值特征值求取的项目(amplitude measurements)、当前信号幅值求取的结果(results)、输入信号预览窗口(input signal)和加窗后信号预览窗口(result signal),其中最重要的是幅值特征值求取项目的设置,需要求取哪个特征值,就在它前面划勾,amplitude and level measurement.vi自动在其图标中添加这一输出端口。频谱分析amplitudeand level measurement.vi功能引脚如图7所示。
该模块有3个输入引脚和8个输出引脚。3个输入引脚分别如下:restart averaging引脚标识是否重启选定的平均处理过程,缺省为false;signals引脚是输入要分析的信号;error in(no error)引脚是对在执行到这个vi之前若是发生错误条件的描述;8个输出引脚叙述如下:rms引脚指信号均方根值;positive peak引脚指正向峰值;error out引脚指子vi执行错误时的输出信息;cycle average引脚指一个周期的平均值;cycle rms引脚指一个周期的均方根值;mean(dc)引脚指信号均值;negative peak引脚指负向峰值;peak to peak引脚指峰一峰值,即输入信号波形的正向和负向的最大振幅值。
把模拟生成的2路信号作为此vi的输入引脚signals,就可以对生成的信号进行分析,从而输出该信号的一些参数信息,如信号均值、峰值和一个周期的均方根值等。
另外一个比较典型的信号分析vi就是fftspectrum(real-im).vi,该vi可以对输入的时域信号计算出快速傅立叶变换频谱,并分别返回波形的实部谱和虚部谱,在实际应用中进行实部谱和虚部谱的分析也很有意义,傅立叶频谱变换fft spectrum.vi功能引脚如图8所示。
该模块共有10个引脚。其中restart averaging(f)引脚和上面提到的功能一样,用来标识是否重启选定的平均处理过程;time signals引脚标识输入的时域信号;window引脚指加窗设置,加窗方式包括可以有多种不同的方式,如uniform、hanning、 hamming以及blackman等;error in(noerror)引脚和error out引脚标识执行此vi有错误发生时的输入和输出信息;averaging parameters引脚指输入波形信号的平均参数;real parts引脚标识波形的实部谱,输出可以是用graph图像直观描述的方式也可以是一堆参数的描述形式;imaginary parts引脚指输入波形的虚部谱,描述方式同实部谱;其余两个引脚averaging done引脚和averages completed引脚一般不用,都是对输入波形的一些不常用的参数的叙述。
(4)滤波器以及幅频/相频特性子模块
滤波器子模块处于functions->signal analysis子模板中,它的设置分为4个区域,分别为滤波器参数设置(filtering type)、两个预览窗口和预览模式设定区域(view mode)。滤波器种类有四种,分别为高通、低通、带通以及平滑滤波。前三种都容易理解,而平滑滤波主要用于对信号进行局部平均,消除周期性噪声或白噪声。低通滤波器子模块filter.vi的功能引脚如图9所示。
带通滤波器子模块bandfilter.vi的功能引脚如图10所示。顾名思义,带通滤波器的意思就是频率在某个范围内的波形可以通过,它比图9中的低通滤波器就多了一个引脚upper cut-off。
(5)数据保存子模块
数据保存子模块即savedata.vi功能引脚如图11所示。它把想要保存的数据处理成统一的格式,在系统退出时保存到文本文件中。
其中,只有两个引脚是输出端,即string和系统日期和时间,分别代表格式化输出的字符串和系统当期日期和时间。输出端string在系统自动存储文件中的一条记录格式如下:
周期平均值:-0.258667正峰值:2.845332信号均方根值:2.845332 3db带宽:392.968235.
2007年8月21日12:21:32。其中,周期平均值表示波形信号在一个周期内的信号平均值;正峰值表示波形信号达到的最大幅度值;信号均方根值表示波形信号按均方根公式求出的值;3db带宽表示通过子vi求出的带宽幅度值;最后一个代表的是存储该条记录的日期和时间。其中主要用到 labview提供的format函数,通过把多个中文字符串和一个数字通过fromat函数格式化到同一个字符串string中输出,从而为系统退出时保存数据做准备,因为若是把保存数据放到while循环里,则会因一直提示保存数据而导致程序死循环。
图11中,有六个输入端引脚,其中rms引脚表示信号的周期平均值,positive peak引脚表示正向最大峰值,cycleaverage引脚表示信号均方根值,detected frequencies引脚是指检测到的频率,而3db带宽引脚和上限带宽引脚是通过嵌套的—个子ⅵ即compute 3db bandwidth.vi计算出来的。
3 结语
基于labview编程环境下的虚拟频谱分析仪主要实现了时域分析和频域分析两个功能。信号的时域分析主要是测量测试信号经滤波处理后的特征值,这些特征值以一个数值表示信号的某些时域特征,是对测试信号最简单直观的时域描述。将测试信号采集到计算机后,在测试vi中进行信号特征值处理,并在测试vi前面板上直观地表示出信号的特征值,可以给测试vi的使用者提供一个了解测试信号变化的快速途径。信号的特征值分为幅值特征值、时间特征值和相位特征值,本文对幅值特征值的分析进行了设计。
信号的频域分析就是根据信号的频域描述来估计和分析信号的组成和特征量。也就是研究信号的频率结构,即求取其分量的幅值、相位按频率的分布规律,并建立以频率为横轴的各种谱。对于周期信号可将其展开为傅立叶系数,其频谱具有离散性、谐波性和收敛性;对于非周期信号可用频谱密度函数分析其频率构成,其频谱具有连续性。
频域分析包括频谱分析、功率谱分析、相干函数分析以及频率响应函数分析。本文实现了频谱分析,即信号的幅频特性和相频特性。
MACH3脉冲的工作与输出(三)
mpu6050和mpu3050有什么不同和相同(基础介绍和区别分析)
单片机远程灯控箱的设计资料和源代码概述
防爆燃气探测器(隔爆型)的应用方案
蔡司三坐标检测方法详解
基于LabVIEW的虚拟频谱分析仪的设计与实现
购买兼容的印刷电路板
“唐辉电子”向您介绍常见频点4M、6M、8M、12M、16M晶体(无源、不带电压)
怎样使用稳压器将抖动的14伏输入电压变为稳定的9伏电压?
LORA无线压力变送器/传感器ZYB11xx的功能和特点
在春运即将来临之际推顺风车业务,哈啰意欲何为?
关于人体生物力学建模与仿真的座椅舒适性设计方案详解
三相鼠笼异步电机的缺相保护
典型控制系统电气原理图解析
比特币背后具有哪些强大的新技术
可加热式咖啡杯如何进行气密性防水检测
MAX6657/MAX6658/MAX6659精密的,双通道
点胶机加工代点胶的益处,它的优点有哪些
零基础学FPGA (十八) 谈可编程逻辑设计思想与技巧!对您肯定有用!
比亚迪又要有大动作,电池涨价会波及国内电池车价格吗