PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that...
Transcript of PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that...
![Page 1: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/1.jpg)
PFC Predictive Functional Control
Prof. Cesar de Prada Dpt. of Systems Engineering and Automatic Control
University of Valladolid, Spain [email protected]
![Page 2: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/2.jpg)
Outline
As simple as possible – Motivation – PFC main ideas – An introductory example
![Page 3: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/3.jpg)
Motivation
Predictive control is a widely used control technique in the process industry combined with an optimization layer
Most of the implementations use internal linear models (step responses) and LP optimizers
![Page 4: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/4.jpg)
u(t)
t t+1 t+2 ...
time
past future
tiempo
Set point
Ootput prediction CV, PV
MV, OP
SP
LP, economic optimizer
Sets optimal MVs
Set target
DMC no constraints
Computes MVs
DMC
![Page 5: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/5.jpg)
Motivation
When a significant non-linear process is faced, a non-linear controller based on a non-linear plant model is required.
Current approaches based on first-principles models, NN, volterra series, etc. lead to a non-linear optimization problem that must be solved on-line
This is a heavy burden, both from the implementation and computational load
![Page 6: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/6.jpg)
Non-linear Predictive Control
Process Optimizer u w y v
Predictor y(t+j)
[ ] [ ]
uj)u(tu yj)y(ty))t(u,x(t)(g y(t) )u(t),t)(x(fx
j)u(tj)w(tj)(tyu
Jmin2N
1Nj
1Nu
0j
22
≤+≤≤+≤==
+∆β++−+=∆
∑ ∑=
−
=
![Page 7: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/7.jpg)
Solving the dynamic NLP problem
Process
Simulation from t to t+N2 for computing J(u,x(t))
Optimizer
u J
w
u(t) y(t)
State constraints
Gradients
![Page 8: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/8.jpg)
Aim
The aim of Parametric Predictive Control (PPC) is to facilitate the implementation of the controller while retaining the main non-linear characteristics in its internal model
Good compromise between speed of execution, easy of implementation and performance
Target: Embedded controller in a DCS
![Page 9: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/9.jpg)
PPC Main ideas
Combines first principles models with MPC ideas and generates a simplified solution that is updated every sampling time.
Parametric Predictive Control (PPC) (J. Richalet, 1996) was developed for, and successfully applied to, temperature control of batch reactors.
A. Assandri, A. Rueda, PhD students Three steps:
– Basic ideas presented in the linear case – Extended to the non-linear case with a chemical reactor CSTR – Industrial application to the bottom temperature control of a
distillation column heated with a furnace-reboiler.
![Page 10: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/10.jpg)
Basic concepts
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
Aim: Decrease the error in the future until a certain percentage of the current error w – y(t)
This implies to change the process output by ∆p
Use the model to compute the control u(t) that provides a change in the model output ∆m (u) = ∆p
Key design equation: ∆m (u) = ∆p
![Page 11: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/11.jpg)
Basic concepts
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
1 0 ))t(yw(E pN
d <λ<−λ=
The future error at t+N must be a fraction of the current error w- y(t)
))t(yw)(-1( pN
p −λ=∆
Example: First order model
)t(uk)t(ydt
)t(dy=+τ
![Page 12: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/12.jpg)
Basic concepts (Monoreg)
Example: First order model
)t(uk)t(ydt
)t(dy=+τ
Assuming that u(t) is kept constant along the prediction horizon, that is Nu = 1, and with initial condition yp(t):
Ts sampling time
N prediction (o coincidence) horizon
−+=+ τ
−τ
− ss TN
p
TN
sm e1)t(uk)t(ye)TNt(y
u(t) time
−−
−=∆ τ
−τ
−1e)t(uk)t(y1ey
ss TN
p
TN
m
![Page 13: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/13.jpg)
Design equation
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
design equation: ∆m (u) = ∆p
−−
−=∆ τ
−τ
−1e)t(uk)t(y1ey
ss TN
p
TN
m
))t(yw)(-1( pN
p −λ=∆
( )[ ]
−
−λ−−
−
=τ
−
τ−
1eK
)t(y)t(w1)t(y1e)t(u
s
s
TN
pN
p
TN
Explicit solution for the control signal
![Page 14: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/14.jpg)
Tuning parameters
( )[ ]
−
−λ−−
−
=τ
−
τ−
1eK
)t(y)t(w1)t(y1e)t(u
s
s
TN
pN
p
TN N prediction horizon (number of sampling periods required to decrease the current error by λN)
λ Reduction factor (0,..,1)
A discrete first order system with pole λ will give a free response as the one desired at t+NTs
1q11
−λ− x
![Page 15: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/15.jpg)
Example. Ideal case
1s51)s(G+
=
Model = Process
K = 1
τ = 5 min.
N = 20
λ= 0.8
0.0
0.2
0.4
0.6
0.8
1.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
Process output and SP
0.0
0.2
0.4
0.6
0.8
1.0
1.2
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
uControl signal
hours
![Page 16: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/16.jpg)
Extension to Nu > 1
Example: First order model
)t(uk)t(ydt
)t(dy=+τ
−+++=+
−+=+
τ−
−τ−
−
τ−
τ−
ss
ss
T)1N(
ssm
T)1N(
sm
T
p
T
sm
e1)Tt(uk)Tt(ye)TNt(y
e1)t(uk)t(ye)Tt(y
u(t)
time
Nu = 2
Ts
Predictions are more complex
Two unknows: u(t), u(t+Ts), then two coincidence points are required
u(t+Ts)
ym(t+Ts)
![Page 17: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/17.jpg)
Robustness
0.0
0.2
0.4
0.6
0.8
1.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
1s5.51)s(G+
=
Model ≠ Process
N = 20
λ = 0.8
Process output and SP
10% change in the parameters
0.0
0.2
0.4
0.6
0.8
1.0
1.2
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
uControl signal
A bit slower
hours Model:
![Page 18: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/18.jpg)
Robustness
1s59.0)s(G+
=
Model ≠ Process
N = 20
λ = 0.8
0.0
0.2
0.4
0.6
0.8
1.0
1.2
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
Steady state error
0.0
0.2
0.4
0.6
0.8
1.0
1.2
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
uControl signal
Solution: error model or explicit integrator added
hours
Model:
![Page 19: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/19.jpg)
Incorporating errors
Model:
v)t(uk)t(ydt
)t(dy+=+τ
Assuming also that v does not change along the prediction horizon:
u(t) time
v disturbance
−+
−+=+ τ
−τ
−τ
− sss TNTN
p
TN
s e1ve1)t(uK)t(ye)NTt(y
−+
−+
−=∆ τ
−τ
−τ
− sss TNTN
p
TN
m e1ve1)t(uK)t(y1ey
![Page 20: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/20.jpg)
Design equation
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
Consigna
Proceso
w
py
p∆
dE
t + Nt
m∆Modelo
my
futuropresentepasado
SP
Process
Model
Past t Future
∆p
∆m
design equation: ∆m (u) = ∆p
))t(yw)(-1( pN
p −λ=∆
−+
−+
−=∆ τ
−τ
−τ
− sss TNTN
p
TN
m e1ve1)t(uK)t(y1ey
( ) ( )[ ]
−
−λ−−−
−
=τ
−
τ−
1eK
)t(y)k(w1v)t(y1e)t(u
s
s
TN
pN
p
TNController equation.
v is not known and needs to be estimated every sampling time
![Page 21: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/21.jpg)
Estimating v
t
t
t -Ts
t -Ts
u(t-1)
y(t-Ts)
y(t)
−+
−−+−= τ
−τ
−τ
− sss TT
ssp
T
p e1ve1)Tt(uK)Tt(ye)t(y
−
−−−−−
=τ
−
τ−
τ−
s
ss
T
T
ssp
T
p
e1
e1)Tt(uK)Tt(ye)t(yv
v is estimated from the process model in order to cancel the difference between the measured process output at t and the prediction made with values at t - Ts
![Page 22: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/22.jpg)
0.0
0.2
0.4
0.6
0.8
1.0
1.2
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
u
Example
Control signal 1s5.5
9.0)s(G+
=
Model ≠ Process
N = 20
λ = 0.8
0.0
0.2
0.4
0.6
0.8
1.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
The error estimation compensates
the modelling errors
0.00
0.05
0.10
0.15
0.20
0.25
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
v
Estimated disturbance
hours Model:
![Page 23: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/23.jpg)
Adding an integrator
))Tt(y)Tt(w(TT)Tt(i)Tt(e
TT)Tt(i)t(i sps
i
sss
i
ss −−−+−=−+−=
( )[ ]( ) ( )s
i
ssTN
pN
p
TN
TteTTTti
1eK
)t(y)t(w1)t(y1e)t(u
s
s
−+−+
−
−λ−−
−
=τ
−
τ−
PPC
∫=t
i
p deTk
ti ττ )()(
u(t) w e
yp(t)
![Page 24: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/24.jpg)
Example
1s5.59.0)s(G+
=
Model ≠ Process
N = 20
λ= 0.8
Ti = 0.1 min
Ts = 20 sec.
hours
No se puede mostrar la imagen en este momento.
Control signal
Model:
![Page 25: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/25.jpg)
First order + delay
Model:
v)dt(uk)t(ydt
)t(dy+−=+τ
v disturbance
d delay
d = DTs
u(t) time
yp
d
∆p
∆m
Process
Model ym
t t+N ( )[ ])t(y)t(w1 p
DNp −λ−=∆ −
![Page 26: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/26.jpg)
First order + delay
( )
−+
−+
+−
−+
−=∆
τ−
τ−
−
−+
=
τ−
ττ−
τ−
∑ss
ssss
TNTDN
1Dt
tm
T)tm(TTN
p
TN
m
e1ve1K)t(u
e)Dm(u1eKe)t(y1ey
( )[ ])t(y)t(w1 pDN
p −λ−=∆ −
( )
( )[ ]
−−−
−−
−
−−−λ−
−=
τ−−+
=
τ−
ττ−
τ−−
−
τ−
−
∑ssss
ss
TN1Dt
tm
T)tm(TTN
p
TN
pDN
1TDN
e1ve)Dm(u1eKe
)t(y1e)t(y)t(w1e1K)t(u
N > D
![Page 27: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/27.jpg)
Estimating v
t t -Ts
t –(D+1)Ts
u(t-(D+1)Ts)
y(t-Ts)
y(t)
t –DTs
DTs
−
−+−−−−
=τ
−
τ−
τ−
s
ss
T
T
ssp
T
p
e1
e1)T)1D(t(uK)Tt(ye)t(yv
v is estimated from the process model in order to cancel the difference between the measured process output at t and the prediction made with values at t - Ts
+ smoothing filter
![Page 28: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/28.jpg)
0.5
1.0
1.5
2.0
2.5
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
u
0.5
1.0
1.5
2.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
Example. Ideal case
1s5e)s(G
s10
+=
−
Model = Process
K = 1
τ= 5 min.
d = 10 min.
N = 40
λ= 0.8
Ts = 1 min.
Process output and SP
Control signal
hours
![Page 29: PFC Predictive Functional Control - UVaprada/PFCcontrol.pdf · generates a simplified solution that is updated every sampling time. Parametric Predictive Control (PPC) (J. Richalet,](https://reader033.fdocuments.us/reader033/viewer/2022052802/5f1cf080f8c6d65f570499d0/html5/thumbnails/29.jpg)
0.0
0.5
1.0
1.5
2.0
2.5
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
wy
Robustness Model ≠ Process
N = 40
λ = 0.8
The error estimation compensates
the modelling errors hours
1s5.5e9.0)s(G
s9
+=
−
0.0
1.0
2.0
3.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
uControl signal
-0.3
-0.2
-0.1
0.0
0.1
0.2
0.3
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5
TIME
v
Estimated disturbance
Model: