フィードバック制御入門(6章~)
6章: フィードバック制御系の安定性
制御対象とコントローラーの伝達関数をそれぞれ$ P(s), K(s)と置く.
ただし, $ P(\infty) = 0,\ \ |K(\infty)| < \inftyとなる条件下で考える. (前者を厳密にプロパー, 後者をプロパーという.)
また, $ P(s) = \frac{N_P(s)}{D_P(s)},\ \ \ K(s)=\frac{N_K(s)}{D_K(s)}なる規約分数で表現する.
以下のフィードバック制御系を考える.
https://gyazo.com/0eaa59aa6cab3a6b0620fdf349f563d8
内部安定性 : システムに入力を加えずに放置すると, いずれ全てのシステムの状態が$ 0になる.
---> 外部から加わる信号$ \{r(s), d(s)\}から各要素の出力$ \{u(s), y(s)\}への伝達関数が全て安定な事.
※内部安定性の必要十分条件 : 「$ \phi(s) = D_PD_K + N_PN_K = 0の全ての根の実部が負」
実際に上記の4つの伝達関数を全て求めると以下の様になる.
$ G_{ur}(s) = \frac{K(s)}{1+P(s)K(s)} = \frac{D_PN_K}{\phi}
$ G_{ud}(s) = \frac{ - P(s)K(s)}{1+P(s)K(s)} = \frac{-N_PN_K}{\phi}
$ G_{yr}(s) = \frac{P(s)K(s)}{1+P(s)K(s)} = \frac{N_PN_K}{\phi}
$ G_{yd}(s) = \frac{P(s)}{1+P(s)K(s)} = \frac{N_P D_K}{\phi}
この$ \phi(s) = D_PD_K + N_PN_Kを特性多項式と呼ぶ.
---> 特性多項式の全ての根の実部が負ならば, これら全ての伝達関数は全て安定となり, FB制御系が内部安定となる.
※ $ G_{ba}は信号$ aから信号$ bまでの伝達関数を表す
・例 6.1 : 不安定な極零相殺 ==============================================================
$ P(s) = \frac{1}{s-1},\ \ \ \ K(s)=\frac{s-1}{s}なる場合を考える. 外乱$ d(s)=0とする.
この時のシステムの安定性を考える.
$ y(s) = \frac{P(s)K(s)}{1+P(s)K(s)}r(s) = \frac{1}{s+1}r(s)として入出力関係が求まる.
これは一見安定している様にみえるが, 制御対象の初期値$ y(0) = y_0を考慮に入れて考えると,
$ y(s)/u(s) = 1/(s-1)より, $ \dot{y}(t) - y(t) = u(t)が成立するので,
$ y(s) = \frac{1}{s-1}u(s) + \frac{1}{s-1}y_0となるから,
$ y(s) = \frac{1}{s+1}r(s) + \frac{P(s)}{1+P(s)K(s)}\cdot \frac{y_0}{s-1} = \frac{1}{s+1}r(s) + \frac{s}{(s+1)(s-1)}y_0となり,
不安定極が存在するので, 厳密に$ y_0=0でなければ無限大に発散してしまう.
この様に不安定な極を零点で相殺する事を不安定な極零相殺と呼ぶ.
内部安定で無い事は$ \phi(s) = (s+1)(s-1) = 0の全ての根の実部が負ではない事からも説明できる.
=======================================================================================
不安定な極零相殺 : $ P(s)の不安定極を$ K(s)の不安定零点で打ち消す事.
----> 例6.1参照.
・性質
1. $ P(s), K(s)の間に不安定な極零相殺が存在する時, FB制御系は内部安定では無い.
2. $ P(s), K(s)の間に不安定な極零相殺が存在しない時, 以下3つは等価.
1. FB制御系が内部安定
2. 閉ループ伝達関数$ G_{yr}(s)が安定
3. $ 1+P(s)K(s)の零点が全て安定. (全て実部が負)
ナイキストの安定判別法 : 開ループ伝達関数の周波数応答に基づいて図的に安定性を判断する手法.
開ループ系$ P(s)K(s)が虚軸上に極を持たないと仮定する.
---> $ \Pi, Zをそれぞれ開ループ, 閉ループ系の不安定極の数とした時に, $ Zを開ループ系の周波数応答から求める手法.
※ ただし$ \Piは既知とする.
・具体的なやり方
左図の閉曲線$ Cに沿って原点から時計回りに$ s \in \mathbb{C}を動かした時の$ w = P(s)K(s)の軌跡$ \Gamma_1をナイキスト軌跡と言う.
この時の軌跡$ \Gamma_1が点$ (-1)を時計回りに回る回転数$ Nについて, $ Z = N + \Piが成立する.
これによって閉ループ系の不安定極の数を開ループ系の不安定極の数を用いて求める事ができる.
----> 「ナイキスト軌跡が点$ (-1)の周りを半時計回りに回転した回数$ Nが
開ループ系伝達関数の$ Cに含まれる極(基本的には不安定極)の個数と一致するならば, 制御系は安定である」と言える.
また, $ sが閉曲線$ C上を$ O\rightarrow aと動く間はベクトル軌跡$ P(i\omega)K(i\omega),\ \ \ (\omega =0 \sim \infty)と一致し,
半径$ \inftyの円周上では$ P(\infty)K(\infty) = 0の時は原点に留まる.
$ c\rightarrow Oと動く時は最初のベクトル軌跡を実軸対称にした軌跡$ P(i\omega)K(i\omega)\ \ \ (\omega = -\infty \sim 0)と一致する.
https://gyazo.com/a2d84aadbf133c7342059e4ee285a216https://gyazo.com/e3ae03b524fd5ee53f0a851cb673a7cb
↑左 : 複素平面の右半平面全体を虚軸と無限遠方の円周で囲む様な閉曲線$ C, 右 : ナイキスト線図
※ なぜこれで求まるのか======================================================================
開ループ系$ L(s) = P(s)K(s)の極を$ p_iとし, 閉ループ系の極を$ r_iとすると,
$ 1+P(s)K(s) = \frac{(s-r_1)...(s-r_n)}{(s - p_1)...(s - p_m)}と表す事ができる.
この時$ \omega = 1+P(s)K(s)の偏角は$ \angle \omega = \sum_{i}\angle (s-r_i) - \sum_{i}\angle (s-p_i)として求まるので,
$ \sum_i \angle (s-r_i) = - 360^\circ \times Z (不安定な$ r_iのみが閉曲線$ Cの内部に含まれる. 含まれない$ r_iの$ \angle (s-r_i)=0.)
$ \sum_i \angle (s-p_i) = -360^\circ \times \Pi (上と同じ)
と求まる事から, $ \angle \omega = -360^\circ \times (Z - \Pi)と求まる.
ゆえに, $ \omega' = \omega -1として$ \omega'の軌跡$ \Gamma_1が点$ (-1)を時計回りに回転した回数$ Nによって, $ N= Z - \Piと求まる.
===========================================================================================
・虚軸上に極がある場合のナイキスト線図 : 原点に極が存在する場合がある.
---> 閉曲線$ Cの原点付近に半径$ \epsilonの微小な半円を追加した閉曲線$ C'についての軌跡を求める事で対応する.
$ \epsilon = 0では不連続になる箇所は$ \lim_{\epsilon \rightarrow 0} L(\epsilon e^{i\theta})\ \ \ (-90^\circ \leq \theta \leq 90^\circ)の軌跡を考える事でナイキスト軌跡が書ける.
ただしこの場合には原点の極は$ C'の内部に含まれないので, 原点の極は数えない
※ 原点以外にも虚軸上に極が存在する場合には, 同様に閉曲線$ Cに半円を追加してやれば良い.
https://gyazo.com/7fe08239254c33a0db4d920c46ddf192
↑閉曲線$ C'
・開ループ伝達関数が安定な場合のナイキストの安定判別法 : もっと簡単に安定性を判別する事ができる.
やりかた
1. 開ループ伝達関数の極の中に実部が正となる物が存在しない事を確認する
2. 開ループ伝達関数のベクトル軌跡$ L(i\omega) = P(i\omega) K(i\omega)を角周波数$ \omega = 0 \sim \inftyの範囲で描く.
3. $ \omegaを$ 0から$ \inftyに変化させた時にベクトル軌跡$ L(i\omega)が常に点$ (-1)の右側を通る様に動く場合, 系は安定となる.
※ 点$ (-1)上を通る場合は安定限界, 常に左側を通る様に動く場合は系は不安定となる.
https://gyazo.com/f474dcb010af0244cd82202390c71b68
↑実線部分が$ \omega : 0 \rightarrow \inftyに相当する
*つぎここから
ゲイン余裕・位相余裕
・位相交差周波数とゲイン交差周波数 :
---> $ L(i\omega) = P(i\omega)K(i\omega)について, $ \angle L(i\omega_{pc}) = -180^\circとなる周波数を位相交差周波数$ \omega_{pc}と言い,
$ | L(i\omega_{gc})| = 1となる時の$ \omega_{gc}をゲイン交差周波数と言う.
※ 前者は実軸とベクトル軌跡が交じる点, 後者は半径$ 1の円とベクトル軌跡が交わる点の周波数に対応する.
※ 位相交差周波数$ \omega_{pc}の意味 : 点$ (-1)に対するベクトル軌跡の位置ってだけではない.
1. $ |L(\omega_{pc})| < 1の時 : 入力信号に対して位相が反転した信号が負のフィードバックによって再び入力に加えられても
振幅が減衰するので, 系は安定になる.
2. $ |L(\omega_{pc})|>1の時 : 負のフィードバックによって入力信号が増幅されて再び入力に加わる事で
振幅が増大して発散していくので, 系は不安定になる.
3. $ |L(\omega_{pc})|=1の時 : 入力信号に対して振幅が同じで位相が反転した信号が再び負のフィードバックによって
再び反転されて同位相で入力に加えられるので, 振動が持続して安定限界になる.
※ ゲイン交差周波数$ \omega_{gc}について
---> この位相が$ -180^\circより進んでいれば, ベクトル軌跡は点$ (-1)の右側を通る事になり, 系は安定になる.
$ -180^\circよりも前であれば, ベクトル軌跡は左側を通るので, 系は不安定になる.
$ -180^\circであれば, 点$ (-1)を通るので安定になる.
※ 点$ (-1)から右側にある程度離れている時には, FB制御系は安定余裕があると言う.
---> 安定余裕を定量的に示す用語として, ゲイン余裕と位相余裕という語がある. これらはボード線図から求まる.
・ゲイン余裕 : あとどれだけ開ループ伝達関数のゲインが増えると制御系が不安定になるかを示す値.
----> ゲイン余裕$ GM = \frac{1}{\overline{OP}}として与えられる. (ゲインがあと$ \frac{1}{\overline{OP}}倍されると不安定になる.)
※ デシベル(dB)で表現する事が多い.
※ bode線図上では, 位相が$ -180^\circの時のゲインの値(この時の$ \omega = \omega_{pc})を$ 0dBから引いた値となる.
https://gyazo.com/a4de229b4032b32b16f963a7a88ce962
・位相余裕 : あとどれだけ開ループ伝達関数の位相が送れると制御系が不安定になるかを示す値.
----> 位相余裕$ PM = \angle GOPとして与えられる.
※ bode線図上では, ゲインが$ 0dBの時の位相の値(この時の$ \omega=\omega_{gc})から$ -180^\circを引いた値となる.
https://gyazo.com/8bb77de4a6b49d144a549efd1aa5be76
https://gyazo.com/19ccd385d2dfeedee86a53dac7ee32ca
・well-posed : 全ての伝達関数が全て適切に定義され, かつプロパーになる時の事.
FB系がwell-posedになる必要十分条件は, 「$ 1+P(\infty)K(\infty) \neq 0」である.
※ 特に$ Pが厳密にプロパーな時にはFB系は必ずwell-posedになる.
7章 フィードバック制御系のロバスト性解析
モデルの不確かさ : モデルの不確かさには以下の様な要因がある.
1. モデルのパラメータの値に含まれる誤差
2. 寄生的な振動モードや微小な無駄時間の影響が高周波数領域で顕著になる
3. 考慮に入れなかった非線形性
4. 外乱や雑音
5. 動作範囲や環境の変化による特性変動
そもそもモデルが複雑すぎると取扱いが煩雑になってしまうので, 設計には不向きな場合も多い.
設計を用意にする為にあえてモデルを簡略化する事もある.
・ノミナルモデル : 不確かさを含まない制御対象のモデルの事
加法的な不確かさ表現 : モデル集合の考え方の一つ
----> モデル集合$ \mathcal{P}を$ \mathcal{P} = \{\tilde{P}\ |\ \tilde{P}=P(s)+\Delta(s)W_{2a}(s),\ \ \ |\Delta(s)|\leq 1,\ \forall s\}として取る表現方法.
※ ロバスト安定性条件は$ |W_{2a}(i\omega)K(i\omega)S(i\omega)|<1,\ \ \ \ \forall \omegaとして表される.
乗法的な不確かさ/円盤型の不確かさ表現 : モデル集合の考え方の一つ.
----> モデル集合$ \mathcal{P}を$ \mathcal{P} := \{\tilde{P}\ |\ \tilde{P} = (1+\Delta (s)W_2(s))P(s),\ \ |\Delta(i\omega)|\leq 1,\ \forall \omega\}として取る表現方法.
これは$ \frac{\tilde{P}(s)}{P(s)} -1 = \Delta(s)W_2(s)を満たすので乗法的な不確かさ表現と呼ばれる.
$ \Delta(s)が不確かさを表現し, $ W_2(s)が不確かさの大きさを表現する.
※ 周波数重み関数$ W_2(s)は固定された安定な伝達関数, $ \Delta(s)は大きさが有界で安定な任意の伝達関数.
※ 一般に$ W_2(s)の大きさは周波数と共に大きくなっている事が多い.
また$ |\tilde{P}(i\omega) - P(i\omega)| = |\Delta(i\omega)W_2(i\omega)P(i\omega)| \leq |W_2(i\omega)P(i\omega)|,\ \ \ \forall \omegaが成立し,
これは$ \tilde{P}(s)のベクトル軌跡が半径$ |W_2(i\omega)P(i\omega)|, 中心$ P(i\omega)の内側にある事を示している.
-----> この事からこのモデル集合$ \mathcal{P}は円盤型の不確かさ表現と呼ばれることもある.
・例7.1 :高次の振動モード
・例7.2 : 無駄時間
・例7.3 : ゲイン変動・時定数変動
ロバスト安定性 : モデル集合$ \mathcal{P}に含まれる$ Pに対する安定性を考える
----> コントローラー$ K(s)が$ \forall \tilde{P} \in \mathcal{P}に対して内部安定性を保証するならば, 系はロバスト安定性を有すると言う.
・乗法的な不確かさに対するロバスト安定性の条件
----> $ \left|\frac{W_2(i\omega) L(i\omega)}{1+L(i\omega)}\right| < 1,\ \ \ \forall \omegaを満たす時に, 制御系はロバスト安定であると言える.
※ 相補感度関数$ T(s):=\frac{L(s)}{1+L(s)}を用いると, この条件は$ |T(i\omega)| < \frac{1}{|W_2(i\omega)|},\ \ \ \ \forall \omegaと書き換えられる.
ちなみに感度関数$ S(s)について, $ T(s)+S(s)=1を満たすので相補感度関数と呼ばれる.
※ proof. ================================================================================
不確かさを考慮した開ループ伝達関数$ \tilde{L}(s)は$ \tilde{P}(s) = (1+\Delta(s)W_2(s))P(s)と書けるので,
$ \tilde{L}(s) = \tilde{P}(s)K(s) = \{1 + \Delta(s)W_2(s)\}L(s),\ \ \ \ L(s)=P(s)K(s)となる.
$ \Delta(s) = 0の条件下では系が安定であるとする.
この時, 簡単の為に$ \tilde{L}(s)が不安定な極を持たないと仮定する. (この条件はなくても同様の結果が成立する.)
ロバスト安定性を満たすには, $ \forall \tilde{L}(s)のベクトル軌跡が点$ (-1)をまわらなければ良いので,
下の図より, $ \Delta(s)=1とした$ \tilde{L}(s)を考えて,
$ |\tilde{L}(s)-L(s)| = |W_2(i\omega)L(i\omega)| < |1+L(i\omega)|が$ \forall \omegaについて成立すれば良い,
https://gyazo.com/734ba52e5fd360bb578817521701452c
↑ $ L(i\omega)の周りの円は入力が$ \omegaの時の乗法的な不確かさを考慮した$ \mathcal{P}の集合に対応する.
=======================================================================================
・小ゲイン定理 : 下の図の閉ループ系が漸近安定となる十分条件は$ ||\Delta(s)G(s)||_{\infty} < 1である.
https://gyazo.com/e28e99678425953b86c5cc43804213c7
これは, $ G(s):伝達関数とすると, $ H_{\infty}ノルムの性質から,
定理のノルムの条件は一巡伝達関数$ \Delta(s)G(s)のベクトル軌跡が原点を中心とする単位円内に留まることを意味する.
※ この定理はこの教科書では説明不足 & 範囲外な気がする
ロバスト性能 :
----> 以下の2つの条件を満たす様な制御系はロバスト性能を満たすと言う.
1. ロバスト安定性
2. $ |W_1(i\omega) \tilde{S}(i\omega)| < 1,\ \ \ \forall \omega,\ \ \forall \tilde{P}\in \mathcal{P}
ただし, $ \tilde{S}は$ \tilde{S}(s) := \frac{1}{1+\tilde{L}(s)}と定義される. (感度関数と同じ形)
※ 条件2.については, $ \tilde{S}(i\omega)を代入して
$ |W_1(i\omega)| < |1+\tilde{L}(i\omega)|と書き換えられ, これは$ \tilde{L}(i\omega)と$ (-1)との距離が$ |W_1(i\omega)|より大きい事を示している.
ここで, 任意の$ \tilde{L}(i\omega)は$ L(i\omega)から半径$ |W_2(i\omega)L(i\omega)|の円の内側に存在するので,
条件2.は$ |W_2(i\omega)| + |W_2(i\omega)L(i\omega)| < |1+L(i\omega)|,\ \ \ \ \forall \omegaと書き換えられる.
以上より, 条件2.は
$ |W_1(i\omega)S(i\omega)| + |W_2(i\omega)L(i\omega)| < 1,\ \ \ \ \forall \omegaと書き換えられる.
8章 FB制御系の設計法
・レギュレータ問題 : 出力を一定の値に保持する事を目的にする問題
・サーボ問題 : 与えられた目標値の変化に対して出力を追従させる問題
制御系の設計手順
1. 制御対象の数学的なモデルを立てる
2. 制御目的から性能仕様を決める
3. 性能仕様を満たす様に制御器を設計する
4. シミュレーションなどによって, 設計された制御系を評価する. 場合によってはこれまでのステップに戻って再設計する.
5. コントローラーを実装してハードウェアを用いてテストする.
周波数応答に基づく制御系の性能評価 : 定常特性と過渡特性に着目する.
*閉ループ伝達関数に基づく性能評価
----> 閉ループゲイン特性$ |T(j\omega)|に対して以下の特性値が存在する.
・帯域幅$ \omega_{br} : 速応性の指標. $ |T(j\omega)|が定常ゲイン$ T(0)の$ 1/\sqrt{2}倍になる角周波数の事.
・ピークゲイン$ M_r : 減衰特性の指標. 閉ループゲインの最大値の事.
・共振周波数$ \omega_r : 閉ループゲインを最大にする各周波数の事.
※ 帯域幅は目標値に対してどの程度の周波数成分までは忠実に追従するかを意味している.
---> 帯域幅$ \omega_{br}が大きければ, それだけ高い周波数成分まで追従性能が保証される事になる.
※ ピークゲイン$ M_rについては$ M_r = 1.1 \sim 1.5程度が良いと経験的に知られている.
https://gyazo.com/e47ca047ae7e6f0e313aa7d5cc519606
*開ループ伝達関数に基づく性能評価
-----> ゲイン交差周波数$ \omega_{gc}を速応性の指標, 位相余裕$ PMを減衰特性の指標に用いる.
※ ゲイン交差周波数$ \omega_{gc}について, $ \omega_{gc} \leq \omega_{bw}\ \ (PM \leq 90^\circ)が成立するので,
$ \omega_{gc}を上げる事は$ \omega_{bw}を上げることになる.
※ $ PMと$ M_rの間には, $ PM \geq 2 \sin^{-1}(\frac{1}{2M_r})が成立する.
※ 経験的には以下の様に設定する事が多い.
追従制御 : $ PM = 40^\circ \sim 60^\circ,\ \ \ GM=10 \sim 20 \mathrm{dB}
定値制御 : $ PM \geq 20^\circ,\ \ \ GM = 3 \sim 10 \mathrm{dB}
https://gyazo.com/aede439950b0b8f0ce8549b7ca1dfabf
*PID補償による制御系設計
https://gyazo.com/5d99f23b3f9112c507d7980a62c3a1d7
・P補償 : コントローラー$ K_p(s) = K_pを用いる手法
・PI補償 : コントローラー$ K_{PI}(s) = K_p + \frac{K_I}{s}を用いる手法
---> 定常特性を改善する. (積分動作により, 偏差が残っている限り, 偏差が積分されて操作量に反映される)
※ ボード線図において低周波域(要は変化が少ない -> 定常的な値)でゲインが大きい事からも分かる.
※ 積分時間$ T_I = K_P/K_Iで変曲点を迎える
・PD補償 : コントローラー$ K_{PD}(s) = K_P + K_D sを用いる手法
---> 過渡特性を改善する. (微分動作によって, 偏差の増減を見越して操作量を増減させるので, 偏差の変化が抑えられる)
※ 折点角周波数$ \omega = 1/T_Dより上の帯域で位相が進むので, 過渡特性の改善に役立つ
※ $ T_D = K_D/K_Pを微分時間と言う.
※ 微分動作はノイズを増幅してしまう事もあるので, $ K_{PD}(s) = \frac{(K_P T_D) s + K_P}{1 + (T_D/N)s}なるコントローラーを用いる事がある.
https://gyazo.com/163ffa376b02ac4d1979cd9eeb683d99
↑ $ \omega = N/T_D(この図では20)より下の周波数では普通のPD補償と"ほぼ"同じ位相進み効果が得られている.
・PID補償 : コントローラー$ K_{PID}(s) = K_P + \frac{K_I}{s} + K_Dsを用いる手法
---> PI制御とPD制御の特性を併せ持つ.
※ PI制御はP制御よりも低周波域での開ループゲインが大きい. PD制御はP制御よりも$ \omega_{gc}が大きく, 追従性能が高い.
※ 多くの場合, 速応性の指標であるゲイン交差周波数$ \omega_{gc}はPI < P < PDとなる.
https://gyazo.com/6ea9ee0b0369430448567b8ce7ab3f16
↑2次系に対する開ループ伝達関数の周波数応答
*PIDチューニング
・限界感度法 : 安定限界の系の振る舞いに基づいてPIDパラメータを調整する手法
---> 応答が持続振動を継続する安定限界に到達した時の$ K_Pについて, 応答の周期(限界周期と言う)$ P_uを用いて,
以下の様にPIDパラメータを定める事が出来る.
table:限界感度法
コントローラ K_P T_I T_D
P 0.5 K_P
PI 0.45 K_P P_u / 1.2
PID 0.6 K_P 0.5 P_u P_u / 8
・ステップ応答法 : ステップ応答からPIDパラメータを定める方法.
---> 以下の図の様なステップ応答について, 曲線の変曲点において接線を引いて,
その傾きを$ R, 横軸との交点の時刻を$ L, 応答の定常値を$ Kとする. ($ R = K/T)
ここで系の伝達関数が$ P(s) = \frac{K}{1+Ts}e^{-Ls}なる一次系と無駄時間で近似的に表現できるとすると,
以下の表の様にPIDパラメータを定める事ができる.
table:ステップ応答法
コントローラ K_P T_I T_D
P 1 / RL
PI 0.9 / RL L / 0.3
PID 1.2 / RL 2 L 0.5 L
※ ここでの系の仮定は, 定位性(同じ入力に対して同じ出力が出る)のプロセスにしか使えない.
※ 経験的な手法
https://gyazo.com/4aa6710378234de87667b9c94b8b3354
*位相進み-遅れ補償による制御系設計
---> 位相遅れ要素や位相進み要素をループ中に直列に順次組み込んでいく手法. 開ループ伝達関数の周波数応答を整形する.
特に感度関数$ S(s)と相補感度関数$ T(s)に着目する.
パラメータ変動に対する低感度特性, 外乱抑制, 目標値追従に関する性能を良くするには$ S(s)を小さくすれば良く,
ロバスト性や対ノイズ性能を良くするには$ T(s)を小さくすれば良い.
しかし, $ S(s)+T(s) = 1が常に成立するので, 両方を同時に小さくする事はできないので, 周波数ごとに調整する.
一般に低周波数域では感度関数が小さく, 高周波数域では相補感度関数が小さくあってほしい.
(観測ノイズなどは高周波域に出てきやすい)
---> 開ループ伝達関数$ L(s)について, $ S(s) = \frac{1}{1+L(s)},\ T(s)=\frac{L(s)}{1+L(s)}と表せるので,
低周波域では$ |L(s)|を大きく, 高周波域では$ |L(s)|を小さくすれば良い.
・ループ整形 :開ループ伝達関数の$ |L(i\omega)|を$ \omegaの関数とみて, 形状が望ましい物になるように整形する考え方.
ループ整形を行う上で以下の事に気をつければ良い.
1. 定常特性 : 低周波域での開ループゲイン$ \lim_{\omega \rightarrow 0}|L(i\omega)|を大きく取る.
2. 速応性 : ゲイン交差周波数$ \omega_{gc}を高く取る.
3. 減衰特性 : 位相余裕PMを十分に取る.
※ 特にゲイン交差周波数$ \omega_{gc}付近での挙動の扱いが難しい.
$ \omega_{gc}付近のゲインの傾きが急なら, ゲインと位相の関係(要補足)から, 良くない位相遅れが出てしまうので,
$ \omega_{gc}付近では緩やかなゲインの傾き($ -20dB程度)が望ましい.
※位置偏差定数$ K_p := \lim_{s\rightarrow 0}L(s), 速度偏差定数$ K_v = \lim_{s\rightarrow 0}sL(s)などの定常特性を考慮すると,
低周波域における開ループゲインは十分に大きくなくてはならない.
---> ステップ状の目標値を考慮する場合は低周波域の傾きは$ -20dB程度, ランプ状なら$ -40dB程度が必要.
※ 高周波数域におけるゲインの傾きをロール・オフと呼ぶ.
---> 雑音の影響を受けないために開ループゲインは$ \omegaが大きくなるとともに急激に小さくなってほしい.
一般に$ -40dB\ \sim\ -60dB程度のロール・オフ特性が望ましい.
・位相遅れ補償 : 定常特性を改善する.
---> $ K(s) = K\frac{\alpha(Ts + 1)}{\alpha T s + 1},\ \ (\alpha > 1)なる伝達関数で表される補償器.
低周波領域において$ 20\log \alpha (\mathrm{dB})だけゲインを持ち上げる.
低・高周波域でのゲインはそれぞれ$ K(0) = \alpha K,\ \ \ K(\infty) = Kとなる.
※ 位相遅れも引き起こすので, 折点角周波数$ 1/Tを調整して, 安定性を劣化させないようにする必要がある.
https://gyazo.com/f4332c0ebadf647baf620b29ce1450fd
・位相進み補償 : 過渡特性を改善したり, 系を安定化する.
---> $ K(s) = K \frac{Ts + 1}{\alpha T s + 1},\ \ \ (\alpha < 1)なる伝達関数で表される補償器.
$ 1/T < \omega < 1/(\alpha T)の周波数帯域で位相が進む様になる. 同じ帯域でゲインも増加する.
低・高周波域でのゲインはそれぞれ$ K(0) = K,\ \ K(\infty) = K/\alphaとなる.
※ 位相が最も進む周波数$ \omega_{max}は$ \omega_{max} = \frac{1}{\sqrt{\alpha T}}となる.
また, $ \sin{\phi_{max}} = \frac{1-\alpha}{1+\alpha}となる.
---> $ \alphaは位相進み量を決定し, $ Tは位相が進む周波数帯域を決定するパラメータとなる.
https://gyazo.com/d5a355e711c92fa3abd2bc90361001e7
・位相遅れ・進み補償 : 位相遅れ補償と進み補償の合わせ技
---> $ K(s) = K\left(\frac{T_1 s + 1}{\alpha_1 T_1 s + 1}\right) \left( \frac{\alpha_2 (T_2s + 1)}{\alpha_2 T_2 s + 1}\right),\ \ \ (\alpha_1 < 1 < \alpha_2)を用いる
$ 1/T_1 < \omega < 1/(\alpha_1 T_1)の周波数帯域で位相が進み, $ 1/(\alpha_2 T_2) < \omega < 1/T_2で位相が遅れる.
https://gyazo.com/2ad47db6cec53d419a3397929ba201dd
次9.3まで
9章 2自由度制御系
・FBの役割 : 制御対象の出力$ y(t)を目標値信号$ r(t)に追従させる為に, 追従偏差$ r(t)-y(t)をフィードバックする.
追従偏差のフィードバックを入力に乗せる事で以下の特性を実現できる.
1. 外乱の影響を抑制
2. 制御対象の特性変動やモデル化誤差の影響を低減
3. 不安定系を安定化
---> 目標値に対する応答も外乱に対する応答も同時に考える必要のある場合に対応が難しい.
過渡応答特性が要求性能を満たせない場合もある.
・例9.1 : 安定化と目標値応答
・FFの役割 : 望ましい目標値応答を示す伝達関数$ G_M(s)が既知なら$ K(s)=\frac{G_M(s)}{P(s)}として$ P(s)をFFで制御すれば良い.
4. 目標値応答の整形
---> 外乱や制御対象のモデル化誤差に全く対応できない.
※ つまり, FB単体では偏差情報$ r(t) - y(t)しか, FFでは目標$ r(t)の情報しか用いていないので,
単体では設計自由度が不足する.
https://gyazo.com/77165c0aadce388389fce6fd9afe8093
・2自由度制御系 : FFとFBを合わせた制御器
---> 目標値信号と出力の情報を$ r(t) - y(t)の様に圧縮せずに, 両方を独立に利用して制御入力を決定しようという方法.
$ F(s)を設計パラメータとして$ u_{ff}(s) = \frac{F(s)}{P(s)}r(s)としたFF制御器と
望ましい入力$ F(s)r(s)との偏差をFBする$ u_{fb}(s) = K(s)(F(s)r(s) - y(s))なるFB制御器を合わせた
$ u(s) = u_{ff}(s) + u_{fb}(s)によって制御入力を定める.
外乱もモデル誤差も存在しない場合には, FF制御器が効いて$ y(s) = F(s)r(s)となり, $ K(s)関係なく偏差は$ 0になる.
存在する場合には, FB制御器が効いて偏差$ F(s)r(s) - y(s)に$ K(s)が掛かった値がFBされる.
これによってFFとFBの両方の役割が果たされる事になる.
---> $ F(s)はFF特性を指定し, $ K(s)はFB特性を指定し, これらは互いに独立であると解釈できる.
※ 条件付きFB構造と呼ばれる事もある.
※ 2自由度制御器はFB制御のみの場合よりも自由に目標値応答の伝達関数を設計する事ができる
・システムの設計法
1. 良い感じの目標値応答を示す様な$ F(s)を安定性を満たす様に選ぶ
2. FB特性の観点からループ整形法などを用いて$ K(s)を安定性を満たす様に選ぶ
3. ここまでのステップで決めた$ F(s),\ K(s)を用いて2自由度制御系を作る
↓2自由度制御器のブロック線図
https://gyazo.com/77165c0aadce388389fce6fd9afe8093
・例9.3 : 2自由度制御器と通常のFB制御器の比較================================================
$ P(s) = \frac{1}{s},\ \ \ K(s) = 1の場合の以下のFB制御器と,
$ F(s)= \frac{1}{s+1},\ \ \ K(s)=8,\ 2の場合の2つの2自由度制御器について考える.
https://gyazo.com/bc84a9f8037d0b596ae4a763c019df0f
制御対象が$ Pから$ P2(s)=\frac{15}{s(s+25)}に変化した場合のステップ応答の変化を図示すると以下の様になる.
https://gyazo.com/9f866bf27370eeb191d82246879ac3ea
この様に, 通常のFB制御器では低感度化が不十分になり, 制御対象の変動が出力の変動に大きく出ているが,
2自由度制御器では, 変動を小さく抑える事ができている.
また, FB項のゲイン$ Kを大きくするほど変動が小さくなっている事も分かる.
さらに, 実際の対象が制御器に使うモデル$ Pと一致している場合には, 応答が$ K(s)に依存しない事が言える.
(FB制御器の場合には, 入力が大きすぎると危険なので, ゲイン$ Kはあまり大きくできない場合が多い.)
================================================================================================
・2自由度制御器の安定性
・安定性
1. FF項$ F(s)が安定, かつ$ P^{-1}(s)F(s)が安定
2. $ P(s),\ K(s)から成る閉ループ系が内部安定
であることが2自由度制御系の安定条件となる. (FB制御系にFF項を付け加えた物なので)
※ (復習) 伝達関数が安定 : 極が複素閉右平面に存在せず, 関数がプロパーな事.
・定理9.1
2自由度制御系において, $ P(s)が安定であると仮定する.
この時, 制御系を安定化する任意の$ F(s),\ K(s)に対して, 以下の式を満たす安定な伝達関数$ R(s)と$ Q(s)が存在する.
また, 逆に$ R(s),\ Q(s)を任意の安定な伝達関数に選んだ時, 以下の式で計算される$ F(s),\ K(s)は制御系を安定化する.
・$ F(s) = P(s)R(s),\ \ \ R(s):安定
・$ K(s) = \frac{Q(s)}{1-P(s)Q(s)},\ \ \ Q(s):安定
※ $ R(s),\ Q(s)を自由パラメータとする安定化制御器のパラメータ表現と呼ばれる.
---> この表現方法のメリットは,
1.$ R(s),\ Q(s)を安定に選びさえすれば自動的に制御系の安定性が保証される
2. 閉ループ伝達関数が$ R(s),\ Q(s)の一次式となり, 設計の見通しが良い
3. 任意の安定化制御器を表せるので, 設計上この表現で問題が無い
※ 通常は, 開ループ伝達関数ではなく, 閉ループ伝達関数を要件に合うようにする事が設計の目標となる
(証明)
・$ H_{\infty}制御による自由パラメータの選択
FB制御器$ K(s)に着目して, 感度特性やロバスト安定性の仕様を満たすパラメータ$ Q(s)を選ぶ方法を考える.
特に$ H_{\infty}ノルムを小さくする事で設計仕様を満たす事を目的にする.
※ FF制御器はモデル伝達関数に一致させるなどの方法で比較的定めやすい.
・$ H_{\infty}ノルムの定義
---> $ ||G(s)||_{\infty} = \sup_{\mathrm{Re}[s]>0} |G(s)| と定義されるが, $ G(s)が複素閉右平面に極を持たない時,
$ |G(s)|の最大値はその領域の境界上(つまり虚軸上)に存在するので,
$ ||G(s)||_{\infty} = \sup_{\omega}|G(i\omega)|と表す事ができる.
※ $ H_{\infty}ノルムは周波数伝達関数の最大ゲインと解釈できる.
・$ H_{\infty}ノルムの最小化による低感度化とロバスト安定化の表現
1. 低感度化
---> 低感度化は感度関数$ S(s)と周波数重み関数$ W_1(s)を用いて,
$ |W_1(i\omega)S(i\omega)| < 1,\ \ (\forall \omega)を満たす様に制御系が設計できれば良かったので,
これを書き換えると,
$ ||W_1(s)S(s)||_{\infty} <1とできる.
以上で制御系の低感度化を重み付き閉ループ伝達関数の$ H_{\infty}ノルムを用いて表現する事ができた.
2. ロバスト安定化
---> モデル化誤差の大きさを表す重み関数$ W_2(s)について,
$ \hat{P}(s) = (1+\Delta(s)W_2(s))P(s),\ \ \ \ \ (\forall ||\Delta(s)||_{\infty} \leq 1)を満たす任意の$ \hat{P}(s)を
FB制御器$ K(s)で安定化する条件は $ |W_2(i\omega)T(i\omega)| < 1,\ \ \ (\forall \omega)と表されるので,
これを書き換えると,
$ ||W_2(s)T(s)||_{\infty} < 1とできる.
以上で対象のロバスト安定化についても, $ H_{\infty}ノルムを用いて表現する事ができた.
・$ H_{\infty}ノルムを用いたパラメータの決め方
制御対象$ P(s)が安定な時, 定理9.1より, $ R(s),\ Q(s)をパラメータとして系を表現できるので,
閉ループ伝達関数が$ Q(s)の一次式として表せる事を用いて,
$ H_{\infty}ノルムを用いて表現された制御仕様は一般に$ ||T_1(s) + T_2(s)Q(s)||_{\infty} < \gammaと表せる.
(ただし, $ T_1(s),\ T_2(s)は仕様によって定まる安定な伝達関数で, $ \gamma >0とする.)
たとえば, $ ||W_1(s)S(s)||_{\infty} < 1と表現される制御系の低感度化条件は,
$ \frac{1}{1+P(s)K(s)} = 1 - P(s)Q(s)となる事を用いて, $ ||W_1(s) (1-P(s)Q(s)) ||_{\infty} < 1と表される.
これは$ T_1(s) = W_1(s),\ \ T_2(s) = -W_2(s)P(s),\ \ \gamma = 1とした場合に対応する.
$ W_1(s),\ W_2(s)を安定に選んでおけば, $ P(s)は安定なので, $ T_1(s),\ T_2(s)は安定となる.
※ 一般に$ ||T_1(s) + T_2(s)Q(s)||_{\infty} < \gammaなる条件を満たす$ Q(s)の求め方は確立されている.
---> 簡単な場合であれば, $ T_2(s)が不安定零点を持たない場合には,
$ U(s)を$ ||U(s)||_{\infty}<\gammaを満たす任意の(安定な)伝達関数として$ U(s) = T_1(s) + T_2(s)Q(s)を解く事で,
条件を満たす任意の$ Q(s)は, $ Q(s) = \frac{U(s) - T_1(s)}{T_2(s)}として表される.
※ $ U(s),\ T_1(s),\ T_2^{-1}(s)はすべて安定なので, $ Q(s)も安定となる.
※ ただし, $ 1-P(s)Q(s)を常に$ 0にする物は除く.
まとめると, $ ||T_1(s)+T_2(s)Q(s)||_{\infty}<\gammaと表される形式に制御仕様を落とし込む事で$ Q(s)求めることが出来るという話.