rlocus
动态系统的根轨迹图
说明
rlocus(sys1,sys2,...)
在一个图上绘制多个 LTI 模型 sys1, sys2,...
的根轨迹。您可以为每个模型指定颜色、线型和标记。有关更多绘图自定义选项,请参阅 rlocusplot
。
示例
动态系统的根轨迹图
对于此示例,绘制以下 SISO 动态系统的根轨迹:
sys = tf([2 5 1],[1 2 3]); rlocus(sys)
在根轨迹图上,系统的极点用 x
表示,零点用 o
表示。您可以使用生成的根轨迹图中的菜单来添加网格线、放大或缩小,还可以调用属性编辑器来自定义该图。
有关更多绘图自定义选项,请使用 rlocusplot
。
多个动态系统模型的根轨迹图
对于此示例,假设 sisoModels.mat
包含以下三个 SISO 模型:
sys1
一个传递函数模型sys2
一个状态空间模型sys3
一个零极点增益模型
从 mat
文件中加载模型。
load('sisoModels.mat','sys1','sys2','sys3');
使用 rlocus
创建根轨迹图,并指定每个系统的颜色。还要向根轨迹图中添加一个图例。
rlocus(sys1,'b',sys2,'k',sys3,'r') hold on legend('sys1','sys2','sys3') hold off
该图在同一绘图中包含所有三个系统的根轨迹图。有关更多绘图自定义,请参阅 rlocusplot
。
使用根轨迹的闭环极点和反馈增益值
对于此示例,假设有以下 SISO 传递函数模型:
使用上述传递函数模型和 rlocus
提取闭环极点和相关联的反馈增益值。
sys = tf([3 0 1],[9 7 5 6]); [r,k] = rlocus(sys)
r = 3×53 complex
102 ×
-0.0094 + 0.0000i -0.0104 + 0.0000i -0.0105 + 0.0000i -0.0106 + 0.0000i -0.0107 + 0.0000i -0.0108 + 0.0000i -0.0109 + 0.0000i -0.0111 + 0.0000i -0.0112 + 0.0000i -0.0113 + 0.0000i -0.0115 + 0.0000i -0.0117 + 0.0000i -0.0119 + 0.0000i -0.0121 + 0.0000i -0.0124 + 0.0000i -0.0126 + 0.0000i -0.0129 + 0.0000i -0.0132 + 0.0000i -0.0135 + 0.0000i -0.0139 + 0.0000i -0.0143 + 0.0000i -0.0148 + 0.0000i -0.0152 + 0.0000i -0.0158 + 0.0000i -0.0163 + 0.0000i -0.0170 + 0.0000i -0.0177 + 0.0000i -0.0184 + 0.0000i -0.0192 + 0.0000i -0.0201 + 0.0000i -0.0211 + 0.0000i -0.0222 + 0.0000i -0.0233 + 0.0000i -0.0246 + 0.0000i -0.0259 + 0.0000i -0.0274 + 0.0000i -0.0290 + 0.0000i -0.0307 + 0.0000i -0.0326 + 0.0000i -0.0346 + 0.0000i -0.0368 + 0.0000i -0.0392 + 0.0000i -0.0418 + 0.0000i -0.0446 + 0.0000i -0.0476 + 0.0000i -0.0508 + 0.0000i -0.0543 + 0.0000i -0.0582 + 0.0000i -0.0623 + 0.0000i -0.0667 + 0.0000i
0.0008 + 0.0084i 0.0006 + 0.0083i 0.0006 + 0.0082i 0.0006 + 0.0082i 0.0006 + 0.0082i 0.0006 + 0.0082i 0.0005 + 0.0082i 0.0005 + 0.0082i 0.0005 + 0.0082i 0.0005 + 0.0081i 0.0005 + 0.0081i 0.0004 + 0.0081i 0.0004 + 0.0081i 0.0004 + 0.0080i 0.0004 + 0.0080i 0.0003 + 0.0080i 0.0003 + 0.0080i 0.0003 + 0.0079i 0.0002 + 0.0079i 0.0002 + 0.0078i 0.0002 + 0.0078i 0.0002 + 0.0078i 0.0001 + 0.0077i 0.0001 + 0.0077i 0.0001 + 0.0076i 0.0000 + 0.0076i 0.0000 + 0.0075i -0.0000 + 0.0074i -0.0000 + 0.0074i -0.0000 + 0.0073i -0.0001 + 0.0073i -0.0001 + 0.0072i -0.0001 + 0.0071i -0.0001 + 0.0071i -0.0001 + 0.0070i -0.0001 + 0.0070i -0.0001 + 0.0069i -0.0001 + 0.0068i -0.0001 + 0.0068i -0.0001 + 0.0067i -0.0001 + 0.0067i -0.0001 + 0.0066i -0.0001 + 0.0066i -0.0001 + 0.0065i -0.0001 + 0.0065i -0.0001 + 0.0064i -0.0001 + 0.0064i -0.0001 + 0.0064i -0.0001 + 0.0063i -0.0001 + 0.0063i
0.0008 - 0.0084i 0.0006 - 0.0083i 0.0006 - 0.0082i 0.0006 - 0.0082i 0.0006 - 0.0082i 0.0006 - 0.0082i 0.0005 - 0.0082i 0.0005 - 0.0082i 0.0005 - 0.0082i 0.0005 - 0.0081i 0.0005 - 0.0081i 0.0004 - 0.0081i 0.0004 - 0.0081i 0.0004 - 0.0080i 0.0004 - 0.0080i 0.0003 - 0.0080i 0.0003 - 0.0080i 0.0003 - 0.0079i 0.0002 - 0.0079i 0.0002 - 0.0078i 0.0002 - 0.0078i 0.0002 - 0.0078i 0.0001 - 0.0077i 0.0001 - 0.0077i 0.0001 - 0.0076i 0.0000 - 0.0076i 0.0000 - 0.0075i -0.0000 - 0.0074i -0.0000 - 0.0074i -0.0000 - 0.0073i -0.0001 - 0.0073i -0.0001 - 0.0072i -0.0001 - 0.0071i -0.0001 - 0.0071i -0.0001 - 0.0070i -0.0001 - 0.0070i -0.0001 - 0.0069i -0.0001 - 0.0068i -0.0001 - 0.0068i -0.0001 - 0.0067i -0.0001 - 0.0067i -0.0001 - 0.0066i -0.0001 - 0.0066i -0.0001 - 0.0065i -0.0001 - 0.0065i -0.0001 - 0.0064i -0.0001 - 0.0064i -0.0001 - 0.0064i -0.0001 - 0.0063i -0.0001 - 0.0063i
k = 1×53
0 0.4201 0.4542 0.4911 0.5309 0.5740 0.6205 0.6709 0.7253 0.7841 0.8477 0.9165 0.9908 1.0712 1.1581 1.2521 1.3536 1.4634 1.5822 1.7105 1.8493 1.9993 2.1614 2.3368 2.5263 2.7313 2.9529 3.1924 3.4514 3.7313 4.0340 4.3613 4.7151 5.0975 5.5111 5.9581 6.4415 6.9640 7.5289 8.1397 8.8000 9.5138 10.2856 11.1200 12.0220 12.9973 14.0516 15.1915 16.4238 17.7561
由于 sys
包含 3 个极点,因此生成的极点数组 r
的大小为 3×53。r
中的每列对应于向量 k 中的一个增益值。对于此示例,
rlocus
自动选择 k
的从零到无穷大的 53 个值,以获得三个闭环极点的平滑轨迹。
display(r(:,39))
-3.2585 + 0.0000i -0.0145 + 0.6791i -0.0145 - 0.6791i
display(k(39))
7.5289
例如,r(:,39)
包含反馈增益值为 7.5289 的上述闭环极点。
一组反馈增益值的闭环极点位置
对于此示例,假设有以下 SISO 传递函数模型:
定义传递函数模型和必需的反馈增益值向量。对于此示例,假设一组增益值从 1 到 8 变化,增量为 0.5,并使用 rlocus
提取闭环极点位置。
sys = tf([0.5 0 -1],[4 0 3 0 2]); k = (1:0.5:5); r = rlocus(sys,k); size(r)
ans = 1×2
4 9
由于 sys
包含 4 个闭环极点,因此生成的闭环极点位置数组 r
的大小为 4×9,其中 9 列对应于在 k
中定义的 9 个特定增益值。
您还可以在根轨迹图上可视化 k
中特定增益值的闭环极点轨迹。
rlocus(sys,k)
输入参数
sys
— SISO 动态系统
tf
对象 | ss
对象 | zpk
对象
SISO 动态系统,指定为以下项之一:
广义或不确定的 LTI 模型,如
genss
或uss
(Robust Control Toolbox) 模型。(使用不确定模型需要 Robust Control Toolbox™ 软件。)rlocus
假设:可调控制设计模块的可调组件的当前值。
不确定控制设计模块的标称模型值。
辨识的 LTI 模型,如
idtf
(System Identification Toolbox)、idss
(System Identification Toolbox)、idproc
(System Identification Toolbox)、idpoly
(System Identification Toolbox) 和idgrey
(System Identification Toolbox) 模型。(使用辨识模型需要 System Identification Toolbox™ 软件。)
k
— 反馈增益值
向量
与极点位置相关的反馈增益值,指定为向量。反馈增益定义极点的轨迹,从而影响根轨迹图的形状。
输出参量
提示
有关根轨迹绘制的交互式方法,请参阅控制系统设计器。
版本历史记录
在 R2006a 之前推出
另请参阅
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)