Main Content

異なる近似次数での異なる遅延の近似

この例は、連続時間開ループ システムで内部遅延および出力遅延を近似するために、異なるパデ近似次数を指定する方法を示します。

内部および出力むだ時間を含むサンプル連続時間開ループ システムを読み込みます。

load('PadeApproximation1.mat','sys')
sys
sys =
 
  A = 
         x1    x2
   x1  -1.5  -0.1
   x2     1     0
 
  B = 
       u1
   x1   1
   x2   0
 
  C = 
        x1   x2
   y1  0.5  0.1
 
  D = 
       u1
   y1   0
 
  (values computed with all internal delays set to zero)

  Output delays (seconds): 1.5 
  Internal delays (seconds): 3.4 
 
Continuous-time state-space model.

sys は、内部遅延 3.4 秒、出力遅延 1.5 秒の 2 次連続時間 ss モデルです。

関数 pade を使用して、内部遅延の 3 次近似と出力遅延の 1 次近似を計算します。

P13 = pade(sys,inf,1,3);
size(P13)
State-space model with 1 outputs, 1 inputs, and 6 states.

sys に続く 3 つの入力引数は、sys の入力、出力、および内部遅延の近似次数をそれぞれ指定します。inf は遅延が近似されないことを指定します。出力遅延と内部遅延の近似次数は、それぞれ 1 と 3 です。

pade を使用したむだ時間の近似は、遅延をダイナミクスに吸収し、近似の次数だけ状態をモデルに追加します。そのため、P13 は遅延のない 6 次モデルになります。

比較のため、出力遅延はそのままにして、sys の内部遅延だけを近似します。

P3 = pade(sys,inf,inf,3);
size(P3)
State-space model with 1 outputs, 1 inputs, and 5 states.
P3.OutputDelay
ans = 1.5000
P3.InternalDelay
ans =

  0x1 empty double column vector

P3 は出力遅延を保持しますが、内部遅延が近似され状態空間行列に吸収されて、内部遅延のない 5 次モデルになります。

正確なシステム sys と、近似システム P13P3 の周波数応答を比較します。

h = bodeoptions;
h.PhaseMatching = 'on';
bode(sys,'b-',P13,'r-.',P3,'k--',h,{.01,10});
legend('sys','approximated output and internal delays','approximated internal delay only',...
    'location','SouthWest')

内部遅延を近似すると、正確なシステムで表示されるゲイン リップルが失われます。

参考

関連する例

詳細