PID制御器のAnti-windup

目次

  • 目次
  • はじめに
  • PID制御器のAnti-windup
    • Anti-windup補償器の構造
      • 積分動作の停止(固定)
      • 自動整合
      •  ヴェロシティフォーム
  • シミュレーション
    • 対象とするシステム
    • シミュレーション結果(PI)
    • シミュレーション結果(PID)
  • おわりに

はじめに

PID制御器に代表される「積分器を内部に持つ制御器」では積分器のワインドアップ(飽和)が発生することが知られています.
積分器ワインドアップが発生すると,システムの速応性や安定性の劣化を引き起こします.

積分器ワインドアップは主にシステムの入力制約によって引き起こされます.
システムの入力制約とは,たとえばモータドライバ定格電圧(電圧リミット)などがあります.

具体的には,以下のようなブロック線図で表されるようなシステムです.
コントローラによって計算された操作量 \hat{u}に上下限の制約が課せられ,実際のシステムへの入力 uが制限されています.

 

f:id:blockahead:20190103003130p:plain

 

目標値 r 1としたとき,制約がない場合と比べて制御性能は下図のように劣化します.
上からシステムの出力 y,実際のシステムへの入力 u積分 e_{i}です.
また,灰の実線は入力制約がない場合,青の破線は入力制約がある場合です.

制約ありの結果では出力がオーバーシュートしており,入力制約によって制御性能が劣化していることがわかります.
操作量 uを見ると, t=5s r \lt yとなっているにもかかわらず, uが負方向へ変化せず,入力制約による飽和状態を維持しています.
この入力制約が支配的になるとシステムは不安定になり,持続的な振動を引き起こすこともあります.

f:id:blockahead:20190103015312p:plain

このようなシステムを制御する場合,コントローラのゲインを下げることでオーバーシュートの発生を回避することができますが,入力制約の影響しない範囲では単純にゲインを下げることになるため制御性能は劣化します.
また,PIDコントローラのゲイン決定手法としてChien-Hrones-Reswickの方法などがありますが,これらの手法が利用できなくなることも課題のひとつです.

 このような積分器ワインドアップによる制御性能の劣化を補償する方法全般をアンチワインドアップ(Anti-Windup)と呼びます.

現実のシステムは必ず何らかの入力制約を有するため,これらを解消する手段を知る重要性は高いと言えます.

以下では解析的な議論はせず,主要な実装についてのみ紹介します.
また,SISOシステムを対象とします.

 

主にこちらの文献を参考にしています.

www.amazon.co.jp

続きを読む

Smith予測器によるむだ時間の補償

目次

  • 目次
  • はじめに
  • むだ時間を有するシステム
    • 対象とするシステム
    •  ステップ応答と安定性
  •  Smith予測器
    • 概要
    • 安定性の確認
    • ステップ応答の確認
    • 閉ループシステムのナイキスト線図
    • 実用上の注意
  • おわりに

はじめに

現実的なシステムは入力を与えてから出力に反映されるまでに遅れを有する場合があります.ごく一般的な線形システム,たとえば G(s)=\displaystyle\frac{\omega_{n}^{2}}{s^{2} + 2\zeta\omega_{n}s + \omega_{n}^2} なども2次遅れ系などと呼ばれたりしますが,これらは実際には入力を与えて即座に応答が発生するようにモデル化されています.

一方で,入力を与えてからある時間 \tauだけ経過した後にようやく応答が発生するようなシステムを前者と区別して純時間遅れ系(Pure time delay system)と呼びます.

ただ今回はラフな形で「むだ時間(Dead time)」と呼ぶことにします.

むだ時間を持つシステムの具体例としては以下のようなものがあります.

  • 熱伝達システム
  • 長いヒモをもつクレーンの自動操縦
  • 圧延
  • ベルトコンベア上の製品に対する作業
  • 長距離通信を介するシステム

このようなむだ時間を有するシステムの制御について考えてみます.

続きを読む

積分プロセスのPredictive Functional Control

