您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 数字信号处理实验一信号、系统及系统响应
实用文档西安郵電學院数字信号处理课内实验报告书系部名称:计算机系学生姓名:常成娟专业名称:电子信息科学与技术班级:电科0603学号:04062095(22号)时间:2008-11-23实用文档实验一:信号、系统及系统响应一.实验目的(1)熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。(2)熟悉时域离散系统的时域特性。(3)利用卷积方法观察分析系统的时域特性。(4)掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。二.实验原理与方法采样是连续信号数字处理的第一个关键环节。对一个连续信号xa(t)进行理想采样的过程可用(10.3.1)式表示。(10.3.1)其中(t)为xa(t)的理想采样,p(t)为周期冲激脉冲,即(10.3.2)(t)的傅里叶变换(jΩ)为(10.3.3)将(10.3.2)式代入(10.3.1)式并进行傅里叶变换,(10.3.4)式中的xa(nT)就是采样后得到的序列x(n),即x(n)的傅里叶变换为(10.3.5)比较(10.3.5)和(10.3.4)可知^()()()aaxtxtpt^x()()npttnT^x^aX1()[()]aasmXjXjmT^()[()()]()()()jtaanjtanjtanXjxttnTedtxttnTedtxnTedt()()axnxnT()()jjnnXexne实用文档(10.3.6)在数字计算机上观察分析各种序列的频域特性,通常对X(ejω)在[0,2π]上进行M点采样来观察分析。对长度为N的有限长序列x(n),有(10.3.7)其中一个时域离散线性非移变系统的输入/输出关系为(10.3.8)上述卷积运算也可以在频域实现^()()jaTXjXe10()()2,0,1,,1kNjnjknkXexmekkMM()()()()()mynxnhnxmhnm()()()jjjYeXeHe开始调用信号产生子程序,产生信号序列x(n)调用序列傅氏变换数值计算子程序,求X(e)两次调用绘图子程序,分别绘制x(n),X(e)图形jω改变信号序列否?调用系统单位脉冲响应序列产生子程序,求h(n)调用傅氏变换数值计算子程序,求H(e)jω两次调用绘图子程序,分别绘制h(n),H(e)图形jω改变h(n)否?调用卷积子程序,求y(n)=x(n)*h(n)调用傅氏变换数值计算子程序,求Y(ek)jω两次调用绘图子程序,分别绘制y(n),Y(ek)图形jω结束YYNNkkkjωk实用文档10.80.60.40.200100200300400500xa(jf)f/Hz图10.3.1实验一的主程序框图三.实验内容及步骤(1)认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理与方法。(2)编制实验用主程序及相应子程序。①信号产生子程序,用于产生实验中要用到的下列信号序列:xa(t)=Ae-atsin(Ω0t)u(t)进行采样,可得到采样序列xa(n)=xa(nT)=Ae-anTsin(Ω0nT)u(n),0≤n50其中A为幅度因子,a为衰减因子,Ω0是模拟角频率,T为采样间隔。这些参数都要在实验过程中由键盘输入,图10.3.2xa(t)的幅频特性曲线产生不同的xa(t)和xa(n)。b.单位脉冲序列:xb(n)=δ(n)c.矩形序列:xc(n)=RN(n),N=10②系统单位脉冲响应序列产生子程序。本实验要用到两种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)(3)调通并运行实验程序,完成下述实验内容:①分析采样序列的特性。a.取采样频率fs=1kHz,即T=1ms。b.改变采样频率,fs=300Hz,观察|X(ejω)|的变化,并做记录(打印曲线);进一步降低采样频率,fs=200Hz,观察频谱混叠是否明显存在,说明原因,并记录(打印)这时的|X(ejω)|曲线。源程序:A=444.128;a=50*sqrt(2)*pi;w=50*sqrt(2)*pi;n=0:49;fs=1000;x=A*exp((-a)*n/fs).*sin(w*n/fs);k=-200:200;w=(pi/100)*k;实用文档y=x*(exp(-j*pi/100)).^(n'*k);%y=fft(x)subplot(1,2,1);stem(n,x);axis([0,50,-50,150]);xlabel('n');ylabel('Xa(n)');title('fs=1000');subplot(1,2,2);plot(w/pi,abs(y))axis([-2,2,0,1000]);xlabel('w/pi');ylabel('/Xa(ejw)/');A=444.128;a=50*sqrt(2)*pi;w=50*sqrt(2)*pi;n=0:49;fs=500;x=A*exp((-a)*n/fs).*sin(w*n/fs);k=-200:200;实用文档w=(pi/100)*k;y=x*(exp(-j*pi/100)).^(n'*k);%y=fft(x)subplot(1,2,1);stem(n,x);axis([0,50,-50,150]);xlabel('n');ylabel('Xa(n)');title('fs=500');subplot(1,2,2);plot(w/pi,abs(y))axis([-2,2,0,500]);xlabel('w/pi');ylabel('/Xa(ejw)/');A=444.128;a=50*sqrt(2)*pi;w=50*sqrt(2)*pi;n=0:49;fs=200;x=A*exp((-a)*n/fs).*sin(w*n/fs);实用文档k=-200:200;w=(pi/100)*k;y=x*(exp(-j*pi/100)).^(n'*k);%y=fft(x)subplot(1,2,1);stem(n,x);axis([0,50,-50,150]);xlabel('n');ylabel('Xa(n)');title('fs=200');subplot(1,2,2);plot(w/pi,abs(y))axis([-2,2,80,180]);xlabel('w/pi');ylabel('/Xa(ejw)/');结果分析:时域采样定理要求采样频率大于折叠频率fs/2=500Hz,频谱才不至于出现混叠。从仿真图中可以看出当fs=200Hz时,频谱出现严重失真(出现混叠);而当fs=1000Hz时,频谱没有失真;fs=500Hz时,频谱刚好处于临界状态。②时域离散信号、系统和系统响应分析。实用文档a.观察信号xb(n)和系统hb(n)的时域和频域特性;利用线性卷积求信号xb(n)通过系统hb(n)的响应y(n),比较所求响应y(n)和hb(n)的时域及频域特性,注意它们之间有无差别,绘图说明,并用所学理论解释所得结果。原程序:函数调用部分:function[x,n]=impesq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];n=0:3;xb=impesq(0,0,3);Hb=impesq(0,0,3)+2.5*impesq(1,0,3)+2.5*impesq(2,0,3)+impesq(3,0,3);k=-200:200;w=(pi/100)*kaa=xb*(exp(-j*pi/100)).^(n'*k);bb=Hb*(exp(-j*pi/100)).^(n'*k);n=0:3subplot(3,2,1);stem(n,xb);axis([-2202]);xlabel('n');ylabel('xb(n)');title('xb(n)');subplot(3,2,2);plot(w/pi,abs(aa));axis([-2202]);xlabel('w/pi');ylabel('xb(|(jw)|');title('[xb(ejw)]');subplot(3,2,3);stem(n,Hb);axis([0403]);xlabel('n');ylabel('Hb');title('Hb(n)');subplot(3,2,4);plot(w/pi,abs(bb));axis([-2208]);xlabel('w/pi');ylabel('Hb(|(jw)|');title('[Hb(ejw)]');n=0:6y=conv(xb,Hb);实用文档yy=y*(exp(-j*pi/100)).^(n'*k);subplot(3,2,5);stem(n,y);axis([0703]);xlabel('n');ylabel('y(n)');title('xb*Hb');subplot(3,2,6);plot(w/pi,abs(yy));axis([-2208]);xlabel('w/pi');ylabel('|Y(jw)|');title('[Y(ejw)]');结果分析:单位冲击序列和任意序列卷积等于任意序列,从仿真图中可以直接看出卷积后的频谱Y/(ejw)/和任意序列的频谱Hb/(ejw)/相同。b.观察系统ha(n)对信号xc(n)的响应特性。原程序:函数调用部分:function[x,n]=stepseq(n0,n1,n2)实用文档n=[n1:n2];x=[(n-n0)=0];n=0:18;xc=stepseq(0,0,9);Ha=stepseq(0,0,9);y=conv(xc,Ha);subplot(2,2,1);stem(n,y);axis([020010]);xlabel('n');ylabel('y(n)');title('xc(n)*Ha(n)');k=-300:300;W=(pi/100)*k;Y=y*(exp(-j*pi/100)).^(n'*k)subplot(2,2,2);plot(W/pi,Y);axis([-220150]);xlabel('W/pi');ylabel('Y(jw)');title('FT[xc(n)*Ha(n)]');n=0:13;xc1=stepseq(0,0,4);y=conv(xc1,Ha);subplot(2,2,3);stem(n,y);axis([015010]);xlabel('n');ylabel('y(n)');title('xc1(n)*Ha(n)');k=-300:300;W=(pi/100)*k;Y=y*(exp(-j*pi/100)).^(n'*k)subplot(2,2,4);plot(W/pi,Y);axis([-22060]);xlabel('W/pi');ylabel('Y(jw)');实用文档title('FT[xc1(n)*Ha(n)]');结果分析:长度为M的序列X1(n)和长度为N的序列X2(n)做线性卷积后其长度L=M+N-1.当Xc(n)和Ha(n)的长度都为10,作线性卷积后长度为10+10-1=19,和左上角的仿真结果一致;当Xc(n)和Ha(n)的长度分别为5和10时,作线性卷积后的长度为14,仿真图如左下。和理论相符合。③卷积定理的验证。原程序:Impesq为调用函数,见上文。n=0:3;hb=impesq(0,0,3)+2.5*impesq(1,0,3)+2.5*impesq(2,0,3)+impesq(3,0,3);k=-200:200;W=(pi/100)*k;m=h
本文标题:数字信号处理实验一信号、系统及系统响应
链接地址:https://www.777doc.com/doc-5016691 .html