[英]How to use `feedback` function in Matlab?
Matlab 的反饋函數用於獲得系統的閉環傳遞函數。 例子:
sys = feedback(sys1,sys2)
返回一個模型對象 sys 用於模型對象sys1
, sys2
的負反饋互連。 要計算具有正反饋的閉環系統,請使用符號 = +1,對於負反饋,我們使用 -1。
當我們有以下類型的系統時,我的問題就出現了:
根據這些文檔,我們可以使用反饋來創建 G 和 C 的負反饋循環。
sys = feedback(G*C,-1)
這是混淆的根源,上面不應該是: sys = feedback(G*C,1,-1)?
這些是不一樣的。
但是,查看這些文檔,對於單位環路增益 k,您可以使用以下方法計算閉環傳遞函數 T:
G = tf([.5 1.3],[1 1.2 1.6 0]);
T = feedback(G,1);
為什么我們使用1
而不是-1
? 這仍然是負反饋,而不是正反饋。
G = tf([.5 1.3],[1 1.2 1.6 0]);
T = feedback(G,1);
feedback(G,1)
代表sys2
並且由於該函數有兩個輸入,因此根據以下行,默認值將是負的統一反饋
sys = feedback(sys1,sys2) 返回一個模型對象 sys 用於模型對象 sys1,sys2 的負反饋互連。
考慮以下腳本
s = tf('s');
G = 1/s;
T1 = feedback(G,1)
T2 = feedback(G,1,-1)
T1和T2是一樣的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.