@@ -6,37 +6,64 @@ y = model()
6
6
7
7
mpc_im = setconstraint! (LinMPC (InternalModel (model)), ŷmin= [45 , - Inf ])
8
8
initstate! (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 )
10
12
11
13
mpc_kf = setconstraint! (LinMPC (KalmanFilter (model)), ŷmin= [45 , - Inf ])
12
14
initstate! (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
+
15
19
mpc_lo = setconstraint! (LinMPC (Luenberger (model)), ŷmin= [45 , - Inf ])
16
20
initstate! (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
+
19
25
mpc_ukf = setconstraint! (LinMPC (UnscentedKalmanFilter (model)), ŷmin= [45 , - Inf ])
20
26
initstate! (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
+
23
37
mpc_skf = setconstraint! (LinMPC (SteadyKalmanFilter (model)), ŷmin= [45 , - Inf ])
24
38
initstate! (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 ])
27
42
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 )
29
50
30
51
f (x,u,_) = model. A* x + model. Bu* u
31
52
h (x,_) = model. C* x
32
53
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 ] )
34
55
y = nlmodel ()
35
- nmpc_im = setconstraint! (NonLinMPC (InternalModel (nlmodel)), ŷmin= [45 , - Inf ])
56
+ nmpc_im = setconstraint! (NonLinMPC (InternalModel (nlmodel), Cwt = Inf ), ŷmin= [45 , - Inf ])
36
57
initstate! (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 ])
40
62
initstate! (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