数字信号处理上机实验报告班级:020915姓名:陈步华学号:02091478实验一:信号、系统及系统响应1、实验目的(1)熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。西安电子科技大学电子工程学院02091478陈步华1(2)熟悉时域离散系统的时域特性。(3)利用卷积方法观察分析系统的时域特性。(4)掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。2、实验原理与方法(1)时域采样。(2)LTI系统的输入输出关系。3、实验内容及步骤(1)认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理与方法。(2)编制实验用主程序及相应子程序。①信号产生子程序,用于产生实验中要用到的下列信号序列:a.xa(t)=A*e^-at*sin(Ω0t)u(t)b.单位脉冲序列:xb(n)=δ(n)c.矩形序列:②系统单位脉冲响应序列产生子程序。本实验要用到两种FIR系统。a.ha(n)=R10(n);b.hb(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)③有限长序列线性卷积子程序用于完成两个给定长度的序列的卷积。可以直接调用MATLAB语言中的卷积函数conv。conv用于两个有限长度序列的卷积,它假定两个序列都从n=0开始。调用格式如下:y=conv(x,h)4、实验结果记录①分析采样序列的特性。a.取采样频率fs=1kHz,,即T=1ms。b.改变采样频率,fs=300Hz,观察|X(e^jω)|的变化,并做记录(打印曲线);进一步降低采样频率,fs=200Hz,观察频谱混叠是否明显存在,说明原因,并记录(打印)这时的|X(e^jω)|曲线。程序代码如下:A=444.128;a=50*sqrt(2)*pi;m=50*sqrt(2)*pi;fs1=1000;%此时,取采样频率fs=1kHz,之后,改变采样频率分别为200Hz,300Hzfs2=300;fs3=200;T1=1/fs1;T2=1/fs2;T3=1/fs3;N=100;n=[0:N-1];西安电子科技大学电子工程学院02091478陈步华2x1=A*exp(-a*n*T1).*sin(m*n*T1);x2=A*exp(-a*n*T2).*sin(m*n*T2);x3=A*exp(-a*n*T3).*sin(m*n*T3);w=linspace(-pi,pi,10000);%设置w的范围X1=x1*exp(-j*n'*w);%对x1(n)做DTFT变换X2=x2*exp(-j*n'*w);%对x2(n)做DTFT变换X3=x3*exp(-j*n'*w);%对x3(n)做DTFT变换figure(1)subplot(1,3,1)plot(w/pi,abs(X1));%绘制x1(n)的幅度谱xlabel('\omega/π');ylabel('|H(e^j^\omega)|')title('采样频率为1000Hz时的幅度谱');subplot(1,3,2)plot(w/pi,abs(X2));%绘制x2(n)的幅度谱xlabel('\omega/π');ylabel('|H(e^j^\omega)|')title('采样频率为300Hz时的幅度谱');subplot(1,3,3)plot(w/pi,abs(X3));%绘制x3(n)的幅度谱xlabel('\omega/π');ylabel('|H(e^j^\omega)|')title('采样频率为200Hz时的幅度谱');②时域离散信号、系统和系统响应分析。a.观察信号xb(n)和系统hb(n)的时域和频域特性;利用线性卷积求信号xb(n)通过系统hb(n)的响应y(n),比较所求响应y(n)和hb(n)的时域及频域特性,注意它们之间有无差别,绘图说明,并用所学理论解释所得结果。b.观察系统ha(n)对信号xc(n)的响应特性。程序代码如下:xbn=[1];xcn=ones(1,10);han=ones(1,10);西安电子科技大学电子工程学院02091478陈步华3hbn=[1,2.5,2.5,1];yn=conv(xbn,hbn);%计算信号xb(n)通过系统hb(n)的响应y(n)n1=0:length(yn)-1;n2=0:length(hbn)-1;subplot(2,1,1);stem(n1,yn,'.')%绘制y(n)的时域特性曲线xlabel('n');ylabel('y(n)')title('y(n)的时域特性曲线')subplot(2,1,2);stem(n2,hbn,'.')%绘制hb(n)的时域特性曲线xlabel('n');ylabel('hb(n)')title('hb(n)的时域特性曲线')figure(2)%用于分析y(n)的频域特性n1=[0:length(yn)-1];w=linspace(-pi,pi,10000);%限制w的范围Y=yn*exp(-j*n1'*w);%对y(n)做DTFT变换subplot(2,1,1);%绘制y(n)的幅度和相位曲线plot(w/pi,abs(Y));xlabel('\omega/π');ylabel('幅度')title('DTFT[y(n)]的幅度');subplot(2,1,2);plot(w/pi,angle(Y));xlabel('\omega/π');ylabel('相位')title('DTFT[y(n)]的相位');figure(3)%用于分析hb(n)的频域特性n2=[0:length(hbn)-1];w=linspace(-pi,pi,10000);%限制w的范围Hb=hbn*exp(-j*n2'*w);%对hb(n)做DTFT变换subplot(2,1,1);%绘制hb(n)的幅度和相位曲线plot(w/pi,abs(Hb));xlabel('\omega/π');ylabel('幅度')title('DTFT[hb(n)]的幅度');subplot(2,1,2);plot(w/pi,angle(Hb));xlabel('\omega/π');ylabel('相位')title('DTFT[hb(n)]的相位');zn=conv(xcn,han);%观察系统ha(n)对信号xc(n)的响应特性figure(4)n3=[0:length(zn)-1];w=linspace(-pi,pi,10000);%限制w的范围Z=zn*exp(-j*n3'*w);%对z(n)做DTFT变换subplot(2,1,1);%绘制z(n)的幅度和相位曲线plot(w/pi,abs(Z));西安电子科技大学电子工程学院02091478陈步华4xlabel('\omega/π');ylabel('幅度')title('DTFT[zn]的幅度');subplot(2,1,2);plot(w/pi,angle(Z));xlabel('\omega/π');ylabel('相位')title('DTFT[zn]的相位');西安电子科技大学电子工程学院02091478陈步华5西安电子科技大学电子工程学院02091478陈步华6③卷积定理的验证。程序代码如下:x1=[1,3,4,0,2];x2=[3,2,0,0,1,5];n1=0:length(x1)-1;n2=0:length(x2)-1;y1=conv(x1,x2);%时域卷积计算y1(n)m1=0:length(y1)-1;w=linspace(-pi,pi,10000);%设置w的范围X1=x1*exp(-j*n1'*w);%对x1(n)做DTFT变换X2=x2*exp(-j*n2'*w);%对x2(n)做DTFT变换Y1=y1*exp(-j*m1'*w);%计算y1(n)的频谱Y2=X1.*X2;%计算y2(n)的频谱figure(1)subplot(2,1,1);%绘制y1(n)的幅度和相位曲线plot(w/pi,abs(Y1));xlabel('\omega/π');ylabel('幅度')title('DTFT[y1(n)]的幅度');subplot(2,1,2);plot(w/pi,angle(Y1));xlabel('\omega/π');ylabel('相位')西安电子科技大学电子工程学院02091478陈步华7title('DTFT[y1(n)]的相位');figure(2)subplot(2,1,1);%绘制y2(n)的幅度和相位曲线plot(w/pi,abs(Y2));xlabel('\omega/π');ylabel('幅度')title('DTFT[y2(n)]的幅度');subplot(2,1,2);plot(w/pi,angle(Y2));xlabel('\omega/π');ylabel('相位')title('DTFT[y2(n)]的相位');西安电子科技大学电子工程学院02091478陈步华85、实验思考题分析(1)在分析理想采样序列特性的实验中,采样频率不同时,相应理想采样序列的傅里叶变换频谱的数字频率度量是否都相同?它们所对应的模拟频率是否相同?为什么?答:数字频率度量不相同,但他们所对应的模拟频率相同。由w=Ω*Ts得,采样间隔变化时模拟频率对应的数字频率会有相应的变化,故其度量会有所变化。(2)在卷积定理验证的实验中,如果选用不同的频域采样点数M值,例如,选M=10和M=20,分别做序列的傅里叶变换,求得的结果有无差异?答:有差异,所到的结果点数不同。实验二:用FFT作谱分析1、实验目的(1)进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT的运算结果必然满足DFT的基本性质)。(2)熟悉FFT算法原理和FFT子程序的应用。(3)学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。2、实验步骤西安电子科技大学电子工程学院02091478陈步华9(1)复习DFT的定义、性质和用DFT作谱分析的有关内容。(2)复习FFT算法原理与编程思想,并对照DIT-FFT运算流图和程序框图,读懂本实验提供的FFT子程序。(3)编制信号产生子程序,产生以下典型信号供谱分析用:(4)编写主程序。(5)按实验内容要求,上机实验,并写出实验报告。3、实验结果记录(1)对2中所给出的信号逐个进行谱分析。程序代码如下:N=64;n=0:999;x1n=ones(1,4);x2n=[1,2,3,4,4,3,2,1];x3n=[4,3,2,1,1,2,3,4];x4n=cos(0.25*pi*n);x5n=sin(0.125*pi*n);x6n=cos(8*pi*n)+cos(16*pi*n)+cos(20*pi*n);X1=fft(x1n,N);%x1(n)做N点FFT变换;X2=fft(x2n,N);%x2(n)做N点FFT变换;X3=fft(x3n,N);%x3(n)做N点FFT变换;X4=fft(x4n,N);%x4(n)做N点FFT变换;X5=fft(x5n,N);%x5(n)做N点FFT变换;X6=fft(x6n,N);%x6(n)做N点FFT变换;k=0:N-1;figure(1)%绘制|X1(k)|曲线stem(k,abs(X1));xlabel('k');ylabel('|X1(k)|');1423()()1,03()8470403()3470xnRnnnxnnnnnxnnn456()cos4()sin8()cos8cos16cos20xnnxnnxnttt西安电子科技大学电子工程学院02091478陈步华10title('DFT(x1n)的幅频特性图');figure(2)%绘制|X2(k)|曲线stem(k,abs(X2));xlabel('k');ylabel('