Setting initial conditions in MPC
25 views (last 30 days)
Show older comments
Hello,
I am using Adaptive Model Predictive Controller (MPC) to track the reference trajectory. While MPC is tracking the given reference it has to catchup from zero, is there any way I can set starting of output values to a nominal value (which wouldn't take much time to catchup). Can you suggest me what can be done about it.
pic 1 : Tracking starting from zero,
pic2 : tracking starting from nominal expected mid point
Here are few things that I have tried doing,
As I am using AMPC ( Adaptive Model Predictive Controller) block , I have set block parameter intial controller state to a nominal mpcstate object, though I still don't see starting from initial estimated point. here you can see what I mean,
pic3 : AMPC block parameter (mpcstateobj )
Can you suggest what can be done, any reference would be great help.
thanks
1 Comment
Camilo Mahnert Cataldo
on 21 Nov 2023
Hi I have the same questions. Exist to solution for this problem? Thank you.
Answers (1)
Emmanouil Tzorakoleftherakis
on 23 May 2023
To get the behavior you mentioned, the initial states of your plant and controller must be the same. If the initial conditions for your system do not match, you can set the initial states of the controller to the plant initial states.
Here, it seems to me that you are setting the controller state properly, but your Simulink model does not have the proper initial conditions. I would check the Simulink model to make sure that it has the same IC as the MPC controller.
2 Comments
Camilo Mahnert Cataldo
on 21 Nov 2023
Hi, but. How adjust the initial condition in Simulink? That is a really problem for mi.
See Also
Categories
Find more on Refinement in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!