基于matlab的数字滤波器的设计及仿真

基于matlab的数字滤波器的设计及仿真

ID:32007256

大小:269.00 KB

页数:33页

时间:2019-01-30

基于matlab的数字滤波器的设计及仿真_第1页
基于matlab的数字滤波器的设计及仿真_第2页
基于matlab的数字滤波器的设计及仿真_第3页
基于matlab的数字滤波器的设计及仿真_第4页
基于matlab的数字滤波器的设计及仿真_第5页
资源描述:

《基于matlab的数字滤波器的设计及仿真》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数字滤波器的Matlab设计、仿真研究主要内容前言Matlab下IIR滤波器的设计Matlab下FIR滤波器的设计两个有趣的实验声音滤波图像滤波数字滤波器的分类按功能分:低通、高通、带通、带阻滤波器按滤波器的网络结构分:IIR滤波器和FIR滤波器它们的函数分别为:N阶IIR滤波器:N-1阶FIR滤波器:滤波器的指标滤波器的指标常在频域给出数字滤波器的频率响应特性曲线:H(ejw)=

2、H(ejw)

3、ejө(w)

4、H(ejw)

5、为幅频特性函数,表示信号通过该滤波器后各频率的衰减情况。ө(w)为相频特性函数,

6、表示信号通过滤波器后在时间上的延时情况。二、MATLAB环境下IIR数字滤波器的设计典型设计先按照一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标,据此产生模拟滤波器原型,然后把模拟低通滤波器原型转换成数字滤波器。完全设计利用函数直接设计出低通、高通、带通和带阻滤波器,用巴特沃斯滤波器来实现。IIR滤波器设计函数任务目标设计一个滤波器滤除指定正弦信号中的噪声,还原正弦信号。该正弦信号为sin(2*pi*100*t),噪声信号是sin(2*pi*50*t)和sin(2*pi*150*t)

7、。信号采样频率为2KHz。滤波器的性能指标巴特沃斯IIR带通滤波器Fs=2000Hz,Wp1=90Hz,Wp2=110Hz,Ws1=80Hz,Ws2=120HzRp=1,Rs=20用MATLAB进行典型的数字滤波器的设计步骤:按一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标;根据转换后的技术指标使用滤波器阶数选择函数,确定最小阶数N和固有频率Wn。运用最小阶数N产生模拟滤波器原型。运用固有频率Wn把模拟低通滤波器原型转换成模拟低通、高通、带通、带阻滤波器。运用冲击响应不变法或双线性变

8、换法来把模拟滤波器转换成数字滤波器。1.典型法设计clearWp1=90;Wp2=110;Ws1=80;Ws2=120;Fs=2000;Rp=1;Rs=20;Wp=[Wp1,Wp2]*2*pi;Ws=[Ws1,Ws2]*2*pi;Bw=Wp2*2*pi-Wp1*2*pi;Wo=2*pi*sqrt(Wp2*Wp1);[n,Wn]=buttord(Wp,Ws,Rp,Rs,'s');[z,p,k]=buttap(n);[b,a]=zp2tf(z,p,k);[Bb,Ab]=lp2bp(b,a,Wo,Bw);[B

9、bz,Abz]=impinvar(Bb,Ab,Fs);[h,w]=freqz(Bbz,Abz,512);subplot(2,3,1);plot((w/pi)*Fs/2,20*log10(abs(h)));grid;xlabel('w/pi');ylabel('数字带通幅度(dB)')t1=0:1/2000:0.5;A=0.5*sin(2*pi*50*t1);B=sin(2*pi*100*t1);C=2*sin(2*pi*150*t1);subplot(2,3,2);plot(t1,A);subplot(

10、2,3,3);plot(t1,B);subplot(2,3,4);plot(t1,C);D=A+B+C;subplot(2,3,5);plot(t1,D);E=filter(Bbz,Abz,D);subplot(2,3,6);plot(t1,E);滤波器的幅频和相频曲线2.完全滤波器设计clearcloseallt1=0:1/2000:0.25;A=2*sin(2*pi*100*t1);B=sin(2*pi*50*t1);C=3*sin(2*pi*150*t1);Wp1=90;Wp2=110;Ws1=8

11、0;Ws2=120;Fs=2000;Rp=1;Rs=20;Wp=[Wp1,Wp2];Ws=[Ws1,Ws2];[n,Wn]=buttord(Wp/(Fs/2),Ws/(Fs/2),Rp,Rs);[b,a]=butter(n,Wn);[h,w]=freqz(b,a,512);subplot(2,2,1);plot((w/pi)*Fs/2,20*log10(abs(h)));grid;xlabel('Hz');ylabel('数字带通幅度(dB)')D=A+B+C;E=filtfilt(b,a,D);sub

12、plot(2,2,2);plot(t1,A);subplot(2,2,3);plot(t1,D);subplot(2,2,4);plot(t1,E);滤波器的幅频和相频曲线3.FDATOOL设计在Simulink下进行设计MATLAB命令行键入simulink,进入Simulink界面;选择SignalProcessingBlockset模块下DSPsources中SineWave来产生信号;选择Sum来叠加三个正弦信号;选择DSPsink

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

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

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