《2022年对周期方波信号进行滤波matlab的实现 2.pdf》由会员分享,可在线阅读,更多相关《2022年对周期方波信号进行滤波matlab的实现 2.pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、对周期方波信号进行滤波) 1、生成一个基频为10Hz 的周期方波信号;) 2、设计一个滤波器,滤去该周期信号中40Hz 以后的频率成分,观察滤波前后的信号波形和频谱。)3、如果该信号 x(t)淹没在噪声中(随机噪声用randn(1,N) 生成, N 为其样点数),试滤去噪声。 % 采样频率取 200Hz,可以改变看看。输入、输出信号频谱同时绘制在一起对比% 采用低通滤波器,保留40Hz以下频率成分clear fs=200; t=0:1/fs:1; x=square(2*pi*10*t); wp=40*2/fs; ws=45*2/fs; Rp=3;Rs=45;Nn=128; N,wn=butto
2、rd(wp,ws,Rp,Rs) b,a=butter(N,wn,low) y=filter(b,a,x); figure(1) plot(t,x,r-,t,y) %grid on axis(0 1.2 -2 2) title(红色代表原信号,蓝色代表只保留40Hz以下频率成分 ) figure(2) H,W=freqz(b,a); k=0:511; plot(fs/2)/512*k,abs(H); grid on title(滤波器频率响应 )T=1/fs; N=4*(fs/10); n=0:N-1; xn=square(2*pi*10*n*T); X=fftshift(fft(xn,512)
3、; xk=1/N*X; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 3 页 - - - - - - - - - Y=fftshift(fft(y,512); yk=1/N*Y; figure(3) plot(-fs/2+fs/512*k,abs(xk) grid on legend(方波信号的频谱 ) figure(4) plot(-fs/2+fs/512*k,abs(xk),b,-fs/2+fs/512*k,abs(yk),r) grid on legend(原信号
4、的频谱 ,滤波后信号的频谱 ) %保留 40Hz频率成分 % %采样频率取 200Hz,可以改变看看。输入、输出信号频谱同时绘制在一起对比 %采用带通滤波器,只保留40Hz频率成分clear fs=200; t=0:1/fs:1; x=square(2*pi*10*t); wp=35 45*2/fs; ws=30 50*2/fs; Rp=3;Rs=45;Nn=128; N,wn=buttord(wp,ws,Rp,Rs) b,a=butter(N,wn,bandpass) %只保留 40Hz频率成分y=filter(b,a,x); figure(1) plot(t,x,r-,t,y) grid
5、on axis(0 1.2 -1.2 1.2) title(红色代表原信号,蓝色代表只保留40Hz频率成分 ) figure(2) H,W=freqz(b,a); k=0:511; plot(fs/2)/512*k,abs(H); grid on title(滤波器频率响应 ) T=1/fs; N=4*(fs/10); n=0:N-1; xn=square(2*pi*10*n*T); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 3 页 - - - - - - - - - X=fftshift(fft(xn,512); xk=1/N*X; Y=fftshift(fft(y,512); yk=1/N*Y; figure(3) plot(-fs/2+fs/512*k,abs(xk),b,-fs/2+fs/512*k,abs(yk),r) grid on legend(原信号的频谱 ,滤波后信号的频谱 ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 3 页 - - - - - - - - -