感度関数,内部安定性,根軌跡,ボーデ線図,ナイキストの安定判定法,安定余裕(ゲイン,位相余裕),スモールゲイン定理,ロバスト安定性など盛りだくさんの内容。 学部で習う古典制御の一歩先。

ノミナル感度関数

相補感度関数 To(s)T_o (s) ,感度関数 So(s)S_o (s) ,入力感度関数 Suo(s)S_{uo}(s) の3つが重要。 下の図のブロック線図を考える。

disturbances

図においてプラントPは

x˙=Ax+Buy=Cx\begin{align*} \dot{x} &= Ax + Bu \\ y &= Cx \end{align*}

に従っているとすると,初期値を含めて伝達関数は

Y(s)=C(sIA)1BU(s)+C(sIA)1x0=PU(s)+f(x0)\begin{align*} Y(s) &= C(sI - A)^{-1}BU(s) + C(sI - A)^{-1}x_0 \\ &= PU(s) + f(x_0) \end{align*}

となる。ここで P=C(sIA)1P = C(sI - A)^{-1} である。よって初期値応答は以下のように出力端外乱 dˉo\bar{d}_o に含めることができる。

Y(s)=P(U+di)+C(sIA)1x0+do=P(B+di)+dˉodˉo=f(x0)+do\begin{align*} Y(s) &= P(U + d_i) + C(sI - A)^{-1}x_0 + d_o \\ &= P(B + d_i) + \bar{d}_o \\ \bar{d}_o &= f(x_0) + d_o \end{align*}

次に U=C(RˉYn)U = C(\bar{R} - Y - n) を代入すると

Y(s)=PC1+PCRˉ+P1+PCdi+11+PCdˉoPC1+PCnU(s)=C1+PCRˉPC1+PCdiC1+PCdˉoC1+PCn\begin{align*} Y(s) &= \dfrac{PC}{1 + PC}\bar{R} + \dfrac{P}{1 + PC}d_i + \dfrac{1}{1 + PC}\bar{d}_o - \dfrac{PC}{1 + PC}n \\ U(s) &= \dfrac{C}{1 + PC}\bar{R} - \dfrac{PC}{1 + PC}d_i - \dfrac{C}{1 + PC}\bar{d}_o - \dfrac{C}{1 + PC}n \end{align*}

が得られる。

このうち相補感度関数 T(s)T(s),感度関数 S(s)S(s) ,入力感度関数 Su(s)S_u(s)

T(s)=PC1+PCS(s)=11+PCSu(s)=C1+PC\begin{align*} T(s) &= \dfrac{PC}{1 + PC} \\ S(s) &= \dfrac{1}{1 + PC} \\ S_u (s) &= \dfrac{C}{1 + PC} \end{align*}

で定義する。感度関数は,出力に対する外乱の感度,相補感度関数は出力に対する雑音の感度である。また相補感度関数は Rˉ(s)Y(s)\bar{R}(s) \rightarrow Y(s) へのs伝達関数でもある。 Rˉ,n\bar{R}, n はどちらも相補感度関数の影響を受けるので,雑音の影響をさげるには F(s)F(s) を設計すれば良い。

T(s)+S(s)=1T(s) + S(s) = 1 が成立するので

  • 外乱を抑えるには T(s)T(s) を大きく,S(s)S(s) を小さくしたい
  • 雑音の影響を抑えるには T(s)T(s) を小さく,S(s)S(s) を大きくしたい

というトレードオフがある。

相補感度関数

また次で説明する内部安定性のためには入力感度関数 Su(s)S_u (s) も考慮しなければならない。

例題

伝達関数,及び相補感度関数(出力端外乱の伝達関数) T(s)T(s)

Go(s)=4(s+1)(s+2)2To(s)=α(s2+1.2ωns+ωn2)(τs+1)2\begin{align*} G_o (s) &= \dfrac{4}{(s+1)(s+2)^2} \\ T_o (s) &= \dfrac{\alpha}{(s^2 + 1.2 \omega_n s + \omega_{n}^{2})(\tau s + 1)^2} \end{align*}

