您好,欢迎访问三七文档
云南大学信息学院数字信号处理实验报告1实验二离散时间系统的时域分析实验室名称:实验时间:姓名:学号:专业:指导教师:成绩教师签名:年月日一、实验目的1.利用MATLAB仿真简单的离散时间系统,研究其时域特性;2.对线性时不变系统进行重点分析研究,掌握其特性。二、实验内容2.1对M=2,运行上述程序,生成输入x[n]=s1[n]+s2[n]的输出信号。输入x[n]的哪个分量被该离散时间系统抑制?2.2若线性时不变系统由y[n]=0.5(x[n]+x[n-1])变成y[n]=0.5(x[n]-x[n-1]),对输入x[n]=s1[n]+s2[n]的影响是什么?2.4修改程序P2.1,用一个长度为101、最低频率为0、最高频率为0.5的扫频正弦信号作为输入信号(见程序P1.7),计算其输出信号。你能用该系统对扫频信号的响应来解释习题Q2.1和习题Q2.2的结果吗?2.7运行程序P2.3,对由加权输入得到的y[n]与在相同权系数下输出y1[n]和y2[n]相加得到的yt[n]进行比较,这两个序列是否相等?该系统是线性系统吗?2.12运行程序P2.4并比较输出序列y[n]和yd[n-10]。这两个系列之间有什么关系?该系统是时不变系统吗?2.19运行程序P2.5,生成式(2.15)所给离散时间系统的冲激响应。2.20修改程序P2.5,产生如下因果线性时不变系统的冲激响应的前45个样本:]3[62.0]2[46.0]1[71.0][nynynyny]3[002.0]2[35.0]1[45.0][9.0nxnxnxnx2.23运行程序P2.6,计算输出序列y[n]和y2[n]以及差值信号d[n]。Y[n]和y2[n]相等吗?2.28运行程序P2.7,对序列h[n]和x[n]求卷积,生成y[n],并用滤波器h[n]对输入x[n]滤波,求得y1[n]。y[n]和y1[n]有差别吗?为什么要使用对x[n]补零后得到的x1[n]作为输入来产生y1[n]?三、实验器材及软件1.微型计算机1台2.MATLAB7.0软件云南大学信息学院数字信号处理实验报告2四、实验原理1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为])2[]1[][(31][ynxnxnxn归纳上式可得10][1][yMkknxMn此式表示了一个因果M点平滑FIR滤波器。2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列x1[n]和x2[n]的响应,则输入][][][21nxnxnx的输出响应为][][][21nynyny则系统称为线性系统。3.对于离散时不变系统,若y1[n]是x1[n]的响应,则输入x[n]=x1[n-n0]的输出响应为y[n]=y1[n-n0]则称系统为时不变系统。五、实验步骤2.1首先利用MATLAB产生一个高频正弦信号和一个低频正弦信号,利用两个信号生成一个输入信号,接着利用filter函数生成输出信号,最后利用plot函数画出4个信号,再对输出信号进行分析。2.2在2.1的基础上编写num=ones[1-1],运行程序得出结论。2.4分别用扫频信号通过2.1、2.2的系统,进行比较分析。2.7分别计算出y1[n]和y2[n],得到yt[n];再利用filter函数求得y[n],计算差值输出,比较y[n]和yt[n]。2.20根据impz函数的调用方式,得到num=[0.9-0.450.350.002]den=[10.71-0.46-0.62],再调用impz函数,画出图像。2.23首先产生序列x[n],把它作为四阶系统的输入,生成y[n]。然后将同样的输入x[n]应用到第一级得到y1[n]。接着用相同的方法得到y2[n]。最后求得两者的差,并画出图像。2.28分别用conv函数和filter函数求得输出,进行图像比较。六、实验记录(数据、图表、波形、程序等)云南大学信息学院数字信号处理实验报告32.1对M=2,运行上述程序,生成输入x[n]=s1[n]+s2[n]的输出信号。输入x[n]的哪个分量被该离散时间系统抑制?%ProgramP2_1clf;n=0:100;s1=cos(2*pi*0.05*n);s2=cos(2*pi*0.47*n);x=s1+s2;M=input('滤波器所需的长度=');num=ones(1,M);y=filter(num,1,x)/M;subplot(2,2,1);plot(n,s1);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#1');subplot(2,2,2);plot(n,s2);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#2');subplot(2,2,3);plot(n,x);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输入信号');subplot(2,2,4);plot(n,y);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输出信号');axis;0102030405060708090100-2-1.5-1-0.500.511.52时间序号n振幅信号#10102030405060708090100-2-1.5-1-0.500.511.52时间序号n振幅信号#20102030405060708090100-2-1.5-1-0.500.511.52时间序号n振幅输入信号0102030405060708090100-2-1.5-1-0.500.511.52时间序号n振幅输出信号云南大学信息学院数字信号处理实验报告42.2若线性时不变系统由y[n]=0.5(x[n]+x[n-1])变成y[n]=0.5(x[n]-x[n-1]),对输入x[n]=s1[n]+s2[n]的影响是什么?在M=2的基础上,线性时不变系统由y[n]=0.5(x[n]+x[n-1])变成y[n]=0.5(x[n]-x[n-1]),则在MATLAB上,程序P2.1更改:num可以直接表示为num=[1-1],通用的表达式为:num=[1-ones(1,M-1)]。得到图像为050100-2-1012时间序号n振幅信号#1050100-2-1012时间序号n振幅信号#2050100-2-1012时间序号n振幅输入信号050100-2-1012时间序号n振幅输出信号2.4修改程序P2.1,用一个长度为101、最低频率为0、最高频率为0.5的扫频正弦信号作为输入信号(见程序P1.7),计算其输出信号。你能用该系统对扫频信号的响应来解释习题Q2.1和习题Q2.2的结果吗?%扫频信号通过2.1系统:clf;n=0:100;s1=cos(2*pi*0.05*n);s2=cos(2*pi*0.47*n);a=pi/2/100;b=0;arg=a*n.*n+b*n;x=cos(arg);M=input('滤波器所需的长度=');num=ones(1,M);y=filter(num,1,x)/M;subplot(2,2,1);plot(n,s1);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#1');subplot(2,2,2);plot(n,s2);云南大学信息学院数字信号处理实验报告5axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#2');subplot(2,2,3);plot(n,x);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输入信号');subplot(2,2,4);plot(n,y);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输出信号');axis;050100-2-1012时间序号n振幅信号#1050100-2-1012时间序号n振幅信号#2050100-2-1012时间序号n振幅输入信号050100-2-1012时间序号n振幅输出信号%扫频信号通过2.2系统:clf;n=0:100;s1=cos(2*pi*0.05*n);s2=cos(2*pi*0.47*n);a=pi/2/100;b=0;arg=a*n.*n+b*n;x=cos(arg);M=input('滤波器所需的长度=');num=[1-1];y=filter(num,1,x)/M;subplot(2,2,1);云南大学信息学院数字信号处理实验报告6plot(n,s1);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#1');subplot(2,2,2);plot(n,s2);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#2');subplot(2,2,3);plot(n,x);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输入信号');subplot(2,2,4);plot(n,y);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输出信号');axis;050100-2-1012时间序号n振幅信号#1050100-2-1012时间序号n振幅信号#2050100-2-1012时间序号n振幅输入信号050100-2-1012时间序号n振幅输出信号2.7运行程序P2.3,对由加权输入得到的y[n]与在相同权系数下输出y1[n]和y2[n]相加得到的yt[n]进行比较,这两个序列是否相等?该系统是线性系统吗?%ProgramP2_3clf;n=0:40;a=2;b=-3;x1=cos(2*pi*0.1*n);x2=cos(2*pi*0.4*n);x=a*x1+b*x2;云南大学信息学院数字信号处理实验报告7num=[2.24032.49082.2403];den=[1-0.40.75];ic=[00];y1=filter(num,den,x1,ic);y2=filter(num,den,x2,ic);y=filter(num,den,x,ic);yt=a*y1+b*y2;d=y-yt;subplot(3,1,1)stem(n,y);ylabel('振幅');title('加权输入:a\cdotx_{1}[n]+b\cdotx_{2}[n]的输出');subplot(3,1,2)stem(n,yt);ylabel('振幅');title('加权输出:a\cdoty_{1}[n]+b\cdoty_{2}[n]');subplot(3,1,3)stem(n,d);xlabel('时间序号n');ylabel('振幅');title('差信号');0510152025303540-50050振幅加权输入:ax1[n]+bx2[n]的输出0510152025303540-50050振幅加权输出:ay1[n]+by2[n]0510152025303540-505x10-15时间序号n振幅差信号2.12运行程序P2.4并比较输出序列y[n]和yd[n-10]。这两个系列之间有什么关系?该系统是时不变系统吗?%ProgramP2_4clf;n=0:40;D=10;a=3.0;b=-2;x=a*cos(2*pi*0.1*n)+b*cos(2*pi*0.4*n);xd=[zeros(1,D)x];num=[2.24032.49082.2403
本文标题:数字信号处理实验二
链接地址:https://www.777doc.com/doc-2387709 .html