数字高通FIR滤波器.docx

上传人:b****1 文档编号:1788427 上传时间:2023-05-01 格式:DOCX 页数:9 大小:25.96KB
下载 相关 举报
数字高通FIR滤波器.docx_第1页
第1页 / 共9页
数字高通FIR滤波器.docx_第2页
第2页 / 共9页
数字高通FIR滤波器.docx_第3页
第3页 / 共9页
数字高通FIR滤波器.docx_第4页
第4页 / 共9页
数字高通FIR滤波器.docx_第5页
第5页 / 共9页
数字高通FIR滤波器.docx_第6页
第6页 / 共9页
数字高通FIR滤波器.docx_第7页
第7页 / 共9页
数字高通FIR滤波器.docx_第8页
第8页 / 共9页
数字高通FIR滤波器.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字高通FIR滤波器.docx

《数字高通FIR滤波器.docx》由会员分享,可在线阅读,更多相关《数字高通FIR滤波器.docx(9页珍藏版)》请在冰点文库上搜索。

数字高通FIR滤波器.docx

数字高通FIR滤波器

毕业设计论文数字高通FIR滤波器

 

1整体知识的介绍

1.1MATLAB的介绍

MATLAB是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以与数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

1.1.1基本功能

MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以与交互式程序设计的高科技计算环境。

它将数值分析、矩阵计算、科学数据可视化以与非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以与必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

 

MATLAB和Mathematica、Maple并称为三大数学软件。

它在数学类科技应用软件中在数值计算方面首屈一指。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成一样的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

1.1.2应用

MATLAB产品族可以用来进行以下各种工作:

  ●数值分析

  ●数值和符号计算

  ●工程与科学绘图

  ●控制系统的设计与仿真

  ●数字图像处理技术

  ●数字信号处理技术

  ●通讯系统设计与仿真

●财务与金融工程

MATLAB的应用围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以与计算生物学等众多应用领域。

附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域特定类型的问题。

1.2滤波器的介绍

数字滤波器(digitalfilter)是由数字乘法器、加法器和延时单元组成的一种装置。

其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。

由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。

数字滤波器广泛用于数字信号处理中,如电视、VCD、音响等。

按照滤波电路的工作频带为其命名:

设截止频率为fp,频率低于fp的信号可以通过,高于fp的信号被衰减的电路称为低通滤波器,频率高于fp的信号可以通过,低于fp的信号被衰减的电路称为高通滤波器;而带通吗,就是频率介于低频段截止频率和高频段截止频率的信号可以通过的电路。

1.3高通滤波器与其应用

1.3.1高通滤波器的定义

高通滤波器是容许高频信号通过、但减弱(或减少)频率低于截止频率信号通过的滤波器。

对于不同滤波器而言,每个频率的信号的减弱程度不同。

它有时被称为低频剪切滤波器;在音频应用中也使用低音消除滤波器或者噪声滤波器。

高通滤波器与低通滤波器特性恰恰相反。

1.3.2高通滤波器的应用

这样的滤波器能够把高频率的声音引导至专用高音喇叭(tweeter),并阻止可能干擾或者损害喇叭的低音信号。

使用线圈而不是电容的低通滤波器也可以同时把低频信号引导至低音喇叭(woofer)。

参见音频桥(en:

audiocrossover)。

高通和低通滤波器也用于数字图像处理中在频域中进行变换。

 

2FIR滤波器的一般分析

滤波就是有选择性地提取或去掉(或削弱)某一段或某几段频率围的信号,数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到选频目的。

数字滤波器根据其单位冲激响应函数的时域特性分为两种:

无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。

IIR滤波器保留了模拟滤波器较好的幅度特性,设计简单有效。

但这些特性是以牺牲相位特性为代价而获得的,然而现在许多数据传输,图像处理系统都越来越多的要求系统具有线性相位特性。

在这方面,FIR滤波器具有独特的优点,它可以保持严格的线性相位特性,因此越来越受到广泛的重视。

2.1高通滤波的时域分析

在时域,信号经过系统的响应y(n)体现为激励x(n)跟系统单位抽样响应h(n)的卷积和y(n)=(n)×h(n)=ΣN–1m=0h(m)x(n-m)[223]。

对于长度为N的FIR系统,h(n)可以看成一个长度为N点的固定窗口,而x(n)则看成一个队列以齐步走的方式穿过h(n)窗口,每走一步,位于窗口中的x(n)部分的点跟h(n)的对应点的值相乘(即加权)再求和,所得结果构成此时系统的响应值y(n),x(n)队列每走一步就得到一个响应值y(n),即y(n)是h(n)对位于其窗口中的x(n)的加权求和。

高通滤波要求h(n)窗口具有波形锐化作用,即利用h(n)窗口加权和使得变化快的(即高频)正弦分量保留(理想高通)或衰减幅度小(实际高通),而变化缓慢(即低频)的正弦分量正负抵消(理想高通)或衰减幅度大(实际高通)。

其中N必须取奇数,

2.1.1

其中:

fs=11kHz,n为整数,即x(n)由100Hz的

x1(n)和1kHz的x2(n)两种频率的信号组成。

