DSP课程设计FIR高通滤波器设计

上传人:痛*** 文档编号:100870717 上传时间:2022-06-03 格式:DOC 页数:15 大小:332.50KB
收藏 版权申诉 举报 下载
DSP课程设计FIR高通滤波器设计_第1页
第1页 / 共15页
DSP课程设计FIR高通滤波器设计_第2页
第2页 / 共15页
DSP课程设计FIR高通滤波器设计_第3页
第3页 / 共15页
资源描述:

《DSP课程设计FIR高通滤波器设计》由会员分享,可在线阅读,更多相关《DSP课程设计FIR高通滤波器设计(15页珍藏版)》请在装配图网上搜索。

1、wordFIR高通滤波器设计师大学物科院13 / 15摘要从实现方法方面考虑,将滤波器分为两种,一种是IIR滤波器,另一种是FIR滤波器。FIRDF的最大优点是可以实现线性相位滤波。而IIRDF主要对幅频特性进展逼近,相频特性会存在不同程度的非线性。我们知道,无失真传输与滤波处理的条件是,在信号的有效频谱围系统幅频响应应为常数,相频响应为频率的线性函数。另外,FIR是全零点滤波器,硬件和软件实现结构简单,不用考虑稳定性问题。所以,FIRDF是一种很重要的滤波器,在数字信号处理领域得到广泛应用。FIRDF设计方法主要分为两类:第一类是基于逼近理想滤波器特性的方法,包括窗函数法、频率采样法和等波纹

2、最优逼近法;第二类是最优设计法。其中窗函数计法的根本思想是用FIRDF逼近希望的滤波特性。本次设计主要采用窗函数设计法,对理想滤波器进展逼近,从而实现高通滤波器的设计。在MATLAB软件中,有一系列函数用于设计滤波器,应用时十分方便。因此,在本次设计中,滤波器的设计主要采用MATLAB软件,编写适当的程序,得到滤波器的单位脉冲响应。本设计对滤波器的硬件仿真主要使用CCS软件,通过对滤波器的硬件仿真,可以较为真实的看出滤波器的滤波效果。关键字:高通、FIRDF、线性相位、Hanning窗、MATLAB、CCS正文1. 设计目标产生一个多频信号,设计一个高通滤波器消除其中的低频成分,通过CCS的g

3、raph view波形和频谱显示,并和MATLAB计算结果比拟2. 设计原理122.1 数字滤波器数字滤波器(digital filter)是由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进展运算处理,以达到改变信号频谱的目的。由于电子计算机技术和大规模集成电路的开展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。数字滤波器广泛用于数字信号处理中,如电视、VCD、音响等。按照滤波电路的工作频带为其命名:设截止频率为fp,频率低于fp的信号可以通过,高于fp的信号被衰减的电路称为低通滤波器,频率高于fp的信号可以通过,低于fp的信号被衰减的电路

4、称为高通滤波器;而带通吗,就是频率介于低频段截止频率和高频段截止频率的信号可以通过的电路。2.2 高通滤波器高通滤波器是容许高频信号通过、但减弱或减少频率低于截止频率信号通过的滤波器。对于不同滤波器而言,每个频率的信号的减弱程度不同。它有时被称为低频剪切滤波器;在音频应用中也使用低音消除滤波器或者噪声滤波器。高通滤波器与低通滤波器特性恰恰相反。这样的滤波器能够把高频率的声音引导至专用高音喇叭(tweeter),并阻止可能干擾或者损害喇叭的低音信号。使用线圈而不是电容的低通滤波器也可以同时把低频信号引导至低音喇叭(woofer)。高通和低通滤波器也用于数字图像处理中在频域中进展变换。2.3 高通

5、滤波器的分析2.3.1 高通滤波器的时域分析在时域,信号经过系统的响应y (n)表现为激励x(n)跟系统单位抽样响应h(n)的卷积和y(n)=(n)h(n)=N1m=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)窗口具有波形锐化作用,即利

