第 4 章 精密ステージシステムの モデル予測制御法
4.2.4 実験結果
今回比較対象として制御帯域をMPCに合わせて設計したPIDと比較した。実験条件はサ ンプリング周期0.1 ms, 制御帯域幅50 Hz, ステップ指令に対するオーバーシュートは10 % 以内とした。また設計パラメータはHp=2, HU,=1, Hw, =1, λ=0である。
実験にあたっては, (1) PID+ bang-bang制御による摩擦補償 (2) MPC+ bang-bang制御によ る摩擦補償を比較検討した。実験により得られたステップ応答波形を図4.4に示す。更にそ の拡大図を図4.5に示す。
図4.4からわかるように実機実験において, つまり精密ステージにおいてMPCとPIDと 比較すると MPC は目標値への追従が早く, 整定時間を目標値に対し±5%とすると PID:
0.0068sに比べMPC:0.0052 sと約23% ほど改善することができ, さらに位置決め完了時
間においてはPID:0.035sに比べMPC:0.026sと約26 %ほど改善することができた。また 図4.5よりオーバーシュート率も軽減できた。これらの結果を定量的に表4.1にまとめた。
次にロバスト性を検証するために精密ステージの上にステージの 50% 相当の重みであ る500gのおもりをのせて質量を変化させた時の実験を行った。実験条件はサンプリング周
期0.5 ms, 制御帯域幅50 Hz, ステップ指令に対するオーバーシュートは10 % 以内とした。
また設計パラメータはHp=2, HU,=1, Hw, =1, λ=0である。
実 験 に あ た っ て は, 上 記 と 同 様 に(1) PID+ bang-bang 制 御 に よ る 摩 擦 補 償 (2) MPC+
bang-bang制御による摩擦補償を比較検討した。実験により得られたステップ応答波形を図
4.6に示す。更にその拡大図を図4.7に示す。
図4.6, 図4.7より定量的まとめた結果を表4.2に示す。サンプリング周期0.1sの時と同
様に位置決め時間はPIDよりMPCの方が素早い位置決めを行っていることがわかる。また オーバーシュート率においてMPCは0である。またおもりのありなしの結果を見てみると PIDは特性劣化が大きいのに比べMPCの結果はほとんど変わらないため特性劣化が小さい ことがわかる。これによりMPCはロバスト性に優れていることが検証できた。
ここでMPCとPIDともにスティックスリップ現象の対策として3章で述べた静止摩擦相 当の電圧を印加するbang-bang補償をおこなっている。
表4.1 PID+ bang-bang制御とMPC+ bang-bang制御の結果の定量的な比較表
(サンプリング周期0.1ms)
表4.2 PID+ bang-bang制御とMPC+ bang-bang制御の結果の定量的な比較表
(サンプリング周期0.5ms)
0.0052 0.0262
MPC + + + + bangbang 制御 制御 制御 制御 1.6
0.0068 0.0351
PID + + + + bangbang 制御 制御 制御 制御 3.2
0.0052 0.0262
MPC + + + + bangbang 制御 制御 制御 制御 1.6
0.0068 0.0351
PID + + + + bangbang 制御 制御 制御 制御 3.2
オーバーシュート率 (%) 位置決め時間 (s) 整定時間( s )
0.0510 0.069
MPC + + + + bangbang 制御 制御 制御 制御 0
( (
( ( 通常 通常 通常お もりなし 通常 お もりなし お もりなし お もりなし ) ) ) )
0.0430 0.504
PID + + + + bangbang 制御 制御 制御 制御 1.4
( ( (
( 500g の の の の 錘 錘 錘 錘あり あり あり あり) ) ) )
0.0503 0.074
MPC + + + + bangbang 制御 制御 制御 制御 0
( ( ( ( 500g の の の の錘 錘 錘 錘 あり あり あり あり) ) ) )
0.0435 0.375
PID + + + + bangbang 制御 制御 制御 制御 2
( ( (
( 通常 通常 通常お もりなし 通常 お もりなし お もりなし お もりなし ) ) ) )
0.0510 0.069
MPC + + + + bangbang 制御 制御 制御 制御 0
( (
( ( 通常 通常 通常お もりなし 通常 お もりなし お もりなし お もりなし ) ) ) )
0.0430 0.504
PID + + + + bangbang 制御 制御 制御 制御 1.4
( ( (
( 500g の の の の 錘 錘 錘 錘あり あり あり あり) ) ) )
0.0503 0.074
MPC + + + + bangbang 制御 制御 制御 制御 0
( ( ( ( 500g の の の の錘 錘 錘 錘 あり あり あり あり) ) ) )
0.0435 0.375
PID + + + + bangbang 制御 制御 制御 制御 2
( ( (
( 通常 通常 通常お もりなし 通常 お もりなし お もりなし お もりなし ) ) ) )
オーバーシュート率 (%) 位置決め時間 (s) 整定時間( s )
(a)出力特性
(b)入力特性
図4.4 実機におけるMPCとPID比較結果(ステップ応答波形)
0 0.01 0.02 0.03 0.04 0.05 0.06
Position [mm]
0 0.01 0.02 0.03 0.04 0.05
Time [s]
0 0.01 0.02 0.03 0.04 0.05 0.06
Position [mm]
0 0.01 0.02 0.03 0.04 0.05
Time [s]
-30 -20 -10 0 10 20 30
Control input [V]
0 0.01 0.02 0.03 0.04 0.05
Time [s]
-30 -20 -10 0 10 20 30
Control input [V]
0 0.01 0.02 0.03 0.04 0.05
Time [s]
:PID+bang-bang :MPC+bang-bang :PID+bang-bang :MPC+bang-bang
:PID+bang-bang
:MPC+bang-bang
:PID+bang-bang
:MPC+bang-bang
(a)出力特性
(b)入力特性
図4.5 実機におけるMPCとPID比較結果(ステップ応答波形)
拡大図
0 0.01 0.02 0.03 0.04
-20 -15 -10 -5 0 5 10 15 20
Time [s]
Control input [V]
0 0.01 0.02 0.03 0.04
-20 -15 -10 -5 0 5 10 15 20
Time [s]
Control input [V]
0.046 0.048 0.05 0.052 0.054
Position [mm]
0 0.01 0.02 0.03 0.04
Time [s]
0.046 0.048 0.05 0.052 0.054
Position [mm]
0 0.01 0.02 0.03 0.04
Time [s]
:PID+bang-bang
:MPC+bang-bang
:PID+bang-bang
:MPC+bang-bang
:PID+bang-bang
:MPC+bang-bang
:PID+bang-bang
:MPC+bang-bang
(a)出力特性
(b)出力特性(拡大図)
図4.6 実機におけるMPCとPID比較結果(ステップ応答波形)
:PID+bang-bang :MPC+bang-bang :PID+bang-bang :MPC+bang-bang
0 0.2 0.4 0.6 0.8 1
Time [s]
0 0.01 0.02 0.03 0.04 0.05 0.06
Position [mm]
0 0.2 0.4 0.6 0.8 1
Time [s]
0 0.01 0.02 0.03 0.04 0.05 0.06
Position [mm]
0 0.1 0.2 0.3 0.4 0.5 0.6
0.046 0.048 0.05 0.052
Time [s]
Position [mm]
0 0.1 0.2 0.3 0.4 0.5 0.6
0.046 0.048 0.05 0.052
Time [s]
Position [mm]
:PID+bang-bang(( おもりなし((おもりなしおもりなし )おもりなし))) :PID+bang-bang(( おもりあり((おもりありおもりあり)おもりあり))) :MPC+bang-bang(( おもりなし((おもりなしおもりなし)おもりなし))) :MPC+bang-bang(( おもりあり((おもりありおもりあり)おもりあり))) :PID+bang-bang(( おもりなし((おもりなしおもりなし )おもりなし))) :PID+bang-bang(( おもりあり((おもりありおもりあり)おもりあり))) :MPC+bang-bang(( おもりなし((おもりなしおもりなし)おもりなし))) :MPC+bang-bang(( おもりあり((おもりありおもりあり)おもりあり)))
:PID+bang-bang(( おもりなし((おもりなしおもりなしおもりなし )))) :PID+bang-bang(( おもりあり((おもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :PID+bang-bang(( おもりなし((おもりなしおもりなしおもりなし )))) :PID+bang-bang(( おもりあり((おもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり))))
(a)入力特性
(b)入力特性(拡大図)
図4.7 実機におけるMPCとPID比較結果(ステップ応答波形)
0 0.2 0.4 0.6 0.8 1
-2 0 2 4 6 8 10
Time [s]
Control input [V]
0 0.2 0.4 0.6 0.8 1
-2 0 2 4 6 8 10
Time [s]
Control input [V]
-2 -1 0 1 2 3
Control input [V]
0 0.1 0.2 0.3 0.4 0.5 0.6
Time [s]
-2 -1 0 1 2 3
Control input [V]
0 0.1 0.2 0.3 0.4 0.5 0.6
Time [s]
:PID+bang-bang(((( おもりなしおもりなしおもりなしおもりなし )))) :PID+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :PID+bang-bang(((( おもりなしおもりなしおもりなしおもりなし )))) :PID+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり))))
:PID+bang-bang(((( おもりなしおもりなしおもりなしおもりなし )))) :PID+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :PID+bang-bang(((( おもりなしおもりなしおもりなしおもりなし )))) :PID+bang-bang(((( おもりありおもりありおもりありおもりあり)))) :MPC+bang-bang(((( おもりなしおもりなしおもりなしおもりなし)))) :MPC+bang-bang(((( おもりありおもりありおもりありおもりあり))))