Why is my custom constraint for adaptive MPC controller not working?

7 vues (au cours des 30 derniers jours)
dekun wang
dekun wang le 1 Mai 2021
I am using Adaptive MPC controller in simulink to control a system with 4 states (same as 4 outputs) and 2 control inputs. Since the system is in the form of xdot=A*x+B*u+dc, "dc" is a constant matrix(4x1), so I regard them as "measured disturbance".
What I mean to do is let the system follow a reference [0 0 0 0]' and after 1 second, the fourth state(x(4)) is constrained to be less than 0 (force the system to deviate from the reference). So I let costum constriant E=zeros(1,2), F=[0 0 0 1], S=zeros(1,4), G is changing from 0 to -9. (as figure 2 shows, equally x(4)<G).
But the states never change. Neither do control inputs. They all remain zero as long as the reference is [0 0 0 0]'. It is as if the constraint is never set up. I could not find the way to work it out. But when I used ymax and ymin instead, it can be controlled to deviate from the reference. Still, I need to use custom constraints in the end.
Here I attached my files. Run 'controller_setup' first before you go to 'model.slx'.

Réponses (0)

Catégories

En savoir plus sur Linear Plant Specification dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by