MyEnigma

とあるエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

モデル予測制御(Model Predictive Control:MPC)の応用例

Model Predictive Control System Design and Implementation Using MATLAB® (Advances in Industrial Control)

Model Predictive Control System Design and Implementation Using MATLAB® (Advances in Industrial Control)

目次

はじめに

先日、モデル予測制御

(Model Predictive Control:MPC)の技術的概要を紹介しましたが、

myenigma.hatenablog.com

myenigma.hatenablog.com

今回は、自分用のメモとして、

MPCを使った実際の応用例について

まとめておきたいと思います。

 

応用例を見つけ次第、追記していきます。

 

Space Xのロケット自動着陸システム

最近、自動システム系で最もぶったまげたのが、

上記のSpace Xのロケット自動着陸システムです。

ロケットの再利用を目的としたものですが、

あまりにもすごすぎて、映画かなにかかと思いました。

 

ロケットを精密に(10m以下)目標の場所に到達させるのは、

下記の5つの原因から非常に難しいと言われています。

1 空気との摩擦による、熱の影響

2 自重が重いため、多少の加減速でも強い力がかかる

3 強い風などの外乱

4 大気圏突入時の通信の断絶

5 放射能による機器への影響

 

このような状況で、

上記の動画のような神業を実現するためには

どんな制御システムを使っているのかなと思っていました。

色々調べた所、確定ではないですが、

SpaceXのエンジニアによると、

以前紹介したCVXGENを使って、

凸最適をリアルタイムで解きながら、

制御しているようです。

CVXGENに関しては、

こちらを参照して下さい。

myenigma.hatenablog.com

 

戦闘機の制御

f:id:meison_amsl:20170617073729p:plain

 

下記のミネソタ大学の研究では、

F-16戦闘機の制御のために、MPCを使っています。

Receding horizon control of an F-16 aircraft: A comparative study - IEEE Xplore Document

 

戦闘機の進行方向の状態量(高度、ピッチ角、進行速度、進入角、ピッチレート)

を入力 (スラストとフラッグ角)で遷移させるモデルを作成し、

それを元に戦闘機のMPC制御のシミュレーションを実施しています。

 

MPCの制御により、大きな外乱を受けた時でも

安定して目標高度に追従できたようです。

 

ドローンの精密制御

 

MPCはドローンの精密制御にも使われています。

三次元のドローンのモデルから、

精密な位置や姿勢の制御にMPCが利用されているようです。

 

ミニチュアレーシングカーの制御

 

スイスのETHの研究では、

上記の動画のようにミニチュアのレーシングカーの制御を

MPCで実現しています。

Autonomous RC Racing

 

非線形のDynamic Bicycle Modelを元に、

事前に生成されたコースを正確に追従しています。

 

自動運転車両の経路追従システム

f:id:meison_amsl:20170508104040p:plain

 

Google Carの元になった、

Stanford大学の自動運転車両の2011年の最後の論文によると、

この車両の経路追従はMPCを使っているようです。

実際は、各コース点で非線形モデルを線形化した

LQRのようですが。

myenigma.hatenablog.com

すべりやすい環境における自動車のステアリング制御システム

上記の動画のように、

非常にすべりやすい環境における

自動車のレーンチェンジ用のステアリング制御システムなどにも、

MPCは使われているようです。

Predictive Active Steering Control for Autonomous Vehicle Systems - IEEE Xplore Document

 

参考資料

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

Model Predictive Control System Design and Implementation Using MATLAB® (Advances in Industrial Control)

Model Predictive Control System Design and Implementation Using MATLAB® (Advances in Industrial Control)