ここでは、モデル誤差抑制補償器の効果を確認するための数値例として2次システムのシミュレーション結果を示します。
モデル誤差抑制補償器についての説明は以下の記事をご覧下さい。
blog.control-theory.com
制御対象と問題設定
ここでは、制御対象として次の対象を扱います。
ここで、本記事ではとし、の取りうる範囲はとします。
誤差がない場合
まず、誤差がない場合についてフィードバック比例フィードバック制御器を施した結果を示します。まず、ブロック線図が以下のようになります。
次に制御結果(ステップ応答)が以下のようになります。
次に、誤差補償器を次のように定めてMECを構築した場合の結果を示します。
誤差補償器はPI制御構造にしています。ハイゲインフィードバックとなっています。MECを含む制御構造は次のように与えられます。
このとき、得られた応答波形は次のようになります。
ほとんど変わらない応答波形になっていることがわかります。
誤差がある場合
誤差がある場合の応答波形をそれぞれ示します。を範囲内でランダムに10本とってそれらの応答波形を重ねます。まずは、MECなしの場合です。
次にMECありの場合の応答波形です。
MECを含む制御系を構成することにより、のバラツキの影響が出力にはほとんど現れていないことが確認できます。
最後に、MATLABコードを示します。
clear;
close all;
a = 1;
b = 2;
c = 1.5;
for i = 1:10
delb = -0.1+0.2*rand();
dela = -0.1+0.2*rand();
delc = -0.1+0.2*rand();
P=(c+delc)*tf([1 b+delb],[1 -(a+dela)])*tf([1],[1 5]);
Pn = c*tf([1 b],[1 -a])*tf([1],[1 5]);
Con=5;
%C=tf([2.5 0.005],[1 0]);
D=tf([50 50],[1 0]);
% MECなし
feedback(P*Con,1);
figure(1)
step(ans)
xlabel('Time')
ylabel('Out')
title('Usual')
xlim([0 5])
ylim([0 2])
hold on
% MECあり
feedback(Pn*Con,1)*feedback(P*D,1)-feedback(Con,Pn)*feedback(P,D);
figure(2)
step(ans)
xlabel('Time')
ylabel('Out')
title('With MEC')
xlim([0 5])
ylim([0 2])
hold on
end
2次制御対象についてMECの効果を確認しました。本記事は以上です。
関連記事
blog.control-theory.com