PID制御器のAnti-windup
目次
はじめに
PID制御器に代表される「積分器を内部に持つ制御器」では積分器のワインドアップ(飽和)が発生することが知られています.
積分器ワインドアップが発生すると,システムの速応性や安定性の劣化を引き起こします.
積分器ワインドアップは主にシステムの入力制約によって引き起こされます.
システムの入力制約とは,たとえばモータドライバ定格電圧(電圧リミット)などがあります.
具体的には,以下のようなブロック線図で表されるようなシステムです.
コントローラによって計算された操作量に上下限の制約が課せられ,実際のシステムへの入力が制限されています.
目標値をとしたとき,制約がない場合と比べて制御性能は下図のように劣化します.
上からシステムの出力,実際のシステムへの入力,積分値です.
また,灰の実線は入力制約がない場合,青の破線は入力制約がある場合です.
制約ありの結果では出力がオーバーシュートしており,入力制約によって制御性能が劣化していることがわかります.
操作量を見ると,でとなっているにもかかわらず,が負方向へ変化せず,入力制約による飽和状態を維持しています.
この入力制約が支配的になるとシステムは不安定になり,持続的な振動を引き起こすこともあります.
このようなシステムを制御する場合,コントローラのゲインを下げることでオーバーシュートの発生を回避することができますが,入力制約の影響しない範囲では単純にゲインを下げることになるため制御性能は劣化します.
また,PIDコントローラのゲイン決定手法としてChien-Hrones-Reswickの方法などがありますが,これらの手法が利用できなくなることも課題のひとつです.
このような積分器ワインドアップによる制御性能の劣化を補償する方法全般をアンチワインドアップ(Anti-Windup)と呼びます.
現実のシステムは必ず何らかの入力制約を有するため,これらを解消する手段を知る重要性は高いと言えます.
以下では解析的な議論はせず,主要な実装についてのみ紹介します.
また,SISOシステムを対象とします.
主にこちらの文献を参考にしています.
参考までに,解析的な議論については以下の文献があるようです. ちょっと違う文脈なのですが、下記どうでしょうか。ある入力拘束付き線形システムにAW補償を入れると閉ループ系の安定領域が大きく広がることを数値例等で示している論文です。https://t.co/kvdO4zknWY
www.jstage.jst.go.jplink.springer.com Anti-windupの手法にはさまざまなものがありますが,以下の3つがよく利用される手法と思います. いずれの手法もコントローラの出力と実際のシステムへの入力が異なる場合に積分動作を停止する方向に作用します. シミュレーションは次節でまとめて表示します. この手法は比較的簡単なシステムで利用されることが多いように思います. 特徴はなにより実装が簡単な点です. 最も簡単な実装は以下ですが,この実装では何らかの要因で積分値が見積もりよりも大きくなった際に積分値がクリップされてしまいます. \begin{align} 積分値のクリップについては積分値が十分大きくなり,必ずとなる場合を考えると良いかと思います. MATLAB/SimulinkのPID Controllerに実装されているアンチワインドアップ手法「固定」はこのような方法を基としています. この手法はコントローラの出力と実際のシステムへの入力の差分とゲイン(ここではシステムの逆システム)の積を,積分器への入力から差し引くような実装です. 私は上図のように積分器を除いたシステムの逆システムをゲインとして利用しています. この手法は学会誌EICA(須田)では自動整合,MathWorksのWebページでは逆解析(Back-Calculation),学会誌EICAの参照元であるAutomaticaの論文(R. Hanus, et al.)ではConditioned PI Controllerとされています. この手法は速度型PIDなどとも呼ばれています. ヴェロシティフォームの最大の特徴は,偏差を1階微分することで制御器内部から積分器を排除している点です. 通常のPID制御系は連続時間系で設計することが多いように思いますが,ヴェロシティフォームは離散時間系が基本となるため注意が必要です. 以下のブログでは,ヴェロシティフォームについて積分器ワインドアップのほか,メモリ節約や手動から自動へのバンプレスな切り替えについて紹介されています. シミュレーションの実行環境はMATLAB/Simulink R2015aです. 対象とするシステムは時定数の1次遅れ系です. \begin{align} PIDコントローラのパラメータはそれぞれ,,です. 下図は目標値としたときの各Anti-windup手法におけるPI制御での結果です. 前述の結果と比較すると,Anti-windup補償を施すことでオーバーシュートが抑制されていることがわかります. 下図は目標値としたときの各Anti-windup手法におけるPID制御での結果です. PID制御においては,自動整合および積分器の停止(固定)ではPI制御の場合と同様,オーバーシュートが抑制され制御性能が向上していることが確認できる一方で,ヴェロシティフォームでは非最小位相系で見られるような逆応答が発生しています. 積分器のワインドアップによる制御性能の劣化とその解消法であるAnti-windupについて考えてみました. 今回紹介した手法の中で,最近ではヴェロシティフォームがよく利用されているようです. しかし個人的には従来のPIDコントローラに補償器を加えるという構造の自動整合系を利用することが多いです. また,近頃は制約付近を利用することでシステムの最大性能をうまく利用しようとする流れもあり,ここで述べたAnti-windup補償のほか,モデル予測制御(後退ホライズン制御)などの手法も開発されています. モデル予測制御については以下の記事でも述べています. このほか,有用な手法などありましたら教えていただけると嬉しく思います.
後者の文献は@gohomenow7898さんからの紹介です.
PID制御器のAnti-windup
Anti-windup補償器の構造
積分動作の停止(固定)
動作は単純で,のときにとするだけです.
私はざっくりとAnti-windupを施すことで制御性能が向上するかどうかを見積もるために使うことが多いです.
一方でこれといった決まった実装がなく,実装のゆらぎが起こりがちである点が課題と個人的に感じています.
e_{i}(T) = \int^{T}_{0} e(t) dt \\
\because e(t) = \left\{ \begin{array}{ll}
e(t) & (if \ \hat{u} = u) \\
0 & (if \ \hat{u} \neq u )
\end{array}
\right.
\end{align}
のような場合,またはがある程度の大きさを持たない限りを維持し続けロック状態になります. 自動整合
MATLAB/SimulinkのPID Controllerでも「逆解析」として実装されており,ここではゲインは定数となっているようです.
Self-conditioned PI Controllerが別で定義されていますが,ここでは上記の形式を自動整合と呼びます. ヴェロシティフォーム
これと比較して,これまでのPID制御系はポジションフォームや位置型PIDなどと呼ぶようです.
これによって積分器ワインドアップを特別な操作なしに防ぐことができます.
Anti-windup補償器の分類ではないかもしれませんが,よく利用される手法です.
これによってパラメータの設計も連続時間での手法と異なります.シミュレーション
対象とするシステム
制御対象は連続時間系,コントローラは離散時間系で設計し,ソルバはDormand-Prince(Simulink標準)です.
ヴェロシティフォームが離散時間系であることから,他の2手法に関しても離散時間系(サンプリング周期)で設計しています.
G(s) = \frac{1}{10s+1}
\end{align}
また,操作量の範囲はです.シミュレーション結果(PI)
ただし,としています.
上からシステムの出力,実際のシステムへの入力,積分値です.
ただし,ヴェロシティフォームでは積分器が存在しないため,積分ゲインへの入力を便宜上としています.
また,赤の実線が自動整合,青の実線が積分動作の停止(固定),緑の実線がヴェロシティフォームです.
また,操作量においてもとなったタイミングで負方向に変化していることが確認できます.シミュレーション結果(PID)
図の詳細はPIでの結果と同様です.
これは前述のR. Hanusらの論文でも言及されおり,偏差を微分することによる構造上の特性であると言えます.
このため,PIDコントローラをヴェロシティフォームで構成する際には注意が必要です.おわりに
現実のシステムでは必ず何らかの入力制約があることから積分器のワインドアップは避けて通れない現象であると言え,Anti-windupに関する技術の重要性は大きいです.
背景としてはディジタル制御系が主流になったことから離散時間系としてコントローラを構成することが多くなったこと,それと同時に入力制約付近でシステムを動作させることが増えてきたことが考えられます.
(大企業ですと基本の構造を変えずに「いつでも取り外せる補償器」という形式で見通しよく構成されている方が安心できるという心理も作用しているのではないかと邪推していますが……)