用matlab设计一个带阻滤波器,信号有5Hz,40Hz,50Hz,要求把40Hz的滤除,程序是这样的,滤波器和产生的信w1=38/100;w2=42/100;[B,A]=butter(1,[w1,w2],'stop');[h,w]=freqz(B,A);f=w/pi*100;figure(1),plot(f,20*log10(abs(h)));axis([0,80
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/27 09:47:57
![用matlab设计一个带阻滤波器,信号有5Hz,40Hz,50Hz,要求把40Hz的滤除,程序是这样的,滤波器和产生的信w1=38/100;w2=42/100;[B,A]=butter(1,[w1,w2],'stop');[h,w]=freqz(B,A);f=w/pi*100;figure(1),plot(f,20*log10(abs(h)));axis([0,80](/uploads/image/z/6199966-46-6.jpg?t=%E7%94%A8matlab%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E5%B8%A6%E9%98%BB%E6%BB%A4%E6%B3%A2%E5%99%A8%2C%E4%BF%A1%E5%8F%B7%E6%9C%895Hz%2C40Hz%2C50Hz%2C%E8%A6%81%E6%B1%82%E6%8A%8A40Hz%E7%9A%84%E6%BB%A4%E9%99%A4%2C%E7%A8%8B%E5%BA%8F%E6%98%AF%E8%BF%99%E6%A0%B7%E7%9A%84%2C%E6%BB%A4%E6%B3%A2%E5%99%A8%E5%92%8C%E4%BA%A7%E7%94%9F%E7%9A%84%E4%BF%A1w1%3D38%2F100%3Bw2%3D42%2F100%3B%5BB%2CA%5D%3Dbutter%281%2C%5Bw1%2Cw2%5D%2C%27stop%27%29%3B%5Bh%2Cw%5D%3Dfreqz%28B%2CA%29%3Bf%3Dw%2Fpi%2A100%3Bfigure%281%29%2Cplot%28f%2C20%2Alog10%28abs%28h%29%29%29%3Baxis%28%5B0%2C80)
用matlab设计一个带阻滤波器,信号有5Hz,40Hz,50Hz,要求把40Hz的滤除,程序是这样的,滤波器和产生的信w1=38/100;w2=42/100;[B,A]=butter(1,[w1,w2],'stop');[h,w]=freqz(B,A);f=w/pi*100;figure(1),plot(f,20*log10(abs(h)));axis([0,80
用matlab设计一个带阻滤波器,信号有5Hz,40Hz,50Hz,要求把40Hz的滤除,程序是这样的,滤波器和产生的信
w1=38/100;
w2=42/100;
[B,A]=butter(1,[w1,w2],'stop');
[h,w]=freqz(B,A);
f=w/pi*100;
figure(1),
plot(f,20*log10(abs(h)));
axis([0,80,-30,10]);
grid;
xlabel('频率/Hz')
ylabel('幅度/dB')
title('频率响应曲线')
fs=200;
t=0:1/fs:1;
x1=sin(2*pi*5*t)+sin(2*pi*50*t)+sin(2*pi*40*t);
Y1=fft(x1,128);
Y2=abs(Y1);
f=(0:64)*100/64;
figure(2),
subplot(2,1,1),plot(f,Y2(1:65)),title('原始信号');
y=filter(B,A,Y2);
subplot(2,1,2),plot(y),title('滤波后信号');
用matlab设计一个带阻滤波器,信号有5Hz,40Hz,50Hz,要求把40Hz的滤除,程序是这样的,滤波器和产生的信w1=38/100;w2=42/100;[B,A]=butter(1,[w1,w2],'stop');[h,w]=freqz(B,A);f=w/pi*100;figure(1),plot(f,20*log10(abs(h)));axis([0,80
% 代码如下:
fs=200;
t=0:1/fs:1;
x1=sin(2*pi*5*t)+sin(2*pi*50*t);
plot(t,x1);
title('sin(2*pi*5*t)+sin(2*pi*50*t)波形图');
x2=sin(2*pi*5*t)+sin(2*pi*50*t)+sin(2*pi*40*t);
figure;
plot(t,x2);
title('sin(2*pi*5*t)+sin(2*pi*50*t)+sin(2*pi*40*t)波形图');
fx = fft(x);
fx1 = fftshift(fx);
iCenter = 101;
for i = 1 :200
if abs(i-iCenter) >38 && abs(i - iCenter)