数字信号处理实验5谱分析.docx
- 文档编号:5632836
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:24
- 大小:424.49KB
数字信号处理实验5谱分析.docx
《数字信号处理实验5谱分析.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验5谱分析.docx(24页珍藏版)》请在冰豆网上搜索。
数字信号处理实验5谱分析
信号处理实验
实验五:
谱分析
一实验题目:
谱分析
二实验原理:
信号是无限长的,而在进行信号处理时只能采用有限长的信号,所以需要将信号截断。
在信号处理中,截断被看成是用一个有限长的“窗口”看无限长的信号,或者从分析的角度是无限长的信号x(t)乘以有限长的窗口w(t),由傅立叶变换性质可知
x(t)w(t)=X(jw)*W(jw)
如果x(t)是频宽有限信号,而w(t)是频宽无限函数,截断后的信号也必是频宽无限信号,从而产生所谓的频谱泄露。
频谱泄露是不可避免的,但要尽量减小,因此设计了不同的窗函数满足不同用途的要求。
从能量的角度,频谱泄露也是能量泄露,因为加窗后,使原来的信号集中在窄频带内的能量分散到无限的频谱范围。
matlab信号处理工具箱提供了8种窗函数。
各种窗函数的幅频响应都存在明显的主瓣和旁瓣。
(1)矩形窗(RectangleWindow)
调用格式:
w=boxcar(n),根据长度n产生一个矩形窗w。
(2)三角窗(TriangularWindow)
调用格式:
w=triang(n),根据长度n产生一个三角窗w。
(3)汉宁窗(HanningWindow)
调用格式:
w=hanning(n),根据长度n产生一个汉宁窗w。
(4)汉明窗(HammingWindow)
调用格式:
w=hamming(n),根据长度n产生一个海明窗w。
(5)布莱克曼窗(BlackmanWindow)
调用格式:
w=blackman(n),根据长度n产生一个布拉克曼窗w。
(6)凯瑟窗(KaiserWindow)
调用格式:
w=kaiser(n,beta),根据长度n和影响窗函数旁瓣的β参数产生一个凯瑟窗w。
(7)巴特利特窗(BartlettWindow)
调用格式:
w=bartlett(n),根据长度n产生一个矩形窗w。
(8)切比雪夫窗
调用格式:
w=chebwin(n,r),根据长度n产生一个矩形窗w。
其中,r是窗口的旁瓣幅值在主瓣一下的分贝数。
三实验内容:
1,用matlab编程绘制各种窗函数的形状。
2,用matlab编程绘制各种窗涵数的幅度响应。
程序:
%矩形窗
nn=0:
39;
w=boxcar(length(nn));
subplot(211);
stem(nn,w);
gtext('矩形窗形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('矩形窗幅度响应')
%汉宁窗
nn=0:
39;
w=Hanning(length(nn));
subplot(211);
stem(nn,w);
gtext('汉宁窗形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('汉宁窗幅度响应')
%汉明窗
nn=0:
39;
w=Hamming(length(nn));
subplot(211);
stem(nn,w);
gtext('汉明窗形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('汉明窗幅度响应')
%巴特利特窗
nn=0:
39;
w=bartlett(length(nn));
subplot(211);
stem(nn,w);
gtext('巴特利特形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('巴特利特幅度响应')
%布莱克曼窗
nn=0:
39;
w=blackman(length(nn));
subplot(211);
stem(nn,w);
gtext('布莱克曼形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('布莱克曼幅度响应')
%三角窗
nn=0:
39;
w=triang(length(nn));
subplot(211);
stem(nn,w);
gtext('三角窗形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('三角窗幅度响应')
%凯瑟窗
nn=0:
39;
w=kaiser(length(nn));
subplot(211);
stem(nn,w);
gtext('凯瑟窗形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('凯瑟窗幅度响应')
%切比雪夫窗
nn=0:
39;
w=chebwin(length(nn));
subplot(211);
stem(nn,w);
gtext('切比雪夫形状')
N=320;
[w,h]=dtft(w,N);
subplot(212)
plot(h,abs(w))
gtext('切比雪夫幅度响应')
3.绘制矩形窗的幅频响应,窗长度分别为:
N=10,N=20,N=50,N=100。
程序:
N1=9;N2=19;N3=49;N4=99;
L1=80;L2=160;L3=400;L4=800;
nn1=0:
N1;nn2=0:
N2;nn3=0:
N3;nn4=0:
N4;
w1=boxcar(length(nn1));
w2=boxcar(length(nn2));
w3=boxcar(length(nn3));
w4=boxcar(length(nn4));
[w1,h1]=dtft(w1,L1);
[w2,h2]=dtft(w2,L2);
[w3,h3]=dtft(w3,L3);
[w4,h4]=dtft(w4,L4);
subplot(411);plot(h1,abs(w1))
title('N为10的幅频响应')
subplot(412);plot(h2,abs(w2))
title('N为20的幅频响应')
subplot(413);plot(h3,abs(w3))
title('N为50的幅频响应')
subplot(414);plot(h4,abs(w4))
title('N为100的幅频响应')
4,以知周期信号x(t)=0.75+3.4cos2pif*t+2.7cos4pif*t+1.5sin3.5pif*t+2.5sin7pif*t,其中f=
Hz,若截断时间长度分别为信号周期的0.9和1.1倍,试绘制和比较采用下面窗函数提取x(t)的频谱。
(1)矩形窗
(2)汗宁窗(3)汗明窗(4)巴特利窗(5)布莱克曼窗(6)tring窗(7)kaiser窗(8)切比雪夫窗
x(t)的周期T=
程序:
%当截断时间长度是信号周期的0.9倍时
%矩形窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=boxcar(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用矩形窗提取的频谱')
%汉宁窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=hanning(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用汉宁窗提取的频谱')
%汉明窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=hamming(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用汉明窗提取的频谱')
%巴特利特窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=bartlett(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用巴特利特窗提取的频谱')
%布莱克曼窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=blackman(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用布莱克曼窗提取的频谱')
%三角窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=triang(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用三角窗提取的频谱')
%凯瑟窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=kaiser(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用凯瑟窗提取的频谱')
%切比雪夫窗
t=0:
4/175:
64/25*0.9;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=chebwin(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用切比雪夫窗提取的频谱')
%当截断时间长度是信号周期的1.1倍时
%矩形窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=boxcar(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用矩形窗提取的频谱')
%汉宁窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=hanning(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用汉宁窗提取的频谱')
%汉明窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=hamming(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用汉明窗提取的频谱')
%巴特利特窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=bartlett(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用巴特利特窗提取的频谱')
%布莱克曼窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=blackman(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用布莱克曼窗提取的频谱')
%三角窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=triang(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用三角窗提取的频谱')
%凯瑟窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=kaiser(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用凯瑟窗提取的频谱')
%切比雪夫窗
t=0:
4/175:
64/25*1.1;
l=length(t);
f=25/16;
x=0.75+3.4*cos(2*pi*f*t)+2.7*cos(4*pi*f*t)+1.5*sin(3.5*pi*f*t)+2.5*sin(7*pi*f*t);
w=chebwin(l);
ss=w.*x';
[H,W]=dtft(ss,l*8);
plot(W,abs(H))
title('用切比雪夫窗提取的频谱')
四、实验结果分析
从以上结果可看出,不同的窗函数提取的x(t)的频谱是不同的,这是因为各种窗函数具有不同宽度的旁瓣和主瓣。
实际应用中,应当根据要求选用合适的窗函数。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 实验 谱分析