Está en la página 1de 51

Control Predictivo basado en

Modelos (MPC)
Prof. Cesar de Prada
Dpto. Ingenieria de Sistemas y Automática
Universidad de Valladolid, España

e-mail: prada@autom.uva.es
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

v DV

w u y
Controlador Proceso
SP MV CV
El regulador PID

e( t ) = w( t ) − y( t )
 1 de 
u( t ) = K p  e( t ) + ∫ e( τ )dτ + Td 
 Ti dt 

 regulador basado en señal, no incorpora


conocimiento explícito del proceso
 3 parámetros de sintonia Kp, Ti, Td
 diversas modificaciones
Regulación automática
convencional

Temp
TC
FC

FT

TT
FC
Producto
FT

Reactor
Refrigerante
AT
Conc.
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
La interacción entre
wT wc los lazos puede
impedir un
u2 u1 funcionamiento
TC AC adecuado

FC

FT

TT AT Materia prima
FC

FT

Reactor
Refrigerante
Productos
Interacción El control multivariable
tiene en cuenta la
interacción entre las
variables y trata de
Temp Conc. controlar la unidad de
proceso como un todo
u2 u1
MPC
FC

FT

TT AT
Reactivo
FC

FT

Reactor
Refrigerante

Producto
Procesos multivariables
(MIMO)
PT PC
En procesos multivariables
la interacción crea problemas TT

LT LC
de control. Además cuando hay R
restricciones en las variables, F
perturbaciones, etc. las FT FY D
TC FC FT
llamadas estructuras de TC
control no siempre dan buenos
FT FC TT
resultados y son difíciles de
mantener. V LT

En consecuencia, a menudo la
unidad se regula manualmente LC

por un operario.
Control Multivariable
PT PC
El control multivariable, y en
particular el MPC, tiene en TT

LT LC
cuenta la interacción entre las R
variables, sus restricciones, F
las perturbaciones, etc. y D
FT FC FT
permite realizar un control
eficiente de forma
automática, FT FC
TT
MPC
abriendo las puertas a la V LT

optimización de su punto de
operación. LC
Control y optimización

límite superior
ref
ref

tiempo
•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.
Un mejor control permite la
optimización del punto de trabajo

pulpa gases

aire

Secadero
Hogargar

Gas
límite

MC MT Humedad
de pulpa SP
seca
w Pulpa
seca
W1 W2
Control y Optimizacion

limite

W1 W2

 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
Pirámide de control

El control avanzado opera


sobre el control convencional,
aplicado al funcionamiento de
una unidad de proceso y añade
Optimización local nuevas fucionalidades teniendo
Control en cuenta la interacción entre
Predictivo
MPC las variables, las restricciones y
la optimización continua de su
operación.
PID,
Regulación convencional DCS,..

Válvulas,
Instrumentación Transmisores
JERARQUIA DE CONTROL
Nivel 3 Para poder abordar problemas
Optimización de un nivel, los niveles inferiores
Interes económico
han de funcionar correctamente
Nivel 2
Control Avanzado En concreto, la optimización
económica exige que el nivel
Nivel 1 de control funcione
Control Convencional adecuadamente
PID, DCS

nivel 0
Instrumentación
de Campo
Control Predictivo MPC

 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, …..

v
w u y
Optimizador Proceso

y(t+j) Predictor
Control Predictivo

u(t+k|t)
u(t)
MV

tiempo
pasado futuro
Señal de referencia
SP
^
CV Predicción de la salida: y(t+k|t)

... tiempo
t t+1 t+2
MPC, Optimización

v
w
Optimizador u y
Proceso
y(t+j)
Predictor

Nu −1
= ∑ [ŷ( t + j) − w ( t + j)] + ∑ [β∆u ( t + j)]
N2
2 2
min J
u ( t ), u ( t +1),.. j= N1 j= 0

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

...pero necesita un modelo dinámico


Sintonía
del
Sin Modelo Análisis controlador
del proceso

Modelado

Con Modelo Identificación


Especificar
control
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

u(kT)

Ordenador A/D Proceso

y(kT)
D/A

 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 1 y( t − 1) −....− a n y( t − n) + b 1 u( t − 1) +....+ b m u( t − m)

las variables u e y son perturbaciones sobre


un punto de operación y( t ) = Y − Y 0

u( t ) = U − U 0
Modelo respuesta salto

y( t ) = ∑ g ∆u(t − j)
j =1
j

•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
y1 y2 y3

y y
t
u1 y
t t
y y y

u2
t t t

respuesta salto entre cada par entrada/salida


