最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

北京理工大学数字信号处理实验二 利用DFT分析信号频谱

来源:动视网 责编:小OO 时间:2025-09-27 08:10:43
文档

北京理工大学数字信号处理实验二 利用DFT分析信号频谱

实验2利用DFT分析信号频谱姓名:明眸皓齿王师傅班级:******学号:*********实验时间:第十二周周三下午第二大节一.实验目的1、加深对DFT原理的理解。2、应用DFT分析信号的频谱。3、深刻理解利用DFT分析信号频谱的原理,分析实现过程中出现的现象及解决方法。二.实验设备与环境计算机、MATLAB软件环境三.实验原理1.DFT与DTFT的关系有限长序列的离散时间傅里叶变换在频率区间的N个等间隔分布的点上的N个取样值可以由下式表示:由上式可知,序列的N点DFT,实际上就是序列的DTF
推荐度:
导读实验2利用DFT分析信号频谱姓名:明眸皓齿王师傅班级:******学号:*********实验时间:第十二周周三下午第二大节一.实验目的1、加深对DFT原理的理解。2、应用DFT分析信号的频谱。3、深刻理解利用DFT分析信号频谱的原理,分析实现过程中出现的现象及解决方法。二.实验设备与环境计算机、MATLAB软件环境三.实验原理1.DFT与DTFT的关系有限长序列的离散时间傅里叶变换在频率区间的N个等间隔分布的点上的N个取样值可以由下式表示:由上式可知,序列的N点DFT,实际上就是序列的DTF
实验2 利用DFT分析信号频谱

姓名:明眸皓齿王师傅

班级:******

学号:*********

实验时间:第十二周周三下午第二大节

 

一.实验目的

1、加深对DFT原理的理解。

2、应用DFT分析信号的频谱。

3、深刻理解利用DFT分析信号频谱的原理,分析实现过程中出现的现象及解决方法。

二.实验设备与环境

计算机、MATLAB软件环境

三.实验原理

1.DFT与DTFT的关系

有限长序列的离散时间傅里叶变换在频率区间的N个等间隔分布的点上的N个取样值可以由下式表示:

    

由上式可知,序列的N点DFT,实际上就是序列的DTFT在N个等间隔频率点上样本。

2.利用DFT求DTFT

方法1:由恢复出的方法如图2.1所示:

由图2.1所示流程可知:

由式2-2可以得到

其中为内插函数

方法2:然而在实际MATLAB计算中,上述插值运算不见得是最好的办法。由于DFT是DTFT的取样值,其相邻两个频率样本点的间距为,所以如果我们增加数据的长度N,使得到的DFT谱线就更加精细,其包络就越接近DTFT的结果,这样就可以利用DFT来近似计算DTFT。如果没有更多数据,可以通过补零来增加数据长度。

3.利用DFT分析连续时间信号的频谱

采用计算机分析连续时间信号的频谱,第一步就是把连续时间信号离散化,这里需要进行两个操作:一是采样,二是截断。

对于连续时间非周期信号,按采样间隔T进行采样,截取长度M,那么

对进行N点频域采样,得到

因此,可以将利用DFT分析连续非周期信号频谱的步骤归纳如下:

(1)确定时域采样间隔T,得到离散序列;

(2)确定截取长度M,得到M点离散序列,这里w(n)为窗口函数。

(3)确定频域采样点数N,要求。

(4)利用FFT计算离散序列的N点DFT,得到;

(5)根据式(2-6)由计算采样点的近似值。

四.实验内容

1.已知,完成如下要求:

(1)计算其DTFT,并画出区间的波形。

(2)计算4点DFT,并把结果显示在(1)所画图形中。

(3)对补零,计算点DFT,并显示结果。

(4)根据实验结果,分析是否可以由DFT计算DTFT,如果可以,如何实现。

(1)代码:

x=[2,-1,1,1]

n=0:3

w=-pi:0.01*pi:pi

