《自动控制原理》实验报告(线性系统的根轨迹).doc
文本预览下载声明
实验四 线性系统的根轨迹
一、实验目的
熟悉MATLAB用于控制系统中的一些基本编程语句和格式。
利用MATLAB语句绘制系统的根轨迹。
掌握用根轨迹分析系统性能的图解方法。
掌握系统参数变化对特征根位置的影响。
基础知识及MATLAB函数
根轨迹是指系统的某一参数从零变到无穷大时,特征方程的根在s平面上的变化轨迹。这个参数一般选为开环系统的增益K。课本中介绍的手工绘制根轨迹的方法,只能绘制根轨迹草图。而用MATLAB可以方便地绘制精确的根轨迹图,并可观测参数变化对特征根位置的影响。
假设系统的对象模型可以表示为
系统的闭环特征方程可以写成:
对每一个K的取值,我们可以得到一组系统的闭环极点。如果我们改变K的数值,则可以得到一系列这样的极点集合。若将这些K的取值下得出的极点位置按照各个分支连接起来,则可以得到一些描述系统闭环位置的曲线,这些曲线又称为系统的根轨迹。
绘制系统的根轨迹rlocus()
MATLAB中绘制根轨迹的函数调用格式为:
rlocus(num,den) 开环增益k的范围自动设定。
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 %画网格标度线
xlabel(‘Real Axis’),ylabel(‘Imaginary Axis’) %给坐标轴加上说明
title(‘Root Locus’) %给图形加上标题名
则该系统的根轨迹如图3-1所示:
图3-1 系统的完整根轨迹图形
图3-1 系统的完整根轨迹图形
图3-2 特定增益范围内的根轨迹图形
若上例要绘制K在(1,10)的根轨迹图,则此时的matlab的调用格式如下,对应的根轨迹如图3-2所示。
num=[1 1];
den=[1 4 2 9];
k=1:0.5:10;
rlocus (num,den,k)
确定闭环根位置对应增益值K的函数rlocfind()
在MATLAB中,提供了rlocfind函数获取与特定的复根对应的增益K的值。在求出的根轨迹图上,可确定选定点的增益值K和闭环根r(向量)的值。该函数的调用格式为:[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]);
rlocus (G); %绘制系统的根轨迹
[k,r]=rlocfind(G) %确定临界稳定时的增益值k和对应的极点r
G_c=feedback(G,1); %形成单位负反馈闭环系统
step(G_c) %绘制闭环系统的阶跃响应曲线
则系统的根轨迹图和闭环系统阶跃响应曲线如图3-2所示。
其中,调用rlocfind()函数,求出系统与虚轴交点的K值,可得与虚轴交点的K值
显示全部