連続時間開ループ モデルのむだ時間近似
この例は、pade
を使用して連続時間開ループ システムで遅延を近似する方法を示します。
パデ近似は、むだ時間をサポートしていない解析または設計ツールを使用するときに便利です。
サンプル開ループ システムを出力遅延で作成します。
s = tf('s'); P = exp(-2.6*s)/(s^2+0.9*s+1);
P
は、むだ時間のある 2 次伝達関数 (tf
) オブジェクトです。P
の 1 次パデ近似を計算します。Pnd1 = pade(P,1)
Pnd1 = -s + 0.7692 ---------------------------------- s^3 + 1.669 s^2 + 1.692 s + 0.7692 Continuous-time transfer function.
このコマンドは、1 次近似で
P
のすべてのむだ時間を置き換えます。そのため、Pnd1
は遅延のない 3 次伝達関数になります。bodeplot
を使用して、元のモデルと近似モデルの周波数応答を比較します。h = bodeoptions; h.PhaseMatching = 'on'; bodeplot(P,'-b',Pnd1,'-.r',{0.1,10},h) legend('Exact delay','First-Order Pade','Location','SouthWest')
P
とPnd1
のゲインは正確に一致します。ただし、Pnd1
の位相は、約 1 rad/s を超えるP
の位相から逸脱します。パデ近似次数を増やすことで、位相近似が良好である周波数帯域が拡張されます。
Pnd3 = pade(P,3);
P
、Pnd1
、およびPnd3
の周波数応答を比較します。bodeplot(P,'-b',Pnd3,'-.r',Pnd1,':k',{0.1 10},h) legend('Exact delay','Third-Order Pade','First-Order Pade',... 'Location','SouthWest')
位相近似誤差は、3 次パデ近似を使用することで減少します。
stepplot
を使用して、元のシステムと近似システム時間領域応答を比較します。stepplot(P,'-b',Pnd3,'-.r',Pnd1,':k') legend('Exact delay','Third-Order Pade','First-Order Pade',... 'Location','Southeast')
パデ近似の使用によって、初期遷移応答での非最小位相部分 (「逆行」現象) が導入されます。効果は 1 次の近似では非常に顕著で、方向を変更する前に大幅に減少してゼロ未満になります。効果は高次の近似では減少し、システムの正確な応答にかなり厳密に一致します。
メモ
高すぎる近似次数を使用することは、数値の問題になる可能性があり、不安定な極になる可能性があります。そのため、次数 N>10 のパデ近似は回避します。