MATLAB一阶低通滤波器的设计

对f=5sin(2*pi*20t)+5sin(2*pi*60t),截止频率50Hz,设计MATLAB低通滤波器的程序及注释,谢谢

第1个回答  推荐于2017-12-16
%滤波前数据
t = 0:0.01:10;
f=5*sin(2*pi*20*t)+5*sin(2*pi*60*t);
%滤波器设计
Fpass = 1; % Passband Frequency
Fstop = 50; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 60; % Stopband Attenuation (dB)
Fs = 2000; % Sampling Frequency
h = fdesign.lowpass('fp,fst,ap,ast', Fpass, Fstop, Apass, Astop, Fs);
Hd = design(h, 'equiripple', ...
'MinOrder', 'any', ...
'StopbandShape', 'flat');

%f2滤波后的数据
f2 = filter(Hd,f);
%对比图
plot(t,f,'b',t,f2,'r');本回答被提问者采纳
第2个回答  2009-01-07
根据你的题目设计一个butterworth的3阶滤波器
N=3;
[z,p,k]=buttap(N);求出该滤波器的零点和极点
OmegaC=2*pi*50; 给定的截止频率
p=p*OmegaC; 由于前面是归一化的,现在还原
k=k*OmegaC^N;
>> k=k*OmegaC^N;
B=real(poly(z));
b0=k;
b=k*B; 求出的模拟滤波器的分子系数
a=real(poly(p)); 求出的模拟滤波器的分母系数
a,b都是按s的降幂排列的
那么该题设计的滤波器是
分子9.6139e+014
分母s^3+628s^2+197292s+30990544