であるプラントにおいて,出力端外乱 k+dv(t)k + d_v (t)dv(t)d_v(t) が帯域幅を0-4rad/sにもつとする。出力端外乱を抑圧するための α,ωn\alpha, \omega_n の値を適切に定めよ。

解答

出力端外乱の伝達関数は,相補感度関数 S(jω)S(j \omega) である。よって ω=0\omega = 0 及び ω[0,4]\omega \in [0, 4] において S(jω)0T(jω)1S(j \omega) \approx 0 \equiv T(j \omega) \approx 1 となっていて欲しい。 T(0)=α/ωn2T(0) = \alpha / \omega_n^2 であるから,α=ωn2\alpha = \omega_n^2 であれば良い。

外乱の帯域幅は0-4(rad)であるから,ωn>4\omega_n > 4 であれば0-4(rad)における外乱のゲインは小さくなる。ここでは ωn=10\omega_n = 10 とする。

上の図のようにT(jω)T(j \omega) は高周波においてゲインを0にしないといけないので,(τs+1)2(\tau s + 1)^2 をかける。 ω=10\omega = 10 以上例えば ω=100\omega = 100 以上でさらにゲインを下げよう。そこで τ=0.01\tau = 0.01 とする。

すると

To(s)=100(s2+12s+100)(0.01s+1)2\begin{align*} T_o (s) = \dfrac{100}{(s^2 + 12s + 100)(0.01s + 1)^2} \end{align*}

となる。そして入力感度関数を計算してみると

Suo(s)=25(s+1)(s+2)2(s2+12s+100)(0.01s+1)2\begin{align*} S_{uo} (s) = 25 \dfrac{(s + 1)(s + 2)^2}{(s^2 + 12s + 100)(0.01s + 1)^2} \end{align*}

となる。外乱の帯域幅である ω=3\omega = 3 において Suo=10.5,Suo=20.4S_{uo} = 10.5, |S_{uo}| = 20.4 であるから,外乱における3[Hz]の成分を約10倍に増幅している。そのため入力の飽和を引き起こす可能性がある。

もし SuoS_{uo} を外乱の帯域 BdB_d において小さくしようとすれば,BdB_d において T(jω)T(j \omega) を小さくするしかない。それは BdB_d において S(jω)S(j \omega) を大きくするということだから,出力において外乱を抑圧できなくなってしまう。これは設計上のトレードオフである。

On reflection we can see that this problem arises because the output disutrbance has a bandwith which is much larger than that of the open loop plant.

そもそもプラントの開ループ伝達関数 Go(s)G_o (s) はgivenである。今回のように入力が暴れてしまうのは,入力感度関数 Suo=To/GoS_{uo} = T_o / G_o において分母の GoG_o の値が BdB_d において小さくなっていることが問題である。つまり,外乱の帯域幅 BdB_d が以下のように開ループ伝達関数の帯域幅を超えてしまっていることが根本的な要因である。

開ループ伝達関数の帯域と内部安定性

内部安定性

(Y(s)U(s))=1G(s)C(s)(G(s)C(s)G(s)1G(s)C(s)C()G(s)C(s)C(s)C(s))(H(s)R(s)Di(s)Do(s)Dm(s))\begin{align*} \begin{pmatrix} Y(s) \\ U(s) \end{pmatrix} = \dfrac{1}{G(s)C(s)} \begin{pmatrix} G(s)C(s) & G(s) & 1 & -G(s)C(s) \\ C() & -G(s)C(s) & -C(s) & -C(s) \end{pmatrix} \begin{pmatrix} H(s)R(s) \\ D_i (s) \\ D_o (s) \\ D_m (s) \end{pmatrix} \end{align*}

定義 Internal stability 上の数式において行列の要素たる8個の伝達関数が全て安定であること

