サンプル零点の再配置に基づいた
モータ系のデジタルフィードフォワード制御
十河拓也,吉田靖夫
DIGITAL FEEDFORWARD CONTROL FOR MOTOR SYSTEMS
BASED ON RELOCATION OF SAMPLE ZEROS
Takuya Sogo and Yasuo Yoshida
Abstract: This paper proposes a method to design cascade-connected
compensators to relocate sample zeros of digital control systems for
mo-tor, which usually has a sample zero located closely at
−1. The
zero-relocation compensator is realized as digital filter with faster sample
rate. Experimental results of model following control show the
effec-tiveness of the proposed relocation technieque.
Keywords: Digital Control, Feedforward Control, Motor Control, Sampled-data
sys-tem, Sample Zeros, Model Following Control
1.
はじめに
ビデオカメラなどの動画像情報に基づいたロボットなどのメカニカルシステムの制御技術の重要性が高 まっている.動画像は撮像素子に届いた光情報を一定周期でサンプルした静止画像の列であるから,本質的 にサンプル値制御系としてモデル化される.サンプル値制御系は,サンプル周期を十分短くすれば微分方 程式にもとづく連続時間系を近似することを根拠として,連続時間制御理論に基づいて設計されることが 多かった.しかし,動画像情報はデータ量が膨大であるためコストの観点からサンプル周期を十分に短く出 来ないことが多い.したがって,画像情報に基づく制御系設計のためには,制御対象をあらかじめ固定され たサンプル周期の離散時間系として取り扱うことが必要となる.しかし,サンプル値系から得られる離散 時間系は,連続時間制御理論で知られている有用な制御法に対応する手法がそのままの形では適用できな い問題が生じる. 例題 1 (モータ系) Figure 1 のようなモータ角度制御実験装置を考える.パワーアンプの指令電圧 [V] か ら軸角度 [rad] までの連続時間伝達関数はステップ応答実験および周波数応答実験の結果,つぎのようで あった. G(s) = 253.498 s(s + 3.5) (1) この連続時間系をサンプル周期 τ = 0.01 のサンプラおよび同周期の 0 次ホールドで離散化した場合の離散 時間モデルはつぎのようになる: H(z) = 0.012528(z + 0.9884) (z− 1)(z − 0.9656) (2)Power amp.
Motor
load rotary encoderG(s)
Figure 1: DC motor with power amplifer and rotary encoder
式 (2) には安定限界に近い離散化零点 −0.9884 が存在する.例題 1 のような対象に高速・高精度の制御を行う にはフィードフォワード制御を適用することが必要である.例えば,フィードフォワード制御の一つであるモ デルフォロイング制御(Figure 2)を適用することを考える.この制御系は,制御対象を H(z) = B(z)/A(z)
Figure 2: Block diagram of model following control ただし B(z) = b0zn−1+ b1zn−2+· · · + bn−1 (3) A(z) = zn+ a1zn−1+ a2zn−2+· · · + an (4) とするとき, D(z)(y(k)− yM(k))) = 0 (5) ただし,D(z) = 1 + d1z−1+· · · + dnz−nを満たす,つまり 1/D(z) の極で指定される速さで出力 y(k) = H(z)u(k)が規範モデルの出力 yM(k) = HM(z)uM(k)へ収束するように設計される.設計される制御器 BS(z)および R(z) はつぎのように選ばれる. BS(z) = b1z−1+· · · + bn−1z−n+1 (6) R(z) = (d1− a1) + (d2− a2)z−1+· · · + (dn− an)z−n+1 (7) Figure 2において b−10 と BS(z)によるループは b−10 1 + b−10 BS(z) = 1 b0+ b1z−1+· · · + bn−1z−n+1 = z n−1 B(z) (8) より極零消去によるフィードフォワード項であり,制御対象 H(z) の零点の安定性が満たされている必要が ある.例題 1 のモータ系を対象とし, (2) 式に基づいて制御系を構成して制御実験を行うと,ステップ応 答および外乱応答はそれぞれ Figure 3 および 4 のようになる. Figure 3(右)のように望ましい軌道に高精度で追従するが,入力信号には Figure 3(左)のように持続 的振動がみられ,モータに外乱トルクを加えた場合(Figure 4)には入力信号にさらに大きな振動が発生し
その影響が角度出力にも現れてしまう.この現象は実用上の大きな問題となる.この振動の原因は,フィー ドフォワード項によって極零消去するべき零点が式 (2) の不安定領域に近い零点 −0.9884 だったことである. 0 1 2 3 4 5 6 −10 −5 0 5 10 Time [s] 0 1 2 3 4 5 6 0 5 10 Time [s] Desired response Output
Figure 3: Input signal and output of the motor
0 5 10 15 20 25 30 −15 −10 −5 0 5 10 15 Time[s] 0 5 10 15 20 25 30 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 Time[s]
Figure 4: Input signal to the power amplifer and the response of the motor againt disturbance 本研究ではこのような問題を解決するため,極零消去の対象となるサンプル値系の零点の位置をフィー ドフォワード制御に適した位置に再配置する方法を開発する.
2.
サンプル零点の性質
一般の1入出力連続時間系 G(s) = K(s− q1)· · · (s − qm) (s− p1)(s− p2)· · · (s − pn) (9) (ただし m < n)を考える.サンプル周期 τ でサンプル値系を構成した場合,そのパルス伝達関数は H(z) = Nτ(z) Dτ(z) = Cτ{z − γ1(τ )} · · · {z − γn−1(τ )} (z− ep1τ)(z− ep2τ)· · · (z − epnτ) (10) となる.単純に 1 対 1 対応する極に比べ,零点 {γi(τ )} は一般に閉じた単純な式では表されない.サンプル 周期を τ → 0 としたときの H(z) の極限についてはつぎが知られている. 定理 1 [1, 2] サンプル周期 τ → 0 のとき H(z)→ τ n−m(z− 1)mB n−m(z) (z− 1)n (11) ここで,Bn−m(z)は n − m − 1 次の Euler-Frobenius 多項式 [2] である.□ n− m − 1 個の離散化零点 {γm+1(τ ),· · · , γn(τ )} が近づく Euler-Frobenius 多項式 Bn−m(z)の零点は,す べて異なる負の実数であることが知られている [3].このことを利用して,離散化零点 γ(τ) の Taylor 展開 式がつぎのように表される.□定理 2 [4] パルス伝達関数の分子が H(z) =τ n−m{F 0(z) + τ F1(z) +· · · + τkFk(z) +· · · } (z− ep1τ)· · · (z − epnτ) (12) のように表されるとき,離散化零点の Taylor 展開式はつぎのようである. γ(τ ) = λ + α1τ + α2 2!τ 2+α3 3!τ 3+· · · +αµ µ!τ µ+· · · (13) ここで, α1=− (F0′(λ)) −1F 1(λ) (14) α2=− (F0′(λ))−1{α1F0′′(λ) + 2α1F1′(λ) + 2F2(λ)} (15) α3=− (F0′(λ))−1 { 3α1α2F0′′(λ) + α 3 1F (3) 0 (λ)+ +2α2F1′(λ) + (3α 2 1+ α2)F1′′(λ) + 6α1F2′(λ) + 6F3(λ) } (16) .. . αµ=− (F0′(λ))−1 { ∑ ν αi1· · · αiνF (j) 0 (λ) + µ−1 ∑ k=1 k!∑ ν αi′1· · · αi′νF (j′) k (λ) + µ!Fµ(λ) } (17) ただし,i1+· · · + iν = µ, i1< µ,· · · , iν < µ, j≥ 1, i′1+· · · + i′ν = µ− k, j′≥ 1. □ 零点の展開式 (13) を具体的に計算するために必要な式 (12) の分子の展開係数多項式 Fk(z)は,もとの連続 時間系 (1) の零点 {q1,· · · , qm},極 {p1,· · · , pn} および留数 {r1,· · · , rn} から計算される: 補題 1 [4] パルス伝達関数 (12) の分子係数多項式 Fk(z)は,連続時間系 (9) の極 {p1,· · · , pn} および零点 {q1,· · · , qm} を用いてつぎのように表される. Fk(z) = 1 (n− m + k)! n ∑ j=1 c(k, j)(−1)jzn−j (18) ただし,p0= 0として c(k, j) = n ∑ l=0 rl ∑ n個の整数集合 {0, 1, · · · , n}\{l} のうちの j 個の整数集合 {i1, · · · , ij } のすべての組み合わせについて (pi1+· · · + pij) n−m+k (19) rl= G(s)(s− pl)|s=pl (l = 0,· · · , n) (20) □
3.
サンプル零点の近似にもとづく再配置
ここでは,定理 2 および補題 1 から計算される展開式を下記の連続時間系 G2(s)について求める:(例 題 1 で取り上げたモータ系と同じ相対次数 n − m = 2 であることに注意する) G2(s) = s− q (s− p1)(s− p2)(s− p3) (21) これらから得られる離散時間系をつぎのように表す. H2(z) = Cτ{z − γ1(τ )}{z − γ2(τ )} (z− ep1τ)(z− ep2τ)(z− ep3τ) (22)H2(z)は零点を2つ持ち,そのうちの一つは定理 2 で λ = −1 とした展開式 (13) で表され,もう一つはサ ンプル周期 τ → 0 のとき 1 へ近づく.後者の零点の他に 1 へ近づく零点は存在しないことから,その展開 式も定理 2 で λ = 1 とした (13) 式で表されることに注意する.連続時間系 G2(s)に関して,補題 1 の多 項式 Fk(z)を具体的に計算した結果は以下の通りである: F0(z) =1/2!(z2− 1) (23) F1(z) =1/3! { (p1+ p2+ p3− q)z2+ (p1+ p2+ p3− 4q)z − 2(p1+ p2+ p3)− q } (24) F2(z) =1/4! [{ p21+ p22+ p23+ p1p2+ p2p3+ p3p1− (p1+ p2+ p3)q } z2 + 2(p1+ p2+ p3)(p1+ p2+ p3− 4q)z −{3(p21+ p22+ p23) + 5(p1p2+ p2p3+ p3p1) + 3(p1+ p2+ p3)q }] (25) これらと定理 2 より −1 へ近づく離散化零点の Taylor 展開式はつぎのように表される. γ2(τ ) =−1 + α1τ + α2 2!τ 2+α3 3!τ 3+· · · (26) ここで α1=− (p1+ p2+ p3− q)/3 (27) α2=− (p1+ p2+ p3− q)2/32 (28) α3=− 7(p31+ p 3 2+ p 3 3)− 27(p 2 1p2+ p21p3+ p1p22+ p1p23+ p 2 2p3+ p2p23) − 42p1p2p3+ 32(p1p2+ p2p3+ p3p1)q + 22(p21+ p22+ p23)q− 5(p1+ p2+ p3)q2− 10q3 (29) 同様に定理 2 より 1 へ近づく零点の Taylor 展開式はつぎのように表される. γ1(τ ) = 1 + qτ + q2 2!τ 2+α¯3 3!τ 3+· · · (30) ここで, ¯ α3= (p1+ p2+ p3+ 2q)q2/6 (31) ここで,展開式 (26) および (30) の各 τνの係数 α ν は,もとの連続時間系 (21) の極 {p1, p2, p3} および {q} の ν 次式になっていることに注意する.このことからサンプル周期 τ に対して極 {p1, p2, p3} および {q} の 絶対値が大きすぎず O(qτ ) = 1, O(piτ ) = 1 (i = 1, 2, 3) (32) を満足されていれば,Taylor 展開式の高次項を無視できる.以下では,展開式 (26) および (30) の 2 次以 下の項のみを使って近似的に零点の配置をおこなう. 例題 1 でとりあげたモータ系のように連続時間系 G1(s) = 1 (s− p1)(s− p2) (33) を離散化すると不安定な離散化零点が生じることが多い.この離散化零点を再配置するため連続時間系 (21) を G2(s) = G1(s)C(s)ただし C(s) = s− q s− p3 (34) とみなし,付加された極 p3および零点 q を調整することで (22) 式の新しい零点 γ1および γ2の配置を調 整することを考える.展開式 (26) および (30) 式の2次以下の展開式を用いて,極零消去の際の安定性を高 めるため |γ1| および |γ2| を最小化すると q =−1/τ, p3=−4/τ − (p1+ p2) (35)
を得る. (1) 式のモータ系では,τ = 0.01, p1= 0, p2=−3.5 であるから C(s) = s + 100 s + 396.5 (36) が得られる.これを付加して得られるパルス伝達関数 H2(z)はつぎのようである. H2(z) = 6.7064× 10−3(z + 0.4544)(z− 0.3681) (z− 1)(z − 0.9656)(z − 0.01897) (37) これより,もとのパルス伝達関数 (2) の零点 (−0.9884) に比べて極零消去に適した位置に零点が再配置でき ていることが確認される. サンプル零点を再配置するために付加する連続時間系 (36) は,0 次ホールドとモータ系の間に直列に挿 入されるアナログフィルタとして実装できる.このフィルタは,Figure 5(right) のように低周波域を遮断す る周波数特性を持ち,0 次ホールドの階段状信号を Figure 6 のように変換する. この観察より,フィルタ -+ Power amp.
OP. amp. Motor
C2 C1 R1 R2 load rotary encoder
C(s)
G(s)
!"# −12 −10 −8 −6 −4 −2 0 Magnitude [dB] 100 101 102 103 0 5 10 15 20 25 30 35 40 Freqency [Hz] Phase [deg]Figure 5: Analog circuit for the prefilter C(s) and the Bode diagram
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 -10 -5 0 5 10 Time [s] Output of ZOH
Response of the filter
Figure 6: Output of ZOH and the response of the prefilter C(s) (simulation)
C(s)の周期 τ の 0 次ホールド入力に対する応答波形を τ より十分短い周期 δ の 0 次ホールド階段状関数で 近似することが考えられる.これは連続時間フィルタ C(s) を短いサンプル周期 δ の離散時間フィルタ F (z) = z− (qe p3δ+ p 3− q)/p3 z− ep3δ (38) で置き換えることに相当する(Figure 7).短いサンプル周期を δ = τ/10 = 0.001 とした場合の連続時間 フィルタ (36) に対応する式 (38) は F (z) = (z − 0.9174)/(z − 0.6727) である.
ZOH fast
G
(s)
ZOH fast sampler ZOHG
(s)
G
(s)
fast ZOHs − q
s − p
s − q
s − p
rate changerFigure 7: Replacement of C(s) by digital filter
4.
モデルフォロイング制御実験
例題 1 のモータ系に前節で設計したデジタルフィルタ F (z) を接続し,モデルフォロイング制御(Figure 2) の実験を行った.式 (37) を対象として, D2(z) = (z− 0.1)3/z3= 1− 0.3z−1+ 0.03z−2− 0.001z−3 (39) と選んで制御器を求めると R2(z) =(−0.3z−1+ 0.03z−2− 0.001z−3)− (−1.985z−1+ 1.003−2− 0.01832z−3) (40) BS(z) =0.000579z−1− 0.001122z−2 (41) b0=0.006706 (42) となる.この制御系へステップ状入力信号 uM(t) = 1(1≤ t ≤ 3), 0(otherwise) を与えた場合の,パワーアン プへの入力(サンプル零点再配置フィルタ出力)[V] およびモータ軸角度 [rad] を Figure 8 に示す.さらに, 外乱を加えた場合の応答を Figure 9 に示す.サンプル零点再配置フィルタを用いなかった場合(Figure 3 および 4)と比較すると入力の持続的振動が生じておらず,外乱を加えた場合はとくに振動抑制効果が得ら れていることが確認できた. 0 1 2 3 4 5 6 −10 −5 0 5 10 Time [s] 0 1 2 3 4 5 6 0 2 4 6 8 10 Time [s] Desired response Output0 5 10 15 20 25 30 −4 −3 −2 −1 0 1 Time[s] Input signal[V] 0 5 10 15 20 25 30 0 0.02 0.04 0.06 0.08 0.1 Time[s]
Figure 9: Input signal to the power amplifer and the response of the motor with relocation filter againt disturbance
5.
まとめ
本研究では画像情報を用いる制御の基礎となるサンプル値系のフィードフォワード制御を設計する際に 大きな問題となる不安定零点の問題を解決する方法を開発した.その有効性はモータ角度制御系のモデル フォロイング制御実験によって示された.謝辞
実験に協力してくれた中部大学 博士前期課程 2 年生 城尾将史君に謝意を表します.本研究は中部大学総 合工学研究所 平成 21 年度~平成 22 年度の第 1 部門の援助を受け遂行されたものであり,ここに謝意を表 します.参考文献
[1] K. J. ˚Astr¨om, P. Hagander, and J. Sternby. Zeros of sampled systems. Automatica, Vol. 20, No. 1, pp. 31–38, 1984.
[2] S. R. Weller, W. Moran, B. Ninness, and A. D. Pollington. Sampling zeros and the Euler-Frobenius polynomials. IEEE Transaction on Automatic Control, Vol. 46, No. 2, pp. 340–343, 2001.
[3] S. L. Sobolev. On the roots of Euler polynomials. Soviet Math. Dokl., Vol. 18, No. 4, 1977.