Advertisement

数字信号处理实验

阅读量:

本研究探讨了信号频谱计算的关键问题,包括离散序列频谱、连续非周期信号频谱以及连续周期信号频谱的计算方法。在离散序列频谱计算中,通过调整N值(如128、256、512)分析了频谱分辨率和计算量的关系,发现N=128时能区分两个冲激序列,而N=1024时效果最佳。在连续非周期信号频谱计算中,使用矩形窗和哈明窗分析了信号长度Tp(如1/Δf、2/Δf、3/Δf)对旁瓣和频率分辨率的影响,结果表明哈明窗能更清晰地区分频率成分。在连续周期信号频谱计算中,通过7次谐波近似重建信号,发现误差主要由高次谐波未被完全捕捉,增加抽样点数可有效减小误差。研究结果强调了窗函数选择和抽样点数对频谱计算精度的影响。

DFT近似计算信号频谱专题研讨

  • 离散序列频谱的分析与处理
  • 连续非周期信号频谱的分析及其频率分辨率评估
  • 连续周期信号频谱的分析

离散序列频谱计算

【研讨题目】 离散序列频谱计算

选择N值为64,分别计算序列频谱X(ejΩ)在不同抽样点数下的值,绘制信号的频谱图,并对所得结果进行分析。

在这里插入图片描述

当N=64时,无论序列频谱的取样值如何,都无法分辨原序列频谱中的两个冲激序列,增大取样值的结果只会导致图像变得更加平滑。

取N=128,分别计算X(ejΩ)在128点、256点、1024点下的抽样值,并绘制频谱图。对比第一部分的结果,谈谈你的认识。

在这里插入图片描述

与(1)相比,当N=128时,能够分辨出x[k]频谱中的两个冲激序列,而其中1024点DFT时的表现最为显著。

在这里插入图片描述

温磬提示

题目目的

【仿真结果】

结果分析

结果分析

自主学习内容

结果分析

自主学习内容

【阅读文献】

发现问题

发现问题

问题探究

仿真程序

发现问题

问题探究

仿真程序

发现问题

问题探究

仿真程序

复制代码
    N=256;
    L=256;
    L2=1024;
    L3=1024;
    A0=(12*pi)/64;
    A1=(13*pi)/64;
    k=0:N-1;
    w=(0:L/2-1)*2/L;
    w2=(0:L2/2-1)*2/L2;
    w3=(0:L3/2-1)*2/L3;
    x=cos(A0*k)+cos(A1*k);
    X=fft(x,L);
    X2=fft(x,L2);
    X3=fft(x,L3);
    plot(w,abs(X(1:L/2)),'o',w2,abs(X2(1:L2/2)),'*',w3,abs(X3(1:L3/2)));
    ylabel('幅度值');xlabel('Ω/Π');
    legend([num2str(L) ' DFT'],[num2str(L2) 'DFT'],[num2str(L3) 'DFT']);

连续非周期信号频谱的计算与频率分辨率

【研讨题目】连续非周期信号频谱的计算与频率分辨率

已知连续时间信号x和v分为x =cos+0.9 cosv =cos+0.09 cos其中f1=200Hz,f2=220Hz,f= f2 f1=20Hz, 对连续信号的抽样频率fsam=600Hz 。信号的抽样长度Tp=NT=N/fsam,N是对连续信号的抽样的样本数。利用矩形窗分析信号x的频谱,信号的长度Tp分别取为Tp=0.5/f,1/f,2/f。讨论所得结果。
Tp=0.5/f时,不能区分两个冲激序列,图像只能分析出大概在f=210hz时幅值最大。不能看出旁瓣。
在这里插入图片描述
Tp=1/f时,能区分两个序列,有因为x(t)的两个余弦函数幅值相似,图像很明显。能看出旁瓣。
Tp=2/f时,能区分两个序列,更清晰。能看出旁瓣,旁瓣的幅度相对于Tp=1/f时小了很多,但数量增加。
利用矩形窗分析信号v的频谱,信号的长度Tp分别取为Tp=1/f,2/f,3/f。讨论所得结果。
Tp=1/f时,只有一个峰值,有旁瓣,细节少。
Tp=2/f与Tp=1/f相比,没有大的变化。
Tp=3/f与上两个相比,在200Hz时幅值更大旁瓣更多,旁瓣的幅值更小,在220Hz时能看到另一个序列,能很好地反映频谱地性质。
利用哈明窗分析信号x的频谱,信号的长度Tp分别取为Tp=1/f,2/f,3/f。讨论所得结果。
Tp=1/f时,能区分两个冲激序列,没有旁瓣。
Tp=2/f时,能区分两个冲激序列,有旁瓣,但两个冲激序列相互干扰,图像比Tp=1/f时更差。
在这里插入图片描述
Tp=2/f时,能区分两个冲激序列,有旁瓣,两个冲激序列相互独立,便于区分。
利用哈明窗分析信号v的频谱,信号的长度Tp分别取为Tp=1/f,2/f,3/f。讨论所得结果。
Tp=1/f时,不能区分两个序列。
在这里插入图片描述
Tp=2/f时,勉强能区分两个序列。有旁瓣,但幅值很小。
Tp=3/f时,能清晰区分两个序列。有旁瓣,但幅值很小。

