FIR数字滤波器设计与软件实现实验.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FIR数字滤波器设计与软件实现实验

实验三:FIR数字滤波器设计与软件实现 1、 实验目的 (1)掌握用窗函数法设计FIR数字滤波器的原理和方法 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法 (3)掌握FIR滤波器的快速卷积实现原理 (4)学会调用MATLAB函数设计与实现FIR滤波器 2、 实验步骤及内容 (1) 认真复习第七章中用窗函数法和等波纹最佳逼近方法设计FIR数字滤波器的原理; (2) 调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图10.5.1所示。 (3) 请设计低通滤波器,从高频噪声中提取xt中的单频抑制载波调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。观察xt的频谱,确定滤波器指标参数。 (4) 根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB函数firl设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (5) 重复(3),滤波器指标不变,但改用等纹波最佳逼近法设计FIR滤波器,调用MATLAB函数remezord和remez设计FIR数字滤波器。比较两种设计方法设计的滤波器阶数。 3、 程序清单 clc; clear; NN=1000; fs1=1000; T=1/fs1; t=0:T:(NN-1)*T; Tp=NN*T; k=0:NN-1; f=k/Tp; %rs等于60dB,因此采用布克莱曼窗 fp=120; fs=150; %转换为数字频率 wp=2*pi*fp/fs1; ws=2*pi*fs/fs1; bt=ws-wp; %计算过渡带宽度 N0=ceil(11*pi/bt);%计算滤波器阶数 N1=N0+mod(N0+1,2);%确保好h(n)长度N1是奇数 wc=(wp+ws)/2/pi;%计算理想高通滤波器通带截止频率 hn=fir1(N1-1,wc,blackman(N1));%调用firl计算高通FIR数字滤波器的h(n) figure; [H,W]=freqz(hn,1,512,2); plot(W,20*log10(abs(H))); y1=filter(hn,1,xtg);%调用fftfilt用重叠相加法计算卷积 y1_fft=fft(y1,NN); figure; subplot(2,1,1); plot(t,y1) axis([0,0.5*Tp,min(y1),max(y1)]); subplot(2,1,2); stem(f,abs(y1_fft)/max(abs(y1_fft)),.); axis([0,fs1/5,0,1.2]); grid; function xt=xtg %实验五信号x(t)产生函数,并显示信号的时域波形和幅频特性曲线 %xt=xtg产生一个长度为N,有加性高频噪声的単频调幅信号xt,N=1000 %采样频率Fs=1000Hz %载波频率fc=Fs/10=100Hz,调制正弦波频率f0=fc/10=10Hz N=1000;Fs=1000;T=1/Fs;Tp=N*T; t=0:T:(N-1)*T; fc=Fs/10;f0=fc/10;%载波频率fc=Fs/10,単频调制正弦波频率f0=fc/10 mt=cos(2*pi*f0*t);%产生単频正弦波调制信号mt,频率为f0 ct=cos(2*pi*fc*t);%产生载波正弦波信号mt,频率为fc xt=mt.*ct; %相乘产生単频调幅信号xt nt=2*rand(1,N)-1; %产生随机噪声nt %=======设计高通滤波器hn,用于滤除噪声nt中的低频成分,生成高通噪声====== fp=150;fs=200;Rp=0.1;As=70;%滤波器指标 fb=[fp,fs];m=[0,1];%计算remezord函数所需参数f,m,dev dev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)]; [n,fo,mo,W]=remezord(fb,m,dev,Fs);%确定remez函数所需参数 hn=remez(n,fo,mo,W);%调用remez函数进行设计,用于滤除噪声nt中的低频成分 yt=filter(hn,1,10*nt);%滤除随机噪声中低频成分,生成高通噪声yt %=========以下为绘图部分======== xt=xt+yt; %噪声加信号 fst=fft(xt,N);k=0:N-1;f=k/Tp; subplot(2,1,1);plot(t,xt);grid; xlabel(t/s);ylabel(x(t)); ax

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档