基于matlab的信号仿真分析的设计___课设说明书内容摘要:

MATLAB 卷积积分法求解系统的零状态响应。 一般的连续时间系统分析有以下几个步骤 : 唐山学院课程实践 8 ① 求解系统的零输入响应。 ② 求解系统的零状态响应。 ③ 求解系统的全响应。 ④ 分析系统的卷积; ⑤ 画出它们的图形。 下面以具体的微分方程为例说明利 用 MATLAB 软件分析系统的具体方法 我们知道, LTI 连续系统可用如下所示的线性常系数微分方程来描述, 例如,对于以下方程 : 39。 39。 39。 39。 39。 39。 39。 39。 39。 39。 39。 39。 3 2 1 0 3 2 1 0( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )a y t a y t a y t a y t b f t b f t b f t b f t      可用 3 2 1 0 3 2 1 0[ , , , ] , [ , , , ] ,a a a a a b b b b b输入函数 ()u f t ,得出它的冲击响应 h ,再根据 LTI 系统的零状态响应 y( t)是激励 u( t)与冲击响应 h( t)的卷积积分。 注意,如果微分方程的左端或右端表达式 中有缺项,则其向量 a 或 b 中的对应元素应为零,不能省略不写,否则出错。 求函数的零状态响应 及初始状态 39。 ( 0 ) ( 0 ) 0zs zsyy。 输入函数 ( ) sin ( 3 * ) c o s( 2 * )f t t t。 建模 先求出系统的冲击响应,写出其特征方程 2 5 4 0   求出其特征根为 p 和 p,及相应的留数 r, r;则冲击响应为 1212() p t p th t r e r e 输入 y( t)可用输入 u( t) 与冲击响应 h( t)的卷积求得。 卷积的计算 连续时间信号 1()ft和 2()ft的卷积运算可用信号的分段求和来实现,即: 如果只求当 t =n( n为整数)时 f (t)的值 f (n ,则上式可得: 39。 39。 39。 39。 ( ) 5 ( ) 4 ( ) 2 ( ) 4 ( )y t y t y t f t f t   1 2 1 2 1 20( ) ( ) * ( ) ( ) ( ) l im ( ) ( )kf t f t f t f t f t d f k f t k            ( ) ( )00( ) ( )NMijijija y t b f t唐山学院课程实践 9 式中的 实际上就是连续时间信号 1()ft和 2()ft经等时间间隔 均匀抽样的离 散序列 1()fk 和 2()fk 的卷积和。 当 足够小时, ()fn就是卷积积分的结果 ——连续时间信号 f (t)的较好数值近似。 下面是利用 MATLAB 实现连续信号卷积的通用程序 conv(),该程序在计算出卷积积分的数值近似的同时,还绘制出 f (t)的时域波形图。 应注意,程序中是如何设定 f (t)的时间长度。 MATLAB程序: f1=input(39。 输入函数 f1=39。 )。 f2=input(39。 输入函数 f2=39。 )。 dt=input(39。 dt=39。 )。 y=conv(f1,f2)。 plot(dt*([1:length(y)]1),y)。 grid on。 title(39。 卷积 39。 )。 xlabel(39。 t39。 )。 ylabel(39。 f1*f239。 ) 程序运行结果: 输入以下数据: f1=sin(3*t) f2=cos(3*t+2) dt= 得出图形如图 3—5所示: 12( ) [( ) ]k f k f n k    1 2 1 2( ) ( ) ( ) ( ) [ ( ) ]kkf n f k f t k f k f n k                0 2 4 6 8 10 12 3 0 0 2 0 0 1 0 00100200300400卷积tf1*f2图 3— 5 唐山学院课程实践 10 在 MATLAB 中,对于连续 LTI 系统的冲激响 应和阶跃响应的数值解,可分别用控制系统工具箱提供的函数 impulse 和 step 来求解。 其语句格式分别为: y = impulse(sys,t)。 y = step(sys,t)。 其中, t 表示计算机系统响应的时间抽样点向量, sys 表示 LTI 系统模型。 下面我们用几个例子来验证以上知识点 ( 1)求零输入相应:求齐次微分方程在给定初始条件下的零输入相应,y39。 39。 (t)+4y(t)=0,y(0_)=1,y39。 (0_)=1。 解 在 MATLAB 命令窗口键入如下语句: eq=39。 D2y+4*y=039。 con=39。 y(0)=1,Dy(0)=139。 y=dsolve(eq,con)。 y=simplify(y) y = 1/2*sin(2*t)+cos(2*t) ezplot(y),grid 零输入响应图如图 3—6 所示 图 3—6 ( 2)求零状态响应:已知系统 y39。 39。 (t)+4y(t)=x(t),输入 x(t)为 cos(t)u(t),求系统的零状态响应。 解 在 MATLAB 命令窗口键入如下语句 eq=39。 D2y+4*y=cos(t)*heaviside(t)39。 con=39。 y()=0,Dy()=039。 y=dsolve(eq,con)。 y=simplify(y) y = 唐山学院课程实践 11 1/3*heaviside(t)*(cos(t)cos(2*t)) ezplot(y,[0,10]) 零状态响应图如图 3—7 所示 图 3—7 ( 3 ) 求冲 击响 应 和阶 跃 响应 : 已知 某 LTI 系 统 的 微分 方程 为y’’(t)+2y’(t)+32y(t)=f’(t)+16f”(t),试用 MATLAB命令绘出 0≦ t≦ 4范围内系统的冲激响应 h( t)和阶跃响应 g( t)。 解 在 MATLAB 命令窗口 键入如下语句 t=0::4。 sys=tf([1,16],[1,2,32])。 h=impulse(sys,t)。 g=step(sys,t)。 subplot(211) plot(t,h),grid on xlabel(39。 Time(sec)39。 ),ylabel(39。 h(t)39。 ) title(39。 冲激响应 39。 ) 冲激响应图如图 3—8( 1)所示 唐山学院课程实践 12 图 3—8( 1) subplot(212) plot(t,g),grid on xlabel(39。 Time(sec)39。 ),ylabel(39。 g(t)39。 ) title(39。 阶跃响应 39。 ) 阶跃响应图如图 3—8( 2)所示 图 3—8( 2) 唐山学院课程实践 13 ( 4)求卷积:求信号 f1(t)=t 和 f2(t)=sin(t)的卷积的解。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。