Main Content

連続時間閉ループ モデルのむだ時間近似

この例では、padeを使用して内部遅延のある連続時間閉ループ システムで遅延を近似する方法を示します。

パデ近似は、むだ時間をサポートしていない解析または設計ツールを使用するときに便利です。パデ近似次数を増やすことで、近似が良好である周波数帯域が拡張されます。ただし、近似次数が高すぎると、数値的問題が発生し、極が不安定になる可能性があります。そのため、次数 N>10 のパデ近似は回避します。

内部遅延のある連続時間閉ループ システムを作成します。

r から y への閉ループ伝達関数のモデル Tcl を作成します。

s = tf('s');
G = (s+1)/(s^2+.68*s+1)*exp(-4.2*s);
C = pid(0.06,0.15,0.006);
Tcl = feedback(G*C,1);

Tcl の内部遅延を調べます。

Tcl.InternalDelay
ans = 4.2000

Tcl の 1 次パデ近似を計算します。

Tnd1 = pade(Tcl,1);

Tnd1 は、遅延のない状態空間 (ss) モデルです。

bodeplot を使用して、元のモデルと近似モデルの周波数応答を比較します。

h = bodeoptions;
h.PhaseMatching = 'on';
bodeplot(Tcl,'-b',Tnd1,'-.r',{.1,10},h);
legend('Exact delay','First-Order Pade','Location','SouthWest');

振幅と位相の近似誤差は、1 rad/s を超えると重大です。

stepplot を使用して TclTnd1 の時間領域応答を比較します。

stepplot(Tcl,'-b',Tnd1,'-.r');
legend('Exact delay','First-Order Pade','Location','SouthEast');

パデ近似の使用によって、初期遷移応答での非最小位相部分 (「逆行」現象) が導入されます。

パデ近似次数が良好な位相と振幅の近似で周波数を拡張するかどうかを確認するために、パデ近似次数を増やします。

Tnd3 = pade(Tcl,3);

Tcl の 3 次パデ近似の動作を監視します。TclTnd3 の周波数応答を比較します。

bodeplot(Tcl,'-b',Tnd3,'-.r',Tnd1,'--k',{.1,10},h);
legend('Exact delay','Third-Order Pade','First-Order Pade',...
       'Location','SouthWest');

振幅と位相の近似誤差は、3 次パデ近似を使用するときに減少します。

参考

関連する例

詳細