实验五FIR滤波器的matlab实现

实验五FIR滤波器的matlab实现

ID:38697781

大小:80.50 KB

页数:8页

时间:2019-06-17

实验五FIR滤波器的matlab实现_第1页
实验五FIR滤波器的matlab实现_第2页
实验五FIR滤波器的matlab实现_第3页
实验五FIR滤波器的matlab实现_第4页
实验五FIR滤波器的matlab实现_第5页
资源描述:

《实验五FIR滤波器的matlab实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验五FIR滤波器的matlab实现一、实验目的和任务1.理解并掌握FIR数字滤波器的机理,了解各种窗函数对滤波特性的影响;2.掌握用MATLAB构建FIR滤波器的方法,设计FIR低通滤波器;3.观察FIR滤波器的频域特性。二、实验原理滤波器的种类很多,从功能上可以分为低通、高通、带通和带阻滤波器,上述每种滤波器又可以分为模拟滤波器和数字滤波器。如果滤波器的输入输出都是数字信号,则这样的滤波器称之为数字滤波器,它通常通过一定的运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分来实现滤波。根据数字滤波器冲激响应的时域特性,可将数字滤波器分为两种,即无限长冲激响应(

2、IIR)滤波器和有限长冲激响应(FIR)滤波器[3]。有数字信号处理的一般理论可知,IIR滤波器的特征是具有无限持续时间的冲激响应,而FIR滤波器使冲激响应只能持续一定的时间。三、FIR滤波器的窗函数设计法   FIR滤波器的设计方法有许多种,如窗函数设计法、频率采样设计法和最优化设计法等。窗函数设计法的基本原理是用一定宽度窗函数截取无限脉冲响应序列获得有限长的脉冲响应序列,主要设计步骤为:  (1) 通过傅里叶逆变换获得理想滤波器的单位脉冲响应hd(n)。    (2) 由性能指标确定窗函数W(n)和窗口长度N。   (3) 求得实际滤波器的单位脉冲响应h(n),h(n)

3、即为所设计FIR滤波器系数向量b(n)。       (4) 检验滤波器性能。   设计FIR低通、带通滤波器,并改变参数要求,观察输出结果。参考实例一及解析(窗口函数法):N=21;wc=pi/4;%理想低通滤波器参数r=(N-1)/2;n=0:N-1;hdn=sin(wc*(n-r))/pi/(n-r);%计算理想低通单位脉冲响应hd(n)ifrem(N,2)~=0;hdn(r+1)=wc/pi;end%N为奇数时,处理n=r点的0/0型wn1=boxcar(N);%矩形窗hn1=hdn.*wn1';%加窗%以上两条语句可代以fir函数:hn1=fir1(N-1,wc/

4、pi,boxcar(N));wn2=boxcar(N);%矩形窗hn2=hdn.*wn2';%加窗%以上两条语句可代以fir函数:%hn2=fir1(N-1,wc/pi,hamming(N));k=3;%k=1;%绘图函数p751f的位置参数hnwplot(hn1,k);title('矩形窗设计的h(n)');%hamming窗wn2=hamming(N);hn2=hdn.*wn2';k=3;hnwplot(hn2,k);title('hamming设计的h(n)');二(Buttord函数法)低通滤波器fc=500;fs=2000;fst=550;Rc=1;Rst=50;

5、Wc=fc/(fs/2);Wst=fst/(fs/2);[N,Wn]=Buttord(Wc,Wst,Rc,Rst);[B,A]=Butter(N,Wn);[H,w]=freqz(B,A,N);plot(w*fs/(2*pi),abs(H))grid三(窗函数)%(1)%FIRfilterdesignclc;clearall;closeallwp=0.2*pi;ws=0.3*pi;wdelta=ws-wp;N=ceil(8*pi/wdelta);Wn=(0.2+0.3)*pi/2;b=fir1(N,Wn/pi,hanning(N+1));figurefreqz(b,1,512

6、)b=fir1(N,Wn/pi,hamming(N+1));figurefreqz(b,1,512)b=fir1(N,Wn/pi,blackman(N+1));figurefreqz(b,1,512)b=fir1(N,Wn/pi,triang(N+1));figurefreqz(b,1,512)b=fir1(N,Wn/pi,boxcar(N+1));figurefreqz(b,1,512)五带通滤波器fc1=180;fc2=280;fst1=140;fst2=320;rc=0.5;rst=40;wc=[fc1,fc2]/(fs/2);wst=[fst1,fst2]/(fs/

7、2);[N,Wn]=Buttord(wc,wst,rc,rst);[B,A]=Butter(N,Wn);[H,W]=freqz(B,A);plot(W*fs/(2*pi),abs(H))grid[H,W]=freqz(B,A);plot(W*fs/(2*pi),abs(H))grid六:带阻滤波器fs=1000;fc1=180;fc2=280;fst1=140;fst2=320;rc=0.5;rst=40;wc=[fc1,fc2]/(fs/2);wst=[fst1,fst2]/(fs/2);[N,Wn]=Butto

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。