MATLAB Answers

Specifying reference state values in MPC controller cost function

3 views (last 30 days)
Alessandro Maria Laspina
Alessandro Maria Laspina on 4 Jul 2021
Hello,
I have an MPC controller, built with the following general format (i have not included the nonlinear equations because they are relatively long):
nx = 11;
ny = 3;
nu = 13;
nlobj = nlmpc(nx,ny,nu);
nlobj.Model.StateFcn="nonlinear_eom.m";
nlobj.Jacobian.StateFcn="nonlinear_j";
Ts=0.4;
p=30;
nlobj.Ts=Ts;
nlobj.PredictionHorizon=p;
nlobj.ControlHorizon=p;
I want to use this controller as part of a simulation where a preliminary value of the control values U(5:13) for each time step is to be given to the controller i.e. I want to specify a cost function where given the reference controls (using subscripts U), the cost is given by:
This only considers the control values themselves. I know that:
nlmpcmove(nlmpcobj,x,lastmv,ref)
includes ref, which is the output reference values, but what about the input reference values?

Answers (0)

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!