1、rlocus(num,den,k) 开环增益k的范围人工设定。rlocus(p,z) 依据开环零极点绘制根轨迹。r=rlocus(num,den) 不作图,返回闭环根矩阵。r,k=rlocus(num,den) 不作图,返回闭环根矩阵r和对应的开环增益向量k。其中,num,den分别为系统开环传递函数的分子、分母多项式系数,按s的降幂排列。K为根轨迹增益,可设定增益范围。例3-1:已知系统的开环传递函数,绘制系统的根轨迹的matlab的调用语句如下: num=1 1; %定义分子多项式 den=1 4 2 9; %定义分母多项式 rlocus (num,den) %绘制系统的根轨迹 grid
2、%画网格标度线 xlabel(Real Axis),ylabel(Imaginary Axis) %给坐标轴加上说明 title(Root Locus) %给图形加上标题名则该系统的根轨迹如图3-1所示:若上例要绘制K在(1,10)的根轨迹图,则此时的matlab的调用格式如下,对应的根轨迹如图3-2所示。num=1 1; k=1:0.5:10; rlocus (num,den,k) 2) 确定闭环根位置对应增益值K的函数rlocfind()在MATLAB中,提供了rlocfind函数获取与特定的复根对应的增益K的值。在求出的根轨迹图上,可确定选定点的增益值K和闭环根r(向量)的值。该函数的调
3、用格式为:k,r=rlocfind(num,den)执行前,先执行绘制根轨迹命令rlocus(num,den),作出根轨迹图。执行rlocfind命令时,出现提示语句“Select a point in the graphics window”,即要求在根轨迹图上选定闭环极点。将鼠标移至根轨迹图选定的位置,单击左键确定,根轨迹图上出现“+”标记,即得到了该点的增益K和闭环根r的返回变量值。例3-2:系统的开环传递函数为,试求:(1)系统的根轨迹;(2)系统稳定的K的范围;(3)K=1时闭环系统阶跃响应曲线。则此时的matlab的调用格式为:G=tf(1,5,6,1,8,3,25); rlocu
4、s (G); %绘制系统的根轨迹 k,r=rlocfind(G) %确定临界稳定时的增益值k和对应的极点r G_c=feedback(G,1); %形成单位负反馈闭环系统step(G_c) %绘制闭环系统的阶跃响应曲线则系统的根轨迹图和闭环系统阶跃响应曲线如图3-2所示。其中,调用rlocfind()函数,求出系统与虚轴交点的K值,可得与虚轴交点的K值为0.0264,故系统稳定的K的范围为。3) 绘制阻尼比和无阻尼自然频率的栅格线sgrid( )当对系统的阻尼比有要求时,就希望在根轨迹图上作等或等线。matlab中实现这一要求的函数为sgrid( ),该函数的调用格式为:sgrid(,) 已知
5、和的数值,作出等于已知参数的等值线。sgrid(new) 作出等间隔分布的等网格线。例3-3:,由rlocfind函数找出能产生主导极点阻尼=0.707的合适增益,如图3-3(a)所示。G=tf(1,conv(1,1,1,2),0);zet=0.1:0.2:1;wn=1:10;说明:sgrid:在现存的屏幕根轨迹或零极点图上绘制出自然振荡频率wn、阻尼比矢量z对应的格线。sgrid(new):是先清屏,再画格线。sgrid(z,wn):则绘制由用户指定的阻尼比矢量z、自然振荡频率wn的格线添加:sgrid(new);或 clesgrid(zet,wn);hold on;rlocus(G)k,r
6、=rlocfind(G)Select a point in the graphics windowselected_point = -0.3791 + 0.3602ik = 0.6233r = -2.2279 -0.3861 + 0.3616i -0.3861 - 0.3616i同时我们还可以绘制出该增益下闭环系统的阶跃响应,如图3-3(b)所示。事实上,等线在设计系补偿器中是相当实用的,这样设计出的增益K=0.6233将使得整个系统的阻尼比接近0.707。由下面的MATLAB语句可以求出主导极点,即r(2.3)点的阻尼比和自然频率为step(G_c)dd0=poly(r(2:3,:);wn=
7、sqrt(dd0(3);zet=dd0(2)/(2*wn);zet,wnans = 0.7299 0.5290我们可以由图3-3(a)中看出,主导极点的结果与实际系统的闭环响应非常接近,设计的效果是令人满意的。4) 基于根轨迹的系统设计及校正工具rltoolmatlab中提供了一个系统根轨迹分析的图形界面,在此界面可以可视地在整个前向通路中添加零极点(亦即设计控制器),从而使得系统的性能得到改善。实现这一要求的工具为rltool,其调用格式为:rltool 或 rltool(G)例3-4:单位负反馈系统的开环传递函数输入系统的数学模型,并对此对象进行设计。den=conv(1,5,conv(1
8、,20,1,50),0,0;num=1,0.125;G=tf(num,den);rltool(G)该命令将打开rltool工具的界面,显示原开环模型的根轨迹图,如图3-4(a)所示。单击该图形菜单命令Analysis中的Response to Step Command 复选框,则将打开一个新的窗口,绘制系统的闭环阶跃响应曲线,如图3-4(b)所示。可见这样直接得出的系统有很强的振荡,就需要给这个对象模型设计一个控制器来改善系统的闭环性能。单击界面上的零点和极点添加的按钮,可以给系统添加一对共轭复极点,两个稳定零点,调整它们的位置,并调整增益的值,通过观察系统的闭环阶跃响应效果,则可以试凑地设计
9、出一个控制器在此控制器下分别观察系统的根轨迹和闭环系统阶跃响应曲线。可见,rltool可以作为系统综合的实用工具,在系统设计中发挥作用。三、实验内容1请绘制下面系统的根轨迹曲线,同时得出在单位阶跃负反馈下使得闭环系统稳定的K值的范围。 num=1;den=conv(1,2,2,1,6,13),0; G=tf(num,den);rlocus(G);grid xlabel(Real Axis),ylabel(Imageinary Axis) title(根轨迹k,r=rlocfind(G) 结果为:selected_point = -0.0355 + 0.9627ik = 26.7666r = -
10、2.8285 + 2.1531i -2.8285 - 2.1531i -2.2659 -0.0385 + 0.9661i-0.0385-0.9661iK26.7666时系统稳定。num=1,12;den=conv(1,1,conv(1,12,100,1,10);结果为selected_point = 0.0059 +10.0000ik = 1.0930e+003r = -0.0226 +10.0243i -0.0226 -10.0243i -11.4774 + 2.9573i -11.4774 - 2.9573i当k1.0930e+003,时系统稳定 num=0.005 1;den=conv(
11、0.012,0.1,1,0.0714,1),0;step(G_c) selected_point = 2.2512 + 7.7640ik =13.5793r = -12.8277 + 6.7024i -12.8277 - 6.7024i 1.6583 + 8.5388i 1.6583 - 8.5388i所以当k13.5793时系统稳定2. 在系统设计工具rltool界面中,通过添加零点和极点方法,试凑出上述系统,并观察增加极、零点对系统的影响。1.11.21.3四、实验报告1根据实验分析增加极点或零点对系统动态性能的影响。零点极点的位置能显著改变系统的稳定性,闭环系统无零点,闭环极点为实数,则时间响应一定单调,超调量主要取决于闭环复数的衰减率,实数极点零点,减少系统阻尼使峰值时间提前,超调量增大。五写出实验的心得与体会。学会利用MATLAB语句绘制系统的根轨迹。了解了利用根轨迹分析系统性能的图解方法。更深刻地练习了MATALAB软件。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1