How can I have 'measured states' in a MPC controller object in Simulink?
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Daniel
il 21 Gen 2023
Commentato: Daniel
il 30 Gen 2023
I'm trying to model a MPC controller that tries to hold one measured state of a plant constant. Therefore I am using this measureable state as my 'observed output'. To control the plant I have three 'manipulated variables'.
The model of the plant I want to control is based on a Simulink model that I linearized. I am using this linearized state space model as the basis for my MPC object. To design my MPC I am using the 'basic' MPC Controller block from the 'Model Predictive Control' toolbox.
Now my question is: How can I add measured states to the MPC Controller, additional to the one plant output I want to control. I actually can measure multiple of the states of my plant, so I want to provide them to the MPC instead of having them estimated by the Kalmann filter. One way seems to be to use a custom state estimation, is that correct? The deficit would be that I than have to build a state estimator for the unmeasured states.
0 Commenti
Risposta accettata
Emmanouil Tzorakoleftherakis
il 25 Gen 2023
Modificato: Emmanouil Tzorakoleftherakis
il 25 Gen 2023
Model Predictive Control Toolbox includes built-in Kalman filters for the linear MPC API and blocks. So you really don't need to do anything other than feed the measured outputs to the MPC block. The built-in Kalman filter will take care of the rest
3 Commenti
Emmanouil Tzorakoleftherakis
il 30 Gen 2023
What I am saying is basically this: if you can measure all the states in your system reliably, you don't need a filter. If you can only measure some of your states, you need to estimate the rest because MPC needs all the states for the internal prediction model. You cannot estimate the "missing states" without an estimator, and to do that, you need to pass the measured states to that filter. This is the notion of obserbability
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Refinement in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!