How to specify a nonlinear mpc controller for continuous time delay differential equation state function?

5 ビュー (過去 30 日間)
I have a system of continuous-time nonlinear delay differential equations with two states and two explicit time delays. I would like to build a nonlinear mpc controller for this system, but I am not sure how to write a state function with time delays.
The system:
Where are the state varaibles, are constants, u is the manipulated variable, and are the continuous-time nonlinear state equations.
Is this possible to do using nlmpc ?

採用された回答

Emmanouil Tzorakoleftherakis
Emmanouil Tzorakoleftherakis 2023 年 3 月 14 日
You can basically add states to help model the delays. So your new discretized state vector would be [x(k) y(k) x(k-1) y(k-1) ... x(k-tau1/Ts) y(t-tau2/Ts)]. Then you can use the respective state function with nlmpc.
  4 件のコメント
Kayvon
Kayvon 2023 年 3 月 15 日
Ok makes sense. I will look into that. Thanks for your help!
Kayvon
Kayvon 2023 年 3 月 20 日
In this case I was able to rescale the time variable in the delay differential equations so that the needed time delays were small which made the computation tractable. But in other cases I like the idea of fitting a data-driven model and I'm going to look into that as well anyways.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeModel Predictive Control Toolbox についてさらに検索

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by