What are the states in the 4-order state-space model?

4 views (last 30 days)
Dear All
I do not quite understand the state-scpace model formation and would like to ask for some simple explanation.
Im trying to fit real data with a 4-order state-space model. Number of inputs and outputs are 14 and 3 respectively. Hence, nx=4; Nk=ones(14,1)
(1) Why the resulting model has 4 states, the same as the model order nx?
(2) I guess the x(k) must be 4x1 vector in this case. Hence it seems that the x(k) does not have physical meaning. I would like to make estimation myself, so what (values) shall I use for x(k) to initialize the model:
x(k+1)=Ax(k)+Bu(k)
y(k) = Ax(k)+Du(k)
(3) Please, if possible, give some nice MIMO example or reference to it.
Thank you kindly!
  2 Comments
grega
grega on 17 Aug 2012
The exact problem is that I would like to reproduce the sim.m function as described in demo: Control of a MultiInput Single-Output plant (Step-by-step Simulation. The following code is based on the demo example, but I get strange results for our MIMO system. Any strange coding noticed?
[A,B,C,D]=ssdata(MPCobj.Model.Plant);
Tstop=50; %Simulation time
x = MPCobj.Model.Nominal.X;
xmpc=mpcstate(MPCobj); % Initial state of the MPC controller
r= r(1,:); % Output reference trajectory
% ---- record
YY=[]; UU=[]; XX=[];
% --- simulation
for t=0:round(Tstop/Ts)-1,
XX=[XX,x];
% Define measured disturbance signal
v = data(t+1,iMD);
% Plant equations: output update (note: no feedthrough from MV to Y: D=0)
y=C*x+D(:,iMD)*v'; % I get pritty wierd results at this line
YY=[YY,y];
% Compute MPC law
u=mpcmove(MPCobj,xmpc,y,r,v);
% Plant equations: state update
x=A*x+B(:,iMV)*u+B(:,iMD)*v';%+B(:,3)*d;
UU=[UU,u];
end

Sign in to comment.

Answers (0)

Categories

Find more on Model Predictive Control Toolbox 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!