![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1380149/image.png)
非線形MPCについての質問
9 次查看(过去 30 天)
显示 更早的评论
非線形MPCについての質問です。
非線形MPCを用いて車両制御(車両の旋回制御)を行いたいと考えています。
下記リンクの手法を参考に設計したいと考えています。下記リンクの手法では道路の先読み情報として道路中心線の情報を入力に使っているかと思います。
そこで非線形MPCブロックの入力についての質問です。道路の先読み情報をパラメータとして使用した場合(上記のリンクでいうところの道路の中心線の方位角偏差)、コードでパラメータを設計する際にはどういった表記をすればよろしいでしょうか?
つまり、非線形MPCブロックの入力(ref)をパラメータで使用できるのか?使用できる場合、どういった表記をすればよいのか?といった内容です。以上、よろしくお願いします。
質問の内容が理解できない場合はコメントしていただければと思います。よろしくお願いします。
0 个评论
采纳的回答
Toshinobu Shintai
2023-5-11
非線形モデル予測制御のコスト関数の中に道路中心線の情報を入れておく、という方法はあるかと思います。
以下のリンク先にて、コスト関数(mスクリプト)の作り方が説明されています。
また、Simulinkの「Nonlinear MPC Controller」ブロックに、パラメーターとして入力することもできます。この場合は、モデル実行中に値を変化させることができます。
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1380149/image.png)
この外部入力のモデリングについては、以下リンク先のデモモデルをご参照ください。
この中の「6.非線形MPC」になります。また、マルチステージの非線形モデル予測制御の場合も解説しています。「8.マルチステージの非線形MPC」になります。
3 个评论
Toshinobu Shintai
2023-5-11
编辑:Toshinobu Shintai
2023-5-11
上記の1個目のリンク先をご確認ください。
非線形MPCのオブジェクトnlmpcを設計する時に、自作のコスト関数を指定することができますが、指定しないと「standard cost function」が用いられます。この時refは目標値として扱われています。
自作のコスト関数を指定する時、コスト関数の引数にdataを指定することができます。dataの中にrefで与えた信号データが格納されているので、それを自由に用いることができます。
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Refinement 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!