《北京科技大学控制实验报告》由会员分享,可在线阅读,更多相关《北京科技大学控制实验报告(54页珍藏版)》请在金锄头文库上搜索。
1、实验三利用MATLAB进行时域分析一、实验目的(1) 学会使用MATLAB编程绘制控制系统的单位阶跃响应曲线;(2) 研究二阶控制系统中,?、?对系统动态特性和时域指标的影响;n(3) 掌握准确读取动态特性指标的方法;(4) 分析二阶系统闭环极点和闭环零点对系统动态性能的影响;(5) 研究三阶系统单位阶跃响应及其动态性能指标与其闭环极点的关系;(6) 研究闭环极点和闭环零点对高阶系统动态性能的影响;(7) 了解高阶系统中主导极点与偶极子的作用;(8) 了解系统阶跃响应、脉冲响应和斜坡响应输出曲线之间的联系与差别。 二、实验原理及内容1、求系统的特征根若已知系统的特征多项式D (s),利用roo
2、 ts ()函数可以求其特征根。若已知系统的 传递函数,利用eig ()函数可以直接求出系统的特征根。2、求系统的闭环根、Z和3n函数damp ()可以计算出系统的闭环根、z和?。n3、零极点分布图可利用pzmap ()函数绘制连续系统的零、极点图,从而分析系统的稳定性,调用格式为: pzmap(num,den)【范例3-1】给定传递函数:、3s 4 + 2 s 3 + 5s 2 + 4 s + 6G (s)=s 5 + 3s 4 + 4 s 3 + 2 s 2 + 7 s + 2利用下列命令可自动打开一个图形窗口,显示该系统的零、极点分布图,如错误!未找 到引用源。所示。 num=3,2,5
3、,4,6;den=1,3,4,2,7,2;pzmap(num,den)title(1Pole-Zero Map1) % 图形标题。Pofe-Zero FrtapI .二-D.5Pdr -1 77-1 27iCamp rig 0 J813 Overstioot (%):1 J5Frequency2 J S-15 num二0,0,25;den二1,4,25;st ep(num,den)grid %绘制网格线。tit le(1Uni t_Step Response of G(s)=25/(s入2+4s+25) 1) % 图像标题1 .4图3- 2 MATLAB绘制的响应曲线还可以用下面的语句来得出阶
4、跃响应曲线 G二t f(0,0,25,1,4,25);t二0:5;%从0到5每隔取一个值。c=step(G, t);%动态响应的幅值赋给变量cplo t(t ,c)%绘二维图形,横坐标取t,纵坐标取c。Css二dcgain(G)%求取稳态值。系统显示的图形类似于上一个例子,在命令窗口中显示了如下结果Css= 15、求阶跃响应的性能指标MATLAB提供了强大的绘图计算功能,可以用多种方法求取系统的动态响应指标。首先 介绍一种最简单的方法一一游动鼠标法。对于例2,在程序运行完毕后,在曲线中空白区域, 单击鼠标右键,在快捷菜单中选择” characteristics”,包含:Peak respons
5、e (峰值); sett ling t ime (调节时间);Rise t ime(上升时间);st eady stat e(稳态值);在相应位置 出现相应点,用鼠标单击后,相应性能值就显示出来。用鼠标左键点击时域响应曲线任意一 点,系统会自动跳出一个小方框,小方框显示了这一点的横坐标(时间)和纵坐标(幅值。 这种方法简单易用,但同时应注意它不适用于用plot()命令画出的图形。、 100【自我实践1J若已知单位负反馈前向通道的传递函数为:G(s)二,试作出其单位s 2 + 5s阶跃响应曲线,准确读出其动态性能指标,并记录数据。另一种比较常用的方法就是用编程方式求取时域响应的各项性能指标。与游
6、动鼠标法相 比,编程方法稍微复杂,但可以获取一些较为复杂的性能指标。若将阶跃响应函数step()获得系统输出量返回到变量y中,可以调用如下格式y, t二step(G)该函数还同时返回了自动生成的时间变量t,对返回变量y和t进行计算,可以得到时 域性能指标。 峰值时间(timetopeak)可由以下命令获得:Y,k二max(y);timeto peak 二t(k) 最大(百分比)超调量(percentovershoot)可由以下命令得到:C=dcgain(G);Y,k=max(y); percentovershoot=100*(Y-C)/Cdcgain( )函数用于求取系统的终值。 上升时间(r
7、ise time)可利用MATLAB中控制语句编制M文件来获得。要求出上升时间,可以用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)*Cn=n+1;endm=1;while y(n)*C)&(y(i) G1=tf(0,0,100,1,5,0);G2=1;G=f
8、eedback(G1,G2)Transfer function:100 s八2 + 5 s + 100 num二0,0,100; den二1,5,100; st ep(num,den) grid title(Un it-Step Response)Figure 1File Edit View insert Tools Desktop Window HelpDdha s oaJpn-t_CLLUVUnit-step Response11.5Time fec)22.51o5 oFigure 1File Edit View Insert T ools Desktop Window HelpQS H
9、fe毀氨糾原銘凰 0 n QSte-p ResponseSystem: sys Final Va lue: 11 5o.Qpn-t=:_LUVTime (sec)o上升时间:峰值时间:;调节时间:超调:42%稳态值:1【范例3-3】已知二阶系统传递函数为:G(s)=3(s +1 - 3i)( s +1 + 3i)利用下面的程序可得到阶跃响应如错误!未找到引用源。及性能指标数据。 G二zpk(,1+3*i,13*i ,3);%计算最大峰值时间和超调量。C二dcgain(G)y, t二step(G);plo t(t ,y)gridY,k二max(y);timeto peak 二t(k)percen
10、 to vershoo 七二100*(丫-0/心%计算上升时间。二1;while y(n)*C)&(y(i)*C)i=i-1;endsetll ingtime=t(i)运行后的响应图如错误!未找到引用源。,命令窗口中显示的结果为C 二timetopeak 二percentovershoot 二risetime 二setll ingtime 二图3-3二阶系统阶跃响应用游动鼠标法求取此二阶系统的各项性能指标与本例是一致的。6、分析3.不变时,改变阻尼比?,观察闭环极点的变化及其阶跃响应的变化。【自我实践2】二阶系统,叫二10,当? = 0, 1,时,求对应系统的闭环极点、自然振荡 频率及阶跃响应
11、曲线;并分析?对系统性能的影响。参考程序: num =100 ; 1=0 ;for sigma = 0 : 0. 25 : 1. 25den = 1 2*signa+10 100;damp (den)sys = tf (num den);i = i+1 ;st ep (sys ; 2)hold onendgridhold offtitle (阻尼比不同时的阶跃响应曲缓) labl= J C = 0J : text (0. 3 1. 9, labl), lab2 = J C = 0.25J : test (D. 3, lab3 =J= 0. 5J:text(0.3 1. 2 lab3)lab4 =E=0. 75J;test(0. 3j 1. 05 lab4)lab5 = 1J ; text (0. 35 0. 9 labE),lab6 =J= 1. 25J;test(0. 35, 0.8, lab6)阶跃响应曲线:阻尼比不同时的阶跃响应曲线21.81.61.41.210.80.60.40.20/E=o/ 1 ri/ 1/J111111l1111E=025/ / J111r f j r1 1 I1I111i.iVI1 J J f111j j j iI 1f11 /c 0J_o A o575,:1 I1jiJ i1111