系统动态特性分析_第1页
系统动态特性分析_第2页
系统动态特性分析_第3页
系统动态特性分析_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、系统动态特性分析。(1)时域响应解析算法局部分式展开法。用拉氏变换法求系统的单位阶跃响应,可直接得出输出c(t)随时间t变化的规律,对于高阶系统,输出的拉氏变换象函数为:s3- 7s224s 24s410s335s250s 24用以下命令对G(s)进行局部分式展开。s num=1,7,24,24den=1,10,35,50,24r,p,k=residue(num,den,0)输出结果为r=p=k=-1.0000-4.00002.0000-3.0000-1.0000-2.0000-1.0000-1.00001.00000输出函数c(s)为:拉氏变换得:c(t) = -e*2et-et-e41(2

2、)单位阶跃响应的求法:控制系统工具箱中给出了一个函数step()来直接求取线性系统的阶跃响应,如果传递函数为:numG(s):den那么该函数可有以下几种调用格式:step(num,den) step(num,den,t)或step(G)(24)step(G,t)该函数将绘制出系统在单位阶跃输入条件下的动态响应图,同时给出稳态值。对于式23和25, t为图像显示的时间长度,是用户指定的时间向量。式22和24的显示时间由系 统根据输出曲线的形状自行设定。1num 1C(s)=G(s)sden s对函数c(s)进行局部分式展开,我们可以用例15给定系统的传递函数:(21)num,den,0来表示c

3、(s)的分子和分母。G(s)=C(s)-1s 4(22)(23)如果需要将输出结果返回到MATLAB:作空间中,那么采用以下调用格式:c=step(G)(26)此时,屏上不会显示响应曲线,必须利用plot()命令去查看响应曲线。plot可以根据两个或多个给定的向量绘制二维图形,详细介绍可以查阅后面的章节。例16传递函数为:252s 4s 25 num=0,0,25;den=1,4,25;step(num,den)grid %绘制网格线。title(1Unit-Step Response of G(s)=25/(sA2+4s+25)1) %图像标题我们还可以用下面的语句来得出阶跃响应曲线 G=t

4、f(0,0,25,1,4,25);t=0:0.1:5;%从0到5每隔0.1取一个值。c=step(G,t);%动态响应的幅值赋给变量cplot(t,c)%绘二维图形,横坐标取t,纵坐标取c。Css=dcgain(G) %求取稳态值。系统显示的图形类似于上一个例子,在命令窗口中显示了如下结果Css= 1(3)求阶跃响应的性能指标MATLAB提供了强大的绘图计算功能,可以用多种方法求取系统的动态响应指标。我们首先介绍一种最简单的方法一一游动鼠标法。对于例16,在程序运行完毕后,用鼠标左键点击时域响应图线任意一点,系统会自动跳出一个小方框,小方框显示了这一点的横坐标(时间)和纵坐标(幅值)。按住鼠标

5、左键在曲线上移动,可以找到曲线幅值最大的一点一一即 曲线最大峰值,此时小方框中显示的时间就是此二阶系统的峰值时间,根据观察到的稳态值和峰值可以计算出系统的超调量。系统的上升时间和稳态响应时间可以依此类推。这种方法G(s)二利用以下MATLAB令可得阶跃响应曲线如图14所示。图14 MATLAB绘制的响应曲线简单易用,但同时应注意它不适用于用plot()命令画出的图形。另一种比拟常用的方法就是用编程方式求取时域响应的各项性能指标。与上一段介绍的游动鼠标法相比,编程方法稍微复杂,但通过下面的学习,读者可以掌握一定的编程技巧, 能够将控制原理知识和编程方法相结合,自己编写一些程序,获取一些较为复杂的

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

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

8、真。为防止循环语句陷入死循环, 在语句内必须有可以自动修改循环控制变量的命令。要求出上升时间,可以用while语句编写以下程序得到:C=dcgain(G);n=1;while y(n)Cn=n+1;endrisetime=t(n)在阶跃输入条件下,y的值由零逐渐增大,当以上循环满足y=C时,退出循环,此时对应的时刻,即为上升时间。对于输出无超调的系统响应,上升时间定义为输出从稳态值的10%升到90%听需时间,那么计算程序如下:C=dcgain(G);n=1;while y(n)0.1*Cn=n+1; endm=1;while y(n)0.98*C)&(y(i) G=zpk( ,-1+3*i,-1-3*i ,3);%计算最大峰值时间和它对应的超调量。C=dcgain(G)y,t=step(G);plot(t,y) grid Y,k=max(y); timetopeak=t(k)percentovershoot=100*(Y-C)/C%计算上升时间。n=1;while y(n)0.98*C)&(y(i)1.02*C) i=i-1;endsetllingtime=t(i)运行后的响应图如图15,命令窗口中显示的结果为C =timetopeak =0.30001

温馨提示

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

评论

0/150

提交评论