離散系について閉ループ系の伝達関数を演算すると,理論的な結果と一致しない
3 views (last 30 days)
Show older comments
スミス法によって離散系プラントのむだ時間を補償する制御系の,閉ループ伝達関数のbode線図を描く事を試みました。
しかし,対象のブロック図に基づいて開ループ系の伝達関数を演算し,それを用いて閉ループ系の伝達関数を導出した結果と,
スミス法の適用によって得られる,理論的な閉ループ系の伝達関数をコマンドウィンドウで出力させた結果が一致しません。
等価なはずの伝達関数が一致しない原因はなぜでしょうか。
ちなみに,プラントモデルには一切のモデル化誤差が無い場合を想定しています。
対象としている制御系のブロック図と,
コードを添付します。
Ts = 50*10^-6; %サンプリング周期
z = tf('z',Ts);
Kp = 10;
Ki = 0.1;
C = Kp+ (Ki*Ts)/(z-1); % PIコントローラ
G = z/(z-1); % プラント
T = 1/z; %むだ時間
P = G*(T-1);%スミス補償器
CP = C/(1-C*P); % PIコントローラ+スミス補償器
G_open = CP*G*T;%開ループ伝達関数
G_close = G_open/(1+G_open) %閉ループ伝達関数(G_openより導出)
G_close2 = (C*G*T)/(1+C*(G*T-P)) %閉ループ伝達関数(理論値)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/245858/image.png)
0 Comments
Answers (0)
See Also
Categories
Find more on 古典制御設計 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!