《频率采样型滤波器的Matlab实现-实验报告(共13页).doc》由会员分享,可在线阅读,更多相关《频率采样型滤波器的Matlab实现-实验报告(共13页).doc(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上实验二 频率采样型滤波器目录一、实验目的1. 通过该实验学会使用频率采样型结构实现 FIR 滤波器,初步熟悉FIR 滤波器的线性相位特点。2. 通过该实验直观体会频率采样型滤波器所具有的“滤波器组”特性,即在并联结构的每条支路上可以分别得到输入信号的各次谐波。3. 通过该实验学会如何使用周期冲激串检测所实现滤波器的频域响应。二、实验内容1、构造滤波器输入信号,并对其进行采样处理:(1)程序片段:s=inline(A*cos(2*pi*k*f0*t+q),A,k,f0,t,q);f0=50;N=16;L=2*N;fs=N*f0;ts=1/fs;ss=zeros(1,L)
2、;A=0.5,1,0.5,2;q=0,pi/2,pi,-pi/2;for k=0:1:3 ss=ss+s(A(k+1),k,f0,0:ts:(L-1)*ts,q(k+1);endfigurestem(0:L-1,ss);title(时域采样信号);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(n)ylabel(s(n)(2)运行结果:(3)结果分析:由于,故采样信号在原始信号的一个周期内采取16个点,一共采样了两个周期,共32个点。2、对采样信号的第二个周期进行离散傅里叶变换,画出幅频特性和相频特性图,观察
3、并分析其特点:(1)程序片段:Sk=fft(ss(1:N);Sk_abs=abs(Sk);Sk_angle=angle(Sk);figuresubplot(1,2,1)stem(0:N-1,Sk_abs);title(采样信号幅频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(k)ylabel(|S(k)|)subplot(1,2,2)stem(0:N-1,Sk_angle/pi);title(采样信号相频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),a
4、dd=,num2str(add)xlabel(k)ylabel(angle(S(k)/pi)(2)运行结果:(3)结果分析:由于原始信号只有直流分量以及第一、二、三次分量,而由知其对应的幅频特性只有当k=0-3有值,而后面有值的谱线是由于共轭对称所产生的。又因为所取信号为一个周期的,相当于在时域增加了一个门宽为N的窗,该窗对应的频域为一个sinc函数,其主瓣宽度为,恰好等于幅频特性中相邻点的距离,故各个点处的值只与其对应分量的幅度和sinc函数的增益N有关,现对其幅值分析如下:A 对于直流分量其,故当k=0时对应幅值为B 对于第一、二、三次分量,由于其余弦信号分为正负两边各为其幅度的,故当k=
5、1时,其对应幅值为;当k=2时,其对应幅值为;当k=3时,其对应幅值为。3、计算滤波器抽头系数h(n), 画出该滤波器的频谱图,观察并分析其幅频特性和相频特性:(1)程序片段:H=1,exp(-j*pi*(N-1)/N),exp(-j*2*pi*(N-1)/N),0,0,0,0,0,0,0,0,0,0,0,-exp(-j*14*pi*(N-1)/N),-exp(-j*15*pi*(N-1)/N);h=ifft(H);disp(抽头系数h(n):);disp(num2str(real(h);figurestem(0:N-1,real(h);title(抽头系数h(n);%f=,num2str(f
6、),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(n)ylabel(h(n)%h1=h,zeros(1,9*N);H1=fft(h1);figuresubplot(1,2,1)plot(0:10*N-1)*2/(10*N),abs(H1);title(滤波器幅频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(w/pi)ylabel(|H(w)|)subplot(1,2,2)plot(0:10*N-1)*2/(10*N),angle(H1)/pi
7、);title(滤波器相频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(w/pi)ylabel(angle(H(w)/pi)(2)运行结果:抽头系数h(n):0. 0. -0. -0. -0. 0. 0.21427 0.30058 0.30058 0.21427 0. -0. -0. -0. 0. 0.(3)结果分析:对滤波器的H(k)做IDFT可以得到其抽头系数h(n),由滤波器的H(k)的相频特性可知,h(n)应该是偶对称的。从滤波器的幅频特性可以看到该滤波器为低通滤波器,其可以通过直流和一、二
8、次频谱分量,从其相频特性可以看出该滤波器在其通带内具有线性相位。4、将第1 步生成的采样信号通过该滤波器,画出输出信号第二个周期的时域波形和频谱,并与第2 步的频谱进行对比,观察并分析二者的区别。(1)程序片段:r=0.999;y1=CombFilter(ss,N,r);y2=zeros(1,N+L);for k=0:N/2 y2=y2+Resonator2(y1,N,r,k,H(k+1);endy=y2/N;figurestem(N:L-1,ss(N+1:L),MarkerFaceColor,blue);hold onstem(N:L-1,y(N+1:L),MarkerFaceColor,r
9、ed,Marker,square);hold offtitle(经过滤波器的信号);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(n)ylabel(s(n)Yk=fft(y(N+1:L);%!Yk_abs=abs(Yk);Yk_angle=angle(Yk);figuresubplot(1,2,1)stem(0:N-1,Sk_abs,MarkerFaceColor,blue);hold onstem(0:N-1,Yk_abs,MarkerFaceColor,red,Marker,square);hold o
10、fftitle(经过滤波器的信号幅频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(k)ylabel(|Y(k)|)subplot(1,2,2)stem(0:N-1,Sk_angle/pi,MarkerFaceColor,blue);hold onstem(0:N-1,Yk_angle/pi,MarkerFaceColor,red,Marker,square);hold offtitle(经过滤波器的信号相频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),
11、add=,num2str(add)xlabel(k)ylabel(angle(H(k)/pi)(2)运行结果:(3)结果分析:输出信号同输入信号相比,少了三次谐波分量,这是由于滤波器为低通滤波器,其只能通过直流和一、二次频谱分量。除此之外,在相位上也有相应的滞后。5、分别画出前4 路谐振器的输出信号第二个周期的时域波形,观察并分析输出信号的特点。(1)程序片段:figurefor k=0:3 subplot(2,2,k+1) temp_y1=Resonator2(y1,N,r,k,H(k+1)/N; stem(N:L-1,temp_y1(N+1:L); title(经过滤波器第,num2str
12、(k),路的信号);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add) xlabel(n) ylabel(s,num2str(k),(n)end(2)运行结果:(3)结果分析:由于低通滤波器的作用,输出信号同输入信号相比,少了三次谐波分量,其对应的直流以及第一、二次分量的幅值均没有变,在相位上都有了一定程度上的滞后。6、将输入信号换成周期为N 的冲激串(1)程序片段:y1=CombFilter(1,zeros(1,N-1),1,zeros(1,N-1),N,r);y2=zeros(1,N+L);for k=0:N/2 y2=
13、y2+Resonator2(y1,N,r,k,H(k+1);endy=y2/N;Yk=fft(y(N+1:L);%!Yk_abs=abs(Yk);Yk_angle=angle(Yk);figuresubplot(1,2,1)stem(0:N-1,abs(H),MarkerFaceColor,blue);hold onstem(0:N-1,Yk_abs,MarkerFaceColor,red,Marker,square);hold offtitle(经过滤波器的信号幅频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)
14、xlabel(k)ylabel(|Y(k)|)subplot(1,2,2)stem(0:N-1,angle(H)/pi,MarkerFaceColor,blue);hold onstem(0:N-1,Yk_angle/pi,MarkerFaceColor,red,Marker,square);hold offtitle(经过滤波器的信号相频特性);%f=,num2str(f),N=,num2str(N),T=,num2str(T),add=,num2str(add)xlabel(k)ylabel(angle(H(k)/pi)(2)运行结果:(3)结果分析:由于输入的信号为冲击串,其通过一个系统
15、后输出信号应为系统的单位脉冲响应信号,但这里的系统因为r的取值不是1而与实际滤波器的幅频特性有了一定程度的偏差,当r越接近1时偏差越小。三、思考题(1) 在第2 步的幅频特性中,各次谐波的幅度与相应的时域信号幅度有什么关系?因为所取信号为一个周期的,相当于在时域增加了一个门宽为N的窗,该窗对应的频域为一个sinc函数,其主瓣宽度为,恰好等于幅频特性中相邻点的距离,故各个点处的值只与其对应分量的幅度和sinc函数的增益N有关,现对其幅值分析如下:A.对于直流分量其,故当k=0时对应幅值为B.对于第一、二、三次分量,由于其余弦信号分为正负两边各为其幅度的,故当k=1时,其对应幅值为;当k=2时,其
16、对应幅值为;当k=3时,其对应幅值为。(2) 实验中为什么要观察第二个周期,如果直接观察第一个周期会怎么样?由于梳状滤波器的理想单位脉冲响应为,其需要前一个周期N的数据,即应当在系统输出处于稳态时再读取输出的值,故这里取了第二个周期。如果取第一个周期,输出信号将不为0,不符合梳状滤波器的输出要求。(3) 如果取r=0.95,观察会出现什么情况。所加的系统将相比于理想系统有较大的误差,输出信号会有一定程度上的失真。(4) 如何理解第3 步与第6 步在工程使用中的区别?其中之所以去取r为一个很接近于1的值但要比1小,这是因为在工程上一方面要保证系统是可以实现的,是稳定的,另一方面也要保证所构建的系统与理想系统之间的误差很小。专心-专注-专业