频率响应函数与数字滤波实验.docx
《频率响应函数与数字滤波实验.docx》由会员分享,可在线阅读,更多相关《频率响应函数与数字滤波实验.docx(15页珍藏版)》请在冰豆网上搜索。
频率响应函数与数字滤波实验
基于LabVIEW的频率响应函数与数字滤波及相关分析的研究
ResearchoffrequencyresponsefunctionanddigitalfilterandrelatedanalysisbaseonLabVIEW
张景生10010302005
摘要:
虚拟仪器是一种以计算机为载体的自动化测量与控制系统,用来对现实世界的各种物理量进行测量或者对物理过程进行控制。
频率响应函数是描述测试系统动态特性的重要参数,通过频率响应函数进行频率分析也是进行数字滤波器设计的重要方法。
滤波是信号处理的一项重要内容。
广义的滤波是在被测试的信号中选取感兴趣的那一部分信号。
相关是指两个变量之间的线性关系。
相关分析是分析两个信号之间关系或一个信号在一定位移前后之间关系的重要工具。
本文基于虚拟仪器LabVIEW来研究频率响应函数与数字滤波及相关分析。
关键词:
虚拟仪器LabVIEW、频率响应函数与数字滤波、相关分析
一、虚拟仪器LabVIEW简介
虚拟仪器是一种以计算机为载体的自动化测量与控制系统,用来对现实世界的各种物理量进行测量或者对物理过程进行控制。
目前最流行的虚拟仪器应用程序的开发平台就是美国NationalInstrument(简称NI)公司的LabVIEW。
LabVIEW是LaboratoryVirtualInstrumentEngineeringWorkbench(实验室虚拟仪器工程平台)的首字母组合。
二、频率响应函数与数字滤波
2.1频率响应函数
频率响应函数是描述测试系统动态特性的重要参数,通过频率响应函数进行频率分析也是进行数字滤波器设计的重要方法。
频率响应函数是系统输出与输入的傅里叶变换之比
实验时用冲激函数作为系统激励信号,用各种数字滤波器作为测试系统。
冲激函数具有无限宽广的频谱,用冲激函数做激励信号相当于对测试系统输入所有频率的信号,系统必然有对应的输出。
计算出系统输出与输入的傅里叶变换之比,就是系统的频率响应函数。
2.2数字滤波
滤波是信号处理的一项重要内容。
广义的滤波是在被测试的信号中选取感兴趣的那一部分信号。
它包括利用电的、机械的和数学的等技术手段滤除信号的噪声或虚假信号。
工程测试中常用的滤波是指在信号频域的选频加工。
因为测试中获取的信号往往含有多种频率成分,为了对信号某一方面的特征有更深的认识,或有利于对信号做进一步的分析和处理,需要将其中有用的频率成分提取出来,将其他频率成分衰减掉。
实现这一功能的环节叫选频滤波器,通常习惯简称为滤波器。
滤波器按选频作用一般分为四类,即低通、高通、带通和带阻滤波器。
各类滤波器的理想特性曲线如图1中的虚线所示,它们的实际特性曲线如图1中视线所示。
图中称为下截止频率,称为上截止频率。
图1
将图1中的低通滤波器实际幅频特性曲线放大后如图2所示。
图2
滤波器顶部幅值波动量称为波纹幅度。
理想滤波器的特性是不可能实现的,在设计制作滤波器时是用实际滤波器的可实现的特性去逼近理想滤波器特性。
目前主要有两种逼近方法。
(1)最平幅度逼近法
这种滤波器设计时主要考虑滤波器的通带和阻带内具有最平直的幅频特性。
这种滤波器称为巴特沃斯(Butterworth)型滤波器。
(2)等波纹逼近法
这种滤波器设计时主要考虑由通带到阻带内给定的衰减值所需的过渡带最小,它在滤波器阶数不同时通带内有幅值相同的波纹。
这种滤波器叫切比雪夫(Chebyshev)型滤波器。
对理想滤波器特性的逼近还有很多其他方案,也有其他多种类型的滤波器。
滤波器按处理的信号性质来分有模拟滤波器和数字滤波器两大类。
模拟滤波器在理论上和实践上都已经达到很高的水平,但是在需要更多灵活性一级程序可控制性的场合,数字滤波器已经有逐渐取代模拟滤波器的趋势。
现代采用和数字信号处理手段以及计算机技术的迅速发展,使得数字滤波在广播、通信、地球物理学,医药等诸多领域都得到广泛应用。
数字滤波器主要的优势在于:
(1)能够在程序中控制。
(2)具有稳定性和可预知性。
(3)没有温度和湿度飘逸,无需精度补偿。
(4)具有很高的性能价格比。
数字滤波的基本原理出发点仍然基于模拟滤波器,它是将信号数字化后,通过一定的算法,用程序实现滤波器的功能。
在有些场合数字滤波器还不能完全取代模拟滤波器。
如果滤波器只对于它的输入数据进行处理,这种滤波器叫有限冲激响应(FiniteImpulseResponse,FIR)滤波器。
如果滤波器的操作不仅与它的输入数据有关,还与它的输出数据有关,这种滤波器叫无限冲激响应(InfiniteImpulseResponse,IIR)滤波器。
FIR滤波器设计简单,但是IIR滤波器效率更高。
前面介绍的巴特沃斯滤波器和切比雪夫滤波器都属于IIR滤波器。
LabVIEW开发环境内置有大量的数字滤波模块和数字滤波器开发工具,他们主要分为三类。
(1)ExpressVI滤波器,在“Express→信号分析”函数子选板中。
(2)波形调理滤波器,包括DigitalFIRFilter和DigitalIIRFilter,在“信号处理→波形调理”函数子选板中。
(3)处理标量数据的滤波器,在“信号处理→滤波器”函数子选板中。
这是最基础的,也是最全的一组滤波器VI,本次试验用其中的Butterworth率怄气和Chebyshev滤波器。
2.3频率响应函数与数字滤波的测试方法
参考图3设计实验程序的前面板。
建议将x、y标尺都设为自动调整。
图3频率响应与数字滤波实验虚拟仪器前面板
图4为实验程序的程序框图,图中冲激函数(ImpulsePattern)VI在“信号处理→信号生成”函数子选板;巴特沃斯滤波器(Butterworth)和切比雪夫(Chebyshev)型滤波器VI在“信号处理→滤波器”函数子选板中;传递函数(TransferFunction)VI用来测试两个滤波器的频率响应函数,它的文件目录在NationalInstruments\LabVIEW8.2\vi.lib\analysis\0merasdsp.llb中。
图4频率响应与数字滤波实验虚拟仪器程序框图
冲激函数设置了取样数(Samples)、幅值(Amplitude)和延迟(Delay)3个参数。
数字滤波器的“滤波器类型”参数指定滤波器的选频类型。
必须设置高端截止频率(highcutofffreg)高于低端截止频率(lowcutofffreg);使用低通和高通滤波器时高端截止频率被忽略;低端截止频率不能小于等于0,不能大于采样率的1/2。
阶次(order)是滤波器算式中的一个参数,阶次越高过渡带越窄,处理数据时间越长。
波纹(ripple)是参数前面已经介绍过,设置值要大于0。
X和“滤波后的X(FilteredX)”参数是系统的输入和输出,即原始时域信号和滤波后的信号。
信号的采样率参数设置为常数10000。
TransferFunctionVI的输出参数除了频率响应的幅值与相位,还有频率间隔(),程序中用它做显示度的刻度间隔。
运行此程序,分别选择各种类型滤波器和不同的阶次,观察不通滤波器的频率响应特性,可以明显看出,在相同阶次下切比雪夫滤波器的过渡带比较窄,但通带有波纹。
巴特沃斯滤波器过渡带比较宽,但是通带非常平直。
三、相关分析
3.1相关分析
相关是指两个变量之间的线性关系。
相关分析是分析两个信号之间关系或一个信号在一定位移前后之间关系的重要工具。
在实际工程领域,相关测速、相关滤波和利用相关原理探测管道破裂点、识别信号类别成分等得到广泛应用。
相关函数可以用相关分析仪测量。
相关分析仪有模拟式和数字式两种。
使用LabVIEW提供的函数可以构建一台数字式的相关分析仪。
两模拟信号和做数字化处理以后,它们的相关函数表达形式应为:
(r=0,1,2,……,m)
式中N——沿时间轴的总采样数;
——沿时间轴的采样序数;
——间断时移植。
作为有限长采样的相关函数估计为
用这一公式做离散相关的步骤是:
(1)取r=0,将所有对应采样点的和相乘;
(2)将所有乘积相加;
(3)以总采样点数做平均。
得到相关函数的一个值。
(4)取r=1,将所有对应采样点的和相乘,然后相加、平均,得到。
依次取r=2,r=3,按以上步骤重复计算后得到相关函数的各个值。
在和二离散序列长度相等时,计算可以用全部计算长度数据来计算,而下一步计算时因做一步时移,使可提供计算的序列长度有N变为N-1。
且随时移增大,可提供计算的序列长度越来越短,所以互相关函数的估值应为:
与此类似,自相关函数的估值为:
LabVIEW在“信号处理信号运算”函数子选班中提供了求互相关的VI——CrossCorrelation,它所用的算法为:
求自相关的VI(AutoCorrelation)所用的算法为:
上两式的算法仅适用于确定性信号中的瞬态信号,所以在一般情况下需要加以修正。
这里提供的程序(ModiCorrelation)用于完成这一修正,它的程序框图如图1所示。
此VI对LabVIEW求出的相关函数进行修正,将每个相关值除以(N-r)。
N是LabVIEW求出的相关函数输出数组的长度,r是时移的位置。
参数是LabVIEW求出的相关函数值,是修正后的相关函数值,Samples是取样数,d是输出相关函数首尾截去的百分比(把移位造成的重叠太少而没有意义的部分截掉)。
n是截短后的取样数。
图5ModiCorrelationVI的程序框图
3.2互相关函数
按图5构建互相关函数实验程序的前面板,前面板中时域信号图形显示控件的时间轴设置为0~1024,幅值轴设置为自动调整Y标尺;互相关函数图形显示控件的时移轴设置为-100~100,幅值轴设置为自动调整Y标尺。
图6互相关函数实验程序前面板
按图7编写互相关函数实验的程序框图。
图中和是“信号处理信号生成”函数子选板中的“正弦波”VI,这两个VI用来产生正弦信号。
正弦波VI的“频率”参数是数字频率,等于模拟频率除以采样率,程序中设采样率等于2048;“采样”参数是样本数,程序中设为1024;“相位输入”参数是用度表示的相位;幅值amplitude设为1。
是互相关函数,是ModiCorrelationVI。
图7互相关函数实验程序框图
运行程序。
两个通道选择不同的信号频率,在实验程序前面板上观察相关函数波形,验证不同频不相关。
将两个正弦波信号频率都设为100Hz,观察相关函数波形,验证同频相关,相关函数。
改变2通道信号的相位,在游标显示器上读相关函数值,填入表10-1中。
可以看到当相位变到90°,即变为余弦函数时,相关函数值为0。
说明正弦信号与余弦信号不相关。
3.3自相关函数
按图8构建自相关函数实验程序的前面板。
前面板中时域信号图形显示控件的时间轴设置为0~1024,幅值轴设置为自动调整Y标尺;自相关函数图形显示控件的时移轴设置为-100~100,幅值轴设置为自动调整Y标尺。
图8自相关函数实验程序前面板
程序框图中正弦波(SineWave)VI设采样率等于4096;取样数设为1024。
均匀白噪声(UniformWhiteNoise)VI取样数设为1024。
巴特斯滤波器(ButterworthFilter)VI设置为带通(Bandpass)类型,阶次(Order)为3。
AutoCorrelationVI用来求出原始信号的自相关函数,ModiCorrelationVI并进行修正,如图9所示。
图9自相关函数实验程序框图
运行程序,分别进行以下4种典型信号的自相关函数实验。
(1)设置噪声幅值为0,信号幅值1~5,信号频率30~100Hz,观察正弦信号的自相关函数图形。
调节信号频率和幅值,观察