Can you turn off/on manipulated variables at specific conditions in a MPC Controller?
Show older comments
Hello,
im designing an adaptive MPC Controller with two manipulated variables (MV). One of them is electric power (0-2kW) and the other one is air mass flow (0-80kg/h).
Now i need to turn off/on the second MV (air mass flow) at specific conditions. If its off, then it should be =0 and if its on, then the MPC should manipulate it within the constraints. The electric power should be manipulated the whole time.
In Simulink you can imprint the MV constraints / MV targets at specific points externally on the MPC block. For example you can say that the upper contraint should change between 0 kg/h and 80 kg/h. That works, but i feel like its not the right way.
Is there an other solution to control the MV "direct inside" the MPC, so that i can decide whether it should be manipulated or not?
Thanks
4 Comments
Just wondering, if you manually design the manipulated variables, how would you describe the mathematics of turning on/off the Air Mass Flow at specific conditions?
If you can write out the math and rules, perhaps we can find a way to call out a special constraint function for the MPC system.
I'm thinking that if you want to toggle the Air Mass Flow as you wish through customization, then you probably no longer need MPC for optimization. I'm comparing your problem to the PID Tuner. If I want to make my input ON/OFF as I wish, then I cannot use the built-in PID Tuner.
You can design the MPC using a single MV Electric Power. The 2nd MV can be turned on as a secondary actuation for backup when the performance drops.
Artem Wendler
on 15 Jul 2022
Sam Chak
on 17 Jul 2022
Thanks for your clarification, but I still don't know your system works mathematically. I think that MPC considers the input is continuous. If the engine is the state x, then you can probably do something like this:
where
Then, your MPC can freely compute the input u without the internal constraint.
Artem Wendler
on 19 Jul 2022
Accepted Answer
More Answers (0)
Categories
Find more on Simulation 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!



