null

現代制御�
•  制御理論
–  古典制御
•  線形システムの入出力に注目
•  入力信号u(t)、出力信号y(t)をラプラス変換した
U(s), Y(s)の比である伝達関数G(s) = Y(s)/U(s)で
システムを表現
–  現代制御
•  入出力だけではなく、システムの状態を表現する
状態変数を導入
•  システムの特性を状態変数の連立の1次微分方程
式で表現
1
現代制御�
•  制御対象の入力と出力の関係を時間に関
する動的な特性としてとらえる
•  制御対象を状態方程式と呼ばれる1階の
常微分方程式で表現する
•  状態方程式における変数をベクトルで、定
数係数を行列で扱うことで、次数の高い制
御対象でも統一的に扱うことができる
•  行列を用いた代数計算を行うことで、より
数学的に制御対象の解析・制御器の設計
を行うことができる�
2
状態方程式�
•  制御対象の内部状態(制御対象の振る舞
いを表現できるもの)を表す時間変数x(t)
を状態として新たに導入.
•  制御対象の入力u(t)と出力y(t)の関係を
1階の常微分方程式と代入方程式のペア
で実現�
3
古典制御でのシステムの表現�
•  ダンパ・質量・ばね系�
バネとダンパでつながれた物体の運動方程式
d2 y(t)
dy(t)
u(t) = M
+B
+ Ky(t)
2
dt
dt
u(t)�
ラプラス変換をする�
U (s) = M s2 Y (s) + BsY (s) + KY (s)
y(t)�
= (M s2 + Bs + K)Y (s)
Y (s)
G(s) =
U (s)
=
1
M s2 + Bs + K
伝達関数�
伝達関数の極などの解析によって制御システムを設計�
4
現代制御でのシステムの表現�
•  ダンパ・質量・ばね系
d2 y(t)
dy(t)
u(t) = M
+B
+ Ky(t)
2
dt
dt
状態変数として x1 (t) = y(t) と x2 (t) = ẏ(t)
u(t)�
y(t)�
d
x1 (t) = ẏ(t) = x2 (t)
dt
d
B
K
1
x2 (t) = ÿ(t) =
ẏ(t)
y(t) +
u(t)
dt
M
M
M
K
B
1
=
x1 (t)
x2 (t) +
u(t)
M
M
M
状態方程式�
d
dt
x1 (t)
x2 (t)
d
x(t)
dt
=
=�
0
K
M
1
出力方程式�
x1 (t)
B
M
Ax(t)
x2 (t)
+
+�
0
1
M
u(t)
Bu(t)
y(t) =
y(t) =�
1 0
x1 (t)
x2 (t)
Cx(t)
5
状態変数表現�
システムをn階の微分方程式ではなく、連立
1階常微分方程式で記述し、微分方程式を
一般的に求める�
d
x(t) = Ax(t) + Bu(t)
dt
y(t) = Cx(t) + Du(t)
x:状態変数(n次元ベクトル)
u:入力(m次元ベクトル)
y:出力(l次元ベクトル)
A:n×n行列
B:n×m行列
C: l×n行列
D: l×m行列
6
2質量系の状態方程式�
•  2物体がばねでつながれた2質量系
•  運動方程式�
d2 p1 (t)
M1
K (p2 (t)
2
dt
d2 p2 (t)
M2
+ K (p2 (t)
2
dt
p1 (t)) = f1 (t)
p1 (t)) = f2 (t)
7
2質量系の状態方程式�
•  2物体がばねでつながれた2質量系
•  状態変数
x(t) =
p1 (t)
p2 (t)
dp1 (t)
dt
dp2 (t)
dt
8
2質量系の状態方程式�
•  2物体がばねでつながれた2質量系
•  状態方程式
p1 (t)
dx(t)
d
=
dt
dt
p2 (t)
dp1 (t)
dt
dp2 (t)
dt
=
Ax(t)
Bu(t)
0
0
1 0
p1 (t)
0
0
p2 (t)
K
M1
K
M2
K
M1
K
M2
0 1
0 0
0 0
dp1 (t)
dt
dp2 (t)
dt
+
0
0
0
1
M1
0
0
0
1
M2
f1 (t)
f2 (t)
9
2質量系の状態方程式�
•  2物体がばねでつながれた2質量系
•  出力方程式
y(t) =
p1 (t)
p2 (t)
=
Cx(t)
p1 (t)
1 0 0 0
0 1 0 0
p2 (t)
dp1 (t)
dt
dp2 (t)
dt
10
状態方程式から伝達関数への変換�
ラプラス
変換�
d
x(t) = Ax(t) + Bu(t)
dt
y(t) = Cx(t) + Du(t)
sX(s) = AX(s) + BU (s)
Y (s) = CX(s) + DU (s)
(sI
A) X(s) = BU (s)
X(s) = (sI
A)
1
代入�
BU (s)
Y (s) = CX(s) + DU (s)
= C (sI
A)
= C (sI
1
A)
BU (s) + DU (s)
1
B + D U (s)
伝達関数�
11
伝達関数から状態方程式への変換
b0 sm + b1 sm 1 + · · · + bm 1 s + bm
G(s) =
sn + a1 sn 1 + · · · + an 1 s + an
であるとする。
Y (s)
伝達関数 G(s) =
を
U (s)
W (s)
= n
U (s)
s + a 1 sn
1
1 + ··· + a
n
Y (s)
= b0 sm + b1 sm
W (s)
1
1s
+ · · · + bm
+ an
1s
+ bm
に分解する�
12
伝達関数から状態方程式への変換�
W (s)
= n
U (s)
s + a 1 sn
1
1 + ··· + a
n
1s
+ an
より
(sn + a1 sn 1 + · · · + an 1 s + an )W (s) = U (s)
逆ラプラス変換すると
dn w(t)
dn 1 w(t)
dw(t)
dtn + a1 dtn 1 + · · · + an 1 dt + an w(t) = u(t)
w(t) = L 1 [W (s)]
13
伝達関数から状態方程式への変換�
状態変数として
x1 (t) = w(t)
とする
i 1
d
w(t)
xi (t) =
(2 < i n)
i
1
dt
d di w(t)
xi (t) =
= xi+1 (t) (i = 1, 2, · · · , n 1)
i
dt
dt
d
dn w(t)
xn (t) =
dt
dtn
dn 1 w(t)
dw(t)
= a1
· · · an 1
an w(t) + u(t)
n
1
dt
dt
= a1 xn (t) · · · an 1 x2 (t) an x1 (t) + u(t)
14
伝達関数から状態方程式への変換�
状態方程式の形にまとめると
x1
0
1
0
···
0
0
1
···
d x2
..
..
..
..
..
=
.
.
.
.
.
dt
xn 1
0
0
0
···
xn
an
an 1
an 2 · · ·
すなわち
A=
0
1
0
0
..
.
0
0
..
.
0
1
..
.
0
an
an
1
an
···
···
..
.
···
2
···
0
x1
0
0
..
.
1
x2
..
.
xn 1
0
..
.
0
a1
+
xn
1
0
0
0
..
.
1
0
..
.
0
a1
B=
u(t)
1
15
伝達関数から状態方程式への変換�
出力方程式は
Y (s)
= b0 sm + b1 sm
W (s)
1
+ · · · + bm
1s
+ bm
より
Y (s) = (b0 sm + b1 sm 1 + · · · + bm 1 s + bm )W (s)
逆ラプラス変換して
dm w(t)
dm 1 w(t)
dw(t)
y(t)
+ b1
+ · · · + bm 1
+ bm w(t)
= b0
m
m
1
dt
dt
dt
= b0 xm+1 (t) + b1 xm (t) + · · · + bm 1 x2 (t) + bm x1 (t)
16
伝達関数から状態方程式への変換�
出力方程式の形にまとめると
y(t) = bm bm 1 · · · b1 b0 0
すなわち
C=
bm
bm
1
···
b1
b0
x1
···
0 ···
0
x2
..
.
xn 1
xn
0
17
伝達関数から状態方程式への変換�
まとめると、伝達関数が
b0 sm + b1 sm 1 + · · · + bm 1 s + bm
G(s) =
sn + a1 sn 1 + · · · + an 1 s + an
のときのシステムの状態変数表現の一例は
d
x(t) = Ax(t) + Bu(t)
dt
y(t) = Cx(t)
A=
0
1
0
0
..
.
0
0
..
.
0
1
..
.
0
an
C=
bm
bm
an
1
an
1
···
b1
···
···
..
.
···
2
b0
···
0
0
0
0
..
.
1
0
..
.
0
B=
a1
···
1
0
18
座標変換�
•  状態変数の選択は一意ではない
–  例:バネ・マス・ダンパ系などで、変数の単位
を変える
–  状態x(t)を正則行列により変換
T∈Rn×nで、正則である変換行列を考える
x(t) = T x(t)
x(t) = T
1
x(t)
19
座標変換�
状態 x(t) を時間微分して状態方程式を代入
dx(t)
1 dx(t)
=T
dt
dt
= T 1 (Ax(t) + Bu(t))
=T
1
AT x(t) + T
= Ax(t) + Bu(t)
ただし,A = T
1
1
Bu(t)
新しい状態方程式�
AT, B = T
1
B
20
座標変換�
•  出力は
y(t) = Cx(t) + Du(t) = CT x(t) + Du(t)
= Cx(t) + Du(t)
新しい出力方程式�
ただし,C = CT, D = D
システムの入力u(t)と出力y(t)は不変
⇒�状態変数が異なっても入出力は同じ
T を座標変換行列
21
状態方程式の解�
ẋ(t) = Ax(t) + Bu(t)
y(t)
= Cx(t) + Du(t)
状態方程式の解�
t
x(t) = eAt x(0) +
eA(t
)
Bu( )d
0
eAt:遷移行列�
e
At
1 2 2
= In + At + A t + · · · =
2!
k=0
1 k k
A t
k!
22
遷移行列の性質�
e
At
1 2 2
= In + At + A t + · · · =
2!
両辺をtで微分�
k=0
1 k k
A t
k!
d At
1 3 2
2
e = A + A t + A t ···
dt
2!
1 2 2
= A(I + At + A t + · · · )
2!
= AeAt
23
状態方程式の解の確認�
t
x(t) = eAt x(0) +
eA(t
)
Bu( )d
0
両辺をtで微分�
t
dx(t)
d At
d
= e x(0) +
dt
dt
dt
eA(t
)
Bu( )d
0
t
= AeAt x(0) + A
eA(t
)
Bu( )d + Bu(t)
eA(t
)
Bu( )d
0
t
= A eAt x(0) +
+ Bu(t)
0
= Ax(t) + Bu(t)
24
出力方程式の解�
ẋ(t) = Ax(t) + Bu(t)
y(t)
= Cx(t) + Du(t)
出力方程式に代入�
t
y(t) = CeAt x(0) +
CeA(t
)
Bu( )d + Du(t)
0
u(t)=0のときの応答
⇒�零入力応答
x(0)=0のときの応答
⇒�零状態応答
25
遷移行列の求め方�
Aが対角行列(n×n)の場合
A=
ならば�
0
..
.
k
A =
2
0
1
0
..
.
0
···
···
..
.
0
1
···
0
k
0
2
0
k
0
0
..
.
n
···
···
..
.
0
0
..
.
···
n
k
26
遷移行列の求め方�
1
e
At
=
k=0
1 k k
A t =
k!
1
k!
k=0
=
1t
0
..
.
0
t
0
1
k!
2
k k
t
2t
0
···
k
0
···
···
0
···
..
.
0
..
.
···
n
tk
k
0
···
..
.
0
..
.
1
k!
n
k k
t
0
···
..
.
···
0
2
···
0
0
e
0
..
.
0
1
k!
k k
0
..
.
0
=
e
1
k=0
k
0
..
.
e
nt
27
遷移行列の求め方�
Aが対角行列でない場合、対角化する
Λ=T−1AT�とする
�
TはAの固有ベクトルからなる行列�
�Λの対角成分はAの固有値
A=TΛT−1であるから�
�An = (TΛT−1)n=TΛnT−1 であるので
28
遷移行列の求め方�
e
At
1 2 2
= In + At + A t + · · ·
2!
1
1
1
1 2 2
= T In T + T T t +
T T
t + ···
2!
1 2 2
1
1
= T In T + T T t + T
t T 1 + ···
2!
1 2 2
= T In + t +
t + ··· T 1
2!
=T e
t
T
1
29
例題
状態方程式
0
ẋ(t) =
6
出力方程式�
y(t) =
x(0) =
u(t) = 1
1
5
x(t) +
0
1
u(t)
T
1
0
x(t)
0
零状態応答�
0
(t
0)
ステップ応答�
30
例題
0
A=
1
6
| I
5
の固有値、固有ベクトルを求める�
A| = ( + 5) + 6 =
2
+5 +6
= ( + 2)( + 3)
固有値は−2, −3。それぞれに対応する固有ベクトルを求めると�
1
2
T =
,
1
2
1
3
1
3
,
=
2
0
0
3
とすると
31
例題
A=T T
1
Ak = (T T
1
=
e
At
2
1 k
) =T
1
3
=
=
1 k k
A t =
k!
=T
k=0
1
( 2)
0
k=0
1
3
k
1
T
k!
( 2)k tk
0
k
0
0
1
3
1
k!
T
2
1
2
k=0
k
k
1
2
0
( 3)k
T
1
3
k
3
2
1
1
1 k
t
0
( 3)k tk
T
1
32
例題
e
At
1
k=0 k! (
=T
2t)k
0
0
1
3
2t
=
1
2
e
=
3e 2t 2e 3t
6e 2t + 6e 3t
0
eAt の各要素は固有値 e
1
k=0 k! (
3t)k
0
3
2
e
3t
T
1
1
1
e 2t e 3t
2e 2t + 3e 3t
1t
,e
2t
の線形和になる
33
例題
t
y(t) =
1
e
0
A(t
0
)
1
0
u( )d
t
=
e
2(t
)
e
3(t
)
u( )d
0
0
=
e
2s
e
3s
u(t
s)d
(s = t
)
t
1
1
2s 0
3s 0
=
e
e
t
t
2
3
1
1
2t
=
1 e
1 e 3t
2
3
1 1 2t 1 3t
=
e
+ e
出力 y(t) も e
6 2
3
1t
,e
2t
の線形和
34
安定性の条件�
システムの安定性は入力u(t)=0の場合を考える。
y(t) =
CeAt
x(0)と書けるので、�
lim y(t) = 0 であれば lim eAt = 0
t
⇔�
t
t
it
=0
⇔�
lim e
Re( i ) < 0
(i = 1, 2, · · · , n)
(i = 1, 2, · · · , n)
システムが漸近安定であるためには�
行列Aのすべての固有値の実部が負�
35
伝達関数の安定性条件との関係�
状態方程式で表された伝達関数は
1
G(s) = C (sI A) B + D
adj (sI A)
1
(sI A) =
det (sI A) なので�
Cadj (sI A) B
G(s) =
+D
det (sI A)
adj (sI A) は行列 sI A の余因子行列
伝達関数の分母の多項式det(sI – A)が重要
�����安定条件は特性方程式の解の実部がすべて負
36
伝達関数の安定性条件との関係�
1 ) (s
2 ) · · · (s
n)
det (sI A) = (s
⇒ G(s)の極と行列Aの固有値は一致
状態方程式表現でも、安定条件は一致
37