X=x*exp(-j*n'*w)

subplot(2,1,1)

plot(w,abs(X))

xlabel('\\Omega/\\pi')

title('Magnitude')

axis tight

subplot(2,1,2)

plot(w,angle(X)/pi)

xlabel('\\Omega/\\pi')

title('Phase')

axis tight

(2)代码:

x=[2,-1,1,1]

n=0:3

w=-pi:0.01*pi:pi

X=x*exp(-j*n'*w)

subplot(2,1,1)

plot(w,abs(X))

xlabel('\\Omega/\\pi')

title('Magnitude')

axis tight

subplot(2,1,2)

plot(w,angle(X)/pi)

xlabel('\\Omega/\\pi')

title('Phase')

axis tight

y=fft(x)

subplot(2,1,1)

hold on

stem(0:3,abs(y),'fill')

title('Magnitude')

subplot(2,1,2)

hold on                       

stem(0:3,angle(y)/pi,'fill')

ylabel('/\\pi')

title('Phase')

(3)代码:

x=[2,-1,1,1]

x=[x,zeros(1,60)]

y=fft(x,)

subplot(2,1,1)

stem(0:63,abs(y),'fill')

title('Magnitude')

axis tight

subplot(2,1,2)

stem(0:63,angle(y)/pi,'fill')

xlabel('\\Omega/\\pi')

ylabel('/\\pi')

title('Phase')

(4)由DFT可以计算出DTFT。从上面几个图中我们可以看出,DFT可以看作是DTFT的取样值,其相邻两个频率样本点的间距为,所以如果我们增加数据的长度N(即减小点与点之间的间距),得到的DFT谱线就更加精细,其包络也就越接近DTFT的结果,这样就可以利用DFT来近似计算DTFT。

2.考察序列

(1),用DFT估计的频谱;将补零加长到长度为100点序列用DFT估计的频谱。要求画出相应波形。

(2)时,用DFT估计的频谱,并画出波形。

(3)根据实验结果,分析怎样提高频谱分辨率。

(1)代码:

n=0:10

x=cos(0.48*pi*n)+cos(0.52*pi*n)

y=fft(x)

subplot(2,1,1)

stem(0:10,abs(y),'fill')

title('Magnitude')

subplot(2,1,2)

stem(0:10,angle(y)/pi,'fill')

xlabel('\\Omega/\\pi')

ylabel('/\\pi')

title('Phase')

补零代码:

n=0:10

x=cos(0.48*pi*n)+cos(0.52*pi*n)

x=[x,zeros(1,)]

y=fft(x)

subplot(2,1,1)

stem(0:99,abs(y),'fill')

title('Magnitude')

subplot(2,1,2)

stem(0:99,angle(y)/pi,'fill')

xlabel('\\Omega/\\pi')

ylabel('/\\pi')

title('Phase')

(2)代码:

n=0:100

x=cos(0.48*pi*n)+cos(0.52*pi*n)

y=fft(x)

subplot(2,1,1)

stem(0:100,abs(y),'fill')

title('Magnitude')

subplot(2,1,2)

stem(0:100,angle(y)/pi,'fill')

xlabel('\\Omega/\\pi')

ylabel('/\\pi')

title('Phase')

(3)通过补零不能提高分辨力,但能提高分辨率。

从上述结果,我们可以发现使用DFT计算频谱,得到的结果只是N个频谱样本值,样本值之间的频谱是未知的,像通过一个栅栏观察频谱,称为“栅栏效应”。由知,频谱分辨率与纪录长度成反比,所以要提高频谱分辨率,就要增加记录时间。故可以通过补零提高频谱分辨率。对于分辨力,可以通过增加取样密度(减小取样间隔)提高频谱分辨力。

3.已知信号其中=1Hz,=2Hz,=3Hz。从的表达式可以看出,它包含三个频率的正弦波,但是,从其时域波形来看,似乎是一个正弦信号,利用DFT做频谱分析,确定适合的参数,使得到的频谱的频率分辨率符合需要。

(1)N=50,tp=0.1s时

t=0:0.01:1

x=0.15*sin(2*pi*1*t)+sin(2*pi*2*t)-0.1*sin(2*pi*3*t)

X=fft(x,100)        

n=0:99

stem(n,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

不符合要求

(2)N=50,tp=0.5s时:

t=0:0.5:1

x=0.15*sin(2*pi*1*t)+sin(2*pi*2*t)-0.1*sin(2*pi*3*t)

X=fft(x,50)     

n=0:49

stem(n,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

不符合要求

(3)N=50,tp=0.01s时

t=0:0.01:1

x=0.15*sin(2*pi*1*t)+sin(2*pi*2*t)-0.1*sin(2*pi*3*t)

X=fft(x,50)     

n=0:49

stem(n,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

tp符合要求,但是只有4个冲击点,应该有6个,故应增大N。

(4)N=100,tp=0.01s

t=0:0.01:1

x=0.15*sin(2*pi*1*t)+sin(2*pi*2*t)-0.1*sin(2*pi*3*t)

X=fft(x,100)        

n=0:99

stem(n,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

此时DFT的包络形状已经很接近DTFT了。故取N=100,tp=0.01s

4. 利用DFT近似分析连续时间信号的频谱。分析采用不同的采样间隔和截取长度进行计算的结果,并最终确定适合的参数。

(1)tp=1s,N=10

t=0:10

x=exp(-0.1*t)

X=fft(x,11)

stem(t,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

(2)tp=1s,N=100

t=0:0.1:10

x=exp(-0.1*t)

X=fft(x,101)

stem(t,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

(3)tp=0.1s,N=100

t=0:0.1:10

x=exp(-0.1*t)

X=fft(x,101)

stem(t,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

(4)tp=0.1s,N=1000

t=0:0.1:100

x=exp(-0.1*t)

X=fft(x,1001)

stem(t,abs(X),'filled')

xlabel('\\Omega/Hz')

title('Magnitude')

axis tight

可以看出tp=0.1s,N=1000时,DFT包络已经很接近DTFT结果了。

分析:从上面几个图我们可以看出,取样间隔越小,即采样点数越多,得到信号的频谱分辨力就越强;增加数据的长度N,得到的DFT谱线就越精细,其包络就越接近DTFT的结果。因此,应该缩小取样间隔T,增加数据的长度N。

五.心得与体会

通过本次实验,加深了我对于利用DFT分析信号频谱的原理的理解,通过分析实

现过程中出现的现象及解决方法,加深了对DFT原理的理解。我学会了应用DFT分析信号的频谱。

从实验中我得到的结论有:(1)由DFT可以计算出DTFT。DFT可以看作是DTFT的取样值,其相邻两个频率样本点的间距为,增加数据的长度N得到的DFT谱线就更加精细,其包络也就越接近DTFT的结果;(2)通过补零不能提高分辨力,但能提高分辨率。对于分辨力,可以通过增加取样密度(减小取样间隔)来提高。

我们还应该注意的问题有:(1)频谱混叠问题。如果不满足采样定理的条件,频谱会出现混叠误差。对于频谱无限宽的信号,应考虑覆盖大部分主要频率分量的范围;(2)频谱泄露问题。对信号截断会把窗函数的频谱引入信号频谱,照成品频谱泄露。解决这个问题的主要办法是采用旁瓣小的窗函数,频谱泄露和窗函数均会引起误差。

文档

北京理工大学数字信号处理实验二 利用DFT分析信号频谱

实验2利用DFT分析信号频谱姓名:明眸皓齿王师傅班级:******学号:*********实验时间:第十二周周三下午第二大节一.实验目的1、加深对DFT原理的理解。2、应用DFT分析信号的频谱。3、深刻理解利用DFT分析信号频谱的原理,分析实现过程中出现的现象及解决方法。二.实验设备与环境计算机、MATLAB软件环境三.实验原理1.DFT与DTFT的关系有限长序列的离散时间傅里叶变换在频率区间的N个等间隔分布的点上的N个取样值可以由下式表示:由上式可知,序列的N点DFT,实际上就是序列的DTF
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top