一階非ホロノミック拘束を持つ Control Moment Gyroscope の非線形追従制御
2009SE299 鷲津翔太
指導教員：高見 勲

1

はじめに

本研究で扱う Control Moment Gyroscope(以下 CMG)
は 2 入力 4 状態の劣駆動システムである. CMG にはRotor を回転させるモータと, 同軸上の Gimbal を傾けさせるモータが存在し, ジャイロ効果により駆動力のない他の Gimbal を動かす角運動量, トルクを発生する装置である. このような劣駆動システムは, 平衡点における線形近似システムが可制御でない, 非ホロノミック拘束を受けることが知られている. そこで, 本研究では, Backstepping
手法を用いた非線形制御により, 駆動力のない Gimbal を目標軌道に追従させる制御系設計を考える.

2

ここで, Gimbal3 が初期状態において静止している場合,式 (3) から得られる拘束条件は次式となる.

(J2 − J1 sin2 q2 )ω3 + JD ω1 cos q2 = 0式 (4) には, Rotor1 の角速度 ω1 と Gimbal3 の角速度 ω3が含まれている. このようなシステムは一階非ホロノミックシステムと呼ばれ, 平衡点における線形近似系が可制御でなく, 時不変な状態フィードバックを用いて安定化できない. そこで, 非ホロノミックシステムの正準系として知られる Chained system に変換し, 時変コントローラを用いて CMG の安定化を図る. システムの状態変数を
x = [x1 x2 x3c ]T , 入力を u = [u1 u2 ]T とすると, Chainedsystem は次のようになる.
{

数学モデル

図 1 は,CMG の概略図である. 本研究では Gimbal4 をロックした場合, つまり Gimbal4 の角度 q4 (t) と角速度
ω4 (t) について, q4 (t) = ω4 (t) = 0 となる状態を考える.
CMG には Rotor1 を回転させるトルク T1 (t) と Gimbal2を回転させるトルク T2 (t) が存在する. q1 (t) は Gimbal2からみた Rotor1 の相対角度を表し,ω1 (t) は Rotor1 の角速度である. q2 (t) は Gimbal3 からみた Gimbal2 の相対角度を表し, 角速度は ω2 (t) である. q3 (t) は Gimbal3 の角度を表し, 角速度を ω3 (t) とする. このとき, CMG のEuler-Lagrange 方程式は (1), (2), (3) となる.

ω1q2
ω2q3
ω3T2
Gimbal2

Gimbal4q4
ω4{{x1 = q1u1 = ω1x2 = α(q2 )u2 = β(q2 )ω2x3c = q3(7)d−JD cos q2, β(q2 ) =α(q2 )dq2
J2 − J1 sin2 q2(8){

図 1 Schematic representation CMGJD ω˙1 + JD ω˙3 cos q2 − JD ω2 ω3 sin q2 = T1(1)(IC + ID )ω˙2 + J1 ω32 sin q2 cos q2 + JD ω1 ω3 sin q2 = T2 (2)(J2 − J1 sin2 q2 )ω˙3 + JD ω˙1 cos q2 − JD ω1 ω2 sin q2−J1 ω2 ω3 sin 2q2 = 0

ただし, 各パラメータは以下のように定義する.
ID , JD : Rotor1 の慣性モーメント [kg・m2 ]IC , JC , KC : Gimbal2 の慣性モーメント [kg・m2 ]JB : Gimbal3 の慣性モーメント [kg・m2 ]J1 = JC + JD − KC − ID , J2 = JB + JC + JD

(5)

本研究を行うにあたり, 参考にした文献 [1] では, Gimbal3の応答が指令軌道を満足しなかった. Gimbal2 の角加速度
ω˙2 は q2 と q3 それぞれの偏差に従属しており, その結果,q2 が変動することにより, ω˙2 と q3 が変動する. よって,q3の偏差が十分大きいとき, q2 は π2 となり, 制御ができない. そのため, q2 の指令軌道を固定して制御をおこなっていた. その場合, Rotor1 の回転を大きくする必要があり,トルク T1 が大きくなってしまう. 本研究ではこの問題を防ぐために, ω˙2 を q2 にのみ従属させ, ω˙3 のみの変動により q3 の偏差が定まるようし, q2 を変動させ, より T1 を抑える制御を考える. そのために Chained system について
座標変換 x3 = x3c − x2 x1 を施すと, Chained system は次のように変形できる.

Rotor1q1T1x˙1 = u1x˙2 = u2x˙3c = x2 u1

ただし, q2 には次のような拘束があり, また変数は以下で定義される.
ππ(6)− < q2 <22α(q2 ) =Gimbal3(4)(9)

このシステムを用いて制御系設計をおこなう.

3(3)x˙1 = u1x˙2 = u2x˙3 = −x1 u2

制御系設計得られた Chained system について, 追従制御を考える.
指令軌道 xr = [x1r x2r x3r ]T は Chained system{x1r˙ = u1rx2r˙ = u2rx3r
˙ = −x1r u2r(10)を満足し, また軌道偏差を xe = [x1e x2e x3e ]T とし, 軌
道偏差は次の式を満足する.

xie = xi − xir(11)軌道偏差のダイナミクスは式 (9), (10), (11) を用いて次のように表される.

この制御系に対し, Backstepping 変換手法に基づく制御系設計を行う. Subsystem ∆1 , ∆2 を{x˙3e = −x1 (u2 − u2r ) − x1e u2r
x˙1e = u1 − u1r∆1 :∆2 : x˙2e = u2 − u2r∆1 :x˙3e = −x1e u2r
x˙1e = u1 − u1r-1-1.4-400102030time [s]401050

図 2 Response of Rotor1(14)2030time [s]4050(16)(17)

L1 = k1 + k3 u22r , L3 = −k3 u˙2r − k1 k3 u2r

図 3 Response of Gimbal2

1position [rad]

0.5

(15)

ただし,
(k1 > 0, k3 > 0)-0.8(13)

この状態から, 残りの入力 u1 を用いて x1e = 0, x3e = 0となるような制御を考える. その結果, ∆1 を安定化する
入力 u1 は次式となる.
u1 = u1r − L1 x1e − L3 x3e-0.6

-1.2

0-0.5

この状態フィードバックにより, x˙2e → 0 において, u2 −u2r → 0 が保証されるので, ∆1 は次のようになる.
{0-0.4-2とし, それぞれの Subsystem ∆1 , ∆2 を安定化する入力を設計する. はじめに, ∆2 について, 状態フィードバックゲイン k2 > 0 を用いて x˙2e を安定化させる.
x˙2e = u2 − u2r = −k2 x2e

position [rad]

(12)

2-1
0102030time [s]4050

図 4 Response of Gimbal3

q1 の応答は指令軌道に対し, 小さな誤差がみられるが,概ね指令軌道に追従しているといえる. q2 は指令軌道に偏差なく追従しているといえる. しかし, q3 は, 指令軌道と応答に大きな差があることがわかる. トルク T1 , T2 の結果を次に示す.

(18)

0.2

0.3

simulation

以上, 得られた入力を用いて, CMG の入力トルク T1 , T2を導出する. Rotor1, Gimbal2 の角加速度は次式となる.

experiment

simulation
experiment

0.25

0.1
torque [N/m]0.2ω˙1 = −G1 (u1 − u1r + L1 x1e + L3 x3e )+u˙1r − L˙1 x1r − L1 (u1 − u1r )torque [N/m]x˙1e = u1 − u1r
x˙2e = u2 − u2rx˙3e = −x1 (u2 − u2r ) − x1e u2r-0.2
4
position [rad]{060-0.1

0.15
0.1
0.05

-0.2

−L˙3 x3e − L3 (−x1 u2 + x1d u2r )1(−G2 (u2 − u2r + k2 x2e )ω˙2 =β(q2 )−β(q˙ 2 )ω2 + u˙2r − k2 (u2 − u2r ))

(19)

-0.05

0(20)

また, 角加速度 ω˙3 は式 (3) より, 次式で与えられる.
ω˙3 =−JD ω˙1 cos q2 + JD ω1 ω2 sin q2 + J1 ω2 ω3 sin 2q2
J2 − J1 sin2 q2(21)式 (19), (20), (21) を (1), (2) に代入することで CMG のトルク T1 , T2 は求まる.

4設計した制御系を用いてシミュレーションを行い, その結果を基に実験をおこなう.
π0 0 ]T4(22)とし, 指令軌道 q2r , q3r を次式のように与える.
{q2r = 12 sin(t) − π4q3r = sin( π2 t)(23)

指令軌道 q1r は次式の数値積分によって生成される.
q1r
˙ =−J2 + J1 sin2 q2rq3r
˙JD cos q2r(24)また, ゲインチューニングを次のようにする.
{k1 = 8, k2 = 10, k3 = 1
G1 = 0.1, G2 = 10102030time [s]40500102030time [s]4050

図 5 Response of Torque T1 図 6 Response of Torque T2
トルクの制限は −0.67 ≤ T1 ≤ 0.67, −2.4 ≤ T2 ≤ 2.4であり, 制限内に抑えられていることがわかる.

5考察
本研究の成果は次の点である.

シミュレーションと実験

x(0) = [ 0 −0-0.3

1. 駆動源のない Gimbal3 を Rotor1, Gimbal2 を使って指令軌道に追従させる課題に対し, Chained systemを用いて制御系設計を行った.
2. 設計した制御系を用いて, シミュレーションと実験結果の比較を行った.
これまでの研究では, 良好な実験結果を得ることができなかった. 特に, Gimbal3 については立ち上がりの応答から周期がずれており, その後も周期がずれたままの軌道となっている. 今後は, 各 Gimbal のシミュレーション結果との差が生まれる原因を探し, 応答の改善をしていきたい.

参考文献
(25)

実験結果を次の図 2, 3, 4 に示す. 点線が指令軌道, 実線が実際の応答である.

[1] 太田清士郎: 一階非ホロノミック拘束を持つ Control
Moment Gyro の非線形制御, 南山大学 数理情報学部
情報システム数理学科卒業論文, 2011