题目目的

题目目的

题目目的

温磬提示

【仿真结果】

结果分析

问题探究

自主学习内容

【阅读文献】

【发现问题】 (专题研讨或相关知识点学习中发现的问题):

【仿真程序】

复制代码
    clear;clc;
    f1=200;
    f2=220;
    f0=f2-f1;
    fsam=600;
    %Tp=N/fsam;
    Tp=3/f0;
    N=ceil(Tp*fsam);
    L=1024*8;
    T=1/fsam;wsam=2*pi*fsam;
    t=(0:N-1)*T;
    x=cos(2*pi*f1*t)+0.9*cos(2*pi*f2*t);
    v=cos(2*pi*f1*t)+0.09*cos(2*pi*f2*t);
    rect=rectwin(N)'; x1=x;v1=v;
    %X1=fft(x,L);
    %V1=fft(v1,L);
    wh=(hamming(N))';x=x.*wh;v=v.*wh;
    X1=T*fftshift(fft(x1,L));
    V1=T*fftshift(fft(v1,L));
    f=(-fsam/2+(0:L-1)*fsam/L);
    plot(f,abs(V1));
    ylabel('|V1(jf)|');xlabel(' f/Hz')
    A=axis;axis([150 250 A(3:4)]);grid;

【自主学习内容】
【阅读文献】

【发现问题】 (专题研讨或相关知识点学习中发现的问题):

【问题探究】

连续周期信号频谱计算

【研讨题目】 连续周期信号频谱计算

周期为T0的连续时间周期信号x可用Fourier级数表示为
在这里插入图片描述

通过在信号x(t)的一个周期T0内采样N个点,可以得到序列x[k],其中T表示抽样周期间隔。

在这里插入图片描述
试分析序列x的DFT与连续时间周期信号x的频谱X的关系;由的结论,给出由DFT近似计算周期信号频谱X的方案;

(3)周期信号x(t)的周期T0=1,x(t)在区间[0,1]的表达式为

x=20t24cos

为了在x(t)的谐波分析中,仅使用7次及以下的谐波(包括7次)来近似表示,需要制定相应的计算方案。请详细说明如何计算出近似的重建信号和误差评估指标,并分析误差产生的原因,并提出有效的降低误差的方法。

题目目的

理论推导

计算方案

计算方案

扩展分析

【仿真结果】

在这里插入图片描述
在这里插入图片描述

结果分析

结果分析

自主学习内容

【阅读文献】

【发现问题】 (专题研讨或相关知识点学习中发现的问题):

【问题探究】

【仿真程序】

复制代码
    clear all;clc;
    T0=1;N=128;T=T0/N;
    L=7;Nr=1000;dt=T0/Nr;
    t=(0:N-1)*T;
    x = 20*power(t,2).*power((1-t),4).*cos(12*pi*t);
    X=fft(x,N)/N;
    tr=(0:Nr-1)*dt;
    xN=real(X(1)*ones(1,Nr));
    for m=2:L+1
    xN=xN+2*real( X(m)*exp(j*(m-1)*2*pi*tr) );
    end
    x = 20*power(tr,2).*power((1-tr),4).*cos(12*pi*tr);
    subplot(121);plot(tr,x,tr,xN);legend('x','xN');
    subplot(122);plot(tr,x-xN);title('重建误差');
    A=axis;axis([A(1,2) -0.04 0.04]);

全部评论 (0)

还没有任何评论哟~