DMC Dynamic Matrix Control
∆z( t ) = z( t ) − z( t − 1)
gi
Modelo: respuesta salto + perturbación

y( t ) = ∑ g i ∆u ( t − i) + n ( t )
i =1
j ∞
Predicciones: y( t + j) = ∑ g i ∆u ( t + j − i) + ∑ g ∆u (t + j − i) + n (t + j)
i
i =1 i = j+1
Modelo de ∞
n( t + j) = n( t ) = y p ( t ) − ∑ g i ∆u( t − i )
perturbación: i =1

j ∞

Predicciones: ŷ( t + j) = ∑ g i ∆u ( t + j − i) + ∑ g ∆u ( t + j − i) +
i
i =1 i = j+1

+ y p ( t ) − ∑ g i ∆u ( t − i)
i =1
DMC, Dynamic Matrix Control
j ∞ ∞
ŷ( t + j) = ∑ g i ∆u ( t + j − i) + ∑ g ∆u ( t + j − i) + y
i p ( t ) − ∑ g i ∆u ( t − i)
i =1 i = j+1 i =1
∞ ∞
p j = y p (t) + ∑ g ∆u (t + j − i) − ∑ g ∆u (t − i) =
i = j+1
i
i =1
i

= y p ( t ) + g j+1∆u ( t − 1) + g j+ 2 ∆u ( t − 2) + ... − g1∆u ( t − 1) − g 2 ∆u ( t − 2) − ....



p j = y p ( t ) + ∑ (g j+ i − g i )∆u ( t − i)
i =1 gi
In asymptotically stable systems:

g j+ i − g i ≅ 0 d j+ i − d i ≅ 0 i > N, j = N1,...., N 2
N
p j = y p ( t ) + ∑ (g j+ i − g i )∆u ( t − i) Free response of the system
i =1 at time t
DMC, Dynamic Matrix Control

j
Predicciones: ŷ( t + j) = ∑ g i ∆u ( t + j − i) + p j Respuesta forzada + libre
i =1

y ( t + j) = G j (q −1 )∆u( t + j) + p j p

G j (q −1 ) = g1q −1 +......+ g jq − j
N u(t-1)
p j = y p ( t ) + ∑ (g j+ i − g i )∆u ( t − i)
i =1

p respuesta libre
DMC, elección óptima de u
Nu −1
J = ∑ [ y ( t + j) − w( t + j)] + ∑ [β∆u( t + j)]
N2 2 2
Min :
j= N1 j= 0
w

y(t+j)
−1
y ( t + j) = G j (q )∆u( t + j) + p j
Horizonte de Predicción
time
t N1 N2
Estructura del control:
u(t-1)
u(t)
∆u(t+j) = 0 j ≥ Nu
Nu control horizon
time
t Horizonte Nu
de Control
DMC
Nu −1
= ∑ [ y ( t + j) − w( t + j)] + ∑ [β∆u( t + j)]
N2 2 2
min J
∆u(t), ∆u(t+1),.. j= N1 j= 0

y ( t + j) = G j (q −1 )∆u( t + j) + p j
Puede formularse en forma matricial:

∆u( t )' = [ ∆u( t ), ∆u( t + 1),..., ∆u( t + Nu − 1)]


e 0 ' = [w ( t + N1) − p N1 , w ( t + N1 + 1) − p N1+1 ,..., w ( t + N 2) − p N 2 ]
 g N1 ... g1 0 ... 0 
g ... g 2 g1 0 ... 0 
 N 1+ 1 
G =  ... ... ... ... ... ... 0 
 ... ... ... ... ... ... ... 

 g N 2 ... ... ... ... ... g N 2 − Nu +1 

J = ∆u' ( t )[G ' G + β I ]∆u( t ) − 2e 0 ' G∆u( t ) + e 0 ' e 0


DMC

J = ∆u' ( t )[G ' G + β I ]∆u( t ) − 2e 0 ' G∆u( t ) + e 0 ' e 0


Si no hay restricciones:

∂J
=0
∂∆u
− 2G ′[e 0 − G∆u ] + 2β∆u = 0

