Model Predictive Control Toolbox™ には、モデル予測制御 (MPC) を開発するための関数、アプリ、Simulink® ブロック、および参照例が用意されています。線形の問題に対して、このツールボックスでは、陰的、陽的、適応、およびゲインスケジュール MPC の設計をサポートしています。非線形の問題に対しては、シングルステージ、およびマルチステージの非線形 MPC を実装できます。このツールボックスには、展開可能な最適化のソルバーが付属しています。また、カスタムのソルバーを使用することもできます。
閉ループのシミュレーションを実行することにより、MATLAB® および Simulink でコントローラーの性能を評価できます。自動運転では、用意されている MISRA C® および ISO 26262 準拠のブロックと例も使用でき、車線逸脱防止支援、パスプランニング、パス追従、およびアダプティブ クルーズ コントロールのアプリケーション開発をすぐに始めることができます。
このツールボックスは、C および CUDA® コード、IEC 61131-3 ストラクチャード テキストの生成をサポートしています。
線形 MPC 設計
二次計画法 (QP) の問題を解く陰的、ゲインスケジューリング、および適応 MPC コントローラーを設計します。陰的設計から陽的 MPC コントローラーを生成します。混合整数 QP の問題には、離散制御集合 MPC を使用します。
ドキュメンテーション | 例
MPC デザイナーアプリ
MPC デザイナーアプリを使用して、陰的 MPC コントローラーの対話的な設計、Simulink Control Design™ による Simulink モデルの線形化、シミュレーション シナリオを使用したコントローラー性能の検証、および複数の設計での応答の比較を行います。
ドキュメンテーション | 例
非線形 MPC 設計
Optimization Toolbox™ を使用する非線形かつ経済的 MPC コントローラーを設計して、非線形計画法 (NLP) の問題を解きます。最適化計画およびフィードバック制御には、シングルステージまたはマルチステージの定式化を使用します。
ドキュメンテーション | 例
MPC 最適化ソルバー
組み込みの有効制約法、内点法、および混合整数 QP ソルバーから選択するか、Optimization Toolbox から NLP ソルバー を使用します。あるいは、FORCESPRO ソルバー (Embotech 社) を使用するか、独自のカスタムソルバーを使用します。
予測モデルの指定
Control System Toolbox™ または Symbolic Math Toolbox™ を使用し、Simulink Control Design による Simulink モデルの線形化、または System Identification Toolbox™ および Deep Learning Toolbox™ による測定データを介して、予測モデルを解析的に指定します。
状態の推定および設計レビュー
ツールボックスにより提供される状態推定器、またはカスタムの状態推定器を用いて、測定された出力からコントローラーの状態を推定します。組み込みの診断関数を使用して、線形 MPC 設計における安定性とロバスト性の潜在的な問題を検出します。
ドキュメンテーション | 例
閉ループのシミュレーション
Simulink で ISO 26262 および MISRA C に準拠した Simulink ブロックを使用したり、MATLAB でコマンド ライン関数を使用したりして、閉ループのシミュレーションを実行することにより、コントローラーの性能を評価します。Simulink Test™ で複数のシナリオのテストを自動化します。
コード生成
MATLAB および Simulink で設計された MPC コントローラーから、量産向け C/C++ コードおよび CUDA コード、または IEC 61131-3 ストラクチャード テキストを自動生成します。ECU、GPU、PLC などさまざまなターゲットにコードを展開します。
ドキュメンテーション | 例
製品リソース:
「モデルベースデザインを使用することで、当社の油圧エンジニアは、組み込みエンジニアを介さずにコントローラーの設計および実装を完了できるようになりました。開発時間が短縮され、結果的にコントローラー品質の向上につながるため、これは大きなメリットです。
Eisuke Matsuzaki, Sumitomo Heavy Industries