目次

  • 目次
  • はじめに
  • 積分プロセスのPredictive Functional Control
    • 積分プロセスの制御手法
      • Decomposition
      • 外乱オブザーバ
      • 内部ループを設ける手法
    • Transparent Control
      • DOBでのTransparent Control
      • 内部コントローラでのTransparent Control
  • シミュレーション(MATLAB/Simulink
    • 対象とするシステム
    • ブロック図
    • シミュレーション結果
      • 内部コントローラを用いたPFCのTransparent Control
      • 通常のPFC
    • LQRで設計したサーボ系に対する利点
    • 内部コントローラをどう設計すべきか

はじめに

これまでにモデル予測制御の一種であるPredictive Functional Control(PFC)の基礎原理と,多入力多出力システムへの拡張について述べました.

hamachannel.hatenablog.com

hamachannel.hatenablog.com

 

PFCではシステムの状態方程式さえ立てることができれば以下のような補償器を個別に設計しなくても良いため,比較的使い勝手の良いコントローラであると思っています.

  • アンチワインドアップ補償器(積分器ワインドアップ回避)
  • スミス予測器(むだ時間補償)
  • ZPETCやPTCなど(目標値への追従性能向上)

 

また,詳細については述べませんが,不安定プロセスに対しても同様のアプローチで適用することが可能です.

一方で,このような不安定プロセスに適用した際に目標値へのオフセットフリー特性が失われるといった課題もあります.
(定位性プロセスとか非定位性プロセスと呼ぶほうが正しいかも)

 

この課題がメカトロニクス分野へ応用する際の難しさとなっています.

メカトロニクス分野の制御対象の代表的なものはDCモータなどのモータ類ですが,この電流から位置までのシステムが不安定プロセスであるためです.
また,空気圧または油圧シリンダも同様に不安定プロセスに分類されます.

これらのシステムに対して,PFCはオフセットフリー特性を持たず定常偏差が残ってしまうため実用上の大きな課題となっています.

 

上記のようなシステムではある一定の入力を与えた際に位置が時間とともに無限に増加していくシステムです.
反対に,DCモータであっても速度はいずれ一定値に収束するため,速度制御は安定プロセスに分類されます.

これらは極にゼロを持つシステムであり,このようなシステムを積分プロセスと呼びます.

 

今回は,積分プロセスを含む不安定プロセスでオフセットフリーを達成する方法のひとつであるTransparent Controlについて考えます.

続きを読む

多入力多出力システムのPredictive Functional Control

目次

  • 目次
  •  はじめに
  •  MIMOシステムのPFC
    • SISOシステムでのPFC
    • MIMOシステムへの拡張
  • シミュレーション(MATLAB/Simulink
    • 対象とするシステム
    • ブロック図
    • シミュレーション結果
    •  遅れ補償
      • 通常の追従特性
      • ハイゲインでの追従特性
      • 将来の目標値を利用した場合の追従特性

 はじめに

以前,Predictive Functional Control(PFC)についての記事を書きましたが,
あくまで単入力単出力(Single input single output; SISO)システムについてのみでした.

これを多入力多出力(Multi input multi output; MIMO)システムに拡張することが今回の目的です.

hamachannel.hatenablog.com

PFCの基礎に関する文献は考案者であるJ. Richaletの文献が詳しいです.

 翻訳書もあったようなのですが,現在では絶版しています.

Predictive Functional Control: Principles and Industrial Applications (Advances in Industrial Control)

Predictive Functional Control: Principles and Industrial Applications (Advances in Industrial Control)

 

 基本的な概念は通常のモデル予測制御(Model predictive control; MPC)と同じですので,MPCを知っているとMIMOシステムへの拡張は容易です.

続きを読む

走行距離を時間軸とする時間軸状態制御形

目次

  • 目次
  •  はじめに
  • 時間軸状態制御の概要
    • 時間軸の選定
    • 適用の流れ
    • 座標変換の到着点
  • 時間軸状態制御の2輪モデルへの適用
  • シミュレーション
    • 実装に必要な情報
    • シミュレーション

 はじめに

自動車などの経路追従制御でよく利用される2輪モデルは非ホロノミック(Nonholonomic)な拘束を有するシステムであり,比較的制御が困難であると言われています.

このようなシステムを安定化する方法として,以下のような手法が挙げられています.

  • 時変状態フィードバック
  • 不連続フィードバック
  • 時間軸状態制御

最近は時間軸状態制御に基づく手法をよく見るような気がしますので,勉強までに実装してみました.

ベースとする資料は下記の論文です.

www.jstage.jst.go.jp

続きを読む

6軸センサの状態方程式

目次

  • 目次
  •  はじめに
  • よく知られている6軸センサの状態方程式 / 観測方程式
  • 状態方程式 / 観測方程式の導出
    • 回転行列
      • ロール方向
      • ピッチ方向
      • ピッチ方向
    • 観測方程式 
    •  状態方程式
      • 回転行列による角速度の座標変換
      • オイラー角の書き直し
      • ロール・ピッチ・ヨーのグローバル座標への変換
      • ロール・ピッチ・ヨー角速度の座標変換
  • おわりに

 はじめに

6軸センサは3軸の加速度センサ(x, y, z)と3軸のジャイロセンサ(roll, pitch, yaw)を複合させたセンサの名称で,ロボットなどの姿勢を推定するためによく利用されるセンサです.

このセンサによって3軸の姿勢(roll, pitch, yaw)を推定するために,拡張カルマンフィルタ(Extended Kalman filter; EKF)が使用されることも多くあります.
低周波数域での特性に優れた加速度センサと,高週数域での特性に優れたジャイロセンサをEKFを用いたセンサフュージョン(Sensor fusion)により組み合わせることで,広い周波数域での高精度な姿勢推定を可能にします.

EKFではシステムの状態方程式が必要になるのですが,一部導出に躓いたのでまとめておこうと思います.

状態方程式はロール・ピッチ・ヨーのオイラー角(Euler angle)で表現されるものを想定しています.
オイラーパラメータ(Euler parameter; またはQuaternion)により表現する場合には導出は比較的簡単なようです.

よく知られている6軸センサの状態方程式 / 観測方程式

6軸センサの状態方程式 / 観測方程式としてよく知られている式です.
式の変形によりここに到達することが今回の目標です.

続きを読む

シンプルな外乱オブザーバ

目次

  • 目次
  • はじめに
    • 外乱オブザーバとは?
    • なぜ外乱オブザーバが必要なのか
  • 簡単な外乱オブザーバの動作原理
    • 外乱の除去
    • 外乱の推定
  • 実際の外乱オブザーバ
    • ノミナルモデル
    • 外乱オブザーバのメリット・デメリット
      • メリット
      • デメリット
    •  ローパスフィルタの設計
  •  シミュレーション

はじめに

外乱オブザーバ(Disturbance observer; DOB)はフィードバックシステムに外乱が加わるような状況で比較的簡単に外乱を除去し安定化できる強力なツールですが,ウェブにはあまり記述が無いようだったので書いてみました.

外乱オブザーバとは?

“外乱”でググってみると,以下のような説明が得られます.

ある通信系に、所定の信号系以外から加わり妨害となる信号。 --- 大辞林

大体内容としては間違いないですが,今回扱うのは”通信系”に限らず制御システムに対してはたらく妨害となる信号くらいに留めておきます.

外乱オブザーバとはこのような外乱を除去するために,制御系のコントローラに組み込む補償器のひとつです.

なぜ外乱オブザーバが必要なのか

次のような1次遅れ系のフィードバックループを考えてみます.

f:id:blockahead:20180128101528p:plain

ここで, C(s)はコントローラ, G(s)は制御対象です.また,目標値を r,出力を yで表します.

外乱というと図の1,2,3番の箇所に加わることが想定されますが,ここでは1について記述します.

2,3番を省く理由としては以下になります.

  • 2番の部分に入力される外乱は,フィードバックループを構成する主な目的のひとつであるため,比較的簡単に除去(補償)できる.
  • 3番については,システム自体は目標通り動作している(外乱によって私たち使用者が目標値通りに動いているか確認できないだけの状態)のため.

1番はコントローラは制御対象を最適に動作させるための操作量を正常に生成できているが,それが外乱によって変えられ制御対象に入力されてしまっている状態です.

つまり,PIDなどのコントローラを適切に設計していても,設計通りの操作量が制御対象に入力されないということです.

今回はこの外乱を除去する外乱オブザーバについて述べていきます.

ここでは,"最適な操作量"は設計時に想定している操作量を指します.
最適レギュレータなどの最適とは根本的に異なる意味ですのであしからず.

続きを読む