连续时间LTI系统的时域分析报告_第1页
连续时间LTI系统的时域分析报告_第2页
连续时间LTI系统的时域分析报告_第3页
连续时间LTI系统的时域分析报告_第4页
连续时间LTI系统的时域分析报告_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、、课程设计题目:基于 MATLAB的连续时间 LTI 系统的时域分析、基本要求: 掌握连续时不变信号处理的基本概念、基本理论和基本方法; 学会 MATLAB 的使用,掌握 MATLAB 的程序设计方法; 学会用 MATLAB 对信号进行分析和处理; 编程实现卷积积分或卷积和,零输入响应,零状态响应; 撰写课程设计论文,用信号处理基本理论分析结果。三、设计方法与步骤 :一般的连续时间系统分析有以下几个步骤 : 求解系统的零输入响应 ; 求解系统的零状态响应 ; 求解系统的全响应 ; 分析系统的卷积; 画出它们 的图形 . 下面以具体的微分方程为例说明利用 MATLAB软 件分析系统的具体方 法.

2、1连续时间系统的零输入响应描述 n 阶线性时不变( LTI )连续系统的微分方程为: a dn y a dn 1y a1 dtn a2 dtn 1 已知 y 及各阶导数的初始值为a2dydmuan dt an 1y b1 dtmy(0),y (1) (0) , y(n-1) (0) ,求系统的零输入响应。bm ddut bm 1udt建模当 LIT 系统的输入为零时, 其零输入响应为微分方程的其次解 (即令微分方 程的等号右端为零),其形式为(设特征根均为单根)其中 p1,p2, ,pn 是特征方程 a1n+a2n-1+ +an +na=0 的根,它们可以 用 root(a) 语句求得。各系数

