Upload
dodien
View
226
Download
6
Embed Size (px)
Citation preview
現代制御Modern Control Theory
• 制御理論– 古典制御
• 線形システムの入出力に注目• 入力信号u(t)、出力信号y(t)をラプラス変換したU(s), Y(s)の比である伝達関数G(s) = Y(s)/U(s)でシステムを表現
– 現代制御• 入出力だけではなく、システムの状態を表現する状態変数を導入
• システムの特性を状態変数の連立の1次微分方程式で表現 1
現代制御Modern Control Theory
• 制御対象の入力と出力の関係を時間に関する動的な特性としてとらえる
• 制御対象を状態方程式と呼ばれる1階の常微分方程式で表現する
• 状態方程式における変数をベクトルで、定数係数を行列で扱うことで、次数の高い制御対象でも統一的に扱うことができる
• 行列を用いた代数計算を行うことで、より数学的に制御対象の解析・制御器の設計を行うことができる 2
状態方程式State Equation
• 制御対象の内部状態(制御対象の振る舞いを表現できるもの)を表す時間変数x(t)を状態として新たに導入.
• 制御対象の入力u(t)と出力y(t)の関係を1階の常微分方程式と出力方程式のペアで実現
3
• ダンパ・質量・ばね系バネとダンパでつながれた物体の運動方程式
ラプラス変換をする
伝達関数
u(t)
y(t)
u(t) = Md2y(t)
dt2+ B
dy(t)
dt+ Ky(t)
U(s) = Ms2Y (s) + BsY (s) + KY (s)
= (Ms2 + Bs + K)Y (s)
G(s) =Y (s)
U(s)
=1
Ms2 + Bs + K
古典制御でのシステムの表現Representation of System in Frequency Domain
伝達関数の極などの解析によって制御システムを設計 4
現代制御でのシステムの表現Representation of System in Modern Control Theory
• ダンパ・質量・ばね系
状態方程式 出力方程式
u(t)
y(t)
u(t) = Md2y(t)
dt2+ B
dy(t)
dt+ Ky(t)
状態変数として x1(t) = y(t)と x2(t) = y(t)
y(t) =�
1 0� �
x1(t)
x2(t)
�
d
dtx1(t) = y(t) = x2(t)
d
dtx2(t) = y(t) = � B
My(t) � K
My(t) +
1
Mu(t)
= � K
Mx1(t) � B
Mx2(t) +
1
Mu(t)
d
dt
�x1(t)
x2(t)
�=
�0 1
� KM � B
M
��x1(t)
x2(t)
�+
�01M
�u(t)
d
dtx(t) Ax(t) Bu(t)= + y(t) Cx(t)= 5
状態変数表現State Variable Representation
システムをn階の微分方程式ではなく、連立1階常微分方程式で記述し、微分方程式を一般的に求める
6
x:状態変数(n次元ベクトル)u:入力(m次元ベクトル)y:出力(l次元ベクトル)A:n×n行列B:n×m行列C: l×n行列D: l×m行列
d
dtx(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
2質量系の状態方程式State Equation of Two Mass System
• 2物体がばねでつながれた2質量系
• 運動方程式M1
d2p1(t)
dt2� K (p2(t) � p1(t)) = f1(t)
M2d2p2(t)
dt2+ K (p2(t) � p1(t)) = f2(t) 7
2質量系の状態方程式State Equation of Two Mass System
• 2物体がばねでつながれた2質量系
• 状態変数
x(t) =
�
�����
p1(t)
p2(t)dp1(t)
dtdp2(t)
dt
�
�����8
2質量系の状態方程式State Equation of Two Mass System
• 2物体がばねでつながれた2質量系
• 状態方程式
dx(t)
dt=
d
dt
�
�����
p1(t)
p2(t)dp1(t)
dtdp2(t)
dt
�
�����=
�
�����
0 0 1 0
0 0 0 1
� KM1
KM1
0 0KM2
� KM2
0 0
�
�����
�
�����
p1(t)
p2(t)dp1(t)
dtdp2(t)
dt
�
�����+
�
�����
0 0
0 01
M10
0 1M2
�
�����
�f1(t)
f2(t)
�
Ax(t) Bu(t)
9
• 2物体がばねでつながれた2質量系
• 出力方程式 Cx(t)
y(t) =
�p1(t)
p2(t)
�=
�1 0 0 0
0 1 0 0
��
�����
p1(t)
p2(t)dp1(t)
dtdp2(t)
dt
�
�����
2質量系の状態方程式State Equation of Two Mass System
10
状態方程式から伝達関数への変換Transformation from State Equation to Transfer Function
11
d
dtx(t) = Ax(t) + Bu(t)
sX(s) = AX(s) + BU(s)
(sI � A) X(s) = BU(s)
X(s) = (sI � A)�1 BU(s)
Y (s) = CX(s) + DU(s)
Y (s) = CX(s) + DU(s)
= C (sI � A)�1 BU(s) + DU(s)
=�
C (sI � A)�1 B + D�
U(s)
ラプラス変換
y(t) = Cx(t) + Du(t)
代入
伝達関数
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
であるとする。
に分解する
伝達関数 G(s) =Y (s)
U(s)を
12
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
より
逆ラプラス変換すると
13
�L�1[W (s)] = w(t)
�
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
状態変数として
とするx1(t) = w(t)
xi(t) =di�1w(t)
dti�1(2 < i � n)
d
dtxi(t) =
diw(t)
dti= xi+1(t) (i = 1, 2, · · · , n � 1)
14
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
状態方程式の形にまとめると
すなわち
15
B =
�
��������
0
0...
0
1
�
��������
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
出力方程式は
より
逆ラプラス変換して
16
出力方程式の形にまとめると
すなわち
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
17
まとめると、伝達関数が
のときのシステムの状態変数表現の一例は
B =
�
��������
0
0...
0
1
�
��������
d
dtx(t) = Ax(t) + Bu(t)
y(t) = Cx(t)
伝達関数から状態方程式への変換Transformation from Transfer Function to State Equation
18
座標変換Coordinate Transformation
• 状態変数の選択は一意ではない– 例:バネ・マス・ダンパ系などで、変数の単位を変える
– 状態x(t)を正則行列により変換
T∈Rn×nで、正則である変換行列を考える
x(t) = Tx(t) x(t) = T�1x(t)
19
dx(t)
dt= T�1 dx(t)
dt
= T�1 (Ax(t) + Bu(t))
= T�1ATx(t) + T�1Bu(t)
= Ax(t) + Bu(t) 新しい状態方程式
座標変換Coordinate Transformation
20
ただし,A = T�1AT, B = T�1B
状態 x(t)を時間微分して状態方程式を代入
• 出力は
システムの入力u(t)と出力y(t)は不変⇒ 状態変数が異なっても入出力は同じ
Tを座標変換行列21
新しい出力方程式
ただし,C = CT, D = D
座標変換Coordinate Transformation
y(t) = Cx(t) + Du(t) = CTx(t) + Du(t)
= Cx(t) + Du(t)
状態方程式の解
x(t) = eAtx(0) +
� t
0eA(t��)Bu(�)d�
eAt:遷移行列
状態方程式の解Solution of State Equation
�x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
eAt = In + At +1
2!A2t2 + · · · =
��
k=0
1
k!Aktk
22
d
dteAt = A + A2t +
1
2!A3t2 · · ·
= A(I + At +1
2!A2t2 + · · · )
= AeAt
遷移行列の性質Characteristics of Transition Matrix
eAt = In + At +1
2!A2t2 + · · · =
��
k=0
1
k!Aktk
両辺をtで微分
23
状態方程式の解の確認Solution of State Equation
x(t) = eAtx(0) +
� t
0eA(t��)Bu(�)d�
両辺をtで微分
dx(t)
dt=
d
dteAtx(0) +
d
dt
� t
0eA(t��)Bu(�)d�
= AeAtx(0) + A
� t
0eA(t��)Bu(�)d� + Bu(t)
= A
�eAtx(0) +
� t
0eA(t��)Bu(�)d�
�+ Bu(t)
= Ax(t) + Bu(t)
24
出力方程式の解Solution of Output Equation
�x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
出力方程式に代入
y(t) = CeAtx(0) +
� t
0CeA(t��)Bu(�)d� + Du(t)
u(t)=0のときの応答⇒ 零入力応答
x(0)=0のときの応答⇒ 零状態応答
25
遷移行列の求め方Solution of Transition Matrix
Aが対角行列(n×n)の場合
ならば
A =
�
����
�1 0 · · · 00 �2 · · · 0...
. . ....
0 0 · · · �n
�
����
Ak =
�
����
�1k 0 · · · 0
0 �2k · · · 0
.... . .
...0 0 · · · �n
k
�
����
26
eAt =��
k=0
1
k!Aktk =
��
k=0
1
k!
�
�����
�1k 0 · · · 0
0 �2k · · · 0
.... . .
...
0 0 · · · �nk
�
�����tk
=��
k=0
�
�����
1k!�1
ktk 0 · · · 0
0 1k!�2
ktk · · · 0...
. . ....
0 0 · · · 1k!�n
ktk
�
�����
=
�
�����
e�1t 0 · · · 0
0 e�2t · · · 0...
. . ....
0 0 · · · e�nt
�
�����
遷移行列の求め方Solution of Transition Matrix
27
遷移行列の求め方Solution of Transition Matrix
Aが対角行列でない場合、対角化するL=T−1AT とする
TはAの固有ベクトルからなる行列Lの対角成分はAの固有値
A=TLT−1であるからAn = (TLT−1)n=TLnT−1
であるので
28
遷移行列の求め方Solution of Transition Matrix
eAt = In + At +1
2!A2t2 + · · ·
= TInT�1 + T�T�1t +1
2!
�T�T�1
�2t2 + · · ·
= TInT�1 + T�T�1t + T
�1
2!�2t2
�T�1 + · · ·
= T
�In + �t +
1
2!�2t2 + · · ·
�T�1
= T�e�t
�T�1
29
状態方程式
出力方程式
例題Example
零状態応答
u(t) = 1 (t � 0) ステップ応答
y(t) =
�1
0
�T
x(t)
x(0) =
�0
0
�
x(t) =
�0 1
�6 �5
�x(t) +
�0
1
�u(t)
30
例題Example
|�I � A| = �(� + 5) + 6 = �2 + 5� + 6
= (� + 2)(� + 3)
A =
�0 1
�6 �5
�
の固有値、固有ベクトルを求める
T =
�1 1
�2 �3
�, � =
��2 0
0 �3
�とすると
�1
�2
�,
�1
�3
�固有値は−2, −3。それぞれに対応する固有ベクトルを求めると
31
例題Example
32
例題Example
eAt = T
� ��k=0
1k! (�2t)k 0
0��
k=01k! (�3t)k
�T�1
=
�1 1
�2 �3
��e�2t 0
0 e�3t
��3 1
�2 �1
�
=
�3e�2t � 2e�3t e�2t � e�3t
�6e�2t + 6e�3t �2e�2t + 3e�3t
�
eAt の各要素は固有値 e�1t, e�2t の線形和になる
33
例題Example
出力 y(t)も e�1t, e�2t の線形和34
安定性の条件Stability Condition
システムの安定性は入力u(t)=0の場合を考える。と書けるので、
35
y(t) = CeAtx(0)
limt��
y(t) = 0 であれば limt��
eAt = 0
limt��
e�it = 0 (i = 1, 2, · · · , n)
⇔⇔
Re(�i) < 0 (i = 1, 2, · · · , n)
システムが漸近安定であるためには行列Aのすべての固有値の実部が負
伝達関数の安定性条件との関係Relation to Stability Condition of Transfer Function
状態方程式で表された伝達関数は
伝達関数の分母の多項式det(sI – A)が重要安定条件は特性方程式の解の実部がすべて負
36
G(s) = C (sI � A)�1 B + D
(sI � A)�1 =adj (sI � A)
det (sI � A) なので
G(s) =Cadj (sI � A) B
det (sI � A)+ D
adj (sI � A) は行列 sI � Aの余因子行列
伝達関数の安定性条件との関係Relation to Stability Condition of Transfer Function
⇒ G(s)の極と行列Aの固有値は一致
状態方程式表現でも、安定条件は一致
37
det (sI � A) = (s � �1) (s � �2) · · · (s � �n)
可制御Controllability
任意の初期時刻t0に対して状態がx0にあるとき、有限時間t1において任意の状態x1にシステムをもっていくような入力u (t)が存在すること。行列A,Bによって決定
の行列がrankV = nであれば可制御
この条件が満たされない場合、状態変数の一部が入力u(t)に影響されない
V =�
B AB A2B · · · An�1B�
38
例題Example
以下のシステムの可制御性について調べよ
39
d
dt
�x1(t)
x2(t)
�=
�1 0
0 1
� �x1(t)
x2(t)
�+
�1
1
�u(t)
制御工学例題10-6
例題Example
状態x(t)は2次元なので
より
rank V = 1より、可制御ではない
40
V =�
B AB�
=
�1 11 1
�
B =
�11
�
AB =
�1 00 1
� �11
�=
�11
�
例題Example
Vの中から線形独立な列ベクトルv1を選ぶ
T=[v1 v2]が正則になるようにv2を選ぶ
このTにより座標変換を行う
41
V =
�1 11 1
�より v1 =
�11
�
v2 =
�01
�とすれば T =
�1 01 1
�T�1 =
�1 0
�1 1
�
例題Example
座標変換後のシステムは
42
A = T�1AT =
�1 0
�1 1
� �1 00 1
� �1 01 1
�=
�1 00 1
�
B = T�1B =
�1 0
�1 1
� �11
�=
�10
�
d
dt
�x1(t)
x2(t)
�=
�1 0
0 1
� �x1(t)
x2(t)
�+
�1
0
�u(t)
状態 x2(t)は入力 u(t)の影響を受けていない
�ddtx1(t) = x1(t) + u(t)ddtx2(t) = x2(t)
可観測Observability
入力が既知であるシステムにおいて、初期時刻t0から任意の時刻t1までの出力y(t)を観測することによって初期状態x0の状態が一意に決定できるとき、可観測
x0がわかれば任意の時刻の状態を知ることができる
43
可観測の条件
条件を満たさない場合、状態変数x(t)の一部が出力y(t)に影響を及ぼさない
についてrank N = nの場合可観測NT =
�
������
CCACA2
...CAn�1
�
������
可観測Observability
44
以下のシステムの可観測性について調べよ
例題Example
45
d
dt
�x1(t)
x2(t)
�=
�1 0
0 1
� �x1(t)
x2(t)
�+
�1
1
�u(t)
y(t) =�
1 1� �
x1(t)
x2(t)
�
制御工学例題10-7
例題Example
状態x(t)は2次元なので
より
rank N = 1より、可観測ではない
46
C =�
1 1�
CA =�
1 1� �
1 00 1
�=
�1 1
�
NT =
�C
CA
�=
�1 11 1
�
例題Example
NTの中から線形独立な行ベクトルw1Tを選ぶ
このW−1=Tにより座標変換を行う
47
w1T =
�1 1
�
w2T =
�0 1
� とすればW =
�1 10 1
�W�1 =
�1 �10 1
�
W =
�w1
T
w2T
�が正則になるようにw2 を選ぶ
例題Example
座標変換後のシステムはd
dt
�x1(t)
x2(t)
�=
�1 0
0 1
� �x1(t)
x2(t)
�+
�2
1
�u(t)
y(t) =�
1 0� �
x1(t)
x2(t)
�= x1(t)
48出力 y(t)は状態 x2(t)の影響を受けていない
A = T�1AT =
�1 10 1
� �1 00 1
� �1 �10 1
�=
�1 00 1
�
B = T�1B =
�1 10 1
� �11
�=
�21
�
C = CT =�
1 1� �
1 �10 1
�=
�1 0
�
任意の時刻において、状態x(t)の値が制御に利用可能であるとする。状態変数にある適当なゲインFを乗じて制御入力を決定
A+BFの固有値を望ましい値になるようにFを決定する→極配置法
状態フィードバック制御State Feedback Control
49
u(t) = Fx(t)
x(t) = Ax(t) + Bu(t) = (A + BF )x(t)
以下の状態方程式で表されるシステム
に対し、システムの極を−1, −2とする状態フィードバック行列Fを求めよ
例題Example
d
dt
�x1(t)
x2(t)
�=
�0 1
1 1
� �x1(t)
x2(t)
�+
�0
1
�u(t)
50制御工学例題10-8
状態フィードバック入力を
とすると
例題Example
u(t) = Fx(t) =�
f1 f2
�x(t)
d
dt
�x1(t)
x2(t)
�=
�0 1
1 1
��x1(t)
x2(t)
�+
�0
1
� �f1 f2
� �x1(t)
x2(t)
�
=
�0 1
1 1
��x1(t)
x2(t)
�+
�0 0
f1 f2
��x1(t)
x2(t)
�
=
�0 1
1 + f1 1 + f2
��x1(t)
x2(t)
�
= (A + BF )x(t) 51
状態フィードバックされた閉ループシステムの特性多項式は
例題Example
det (sI � (A + BF )) = det
��s 0
0 s
��
�0 1
1 + f1 1 + f2
��
= det
�s �1
�(1 + f1) s � (1 + f2)
�
= s2 � (1 + f2)s � (1 + f1)
= (s + 1)(s + 2)
= s2 + 3s + 2
52
係数を比較して
例題Example
� (1 + f2) = 3
� (1 + f1) = 2
f1 = �3
f2 = �4
53
極配置問題Pole Assignment Problem
1入力で可制御なシステムであれば、状態フィードバックにより望ましい極に一致させ、安定化することが可能
– 導出は省略
54
最適制御Optimal Control
• 1入力で可制御なシステムについては、望ましいシステムの極が与えられれば状態フィードバック行列Fを求めることができる
• 多入力であるシステムの場合、状態フィードバック行列が一意に決まらない(不良設定問題)
55
以下の状態方程式で表される2入力システム
状態フィードバックが
であるとき
例Example
d
dt
�x1(t)
x2(t)
�=
�1 0
0 1
� �x1(t)
x2(t)
�+
�1 0
0 1
��u1(t)
u2(t)
�
�u1(t)
u2(t)
�=
��2 0
0 �3
��x1(t)
x2(t)
�
det (sI � (A + BF )) = det
��s 0
0 s
��
��1 0
0 1
�+
��2 0
0 �3
���
= det
��s + 1 0
0 s + 2
��
= s2 + 3s + 2 56
状態フィードバックが
であるとき
例Example
�u1(t)
u2(t)
�=
��3 0
0 �2
��x1(t)
x2(t)
�
det (sI � (A + BF )) = det
��s 0
0 s
��
��1 0
0 1
�+
��3 0
0 �2
���
= det
��s + 2 0
0 s + 1
��
= s2 + 3s + 2
57
状態フィードバックが
であるとき
状態フィードバックが異なるが、全て同じ特性方程式になる
例Example
�u1(t)
u2(t)
�=
��1 1
�2 �4
��x1(t)
x2(t)
�
det (sI � (A + BF )) = det
��s 0
0 s
��
��1 0
0 1
�+
��1 1
�2 �4
���
= det
��s �1
2 s + 3
��
= s2 + 3s + 2
58
最適制御Optimal Control
• 解を一意にするため、与えられた制御目標に加えて、ある評価関数を最小にする制御入力を求める
• 通常は制御入力に関する評価関数を加える
• 特に、制御量を一定に保つ定値制御が目的である場合を最適レギュレータ問題
Q, Rは適当な次元の定数行列、Qは半正定な対称行列、Rは正定な対称行列
J =1
2
� �
0
�x(t)T Qx(t) + u(t)T Ru(t)
�dt
59
リカッチ(Riccati)方程式
この式を満たすn×nの対称行列Pが存在し、さらに
AT P + PA � PBR�1BT P + Q = 0
F = R�1BT P とおくとu(t) = Fx(t) を用いた閉ループ系x(t) = (A + BF )x(t) が安定になるならば、この制御ゲイン F を使った閉ループ制御系が評価関数を最小にする
最適レギュレータ問題の解Solution of Optimal Regulator
Pは数値的に解く60