PI制御チューニング : Ziegler Nicholsの限界感度法 - むだ時間ありの1次遅れ系への適用

PI制御チューニング : Ziegler Nicholsの限界感度法の続きです.

0. むだ時間 - 導入

システムの入力に対する出力の時間遅れの1種で、時間領域で以下のように表現でき、
y(t)=x(tTd) 伝達関数では、
G(s)=esTd と表される.

このような性質が付与されたシステムを制御する時、
制御コントローラにしてみれば、制御してから結果に反映されるまで時間がかかる状態になるので、
ゲインを高く設定しすぎるとハンチングを起こすなどそわそわしている状態になります。

こういった性質は制御分野以外でも最近とりあげられていて、
「世界はシステムで動く」というドネラさんの本でも、
例えば在庫管理的な場面でむだ時間が生じると現象が振動的になるという話が出ていました。
(制御工学で社会分析している印象を受ける本です. 応用としては面白いかも.)



むだ時間は実世界では必ず存在し、その影響が制御設計やチューニングを難しくします


1. 1次遅れ系とむだ時間

むだ時間が付与された1次遅れ系のベクトル軌跡を見てみる.
1次遅れ系の時定数を時定数1(sec), むだ時間を1(sec)として伝達関数は、
G2(s)=1s+1es

これを複素平面で表現するため極形式にすると、
G2(ωi)=1ωi+1eωi
から
z=|G2(ωi)|exp(iarg(G2(ωi)))=1ω2+1exp(i(arctan(ω)+(ω)))
これを図で表すと分かる通り、時間遅れのない状態(水色)に時間遅れをつけるとオレンジの線のようにぐるぐるができ、不安定点(Re=-1)に近づき、より不安定になっていることがわかります.
水色1s+1)、オレンジ(1s+1es)
Note: お絵かきにはエクセルを使い、ω = [0.01, 100] (rad/s)の範囲で計算しました.

ωrθRealIm
0.01 ~ 100
= 1/sqrt(A2^2+1)=- atan2(1, A2) - A2=B2 * cos(C2)=B2 * sin(C2)


2. むだ時間1次遅れ系のPI制御へジーグラ・ニコルス限界感度法を適用

先のP(s)=1τs+1 として、プラント P2(s)=P(s)eLs にPI制御 C(s)=Kp+Kis を施すと、
G(s)=PCeLs1+PCeLs=KpeLss+KieLsτs2+(1+KpeLs)s+KieLs
Kuを求めるために、Ki=0とすると、
G(s)=KpeLsτs+1+KpeLs
これに対し、当初、Kuを求めるためにeLsのパデ近似を用いて代数的に範囲を求めようと考えたのですが、文献[2]で検証している通り、特に1次,2次などの低次のパデ近似では良い解にたどりつけないようです.

Kuを求めるにあたってナイキスト線図を使って幾何的に考えることにします.

まず、Kp=1として
G(s)=eLsτs+1+KpeLs
のナイキスト線図を描きます.

この時
z=|G(ωi)|exp(iarg(G(ωi)))=1(τω)2+1exp(i(arctan(τω)+(Lω)))
を描くことになるが、以下図中の緑の点の座標を求めます.


ωが大きくなるほどゼロ点に近づくので、
zが複素平面左半面の実軸上と交わる正で最小のω0を求めればよい.

従って 、arctan(τω0)+(Lω0)=πで、最小のものが求める周波数です.
※ この時、z(ω0)=1(τω0)2+1

ここで Kp=(τω0)2+1とするとベクトル線図は以下の図の水色の線のようになり、これが Kuとなります.


拡大した図
まとめ:
以上の検討からKpの限界であるKuは、
Ku=(τω0)2+1 ただし、
arctan(τω0)=π(Lω0)
(τω0は、(0,π/2)の範囲 )

また、この時、振動周期(s)はTu=2πω0である.

ω0は数値解析で求めるほかありませんが、二分法など使うと良いでしょう.

二分法 - 高精度計算サイト http://keisan.casio.jp/exec/system/1180917668

2.1. お試し計算

例えば、G(s)=1s+1esとしてKuを求めると、Ku2.26(ω02.029;Tu3.097sec)と求まります.

シミュレーションで、この値を使ってステップ応答を求めると以下の結果になります.


ジーグラ・ニコルスの限界感度法に従って、
制御の種類KpKdKi
P制御0.5Ku00
PI制御0.45Ku00.45Ku0.83Tu
PID制御0.6Ku0.075TuKu0.6Ku0.5Tu


からKp=1.018, Ki=0.396としてステップ応答を求めたものがこちら.


やっとZNの限界感度法がうまく行きました.

参考

[1] The Time Delay
http://lpsa.swarthmore.edu/BackGround/TimeDelay/TimeDelay.html

[2] PID Controllers for Systems with Time-Delay
http://msc.berkeley.edu/PID/modernPID3-delay.pdf