您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 实验一离散时间系统的时域特性分析答案
实验一离散时间系统的时域特性分析一、实验目的线性时不变(LinearTimeInvariant,LTI)离散时间系统在时域中可以通过常系数线性差分方程来描述,脉冲响应序列可以刻画其时域特性。本实验通过使用MATLAB函数研究离散时间系统的时域特性,以加深对离散时间系统的差分方程、脉冲响应和系统的线性和时不变特性的理解。二、基本原理一个离散时间系统是将输入序列变换成输出序列的一种运算。若以T{·}表示这种运算,则一个离散时间系统可由图1-1来表示,即图1.1离散时间系统[]{[]}ykTxk离散时间系统中最重要、最常用的是“线性时不变系统”1.线性系统满足叠加原理的系统称线性系统。即若某一输入是由N个信号的加权和组成的。则输入就是系统对这几个信号中每一个输入的响应的加权和。如果系统在x1[k]和x2[k]输入时的输出分别为y1[k]及y2[k],即y1[k]=T{x1[k]},y2[k]=T{x2(k)}那么当且仅当式(1-2)和(1-3)成立时,该系统是线性的。T{x1[k]+x2[k]}=T{x1[k]}+T{x2[k]}=y1[k]+y2[k](1-2)和T{ax[k]}=aT{[k]}=ay[k](1-3)式中:a、b是任意常数。上述第一个性质称为可加性,第二个性质称为齐次性或比例性。这两个性质合在一起就成为叠加原理,写成T{ax1[k]+bx2[k]}=aT{x1[k]}+bT{x2[k]}=ay1[k]+by2[k](1-4)式中(1-4)对任意常数a和b都成立在证明一个系统是线性系统时,必须证明此系统满足可加性和比例性,而且信号以及任何比例常数都可以是复数。2.时不变系统系统的运算关系T{}在整个运算过程中不随时间的变化(也即不随序列的起点)而变化,这种系统称为时不变系统(或称移不变系统)。这个性质可用以下关系表达:若输入x[k]的输出为y[k],则将输入序列移动任意位后,其输出序列除了跟着移位外,数值以内应该保持不变,即:T{x[k]}=y[k]则:T{x[k-n]}=y[k-n](m为任意整数)满足以上关系的系统就称为时不变系统。3.常系数线性差分方程线性时不变离散系统的输入、输出关系可用以下常系数线性差分方程描述:][][][10jkxikykyNiMjjiba(1-5)当输入][kx为单位脉冲序列时,输出][ky即为系统的单位脉冲响应][kh。当0ai,k=1,2……,N时,][kh是有限长度的,称系统为有限长单位脉冲响应(FiniteImpulseResponse,FIR)系统;反之,则称系统为无限长单位脉冲响应(InfinteImpulseResponse,IIR)系统。三、实验内容及要求考虑如下差分方程描述的两个离散时间系统:系统1:y[k]=0.5x[k]+0.27x[k-1]+0.77x[k-2]系统2:y[k]=0.45x[k]+0.5xx[k-1]+0.45x[k-2]+0.53y[k-1]-0.46y[k-2]输入]256/200cos[]256/20cos[][kkkx0≤k≤299(1)编程求上述两个系统的输出,并分别画出系统的输入与输出波形。(2)编程求上述两个系统的脉冲响应序列,并画出其波形。(3)若系统的初始状态为零,判断系统2是否为时不变的?是否为线性的?(1)解:MATLAB程序如下:n=0:299;clf;n=0:299;x1=cos(20/256*pi*n);x2=cos(200/256*pi*n);x=x1+x2;num1=[0.50.270.77];num2=[0.450.50.45];den1=[100];den2=[1-0.530.46];y1=filter(num1,den1,x1);y2=filter(num1,den1,x2);y=filter(num1,den1,x);yt=y1+y2;y3=filter(num2,den2,x1);y4=filter(num2,den2,x2);yn=filter(num2,den2,x);ytt=y3+y4;subplot(4,1,1);stem(n,x);ylabel('信号幅度');title('输入信号');subplot(4,1,2);stem(n,yt);ylabel('信号幅度');title('输出信号');subplot(4,1,3);stem(n,ytt);ylabel('信号幅度');title('输出信号');(2)解:MATLAB程序如下:N=300;num1=[0.50.270.77];num2=[0.450.50.45];den1=[100];den2=[1-0.530.46];y1=impz(num1,den1,N);subplot(2,1,1);stem(y1);xlabel('时间序列');ylabel('信号幅度');title('输入信号');y1=impz(num1,den1,N);y2=impz(num2,den2,N);050100150200250300-202信号幅度输入信号050100150200250300-505信号幅度输出信号050100150200250300-202信号幅度输出信号subplot(2,1,2);stem(y2);xlabel('时间序列');ylabel('信号幅度');title('输入信号');ⅰ解:MATLAB程序如下:n=0:40;D=5;x=cos(20*pi*n/256)+cos(200*pi*n/256);xd=[zeros(1,D)x];%生成新序列xd=x(n-D),延时D个单位num=[0.450.50.45];den=[1-0.530.46];ic=[00];y=filter(num,den,x,ic);yd=filter(num,den,xd,ic);N=length(y);d=y-yd(1+D:N+D);%求y与yd的差值subplot(3,1,1);stem(n,y);ylabel('信号幅度');title('输出y[n]');grid;subplot(3,1,2);stem(yd(1:length(yd)));ylabel('信号幅度');subplot(3,1,3);stem(n,d);xlabel('时间序号n');ylabel('信号幅度');title('差值信号');grid;05010015020025030000.10.20.30.40.50.60.70.8时间序列信号幅度输入信号050100150200250300-0.4-0.200.20.40.60.81时间序列信号幅度输入信号从上面图形中第三个图形可以知道差值信号为0,所以可以判断系统2是是不变系统。ⅱ解:MATLAB程序如下:n=0:40x1=cos(20*pi*n/256);x2=cos(200*pi*n/256);x=x1+x2;num=[0.450.50.45];den=[1-0.530.46];y1=filter(num,den,x1);%计算出y1(n)y2=filter(num,den,x2);%计算出y2(n)y=filter(num,den,x);%计算出y(n)yt=y1+y2;%y(n)=y1(n)+y2(n)subplot(2,1,1)stem(n,y)ylabel('信号幅度');subplot(2,1,2)stem(n,yt)ylabel('信号幅度')0510152025303540-2-1012信号幅度输出y[n]05101520253035404550-2-1012信号幅度0510152025303540-1-0.500.51时间序号n信号幅度差值信号从上面两个图形对比得出,上面两个图形是完全相同的,可以说明系统2是线性的。0510152025303540-2-1.5-1-0.500.511.52信号幅度0510152025303540-2-1.5-1-0.500.511.52信号幅度
本文标题:实验一离散时间系统的时域特性分析答案
链接地址:https://www.777doc.com/doc-2457881 .html