收藏 分享(赏)

实验四 线性系统时域响应分析.doc

上传人:czsj190 文档编号:8078398 上传时间:2019-06-07 格式:DOC 页数:11 大小:201.50KB
下载 相关 举报
实验四  线性系统时域响应分析.doc_第1页
第1页 / 共11页
实验四  线性系统时域响应分析.doc_第2页
第2页 / 共11页
实验四  线性系统时域响应分析.doc_第3页
第3页 / 共11页
实验四  线性系统时域响应分析.doc_第4页
第4页 / 共11页
实验四  线性系统时域响应分析.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、实验四 线性系统时域响应分析一、实验目的1熟练掌握 step( )函数和 impulse( )函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。2通过响应曲线观测特征参量 和 对二阶系统性能的影响。n3熟练掌握系统的动态性能指标在 MATLAB 中的求取方法。二、基础知识及 MATLAB 函数(一)基础知识时域分析法直接在时间域中对系统进行分析,可以提供系统时间响应的全部信息,具有直观、准确的特点。为了研究控制系统的时域特性,经常采用瞬态响应(如阶跃响应、脉冲响应和斜坡响应) 。本次实验从分析系统的性能指标出发,给出了在 MATLAB 环境下获取系统时域响应和分析系统

2、的动态性能和稳态性能的方法。用 MATLAB 求系统的瞬态响应时,将传递函数的分子、分母多项式的系数分别以 s 的降幂排列写为两个数组 num、den。由于控制系统分子的阶次 m 一般小于其分母的阶次 n,所以 num 中的数组元素与分子多项式系数之间自右向左逐次对齐,不足部分用零补齐,缺项系数也用零补上。1 用 MATLAB 求控制系统的瞬态响应1) 阶跃响应求系统阶跃响应的指令有:step(num,den) 时间向量 t 的范围由软件自动设定,阶跃响应曲线随即绘出 step(num,den,t) 时间向量 t 的范围可以由人工给定(例如t=0:0.1:10)y,x=step(num,den

3、) 返回变量 y 为输出向量,x 为状态向量y, t ,x=step(num,den,t) 向量 t 表示脉冲响应进行计算的时间在 MATLAB 程序中,先定义 num,den 数组,并调用上述指令,即可生成单位阶跃输入信号下的阶跃响应曲线图。考虑下列系统: 254)(2ssRC该系统可以表示为两个数组,每一个数组由相应的多项式系数组成,并且以 s的降幂排列。则 MATLAB 的调用语句:num=0 0 25; %定义分子多项式den=1 4 25; %定义分母多项式step(num,den) %调用阶跃响应函数求取单位阶跃响应曲线grid on %画网格标度线xlabel(t/s),ylab

4、el(c(t) %给坐标轴加上说明title(Unit-step Respinse of G(s)=25/(s2+4s+25) %给图形加上标题名则该单位阶跃响应曲线如图 4-1 所示:为了在图形屏幕上书写文本,可以用 text 命令在图上的任何位置加标注。例如:text(3.4,-0.06,Y1) 和 text(3.4,1.4,Y2)第一个语句告诉计算机,在坐标点 x=3.4,y=-0.06 上书写出Y1 。类似地,第二个语句告诉计算机,在坐标点 x=3.4,y=1.4 上书写出Y2 。若要绘制系统 t 在指定时间(0-10s)内的响应曲线,则用以下语句:num=0 0 25; den=1

5、4 25; t=0:0.1:10;step(num,den,t) 即可得到系统的单位阶跃响应曲线在 0-10s 间的部分,如图 4-2 所示。 2) 脉冲响应 求系统脉冲响应的指令有:图 4-1 二阶系统的单位阶跃响应 图 4-2 定义时间范围的单位阶跃响应impulse (num,den) 时间向量 t 的范围由软件自动设定,阶跃响应曲线随即绘出impulse (num,den,t) 时间向量 t 的范围可以由人工给定(例如 t=0:0.1:10)y,x=impulse(num,den) 返回变量 y 为输出向量,x 为状态向量y, t ,x=impulse(num,den,t) 向量 t

6、表示脉冲响应进行计算的时间例:试求下列系统的单位脉冲响应:12.0)(ssGRC在 MATLAB 中可表示为num=0 0 1;den=1 0.2 1;impulse(num,den)gridtitle(Unit-impulse Response of G(s)=1/(s2+0.2s+1)由此得到的单位脉冲响应曲线如图 4-3 所示: 求脉冲响应的另一种方法应当指出,当初始条件为零时,G (s)的单位脉冲响应与 sG(s)的单位阶跃响应相同。考虑在上例题中求系统的单位脉冲响应,因为对于单位脉冲输入量,R(s)=1 所以 sssGsCR 12.012.0)()( 因此,可以将 G(s)的单位脉冲

7、响应变换成 sG(s)的单位阶跃响应。向 MATLAB 输入下列 num 和 den,给出阶跃响应命令,可以得到系统的图 4-3 二阶系统的单位脉冲响应单位脉冲响应曲线如图 4-4 所示。num=0 1 0;den=1 0.2 1;step(num,den) gridtitle(Unit-step Response ofsG(s)=s/(s2+0.2s+1)3) 斜坡响应MATLAB 没有直接调用求系统斜坡响应的功能指令。在求取斜坡响应时,通常利用阶跃响应的指令。基于单位阶跃信号的拉氏变换为 1/s,而单位斜坡信号的拉氏变换为 1/s2。因此,当求系统 G(s)的单位斜坡响应时,可以先用 s

8、除G(s),再利用阶跃响应命令,就能求出系统的斜坡响应。例如,试求下列闭环系统的单位斜坡响应。1)(2sRC对于单位斜坡输入量,R(s)=1/s 2 ,因此sss1)(1)(2在 MATLAB 中输入以下命令,得到如图 4-5 所示的响应曲线:num=0 0 0 1;den=1 1 1 0;图 4-4 单位脉冲响应的另一种表示法step(num,den)title(Unit-Ramp Response Cuve for System G(s)=1/(s2+s+1)4) 任意输入的响应格式:lsim(sys,u,t) %给定系统对象 sys,控制输入向量 u 和等间隔时间向%量 t,求系统的单位

9、脉冲响应并作图。lsim(sys,u,t,x0) %计算带初始条件 x0 的时间响应并作图。lsim(sys1,sys2,u,t,x0) %多系统任意输入时间响应并绘图。y=lsim(sys,u,t) %返回变量格式,不作图。y,t,x= lsim(sys,u,t,x0)图 4-5 单位斜坡响应2. 特征参量 和 对二阶系统性能的影响n标准二阶系统的闭环传递函数为:22)(nssRC二阶系统的单位阶跃响应在不同的特征参量下有不同的响应曲线。1) 对二阶系统性能的影响已知二阶系统的传递函数为: 2n2s)s(当 n=1 时,试计算 从 0.1 变至 1 时二阶系统的响应,并绘制一簇阶跃响应曲线。

10、程序及结果如下:num=1;y=zeros(200,1);i=0;for bc=0.1:0.1:1den=1,2*bc,1;t=0:0.1:19.9;sys=tf(num,den);i=i+1;y(:,i)=step(sys,t);endmesh(flipud(y),-100 20)图 4-6 二阶系统阻尼比变化时的阶跃响应曲线簇三维图2) 对二阶系统性能的影响n同理,设定阻尼比 时,当 分别取 1,2,3 时,利用 MATLAB 求取25.0n单位阶跃响应曲线,分析参数 对系统的影响。nnum1=0 0 1; den1=1 0.5 1; t=0:0.1:10; step(num1,den1,

11、t); grid; hold ontext(3.1,1.4,wn=1)num2=0 0 4; den2=1 1 4;step(num2,den2,t); hold ontext(1.7,1.4,wn=2)num3=0 0 9; den3=1 1.5 9;step(num3,den3,t); hold ontext(0.5,1.4,wn=3)由此得到的响应曲线如图 4-7 所示:3.动态性能指标的求取一种比较常用的方法就是用编程方式求取时域响应的各项性能指标。编程方法稍微复杂,但通过下面的学习,读者可以掌握一定的编程技巧,能够将控制原理知识和编程方法相结合,自己编写一些程序,获取一些较为复杂的性

12、能指标。通过前面的学习,我们已经可以用阶跃响应函数 step( )获得系统输出量,若将输出量返回到变量 y 中,可以调用如下格式y,t=step(G) 图 4-7 不同时系统的响应曲线n该函数还同时返回了自动生成的时间变量 t,对返回的这一对变量 y 和 t的值进行计算,可以得到时域性能指标。 峰值时间(timetopeak)可由以下命令获得:Y,k=max(y); timetopeak=t(k) 应用取最大值函数 max()求出 y 的峰值及相应的时间,并存于变量 Y 和 k中。然后在变量 t 中取出峰值时间,并将它赋给变量 timetopeak。 最大(百分比)超调量(percentove

13、rshoot)可由以下命令得到:C=dcgain(G);Y,k=max(y); percentovershoot=100*(Y-C)/C dcgain( )函数用于求取系统的终值,将终值赋给变量 C,然后依据超调量的定义,由 Y 和 C 计算出百分比超调量。 上升时间(risetime)可利用 MATLAB 中控制语句编制 M 文件来获得。首先简单介绍一下循环语句 while 的使用。while 循环语句的一般格式为:while循环体end其中,循环判断语句为某种形式的逻辑判断表达式。当表达式的逻辑值为真时,就执行循环体内的语句;当表达式的逻辑值为假时,就退出当前的循环体。如果循环判断语句为矩

14、阵时,当且仅当所有的矩阵元素非零时,逻辑表达式的值为真。为避免循环语句陷入死循环,在语句内必须有可以自动修改循环控制变量的命令。要求出上升时间,可以用 while 语句编写以下程序得到:C=dcgain(G);n=1;while y(n)0.98*C)endsettingtime=t(i)运行后的响应图如图 4-8,命令窗口中显示的结果为:C = timetopeak =0.3000 1.0491percentovershoot = risetime =35.0914 0.6626setllingtime =3.5337三、实验内容1观察函数 step( )和 impulse( )的调用格式,

15、假设系统的传递函数模型为14673(242ssG可以用几种方法绘制出系统的阶跃响应和脉冲响应曲线?试分别绘制。2对典型二阶系统 22)(nss1)分别绘出 , 分别取 0,0.25,0.5,1.0 和 2.0 时的单位阶跃响/(2radn应曲线,分析参数 对系统的影响。2)绘制出当 =0.25, 分别取 1,2,4,6 时单位阶跃响应曲线,分析参数n对系统的影响。n3.单位负反馈系统的开环传递函数为 ,编写程序求系统)(7)sG动态性能指标:超调量、调节时间、上升时间、峰值时间。4.参考教材 P120,学习使用图形工具 LTI Viewer,对上题 3 中的系统求取动态性能指标,并与编程所得结果进行比较。选做:5. 已知单位反馈系统开环传函为: )1(4s0.5sk)(G(试绘制 k=1.4,2.3,3.5 时单位阶跃响应曲线(在同一坐标下) 。6. 单位反馈开环零极点增益模型为: ,)1s(23)s(试绘制该系统单位阶跃响应曲线和单位斜坡响应曲线,并计算单位阶跃响应的稳态误差(或画出误差曲线) 。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报