本博文通过实例对控制系统根轨迹绘制进行介绍,展示使用MATLAB对控制系统进行根轨迹绘制,目的是让同学们掌握使用MATLAB对控制系统进行根轨迹绘制的方法。
- 控制系统方框图
- 控制系统根轨迹代码区
① 建立控制系统模型
%控制系统建立
G1=5;
G2=tf([1 0],[1]);
G4=tf([1],[1 0]);
G5=tf([1],[1 2]);
G6=tf([1],[1 3]);
%系统连接
G12=parallel(G1,G2);
G56=series(G5,G6);
G456=series(G4,G56);
G=series(G12,G456) %控制系统开环函数
%控制系统开环函数
G =
s + 5
-----------------
s^3 + 5 s^2 + 6 s
Continuous-time transfer function.
② 由MATLAB结果得,控制系统开环传递函数是
G ( s ) = K ( s + 5 ) s 3 + 5 s 2 + 6 s G(s)=\frac{K(s+5)}{s^3+5s^2+6s} G(s)=s3+5s2+6sK(s+5)
③ 绘制零极点分布图、根轨迹
%绘制零极点分布图
figure(1)
pzmap(G);
%绘制根轨迹
figure(2)
rlocus(G);
a.零极点分布图
b.根轨迹
c.临界阻尼的 K K K和闭环极点
%在MATLAB命令窗口输入rlocfind(G)
rlocfind(G) %在根轨迹图上出现"+"提示符,选中响应的位置,回车
%结果如下
>> rlocfind(G)
Select a point in the graphics window
selected_point =
-0.8800 + 0.0000i
ans =
0.5072
- 根轨迹知识点剖析
a.绘制零极点分布图
命令格式: [ p , z ] = p z m a p ( s y s ) [p,z]=pzmap(sys) [p,z]=pzmap(sys)
其中,极点用" × \times ד表示,零点用” o o o"表示。
b.绘制根轨迹图
① 将特征方程化成 1 + K p ( s ) q ( s ) = 0 1+K\frac{p(s)}{q(s)}=0 1+Kq(s)p(s)=0,得到等效开环传递函数 G ( s ) = p ( s ) q ( s ) G(s)=\frac{p(s)}{q(s)} G(s)=q(s)p(s);
② 使用 r l o c u s rlocus rlocus命令绘制根轨迹
命令格式: r l o c u s ( G ) rlocus(G) rlocus(G)
c.计算系统临界阻尼对应的 K K K值和对应的闭环极点
① 在 M A T L A B MATLAB MATLAB命令窗口使用 r l o c f i n d ( G ) rlocfind(G) rlocfind(G)命令
命令格式: r l o c f i n d ( G ) rlocfind(G) rlocfind(G)
② 在根轨迹图上选择对应的位置,回车即可
- 延伸知识点
① 18 0 ∘ 180^\circ 180∘根轨迹绘制法则
序号 | 内容 | 法则 |
---|---|---|
法则1 | 根轨迹的起点和终点 | 根轨迹起于开环极点,终于开环零点 |
法则2 | 根轨迹的分支数,对称性和连续性 | 根轨迹的分支数等于开环极点数 n ( n > m ) n(n>m) n(n>m),或开环零点数 m ( m > n ) m(m>n) m(m>n),根轨迹对称于实轴 |
法则3 | 根轨迹的渐近线 | n − m n-m n−m条渐近线与实轴的交角和交点 ϕ a = ( 2 k + 1 ) π n − m ( k = 0 , 1 , … … , n − m − 1 ) \phi_a=\frac{(2k+1)\pi}{n-m}(k=0,1,……,n-m-1) ϕa=n−m(2k+1)π(k=0,1,……,n−m−1) σ a = ∑ i = 1 n p i − ∑ j = 1 m z j n − m \sigma_a=\frac{\sum_{i=1}^n{p_i}-\sum_{j=1}^m{z_j}}{n-m} σa=n−m∑i=1npi−∑j=1mzj |
法则4 | 根轨迹在实轴上的分布 | 实轴上某一区域,若其右方开环实数零极点个数之和为奇数,则该区域必为根轨迹 |
法则5 | 根轨迹的分离点与分离角 | l l l条根轨迹分支相遇,其分离点坐标由 ∑ j = 1 m 1 d − z j = ∑ i = 1 n 1 d − p i \sum_{j=1}^m{\frac{1}{d-z_j}}=\sum_{i=1}^n{\frac{1}{d-p_i}} j=1∑md−zj1=i=1∑nd−pi1确定;分离角等于 ( 2 k + 1 ) π l \frac{(2k+1)\pi}{l} l(2k+1)π |
法则6 | 根轨迹的起始角与终止角 | 起始角: θ p i = ( 2 k + 1 ) π + ( ∑ j = 1 m ϕ z j p i − ∑ j = 1 , j ≠ 1 n θ p j p i ) \theta_{p_i}=(2k+1)\pi+(\sum_{j=1}^m\phi_{z_jp_i}-\sum_{j=1,j≠1}^n\theta_{p_jp_i}) θpi=(2k+1)π+(j=1∑mϕzjpi−j=1,j=1∑nθpjpi);终止角: ϕ z i = ( 2 k + 1 ) π − ( ∑ j = 1 , j ≠ i m ϕ z j z i − ∑ j = 1 n θ p j z i ) \phi_{z_i}=(2k+1)\pi-(\sum_{j=1,j≠i}^m\phi_{z_jz_i}-\sum_{j=1}^n\theta_{p_jz_i}) ϕzi=(2k+1)π−(j=1,j=i∑mϕzjzi−j=1∑nθpjzi) |
法则7 | 根轨迹与虚轴的交点 | 根轨迹与虚轴交点的 K ∗ K^* K∗值和 ω \omega ω值,可用劳斯判据确定 |
法则8 | 根之和 | ∑ i = 1 n s i = ∑ i = 1 n p i \sum_{i=1}^n{s_i}=\sum_{i=1}^n{p_i} i=1∑nsi=i=1∑npi |
② 0 ∘ 0^\circ 0∘根轨迹绘制法则
序号 | 内容 | 法则 |
---|---|---|
法则1 | 根轨迹的起点和终点 | 根轨迹起于开环极点,终于开环零点 |
法则2 | 根轨迹的分支数,对称性和连续性 | 根轨迹的分支数等于开环极点数 n ( n > m ) n(n>m) n(n>m),或开环零点数 m ( m > n ) m(m>n) m(m>n),根轨迹对称于实轴 |
法则3 | 根轨迹的渐近线 | n − m n-m n−m条渐近线与实轴的交角和交点 ϕ a = 2 k π n − m ( k = 0 , 1 , … … , n − m − 1 ) \phi_a=\frac{2k\pi}{n-m}(k=0,1,……,n-m-1) ϕa=n−m2kπ(k=0,1,……,n−m−1) σ a = ∑ i = 1 n p i − ∑ j = 1 m z j n − m \sigma_a=\frac{\sum_{i=1}^n{p_i}-\sum_{j=1}^m{z_j}}{n-m} σa=n−m∑i=1npi−∑j=1mzj |
法则4 | 根轨迹在实轴上的分布 | 实轴上某一区域,若其右方开环实数零极点个数之和为偶数,则该区域必为根轨迹 |
法则5 | 根轨迹的分离点与分离角 | l l l条根轨迹分支相遇,其分离点坐标由 ∑ j = 1 m 1 d − z j = ∑ i = 1 n 1 d − p i \sum_{j=1}^m{\frac{1}{d-z_j}}=\sum_{i=1}^n{\frac{1}{d-p_i}} j=1∑md−zj1=i=1∑nd−pi1确定;分离角等于 ( 2 k + 1 ) π l \frac{(2k+1)\pi}{l} l(2k+1)π |
法则6 | 根轨迹的起始角与终止角 | 起始角: θ p i = 2 k π + ( ∑ j = 1 m ϕ z j p i − ∑ j = 1 , j ≠ 1 n θ p j p i ) \theta_{p_i}=2k\pi+(\sum_{j=1}^m\phi_{z_jp_i}-\sum_{j=1,j≠1}^n\theta_{p_jp_i}) θpi=2kπ+(j=1∑mϕzjpi−j=1,j=1∑nθpjpi)终止角: ϕ z i = 2 k π − ( ∑ j = 1 , j ≠ i m ϕ z j z i − ∑ j = 1 n θ p j z i ) \phi_{z_i}=2k\pi-(\sum_{j=1,j≠i}^m\phi_{z_jz_i}-\sum_{j=1}^n\theta_{p_jz_i}) ϕzi=2kπ−(j=1,j=i∑mϕzjzi−j=1∑nθpjzi) |
法则7 | 根轨迹与虚轴的交点 | 根轨迹与虚轴交点的 K ∗ K^* K∗值和 ω \omega ω值,可用劳斯判据确定 |
法则8 | 根之和 | ∑ i = 1 n s i = ∑ i = 1 n p i \sum_{i=1}^n{s_i}=\sum_{i=1}^n{p_i} i=1∑nsi=i=1∑npi |
- 综合训练题
已知单位负反馈系统的开环传递函数为 G ( s ) = 20 ( s + 4 ) ( s + K ) G(s)=\frac{20}{(s+4)(s+K)} G(s)=(s+4)(s+K)20试画出 K K K从零变化到无穷时的根轨迹图,并求出系统临界阻尼时对应的 K K K值及其闭环极点。
解:
由题意得,系统闭环系统特征方程为
D ( s ) = s 2 + 4 s + K s + 4 K + 20 = s 2 + 4 s + 20 + K ( s + 4 ) = 0 D(s)=s^2+4s+Ks+4K+20=s^2+4s+20+K(s+4)=0 D(s)=s2+4s+Ks+4K+20=s2+4s+20+K(s+4)=0
等效开环传递函数
G ∗ ( s ) = K ( s + 4 ) s 2 + 4 s + 20 G^*(s)=\frac{K(s+4)}{s^2+4s+20} G∗(s)=s2+4s+20K(s+4)
%建立等效开环传递函数模型
G=tf([1 4],[1 4 20]);
%绘制零极点分布图
figure(1)
pzmap(G);
%绘制根轨迹图
figure(2)
rlocus(G);
a.零点分布图
b.根轨迹图
c.临界阻尼对应的 K K K值和对应的闭环极点
>> rlocfind(G)
Select a point in the graphics window
selected_point =
-8.4799 - 0.0000i
ans =
12.9443
因 此 , K = 12.9443 , s = − 8.4799 因此,K=12.9443,s=-8.4799 因此,K=12.9443,s=−8.4799。
- 小结