カルマン・フィルター・モデルの理論と経済学への …tanizaki/class/kalman/kalman.pdfカルマン・フィルター・モデルの理論と経済学への応用
Lecture note 5: 状態空間モデル - oit.ac.jpoku/control/CEII/lec5.pdf= C (sI A) 1 B + D...
Transcript of Lecture note 5: 状態空間モデル - oit.ac.jpoku/control/CEII/lec5.pdf= C (sI A) 1 B + D...
Lecture note 5: 状態空間モデル
ロボット工学科 奥宏史
制御工学 II
Osaka Institute of Technology
伝達関数モデル
y(s) = G(s)u(s), G(s) =bqs
q + bq−1sq−1 + · · ·+ b1s+ b0
sp + ap−1sp−1 + · · ·+ a1s+ a0
• s領域 (s = jωのとき周波数領域)におけるシステムの表現.
• ブラックボックス的な信号の入出力関係の表現.
• (線形システムのとき) G(s)は sの有理関数 (p ≥ q).
• 本質的に SISO(単入力単出力)系に対するシステムの表現法.
G(s)U(s)Y(s)
Osaka Institute of Technology 制御工学 II 2
現代制御理論
• R. E. Kalman, “On the general theory of control systems,” in Proceedings ofthe 1st IFAC World Congress, Moscow, 1960.
• 現代制御理論状態空間における制御系の記述 (状態空間モデル)に基づき,時間領域でのシステムの挙動解析をベースとする.
• 可制御性,可観測性
• LQG(Linear Quadratic Gaussian)理論
最適レギュレータ
Osaka Institute of Technology 制御工学 II 3
状態空間モデル
x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) +Du(t)
• t領域 (時間領域)におけるシステムの表現.
• 状態ベクトル x(t)の導入. 入力 −→状態 −→出力
• 1階の微分方程式で記述.
• MIMO(多入力多出力)系への拡張が容易.
x=Ax+Bu
y=Cx+Du
u(t)y(t)
Osaka Institute of Technology 制御工学 II 4
状態空間モデル
x(t) ∈ Rn: 状態ベクトル
u(t) ∈ Rr: 入力ベクトル y(t) ∈ Rm: 出力ベクトル
• 状態方程式
x(t) = Ax(t) +Bu(t)
A ∈ Rn×n: システム行列 B ∈ Rn×r: 制御行列
Osaka Institute of Technology 制御工学 II 5
状態空間モデル
• 出力方程式
y(t) = Cx(t) +Du(t)
C ∈ Rm×n: 観測行列 D ∈ Rm×r: 直達行列
Remark:
自然界では入力が必ず炉波作用 (フィルタ)を通して出力されるので,D = 0とするときが多い.
Osaka Institute of Technology 制御工学 II 6
状態空間モデルの例 – RLC回路 –
q:電荷量,i:電流,
q =
∫ t
0
idt,
1
Cq = vout に注意すると,
C
L R
vin vout
i
LCd2
dt2vout +RC
d
dtvout + vout = vin
Osaka Institute of Technology 制御工学 II 7
状態空間モデルの例 – RLC回路 –
LCd2
dt2vout +RC
d
dtvout + vout = vin
x1 = vout, x2 =d
dtvout とすると,RLC回路の状態空間モデルは
d
dt
[x1
x2
]=
[0 1
− 1LC
−RL
][x1
x2
]+
[0
1LC
]vin
vout =[1 0
] [ x1
x2
]
Osaka Institute of Technology 制御工学 II 8
状態空間モデルの例 –倒立振子 –
r: 台車の基準位置からの距離
θ: 振子の垂直方向からの角度
M : 台車の質量
m: 振子の質量
c1: 台車の摩擦係数
c2: 振子の回転軸の摩擦係数
l: 振子の回転軸と重心間の距離
J : 振子の重心まわりの慣性モーメント
g: 重力加速度
α = (M +m)(J +ml2)− (ml)2
θ
u
r
Osaka Institute of Technology 制御工学 II 9
状態空間モデルの例 –倒立振子 –
状態方程式は
d
dt
r
r
θ
θ
=
0 1 0 0
0 − c1(J+ml2)α −m2gl2
αc2mlα
0 0 0 1
0 c1mlα
mgl(M+m)α − c2(M+m)
α
r
r
θ
θ
+
0
J+ml2
α
0
−mlα
u
Osaka Institute of Technology 制御工学 II 10
等しい入出力関係をもつ伝達関数モデル
x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) +Du(t)
Laplace変換する.L[x(t)] = X(s),L[u(t)] = U(s),L[y(t)] = Y (s)と表す.初期状態を x(0)とする.
sX(s)− x(0) = AX(s) +BU(s)
Y (s) = CX(s) +DU(s)
X(s)について解くと,
X(s) = (sI −A)−1x(0) + (sI −A)−1BU(s)
Y (s) = CX(s) +DU(s)
Osaka Institute of Technology 制御工学 II 11
等しい入出力関係をもつ伝達関数モデル
Y (s) = C(sI − A)−1x(0) +{C(sI − A)−1B +D
}U(s)
A
s1
BC
+
+ U(s)Y(s)
D
+
+
Osaka Institute of Technology 制御工学 II 12
状態方程式の解
• 遷移行列 (transition matrix) Φ(t)
Φ(t) := L−1[(sI −A)−1
]= L−1
[1
s
(I − A
s
)−1]
= L−1
[1
s
{I +
A
s+
(A
s
)2
+
(A
s
)3
+ · · ·
}]
= L−1
[1
s+ (−1)A
d
ds
(1
s
)+
(−1)2A2
2!
d2
ds2
(1
s
)+
(−1)3A3
3!
d3
ds3
(1
s
)+ · · ·
]= I +At+
1
2!(At)2 +
1
3!(At)3 + · · ·
=: eAt
Osaka Institute of Technology 制御工学 II 13
状態方程式の解
X(s) = (sI − A)−1x(0) + (sI − A)−1BU(s)
• 右辺第 1項の逆 Laplace変換
L−1[(sI −A)−1x(0)
]= Φ(t)x(0) = eAtx(0)
• 右辺第 2項の逆 Laplace変換
L−1[{(sI −A)−1B
}U(s)
]=
∫ t
0
Φ(t− τ)Bu(τ)dτ
=
∫ t
0
eA(t−τ)Bu(τ)dτ
Osaka Institute of Technology 制御工学 II 14
状態方程式の解
• 状態方程式の解
x(t) = eAtx(0) +
∫ t
0
eA(t−τ)Bu(τ)dτ
• 出力方程式の解
Y (s) = C(sI −A)−1x(0) +{C(sI −A)−1B +D
}U(s)
より,
y(t) = CeAtx(0) +
∫ t
0
CeA(t−τ)Bu(τ)dτ +Du(t)
ゼロ入力応答 ゼロ状態応答
Osaka Institute of Technology 制御工学 II 15
演習問題
前述の RLC回路で抵抗 Rとコンデンサ C を入れ替えたときの状態空間モデルと伝達関数を求めよ.
Osaka Institute of Technology 制御工学 II 16
状態空間モデル(まとめ)
• 状態空間モデル
x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) +Du(t)
• 状態方程式の解
x(t) = eAtx(0) +
∫ t
0
eA(t−τ)Bu(τ)dτ
行列指数関数 eAt
eAt =: I + At+1
2!(At)2 +
1
3!(At)3 + · · ·
Osaka Institute of Technology 制御工学 II 17
状態空間モデルの例 – RLC回路 –(revisited)
q:電荷量,i:電流,
LCvout +RCvout + vout = vin
伝達関数
Vout
Vin=
1
LCs2 +RCs+ 1
C
L R
vin vout
i
x1 = vout, x2 = vout[x1
x2
]=
[0 1
− 1LC −R
L
][x1
x2
]+
[01
LC
]vin
vout =[
1 0] [ x1
x2
]
Osaka Institute of Technology 制御工学 II 18
相似変換
物理的な意味をあまり考慮せず,
ξ1 =L
Rvout + LCvout, ξ2 =
L
Rvout − LCvout
を状態とする RLC回路の状態空間モデルを求めると ξ1
ξ2
=
−RL + 1
2RC − 12RC
RL + 1
2RC − 12RC
ξ1
ξ2
+
1
−1
vin
vout =[
R2L
R2L
] ξ1
ξ2
Osaka Institute of Technology 制御工学 II 19
相似変換
伝達関数は
Vout
Vin=
[R2L
R2L
]sI −
−RL + 1
2RC − 12RC
RL + 1
2RC − 12RC
−1 1
−1
=
1
s2 + RL s+
1LC
[R2L
R2L
] s+ 12RC − 1
2RC
RL + 1
2RC s+ RL − 1
2RC
1
−1
=
1
LCs2 +RCs+ 1
Osaka Institute of Technology 制御工学 II 20
相似変換
• 対象とするシステムの入出力関係に着目すると,状態空間モデルの状態の選び方は無数にある.
• 状態 x = [x1 x2]T と状態 ξ = [ξ1 ξ2]
T の間には,正則な行列 T
T :=
LR LC
LR −LC
用いて ξ = Tx が成立する.
• このとき,xを状態とする状態空間モデルと ξを状態とする状態空間モデルはたがいに相似である (similar)という.
Osaka Institute of Technology 制御工学 II 21
相似変換
一般に,次の状態空間モデルを考える.
x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) +Du(t)
ある正則行列 T を用いて ξ(t) = Tx(t)と変数変換すると,次の状態空間モデルを得る.
ξ(t) = TAT−1ξ(t) + TBu(t)
y(t) = CT−1ξ(t) +Du(t)
このとき,二つの状態空間モデルはたがいに相似で,T による (A,B,C)から(TAT−1, TB,CT−1)の変換を相似変換 (similarity transformation)と呼ぶ.
Osaka Institute of Technology 制御工学 II 22
相似変換
後者の状態空間モデルに対する伝達関数を計算する.
CT−1(sI − TAT−1
)−1TB +D = CT−1
[T (sI −A)T−1
]−1TB +D
= C (sI −A)−1
B +D
前者の状態空間モデルに対する伝達関数と等価.
相似変換によって伝達関数は不変に保たれる.
つまり,
「異なる状態空間モデルが相似変換で結ばれる」⇒「伝達関数は同一」
Osaka Institute of Technology 制御工学 II 23
演習問題
• R 6= 0, L 6= 0, C 6= 0のとき,行列 T が正則 (逆行列をもつ)ことを示せ.
T :=
LR LC
LR −LC
• 次の状態空間モデルの伝達関数を求めよ. ξ1
ξ2
=
−RL + 1
2RC − 12RC
RL + 1
2RC − 12RC
ξ1
ξ2
+
1
−1
vin
vout =[
R2L
R2L
] ξ1
ξ2
Osaka Institute of Technology 制御工学 II 24
極と固有値
• 極
– システム G(s)に対して,s = aが G(s)の極とは
lims→a
G(s) = ∞
であることをいう.
– N(s), D(s)はそれぞれ sの多項式とする.システム G(s) =N(s)
D(s)が因
果的のとき,特性方程式
D(s) = 0
となる sの値を極と呼ぶ.
Osaka Institute of Technology 制御工学 II 25
極と固有値
• 零点
– システム G(s)に対して,s = aが G(s)の零点とは
lims→a
G(s) = 0
であることをいう.
– システム G(s) =N(s)
D(s)に対して,N(s) = 0となる sの値を零点と呼ぶ.
• 互いに素 (coprime):有理関数 G(s) =N(s)
D(s)に対して,
「極と零点に共通するものがない」def⇔ 「N(s)とD(s)は互いに素」
このとき,G(s)は既約 (irreducible)という.
Osaka Institute of Technology 制御工学 II 26
極と固有値
• (sI −A)−1 =adj(sI −A)
det(sI −A)に注意.(adjは余因子行列を表す)伝達関数
G(s)は
G(s) = C(sI −A)−1B +D =Cadj(sI −A)B
det(sI −A)+D
伝達関数の極はシステム行列 Aの固有値に等しい.
つまり,
「λは伝達関数の極」⇒「λはシステム行列 Aの固有値」
Remark: 逆は言えない.
Osaka Institute of Technology 制御工学 II 27
極と固有値
(演習問題) x1
x2
=
0 −2
1 −3
x1
x2
+
1
1
u
y =[0 1
] x1
x2
の A行列の固有値は −2, −1.一方,伝達関数は
G(s) =[0 1
]sI −
0 −2
1 −3
−1 1
1
=1
s+ 2
Osaka Institute of Technology 制御工学 II 28
状態空間表現の結合則
• 2つの状態空間モデル
G1 G2
x1(t) =A1x1(t) +B1u1(t) x2(t) =A2x2(t) +B2u2(t)
y1(t) =C1x1(t) +D1u1(t) y2(t) =C2x2(t) +D2u2(t)
Osaka Institute of Technology 制御工学 II 29
状態空間表現の結合則
• 並列結合 G1 +G2 u1(t) = u2(t) = u(t), y(t) = y1(t) + y2(t)
x1 =A1x1 +B1u
x2 =A2x2 +B2u
y =C1x1 + C2x2 + (D1 +D2)u
y(t)u(t)
y1(t)
+
G1(s)
G2(s)
+
y2(t)
⇐⇒
x1
x2
=
A1 0
0 A2
x1
x2
+
B1
B2
u
y =[
C1 C2
] x1
x2
+ (D1 +D2)u
Osaka Institute of Technology 制御工学 II 30
状態空間表現の結合則
• 直列結合 G1G2 u2(t) = u(t), u1(t) = y2(t), y(t) = y1(t)
x2 =A2x2 +B2u
x1 =A1x1 +B1(C2x2 +D2u)
y =C1x1 +D1(C2x2 +D2u)
y(t)u(t)G1(s)G2(s)
y2(t)
⇐⇒
x1
x2
=
A1 B1C2
0 A2
x1
x2
+
B1D2
B2
u
y =[
C1 D1C2
] x1
x2
+D1D2u
Osaka Institute of Technology 制御工学 II 31
状態空間表現の結合則
• フィードバック結合 (D1 = 0とする)
u1(t) = u(t)− y2(t), y(t) = y1(t) = u2(t)
x1 =A1x1 +B1(u− y2)
x2 =A2x2 +B2y
y =C1x1
y2 =C2x2 +D2y
y(t)u(t)G1(s)
G2(s)
−
y (t)2
u (t)1
x1
x2
=
A1 −B1D2C1 −B1C2
B2C1 A2
x1
x2
+
B1
0
u, y =[
C1 0] x1
x2
Osaka Institute of Technology 制御工学 II 32