资源描述:
《MATLAB与信号实验-连续LTI系统的时域分析.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、上机实验2连续LTI系统的时域分析一、实验目的(1)熟悉LTI系统在典型激励信号的响应及其特性;(2)熟悉连续LTI系统单位冲激响应的求解方法;(3)重点掌握用卷积计算连续时间系统的零状态响应;(4)熟悉MATLAB相关函数的调用格式及作用;(5)会用MATLAB对系统进行时域分析。二、实验原理连续时间系统可用如下的线性常系数微分方程来描述:其中,,系统的初始条件为,...,系统的响应一般包括两部分,即由当前输入所产生的响应(零状态响应)和由历史输入(初始状态)所生产的响应(零输入响应)。对于低阶系统,一般可以通过解析的方法得到响应,但是对与高阶的系统,手工计算比较困难,这时MATLA
2、B强大的计算功能就比较容易确定系统的各种响应,如冲击响应,阶跃,零状态响应,全响应等。1、直接求解法涉及到的MATLAB函数有:impulse(冲击响应)、step(阶跃)、roots(零状态下响应)、lsim(零状态响应)等。在MATLAB中,要以系统向量的形式输入系统的微分方程,因此在使用前必须对系统的微分方程进行变换,得到其传递函数。其分别用向量a,b表示分母多项式和分子多项式的系数(按照s的降幂排列)。2、卷积计算法跟据系统的单位冲激响应,里用卷积计算的方法,也可以计算任意输入状态下系统的零状态响应。设一个线性零状态系统,已知系统的单位冲激响应为h(t),当系统的激励信号为f(
3、t)时,系统的零状态响应为:也可简记为由于计算机采用的数值计算,因此系统的零状态响应也可以用离散序列卷积和近似为式中、和分别对应以T为时间间隔对连续时间信号、和进行采样得到的离散序列。三、涉及的MATLAB函数1、impulse函数功能:计算并画出系统的冲激函数调用格式:impulse(sys):其中sys可以是利用命令tf,zpk或ss建立的系统函数。Impulse(sys,t):计算并画出系统在向量t定义的时间内的冲激响应。Y=impulse(sys,t):保存系统的输出值。2.step函数功能:计算并画出系统的阶跃响应曲线调用格式:Step(sys):其中sys可以是利用命令tf
4、,zpk或ss建立的系统函数。step(sys,t):计算并画出系统在向量t定义的时间内的阶跃响应。3.Isim函数功能:计算并画出系统在任意输入下的零状态响应调用格式:Isimlism(sys,t)其中sys可以是利用命令tf,zpk或ss建立的系统函数,x是系统的输入,t定义的是时间范围;Lsimlism(sys,x,t,zi):计算系统在任意输入的零状态下的全响应,sys必须是状态空间形式的系统函数,zi是系统的初始状态。4:roots函数功能:计算其次多项式的根。调用格式:r=roots(b):计算多项式b的根,r为多项式的根.四、实验内容与方法1.验证性实验(1)求系统y(2
5、)(t)+6y(1)(t)+8y(t)=3x(1)(t)+9x(t)的冲击响应和阶跃响应。MATLAB程序:%求系统的冲激响应b=[39];a=[168];sys=tf(b,a);t=0:0.1:10;y=impulse(sys,t);plot(t,y);xlabel('时间');ylabel('y(t)');tiltle('单位冲响应');系统的冲激响应如图所示。MATLAB程序:%求系统的阶跃响应a=[039];b=[168];sys=tf(a,b,0);t=0:0.1:10;y=step(sys,t);plot(t,y);xlabel('时间(t)');ylabel('y(t)'
6、);title('单位阶跃响应');(2)求系统y(2)(t)+y(t)=costU(t),y(0+)=y(1)(0+)=0的全响应。Matlab程序:%求系统的正弦激励下的零状态响应a=[001];b=[101];sys=tf(a,b,0);t=0:0.1:10;x=cos(t);y=lsim(sys,x,t);plot(t,y);xlabel('时间(t)');ylabel('y(t)');title('零状态响应');系统的零状态响应如图所示。MATLAB程序:%求系统的全响应b=[1];a=[101];[ABCD]=tf2ss(a,b);sys=ss(A,B,C,D);t=0:
7、0.1:10;x=cos(t);zi=[-1,0];y=lsim(sys,x,t,zi);plot(t,y);xlabel('时间(t)');ylabel('y(t)');title('全响应');系统的全响应如图所示。(3)已知某LTI系统的激励为f1=sintU(t),单位冲激响应为h(t)=te-2tU(t),试给出系统的零状态响应yf(t)的数学表达式。Matlab程序:clearall;T=0.1;t=0:T:10;f=3*t*sin