实验五 谱分析
- 格式:doc
- 大小:1.20 MB
- 文档页数:17
实验五 谱分析 一 实验目的 1 研究不同类型的窗函数,研究一些不同的方法来测试窗的性能; 2 专注于有关窄带信号的几个不同的情形。
二 实验原理 信号是无限长的,而在进行信号处理时只能采用有限长信号,所以需要将窄带信号“截断”。在信号处理中,“截断”被看成是用一个有限长的“窗口”看无限长的信倍号,或者从分析的角度是无限长的信号x(t)乘以有限长的窗函数w(t),由傅立叶变换性质可知: x(t)w(t)==1/2πX(jw)W(jw) 如果x(t)是频带有限信号,而w(t)是频带无限函数,截断后的信号也必是频带无限信号,从而产生所谓的频谱泄露。频谱泄露是不可避免的,但是尽量减小,因此设计了不同的窗函数满足不同的要求。从能量的角度,频谱泄露也是能量泄露,因为加窗后,是原来的信号集中在宅频带内的能量分散到无限的频带范围。
三 实验内容、程序及结果 1&&2:用MATLAB编程绘制各种窗函数的形状及其幅度响应。 %矩形窗 N=20; figure(1) w1=boxcar(N); n=[0:N-1]; [H,W]=dtft(w1,1024); subplot(121); stem(n,w1),title('矩形窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('矩形窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %汉宁窗 figure(2) w2=hanning(N); n=[0:N-1]; [H,W]=dtft(w2,1024); subplot(121); stem(n,w2),title('汉宁窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('汉宁窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %汉明窗 figure(3) w3=hamming(N); n=[0:N-1]; [H,W]=dtft(w3,1024); subplot(121); stem(n,w3),title('汉明窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('汉明窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %巴特利特窗 figure(4) w4=bartlett(N); n=[0:N-1]; [H,W]=dtft(w4,1024); subplot(121); stem(n,w4),title('巴特利特窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('巴特利特窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %布莱克曼窗 figure(5) w5=blackman(N); n=[0:N-1]; [H,W]=dtft(w5,1024); subplot(121); stem(n,w5),title('布莱克曼窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('布莱克曼窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %Triang窗 figure(6) w6=triang(N); n=[0:N-1]; [H,W]=dtft(w6,1024); subplot(121); stem(n,w6),title('Triang窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('Triang窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %Kaiser窗 figure(7) w7=kaiser(N,2); n=[0:N-1]; [H,W]=dtft(w7,1024); subplot(121); stem(n,w7),title('Kaiser窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('Kaiser窗幅度响应'); xlabel('f'),ylabel('|W(w)|') %切比雪夫窗 figure(8) w8=chebwin(N,16); n=[0:N-1]; [H,W]=dtft(w8,1024); subplot(121); stem(n,w8),title('切比雪夫窗形状'); xlabel('n'),ylabel('w(n)'); subplot(122); plot(W/2/pi,abs(H)),title('切比雪夫窗幅度响应'); xlabel('f'),ylabel('|W(w)|') 附图: 3.绘制矩形窗的幅频响应,窗长度分别为:N=10,N=20,N=50,N=100。 N=10; w=boxcar(N); n=[0:N-1]; [H,W]=dtft(w,1024); subplot(411) plot(W/2/pi,abs(H)); title('N=10') xlabel('f'),ylabel('|W(w)|')
N=20; w=boxcar(N); n=[0:N-1]; [H,W]=dtft(w,1024); subplot(412) plot(W/2/pi,abs(H)); title('N=20') xlabel('f'),ylabel('|W(w)|')
N=50; w=boxcar(N); n=[0:N-1]; [H,W]=dtft(w,1024); subplot(413) plot(W/2/pi,abs(H)); title('N=50') xlabel('f'),ylabel('|W(w)|')
N=100; w=boxcar(N); n=[0:N-1]; [H,W]=dtft(w,1024); subplot(414) plot(W/2/pi,abs(H)); title('N=100') xlabel('f'),ylabel('|W(w)|')
4.已知周期信号x(t)=0.75+3.4cos2pift+2.7cos4pift+1.5sin3.5pift+2.5sin7pift,其中f=(25/16)Hz,若截断时间长度分别为信号周期的0.9倍和1.1倍,试绘制和比较采用下面窗函数提取的x(t)的频谱。 经计算,本题中周期T=2.56s %0.9倍周期 f=25/16; dt=0.01; N=230; n=0:(N-1); x=0.75+3.4*cos(2*pi*f*dt*n)+2.7*cos(4*pi*f*dt*n)+1.5*sin(3.5*pi*f*dt*n)+2.5*sin(7*pi*f*dt*n);
figure(1) w1=boxcar(N); y1=x.*w1'; [Y1,W]=dtft(y1,1000); subplot(121),plot(W/2/pi,abs(Y1)); grid,title('信号周期0.9的矩形窗(幅频)'); xlabel('f');ylabel('|Y1|'); subplot(122),plot(W/2/pi,angle(Y1)); grid,title('信号周期0.9的矩形窗(相频)'); xlabel('f');ylabel('
figure(2) w2=hanning(N); y2=x.*w2'; [Y2,W]=dtft(y2,1000); subplot(121),plot(W/2/pi,abs(Y2)); grid,title('信号周期0.9的汉宁窗(幅频)'); xlabel('f');ylabel('|Y2|'); subplot(122),plot(W/2/pi,angle(Y2)); grid,title('信号周期0.9的汉宁窗(相频)'); xlabel('f');ylabel('
figure(3) w3=hamming(N); y3=x.*w3'; [Y3,W]=dtft(y3,1000); subplot(121),plot(W/2/pi,abs(Y3)); grid,title('信号周期0.9的汉明窗(幅频)'); xlabel('f');ylabel('|Y3|'); subplot(122),plot(W/2/pi,angle(Y3)); grid,title('信号周期0.9的汉明窗(相频)'); xlabel('f');ylabel('
figure(4) w4=bartlett(N); y4=x.*w4'; [Y4,W]=dtft(y4,1000); subplot(121),plot(W/2/pi,abs(Y4)); grid,title('信号周期0.9的巴特利特窗(幅频)'); xlabel('f');ylabel('|Y4|'); subplot(122),plot(W/2/pi,angle(Y4)); grid,title('信号周期0.9的巴特利特窗(相频)'); xlabel('f');ylabel('
figure(5) w5=blackman(N); y5=x.*w5'; [Y5,W]=dtft(y5,1000); subplot(121),plot(W/2/pi,abs(Y5)); grid,title('信号周期0.9的布莱克曼窗(幅频)'); xlabel('f');ylabel('|Y5|'); subplot(122),plot(W/2/pi,angle(Y5)); grid,title('信号周期0.9的布莱克曼窗(相频)'); xlabel('f');ylabel('
figure(6) w6=triang(N); y6=x.*w2'; [Y6,W]=dtft(y6,1000);