第4章 利用MATLAB绘制系统根轨迹
MATLAB线性系统的根轨迹实验
![MATLAB线性系统的根轨迹实验](https://img.taocdn.com/s3/m/0c4235d002020740bf1e9b34.png)
M A T L A B线性系统的根轨迹实验-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN实验报告实验名称 线性系统的根轨迹一、实验目的1.熟悉MATLAB 用于控制系统中的一些基本编程语句和格式。
2.利用MATLAB 语句绘制系统的根轨迹。
3.掌握用根轨迹分析系统性能的图解方法。
4.掌握系统参数变化对特征根位置的影响。
二、实验内容1.请绘制下面系统的根轨迹曲线)136)(22()(22++++=s s s s s K s G )10)(10012)(1()12()(2+++++=s s s s s K s G 2(0.051)()(0.07141)(0.0120.11)K s G s s s s s +=+++ 同时得出在单位阶跃负反馈下使得闭环系统稳定的K 值的范围。
2. 在系统设计工具rltool 界面中,通过添加零点和极点方法,试凑出上述系统,并观察增加极、零点对系统的影响。
三、实验结果及分析1.请绘制下面系统的根轨迹曲线)136)(22()(22++++=s s s s s K s G )10)(10012)(1()12()(2+++++=s s s s s K s G 2(0.051)()(0.07141)(0.0120.11)K s G s s s s s +=+++ 同时得出在单位阶跃负反馈下使得闭环系统稳定的K 值的范围。
(1)>> num=[0 0 1];>> den=[conv([1,2,2],[1,6,13]),0]; >> rlocus (num,den)>> [k,r]=rlocfind(num,den)Select a point in the graphics window selected_point =+k =r =+-+-使得闭环系统稳定K的范围为)4.K31,0((2) num=[0 1 12];den=[conv(conv([1,1],[1,12,100]),[1,10])]; rlocus (num,den)[k,r]=rlocfind(num,den)Select a point in the graphics window selected_point =+k =+003r =++使得闭环系统稳定K的范围为)∈eK1953.1,0(+003(3) num=[,1];>> den=[conv([,1],[,,1]),0];>> rlocus (num,den)[k,r]=rlocfind(num,den)Select a point in the graphics window selected_point =+k =r =+-+-使得闭环系统稳定K的范围为)8.7,0(K2. 在系统设计工具rltool 界面中,通过添加零点和极点方法,试凑出上述系统,并观察增加极、零点对系统的影响。
利用MATLAB进行根轨迹分析
![利用MATLAB进行根轨迹分析](https://img.taocdn.com/s3/m/d8139628571252d380eb6294dd88d0d232d43c6d.png)
利用MATLAB进行根轨迹分析根轨迹分析是一种用于研究系统稳定性和动态特性的方法,通过研究系统的传递函数来绘制系统极点随参数变化的轨迹。
MATLAB提供了强大的工具和函数来进行根轨迹分析。
根轨迹是由系统的极点随参数变化所形成的轨迹,它可以反映系统的稳定性、阻尼比、上升时间、超调量等动态性能指标。
根轨迹的绘制通常包括以下步骤:1.定义系统传递函数:首先,需要根据具体的控制系统问题定义系统的传递函数。
传递函数是描述输入与输出间关系的数学模型,通常用分子多项式和分母多项式的比值来表示。
2. 极点位置确定:根据系统传递函数的分母多项式,可以求解系统的极点位置。
MATLAB提供了roots函数来计算多项式的根。
3. 绘制根轨迹:通过参数变化,将系统的极点位置代入传递函数的分子多项式中,可以计算得出系统的零点。
然后,使用MATLAB的plot函数将所有极点和零点绘制在复平面上。
4.判断稳定性:通过观察根轨迹的形状,可以判断系统的稳定性。
如果所有极点都位于左半平面,系统是稳定的。
如果存在极点位于右半平面,系统是不稳定的。
5.分析动态特性:根轨迹的形状可以提供许多关于系统动态特性的信息。
例如,阻尼比可以通过根轨迹上极点到原点的距离和纵坐标之比来估计;超调量可以通过根轨迹的形状和最大振幅来估计。
MATLAB提供了许多用于根轨迹分析的函数和工具箱,包括rlocus函数、nyquist函数和bode函数等。
这些函数可以方便地绘制根轨迹、Nyquist图和Bode图,从而帮助工程师分析系统稳定性以及设计和调整控制器。
根轨迹分析在控制系统设计和调优中具有重要作用。
通过根轨迹的绘制和分析,工程师可以深入了解控制系统的动态特性,并根据需要调整系统参数来达到设计要求。
同时,根轨迹分析也是控制系统教学和研究中常用的方法和工具。
总之,MATLAB是进行根轨迹分析的强大工具,通过绘制根轨迹和分析根轨迹的形状和特性,可以帮助工程师深入了解控制系统的稳定性和动态特性,从而有效地设计和调整控制器。
MATLAB在根轨迹中的应用
![MATLAB在根轨迹中的应用](https://img.taocdn.com/s3/m/1ea813f69b89680203d82547.png)
班级学号姓名
第四章MATLAB在根轨迹中的应用
一绘制控制系统的根轨迹图
绘制根轨迹的常用命令有rlcous(num,den)relocus(num,den,K).如果参变量K的范围是给定的,则MATLAB将按照给定的参数范围绘制根轨迹图,否则K的范围自动确定的。
其变化范围在0到真无穷之间,在绘制根轨迹时,MATLAB有x,y坐标轴的自动定位功能。
如果用户需要,可自行设置坐标的范围。
只要在相应的程序中加上如下部分。
V=[-x x- y y ]; axis(V)
它表示x 轴的范围为-x~x,y的范围是-y~y
G(s)=k/s(s+1)(s+2)
则MATLAB 的绘制根轨迹如下
解
运行结果如下所示如果,本例中的G(s)是以传递函数的一般形式传递,可用下列程序求解
运行结果如下所示
二、由根轨迹图对系统的性能进行分析
在对系统性能的分析中,一般需要确定根轨迹图上某一点的根轨迹增益值和其它对应的闭环极点。
对此,只要在rlocus指令后,调用下面指令:
【K2,P2】=rlocfind(num,den)
就能如愿实现。
运行该指令后,在显示根轨迹图形的屏幕上回生成一个十字光标,同时在matlab的命令窗口出现“Select a point in the graphics window”,提示用户选择某一个点。
当使用鼠标移动十字光标到所希望的位置后,单击左键,在matlab的命令窗口就会显示该点数值、增益K和对应其他闭环极点。
例如移动十字光标至下图中的A点,单击左键后,在matlab的命令窗口输出:
同时,可求得该图中B点对应输出为:。
应用MATLAB绘制 根轨迹图
![应用MATLAB绘制 根轨迹图](https://img.taocdn.com/s3/m/5c094d5877232f60ddcca16f.png)
实验六:应用MATLAB 绘制根轨迹图时间:第 周 星期 第 节课2013年 月 日计算机与电气自动化学院设置一、实验目的1、 通过实验了解Matlab 的编程基本方法;2、 通过实验了解Matlab 绘制根轨迹图的方法; 二、 实验原理1、 传递函数的根轨迹图定义:设方程:0)(111*111=+++++++++----m m m m n n n nb s b s b s K a s a s a S,式中m m n n b b b a a a ,,,,,,11;11-- ,为实常数,+∞<<-∞∈**K K ,为可变参数 设n n s s s ,,,11- 为该方程的n 个根,每选择一个K*值,就有一组根与之对应,在自变量s 平面上就会有一组极点与之对应,换一个K*值,会有一组新的极点与之对应,当K*在实数范围内连续变化时,对应的n 个根就会在s 平面内形成n 条轨迹线,这些轨迹线就称为该方程的根轨迹。
2、 传递函数的根轨迹图意义:已知系统的开环传递函数零、极点分布的基础上,研究某—个和某些参数的变化对系统闭环极点分布的影响的一种图解方法。
由于根轨迹图直观、完整地反映系统特征方程的根在S 平面上分布的大致情况,通过一些简单的作图和计算,就可以看到系统参数的变化对系统闭环极点的影响趋势。
这对分析研究控制系统的性能和提出改善系统性能的合理途径都具有重要意义。
3、 传递函数的根轨迹图绘制方法。
(1):rlocus (g )说明:已知系统开环传递函数为g ,使用语句rlocus (g )直接绘制系统根轨迹,可以 看出根轨迹的不同分支(各个分支以不同的颜色表示)。
(2):sisotool说明:已知系统开环传递函数为g ,同时打开根轨迹和波德图编辑窗口。
可以通过增 加零极点的方法改变根轨迹的形状,进而分析系统的性能。
(3):rltool说明:已知系统开环传递函数为g ,打开绘制根轨迹图编辑窗口。
(自动控制原理)第四章根轨迹(06改)
![(自动控制原理)第四章根轨迹(06改)](https://img.taocdn.com/s3/m/35b9dab465ce0508763213c1.png)
i 1 n
A( )e
j ( )
1 Kg
满足根轨迹方程的幅值条件和相角条件为:
由于Wk ( s )是复数,上式可写成:Wk ( s ) | Wk ( s ) A( )e j ( ) 1 | 或 A( )
| ( s z ) | li 1 | (s p j ) |
N z N p 1 2 ( 0,1,2,)
由此,满足幅值条件:
i j N z N p 180 (1 2 )
i 1 j 1
m
n
[例]: 已知系统开环零极点的分布如图示,判断z 2 和p2 之间的实轴是否存在根轨迹?
p4
p3
例题 4-1 已知开环系统的传递函数为:
K k (1s 1) Wk ( s) s(T1s 1)(T2 s 1)
求s=s0 时的放大系数K g 0。
解:改写传递函数为 K g ( s z1 ) K k 1 ( s 1 1 ) Wk ( s) T1T2 s( s 1 T1 )(s 1 T2 ) s( s p1 )(s p2 ) K k 1 K k p1 p2 Kg —— 根轨迹放大系数 T1T2 z1 K g z1 Kk —— 开环放大系数 p1 p2 可将系统的三个极点和一个有限零点画在复平面上如图:
1) 在根轨迹图中,“ ”表示开环极点,“ ”表示开环有限 值零
点。粗线表示根轨迹,箭头表示某一参数增加的方向。“ ” 表
示根轨迹上的点。
2)在绘制根轨迹时,令S平面横轴和纵轴比例尺相同。
g 3)绘制根轨迹的依据是幅角条件。
k
4)利用幅值条件计算
的值。
实验五根轨迹分析
![实验五根轨迹分析](https://img.taocdn.com/s3/m/c77e076101f69e314332948f.png)
|实验四 用MATLAB 绘制根轨迹图 (The Root Locus Using MATLAB )一、绘制系统的根轨迹在绘制根轨迹之前,先把系统的特征方程整理成标准根轨迹方程r num(s)1+G(s)H(s)=1+K =0den(s)⋅其中:rK为根轨迹增益;num(s)为系统开环传递函数的分子多项式;den(s)为系统开环传递函数的分母多项式。
绘制根轨迹的调用格式有以下三:rlocus(num,den) 开环增益k 的范围自动设定; rlocus(num,den,k) 开环增益k 的范围人工设定; [K,p]=rlocfind(G ) 确定所选定处的增益和对应的特征根。
例4.1 已知某系统的开环传递函数为s s s s K s r 424)(23+++⋅=G试绘制该系统的根轨迹。
解: 在Matlab 命令窗口键入 num=[1 4];den=[1 2 4 0]; rlocus(num,den)可得如图4-1的结果。
-5-4-3-2-11-10-8-6-4-20246810Real AxisI m a g i n a r y A x i sRoot Locus图4-1由于采用rlocus()函数绘制根轨迹时,不同的根轨迹分支之间只区分颜色而不区分线形,所以打印时是不容易分辨各个分支的,需要在运行Matlab 程序时注意观察曲线的颜色。
■例4-2 若要求例4-1中的r K 在1到10之间变化,绘制相应的根轨迹。
解 在MATLAB 命令窗口键入 num=[1 4];den=[1 2 4 0];k=[1:0.5:10]; rlocus(num,den,k)可得如图4-2.的结果。
-4.5-4-3.5-3-2.5-2-1.5-1-0.500.5Root LocusReal AxisI m a g i n a r y A x i s图4-2例4-3 设系统的开环传递函数为)22)(3(()(2+++=s s s K s s rs H G )试绘制其闭环系统的根轨迹图并在图上找出几点的相关数据。
利用Matlab绘制系统的根轨迹
![利用Matlab绘制系统的根轨迹](https://img.taocdn.com/s3/m/65482933f121dd36a32d82fc.png)
利用Matlab绘制系统的根轨迹本章前面的内容介绍了控制系统根轨迹的绘制以及利用系统大致的根轨迹图分析系统性能的方法,若要由根轨迹获得系统在某一特定参数下准确的性能指标或者准确的闭环极点,需要依据幅值条件精确地作图。
如果利用MATLAB工具箱中函数,则可方便、准确地作出根轨迹图,并利用图对系统进行分析。
MATLAB工具箱中,求系统根轨迹的几个常用函数有rlocus, rlocfind, sgrid,下面通过具体的例子来说明这些函数的应用。
例4-13 控制系统的开环传递函数为G(s)H(s)=绘制系统的根轨迹图。
解利用函数rlocus函数可直接作出系统的根轨迹图,程序如下:% example4-13 %num=[1,5];dun=[1,6,11,6,0]; rlocus(num,dun)执行该程序后,可得到如图4-20所示的根轨迹。
图4-20 例4-13题根轨迹图利用函数rolcus可画出系统的根轨迹图后,可用rlocfind函数在根轨迹上选择任意极点,得到相应的开环增益和其它闭环极点。
例4-14 控制系统的开环传递函数为绘制系统的根轨迹图,并确定根轨迹的分离点及相应的开环增益。
解将开环传递函数写为Matlab程序如下:% example4-14 %num=[1];den=[0.0002,0.03,1,0]; rlocus(num,den)title(‘Root Locus’) [k,p]=rlocfind(num,den) 程序执行过程中,先绘出系统的根轨迹,并在图形窗口中出现十字光标,提示用户在根轨迹上选择一点,这时,将十字光标移到所选择的地方,可得到该处对应的系统开环增益及其它闭环极点。
此例中,将十字光标移至根轨迹的分离点处,可得到k =9.6115p =-107.7277-21.9341-20.3383 若光标能准确定位在分离点处,则应有两个重极点,即相等。
程序执行后,得到的根轨迹图如图4-21所示。
004 第4章 线性系统的根轨迹分析
![004 第4章 线性系统的根轨迹分析](https://img.taocdn.com/s3/m/d35b01797e21af45b307a828.png)
(2)精确参数的获得: >> Kg=30.7;R= rlocus(G, Kg) % Kg时所对应的闭环极点 R= -1.3562 + 2.1562i -1.3562 - 2.1562i -0.1438 + 2.1705i -0.1438 - 2.1705i 2)使用[Kg, P]= rlocfind (G)进行参数的人工获取: >> clear;G=tf([1,1],[conv([1,-1],[1,4,16]),0]); %建立零极 点模型G(s) rlocus(G); %生成根轨迹图 [Kg, P]= rlocfind (G) %鼠标左键定轨迹上的闭极点参数
4
闭环系统稳定程度的判断:
当闭环特征根位于在s平面的右半平面时,闭环系 统不稳定;当闭环特征根位于在s平面的虚轴上时,闭 环系统临界稳定(等幅振荡);当闭环特征根位于在s 平面的左半平面时,闭环系统稳定。
闭环系统动态性能的判断:
在闭环系统稳定的情况下,当特征根位于s平面的 左半实轴上时,闭环系统的输出表现为惯性特性(单 调性);当特征根位于s左半平面的非实轴区域时,闭 环系统的输出表现为衰减振荡特性;当特征根位于s平 面的虚轴上时,闭环系统的输出表现为等幅振荡特性 ;在s右半平面时为单调或振荡发散特性。 5
2
4.1 根轨迹分析的基本思想
闭环系统的开环传递函数的根轨迹模型为:
其中,zj和pi为开环传递函数模型的零点和极点,Kg 为开环传递函数模型的根轨迹增益。系统的闭环 传递函数为:
3
闭环系统的稳定性与Gb(s)的极点,即闭环系统 的特征方程1+H(s)G(s)=0的根在s平面上的位置及其 分布有关。 闭环系统的特征根在s平面上的位置会随Kg值的 变化而变化。 根轨迹分析法就是通过改变开环传递函数Gk(s) 的根轨迹增益Kg值(0~∞)来观察闭环特征根的轨 迹变化情况,从而能够对闭环系统的稳定程度、动 态性能及结构简化(降阶)等问题进行判断、分析 与设计。
第四章 根轨迹法 matlab simulink与控制系统仿真 第三版 课件
![第四章 根轨迹法 matlab simulink与控制系统仿真 第三版 课件](https://img.taocdn.com/s3/m/7a5e7de41a37f111f1855b8a.png)
二、根轨迹对称于实轴
闭环极点为 实数→在实轴上 复数→共轭→对称于实轴
返回子目录
28
三、根轨迹的起点与终点
起于开环极点,终于开环零点。
由根轨迹方程有:
m
i 1 n
(s (s
zi ) pi)
1 K*
i1
29
起点 K* 0 → spi 0→ s pi
终点 K* → szi 0 → s zi
n
1
m
1
i1 dpi j1 dzj
z 式中: j 为各开环零点的数值;
p i 为各开环极点的数值。
50
例4-6
•已知系统的开环传递函数
G(s)H(s) K*(s1) s23s3.25
试求闭环系统的根轨迹分离点坐标d,并概 略绘制出根轨迹图。
51
解:根据系统开环传递函数求出开环极点
p 1 1 .5j1 ,p 2 1 .5j1
• 在实际应用中,用相角方程绘制根轨迹, 而模值方程主要用来确定已知根轨迹上某一点
的 K * 值。
20
例4-1
已知系统的开环传递函数 G (s)H (s)2K/(s2)2
试证明复平面上点 s1 2j4 ,s2 2j4 是该系统的闭环极点。
证明: 该系统的开环极点 p1 2, p2 2
若系统闭环极点为 s1 , s2
分离角计算公式
d1 l[2 (k1)π jm 1
n
dzj dsi]
il1
(4-45)
56
式中:
d 为分离点坐标;
z j为开环零点; si为当 kkd时,l除 个重极点外 其他 nl个非重根。
所谓会合角是指根轨迹进入重极点处 的切线与实轴正方向的夹角。
第4章 利用MATLAB绘制体系根轨迹
![第4章 利用MATLAB绘制体系根轨迹](https://img.taocdn.com/s3/m/ad1c40a93186bceb18e8bb5c.png)
增益,同时返回的 P 变量则为该增益下所有的闭环极点位置。此外,该函数还将自动地将
该增益下所有的闭环极点直接在根轨迹曲线上显示出来。
例 4.1 已知系统的开环传递函数模型为:
Gk
(s)
s(s
K 1)(s
2)
KG0 (s)
利用下面的 MATLAB 命令可容易地验证出系统的根轨迹如图 4-1 所示。 >> G=tf(1,[conv([1,1],[1,2]),0]);
1 K num 0 den
特征方程的根随参数 K 的变化而变化,即为闭环根轨迹。控制系统工具箱中提供了
rlocus()函数,可以用来绘制给定系统的根轨迹,它的调用格式有以下几种:
rlocus(num,den)
rlocus(num,den,K)
5.8142 p=
-2.29830 -0.0085+1.3961i -0.0085-1.3961i 所以,要想使此闭环系统稳定,其增益范围应为 0<K<5.81。 参数根轨迹反映了闭环根与开环增益 K 的关系。我们可以编写下面的程序,通过 K 的 变化,观察对应根处阶跃响应的变化。考虑 K=0.1,0.2,…,1,2,…,5,这些增益下闭环系统 的阶跃响应曲线。可由以下 MATLAB 命令得到。 >> hold off; % 擦掉图形窗口中原有的曲线。
工具箱中还有一个 rlocfind()函数,该函数允许用户求取根轨迹上指定点处的开环增益值,
并将该增益下所有的闭环极点显示出来。这个函数的调用格式为:
[K,P]=rlocfind(G)
这个函数运行后,图形窗口中会出现要求用户使用鼠标定位的提示,用户可以用鼠标
左键点击所关心的根轨迹上的点。这样将返回一个 K 变量,该变量为所选择点对应的开环
第四章:根轨迹法
![第四章:根轨迹法](https://img.taocdn.com/s3/m/371e251f854769eae009581b6bd97f192279bfb1.png)
第四章:根轨迹法第四章根轨迹法本章⽬录4.1 根轨迹的⼀般概念4.2 绘制根轨迹的数学依据及其性质4.3 绘制根轨迹的⼀般规则4.4 *绘制根轨迹的MATLAB函数介绍4.5 例题4.6 参数根轨迹和多回路系统的根轨迹4.7 正反馈回路和⾮最⼩相位系统根轨迹——零度根轨迹⼩结本章简介从前章得知闭环极点在根平⾯上的分布,反映着系统的固有性能。
故为了获得较好性能,就希望极点在根平⾯上有较好的分布。
亦即,为了研究系统的动态性能,就可以通过闭环极点在根平⾯上的分布来进⾏。
闭环极点是系统特征⽅程的根sb。
若其特征⽅程中,各系数变化,则⽆疑,其根sb也在变化。
各系数的变化往往相应着系统的许多实际参数的变化⽽形成。
在根迹中,⼀般总是以增益 (当然也可其它参数,如时间常数 )的变化⽽导致各系数的变化,即sb的变化。
如果连续变化,则sb也连续变化。
相应于由0连续变化到∞时, sb在根平⾯上的连续变化⽽形成的轨迹,即闭环系统特征根的根轨迹--若⼲条曲线。
这样,相应于各个值下的闭环极点在根平⾯上的分布就⼀⽬了然了。
这对系统的分析、设计带来了极⼤的⽅便.。
所谓根轨迹法,就是⽤图解的⽅法确定出闭环特征根的⼀种⽅法。
先在复数平⾯上画出系统某⼀参数的全部数值下的特征⽅程的所有根,即根轨迹。
然后⽤图解的⽅法确定出该参数某⼀特定数值时的闭环特征根。
从⽽分析出系统所具有的性能。
或反之,在根迹上先确定出符合系统性能要求的闭环特征根。
从⽽⽤图解的⽅法求出相应的系统应具有的参数值。
相对时域法,很直观,且避免了求解系统⾼阶特征⽅程的困难。
现在计算机科学有了飞速发展,特别是MATLAB语⾔及其相应⼯具箱,有强⼤的数值计算和图形绘制功能。
所以利⽤MATLAB语⾔相关函数绘制系统根迹及求根等均是轻⽽易举的事。
这就给根迹法的应⽤开辟了更好的前景。
本章在介绍传统的根轨迹法及其⽰例的同时,有机结合介绍MATLAB语⾔相关的根轨迹函数及相应⽰例的解题程序。
自动控制原理实验五利用matlab绘制系统根轨迹
![自动控制原理实验五利用matlab绘制系统根轨迹](https://img.taocdn.com/s3/m/4f5cd38250e2524de5187e9f.png)
实验五利用MATLAB绘制系统根轨迹一、实验目的(1)熟练掌握使用MATLAB绘制控制系统零极点图和根轨迹图的方法;(2)熟练使用根轨迹设计工具SISO;(2)学会分析控制系统根轨迹的一般规律;(3)利用根轨迹图进行系统性能分析;(4)研究闭环零、极点对系统性能的影响。
二、实验原理及内容1、根轨迹与稳定性当系统开环增益从变化时,若根轨迹不会越过虚轴进入s右半平面,那么系统对所有的K值都是稳定的;若根轨迹越过虚轴进入s右半平面,那么根轨迹与虚轴交点处的K值,就是临界开环增益。
应用根轨迹法,可以迅速确定系统在某一开环增益或某一参数下的闭环零、极点位置,从而得到相应的闭环传递函数。
2、根轨迹与系统性能的定性分析1)稳定性。
如果闭环极点全部位于s左半平面,则系统一定是稳定的,即稳定性只与闭环极点的位置有关,而与闭环零点位置无关。
2)运动形式。
如果闭环系统无零点,且闭环极点为实数极点,则时间响应一定是单调的;如果闭环极点均为复数极点,则时间响应一般是振荡的。
3)超调量。
超调量主要取决于闭环复数主导极点的衰减率,并与其它闭环零、极点接近坐标原点的程度有关。
4)调节时间。
调节时间主要取决于最靠近虚轴的闭环复数极点的实部绝对值;如果实数极点距虚轴最近,并且它附近没有实数零点,则调节时间主要取决于该实数极点的模值。
5)实数零、极点影响。
零点减小闭环系统的阻尼,从而使系统的峰值时间提前,超调量增大;极点增大闭环系统的阻尼,使系统的峰值时间滞后,超调量减小。
而且这种影响将其接近坐标原点的程度而加强。
【自我实践5-1】在实验内容(2)中控制系统的根轨迹上分区段取点,构造闭环系统传递函数,分别绘制其对应系统的阶跃响应曲线,并比较分析。
1:阻尼比=,k=2:阻尼比=,k=3:阻尼比= k=4:阻尼比=,k=0,3855:阻尼比=(无此阻尼,取),k=将数据填入实验数据记录表中。
阻尼比闭环极点p开环增益K自然频率n超调量%调节时间t s = + 1e+03 = += + =1 + 0 =+194\3、基于SISO 设计工具的系统根轨迹设计用根轨迹法进行系统校正过程中,分析补偿增益和附加实数(或复数)零极点之间匹配的规律。
MATLAB绘制根轨迹
![MATLAB绘制根轨迹](https://img.taocdn.com/s3/m/f03fee11cf84b9d528ea7a84.png)
追求人生的美好!
我们的共同目标!
title(‘Pole-Zero Map’) % 图形标题
求系统根轨迹
rlocus 命令可求得系统的根轨迹 格式: [ r,k ] = rlocus(num,den) [ r,k ] = rlocus(num,den,k) 不带输出变量时则绘出系统的根轨迹图,带输出 变量时给出一组r,k的对应数据。 若给定了k的取值范围,则该命令将按要求绘出图 形或数组或者输出指定增益k所对应的r值。每条 根轨迹都以不同的颜色区别。
零极点分布图
在MATLAB中,可利用pzmap( )函数绘制连 续系统的零、极点图,从而分析系统的稳 定性,该函数调用格式为: pzmap(num,den)。
给定传递函数:
利用下列命令可自动打开一个图形窗口,显示该系统的零、极点分布图。 用鼠标点击图中零、极点可自动显示其坐标值。
num=[3,2,5,4,6]; den=[1,3,4,2,7,2]; pzmap(num,den)
结果如下: r = -3.3089 k= 5
0.1545 + 1.7316i 0.1545 - 1.7316i
求根轨迹增益
rlocfind命令可求得给定根的根轨迹增益。 格式: [ k,poles ] = rlocfind(n,d) [ k,poles ] = rlocfind(num,den,p) 当代有输出变量时,可得到所有极点的座标数据和增益值。 不带输出时只得到所选点的座标和增益值。 注意:在执行这条命令前最好先执行一次根轨迹的绘图命 令,这样就可直接在根轨迹图上选取我们感兴趣的点。 其中的p是系统的根,由此可得到对应的增益值。
某系统开环传递函数为:
G(s) 2k s3 3s2 2s
MATLAB的根轨迹分析
![MATLAB的根轨迹分析](https://img.taocdn.com/s3/m/129256e7f01dc281e43af007.png)
Real AXiS QFXA W^nPaay-8 -2基于MATLAB 的根轨迹分析一. 实验目的:1. 学习利用MATLAB 的语言绘制控制系统根轨迹的方法。
2. 学习利用根轨迹分析系统的稳定性及动态特性。
二. 实验内容:1. 应用MATLAB 语句画出控制系统的根轨迹。
2. 求出系统稳定时,增益k 的范围。
3. 分析系统开环零点和极点对系统稳定性的影响。
三. 实验步骤1. 给定某系统的开环传递函数 G(S)H(S)=k∕s(s*s+4s+16)用MATLAB 与语言绘出 该系统的根轨迹。
程序如下:num=[1];den=[1,4,16,0];G=tf(nu m,de n)GI=ZPk(G)Z=tzero(G)P=pole(G)pzmap( nu m,de n);title('pole-zero MaP')rlocus( nu m,de n)根轨迹如图Root Locus864O-6-82-2结论:由上图可知增益k的取值范围:0<k<642. 将系统的开环传递函数改为:G(S)H(S)=k∕s(s*s+4s+5)绘出该系统根轨迹图,观察增加了开环零点后根轨迹图的变化情况。
程序如下:num=[1,1];den=[1,4,5,0];G=tf(nu m,de n)GI=ZPk(G)Z=tzero(G)P=pole(G)pzmap( nu m,de n);title('pole-zero MaP')rlocus( nu m,de n)根轨迹如图结论:增加了开环零点后根轨迹的变化-2.5-2 -1.5 -1Real AXiS-0.5 0Root Locus43 2OCFXA VyanLya PI I I II I I I3. 将系统的开环传递函数改为:G(S)H(S)=k∕s(s-1)(s*s+4s+5)绘出该系统的根轨迹图,观察增加了开环零点后根轨迹的变化情况。
用MATLAB绘制根轨迹
![用MATLAB绘制根轨迹](https://img.taocdn.com/s3/m/10d7c738da38376bae1faeae.png)
.
1
利用根轨迹,可以对闭环系统的性能进行分析和校正 ❖ 由给定参数确定闭环系统的零极点的位置; ❖ 分析参数变化对系统稳定性的影响; ❖ 分析系统的瞬态和稳态性能; ❖ 根据性能要求确定系统的参数; ❖ 对系统进行校正。
.
2
一、 条件稳定系统的分析 [例4-11]:设开环系统传递函数为:G k(s)s(s4k)gs((s26 )2s(s2 4 1).4s1) 试绘制根轨迹并讨论使闭环系统稳定时 k g 的区值范围。
.
27
[例4-16]:已知单位反馈系统的根轨迹如下图所示。 (1)写出该系统的闭环传递函数; (2)试用适当的方法使系统在任意K值时均处于稳定的状态。
.
28
[解]:①
由根轨迹图知系统的开环传递函数为:Gs
s2
k
s 6
单位反馈系统的闭环传递函数为:
ss2s k6ks26 ksk
② 当在系统中加入比例微分控制时,开环传递函数增加了一个
解得:kg 44
k ( i s 1)
开环传递函数以G k (s)
i 1 n
的形式表示时,k称为开环放
大系数。
(T j s 1)
j 1
显然 k与 k g 的关系为:k kg
zi ,式中 p j 不计0极点。 pj
所以,开环放大系数:k 44 1.83
46
由于闭环极点之和等于开环极点之和,所以另一个闭环极点
电子工业出版社 MATLAB控制系统设计,欧阳黎明著,
国防工业出版社
.
16
[M例a子tla]b系画统出的系开统环的传根递轨函迹数。为:Gk(s)s(s11)(s2) ,试利用 [解]打开Matlab,创建一个m文件,输入下列程序片段:
MATLAB-根轨迹绘制
![MATLAB-根轨迹绘制](https://img.taocdn.com/s3/m/095edbafb1717fd5360cba1aa8114431b90d8efe.png)
MATLAB-根轨迹绘制主要涉及rlocus等函数的使⽤,临界增益的求解和根轨迹图(root locus)的绘制1.开环与闭环关系 对于⼀个系统,其开环函数为 G=k⋅G0(s)⋅H(s),则其闭环函数为 k⋅G0(s)1+k⋅G0(s)⋅H(s),闭环特征⽅程为 1+k⋅G0(s)⋅H(s)=0(1)这说明了闭环极点可以由开环函数确定。
2.根轨迹 系统的根轨迹是从0到 ∞ 连续取k,每取⼀个k,便在⽅程(1)中求出对应的闭环特征根,这样的根形成的闭环根轨迹被称为根轨迹图。
3.rlocus函数 rlocus(sym)或rlocus(num,den)指令可以直接根据开环函数sys=G0(s)⋅H(s)(这⾥不含k,运算时会⾃动配置变化的增益k)绘制出系统的根轨迹图。
例如:求取开环传递函数G(s)=k⋅(s+2)(s2+4s+3)2对应系统的根轨迹num=[1 2];f=[1 4 3];den=conv(f,f);sys=tf(num,den);figure(1);rlocus(sys);运⾏结果为4.如何求解临界增益 即求解虚轴上的极点的坐标值,及其所对应的临界增益k。
主要原理是:将s=jw⼿动带⼊(因为落在虚轴上实部为0)⽅程(1),然后将带⼊后的⽅程分别分为实部和虚部放⼊matlab解⼀个⼆元⼆次⽅程就可以求解出w和k。
实现代码如下//(承接前⾯的代码)syms w k;eqns=[w^4-22*w^2+9+2*k==0,-8*w^3+(24+k)*w==0];vars=[w k];[solw,solk]=solve(eqns,vars);k1=double(vpa(solk(3),6));sys2=tf(k1*num,den);sys3=sys2/(1+sys2);figure(2);impulse(sys3);xlim([0 20]);Processing math: 100%。
实验四基于MATLAB的根轨迹绘制与性能分析
![实验四基于MATLAB的根轨迹绘制与性能分析](https://img.taocdn.com/s3/m/b6a12b650622192e453610661ed9ad51f01d54a9.png)
实验四基于MATLAB的根轨迹绘制与性能分析一、实验目的1.了解根轨迹的概念和作用;2.学习使用MATLAB绘制根轨迹;3.通过根轨迹进行系统性能分析。
二、实验原理1.根轨迹的概念根轨迹是指随着系统参数变化,系统极点随参数变化所经过的连续点的轨迹。
根轨迹可以用来表示系统的动态性能,并可以用来分析系统的稳定性、抗干扰能力以及动态响应等。
2.根轨迹的绘制方法根轨迹的绘制方法主要有以下几步:(1)确定系统传递函数的开环极点和零点;(2)根据系统传递函数的特征方程确定根轨迹起始点和抵达无穷远点的分支数量;(3)确定分支的方向;(4)计算根轨迹抵达无穷远点的角度;(5)计算根轨迹与实轴的交点。
三、实验步骤1.准备工作(1)安装MATLAB软件,并确保已安装了Control System Toolbox;(2)准备所需绘制根轨迹的系统传递函数。
2.绘制根轨迹(1)在MATLAB命令窗口中输入以下命令,定义系统传递函数:G = tf([1],[1 2 3]);(2)输入以下命令,绘制系统的根轨迹:rlocus(G);3.性能分析(1)根据根轨迹的形状,可以判断系统的稳定性。
如果根轨迹与实轴相交的次数为奇数,则系统是不稳定的。
(2)根据根轨迹的形状以及相交点的位置,可以判断系统的过渡过程的振荡性和阻尼性。
(3)根据根轨迹抵达无穷远点时的角度,可以判断系统的相对稳定性。
角度接近0或180度时,系统相对稳定。
(4)根据根轨迹抵达实轴的位置,可以判断系统的动态性能。
抵达实轴的位置越远离原点,系统的动态响应越快。
四、实验结果分析通过上述步骤,我们可以得到系统的根轨迹图,并根据根轨迹图进行性能分析。
根据根轨迹的形状、交点位置、角度以及抵达实轴的位置,我们可以判断系统的稳定性、过渡过程的振荡性和阻尼性、相对稳定性以及动态响应速度。
根轨迹分析可以帮助我们设计和优化系统的控制器,从而改善系统的性能。
五、实验总结本实验通过MATLAB绘制根轨迹,并利用根轨迹进行系统性能分析。
用MATLAB用于根轨迹分析
![用MATLAB用于根轨迹分析](https://img.taocdn.com/s3/m/7840b825aaea998fcc220ea6.png)
例4.2.1的根轨迹
若 G (s) k k 3 s ( s 1)( s 2) s 3s 2 2 s 在MATLAB环境下键入 rlocus ([1 ],[1 3 2 0])
在根轨迹上画出等阻尼比曲线
>> rlocus(1,[1,3,2,0]) >> grid
axis equal
根轨迹图相同
Root Locus 1.5 0.91 0.84 0.74 0.6 0.42 0.22
1
0.96
0.5 0.99
Imaginary Axis
0
3
2.5
2
1.5
1
0.5
-0.5 0.99
-1
0.96
-1.5
0.91 -3 -2.5
0.84 -2
0.74 -1.5
0.6 -1
0.42
0.22 0 0.5
命令使纵、横坐标比例尺相等
例4.2.6的根轨迹
k k G ( s) 4 2 s ( s 2.73)( s 2s 2) s 4.73s 3 7.46s 2 5.46s rlocus ( [ 1 ] , [1 4.73 7.46 5.46 0] )
零点的作用
k G ( s) H ( s) 2 s ( s 3)
rlocfind()函数
该函数执行后,可用光标(十字)单击根轨迹上一点, 会在根轨迹上用红十字标出n个极点位置,命令窗口中出 现n个极点坐标值和对应的k值。
>>g=tf([1],[1,3,2,0]); >> rlocus(g); >> [k,p]=rlocfind(g)
用光标(十字)点根轨迹上一点
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章 利用MATLAB 绘制系统根轨迹一、 利用MATLAB 绘制系统根轨迹相关知识假设闭环系统中的开环传递函数可以表示为:)()())(()())(()(021********s KG p s p s p s z s z s z s K den numK a s a s a s b b s b s K s G n m nn n n m m m m k =+⋅⋅⋅+++⋅⋅⋅++==++⋅⋅⋅++++⋅⋅⋅++=---- 则闭环特征方程为: 01=+dennumK特征方程的根随参数K 的变化而变化,即为闭环根轨迹。
控制系统工具箱中提供了rlocus()函数,可以用来绘制给定系统的根轨迹,它的调用格式有以下几种:rlocus(num ,den) rlocus(num ,den ,K) 或者 rlocus(G) rlocus(G ,K)以上给定命令可以在屏幕上画出根轨迹图,其中G 为开环系统G 0(s)的对象模型,K 为用户自己选择的增益向量。
如果用户不给出K 向量,则该命令函数会自动选择K 向量。
如果在函数调用中需要返回参数,则调用格式将引入左端变量。
如[R ,K]=rlocus(G)此时屏幕上不显示图形,而生成变量R 和K 。
R 为根轨迹各分支线上的点构成的复数矩阵,K 向量的每一个元素对应于R 矩阵中的一行。
若需要画出根轨迹,则需要采用以下命令:plot(R ,¹¹)plot()函数里引号内的部分用于选择所绘制曲线的类型,详细内容见表1。
控制系统工具箱中还有一个rlocfind()函数,该函数允许用户求取根轨迹上指定点处的开环增益值,并将该增益下所有的闭环极点显示出来。
这个函数的调用格式为:[K ,P]=rlocfind(G)这个函数运行后,图形窗口中会出现要求用户使用鼠标定位的提示,用户可以用鼠标左键点击所关心的根轨迹上的点。
这样将返回一个K 变量,该变量为所选择点对应的开环增益,同时返回的P 变量则为该增益下所有的闭环极点位置。
此外,该函数还将自动地将该增益下所有的闭环极点直接在根轨迹曲线上显示出来。
例4.1 已知系统的开环传递函数模型为:)()2)(1()(0s KG s s s Ks G k =++=利用下面的MATLAB 命令可容易地验证出系统的根轨迹如图4-1所示。
>> G=tf(1,[conv([1,1],[1,2]),0]); rlocus(G); gridtitle(¹Root_Locus Plot of G(s)=K/[s(s+1)(s+2)]¹) xlabel(¹Real Axis ¹) % 给图形中的横坐标命名。
ylabel(¹Imag Axis¹) % 给图形中的纵坐标命名。
[K,P]=rlocfind(G)用鼠标点击根轨迹上与虚轴相交的点,在命令窗口中可发现如下结果select_point=0.0000+1.3921iK=5.8142p=-2.29830-0.0085+1.3961i-0.0085-1.3961i所以,要想使此闭环系统稳定,其增益范围应为0<K<5.81。
参数根轨迹反映了闭环根与开环增益K的关系。
我们可以编写下面的程序,通过K的变化,观察对应根处阶跃响应的变化。
考虑K=0.1,0.2,…,1,2,…,5,这些增益下闭环系统的阶跃响应曲线。
可由以下MATLAB命令得到。
>> hold off; % 擦掉图形窗口中原有的曲线。
图4-1系统的根轨迹t=0:0.2:15;Y=[ ];for K=[0.1:0.1:1,2:5]GK=feedback(K*G,1);y=step(GK,t);Y=[Y,y];endplot(t,Y)对于for循环语句,循环次数由K给出。
系统画出的图形如图4-2所示。
可以看出,当K的值增加时,一对主导极点起作用,且响应速度变快。
一旦K接近临界K值,振荡加剧,性能变坏。
4. MATLAB 绘图的基本知识通过以上实例的应用,我们已初步尝试了MATLAB 的绘图功能。
MATLAB 具有丰富的获取图形输出的程序集。
我们已用命令plot()产生线性x-y 图形(用命令loglog 、semilogx 、semilogy 或polar 取代命令plot,可以产生对数坐标图和极坐标图)。
所有这些命令的应用方式都是相似的,它们只是在如何给坐标轴进行分度和如何显示数据上有所差别。
(1)二维图形绘制如果用户将X 和Y 轴的两组数据分别在向量x 和y 中存储,且它们的长度相同,则命令plot(x,y)将画出y 值相对于x 值的关系图。
例4.2 如果想绘制出一个周期内的正弦曲线,则首先应该用t=0:0.01:2*pi (pi 是系统自定义的常数,可用help 命令显示其定义)命令来产生自变量t ;然后由命令y=sin(t)对t 向量求出正弦向量y,这样就可以调用plot(t,y)来绘制出所需的正弦曲线,如图4-3所示。
(2)一幅图上画多条曲线。
图4-2 不同K 值下的阶跃响应曲线图4-3一个周期内的正弦曲线利用具有多个输入变量的plot( )命令,可以在一个绘图窗口上同时绘制多条曲线,命令格式为:plot(x1,Y1,x2,Y2,…,xn,Yn)x1、Y1、x2、Y2等一系列变量是一些向量对,每一个x-y对都可以用图解表示出来,因而可以在一幅图上画出多条曲线。
多重变量的优点是它允许不同长度的向量在同一幅图上显示出来。
每一对向量采用不同的线型以示区别。
另外,在一幅图上叠画一条以上的曲线时,也可以利用hold命令。
hold命令可以保持当前的图形,并且防止删除和修改比例尺。
因此,后来画出的那条曲线将会重叠在原曲线图上。
当再次输入命令hold,会使当前的图形复原。
也可以用带参数的hold命令――hold on 和hold off来启动或关闭图形保持。
(3)图形的线型和颜色为了区分多幅图形的重叠表示,MATLAB提供了一些绘图选项,可以用不同的线型或颜色来区分多条曲线,常用选项见下表4-1表4-1MATLAB绘图命令的多种选项选项意义选项意义′-′实线′--′短划线′: ′虚线′-.′点划线′r′红色′*′用星号绘制各个数据点′b′蓝色′o′用圆圈绘制各个数据点′g′绿色′.′用圆点绘制各个数据点′y′黄色′×′用叉号绘制各个数据点表4-1中绘出的各个选项有一些可以并列使用,能够对一条曲线的线型和颜色同时作出规定。
例如′--g′表示绿色的短划线。
带有选项的曲线绘制命令的调用格式为:plot(X1,Y1,S1,X2,Y2,S2,…) (4)加进网络线、图形标题、x轴和y轴标记一旦在屏幕上显示出图形,就可以依次输入以下相应的命令将网络格线、图形标题、x、y轴标记叠加在图形上。
命令格式如下:grid(网络线)title(′图形标题′)xlabel(′x轴标记′)ylabel(′y轴标记′)函数引号内的字符串将被写到图形的坐标轴上或标题位置。
(5)在图形屏幕上书写文本。
如果想在图形窗口中书写文字,可以单击按钮,选择屏幕上一点,点击鼠标,在光标处输入文字。
另一种输入文字的方法是用text()命令。
它可以在屏幕上以(x,y)为坐标的某处书写文字,命令格式如下:text(x,y,′text′)例如,利用语句text(3,0.45,′sint ′)将从点(3,0.45)开始,水平的写出“sint ”。
(6)自动绘图算法及手工坐标轴定标在MATLAB 图形窗口中,图形的横、纵坐标是自动标定的,在另一幅图形画出之前,这幅图形作为现行图将保持不变,但是在另一幅图形画出后,原图形将被删除,坐标轴自动地重新标定。
关于瞬态响应曲线、根轨迹、伯德图、奈魁斯特图等的自动绘图算法已经设计出来,它们对于各类系统具有广泛的适用性,但是并非总是理想的。
因此,在某些情况下,可能需要放弃绘图命令中的坐标轴自动标定特性,由用户自己设定坐标范围,可以在程序中加入下列语句:v=[x-min x-max y-min y-max]axis(v)式中v 是一个四元向量。
axis(v)把坐标轴定标建立在规定的范围内。
对于对数坐标图,v 的元素应为最小值和最大值的常用对数。
执行axis(v)会把当前的坐标轴标定范围保持到后面的图中,再次键入axis 可恢复系统的自动标定特性。
Axis(′sguare ′)能够把图形的范围设定在方形范围内。
对于方形长宽比,其斜率为1的直线恰位于45o上,它不会因屏幕的不规则形状而变形。
Axis(′normal ′)将使长宽比恢复到正常状态。
二、附录 利用MATLAB 绘制系统根轨迹的一些其它实例例4.3 已知知一单位反馈系统开环传函为)2s 2s )(6s )(5s (s )3s (k )s (G 2+++++=试在根轨迹上选择一点,求出该点的增益k 及其闭环极点的位置,并判断在该点系统的稳定性。
程序: num=[1,3];den=conv(conv(conv([1 0],[1 5]),[1 6]),[1 2 2]); rlocus(num,den);[k,poles]=rlocfind(sys); range=[33:1:37]';cpole=rlocus(num,den,range); [range,cpole] 结果:selected_point = -5.3780 - 0.0476i ans =Columns 1 through 533.0000 -5.5745 + 0.6697i -5.5745 - 0.6697i -1.7990 -0.0260 + 1.3210i 34.0000 -5.5768 + 0.6850i -5.5768 - 0.6850i -1.8154 -0.0155 + 1.3340i 35.0000 -5.5791 + 0.7001i -5.5791 - 0.7001i -1.8313 -0.0052 + 1.3467i 36.0000 -5.5815 + 0.7147i -5.5815 - 0.7147i -1.8466 0.0048 + 1.3591i37.0000 -5.5838 + 0.7291i -5.5838 - 0.7291i -1.8615 0.0146 + 1.3712iColumn 6-0.0260 - 1.3210i-0.0155 - 1.3340i-0.0052 - 1.3467i0.0048 - 1.3591i0.0146 - 1.3712i>>例4.4 已知带有延迟因子的系统开环传递函数为:se)1s5.0)(1s(s1)s(G-++=1)试绘制根轨迹图;2)求系统临界稳定时根轨迹增益;3)求系统k=0.5时单位阶跃响应曲线。