滤清器设计廊
这个例子展示了如何设计各种FIR和IIR数字滤波器designfilt
信号处理工具箱®产品中的功能。
图库是为您设计的,用于识别感兴趣的筛选器响应、查看代码并在自己的项目中使用它。它包含由提供的每个可用筛选器响应的示例designfilt
.但是请注意,这些只是为每种响应类型设计过滤器的几种可能方法。有关详细的规范集列表,请参阅信号处理工具箱文档。
除非另有说明,在本例中,所有频率单位都是赫兹,所有纹波和衰减值都是分贝。
低通FIR滤波器
Equiripple设计
Fpass = 100;Fstop = 150;Apass = 1;stop = 65;Fs = 1e3;D = designfilt(“lowpassfir”,...“PassbandFrequency”成就,“StopbandFrequency”Fstop,...“PassbandRipple”apas,“StopbandAttenuation”Astop,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d)
低通IIR滤波器
最大化扁平化设计
Fpass = 100;Fstop = 150;Apass = 0.5;stop = 65;Fs = 1e3;D = designfilt(“lowpassiir”,...“PassbandFrequency”成就,“StopbandFrequency”Fstop,...“PassbandRipple”apas,“StopbandAttenuation”Astop,...“DesignMethod”,“黄油”,“SampleRate”Fs);fvtool (d)
通带和止带中的波纹
N = 8;Fpass = 100;Apass = 0.5;stop = 65;Fs = 1e3;D = designfilt(“lowpassiir”,...“FilterOrder”N...“PassbandFrequency”成就,...“PassbandRipple”apas,“StopbandAttenuation”Astop,...“SampleRate”Fs);fvtool (d)
高通FIR滤波器
Equiripple设计
Fstop = 350;Fpass = 400;stop = 65;Apass = 0.5;Fs = 1e3;D = designfilt(“highpassfir”,“StopbandFrequency”Fstop,...“PassbandFrequency”成就,“StopbandAttenuation”Astop,...“PassbandRipple”apas,“SampleRate”Fs,“DesignMethod”,“equiripple”);fvtool (d)
高通IIR滤波器
最大化扁平化设计
Fstop = 350;Fpass = 400;stop = 65;Apass = 0.5;Fs = 1e3;D = designfilt(“highpassiir”,“StopbandFrequency”Fstop,...“PassbandFrequency”成就,“StopbandAttenuation”Astop,...“PassbandRipple”apas,“SampleRate”Fs,“DesignMethod”,“黄油”);fvtool (d)
通带和止带中的波纹
N = 8;Fpass = 400;stop = 65;Apass = 0.5;Fs = 1e3;D = designfilt(“highpassiir”,...“FilterOrder”N...“PassbandFrequency”成就,...“StopbandAttenuation”Astop,“PassbandRipple”apas,...“SampleRate”Fs);fvtool (d)
带通FIR滤波器
Equiripple设计
Fstop1 = 150;Fpass1 = 200;Fpass2 = 300;Fstop2 = 350;Astop1 = 65;Apass = 0.5;Astop2 = 65;Fs = 1e3;D = designfilt(“bandpassfir”,...“StopbandFrequency1”Fstop1,“PassbandFrequency1”Fpass1,...“PassbandFrequency2”Fpass2,“StopbandFrequency2”Fstop2,...“StopbandAttenuation1”Astop1,“PassbandRipple”apas,...“StopbandAttenuation2”Astop2,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d)
不对称带衰减
N = 50;Fstop1 = 150;Fpass1 = 200;Fpass2 = 300;Fstop2 = 350;Wstop1 = 3;Wstop2 = 100;Fs = 1e3;D = designfilt(“bandpassfir”,...“FilterOrder”N...“StopbandFrequency1”Fstop1,“PassbandFrequency1”Fpass1,...“PassbandFrequency2”Fpass2,“StopbandFrequency2”Fstop2,...“StopbandWeight1”Wstop1,“StopbandWeight2”Wstop2,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d)
带通IIR滤波器
最大化扁平化设计
Fstop1 = 150;Fpass1 = 200;Fpass2 = 300;Fstop2 = 350;Astop1 = 65;Apass = 0.5;Astop2 = 65;Fs = 1e3;D = designfilt(“bandpassiir”,...“StopbandFrequency1”Fstop1,“PassbandFrequency1”Fpass1,...“PassbandFrequency2”Fpass2,“StopbandFrequency2”Fstop2,...“StopbandAttenuation1”Astop1,“PassbandRipple”apas,...“StopbandAttenuation2”Astop2,...“DesignMethod”,“黄油”,“SampleRate”Fs);fvtool (d)
通带和止带中的波纹
N = 8;Fpass1 = 200;Fpass2 = 300;Astop1 = 65;Apass = 0.5;Astop2 = 65;Fs = 1e3;D = designfilt(“bandpassiir”,...“FilterOrder”N...“PassbandFrequency1”Fpass1,“PassbandFrequency2”Fpass2,...“StopbandAttenuation1”Astop1,“PassbandRipple”apas,...“StopbandAttenuation2”Astop2,...“SampleRate”Fs);fvtool (d)
带阻FIR滤波器
Equiripple设计
Fpass1 = 100;Fstop1 = 150;Fstop2 = 350;Fpass2 = 400;Apass1 = 0.5;stop = 65;Apass2 = 0.5;Fs = 1e3;D = designfilt(“bandstopfir”,...“PassbandFrequency1”Fpass1,“StopbandFrequency1”Fstop1,...“StopbandFrequency2”Fstop2,“PassbandFrequency2”Fpass2,...“PassbandRipple1”Apass1,“StopbandAttenuation”Astop,...“PassbandRipple2”Apass2,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d)
不对称通带波纹
N = 30;Fpass1 = 100;Fstop1 = 150;Fstop2 = 350;Fpass2 = 400;Wpass1 = 1;Wpass2 = 10;Fs = 1e3;D = designfilt(“bandstopfir”,...“FilterOrder”N...“PassbandFrequency1”Fpass1,“StopbandFrequency1”Fstop1,...“StopbandFrequency2”Fstop2,“PassbandFrequency2”Fpass2,...“PassbandWeight1”Wpass1,“PassbandWeight2”Wpass2,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d)
带阻IIR滤波器
最大化扁平化设计
Fpass1 = 100;Fstop1 = 150;Fstop2 = 350;Fpass2 = 400;Apass1 = 0.5;stop = 65;Apass2 = 0.5;Fs = 1e3;D = designfilt(“bandstopiir”,...“PassbandFrequency1”Fpass1,“StopbandFrequency1”Fstop1,...“StopbandFrequency2”Fstop2,“PassbandFrequency2”Fpass2,...“PassbandRipple1”Apass1,“StopbandAttenuation”Astop,...“PassbandRipple2”Apass2,...“DesignMethod”,“黄油”,“SampleRate”Fs);fvtool (d)
通带和止带中的波纹
N = 8;Fpass1 = 125;Fpass2 = 375;Apass = 0.5;stop = 65;Fs = 1e3;D = designfilt(“bandstopiir”,...“FilterOrder”N...“PassbandFrequency1”Fpass1,“PassbandFrequency2”Fpass2,...“PassbandRipple”apas,“StopbandAttenuation”Astop,...“SampleRate”Fs);fvtool (d)
任意幅度FIR滤波器
单波段任意震级设计
N = 300;频率以标准化单位表示F1 = 0:0.01:0.18;F2 =[。]2 .38 .4 .55 .562 .585 .6 .78];F3 = 0.79:0.01:1;FreqVect = [F1 F2 F3];%频率向量使用线性单位定义期望的响应A1 = .5+sin(2* π *7.5*F1)/4;%正弦截面A2 =[。]5 2.3 1 1 -。2 -。2 1 1];%分段线性截面A3 = .2+18*(1-f3).^2;%二次截面AmpVect = [A1 A2 A3];D = designfilt(“arbmagfir”,...“FilterOrder”N“振幅”AmpVect,“频率”FreqVect,...“DesignMethod”,“freqsamp”);fvtool (d,“MagnitudeDisplay”,“零”)
多频带低通设计,阻带衰减电平阶梯式
N = 150;B = 2;%条带数频率以标准化单位表示F1 = [0 .25];%通频带F2 =[。]3 .4 .401 .5 .501 .6 .601 .7 .701 .8 .801 .9 .901 1];%阻带A1 = ones(size(F1));1波段所需振幅的%,以线性单位表示A2 =零(大小(F2));2波段所需振幅的%,以线性单位表示权重向量%W = 10。^([0 0 5 5 10 10 15 15 20 20 25 25 30 30 35 35]/20);W1 = w (1:2);%波段1的权重W2 = W(3:结束);%波段2的权重D = designfilt(“arbmagfir”,...“FilterOrder”N“NumBands”B...“BandFrequencies1”F1,“BandAmplitudes1”A1,...“BandFrequencies2”F2,“BandAmplitudes2”A2...“BandWeights1”W1,“BandWeights2”W2);fvtool (d)
微分FIR滤波器
全频带设计
N = 41;Fs = 1e3;D = designfilt(“differentiatorfir”,...“FilterOrder”N“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d,“MagnitudeDisplay”,“零”,“OverlayedAnalysis”,“阶段”)
部分波段设计
N = 40;Fpass = 100;Fstop = 150;Fs = 1e3;D = designfilt(“differentiatorfir”,...“FilterOrder”N...“PassbandFrequency”成就,“StopbandFrequency”Fstop,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d,“MagnitudeDisplay”,“零”,“OverlayedAnalysis”,“阶段”)
希尔伯特FIR滤波器
Equiripple设计
N = 40;Tw = 50;Fs = 1e3;D = designfilt(“hilbertfir”,...“FilterOrder”N“TransitionWidth”Tw,...“DesignMethod”,“equiripple”,“SampleRate”Fs);fvtool (d,“MagnitudeDisplay”,“零”,“OverlayedAnalysis”,“阶段”)