6、用h(n)窗口加权和使得变化快的(即高频)正弦分量保存(理想高通)或衰减幅度小(实际高通) ,而变化缓慢(即低频)的正弦分量正负抵消(理想高通)或衰减幅度大(实际高通) 。设其中N 必须取奇数,其中: fs = 11kHz, n为整数,即x ( n)由100Hz的x1(n)和1kHz的x2(n)两种频率的信号组成。高通滤波的目的就是要尽可能地去掉x(n)中的低频分量x1(n) ,同时尽可能地保存x(n)中的高频分量x2(n)。2.3.2 高通滤波器的频域分析在频域,信号经过系统的响应y(n)的频谱Y(ej)表现为激励x(n)的频谱X (ej)跟系统单位抽样响应h(n)的频谱H(ej)(即系统的

7、频谱)的乘积Y(ej)=|H(ej)|X(ej)|ejH+x,即响应的频谱Y(ej)的幅值由系统频谱H(ej)的幅值对激励频谱X(ej)的幅值相乘(加权)得到,响应的频谱Y(ej)的幅角由系统的频谱H(ej)的幅角跟激励频谱X(ej)的幅角相加(移相)得到122 。高通滤波要求系统幅度函数|H(jf)|对需要保存的高频信号频谱加权权重较大(理想时为1) ,对需要滤除的低频信号频谱加权权重较小(理想时为0) 。其中L为x(n)的长度(L=100), 0kL- 1,N为h(n)的有值长度,m、k均为整数,跟数字频率k相对应的模拟频率为f=fsk/L (Hz)。h(n)在不同N值时的频谱如图2所示(

8、横轴单位为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处幅度最大,而在

9、f=(4m+1)fs/42处幅度最小,如图1图1用不同宽度的h(n)对x(n)的滤波在频域上表现如图2.2.1所示,图2.2.1(a)为x(n)的频谱|X(jf)| ,从图2中可以看出x(n)中含有100Hz和1kHz两种频率的信号,图1(b)(d)为不同长度的h(n)对同一x(n)的滤波情况,这跟在时域中分析的结论是一致的。2.4 FIR滤波器从实现方法方面考虑,将滤波器分为两种,一种是IIR滤波器,另一种是FIR滤波器。IIR滤波器保存了模拟滤波器较好的幅度特性,设计简单有效。但这些特性是以牺牲相位特性为代价而获得的,然而现在许多数据传输,图像处理系统都越来越多的要求系统具有线性相位特性。

10、FIRDF的最大优点是可以实现线性相位滤波。而IIRDF主要对幅频特性进展逼近,相频特性会存在不同程度的非线性。我们知道,无失真传输与滤波处理的条件是,在信号的有效频谱围系统幅频响应应为常数,相频响应为频率的线性函数。另外,FIR是全零点滤波器,硬件和软件实现结构简单,不用考虑稳定性问题。所以,FIRDF是一种很重要的滤波器,在数字信号处理领域得到广泛应用。FIRDF设计方法主要分为两类:第一类是基于逼近理想滤波器特性的方法,包括窗函数法、频率采样法和等波纹最优逼近法;第二类是最优设计法。其中窗函数计法的根本思想是用FIRDF逼近希望的滤波特性。本次设计主要采用窗函数设计法,对理想滤波器进展逼

11、近,从而实现高通滤波器的设计。2.5 各种窗函数参数各种窗函数的根本参数窗函数类型旁瓣峰值(dB)过渡带宽度阻带最小衰减 (dB)近似值准确值矩形窗-134/N/N-21三角窗-258/N/N-25汉宁窗-318/N/N-44哈明窗-418/N/N-74布莱克曼窗-5712/N11/N-80Hanning汉宁窗的窗函数为:图2 汉宁窗3. 设计流程1231233.1 应用MATLAB设计滤波器:为了满足高通滤波的效果,设置线性相位高通FIR的参数为:通带截止频率,阻带截止频率,通带最大衰减,阻带最小衰减。由以上参数,通过查表可得,hanning窗和haming窗都满足条件,我们选择hannin

12、g窗。过渡带宽,hanning窗的准确过渡带宽为/N,所以要求,解之得N=25。输入程序:从而得到满足条件的高通FIRDF:h(n)=-0.0004,-0.0006,0.0028,0.0071,-0.0000,-0.0185,-0.0210,0.0165,0.0624, 0.0355,-0.1061,-0.2898,0.6249,-0.2898,-0.1061,0.0355,0.0624,0.0165,其波形如图3所示,频谱如图4,其幅频特性和相频特性如图5。图3 图4图53.2 用CCS对高通滤波器进展仿真设置输入信号fIn=sin(2n/30)/2+cos(2n*1.6),使用MATLAB

13、运算得到的高通FIR滤波器进展滤波,滤去低频分量。选择“Debug菜单的“RUN项,或按F12 键运行程序。观察“fin、“fout窗口中时域图形;观察滤波效果。鼠标右键单击“Input和“Output窗口,选择“Properties项,设置“Display Type为“FFT Magitude,再单击“OK按钮完毕设置。观察“Input、“Output窗口中频域图形;理解滤波效果。4. 仿真波形12344.1 MATLAB对高通FIRDF的设计4.2 CCS对高通FIRDF的应用仿真5. 设计结果由MATLAB和CCS的仿真结果可以看出,此高通FIRDF可以实现高通滤波的功能,在输入为fIn

14、=sin(2n/30)/2+cos(2n*1.6)时,输出波形中已不含w= 1/30的低频分量,滤波效果良好,输出频谱中低频局部根本没有信号。6. 心得通过这次课程设计,使我掌握了课程设计的根本思路和方法,掌握了课程设计说明书的根本撰写方法,了解了根本的设计思想和设计方法。同时此次课程设计使我课程的根底知识和根本理论有了更深的理解和掌握,锻炼了我们综合运用所学知识的能力,并在理论分析设计、计算制图运用标准和规查阅设计手册与资料以与计算机应用能了等方面得到了初步的训练和提高,培养了我们严谨的科学态度。这次课程设计使我进一步熟悉了计算工具软件-MATLAB.并进一步掌握了MATLAB的使用方法.对

15、MATLAB语言的开展和特点有了更深的了解,熟悉其工作环境,在其应用方面也有了更深的了解,了解了MATLAB程序书写的一般思路与一般步骤,学会了用MATLAB解决复杂信号处理等问题的方法。在课程设计的这段时间里,我认为收获还是很多的,不但进一步掌握了数字信号处理的根底知识与一门专业仿真软件的根本操作,还提高了自己的设计能力与动手能力,同时对于模拟滤波器来了个系统的总结。更多的是让我看清了自己,明白了凡事需要耐心,实践是检验学习的唯一标准。理论知识的不足在这次课设中表现的很明显。这将有助于我今后的学习,端正自己的学习态度,从而更加努力的学习。参考文献1泉 阙大顺主编. 数字信号处理原理与实现.

16、:电子工业,20052程佩青. 数字信号处理教程第二版. :清华大学,20013 高西全 数字信号处理-原理、实现与应用. :电子工业,2010附录MATLAB程序-生成高通FIRDFwp=pi/2;ws=pi/4;DB=wp-ws;N0=ceil(6.2*pi/DB);N=N0+mod(N0+1,2);m=1:N;wc=(wp+ws)/2/pi;hn=fir1(N-1,wc,high,hanning(N);fw=abs(fft(hn);figure(1)subplot(1,2,1)plot(m,hn);grid;subplot(1,2,2)plot(m,fw);grid;figure(2)f

17、reqz(hn) xlabel(omegapi)ylabel(|H(ejomega|dB)subplot(2,1,2)xlabel(omegapi)CCS程序#include DSP281x_Device.h / DSP281x Headerfile Include File#include DSP281x_Examples.h / DSP281x Examples Include File#include f2812a.h#includemath.h#define FIRNUMBER 25#define SIGNAL1F 1000#define SIGNAL2F 4500#define SA

18、MPLEF 10000float InputWave();float FIR();float fHnFIRNUMBER= -0.0004,-0.0006,0.0028,0.0071,-0.0000,-0.0185,-0.0210,0.0165,0.0624, 0.0355,-0.1061,-0.2898,0.6249,-0.2898,-0.1061,0.0355,0.0624,0.0165, ;float fXnFIRNUMBER= 0.0 ;float fInput,fOutput;float fSignal1,fSignal2;float fStepSignal1,fStepSignal2

19、;float f2PI;int i;float fIn256,fOut256;int nIn,nOut;main(void) nIn=0; nOut=0;f2PI=2*PI;fSignal1=0.0;fSignal2=PI*0.1;fStepSignal1=2*PI/30;fStepSignal2=2*PI*1.6;while ( 1 )fInput=InputWave();fInnIn=fInput;nIn+; nIn%=256;fOutput=FIR();fOutnOut=fOutput;nOut+;if ( nOut=256 )nOut=0;/* 请在此句上设置软件断点 */ float

20、 InputWave()for ( i=FIRNUMBER-1;i0;i- )fXni=fXni-1;fXn0=sin(fSignal1)/2.0+cos(fSignal2);fSignal1+=fStepSignal1; if ( fSignal1=f2PI )fSignal1-=f2PI;fSignal2+=fStepSignal2;if ( fSignal2=f2PI )fSignal2-=f2PI;return(fXn0);float FIR()float fSum;fSum=0;for ( i=0;iFIRNUMBER;i+ )fSum+=(fXni*fHni);return(fSum);

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!