《自动控制原理实验指导》由会员分享,可在线阅读,更多相关《自动控制原理实验指导(17页珍藏版)》请在金锄头文库上搜索。
1、实验四控制系统的稳定性判据一、实验目的熟练掌握系统的稳定性的判断方法。二、基础知识及MATLAB函数用MATLAB求系统的瞬态响应时,将传递函数的分子、分母多项式的系数分别以s 的降幕排列写为两个数组num、den。由于控制系统分子的阶次m 一般小于其分母的阶次 n,所以num中的数组元素与分子多项式系数之间自右向左逐次对齐,不足部分用零补 齐,缺项系数也用零补上。1. 直接求根判稳roots()控制系统稳定的充要条件是其特征方程的根均具有负实部。因此,为了判别系统的 稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。MATLAB中对 多项式求根的函数为roots()函数。若求以下
2、多项式的根+10s3 + 35 + 50s + 24,则所用的MATLAB指令为: roots(1,10,35,50,24)ans =-4.0000-3.0000-2.0000-1.0000特征方程的根都具有负实部,因而系统为稳定的。2. 劳斯稳定判据routh()劳斯判据的调用格式为:r, info=routh(den)该函数的功能是构造系统的劳斯表。其中,den为系统的分母多项式系数向量,r 为返回的routh表矩阵,info为返回的routh表的附加信息。以上述多项式为例,由routh判据判定系统的稳定性。den=1,10,35,50,24;r,info=routh(den)r=1352
3、41050030240420024info=由系统返回的routh表可以看出,其第一列没有符号的变化,系统是稳定的。注意:routh()不是MATLAB中自带的功能函数,须加载routh.m文件(自编) 才能运行。三、实验内容1.系统的特征方程式为2s4 + s3 + 3s2+ 5s +10 = 0,试用两种判稳方式判别该系统的稳定性。2. 单位负反馈系统的开环模型为K(s + 2)( s + 4)( s 2 + 6 s + 25)试用劳斯稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。四、实验报告1. 根据内容要求,写出调试好的MATLAB语言程序,及对应的MATLAB运算结果。
4、2. 总结判断闭环系统稳定的方法,说明增益K对系统稳定性的影响。五、预习要求1. 结合实验内容,提前编制相应的程序。2. 熟悉闭环系统稳定的充要条件及学过的稳定判据。附件:routh.mfunction routh_list,conclusion = Routh(chara_equ)% =%自编劳斯判据求解系统稳定性函数%输入:% chara_equ =特征方程向量%输出:% routh_list =劳斯表% conclusion =给出系统是否稳定或存在多少个不稳定的根的结论% author:xianfa110 % example:% routh_list,con = Routh(1 2 3
5、 4 5);% return:% routh_list =%135%240%150%-600%500% con =% There is 2 unstable roots!% =n=length(chara_equ);chara_equ=reshape(chara_equ,1,n);if mod(n,2)=0n1=n/2;elsen1=(n+1)/2;chara_equ=chara_equ,0;endrouth=reshape(chara_equ,2,n1);routh_list=zeros(n,n1);routh_list(1:2,:)=routh;i=3;while 1;% =特殊情况 1(
6、第一列为 0,其余列不为 0)=if routh_list(i-1,1)=0 & sum(routh_list(i-1,2:n1)=0chara_equ = conv(chara_equ,1 3);n=length(chara_equ);if mod(n,2)=0n1=n/2;elsen1=(n+1)/2;chara_equ=chara_equ,0;endrouth=reshape(chara_equ,2,n1);routh_list=zeros(n,n1);routh_list(1:2,:)=routh;i=3;end% =计算劳斯表=ai=routh_list(i-2,1)/routh_l
7、ist(i-1,1);for j=1:n1-1routh_list(i,j)=routh_list(i-2,j+1)-ai*routh_list(i-1,j+1);end% =特殊情况 2(全 0 行)=if sum(routh_list(i,:)=0k=0;l=1;F=zeros(1,n1);while n-i-k=0F(l)=n-i+1-k;k=k+2;l=l+1;endrouth_list(i,:)=routh_list(i-1,:).*F(1,:);end% =更新= i=i+1;if inbreak;endend% =outhput=r=find(routh_list(:,1)0);
8、if isempty(r)=1conclusion=The system is stable!;elsen2=length(r);m=n2;for i=1:n2-1if r(i+1)-r(i)=1m=m-1;endendstr1=There is ;if r(n2)=nstr2=num2str(m*2-1);elsestr2=num2str(m*2);endstr3= unstable roots!;conclusion = str1,str2,str3;end实验五控制系统的根轨迹一、实验目的1. 熟悉MATLAB用于控制系统中的一些基本编程语句和格式。2. 利用MATLAB语句绘制系统的根
9、轨迹。3. 掌握用根轨迹分析系统性能的图解方法。4. 掌握系统参数变化对特征根位置的影响。二、基础知识及MATLAB函数根轨迹是指系统的某一参数从零变到无穷大时,特征方程的根在s平面上的变化轨 迹。这个参数一般选为开环系统的增益K。课本中介绍的手工绘制根轨迹的方法,只能 绘制根轨迹草图。而用MATLAB可以方便地绘制精确的根轨迹图,并可观测参数变化 对特征根位置的影响。假设系统的对象模型可以表示为G (s) = KG 0( s)=b sm + b S m-1 + b s + bK 12mm 11sn + a sn-1 + b s + a系统的闭环特征方程可以写成1 + KG 0( s) = 0
10、对每一个K的取值,我们可以得到一组系统的闭环极点。如果我们改变K的数值,则 可以得到一系列这样的极点集合。若将这些K的取值下得出的极点位置按照各个分支连 接起来,则可以得到一些描述系统闭环位置的曲线,这些曲线又称为系统的根轨迹。1. 绘制系统的根轨迹rlocus()MATLAB中绘制根轨迹的函数调用格式为:rlocus(num,den)开环增益k的范围自动设定。Rlocus(num,den,k)开环增益k的范围人工设定。Rlocus(p,z)依据开环零极点绘制根轨迹。R=rlocus(num,den)不作图,返回闭环根矩阵。r,k=rlocus(num,den)不作图,返回闭环根矩阵r和对应的
11、开环增益向量k。 其中,num,den分别为系统开环传递函数的分子、分母多项式系数,按s的降幕排列。K为根轨迹增益,可设定增益范围。例1:已知系统的开环传递函数G(s) = K*堕旦,绘制系统的根轨迹的s 3 + 4s 2 + 2s + 9MATLAB的调用语句如下:num=1 1;den=1 4 2 9;rlocus (num,den)gridtitle( Root Locus ) xlabel( Real Axis )%定义分子多项式%定义分母多项式%绘制系统的根轨迹%画网格标度线ylabel( Imaginary Axis );Root LocusRoot Locus-4.5-4-3.5
12、-3-2.5-2-1.5-1-0.500.5Real Axis图3-2特定增益范围内的根轨迹图形图3-1系统的完整根轨迹图形若上例要绘制K在(1, 10)的根轨迹图,则此时的MATLAB的调用格式如下,对则该系统的根轨迹如图3-1所示:应的根轨迹如图3-2所示。Num=1 1;den=1 4 2 9;k=1:0.5:10;rlocus (num,den,k)2. 确定闭环根位置对应增益值K的函数rlocfind()在MATLAB中,提供了 rlocfind函数获取与特定的复根对应的增益K的值。在求 出的根轨迹图上,可确定选定点的增益值K和闭环根r (向量)的值。该函数的调用格 式为:k,r=r
13、locfind(num,den)执行前,先执行绘制根轨迹命令rlocus(num,den),作出根轨迹图。执行rlocfind 命令时,出现提示语句“ Select a point in the graphics window”,即要求在根轨迹 图上选定闭环极点。将鼠标移至根轨迹图选定的位置,单击左键确定,根轨迹图上出现“ + ”标记,即得到了该点的增益K和闭环根r的返回变量值。例2:系统的开环传递函数为G(s) = K5 2 + 5s + 6s 3 + 8s 2 + 3s + 25试求:(1)系统的根轨迹;(2)系统稳定的K的范围;(3) K= 1时闭环系统阶跃响应曲线。则此时的MATLAB 的调用格式为:G=tf(1,5,6,1,8,3,25);rlocus (G);%绘制系统的根轨迹k,r=rlocfind(G)%确定临界稳定时的增益值k和对应的极点rG_c=feedback(G1);%形成单位负反馈闭环系统step(G_c)%绘制闭环系统的阶跃响应曲线则系统的根轨迹图和闭环系统阶跃响应曲线如图3-2所示。其中,调用rlocfind()函数,求出系统与虚轴交点的K值,可得与虚轴交点的K 值为0.0264,故系统稳定的K的范围为K e (0.0264,8)。(a)根轨迹图形(b)K=1时的阶跃响应曲线图3-2系统的根轨迹和阶跃响应曲线3. 绘制阻尼比匚和无阻尼自然频率气的