陷波器设计
陷波器设计
基于MAtlab工具箱设计
基于零极点配置设计陷波器
其中:ω0=2πf0/fs---陷波数字频率(rad);f0---陷波频率(Hz);fs---取样频率(Hz);
r----常数。
clear
clc% % https://wenku.baidu.com/view/fbf1e2d628ea81c758f5787d.html
% % http://blog.****.net/limindaihong/article/details/9205211
f0=50;fs=499;r=0.97;
w0=2*pi*f0/fs;
b=[1 -2*cos(w0) 1];
a=[1 -2*r*cos(w0) r*r];
N=1024;
[H,w]=freqz(b,a,N);
subplot(221);plot(w,10*log10(abs(H)));grid on;title('陷波器的幅频响应');
subplot(222);plot(w,angle(H));grid on;title('陷波器的相频响应');
subplot(223);zplane(b,a);grid on;title('陷波器的零极点图');
n=0:N-1;
x=sin(2*pi*50*n/fs)+sin(2*pi*100*n/fs);
X=fft(x,N);
y=filter(b,a,x);
Y=fft(y,N);
f=fs/N*(0:N/2-1);
figure;
subplot(221);plot(n,x);grid on;title('原信号x(n)');
subplot(222);plot(f,abs(X(1:N/2)));grid on;title('x(n)的幅频谱');
subplot(223);plot(n,y);grid on;title('陷波器滤波后的信号y(n)');
subplot(224);plot(f,abs(Y(1:N/2)));grid on;title('y(n)的幅频谱');
带阻滤波器
N=501
fs=500;
fp1=45;
fp2=55;
Wn=2*[fp1,fp2]./fs;
Ws=[fs1,fs2]./fs;
h_50=fir1(N,Wn,'stop');%使用fir1函数设计滤波器
%输入的参数分别是滤波器的阶数和截止频率