これは各入力 r,di,do,dmr, d_i, d_o, d_m に対する全ての信号の応答が安定しているということである。これは以下のCLPの極が安定であることと同値である。

A(s)L(s)+B(s)P(s)=0\begin{align*} A(s)L(s) + B(s)P(s) = 0 \end{align*}

個々での例は,出力に対する雑音の影響は抑えられているが,内部安定性は確保できていないという例である。

Go(s)=3(s+4)(s+2)C(s)=s+2s\begin{align*} G_o (s) &= \dfrac{3}{(s + 4)(-s + 2)} \\ C(s) &= \dfrac{-s + 2}{s} \end{align*}

相補感度関数は

T(s)=GC1+GC=3s2+4s+3\begin{align*} T(s) = \dfrac{GC}{1 + GC} = \dfrac{3}{s^2 + 4s + 3} \end{align*}

であるから,雑音から出力 nyn \rightarrow y は安定である。しかしinput sensitibity function SioS_{io} (did_i から yy)は

Sio=3s(s+2)(s2+4s+3)\begin{align*} S_{io} = \dfrac{3s}{(-s + 2)(s^2 + 4s + 3)} \end{align*}

より不安定であるから,プラントへの入力を見ていると実は不安定になっているかもしれない。

根軌跡

こちら に書いた。

ナイキストの安定判別法

これもこちら に書いた。

ゲイン余裕と位相余裕,ピーク感度

下の図の通り。

余裕

Mg=20log101aMf=ϕ\begin{align*} M_g &= 20 \log_{10} \dfrac{1}{|a|} \\ M_f &= \phi \end{align*}

一方ピーク感度はナイキスト線図(ベクトル線図)が最も-1に近づく際の距離である。

ロバスト安定性

定理 Robust Stability Theorem Go(s)C(s)G_o (s)C(s)G(s)C(s)G(s)C(s) の不安定極の個数は同じであるとする。プラントの乗法的誤差 GΔ(s)G_\Delta (s) として,コントローラーを実プラントに適用した場合,それが安定であるためには To(jω)GΔ(jω)=Go(jω)C(jω)1+Go(jω)C(jω)GΔ(jω)<1\begin{align*} |T_o (j \omega) G_\Delta (j \omega)| = \left| \dfrac{G_o (j \omega) C(j \omega)}{1 + G_o(j \omega) C(j \omega)}\right| | G_\Delta (j \omega) | < 1 \end{align*} が成立することが十分である。

証明

Go(s)C(s)G_o (s)C(s)G(s)C(s)G(s)C(s) の不安定極の個数は同じであるのだから,それらが-1の周りを周る回数も同じである。ここで

G(s)C(s)=Go(s)C(s)+Gϵ(s)C(s)\begin{align*} G(s)C(s) = G_o (s)C(s) + G_\epsilon (s) C(s) \end{align*}

を図に書いてみる。

Proof

-1の周りを周る回数が同じであるためには

Gϵ(jω)C(jω)<1+Go(jω)C(jω)\begin{align*} |G_\epsilon (j \omega) C(j \omega)| < |1 + G_o (j \omega)C(j \omega)| \end{align*}

であれば良いから(結構雑い議論だなあ),Gϵ=GoGΔG_\epsilon = G_o G_\Delta より

To(jω)GΔ(jω)=Go(jω)C(jω)1+Go(jω)C(jω)GΔ(jω)<1\begin{align*} |T_o (j \omega) G_\Delta (j \omega)| = \left| \dfrac{G_o (j \omega) C(j \omega)}{1 + G_o(j \omega) C(j \omega)}\right| | G_\Delta (j \omega) | < 1 \end{align*}

が得られる。

注意

このロバスト安定性定理はただの十分条件であるから,ロバスト安定性定理が成立するならば安定であるというだけ。ロバスト安定性定理が成立しなくてもまだ安定である可能性は存在している。