图片缩略图

モデル予測制御設計実装ワークフロー紹介,MPC实现的例子

version 4.0 (8.51 MB) by Toshinobu Shintai
当サンプルモデルは,モデル予測制御(MPC)の設計と実装のワークフローを分かりやすく紹介するための資料です。設計後,コード生成を行い,マイクロコントローラに実装するまでの流れを詳しくまとめています。

317下载

更新2021年9月29日

从GitHub

在GitHub上查看许可证

モデル予測制御設計実装ワークフロー紹介

目的

当サンプルモデルは,モデル予測制御(MPC)の設計と実装のワークフローを分かりやすく紹介するための資料である。

特にマイクロコントローラに実装するときの検討事項について詳しくまとめている。

必要なツールボックス

本モデルでは,以下のツールボックスを利用する。ただし,インストールしていなくても,モデルを実行せず閲覧するだけであれば可能である。また,例題によっては使わないツールボックスもある。

  • MATLAB®
  • 金宝app仿真软件®
  • 控制系统工具箱™
  • 模型预测控制工具箱
  • 金宝app仿真软件控制设计™
  • Simscape™,Simscape™多体™
  • 符号数学工具箱™
  • 导航工具箱™
  • 图像处理工具箱™,计算机视觉工具箱™
  • 自动驾驶工具箱™
  • MATLAB编码器™,Simu金宝applink编码器™,嵌入式编码器™

目次

1 .一般的な紹介資料

MPCについて初学者であり,以下の資料を見ていない場合は,本サンプルモデルより先に以下の資料に目を通しておくこと。

ビデオ

技術紹介記事

ホワイトペーパー

以下の資料はMPCの技術的な資料である。ある程度ツールの使い方を理解した後に読むこと。

2 .線形MPC

最初に線形MPCを使った例を紹介する。プラントモデルとして,単純な输出の不安定システムを用いる。以下のライブエディターを開いて作業を開始すること(以降,同様にライブエディターを開いて確認していく)。

線形MPCコントローラの設計と実装

3 .陽的MPC

線形近似された直流モーターモデルに対して陽的MPCを設計し,実装する。線形MPCと陽的MPCの比較を行う。

陽的MPCコントローラの設計と実装

4 .適応MPC

適応MPCの設計と実装について,4輪走行車両の制御を例に紹介する。プラントモデルとしては,等価二輪モデルを用いる。

適応MPCコントローラの設計と実装

5 .ゲインスケジュールMPC

適応MPCで用いたプラントモデルと設計手法を転用し,ゲインスケジュールMPCを設計,実装する。

ゲインスケジュールMPCコントローラの設計と実装

6 .非線形MPC

非線形MPCの設計と実装について,シンプルな車両モデルの運転制御を例に紹介する。

非線形MPCコントローラの設計と実装

7 .適応MPCに内点法ソルバー適用

適応MPCのソルバーとして,内点法を用いた場合の設計と実装について,4輪走行車両の制御を例に紹介する。プラントモデルとしては,等価二輪モデルを用いる。

適応MPCコントローラのQPソルバーの設定について検討

8 .マルチステージの非線形MPC

マルチステージの非線形MPCは,コスト関数を予測ホライズンの各ステップごとに設定できる。それにより,通常の非線形MPCよりも高速に計算できる。

マルチステージ非線形MPCの設計と実装

例1。適応モデル予測制御による倒立制御走行ロボットの倒立制御

適応MPCを用いて,倒立振子型の自律走行ロボットの制御を構築する。物理モデルをSimscape多体で構築し,それを制御する。

適応モデル予測制御による倒立制御走行ロボットの倒立制御

例2。モデル予測制御ならびにカメラ画像によるターゲット認識を利用した衝突回避

適応MPCを用いて,自律走行車両の制御を構築する。自动驾驶工具箱を用いた走行環境から障害物を認識し,回避しながら走行制御を行う。

モデル予測制御ならびにカメラ画像によるターゲット認識を利用した衝突回避

過去バージョン

過去のバージョンのファイル一式は,以下から得ることができる。ただし,過去のモデルには,古い時期に作成したサンプルしか含まれていないことに注意すること。

GitHubからクローンしている場合には,以下の該当バージョンに戻すことで,過去バージョンファイルを得ることができる。

R2021a:v3.3.1

R2020b:v2.2

R2020a:v1.1.1

引用作为

Toshinobu Shintai(2021)。モデル予測制御設計実装ワークフロー紹介,MPC实现的例子GitHub (https://github.com/mathworks/mpc_implementation_example/releases/tag/v4.0)。检索

MATLAB版本兼容性
创建R2021b
兼容R2020a到R2021b
平台的兼容性
窗户 macOS Linux
标签添加标签

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!

MPC_imple_PJ /自适应

MPC_imple_PJ /显式

MPC_imple_PJ / InvertedPendulumRobot

MPC_imple_PJ /线性

MPC_imple_PJ /多

MPC_imple_PJ /非线性

MPC_imple_PJ /常见

MPC_imple_PJ / obstacleAvoid

要查看或报告这个GitHub插件中的问题,请访问GitHub库
要查看或报告这个GitHub插件中的问题,请访问GitHub库