没有合适的资源?快使用搜索试试~ 我知道了~
首页线性定常系统和线性时变系统的模型预测控制
资源详情
资源评论
资源推荐

02 -
(C)$2018$A.$Bemporad$-$“Model$Predictive$Control”$course
1
Linear Parameter Varying and Time-Varying
Model Predictive Control
Alberto Bemporad - “Model Predictive Control” course - Academic year 2017/18

min
U
N1
X
k=0
kW
y
(y
k
r(t))k
2
+ kW
u
(u
k
u
ref
(t))k
2
(
x
k+1
= A(p(t))x
k
+ B
u
(p(t))u
k
+ B
v
(p(t))v
k
y
k
= C(p(t))x
k
+ D
v
(p(t))v
k
(
u
min
u
k
u
max
y
min
y
k
y
max
min
z
1
2
z
0
H(p(t))z + ✓
0
(t)F (p(t))
0
z
s.t. G(p(t))z W (p(t))+S(p(t))✓(t)
02 -
(C)$2018$A.$Bemporad$-$“Model$Predictive$Control”$course
Linear Parameter-Varying (LPV) MPC
2
quadratic$
performance$index
constraints$
LTI$prediction$
model
QP
• LPV$models$can$be$obtained$from$linearization$of$nonlinear$models$or$from$
black-box$LPV$system$identification
All$QP$matrices$are$
constructed$on$line
Model depends on time t but does not change in prediction

min
U
N1
X
k=0
kW
y
(y
k
r(t))k
2
+ kW
u
(u
k
u
ref
(t))k
2
(
x
k+1
= A
k
(p(t))x
k
+ B
uk
(p(t))u
k
+ B
vk
(p(t))v
k
y
k
= C
k
(p(t))x
k
+ D
vk
(p(t))v
k
02 -
(C)$2018$A.$Bemporad$-$“Model$Predictive$Control”$course
Linear Time-Varying (LTV) MPC
3
quadratic$
performance$index
constraints$
LTV$prediction$
model
• LTV$models$can$be$obtained$from$linearizing$NL$models$around$time-varying$
reference$trajectories$(e.g.:$previous$optimal$trajectory)
LTV-MPC$still$leads$to$
a$convex$QP
Model depends on time t and prediction step k
QP
(
u
min
u
k
u
max
y
min
y
k
y
max
min
z
1
2
z
0
H(p(t))z + ✓
0
(t)F (p(t))
0
z
s.t. G(p(t))z W (p(t))+S(p(t))✓(t)

d
3
y
dt
3
+3
d
2
y
dt
2
+2
dy
dt
+ (6 + sin(5t))y
=5
du
dt
+ (5 + 2 cos(
5
2
t))u
02 -
(C)$2018$A.$Bemporad$-$“Model$Predictive$Control”$course
LTV-MPC example
4
0 5 10 15 20 25 30 35 40 45 50
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Output
mpcmoveAdaptive
mpcmoveTimeVarying
mpcmove
0 5 10 15 20 25 30 35 40 45 50
-0.5
0
0.5
1
1.5
2
2.5
3
Input
• Process$model$is$LTV:
• LTV-MPC$is$quite$good
• LPV-MPC$tries$to$catch-up$with$time-varying$model
• LTI-MPC$is$not$good
(See$demo$TimeVaryingMPCControlOfATimeVaryingLinearSystemExample,$MPC$Toolbox)

02 -
(C)$2018$A.$Bemporad$-$“Model$Predictive$Control”$course
LTV-MPC example
• Define$LTV$model
5
Models = tf; ct = 1;
for t = 0:0.1:10
Models(:,:,ct) = tf([5 5+2*cos(2.5*t)],[1 3 2 6+sin(5*t)]);
ct = ct + 1;
end
Ts = 0.1; % sampling time
Models = ss(c2d(Models,Ts));
• Design$MPC$controller
sys = ss(c2d(tf([5 5],[1 3 2 6]),Ts)); % average model time
p = 3; % prediction horizon
m = 3; % control horizon
mpcobj = mpc(sys,Ts,p,m);
mpcobj.MV = struct('Min',-2,'Max',2); % input constraints
mpcobj.Weights = struct('MV',0,'MVRate',0.01,'Output',1);
剩余26页未读,继续阅读

















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0