3、 由 y 及其各阶导数的初始值来确定。对此有写成矩阵形式为 : P1n-1C1+ P2n-1C2+ P nn-1Cn=Dn-1y0其解为: C=VY0即 V?C=Y0式中V为德蒙矩阵,在 matlab 的特殊矩阵库中有 vander 。 以下面式子为例:y(0_)=1,y(0_)=5 ;MATLAB程序:a=input( 输入分母系数 a=a1,a2,.=);n=length(a)-1;Y0=input( 输入初始条件向量 Y0=y0,Dy0,D2y0,.=); p=roots(a);V=rot90(vander(p);c=VY0;dt=input(dt=);te=input(te=); t=

4、0:dt:te;y=zeros(1,length(t);for k=1:n y=y+c(k)*exp(p(k)*t);endplot(t,y);gridxlabel(t) ;ylabel(y);title( 零输入响应 );程序运行结果: 用这个通用程序来解一个三阶系统,运行此程序并输入 a=1,5,4 Y0=1,5 dt=0.01 te=6结果如下图: 根据图可以分析零输入响应, 它的起始值与输入函数无关, 只与 它的初始状态值有关,其起始值等于 y(0_) 的值。随着时间的推移,最后零输入 响应的值无限的趋近于 0。零输入响应2卷积的计算连续时间信号 f1(t) 和 f2(t) 的卷积运算

5、可用信号的分段求和来实现,即:f (t) f1(t)* f2(t)f1(t)f2(t )d lim0f1(k ) f2(t k )0k如果只求当 t n (n为整数)时 f (t)的值 f (n ) ,则上式可得:f (n )f1(k ) f2(t k )f1(k ) f2(n k) kk式中的f1(k )f2(n k) 实际上就是连续时间信号 f1(t)和 f2 (t)经等时间间k隔 均匀抽样的离散序列 f1( k) 和 f2( k) 的卷积和。当 足够小时, f(n ) 就是 卷积积分的结果连续时间信号 f (t)的较好数值近似。建模下面是利用 MATLAB 实现连续信号卷积的通用程序 c

6、onv(),该程序在计算出 卷积积分的数值近似的同时,还绘制出 f (t)的时域波形图。应注意,程序中是如 何设定f (t)的时间长度。MATLAB 程序:f1=input( 输入函数 f1=);f2=input( 输入函数 f2=);dt=input(dt=); y=conv(f1,f2); plot(dt*(1:length(y)-1),y);grid on; title( 卷积 );xlabel(t); ylabel(f1*f2)程序运行结果:输入以下数据:f1=sin(3*t) f2=cos(3*t+2) dt=0.01得出图形如下:f*2f*16 t3连续时间系统零状态响应的数值计算

7、我们知道, LTI 连续系统可用如下所示的线性常系数微分方程来描述, NMaiy(i)(t)bj f (j)(t)i 0 j 0例如,对于以下方程 :a3 y (t ) a2y(t) a1y(t) a0y(t) b3f (t) b2f (t) b1f (t) b0f (t) 可用a a3,a2,a1,a0,b b3, b2 , b1 ,b0 ,输入函数 u f (t) ,得出它的冲击响 应h ,再根据 LTI 系统的零状态响应 y( t )是激励 u(t )与冲击响应 h(t)的 卷积积分。注意,如果微分方程的左端或右端表达式中有缺项, 则其向量 a 或 b 中的对应元 素应为零,不能省略不写

8、,否则出错。求函数的零状态响应 及初始状态 yzs(0 ) yzs(0 ) 0 。输入函数 f (t) sin(3* t) cos(2* t) 建模先求出系统的冲击响应,写出其特征方程2 5 4 0求出其特征根为 p 和 p,及相应的留数 r ,r ;则冲击响应为h(t) r1ep1t r2ep2t输入 y(t )可用输入 u( t )与冲击响应 h(t )的卷积求得。 MATLAB 程序:a=input( 输入分母系数 a=a1,a2,.=);b=input( 输入输入信号系数 b=b1,b2,.=); dt=input(dt=);te=input(te=);t=0:dt:te;u=inpu

9、t( 输入函数 u=);te=t(end);dt=te/(length(t)-1);r,p,k=residue(b,a); h=r(1)*exp(p(1)*t)+r(2)*exp(p(1)*t); subplot(2,1,1),plot(t,h);grid title( 冲击函数 );y=conv(u,h)*dt; subplot(2,1,2), plot(t,y(1:length(t);grid title( 零状态响应 );程序运行结果执行这个程序,取 a=1,5,4 b=2,4 dt=0.01 te=6u sin(3* t) cos(2* t)得出图形如下:由于初始状态为零,所以零状态的

10、起始值也为零,即 h(t)包含了连续系统的固 有特性,与系统的输入无关。 只要知道了系统的冲激响应, 即可求得系统在不同4连续时间系统的全响应计算上面通过对 LTI 系统函数的描述,我们可以得知:如果在系统的初始状态不 为零,在激励 f (t )的作用下, LTI 系统的响应称为全响应,它是零输入响应和 零状态响应之和,即y(t) yzi(t) yzs(t) 故可先求出零输入响应和零状态响应, 再把两者相加, 得到全响应。 但简单的相 加可能由于零输入与零状态的矩阵不同而不能的出正确的结果, 这就需要对矩阵 进行截取,使它们的阶数相同。例如,对于以下方程:初始值为: y(0_)=1,y(0_)

11、=5 ; 输入函数为: f (t) sin(3* t) cos(2* t ) 求它的全响应。建模先根据零输入响应的求法,得出零输入响应 y1(t )。再根据零状态响应的求 法,得出零状态响应 y2(t )。最后,全响应 y等于零输入响应 y1(t )加上零状 态响应 y2(t ),得出全响应。MATLAB 程序:a=input( 输入分母系数 a=a1,a2,.=);n=length(a)-1;Y0=input( 输入初始条件向量 Y0=y0,Dy0,D2y0,.=); b=input( 输入输入信号系数 b=b1,b2,.=);u=input( 输入函数 u=); dt=input(dt=)

12、;te=input(te=);t=0:dt:te; p=roots(a);V=rot90(vander(p);c=VY0;y1=zeros(1,length(t);for k=1:n y1=y1+c(k)*exp(p(k)*t);endte=t(end);dt=te/(length(t)-1);r,p,k=residue(b,a); h=r(1)*exp(p(1)*t)+r(2)*exp(p(1)*t);y2=conv(u,h)*dt; y=y1(1:length(t)+y2(1:length(t);figure(1); subplot(3,1,1),plot(t,y1),gridxlabel

13、(t); ylabel(y1);title( 零输入响应 ); subplot(3,1,2),plot(t,y2(1:length(t);grid xlabel(t);ylabel(y2);title( 零状态响应 );subplot(3,1,3),plot(t,y),gridxlabel(t); ylabel(y);title(全响应响应 );程序运行结果执行程序,取 a=1,5,4 Y0=1,5 b=1,2,4 u=sin(3*t)+cos(2*t) dt=0.01 te=6y1,在零状态响应的对应时刻结果如下图:在零输入响应中任一时刻取值四、调试总结:在 matlab 语言中,用 sub

14、plot 对图形进行分块,使几幅图同时显示在一个图 像框里。 plot 用来绘制连续的函数图形。 cnov 用来求卷积,再就是利用语句对不同 阶的矩阵进行截取, 使之相加, 这点很重要, 因为简单的零输入响应与零状态响应相加, 可能由于阶数不同而无法得出结果,所以一定要使两者的阶数相同。五、设计总结:在老师的帮助下我顺利的完成了这个课程设计, 通过这次连续时间系统的时 域分析课程设计, 让我了解了关于 MATLAB软件在连续信号时域处理方面的应用, 又一次学习了 MATLAB软件的使用和程序的设计, MATLAB的仿真使我更加深入的 了解了信号时域处理的过程 ,对我对数字信号处理的理解加深了一步。 MATLAB 拥有强大的数据仿真能力,在生产和研究中起着非常大的作用。在设计过程中, 通过查阅大量的资料, 我选择用矩阵计算的方法来求连续时 间系统的零输入响应,卷积则是利用 matlab 中的 conv 语句求得,再根据 LTI 系统的零状态响应 y(t )是激励 u(t )与冲击响应 h(t )的卷积积分,求得零 状态响应,全响应则为零输入响应与零状态响应之和。MATLAB语言是一种广泛应用于工程计算及数值分析 领域的新型高级语言, Matlab 功能强大、简单易学、编程效率高,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论