MATLAB 中的根軌跡圖
Ammar Ali
2022年5月11日
本教程將討論使用 Matlab 中的 rlocus()
函式計算和繪製動態系統的根軌跡。
在 MATLAB 中使用 rlocus()
函式計算並繪製動態系統的根軌跡
我們使用根軌跡來檢查反饋增益變化對閉環極點位置的影響,這些位置提供有關時間和頻率響應的資訊。
rlocus()
函式計算並繪製給定系統的根軌跡。它提供給定函式的閉環極點軌跡,是反饋增益的函式。我們必須在 rlocus()
函式中傳遞系統的傳遞函式來繪製該函式的根軌跡。
例如,讓我們使用 tf()
函式建立一個系統的傳遞函式,並使用 Matlab 中的 rlocus()
函式繪製其根軌跡。請參閱下面的程式碼。
sys = tf([2 5 1],[1 2 3]);
rlocus(sys)
輸出:
x
符號提供輸出中的極點,o
符號提供系統傳遞函式的零點。
我們還可以使用 rlocus()
函式繪製多個系統的多個根軌跡。如果我們在 rlocus()
函式中傳遞多個系統的傳遞函式,它會將所有系統的根軌跡以不同的顏色繪製在同一個圖上。
我們可以使用 legend()
函式為每個繪圖命名,以便輕鬆識別它們。例如,讓我們繪製兩個系統的根軌跡並使用 legend()
函式新增圖例。
請參閱下面的程式碼。
sys1 = tf([2 5 1],[1 2 3]);
sys2 = tf([2 2 1],[1 2]);
rlocus(sys1,sys2)
legend('sys1','sys2')
輸出:
我們還可以使用 rlocus()
函式找到閉環極點位置和反饋增益的值。例如,讓我們找出上述系統的閉環極點位置和反饋增益值。請參閱下面的程式碼。
sys = tf([2 5 1],[1 2 3]);
[R,K] = rlocus(sys)
size(R)
輸出:
ans =
2 55
在輸出中,你可以看到變數 R
的大小 - 2×55。
Author: Ammar Ali