∆u( t ) = [G ' G + βI ] G ' e 0


−1

∆u( t ) = [G ' G + β I ] G ' (w − p j )


−1

Acción Integral Sintonía: Horizontes, β


Compensación de retardos Sistemas estables en lazo abierto
Parámetros DMC
N2 Nu −1
min J =
∆u ( t + j)
∑ [ŷ( t + j) − w( t + j)]
j= N 1
2
+ ∑ [β
j= 0
∆ u ( t + j) ]2

w
y(t+j)

β Factor de horizonte de coincidencia


peso tiempo
Move t N1 horizonte de N2
supression predicción
factor
u(t)
u(t-1)
∆u control
moves Nu
tiempo
t horizonte
de control
DMC offset

DMC predicciones: y ( t + j) = G j (q −1 )∆u( t + j) + p j

En estado estacionario: ŷ = p ss
N
y como p j = y p ( t ) + ∑ (g j+i − g i )∆u ( t − i) ⇒ p ss = y p
i =1

⇒ ŷ = y p

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
v perturbación medible

u y
+
variable controlada
variable manipulada
n perturbaciónes no medibles

∞ ∞
Modelo DMC: y( t ) = ∑ g ∆u( t − i) + ∑ d ∆v( t − i) + n( t )
i =1
i
i =1
i
Predicciones (DMC) con
perturbaciones conocidas
Predicción: Separar términos que dependen del futuro y del pasado
j ∞
y( t + j) = ∑ g i ∆u ( t + j − i) + ∑ g ∆u (t + j − i) +
i
i =1 i = j+1
j ∞
+ ∑ d i ∆v( t + j − i) + ∑ d ∆v(t + j − i) + n (t + j)
i
i =1 i = j+1

∞ ∞
Hipótesis: n ( t + j) = n ( t ) = y p ( t ) − ∑ g i ∆u ( t − i) − ∑ d i ∆v( t − i)
i =1 i =1

j ∞
ŷ( t + j) = ∑ g i ∆u ( t + j − i) + ∑ g i ∆u ( t + j − i) +
i =1 i = j+1
j ∞ ∞ ∞
+ ∑ d i ∆v( t + j − i) + ∑ d i ∆v( t + j − i) +y p ( t ) − ∑ g i ∆u ( t − i) − ∑ d i ∆v( t − i)
i =1 i = j+1 i =1 i =1
DMC: Respuesta libre
∞ ∞
p j = yp (t) + ∑
i = j+1
g i ∆u ( t + j − i) − ∑ g i ∆u ( t − i) +
i =1
∞ ∞ j
+ ∑
i = j+1
d i ∆v( t + j − i) − ∑ d i ∆v( t − i) + ∑ d i ∆v( t + j − i)
i =1 i =1

esto es
∞ ∞ j
p j = y p ( t ) + ∑ (g j+i − g i )∆u ( t − i) + ∑ (d j+i − d i )∆v( t − i) + ∑ d i ∆v( t + j − i)
i =1 i =1 i =1

En procesos estables: g j+i − g i ≅ 0 d j+i − d i ≅ 0 i > N, j = N1,...., N 2


N N j
p j = y p ( t ) + ∑ (g j+i − g i )∆u ( t − i) + ∑ (d j+i − d i )∆v( t − i) + + ∑ d i ∆v( t + j − i)
i =1 i =1 i =1

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

Respuesta forzada: G j (q −1 )∆u ( t + j)

Respuesta libre: p j = ŷ f ( t + j)
y(t+j)

u(t+j)
t

y ( t + j) = G j (q −1 )∆u( t + j) + p j

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

Lmax

∆u
v

Lmin
Rango de las señales U m ≤ u ( t + j) ≤ U M Deben ser añadidas a
de control la formulación del
Velocidad de cambio D m ≤ ∆u ( t + j) ≤ D M problema de
de u: optimización
Rango de las L m ≤ ŷ( t + j) ≤ L M
variables controladas:
DMC con restricciones

Nu −1

∑ [ŷ(t + j) − w (t + j)] + ∑ [β∆u (t + j)]


N2
2
minJ =
2

∆u j= N1 j= 0

D m ≤ ∆u( t + j) ≤ D M
j
u
U m ≤ u( t − 1) + ∑ ∆u( t + j) ≤ U M
i=0

j = 0, . . . , Nu
j
L m ≤ y ( t + j) = ∑ g k ∆u( t − k + j) + p( t + j) ≤ L M
k =1

j = 1, . . . . , N 2 Programación cuadrática QP
QP
1
min c ⋅ x + x ⋅ Q ⋅ x
x 2
Ax ≤ b
x ≥0
∆u(t+1)
Ha de
resolverse un
Posibles problema QP
problemas de en línea cada
factibilidad periodo de
muestreo
Software
Región numérico
factible eficiente

∆u(t)
Formulación Multivariable

SP Temp SP Comp.

y1 ( t )  M11 M12 ... M1m  u1 ( t )  n1 ( t ) 


y ( t )  M M ... M  u ( t )  n ( t )  u
2 u 1

 2  =  21 22 2m  2 + 2  MPC
....  ...  ...  ... 
       FC
y n ( t )  M n1 M n 2 ... M nm  u m ( t )  n n ( t )  Temp Comp. TT
FT

TT AT
FC
Se necesita un modelo Alimentación
que relacione las FT

variables controladas Reactor


con las manipuladas y
perturbaciones medibles Refrigerante
Producto
DMC Multivariable

v u1 u2 v

y y
y1 t
y1 y
u1 t t
y2 y y y
Modelo
modelo interno
u2 y2
interno y3 t t t

Matriz dinámica
∞ ∞ ∞
y1( t ) = ∑ gi11∆u1( t − i) + ∑ gi12 ∆u2 ( t − i) + ∑ gi13 ∆v( t − i) + n1( t )
i =1 i =1 i =1
∞ ∞ ∞
y 2 ( t ) = ∑ gi21∆u1( t − i) + ∑ gi22 ∆u2 ( t − i) + ∑ gi23 ∆v( t − i) + n2 ( t )
i =1 i =1 i =1
∞ ∞ ∞
y 3 ( t ) = ∑ gi31∆u1( t − i) + ∑ gi32 ∆u2 ( t − i) + ∑ gi33 ∆v( t − i) + n3 ( t)
i =1 i =1 i =1
DMC Multivariable

j j
Predicciones: y 1( t + j) = ∑ gi11∆u1( t − i + j) + ∑ gi12 ∆u2 ( t − i + j) + p1( t + j)
i=1 i=1
j j
y 2 ( t + j ) = ∑ gi21∆u1( t − i + j ) + ∑ gi22 ∆u2 ( t − i + j ) + p 2 ( t + j )
i=1 i=1
j j
Min funcion y 3 ( t + j ) = ∑ gi31∆u1( t − i + j ) + ∑ gi32 ∆u2 ( t − i + j ) + p3 ( t + j )
i=1 i=1
de costo:

min J = ∑ γ1 [ŷ1 ( t + j) − w 1 ( t + j)] + ∑ γ 2 [ŷ 2 ( t + j) − w 2 ( t + j)] +


N2 N2
2 2

∆u j= N1 j= N1
Nu1 −1 Nu 2 −1
+ ∑ γ 3 [ŷ 3 ( t + j) − w 3 ( t + j)] +
N2

∑ [β1∆u1 (t + j)] + [
∑ 2 2
β ∆ + ]
2 2 2
u ( t j)
j= N1 j=0 j=0

γ Equal concern errors , factores de peso (y normalización)


Con restricciones lineales: problema QP
MPC Multivariable

Nu k −1
γ k (ŷ k ( t + j) − w k ( t + j) ) + ∑ ( )
N N 2k M

∑∑ ∑ k k
2
min J = min β ∆ + 2
u ( t j)
∆u k ( t + j) ∆u k ( t + j)
k =1 j= N1k K =1 j= 0

n j
con: ŷ k ( t + j) = ∑ ∑g iks ∆u s ( t + j − i) + p k ( t + j)
s =1 i =1

Dmk< ∆uk(t+j)< DMk


Umk< uk(t+j)< UMk
Lmk< yk(t+j)< LMk
Resuelto como un problema de Programación cuadrática cada periodo de
muestreo
Optimización Económica

w Temp w Comp.
¿Cual es el mejor punto
de trabajo?
u
2 u 1

¿Como ajustar las MPC


referencias wTemp,
FC
wComp a ese punto? Temp Comp. TT
FT

TT AT
FC
Alimentación
FT

Reactor
Refrigerante
Producto
Optimización Económica

Optimizador
Función de costo economica: Económico (RTO)
(Producto*concentración*precio- w Temp w Comp.
– materia prima*precio – u
2 u 1

-Flujo refrigerante*precio)*
MPC
FC
tiempo Temp Comp. TT
FT

TT AT
FC
Max Beneficio Alimentación
FT
Con las restricciones y el mismo
modelo que el MPC
Reactor
Refrigerante
Producto
Optimización de consignas

La mayor parte de los


LP
sistemas incorporan una
Optimización capa deOptimización en linea
económica del punto de trabajo con
criterios económicos
Tendencia: w SP
Combinar las
dos capas en un MBPC DCS Proceso y
solo MPC
donde el
criterio es
directamente
económico
Optimización con
Optimo
restricciones Región de
Operación
Económico
del Controlador

Velocidad Turbina

∆ P en columna
Presión

Región de
Operación
Preferida por
el Operador

Temperatura
Composición
Apertura válvula
Aceptación industrial

También podría gustarte