好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

fir低通滤波器实例.docx

8页
  • 卖家[上传人]:第***
  • 文档编号:34104060
  • 上传时间:2018-02-20
  • 文档格式:DOCX
  • 文档大小:78.55KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 实例 1:在实际设计中,可以通过加窗函数的方法抑制频谱泄露相比较于 IIR 滤波器,FIR 可能所需阶数更高,但同时由于其非迭代结构,永远能够得到稳定的输出本文介绍如何用 MATLAB 仿真产生FIR 滤波器,并使用一个混合频率的信号通过 FIR 滤波器,观察其输出,以验证 FIR 滤波器性能实际应用背景:若信号为一个 10Hz 与一个30Hz 的余弦信号相加,那么如何滤除 30Hz 的信号?首先产生原始信号采样率设置为 100Hz,时宽 2sMATLAB 程序如下: f1=10;%第一个点频信号分量频率 f2=30;%第二个点频信号分量频率 fs=100;%采样率 T=2;%时宽 B=20;%带宽 n=round(T*fs);%采样点个数 t=linspace(0,T,n); y=cos(2*pi*f1*t)+cos(2*pi*f2*t);观察原始信号的时域波形和频谱,从频谱图中可以明显看出其 10Hz与 30Hz 的分量MATLAB 程序如下:figure;plot(t,y);title('原始信号时域');xlabel('t/s');ylabel('幅度');figure;fft_y=fftshift(fft);f=linspace(-fs/2,fs/2,n);plot(f,abs(fft_y));title('原始信号频谱');xlabel('f/Hz');ylabel('幅度'); axis([ 0 50 0 100]); 设计 FIR 滤波器:为滤除 30Hz 的分量,我们选用 20Hz 截止频率的低通滤波器,阶数为 40 阶(若要获得更陡峭的过渡带,阶数可以选择的更高)。

      MATLAB 中用 fir1 函数实现滤波器冲击响应系数的计算注意:模拟频率 f=20Hz 需要按 f/(fs/2)的式子化为数字频率,作为 fir1 函数中的参数MATLAB 程序如下:b=fir1(40, B/(fs/2)); %滤波产生指定带宽的噪声信号figure;freqz(b);%画滤波器频响信号通过 FIR 滤波器:采用 filter 函数MATLAB 程序: y_after_fir=filter(b,1,y); %信号通过滤波器观察滤波后输出信号的时域与频谱:从频谱中可以明显看出,30Hz 的分量被滤除,留下了 10Hz 的分量时域波形也可以看出这一点同时需要注意,输出信号的前面一段是无效的该段的长度为滤波器阶数的一半MATLAB 程序:figure;plot(t,y_after_fir);title('滤波后信号时域');xlabel('t/s');ylabel('幅度');fft_y1=fftshift(fft(y_after_fir));f=linspace(-fs/2,fs/2,n);figure;plot(f,abs(fft_y1)); title('滤波后信号频谱');xlabel('f/Hz');ylabel('幅度');axis([ 0 50 0 100]); 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.