@@ -6,37 +6,64 @@ y = model()
66
77mpc_im = setconstraint! (LinMPC (InternalModel (model)), ŷmin= [45 , - Inf ])
88initstate! (mpc_im, model. uop, y)
9- u = mpc_im ([50 , 30 ], ym= y)
9+ mpc_im. estim ([50 , 30 ])
10+ u = mpc_im ([55 , 30 ], ym= y)
11+ sim! (mpc_im, 3 )
1012
1113mpc_kf = setconstraint! (LinMPC (KalmanFilter (model)), ŷmin= [45 , - Inf ])
1214initstate! (mpc_kf, model. uop, model ())
13- u = mpc_kf ([50 , 30 ])
14- sim! (mpc_kf, 15 )
15+ mpc_kf. estim ()
16+ u = mpc_kf ([55 , 30 ])
17+ sim! (mpc_kf, 3 , [55 , 30 ])
18+
1519mpc_lo = setconstraint! (LinMPC (Luenberger (model)), ŷmin= [45 , - Inf ])
1620initstate! (mpc_lo, model. uop, model ())
17- u = mpc_lo ([50 , 30 ])
18- sim! (mpc_lo, 15 )
21+ mpc_lo. estim ()
22+ u = mpc_lo ([55 , 30 ])
23+ sim! (mpc_lo, 3 , [55 , 30 ])
24+
1925mpc_ukf = setconstraint! (LinMPC (UnscentedKalmanFilter (model)), ŷmin= [45 , - Inf ])
2026initstate! (mpc_ukf, model. uop, model ())
21- u = mpc_ukf ([50 , 30 ])
22- sim! (mpc_ukf, 15 )
27+ mpc_ukf. estim ()
28+ u = mpc_ukf ([55 , 3 ])
29+ sim! (mpc_ukf, 3 , [55 , 30 ])
30+
31+ mpc_ekf = setconstraint! (LinMPC (ExtendedKalmanFilter (model)), ŷmin= [45 , - Inf ])
32+ initstate! (mpc_ekf, model. uop, model ())
33+ mpc_ekf. estim ()
34+ u = mpc_ekf ([55 , 30 ])
35+ sim! (mpc_ekf, 3 , [55 , 30 ])
36+
2337mpc_skf = setconstraint! (LinMPC (SteadyKalmanFilter (model)), ŷmin= [45 , - Inf ])
2438initstate! (mpc_skf, model. uop, model ())
25- u = mpc_skf ([50 , 30 ])
26- sim! (mpc_skf, 15 )
39+ mpc_skf. estim ()
40+ u = mpc_skf ([55 , 30 ])
41+ sim! (mpc_skf, 3 , [55 , 30 ])
2742
28- sim! (model, 15 )
43+ nmpc_skf = setconstraint! (NonLinMPC (SteadyKalmanFilter (model), Cwt= Inf ), ŷmin= [45 , - Inf ])
44+ initstate! (nmpc_skf, model. uop, model ())
45+ nmpc_skf. estim ()
46+ u = nmpc_skf ([55 , 30 ])
47+ sim! (nmpc_skf, 3 , [55 , 30 ])
48+
49+ sim! (model, 3 )
2950
3051f (x,u,_) = model. A* x + model. Bu* u
3152h (x,_) = model. C* x
3253
33- nlmodel = setop! (NonLinModel (f, h, Ts, 2 , 2 , 2 ))
54+ nlmodel = setop! (NonLinModel (f, h, Ts, 2 , 2 , 2 ), uop = [ 10 , 10 ], yop = [ 50 , 30 ] )
3455y = nlmodel ()
35- nmpc_im = setconstraint! (NonLinMPC (InternalModel (nlmodel)), ŷmin= [45 , - Inf ])
56+ nmpc_im = setconstraint! (NonLinMPC (InternalModel (nlmodel), Cwt = Inf ), ŷmin= [45 , - Inf ])
3657initstate! (nmpc_im, nlmodel. uop, y)
37- u = nmpc_im ([50 , 30 ], ym= y)
38- sim! (nmpc_im, 15 )
39- nmpc_ukf = setconstraint! (NonLinMPC (UnscentedKalmanFilter (nlmodel)), ŷmin= [45 , - Inf ])
58+ u = nmpc_im ([55 , 30 ], ym= y)
59+ sim! (nmpc_im, 3 , [55 , 30 ])
60+
61+ nmpc_ukf = setconstraint! (NonLinMPC (UnscentedKalmanFilter (nlmodel), Cwt= Inf ), ŷmin= [45 , - Inf ])
4062initstate! (nmpc_ukf, nlmodel. uop, y)
41- u = nmpc_ukf ([50 , 30 ])
42- sim! (nmpc_ukf, 15 )
63+ u = nmpc_ukf ([55 , 30 ])
64+ sim! (nmpc_ukf, 3 , [55 , 30 ])
65+
66+ nmpc_ekf = setconstraint! (NonLinMPC (ExtendedKalmanFilter (model), Cwt= Inf ), ŷmin= [45 , - Inf ])
67+ initstate! (nmpc_ekf, model. uop, model ())
68+ u = nmpc_ekf ([55 , 30 ])
69+ sim! (nmpc_ekf, 3 , [55 , 30 ])
0 commit comments