Page 1
S: Flexible Beam: Signal-based control
Reference:
Robust and Optimal Control, Spring 2015Instructor: Prof. Masayuki Fujita (S5-303B)
M. Fujita, F. Matsumura and K. Uchida, Experiments on the Disturbance Attenuation Control ofa Magnetic Suspension System, Proceedings of the 29th Conference on Decision and Control, Honolulu, Hawaii, December, 1990.
Page 2
2
図2 柔軟ビーム
Real Physical System
柔軟ビーム磁気浮上システム
Page 3
3
図3 柔軟ビーム磁気浮上系
Ideal Physical Model
Page 4
4
モデリングのための仮定
1. 磁気飽和,ヒステリシスがない.
2. うず電流は無視できる.
3. もれ磁束がない.
4. 鉄心の透磁率は無限大である.
5. 2 質量 からなる集中定数系として近似する.
6. インダクタンスは一定,速度起電力の項は無視.
,m M
Page 5
5
ビームの長さ
質量
質量
定常ギャップ
ビームのたわみ
固有振動数
電磁石抵抗
電磁石インダクタンス
パラメータ 記号 値 単位
l2m
M1X2X
nf
RL
8.38.536.100.53.125.4
5716.3
mkgkgmmmmHz
H
定常電流 I 885.0 A重力加速度 g 8.9 2m/s
m = 5.8 ;M = 10.36 ;X1 = 5e-3 ;X2 = 12.3e-3 ;R = 57 ;L = 3.16;I = 0.885gg = 9.8
MATLAB program
パラメータ
k = 0.0034;alpha = 2064;beta = 0.327
0034.0k2064
327.0
]A/Nm[ 22
]N/m[]Ns/m[
MATLAB program
Page 6
6
Ideal Mathematical Model
beammag ffmgdt
xdm 21
2
2
11
xXiIkfmag
))(2())(2( 122122 xxXdtdxxXfbeam
beamfMgdt
xdM 222
2
柔軟ビーム
電磁石
eRidtdiL
O
)(2 22 xX
1x
AB
22 xX
122 )(2 xxX
mv
Mv
Lv
Page 7
7
Reduced Mathematical Model
線形化
dtdx
dtdxxx
dtxdM 21
2122
2
4242
dtdx
dtdxi
IgmMxxg
XmM
dtxdm 21
211
21
2
2)2(22
1xy
出力
)(sPe
mv
Mv
0w
1x
Page 8
8
状態空間表現
uBxAx pppp
pp xCy
Tp ixxxxx ][: 2121 eu :
,
00000/4/2
/2/0100000100
hMMfd
cmmbaAp
j
Bp
0000
,00001pC
,21:1
g
XmM
ma ,2:
mb ,2: g
mImMc
,2:M
d ,4:
Mf
,:LRh
Lj 1:
TLMm vvvv ][:0
0vDg
0w
LM
mDp
/1000/1000/1000000
Page 9
9
,
0.180000031.1654.0797399
9.41654.0327.071270700100000100
pA
317.00000
pB
,00001gC
317.00000965.0000172.0000000
pD
Page 10
10
Ma = ( ( ( M+2*m )/X1 )*gg – alpha ) / m ;Mb = 2*alpha / m ;Mc = -( ( M+2*m ) / ( m*I ) )*gg ;Md = 2*alpha / M ;Mf = -4*alpha / M ;Mh = -R / L ;Mj = 1 / L ;
Ap = [ 0 0 1 0 0 ;0 0 0 1 0 ;
Ma Mb -beta/m 2*beta/m Mc ;Md Mf 2*beta/M -4*beta/M 0 ;0 0 0 0 Mh ]
Bp = [ 0; 0; 0; 0; Mj ]Cp = [ 1 0 0 0 0 ]
MATLAB program
Dp=[0 0 0;0 0 0;1/m 0 0;0 1/M 0;0 0 1/L];
Page 11
11
CO = ctrb(Ap,Bp);CO_rank = rank(CO)OB = obsv(Ap,Cp);OB_rank = rank(OB)
ppppppppp BABABABABCO 432
制御対象は,可制御,可観測である
5)(rank CO
5)(rank OB
432ppppppppp ACACACACCOB
可制御性,可観測性
MATLAB program
'
Page 12
12
伝達関数表現
ppp BAsICsP 1)()(
P_ss = ss ( Ap, Bp, Cp, Dp ) ;zpk(P_ss)P_pole = pole ( P_ss )P_zero = zero ( P_ss )
極
,1043.8
,1042.8
,1080.1 109.281086.6 2 j
零点
1082.21031.6 2 j
不安定極
5 次の線形時不変系(LTI システム)であり,不安定系・振動系
振動モード
MATLAB program
)9.280686.0)(0.18)(2.84)(3.84()2.280631.0(3.13)(
jssssjssP
P_sys = pck(Ap,Bp,Cp,Dp);
* MATLAB 6.5 用
Page 13
13
80
160
120
310 310110110
310 310110110
180
90
ゲイン
[dB
]位相
[deg
]
)(sP図6 プラント
0
30
30
0 100100
図7 プラント の極・零点)(sP
omega1=logspace(-3,3,150);bode ( P_ss, omega1 ) ;pzmap (P_ss)
MATLAB program
[rad/sec]
Page 14
14
[ 制御問題 ]Hある指定した に対して,閉ループ系を内部安定
とし,かつ
R
|||| zwTを満たすコントローラが存在するかどうか判定し,
存在する場合はそのようなコントローラを求めよ.
uBwBAxx 21 uDwDxCz 12111 uDwDxCy 22212
への閉ループ伝達関数 の ノルム:)(sTzw
状態空間表現
||)(|| sTzwzw H
)(sK
)(sGw z
yu
H 制御
図8 一般化プラント
Page 15
15
最悪状態設計問題
)()()(0 svsWsv v
)()()(0 swsWsw w
uz
zz
z g
2
1: pgg xH
xxxx
z
2
1
2
1
:
01000001000001000001
:gH
4
3
2
1
000000000000
:
)(sK
1)( pAsI
yu
1z
2z
w)(sG
pB pC
gH
pDvW
wW
v
0v
0w
Page 16
16
閉ループ伝達関数
,)(2
1
wv
szz
)()()()(
:)(22
11
ssss
swzvz
wzvz
)()(
:)(2
1
ss
svz
vzzv )())()()((
)(1 sWDsCsKBIs
CsKH
vpppp
g
)()(
:)(2
1
ss
swz
wzzw )())()()((
)( 1 sWsKsPIsKI
BsHw
pg
1)(:)( pAsIs
最悪状態設計問題
)()()()(
22
11
ssss
wzvz
wzvz
)(sK
1)( pAsI
yu
1z
2z
w)(sG
pB pC
gH
pDvW
wW
v
0v
0w
Page 17
17
,:
wv
d
dtddRuuQzzduJ TTg
Tg ))((),( 2
,0: TQ 0: 2 R
最悪状態設計問題の解釈
線形2次形式評価関数
0
最悪外乱に対する最適制御
u :評価関数を最小化
d :評価関数を最大化
Page 18
18
,111
)()(
swsW vv
周波数重み )(sWv
21 21
21
)(
vv
vv
fs
fs
ksw
,016.01 vf ,5.02 vf 31076.9 vk
310 310110110
80
40
40
0
vk12 vf
ゲイン
[dB
]
)(sWv図 周波数重み
)(sWv
22 vffv1=0.016;fv2=0.5;kv=9.76e3;Wv1_tf = tf([1],[1/(2*pi*fv1) 1])Wv2_tf = tf([1],[1/(2*pi*fv2) 1]);Wv_tf = kv* wv1_tf * wv2_tf;[Wv_tf_n,Wv_tf_d] = tfdata(Wv_tf,’v’);Wv_sys = nd2sys(Wv_tf_n,Wv_tf_d);Wv_k = [1 1 1]';bodemag(wv_tf,omega1)
MATLAB program
[rad/sec]
Page 19
19
周波数重み )(sWw
)(sWw
,01.01 wf
fw1=0.01; fw2=0.05; fw3=3.0; fw4=5.0; fw5=8.0; fw6=100.0; kw=5.21e-7;Ww1_tf = tf([1/(2*pi*fw1) 1],[1/(2*pi*fw3) 1]);Ww2_tf = tf([1/(2*pi*fw2) 1],[1/(2*pi*fw4) 1]);Ww3_tf = tf([1/(2*pi*fw6) 1],[1/(2*pi*fw5) 1]);Ww_tf = Ww1_tf * Ww2_tf * Ww3_tf * kw;[Wv_tf_n,Wv_tf_d] = tfdata(Wv_tf,’v’);Wv_sys = nd2sys(Wv_tf_n,Wv_tf_d);bodemag(Ww_tf,omega1)
621 21
21
21
wwww f
sfs
fsk
543 21
21
21
www fs
fs
fs
,05.02 wf ,0.33 wf
,0.54 wf ,0.85 wf 1006 wfMATLAB program
310 310110110
40
120
80
ゲイン
[dB
]
)(sWw図 周波数特性
)(sWw
[rad/sec]
Page 20
20
重み係数
4
3
2
1
000000000000
:
,0.661
,35.02
,91.03
,70.04
重み係数 5100.8 theta_1 = 66.0 ;
theta_2 = 0.35 ;theta_3 = 0.91 ;theta_4 = 0.70 ;Theta = diag ( [ theta_1; theta_2; theta_3; theta_4] ) ;rho = 8e-5 ;Hg = [1 0 0 0 0; 0 1 0 0 0; 0 0 1 0 0; 0 0 0 1 0];
MATLAB program
係数 gH
01000001000001000001
:gH
Page 21
21
一般化プラント
Psi_ss = ss(Ap,eye(5),eye(5),zeros(5));systemnames = 'Psi_ss Bp Cp Dp Wv_tf …
Wv_k Ww_tf Hg Theta rho';inputvar = '[ w; v; control ]';outputvar = '[ Theta; rho; -Cp-Ww_tf]';input_to_Psi_ss = '[ Bp + Dp ]';input_to_Bp = '[ control ]';input_to_Cp = '[ Psi_ss ]';input_to_Dp = '[ Wv_k ]';
MATLAB program
input_to_Wv_tf = '[ v ]';input_to_Wv_k = '[ Wv_tf ]';input_to_Ww_tf = '[ w ]';input_to_Hg = '[ Psi_ss ]';input_to_Theta = '[ Hg ]';input_to_rho = '[ control ]';G_ss = sysic;minfo(G_ss)
)(sK
1)( pAsI
yu
1z
2z
w)(sG
pB pC
gH
pDvW
wW
v
0v
0w
* MATLAB 7 用
Page 22
22
Psi_sys = pck(Ag,eye(5),eye(5),zeros(5));systemnames = 'Psi_sys Bp Cp Dp Wv_sys …
Wv_k Ww_sys Hg Theta rho';inputvar = '[ w; v; control ]';outputvar = '[ Theta; rho; -Cp-Ww_sys]';input_to_Psi_sys = '[ Bp + Dp ]';input_to_Bp = '[ control ]';input_to_Cp = '[ Psi_sys ]';input_to_Dp = '[ Wv_k ]';
MATLAB program
input_to_Wv_sys = '[ v ]';input_to_Wv_k = '[Wv_sys ]';input_to_Ww_tf = '[ w ]';input_to_Hg = '[ Psi_sys ]';input_to_Theta = '[ Hg ]';input_to_rho = '[ control ]';sysoutname = 'G_sys';cleanupsysic = 'yes';sysic;
Page 23
23
)007571.0)(314.3)(75.14)(3732()01.18)(85.18)(42.31)(27.50)(42.84(1072.3)(
10
ssss
ssssssK
)3.29412.0)(0.311.53)(479616()17.240.2)(9.28689.0(
jsjsjsjsjs
コントローラ )(sK
,3732極安定
,75.14
,007571.0,314.3
,479616 j
,0.311.53 j
3.29412.0 j310 310110110
270
90
ゲイン
[dB
]位相
[deg
]
)(sK図 コントローラ
180
310 31011011080
140
100
120
安定化
[rad/sec]
Page 24
24
MATLAB program
[K_ss,Cloop_ss,gam] = hinfsyn(G_ss,1,1,’gmax’,1,’gmin’,1);
[K_sys,Cloop_sys,gam] = hinfsyn(G,1,1,1.0,1.0,0.01)[K_A,K_B,K_C,K_D] = unpck(K_sys);K_ss = ss(K_A,K_B,K_C,K_D);
zpk(K_ss)[K_pole,K_zero] = pzmap(K_ss);bode(K_ss,omega1)
Page 25
25
開ループ伝達関数
310 310110110
ゲイン
[dB
]位相
[deg
]
図 開ループ伝達関数
310 310110110
40
40
0L
180
270
90
L_ss =P_ss*K_ss;bode(L_ss,omega1);[ Gm, Pm, Wgc, Wcp ] …
= margin( L_ss );Gm = 20*log10(Gm);
59.1 ]dB[ゲイン余裕
位相余裕 6.37 [deg]ゲイン交差周波数 9.25 sec]/rad[位相交差周波数 25.9 sec]/rad[
最悪状態設計問題
混合感度問題
MATLAB program
ノッチ
[rad/sec]
Page 26
26
040 20
0
20
20
0
515
図 ベクトル軌跡図 ベクトル軌跡
5
5
nyquist ( L_ss )
MATLAB program
Page 27
27
閉ループ系の特性
,1072.3 3,1071.21079.2 22 j
極
0
300
300
0 10004000図 閉ループ系の極・零点
0 14 2
0
30
30
T = feedback( L_ss,1 );close_p = pole( T )close_z = zero( T )pzmap( T )
図 閉ループ系の極・零点(拡大図)2000
,1028.6 2
,1044.8 1 ,1024.7 1,1089.21092.6 11 j
,1082.208.2 1 j ,13.852.3 j ,18.307.8 j,1003.5 ,1080.1 ,1014.3 ,1001.1 1 ,14.3 ,1089.1 1
MATLAB program
Page 28
28
310 310110110
図 閉ループ系の周波数特性
0
80
40
ゲイン
[dB
]
zv
,zv
zw
zw
MATLAB program
310 310110110
)(図 閉ループ系の周波数特性
1
9.0[rad/sec]
閉ループ系の特性
[rad/sec]
ゲイン
nom_perf_ss = Cloop_ss(1:5,1);nom_perf_sv = sigma(nom_perf_ss, omega1);
semilogx(omega1,nom_perf_sv)hold onsemilogx(omega1,rob_stab_sv)figuresigma(Cloop_ss,omega1);
[Cloop_A,Cloop_B,Cloop_C,Cloop_D] = unpck(Cloop_sys);
Cloop_ss = ss(Cloop_A,Cloop_B,Cloop_C,Cloop_D);
rob_stab_ss = Cloop_ss(1:5,2);Rob_stab_sv = sigma(rob_stab_ss,
omega1);
Page 29
29
ggg DsCsKBIssR 1))()()((:)(
外乱が状態変数に与える影響
低周波数帯域で小さい
)()(
:)(2
1
ss
svz
vzzv )())()()((
)(1 sWDsCsKBIs
CsKH
vgggg
g
)()()(
sWsRCsK
Hv
g
g
加法的な変動に対するロバスト安定性の指標1))()()((:)( sKsGIsKsQ
)()(
:)(2
1
ss
swz
wzzw )())()()((
)( 1 sWsKsGIsKI
BsHw
gg
)()()(
sWsQI
BsHw
gg
不確かさの大きい周波数帯域で小さい
Page 30
30
ロバスト安定性PKI
K
310 310110110
図 ロバスト安定性
60
160
80
120
100
140
最悪状態設計問題
混合感度問題
MATLAB program
[rad/sec]ゲイン
[dB
]
S_ss = feedback(1,L_ss);T_ss = S_ss * K_ss;bodemag(T_ss,omega1)
Page 31
31
実験結果
外乱応答
21 ]N[約 に相当する電圧 100 ]N[定常吸引力 約
時間 [s]
図 ステップ状外乱に対する時間応答最悪状態設計問題:変動なし
0 21 5
0.1
変位
[mm
]1x
3 40.1
0.0
0.0
変位
[mm
]2x
0.1
0.10 21 53 4
0 21 5
0.1
変位
[mm
]1x
3 40.1
0.0
時間 [s]
0.0
変位
[mm
]2x
0.1
0.10 21 53 4
図 ステップ状外乱に対する時間応答混合感度問題:変動なし
Page 32
32
図 ステップ状外乱に対する時間応答最悪状態設計問題: 63.9M
(1) ビーム中央部の質量 を から にする.M 36.10 ]kg[ 63.9 ]kg[
]kg[
時間 [s]
0 21 5
0.1
変位
[mm
]1x
3 40.1
0.0
0.0
変位
[mm
]2x
0.2
0.20 21 53 4
0 21 5
0.1
変位
[mm
]1x
3 40.1
0.0
時間 [s]
0.0
変位
[mm
]2x
0.2
0.20 21 53 4
図 ステップ状外乱に対する時間応答混合感度問題: 63.9M ]kg[
Page 33
33
(2) ビーム中央部の質量 を から にする.M 36.10 ]kg[ 06.8 ]kg[
図 ステップ状外乱に対する時間応答最悪状態設計問題: 06.8M ]kg[
時間 [s]
0.1
変位
[mm
]1x
0.1
0.0
0.10
0.10
0.0
変位
[mm
]2x
0 21 53 4
0 21 53 4
Page 34
34
(3) ビーム中央部の質量 を から にする.M 36.10 ]kg[ 51.11 ]kg[
図 ステップ状外乱に対する時間応答最悪状態設計問題: 51.11M ]kg[
時間 [s]
0.1
変位
[mm
]1x
0.1
0.0
0.2
0.2
0.0
変位
[mm
]2x
0 21 53 4
0 21 53 4
Page 35
35
(4) 電磁石側の質量 を から にする.m 80.5 ]kg[ 82.6 ]kg[
図 ステップ状外乱に対する時間応答最悪状態設計問題: 82.6m ]kg[
時間 [s]
0.1
変位
[mm
]1x
0.1
0.0
0.1
0.1
0.0
変位
[mm
]2x
0 21 53 4
0 21 53 4
Page 36
36
図 ステップ状外乱に対する時間応答最悪状態設計問題: 0.62R
(5) 電磁石部の抵抗 を から にする.R 0.57 ][ 0.62 ][
時間 [s]
0.1
変位
[mm
]1x
0.1
0.0
0.1
0.1
0.0
変位
[mm
]2x
0 21 53 4
0 21 53 4
][