control predictivo basado en modelos (mpc)prada/mpc4.pdf · maneja problemas de control...
TRANSCRIPT
Control Predictivo basado en Modelos (MPC)
Prof. Cesar de Prada Dpto. Ingenieria de Sistemas y Automática
Universidad de Valladolid, España
e-mail: [email protected] web:http//www.isa.cie.uva.es
Tendencias en la industria Exigencias crecientes de optimización de costos, mejor
calidad, productividad, seguridad, respeto al medio ambiente, funcionamiento de las plantas en un amplio rango de condiciones de operación,..
Requiere una mejora de los sistemas de control para cumplir
especificaciones. Necesidad de racionalizar las decisiones de nivel superior con
significado económico y de integrar todas las decisiones a diversos niveles.
El lazo de control
Proceso Controlador u w y
SP CV
v
MV
DV
El regulador PID
regulador basado en señal, no incorpora conocimiento explícito del proceso
3 parámetros de sintonia Kp, Ti, Td diversas modificaciones
e t w t y t
u t K e tT
e d T dedtp
id
( ) ( ) ( )
( ) ( ) ( )
= −
= + +
∫
1τ τ
Regulación automática convencional
Reactor FT
FT
FC
FC
TT
AT
Temp
Conc.
Refrigerante
Producto
TC
Problemas de control
En la industria de procesos, los reguladores PID solucionan bien la mayoría de los problemas de control monovariable (caudal, presión,...)
Sin embargo pueden no tener un buen comportamiento en lazos de dinámica difícil (retardos, fase no mínima, etc.)
En sistemas mas complejos con interacción entre variables, (control de una unidad de proceso,...) la interacción entre lazos puede empeorar seriamente el control.
Reactor: Interacción
Reactor FT
FT
FC
FC
TT AT
Refrigerante
Productos
u1 u2
TC AC
Materia prima
wT wc La interacción entre los lazos puede impedir un funcionamiento adecuado
Interacción
Reactor FT
FT
FC
FC
TT AT
MPC
Temp Conc.
Refrigerante
Producto
u1 u2
Reactivo
El control multivariable tiene en cuenta la interacción entre las variables y trata de controlar la unidad de proceso como un todo
Procesos multivariables (MIMO)
En procesos multivariables la interacción crea problemas de control. Además cuando hay restricciones en las variables, perturbaciones, etc. las llamadas estructuras de control no siempre dan buenos resultados y son difíciles de mantener. En consecuencia, a menudo la unidad se regula manualmente por un operario.
LC
LT
FT FC
PT PC
LT LC
D FC FT
F
V
R
TT
TC
TT
TC FT FY
Control Multivariable
El control multivariable, y en particular el MPC, tiene en cuenta la interacción entre las variables, sus restricciones, las perturbaciones, etc. y permite realizar un control eficiente de forma automática, abriendo las puertas a la optimización de su punto de operación. LC
LT
FT FC
PT PC
LT LC
D FC FT
F
V
R
TT
TT
FT
MPC
Control y optimización
tiempo
ref
ref límite superior
•La reducción de varianza permite mover la referencia y respetar los límites de la variable. •La mejora del control permite la optimización.
Hogargar
Secadero aire
Gas
pulpa
Pulpa seca
gases
MC MT
w
Un mejor control permite la optimización del punto de trabajo
límite
W1 W2
Humedad de pulpa seca
SP
Control y Optimizacion
minimizar varianza permite mover la consigna mas cerca de los límites de operación óptimos – necesidad de un mejor control – operar cerca de las restricciones
limite
W1 W2
Pirámide de control
Instrumentación
Regulación convencional
MPC
Optimización local
PID, DCS,..
Válvulas, Transmisores
Control Predictivo
El control avanzado opera sobre el control convencional, aplicado al funcionamiento de una unidad de proceso y añade nuevas fucionalidades teniendo en cuenta la interacción entre las variables, las restricciones y la optimización continua de su operación.
JERARQUIA DE CONTROL
Para poder abordar problemas de un nivel, los niveles inferiores han de funcionar correctamente
En concreto, la optimización económica exige que el nivel de control funcione adecuadamente
nivel 0 Instrumentación
de Campo
Nivel 1 Control Convencional
PID, DCS
Nivel 2 Control Avanzado
Nivel 3 Optimización
Interes económico
estrategia de control basada en el uso explícito de un modelo del proceso para predecir el comportamiento futuro de la variable controlada sobre un horizonte temporal
es factible por los cambios tecnológicos en computadores, técnicas de modelado, métodos numéricos,...
Diversos algoritmos: DMC, GPC, …..
Proceso Optimizador u w y v
Predictor y(t+j)
Control Predictivo MPC
u(t) u(t+k|t)
y(t+k|t) ^
t t+1 t+2 ...
tiempo
pasado futuro
tiempo
Señal de referencia
Predicción de la salida: CV
MV
SP
Control Predictivo
MPC, Optimización
Proceso Optimizador u w y v
Predictor y(t+j)
[ ] [ ]∑ ∑=
−
=++∆β++−+=
2N
1Nj
1Nu
0j
22
),..1t(u),t(u)jt(u)jt(w)jt(yJmin
y(t+j) están relacionados con u(t), u(t+1)… a través de las ecuaciones de predicción calculadas con el modelo del proceso
Control predictivo
MPC PID
Características del MPC
Maneja problemas de control multivariable con distinto numero de CV y MV y compensa perturbaciones medibles
Permite trabajar con procesos de dinámica compleja: retardos, respuesta inversa, ....
Permite trabajar con restricciones en las variables manipuladas o controladas
Fácil de entender
Abre las puertas a la optimización económica del proceso
Diseño de controladores
Sin Modelo
Sintonía del
controlador
Con Modelo Especificar control
Modelado
Identificación
Análisis del proceso
...pero necesita un modelo dinámico
Principales elementos
Modelo interno usado para efectuar predicciones del comportamiento futuro
Señal de Referencia Estructuración de la ley de control Cálculo de las señales de control que
proporcionan un mejor escenario futuro Estrategia de horizonte movil
Modelos discretos
Proceso Ordenador A/D
D/A y(kT)
u(kT)
modelos discretos la salida en t = kT depende de las entradas y salidas en instantes de tiempo (k-j)T anteriores
Modelos Lineales
la salida actual depende linealmente de las entradas y salidas en instantes de tiempo anteriores
y t a y t a y t n b u t b u t mn m( ) ( ) . . . . ( ) ( ) . . . . ( )= − − − − − + − + + −1 11 1
las variables u e y son perturbaciones sobre un punto de operación y t Y Y
u t U U( )( )
= −= −
0
0
Modelo respuesta salto
y t g u t jj
j
( ) ( )= −=
∞
∑1
∆
•No requiere conocer la estructura del modelo •Puede describir dinámicas no usuales •Predicción simple y poco sensible a errores •Limitado a sistemas estables •Contiene muchos parámetros
Matriz Dinámica
t
y y y t
t
t
y
t
y
t
y
u1
u2
y1 y2 y3
respuesta salto entre cada par entrada/salida
DMC Dynamic Matrix Control
Modelo: respuesta salto + perturbación
)t(n)it(ug)t(y1i
i +−∆= ∑∞
=
Predicciones: )jt(n)ijt(ug)ijt(ug)jt(y1ji
i
j
1ii ++−+∆+−+∆=+ ∑∑
∞
+==
n t j n t y t g u t ip ii
( ) ( ) ( ) ( )+ = = − −=
∞
∑ ∆1
Modelo de perturbación:
∑
∑∑∞
=
∞
+==
−∆−+
+−+∆+−+∆=+
1iip
1jii
j
1ii
)it(ug)t(y
)ijt(ug)ijt(ug)jt(yPredicciones:
gi
)1t(z)t(z)t(z −−=∆
DMC, Dynamic Matrix Control
∑∑∑∞
=
∞
+==
−∆−+−+∆+−+∆=+1i
ip1ji
i
j
1ii )it(ug)t(y)ijt(ug)ijt(ug)jt(y
∑
∑∑
∞
=+
++
∞
=
∞
+=
−∆−+=
−−∆−−∆−+−∆+−∆+=
=−∆−−+∆+=
1iiijpj
212j1jp
1ii
1jiipj
)it(u)gg()t(yp
....)2t(ug)1t(ug...)2t(ug)1t(ug)t(y
)it(ug)ijt(ug)t(yp
g g d N N Nj i i j i i+ +− ≅ − ≅ > =0 0 1 2 d i j, ,....,
In asymptotically stable systems:
∑=
+ −∆−+=N
1iiijpj )it(u)gg()t(yp Free response of the system
at time t
gi
DMC, Dynamic Matrix Control
( ) ( ) ( )y t j G q u t j pj j+ = + +−1 ∆
G q g q g qj jj( ) ......− − −= + +1
11
p respuesta libre
∑=
+ −∆−+=N
1iiijpj )it(u)gg()t(yp
p
u(t-1)
j
j
1ii p)ijt(ug)jt(y +−+∆=+ ∑
=
Predicciones: Respuesta forzada + libre
DMC, elección óptima de u
w
y(t+j)
N2
Horizonte de Predicción
t time
u(t-1) u(t)
Nu Horizonte de Control
t time
N1
∆u(t+j) = 0 j ≥ Nu Nu control horizon
Min : [ ] [ ]J ( ) ( ) ( )= + − + + +∑∑=
−
=y t j w t j u t j
j
Nu
j N
N 2 2
0
1
1
2β∆
Estructura del control:
( ) ( ) ( )y t j G q u t j pj j+ = + +−1 ∆
DMC
G =
+
− +
g gg g g
g g
N
N
N N Nu
1 1
1 1 2 1
2 2 1
0 00 0
0
... ...
... ...... ... ... ... ... ...... ... ... ... ... ... ...
... ... ... ... ...
Puede formularse en forma matricial:
[ ]∆ ∆ ∆ ∆u( )' ( ), ( ),..., ( )t u t u t u t Nu= + + −1 1
min ∆u(t), ∆u(t+1),..
[ ]2N11N1N0 p)2Nt(w,...,p)11Nt(w,p)1Nt(w' −+−++−+= +e
[ ] [ ]J ( ) ( ) ( )= + − + + +∑∑=
−
=y t j w t j u t j
j
Nu
j N
N 2 2
0
1
1
2β∆
( ) ( ) ( )y t j G q u t j pj j+ = + +−1 ∆
[ ] 000 ')t('2)t(')t('J eeuGeuIGGu +∆−∆β+∆=
DMC
[ ] 000 ')t('2)t(')t('J eeuGeuIGGu +∆−∆β+∆=
[ ] 0uuGeG
0u
0 =∆β+∆−′−
=∆∂∂
22
J
[ ] 01 '')t( eGIGGu −β+=∆
Si no hay restricciones:
[ ] )('')t( j1 pwGIGGu −β+=∆ −
Acción Integral
Compensación de retardos
Sintonía: Horizontes, β
Sistemas estables en lazo abierto
w y(t+j)
N1 N2 horizonte de predicción
t tiempo
u(t-1) u(t)
Nu horizonte de control
t tiempo
horizonte de coincidencia
[ ] [ ]∑ ∑=
−
=+∆
+∆β++−+=2N
1Nj
1Nu
0j
22
)jt(u)jt(u)jt(w)jt(yJmin
Parámetros DMC
β Factor de peso
Move supression factor ∆u control moves
DMC offset
( ) ( ) ( )y t j G q u t j pj j+ = + +−1 ∆
p
pss
N
1iiijpj
yy
yp)it(u)gg()t(yp
=⇒
=⇒−∆−+= ∑=
+
En estado estacionario:
DMC predicciones:
y como
sspy =
Las predicciones del estado estacionario son no sesgadas y, si la optimización lleva las predicciones del modelo a w, entonces la salida del proceso yp será igual a la referencia w, proporcionando error estacionario nulo
Perturbaciones medibles
y t g u t i d v t i n tii
ii
( ) ( ) ( ) ( )= − + − +=
∞
=
∞
∑ ∑∆ ∆1 1
+ u
v
n
variable manipulada
perturbación medible
perturbaciónes no medibles
y
variable controlada
Modelo DMC:
Predicciones (DMC) con perturbaciones conocidas
)jt(n)ijt(vd)ijt(vd
)ijt(ug)ijt(ug)jt(y
1jii
j
1ii
1jii
j
1ii
++−+∆+−+∆+
+−+∆+−+∆=+
∑∑
∑∑∞
+==
∞
+==
∑∑∞
=
∞
=
−∆−−∆−==+1i
i1i
ip )it(vd)it(ug)t(y)t(n)jt(n
∑∑∑∑
∑∑∞
=
∞
=
∞
+==
∞
+==
−∆−−∆−+−+∆+−+∆+
+−+∆+−+∆=+
1ii
1iip
1jii
j
1ii
1jii
j
1ii
)it(vd)it(ug)t(y)ijt(vd)ijt(vd
)ijt(ug)ijt(ug)jt(y
Predicción:
Hipótesis:
Separar términos que dependen del futuro y del pasado
DMC: Respuesta libre
∑∑∑
∑∑∑
∑∑
=
∞
=+
∞
=+
=
∞
=
∞
+=
∞
=
∞
+=
−+∆+−∆−+−∆−+=
−+∆+−∆−−+∆+
+−∆−−+∆+=
j
1ii
1iiij
1iiijpj
j
1ii
1ii
1jii
1ii
1jiipj
)ijt(vd)it(v)dd()it(u)gg()t(yp
es esto
)ijt(vd)it(vd)ijt(vd
)it(ug)ijt(ug)t(yp
∑∑∑==
+=
+ −+∆++−∆−+−∆−+=j
1ii
N
1iiij
N
1iiijpj )ijt(vd)it(v)dd()it(u)gg()t(yp
2N,....,1Nj ,Ni 0dd 0gg iijiij =>≅−≅− ++En procesos estables:
se necesita una hipótesis sobre la evolución futura de v, usualmente v(t+j) = v(t) + horizonte móvil
Corrección feedforward automatica
( ) ( ) ( )y t j G q u t j pj j+ = + +−1 ∆
y(t+j)
u(t+j) t
)jt(yp fj +=
Respuesta forzada:
Respuesta libre:
)jt(u)q(G 1j +∆−
Formalmente la misma expresión. El efecto de la perturbación esta incluido en la respuesta libre
Restricciones
Las restricciones en los valores que pueden tomar las variables aparecen de forma natural en la formulación de los problemas de control: – Limitaciones físicas de las variables – Límites de seguridad – Requisitos de calidad, etc.
Restricciones
Mm L)jt(yL ≤+≤
Lmax
Lmin
v ∆u
Mm D)jt(uD ≤+∆≤
Mm U)jt(uU ≤+≤Rango de las señales de control
Velocidad de cambio de u:
Rango de las variables controladas:
Deben ser añadidas a la formulación del problema de optimización
DMC con restricciones
L y t j g u t k j p t j L
j N
m kk
j
M≤ + = − + + + ≤
==
∑ ( ) ( ) ( )
, . . . . ,
∆1
1 2
D u t j D
U u t u t j U
j Nu
m M
m Mi
j
≤ + ≤
≤ − + + ≤
==∑
∆
∆
( )
( ) ( )
, . . . ,
1
00
[ ] [ ]∑ ∑=
−
=
+∆β++−+=∆
2N
1Nj
1Nu
0j
22 )jt(u)jt(w)jt(yu
Jmin
u
Programación cuadrática QP
QP
∆u(t)
∆u(t+1) 0x
bAx
xQ
≥≤
⋅⋅+⋅ xxc21 min
x
Software numérico eficiente
Ha de resolverse un problema QP en línea cada periodo de muestreo
Posibles problemas de factibilidad
Región factible
Formulación Multivariable
Se necesita un modelo que relacione las variables controladas con las manipuladas y perturbaciones medibles
y ty t
y t
M MM M
M M
u tu t
u t
n tn t
n tn
m
m
n n nm m n
1
2
11 12 1
21 22 2
1 2
1
2
1
2
( )( )
....( )
...
( )( )
...( )
( )( )
...( )
=
+
M ... M ...
M ...
Reactor
FT
FC
FC
TT AT
MPC
Comp.
Refrigerante Producto
u1 u2
Alimentación
Temp TT
SP Temp SP Comp.
FT
DMC Multivariable
y t g u t i g u t i g v t i n t
y t g u t i g u t i g v t i n t
y t g u t i g u t i g v t i n
ii
ii
ii
ii
ii
ii
ii
ii
ii
1 11 11
12 21
131
1
2 21 11
22 21
231
2
3 31 11
32 21
331
3
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) (
= − + − + − +
= − + − + − +
= − + − + − +
=
∞
=
∞
=
∞
=
∞
=
∞
=
∞
=
∞
=
∞
=
∞
∑ ∑ ∑
∑ ∑ ∑
∑ ∑ ∑
∆ ∆ ∆
∆ ∆ ∆
∆ ∆ ∆ t)
u1
u2
y1
y2
y3
v
modelo interno
Modelo interno
t
y yy t
t
t
y
t
y
t
y
y1
y2
u1 u2 v
Matriz dinámica
DMC Multivariable
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
y t j g u t i j g u t i j p t j
y t j g u t i j g u t i j p t j
y t j g u t i j g u t i j p t j
ii
j
ii
j
ii
j
ii
j
ii
j
ii
j
1 11 11
12 21
1
2 21 11
22 21
2
3 31 11
32 21
3
+ = − +∑ + − +∑ + +
+ = − +∑ + − +∑ + +
+ = − +∑ + − +∑ + +
= =
= =
= =
∆ ∆
∆ ∆
∆ ∆
Predicciones:
Min funcion de costo:
γ Equal concern errors , factores de peso (y normalización)
Con restricciones lineales: problema QP
[ ] [ ]
[ ] [ ] [ ]∑∑∑
∑∑−
=
−
==
==
+∆β++∆β++−+γ+
++−+γ++−+γ=∆
1Nu
0j
222
1Nu
0j
211
2N
1Nj
2333
2N
1Nj
2222
2N
1Nj
2111
21
)jt(u)jt(u)jt(w)jt(y
)jt(w)jt(y)jt(w)jt(yu
Jmin
MPC Multivariable
( ) ( )∑ ∑ ∑∑= =
−
==+∆+∆
+∆β++−+γ=N
1k
2N
1Nj
1Nu
0j
2kk
M
1K
2kkk)jt(u)jt(u
k
k
k
kk
)jt(u)jt(w)jt(yminJmin
con:
Dmk< ∆uk(t+j)< DMk Umk< uk(t+j)< UMk Lmk< yk(t+j)< LMk
)jt(p)ijt(ug)jt(y k
j
1isiks
n
1sk ++−+∆=+ ∑∑
==
Resuelto como un problema de Programación cuadrática cada periodo de muestreo
Optimización Económica
Reactor
FT
FC
FC
TT AT
MPC
Comp.
Refrigerante Producto
u1 u2
Alimentación
Temp TT
w Temp w Comp. ¿Cual es el mejor punto de trabajo?
¿Como ajustar las referencias wTemp, wComp a ese punto?
FT
Reactor
FT
FC
FC
TT AT
MPC
Comp.
Refrigerante Producto
u1 u2
Alimentación
Temp TT
w Temp w Comp.
FT
Optimización Económica
Función de costo economica:
(Producto*concentración*precio-
– materia prima*precio –
-Flujo refrigerante*precio)*
tiempo
Max Beneficio
Con las restricciones y el mismo modelo que el MPC
Optimizador Económico (RTO)
Optimización de consignas
MBPC
w
y
SP
DCS Proceso
Optimización económica
LP La mayor parte de los sistemas incorporan una capa deOptimización en linea del punto de trabajo con criterios económicos
Tendencia: Combinar las dos capas en un solo MPC donde el criterio es directamente económico
Optimo Económico
Optimización con restricciones
Apertura válvula
Temperatura
Velocidad Turbina
∆ P en columna Presión
Composición
Región de Operación
Preferida por el Operador
Región de Operación del Controlador
Aceptación industrial