高通滤波的目的就是要尽可能地去掉x(n)中的低频分量

x1(n),同时尽可能地保留x(n)中的高频分量x2(n)。

x(n)跟h(n)卷积结果如图1所示,从图1可看出,响

应y(n)中几乎只剩下右移了(N-1)/2=5个样值点的1kHz的信号x2(n)。

2.2高通滤波器频域分析

在频域,信号经过系统的响应y(n)的频谱Y(ejω)体现为激励x(n)的频谱X(ejω)跟系统单位抽样响应h(n)的频谱H(ejω)(即系统的频谱)的乘积Y(ejω)=|H(ejω)|×|X(ejω)|×ejφH+φx,即响应的频谱Y(ejω)的幅值由系统频谱H(ejω)的幅值对激励频谱X(ejω)的幅值相乘(加权)得到,响应的频谱Y(ejω)的幅角由系统的频谱H(ejω)的幅角跟激励频谱X(ejω)的幅角相加(移相)得到[122]。

高通滤波要求系统幅度函数|H(jf)|对需要保留的高频信号频谱加权权重较大(理想时为1),对需要滤除的低频信号频谱加权权重较小(理想时为0)。

 

其中L为x(n)的长度(L=100),0≤k≤L-1,N为h(n)的有值长度,m、k均为整数,跟数字频率k相对应的模拟频率为f=fs×k/L(Hz)。

h(n)在不同N值时的频谱如图2所示(横轴单位为kHz),当N=11时,在f=m(kHz)即f=1kHz、2kHz、3kHz等处为1,而在f=(2m-0.5)(kHz)即f=1.5kHz、3.5kHz等处幅度最大。

而在f=(2m+0.5)(kHz)即f=2.5kHz、4.5kHz等处幅度最小,如图2(b);当N=5时,在f=mfs/5处为1,即f=2.2kHz、3.3kHz等处为1,在f=(4m-1)fs/10即f=3.3kHz处幅度最大。

而在f=(4m+1)fs/10即f=5.5kHz处幅度最小,如图2(c);当N=21时,在f=mfs/21即f=524Hz、1047Hz等处为1,在f=(4m-1)fs/42处幅度最大,而在f=(4m+1)fs/42处幅度最小,

如图

 

图2.2.1

用不同宽度的h(n)对x(n)的滤波在频域上表现如图2.2.1所示,图2.2.1(a)为x(n)的频谱|X(jf)|,从图2中可以看出x(n)中含有100Hz和1kHz两种频率的信号,图2.2.1(b)~(d)为不同长度的h(n)对同一x(n)的滤波情况,这跟在时域中分析的结论是一致的。

 

3频率取样法的数字高通滤波器的实现

在应用Matlab语言进行FIR滤波器的设计时,可以随时对比设计要求和滤波器特性,并可通过不断调整设计参数,获得较合适的冲激响应和幅度响应,以使滤波器达到最优化。

3.1设计条件

wp=0.23*pi;ws=0.43*pi;阻带衰减为50dB,抽样频率为fs=15000,频谱分析采用freqz函数,实际振幅响应采用[Hr,ww,a,L]=hr_type1(h),[db,mag,pha,w]=freqz_m2(h,l);

hr_type1:

计算所设计的I型滤波器的振幅响应

Hr=振幅响应

a=I型滤波器的系数

L=Hr的阶次

h=I型滤波器的单位冲激响应

freqz_m2

滤波器幅值响应(绝对、相对)、相位响应

db:

相对幅值响应;

mag:

绝对幅值响应;

pha:

相位响应;

w:

采样频率;

b:

系统函数H(z)的分子项(对FIR,b=h)

a:

系统函数H(z)的分母项(对FIR,a=1)

对应本次的输入信号为:

x=sin(2*pi*t*100)/2+sin(2*pi*t*500)/2+sin(2*pi*t*1000)/2+sin(2*pi*t*2000)/2+sin(2*pi*t*3200)/2;输出的波行如图3.3.1所示:

 

图3.3.1输入信号的波行

y=filter(h,1,x);%输出信号

[a,f1]=freqz(x);

f1=f1/pi*fs/2;%输入频谱

[b,f2]=freqz(y);

f2=f2/pi*fs/2;%输出频谱

 

图3.1.2高通输出图

3.2FIR滤波器的仿真实现

在滤波器设计中要对理想滤波器抽样响应进行截断.截断后不可避免的产生了频谱泄漏,为了尽量减小频谱泄漏,在设计滤波器时要采用不同的窗函数来满足不同用途的要求.各种窗函数的幅频响应都存在明显的主瓣和旁瓣.主瓣宽度和旁瓣的幅值衰减特性决定了窗函数的应用.用于滤波器的窗函数,一般要求窗函数主瓣宽度窄,以获得较好过渡带:

旁瓣相对值尽可能小,以增加通带段的平稳度和增大阻带的衰减.窗函数应满足在0Fn

这样,所得到的截断序列就可以作为理想低通滤波器的近似;为了满足一定的技术指标,还应该调整窗函数的长度或其它参数.窗函数设计方法首先根据要求选择一个适当的理想滤波器,由于理想滤波器的脉冲响应是非因果且无限长的,用适当的窗函数来截取它的脉冲响应,从而得到线性相位和因果的FIR滤波器.通过合理地选择窗函数的长度,可以得到符合给定指标的近似的理想滤波器.因此,窗函数设计的核心是选择一个合适的窗函数和理想滤波器.

FIR滤波器可通过窗函数法、频率抽样法和最优化设计法来设计,本文先解释FIR数字高通滤波的物理过程,然后利用MATLB的FDATool采用窗函数法设计一高通滤波器。

3.2.1FDATOOL工具箱

fdatool(filterdesign&analysistool)是matlab信号处理工具箱里专用的滤波器设计分析工具。

fdatool可以设计几乎所有的基本的常规滤波器,包括fir和iir的各种设计方法。

它操作简单,方便灵活。

进入fdatool工具箱在matlab的命令行上输入fdatool,回车,如图2-1所示:

 

图3.2.1.1fdatool工作框

3.2.2FIR滤波器参数设置

fdatool界面总共分两大部分,一部分是designfilter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。

designfilter部分主要分为:

filtertype(滤波器类型)选项,包括lowpass(低通)、highpass(高通)、bandpass(带通)、bandstop(带阻)和特殊的fir滤波器。

designmethod(设计方法)选项,包括iir滤波器的butterworth(巴特沃思)法、chebyshevtypei(切比雪夫i型)法、chebyshevtypeii(切比雪夫ii型)法、elliptic(椭圆滤波器)法和fir滤波器的equiripple法、least-squares(最小乘方)法、window(窗函数)法。

filterorder(滤波器阶数)选项,定义滤波器的阶数,包括specifyorder(指定阶数)和minimumorder(最小阶数)。

在specifyorder中填入所要设计的滤波器的阶数(n阶滤波器,specifyorder=n-1),如果选择minimumorder则matlab根据所选择的滤波器类型自动使用最小阶数。

frenquencyspecifications选项,可以详细定义频带的各参数,包括采样频率fs和频带的截止频率。

它的具体选项由filtertype选项和designmethod选项决定

在Matlab命令窗口输入FDATool命令,按确定调出FDATool界面。

在ResponseType下选择滤波器的类型为Highpass。

在DesignMethod下选择设计方法为FIRequiripple,在FilterOrder选择minimumorder,在frenquencyspecifications里输入wstop0.11和wpass0.21,在MagnituideSpecifications里输入astop50,执行后的图如图3.2.2.1所示:

 

图3.2.2.1参数设置图

3.2.3利用SPTool仿真

在Matlab命令窗口中输入SPTool命令,调出SPTool界面。

单击Filters栏下面的New按钮,调出FilterDesigner界面,设置采样频率为15000Hz。

在Algorithm中选择滤波器类型为LeastSquaresFir,在Order栏设置滤波在Specifications中选择滤波器类型为Highpass,Fp设置为1000,Fs设置为1400。

设置完毕后,单击Apply进行滤波器进行设计。

在窗口上即显示滤波器的设计结果,如图3.2.3.1、3.2.3.2所示。

Sptool界面filters下会自动添加所设计的滤波器filt1选择Filt1,单击View,可以很方便看到幅频和相频特性图与参数。

根据需要修改参数,立即生成相应的特性图,非常直观、方便、简单。

 

图3.2.1图3.2.2

对x,x2进行频谱分析。

选择信号x,点击Spectra栏下Create按钮,在弹出的SpectrumViewer界面中,选择Method为FFT,单击Apply按钮生成x的频谱spect1。

同样步骤生成x2的频谱spect2。

在Sptool界面选择x1,点击View按钮,观察其波形。

同样方法观察x2,spect1,spect2波形。

 

4实验小结

本次实验实现了基于基于频域抽样法的FIR数字高通滤波器设计,在设计的过程中先对滤波器有了一定的理解,知道滤波器分为模拟滤波器和数字滤波器,Matlab分别都能实现对这两种滤波器的分析和仿真实现。

然后对与Matlab有了一定的了解,掌握了基础知识,与相关设计时所用的窗口的功能。

在实验中采用了fdatool和SPTool进行仿真。

滤波就是有选择性地提取或去掉(或削弱)某一段或某几段频率围的信号,数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到选频目的。

数字滤波器根据其单位冲激响应函数的时域特性分为两种:

无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。

 

5参考文献

[1]程佩青.数字信号处理(第2版)[M].:

清华大学,2003.

[2]林彦杰.基于MATLAB的FIR数字滤波器的设计[J].邮电学院电子工程系,省市210003

[3]楼顺天,博菡.基于MATLAB的系统分析与设计—信号处理[M].:

电子科技大学,2001.

[4]志涌.精通MATLAB6.5版[M].:

航空航天大学,2004.

[5]郭中华,董 涌,房卫东.基于Matlab的FIR数字滤波器设计与仿真[J].工程技术,2004

[6]怀琛.MATLAB与在电子信息课程中的应用[M].:

电子工业,2002.

[7]永才,王子旭,游治.数字FIR滤波器的Matlab设计[J].半导体技术,2001

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 中国风

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2