Professional Documents
Culture Documents
2
+ + + + =
j t u j j t r t j t y j N N N J
N N
u
( ) ( ) ( ) ( ) [ ] ( ) ( ) [ ]
1
2 1
1 | , ,
1
+ + + + =
= =
j t u j j t r t j t y j N N N J
N j j
u
Esfuerzo de control Seguimiento de referencias Esfuerzodecontrol Seguimientodereferencias
s(t)
r
1
(t+k)
r
2
(t+k)
y(t)
t
15
t
Pasado Futuro
Importante!
i k
k y
+ en ocurrir que lo de
prediccin una tenemos solo en que significa
notacin La
( ) ( )
i k +
. en ocurrir que lo de
( ) ( ) k i k y i k y + +
V i bl i l d d l
Reactorqumico
Ai Ai
T C ,
Variablemanipulada: temperaturadel
refrigerante,Tc
Perturbacinmedida: Temperaturadeentrada,T
Ai
C
T
T
A
C
p ,
Ai
Perturbacinnomedida: Concentracinde
entrada,C
Ai
17
T
Salidamedida: Temperaturadelproducto,T
Salidanomedida: Concentracindesalida,C
A
Buenos Modelos para MPC Buenos Modelos para MPC
Buena descripcin de la planta para
capturar las dinmicas ms
significativas
Suficientemente simple para poder
realizar la optimizacin On-Line realizar la optimizacin On-Line
18
Posibles Modelos para MPC Posibles Modelos para MPC
Lineales
Respuesta al escaln/impulso
Espacio de estados/funcin transferencia
No lineales No lineales
Modelo de primeros principios
Mltiples modelos lineales Mltiples modelos lineales
Redes neuronales
Modelos ARX, ARMAX, NARMAX
Robustos
Modelo lineal + descripcin de incertidumbre
Hb id (E d di i ) Hbridos (Estados discretos y continuos)
Mixed Logical Dynamical Systems
Piecewise Affine Systems Piecewise Affine Systems
19
ModelosusandoToolboxes deMATLAB
Latoolbox deMATLABrequierequeelmodelosea
li l i i t l ti (LTI) S d linealeinvarianteeneltiempo(LTI).Sepuede
definirunmodeloconestascaratersticas dela
siguientes maneras: siguientesmaneras:
Crear una funcin transferencia espacio de Crearunafuncintransferencia,espaciode
estadoomodelodeceros/polos/ganancia:
ControlSystem Toolboxsoftware y
Apartirdelaplanta:Identification Toolbox
software software
Linealizando unmodelo:Simulink model
20
Resolucin del MPC con un punto de
i id i i i t d t l coincidencia y un movimiento de control
( ) ( ) ( ) ( ) k k u H S k H k y k H k y + + = +
( ) ( ) ( ) ( )
( ) ( )
P P f P
donde
k k u H S k H k y k H k y + + = +
:
( ) ( )
( )
P P
H H S
k u k k u k k u =
en escaln la respuesta la es
) 1 (
( )
( ) ( )
P P
k k k k
queremos
H H S
:
en escaln la respuesta la es
( ) ( )
P P
entonces
k H k r k H k y + = +
:
( )
( ) ( )
( )
P P
H S
k H k y k H k r
k k u
+ +
=
( )
P
H S
21
22
J.M.Maciejowski,PredictiveControlwithConstraints,Pearsoneducation,2002
ss
3
2
y
r(k+2|k)=2.487
y(k+1)=2 2864 2 y(k+1)=2.2864
k-2 k-1 k k+1 k+2
3 6 0 Tiempo (seg)
0 3
u
(k|k)=(k+1|k)=0.4432
0.3
u
23
k-2 k-1 k k+1 k+2
Tiempo (seg)
24
25
Resolucin del MPC con varios puntos de
coincidencia y un movimiento de control
P P P
c
, , , : ia coincidenc de Puntos
2 1
K
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
k k u P S k P k y k P k r
f
1 1 1
+ + = +
( ) ( ) ( ) ( ) k k u P S k P k y k P k r
f
2 2 2
+ + = +
M
( ) ( ) ( ) ( ) k k u P S k P k y k P k r
c c f c
+ + = +
26
Solucin con mnimos cuadrados para
el caso con un movimiento de control
d fi S
( )
( )
( )
( )
( )
( )
P S k P k y k P k r
: define Se
1 1 1
)
( ) ( ) ( )
f
P S
S
k P k y
y
k P k r
+
=
+
=
2 2 2
M M
)
M
( ) ( ) ( )
c c c
P S k P k y k P k r
+
: entonces
)
( ) ( )
f
y S k k u = \
: entonces
)
27
Solucin con mnimos cuadrados para el
caso con varios movimientos de control
( ) ( )
( ) ( ) ( ) ( ) 1
1 |
+ +
+ + = +
k k u P S k k u P S
k P k y k P k y
i i
i f i
( )
( ) ( ) 1
1 + + + + k H k u H P S
u u i
L
+ =
f
u y y
( ) ( ) ( ) ( ) 1
con \ + = = k u k k u k u
f
y y u
Si las restricciones de desigualdad son lineales,
entonces se puede aplicar Programacin
28
Cuadrtica (Quadratic Programming).
: donde
( )
( )
( )
( )
+
+
1
2
1
k k u
k k u
k P k y
k P k y
( )
( )
( )
( )
+
+
=
+
+
=
1
1
2
u c
k H k u
k k u
k P k y
k P k y
M M
u y
( ) ( ) ( )
( ) ( ) ( )
0 0 0 0 1 1
1 1
S P S P S L L L
( ) ( ) ( )
( ) ( ) ( )
=
1 1
0 0 1 1
2 2
H P S P S P S
S P S P S
M M M M M M M M M M
L L L L L
( ) ( ) ( )
+ 1 1
u c c c
H P S P S P S L L L L L L L
29
Que pasa si el modelo no es exacto? Que pasa si el modelo no es exacto?
Solucin: modelar como perturbacin p
Asumir que el error se debe a una perturbacin: q p
( ) ( ) ( ) 1
= k k y k y k d
Asumir que la misma perturbacin se mantiene:
( ) ( )
f
k d y 1 y u = \
Introduce Feedback!
30
Se puede demostrar que acta como un Se puede demostrar que acta como un
integrador discreto en el tiempo.
Req i ito Q e l pl nt el modelo e n Requisito: Que la planta y el modelo sean
asintticamente estables.
Tambin puede ser aplicado a plantas
marginalmente estable.
Si el modelo es inestable, necesita ser
estabilizado estabilizado.
Se puede lograr realineando el modelo
l lid d l l t i t d con las salidas de la planta, i.e. tomando
las salidas de la planta como condiciones
i i i l d l d l iniciales del modelo.
31
Realinear basado en datos
= =
+ =
n
i
n
i
i m i m
i k u b i k y a k y
1 1
inestable) modelo ( ) ( ) ( ) (
( ) ( ) ( ) ( )
= =
+ + + + = +
n
i
n
i
i p i
i k u b k k u b i k y a k k y
1 2
1
1 1 1
( ) ( ) ( )
=
+ + + = +
n
n
i
p i
i k y a k k y a k k y
2
1
2 1 2
( ) ( ) ( )
M
=
+ + + +
n
i
i
i k u b k k u b k k u b
3
2 1
2 1
M
La clave es usar datos de la salida medidos siempre que sea
posible.
Problema: se pierde el seguimiento de consigna sin
error:1y
m
-y
p
0 porque ahora el modelo tiene no solo como
t d (k) i t bi (K)
32
entradas a u(k) sino tambin a y
p
(K)
Historia Historia
Richalet etalen1978:Model Predictive Heuristic
Control
Cutler and Ramaker en 1980: Dynamic Matrix Cutler andRamaker en1980:Dynamic Matrix
Control(DMC)
Martin Sanchez en 1976: primer patente (Adaptive MartinSanchez en1976:primerpatente(Adaptive
Predictive Control)
P i 1963 Kl i 1970 K P Propoi en1963,Kleinmanen1970,KwonyPearson
en1975,Rouhani yMehra en1982:publicaciones
id i il conideassimilares
33
Terminologa Terminologa
ModelPredictiveControl(MPC) ( )
ModelBasedPredictive Control(MBPC)
D i M t i C t l (DMC) Dynamic Matrix Control(DMC)
ExtendedPredictionSelfAdaptiveControl(EPSAC)
Generalised Predictive Control(GPC)
Model Algorithmic Control (MAC) Model Algorithmic Control(MAC)
Predictive Functional Control(PFC)
Quadratic Dynamic Matrix Control(QDMC)
Sequential Open Loop Optimization (SOLO) SequentialOpenLoopOptimization(SOLO)
34
Estructura Jerrquica EstructuraJerrquica
Optimizacindelsetpoint Optimizacindelsetpoint
C l P di i C l P di i ControlPredictivo ControlPredictivo
dd Actuadores Actuadores
35
FormulacinbsicadeMPC
Modelodelaplanta
) ( ) ( ) 1 ( k B k A k
) ( ) (
) ( ) ( ) 1 (
y
k x C k y
k Bu k Ax k x
=
+ = +
) ( ) (
z
y
k x C k z =
estado de vector
n
x
entradas
l
u
s controlada salidas
medidas salidas
z
y
m
m
z
y
36
s controlada salidas z
Secuencia de acciones Secuenciadeacciones
1. Obtenermedidasy(k)
2. Computar las secuencia de entradas de la 2. Computar las secuencia deentradas dela
planta u(k+i|k) i=0,, H
u
-1
3 A li (k|k) l l 3. Aplicar u(k|k) alaplanta
Notar: Nohaytransferencia directa desde u toy
( t i D) (matriz D).
37
38
Casosinperturbacinymedicindeestados
+ + + = +
+ = +
|k) (k u B |k) (k x A |k) (k x
(k|k) u B Ax(k) |k) (k x
1
+ + + =
+ + + = +
|k) (k u B ABu(k|k) x(k) A
|k) (k u B |k) (k x A |k) (k x
1
1 1 2
2
M
1
M
+ + + + =
|k) - H (k u B . . . (k|k) u B A x(k) A
p
H H
p p
1
1
( )
+ = + k k x C k k z
z
| 1
) | 1 (
y
( )
+ = + k k x C k k z
z
| 2
) | 2 (
M
39
( )
+ = + k H k x C k H k z
p z p
|
) | (
M
Enformamatricial
B
M
M
M
- H
i
H
B A
B
A
A
|k) (k x
u
1
1
M
M M
H
i
i
i
H
H
u
u
) u(k
B A
B A
x(k)
A
A
|k) H (k x
|k) H (k x
u
u
u
+
+ +
+
=
=
+
1
1
0
0
1
4 4 4 4 4 4 3 4 4 4 4 4 4 2 1
M
M M
H
i
i
H
B A
A
Hp|k) (k x
p
p
=
1
0
L
L
pasado
B AB
B
+ 0
0
M
L
M O M
H
i
i
u(k|k)
B B A
B AB
u
=
0
1
0
M M M
L
u
H H H
H
i
i
i
|k) - H u(k B AB B A
u
=
=
1
1
0
0
40
4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 1
L
futuro
H H
i
i
H
i
i
B A B A
u p p
= 0
1
0
y
+ ) | 1 (
0 0
0 0
) | 1 (
y
k k x
C
C
k k z
z
z
M
L
L
M
+ ) | (
0 0
) | ( k H k x
C
C
k H k z
p
z
z
p
M
L
M M M
M
41
Casoconperturbacinconstante
1Suposicin: lasalidacontroladaylasalida
did l i ( ) medidasonlamisma.
) | (
) 1 | (
) ( k k d k k y k y + =
( ) y z =
2 S i i l b i
) | (
) 1 | (
) | ( ) | ( ) (
k k d k k x C
y y
y
+ =
2Suposicin:laperturbacinpermanece
constantealolargodelhorizontedeprediccin
) | (
) | (
) | (
) | ( k i k d k i k x C k i k y k i k z
y
+ + + = + = +
) | (
) | (
: donde
k k d k i k d = +
42
) | ( ) | ( k k d k i k d +
Entonces,loquesedebehacerelinstantek eslo
siguiente:
1. Medirlasalidadelaplantaactualy(k). y( )
2. Estimarlaperturbacincomoladiferenciaentre
lasalidaactualylasalidaestimada.
3. Usarestaestimacinparapredecirlassalidasa
lolargodelhorizontedeprediccin.
Nota:
( ) ( ) cuando aun |
I C k i k x k i k y
y
= + + ( ) ( )
.
+
) (
0 1
k u
B k x A k x
( ) ( )
[ ]
( )
( )
+
) (
) (
0 0 1
y
k d
k x
I C k y
k d I k d
( )
( )
[ ]
( )
+
) ( ) (
1 | 0 1
x x
k y
L
k u
B k k x
I C
L A k x
k d
( )
[ ]
( )
( ) ( ) ( ) + =
+
1 | |
pero
) ( ) (
0 1 |
0 1
y
d
y
d
k y k k x C k k d
k y
L
k u
k k d
I C
L I k d
( ) ( )
=
= +
0
L
L
L entonces
|
| 1
y
x
I
k k d k k d
[ ]
0
0
0
0
y
L
d
y
d
x
C
A
I C
L
L
I
A
I
44
0
0
y
d
C
L I
) (k u
) (k x ) (k y
B
) (k u
) (k x ) (k y
C
1
z
+
+
A
PLANTA
+
L
( ) 1 | k k
+ -
B C
1
z
( ) 1 | k k x
( ) 1 | k k y
+
+
A
OBSERVADOR
45
( )
[ ]
( )
+ 1 |
0 1
L B k k x L A k x( )
( )
[ ]
( )
( )
+
+
) ( ) (
0 1 |
1 |
0
0
1
1
d
x
y
d
x
k y
L
L
k u
B
k k d
k k x
I C
L
L
I
A
k d
k x
( ) ( ) ( ) + = 1 |
pero
y
k y k k x C k k d
( ) ( ) = + |
| 1
y
k k d k k d
0 L
L
entonces
x
=
y
L
L
d
x
I
[ ]
0
0
0
0
y
y
d
x
C
A
I C
L
L
I
A
46
0
0
y
d
C
L I
i ifi l l d l b d Esto significa que lospolos delobservador seencuentran en
lossiguientes sitios (matriz triangular):
Polos delaplanta (nohayproblema si laplanta es estable)
Cero:seobtiene estimacin deadbeat
Conclusiones:
Sepueden usar diferentes ganancias deobservador conel
mismo modelo de perturbacin mismo modelo deperturbacin.
Sepuede usar elmismo enfoque conotros modelos de
perturbacin.
Almomento depredecir,reemplazar por
) (k x ) | (
k k x
47
Funcin de costo cuadrtica Funcindecostocuadrtica
H H
u P
1
2 2
Q
i|k) (k u i|k) k i|k) - r( (k z V (k)
T
i
i R
H i
i Q
u P
w
= + + + + =
= =
: Notacin
0
2
0
2
) (
2
) (
H H
x Q x x
T
Q
=
1 U l t t d t l d C i
: ajuste de Parmetros
: Notacin
H i i|k) (k H
Hu Hp H
H H
P
w w
+
=
0
C t l d H i t
. Prediccin de Horizonte
1. e Usualment costo. de ventana la de Comienzo
R(i)
Q(i)
H i i|k) (k u H
u u
= +
control de s movimiento los de n Penalizaci 0
salida. de error del n Penalizaci 0
para 0 Control. de Horizonte
i) u(k i|k) (k u
R(i)
+ +
:
control. de s movimiento los de n Penalizaci 0
! Importante
48
i) u(k i|k) (k u + + : ! Importante
Control Predictivo con Restricciones ControlPredictivoconRestricciones
En la prctica todos los procesos estn sujetos a Enlaprcticatodoslosprocesosestnsujetosa
restricciones.
Losactuadores tienenuncampolimitadodeaccin p
(lmitesfsicos).
Existenlmitesdeseguridad:presionesotemperaturas g p p
mximas.
Requerimientostecnolgicos:mantenervariables,por
l d d ejemplotemperaturas,enunrangodeterminado.
Necesidaddetrabajarcercadelasrestriccionespara
t l fi i i aumentarlaeficiencia.
Limitacionesdecalidad delproductoonormativa
medioambiental medioambiental.
49
En una Estrategia convencional las restricciones EnunaEstrategiaconvencionallasrestricciones
enlavariablemanipuladasepueden
implementarsaturandolasalidadelcontrolador.
Lasrestriccionesdelavariablecontroladano
puedenabordarseyseintentaevitartrabajando p y j
alejadosdeloslmites.
EnelControlPredictivosinrestriccionessila
sealdecontrolcalculadaviolalarestriccin,se
satura(lassealesfuturasnisiquierasetienenen
) S i d l d l i cuenta).Sepierdeelcarcterdecontrolptimo
Laviolacindeloslmitesdelasvariables
controladaspuedesercostosoypeligroso:daos
enequiposyprdidasenlaproduccin
50
ElMPC eslanicametodologacapazdeincorporarlas g p p
restriccionesdeformasistemticaenlafasedediseodel
controlador.
H l t i i f i d l Hayqueexpresarlasrestriccionesenfuncindelas
variablessobrelasquesepuedeactuar.
En los actuadores son bsicamente amplitud y velocidad de Enlosactuadoressonbsicamenteamplitud yvelocidadde
cambio(slewrate).Tambinsepuedenevitarzonas
muertasperoelproblemaesmuchomscomplejo.
EnlasCVs,principalmenteenlaamplitud,perosepueden
conseguirotroscomportamientos:
A lit d i i ( id d) Amplitudmximaymnima(seguridad)
Banda:obligaraunperfildefuncionamiento
Comportamientomontono.Puedeevitarkickback p
Evitarrespuestainicialinversa(sistemasfasenomnima)
Evitarsobreoscilacin
51
Las variables manipuladas siempre se pueden Lasvariablesmanipuladassiempresepueden
mantenerrestringidasrecortandolasalida
l l d l l d calculadaporelcontrolador.
Las restricciones en la salida deben Lasrestriccionesenlasalidadeben
controlarseyaqueestnafectadasporla
di i d l dinmicadelproceso.
No considerar restricciones en la salida puede Noconsiderarrestriccionesenlasalidapuede
darlugarareduccinenbeneficiosycausar
d i daosaequiposopersonas.
52
Restricciones con desigualdades lineales Restriccionescondesigualdadeslineales
) vec( ) |k) - H (k u (k|k) u F vec(
) vec( ) |k), - H (k u . , (k|k), . . u E vec(
u
0 1 1
0 1 1
+
+
) vec( ) |k), H (k z . . , Hw|k), . (k z G vec(
) vec( ) |k), H (k u . , (k|k), . . u F vec(
p
u
0 1
0 1 1
+ +
+
Lasrestriccionespuedenformularseenlassiguientes
variables:
Movimientoenlasentradas
Magnituddelasentradas
Salidascontroladasoestados
53
MPCconrestricciones leydecontrolno
lineal:
MPCtrabajaenmodolinealcuandolaplanta
opera lejos de las restricciones operalejosdelasrestricciones
MPCtrabajaenmodonolinealcuandolaplanta
seacercaalasrestricciones
Ejemplo: control de temperatura en un motor Ejemplo:controldetemperaturaenunmotor
54
Algoritmos de resolucin Algoritmosderesolucin
MODELO
FUNCIN
COSTE
RESTRICCIONES SOLUCIN
Lineal Cuadrtica Ninguna Explcita
Lineal Cuadrtica Lineales QP Lineal Cuadrtica Lineales QP
Lineal Norma1 Lineales LP
55
Control Predictivo con restricciones ControlPredictivoconrestricciones
Lafuncin QUADPROGresuelve elproblema de
programacin cuadrtica: p g
b A
b AX
f
T T
1
i
= +
ub X lb
b A t s X f HX X
eq eq
T T
X
.
2
1
min
Lafuncin QPDANTZ resuelve elproblema de
programcin cuadrtica convexa usando el algoritmo programcin cuadrtica convexa usando elalgoritmo
deDantzigWolfe.
56
Relajacin de las restricciones
Esgravequeelproblemadeoptimizacinresulteno
Relajacindelasrestricciones
g q p p
factible.
Posiblescausas:
Ocurreunagranperturbacininesperada
El modelo de planta difiere demasiado Elmodelodeplantadifieredemasiado
Soluciones:
Mantener la misma entrada que en el paso Mantenerlamismaentradaqueenelpaso
anterior.
Aplicar (k+2|k) computada en el paso anterior Aplicar (k+2|k) computadaenelpasoanterior.
Estrategiasdegestinderestricciones.
R l j l i i Relajarlasrestricciones.
57
Las restricciones de entrada normalmente no se Lasrestriccionesdeentradanormalmentenose
relajan.
Unamaneradirectaderelajarrestriccioneses
agregarvariablesdenominadas variablesdeholgura
(slackvariables).
Son no nulas solo si la restriccin es violada Sonnonulassolosilarestriccinesviolada.
Sonseveramentepenalizadasenlafuncincostode p
maneraqueeloptimizadortratedehacerlanulasies
posible.
58
Relajacin de las restricciones Relajacindelasrestricciones
1
min
2
+ +
T T
s.t.
2
,
+
0
negativo no escalar un es
que dimensin misma la con negativo no un vector es
nes restriccio sin Problema : 0 =
fuertes nes restriccio con Problema :
Continua siendo un problema QP pero con un
59
ContinuasiendounproblemaQPperoconun
mayornmerodevariables
( )
target
2
target
) 0 ( ) 0 ( ) 0 ( ) 0 (
u u
W
u u
J
T
M M M M ( )
target
2
target
) 0 ( ) 0 (
) 1 ( ) 1 ( ) 1 ( ) 1 (
,
=
u u
p u p u
W
p u p u
z J
u
M M M M
2
) 1 (
) 0 (
) 1 (
) 0 (
+
p u
u
W
p u
u
T
u
M M
2 2
) (
) 1 (
) (
) 1 (
) (
) 1 (
) (
) 1 (
+
p r
r
p y
y
W
p r
r
p y
y
y
T
M M M M
) ( ) ( ) ( ) (
p r p y p r p y
) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 (
max max min min
V y y V y
y y
M M M
) 0 ( ) 0 (
) ( ) (
) 0 (
) (
) 0 ( ) 0 (
) ( ) (
max max
max max
min min
min min
V u
p V p y
u
p y
V u
p V p y
t s
y
y
y
y
M
M
M
M
M
M
) 0 ( ) 0 (
) 1 ( ) 1 (
) 0 (
) 1 (
) 0 ( ) 0 (
) 1 ( ) 1 (
. .
max max
max max
min min
min min
V u
p V p u
u
p u
V u
p V p u
t s
y
y
y
y
M
M
M
M
M
M
60
) 1 ( ) 1 ( ) 1 ( ) 1 ( ) 1 (
max max min min
p V p u p u p V p u
y y
M M M
E bilid d MPC EstabilidadenMPC
l i ? Realmenteimporta?
Sisediseaelcontroladorofflinelaestabilidad
i l d l l d bl nominaldellazocerradonoesunproblema.
Esfcilchequearelsistemadiseadoesestable
asumiendo que el modelo es correcto asumiendoqueelmodeloescorrecto.
Estabilidadenlazocerradoesproblemticasisehace
un rediseo online unrediseoon line.
Controlpredictivoimplicarealimentacin.
Aun cuando la performance de la planta se optimiza a Auncuandolaperformancedelaplantaseoptimizaa
lolargodeunhorizonte,cadaoptimizacinnotiene
encuentaloqueocurreluego.
61
EstabilidadenMPC
Restriccionesterminalesaseguranestabilidad
l l di i l d bi S i d
( )
t f i l i i i d
) ( ), ( ) 1 (
planta la para predictivo r controlado un obtiene se que Suponiendo
= + k u k x f k x
( ) ) | 1 (
), | (
) (
costo funcin la o minimizand
+ + =
k i k u k i k x l k V
H
P
( )
0 ) | (
=
k H k x
l u x u x l u x l
i
problema el que siempre estable es 0 0 equilibrio de punto el Entonces
) 0 , 0 ( 0 : equlibrio de punto un es 0 , 0 que Asumimos
0 ) | ( n terminal restricci la a sujeto
= =
= = =
= +
u x
f u x
k H k x
P
Lyapunov de funciones usando demostrar puede Se
paso. cada en resuelve se y factible sea
problema el que siempre estable es 0 , 0 equilibrio de punto el Entonces = = u x
62
Lyapunov. de funciones usando demostrar puede Se
EstabilidadenMPC
Horizonteinfinito
S d i bl h i Sepuedeaproximaraunproblemaconhorizonte
finitoconrestriccinterminal.
Horizontesinfinitosdanestabilidad.
k k+1 k+Hp k+1+Hp
Tiempo
63
k k+1
Tiempo
Como disear el controlador MPC ComodisearelcontroladorMPC
1. Programarelcontroladorusandofunciones
deMATLAB(ejemplo:basicmpc.m) ( j p p )
2. DisearelcontroladorusandolaModel
P di ti C t l T lb MATLAB Predictive ControlToolbox paraMATLAB
3. Usando funciones especficas de la Toolbox 3. UsandofuncionesespecficasdelaToolbox
Uso deobjetos tipo MPC
64
Objetos tipo MPC ObjetostipoMPC
Existen tres tipos de objetos MPC:
1. MPC Controller Object j
2. MPC Simulation Option Object
3. MPC State Object
65
ObjetostipoMPC j p
Todos los parmetros que definen la ley de control MPC
(horizonte de prediccin, pesos, restricciones, etc. ) estn
almacenados en un MPC controller object, los cuales se
constr en en dos etapas construyen en dos etapas:
1. Construccin
Ts =1;
MPCobj =mpc(CSTR,Ts);
2. Initializacin
66
Obj t ti MPC ObjetostipoMPC
Elobjeto tipo mpcsimopt contiene opciones varias para la
simulacin deuncontrolador MPCconelcomando sim:
Si O ti i t( bj) SimOptions=mpcsimopt(mpcobj)
UsarSET/GET paracambiarlaopciones.
Elobjeto tipo mpcstate contiene elestado delcontrolador
MPC: MPC:
mpcstate(mpcobj)
67
Estructura MPC EstructuraMPC
(MATLABToolbox)
68
Ajuste de parmetros en MPC AjustedeparmetrosenMPC
Pesos
Horizontes Horizontes
Modelodeperturbacinydinmicadel
observador
T t i d f i Trayectoriadereferencia
69
EJEMPLO:
Continuous StirredTank Reactor(CSTR.m)
+ B A
dx
Ai
C
+ =
+ =
T
Du Cx y
Bx Ax
dt
C
T
C
=
0 0 1 0
, , : donde
b b
C
T
y
C
T
u
T
C
x
A
A
C
A
i
T
A
C
=
0 0
0 0
,
0 1
1 0
, ,
22 21
12 11
22 21
12 11
D C
b b
b b
B
a a
a a
A
A [ 0 0285 0 0014 CSTR I tN {'T ' C A i'} CSTR t i l (CSTR A=[0.02850.0014
0.03710.1476];
B=[0.08500.0238
0 0802 0 4462];
CSTR.InputName ={'T_c',C_A_i'};
CSTR.OutputName ={'T','C_A'};
CSTR.StateName ={'C_A','T'};
CSTR InputGroup MV = 1;
CSTR=setmpcsignals(CSTR,
'UD',2,'UO',2)
0.08020.4462];
C=[01
10];
D = zeros(2 2);
CSTR.InputGroup.MV=1;
CSTR.InputGroup.UD =2;
CSTR.OutputGroup.MO=1;
CSTR OutputGroup UO = 2;
70
D=zeros(2,2);
CSTR=ss(A,B,C,D);
CSTR.OutputGroup.UO =2;
CSTR
DiseandoelMPCusandolaToolbox de
diseo(mpctool)
71
1.5
2
2.5
Plant Outputs
0
0.5
1
T
0
-3
-2
-1
0
C
A
0 5 10 15 20 25 30
-5
-4
-3
Time (sec)
10
15
Plant Inputs
0
5
T
c
1
0
0.5
1
C
A
i
72
0 5 10 15 20 25 30
-1
-0.5
Time (sec)
EjemplodeBlockingconcuatromovimientos
de control decontrol
Unblockesununoomsperodosdemuestreosucesivosduranteloscualesla
variable manipulada permanece constante variablemanipuladapermanececonstante.
Lablockdurationeslacantidaddeperodosdemuestreoencadablock.
Enelejemploes2,2,2,3(lasumatienequeserigualaP). j p , , , ( q g )
73
Modelo usado por la Toolbox para la estimacin ModelousadoporlaToolbox paralaestimacin
deestados
74
Plantasnolineales
U d l MPC C ll Bl k UsodelMPCController Block
75
DiseandoelMPCusandofunciones
Ts = 1;
MPCobj = mpc(CSTR, Ts);
Creacindelobjetocontrolador
get(MPCobj)
M i l dV i bl (MV) [1 1 ] ManipulatedVariables (MV): [1x1 struct]
OutputVariables (OV): [1x2 struct]
DisturbanceVariables (DV): [1x1 struct]
Weights (W) [1 1 st ct]
Viendoyalterandolas
propiedadesdelobjeto
controlador
Weights (W): [1x1 struct]
Model: [1x1 struct]
Ts: 1
Optimizer: [1x1 struct]
controlador
Optimizer: [1x1 struct]
PredictionHorizon (P): 10
ControlHorizon: 2
History: [2e+003 7 21 20 18 20 1] History: [2e+003 7 21 20 18 20.1]
Notes: {}
UserData: []
ObjName.PropName = value;
76
Simulacioneslineales
[y,t,u]=sim(MPCobj,T,r);
plot(t,y);
MPCopts =mpcsimopt;
MPCopts.Constraints ='off';
sim(MPCobj,T,r,MPCopts)
Si l i li l Simulacionesnolineales
Silaplantaesunmodelonolinealensimulink,sedebelinealizar el
modelo y disear un controlador para el modelo lineal modeloydisearuncontroladorparaelmodelolineal.
77
Ot F l i OtrasFormulaciones
Perturbacionesmedidas:feedforward
Generalized Predictive Control(GPC)
Dynamic Matrix Control(DMC)
Predictive Functional Control(PFC)
Formulacincontinuaeneltiempo
78
df d EstructuraFeedforward
Perturbacin
medida
) (k d
Controlador Planta
) (k d
m
+
-
+
+
+
) (z P
d
) (k r ) (k y ) (k u
) (
) (
1
1
z P z P
d
Setpoint
-
+ + +
) (
1
z P ) (
2
z P
) (z C
) (k r ) (k y ) (k u
79
Modelo de la planta con perturbacin medida Modelodelaplantaconperturbacinmedida
) ( ) ( ) | (
) | 1 (
k d B k Bu k k x A k k x + + +
) | (
) | (
) ( ) ( ) | ( ) | 1 (
k k x C k k y
k d B k Bu k k x A k k x
y
m d
=
+ + = +
) | (
) | ( k k x C k k z
z
=
( )? |
predecir Como k i k d
m
+
Usualmente suponemos que permanece constante Usualmentesuponemosquepermanececonstante
Siesposiblehacerunamejorsuposicin
80
D i M i C l (DMC) Dynamic Matrix Control(DMC)
El DMC l l l d i l ElDMC usa larespuesta alescaln para determinar la
denominada MatrizDinmicaG.
Esta matriz seinterpreta como unmodelo delproceso.
Lasalida predicha puede serexpresada como
y=Gu +f ,
donde donde
y es elvectortemporaldesalidas predichas
u es lasecuencia deacciones decontrolafuturo
f es elvectorderespuesta libre.
81
LaMatriz Dinmica G seconstruye apartir delos y p
coeficientes g
i
obtenidos apartir delarespuesta al
escaln conhorizonte deprediccin h
p
yhorizonte de p
p
y
controlh
m
:
h
p S
a
l
i
d
a
1
0
0 0
g g
g
L
L
g
2
g
hp
g
4
g
3
p
=
1 1
1 2
0
m m
h h
ij
g g g
g g
G
L
M O M M
L
g
1
g
2
+ 1 1
m p p p
h h h h
g g g L
M O M M
t
1
t
4
t
3
t
2
t
hp
t
0
E
n
t
r
a
d
a
82
E
( ) ( ) ( ) k f k k u g k k y + + = + 1 |
| 1
1
( ) ( ) ( )
( ) ( ) ( ) ( ) k f k k u g k k u g k k y
k f k k u g k k y
+ + + + = +
+ + +
2 | 1
| 2
1 | | 1
1 2
1
M
( ) ( ) ( ) ( )
p m h h h p
h k f k h k u g k k u g k h k y
m p p
+ + + + + = +
+
|
1
L
M
83
Elobjetivo delcontrolador DMC es minimizar unfuncin j
costo J(k)
) ( min k J
u
donde lafuncin costo J(k) sedefinecomo
( ) [ ] ( ) [ ] | | ) (
1
y k j k y R y k j k y k J
P
r
h
j
T
r
+ + + =
=
[ ] [ ] ) | ( ) | (
0
k j k u Q k j k u
m
h
j
T
+ + +
=
y
= L
L
L
L
2
1
2
1
0
0
; 0
0
Q
Q
Q R
R
R
O M M O M M
2 2
; Q Q
e es elvectordeerrores futuros alolargodelhorizonte deprediccin:
p r r p r
k h k y y k k y y k y y e ), | 1 ( , ), | 1 ( ), ( [
1 1
1 1 1 1
L + + =
T
p r r p r
p r r p r
k h k y y k k y y k y y ] ), | 1 ( , ), | 1 ( ), (
2 2
1 1
2 2 2 2
1 1 1 1
L L + +
donde es lai_th salida delaplanta medida enelinstante presente k. ) (k y
i
p
85
DMCsinrestriccionesSolucinexplcita
Ejemplo:PEMFuelCell System j p y
D.Feroldi etal./Journal ofPower Sources 169(2007)205212
86
P di i F i l C l (PFC) Predictive Functional Control(PFC)
Lamotivacineslograrungrananchodebanda
Hacenfasismsenlavelocidadqueenlas q
restricciones
Es importante el seguimiento de setpoint Esimportanteelseguimientodesetpoint
Caractersticas:
Pequeonmerodepuntosdecoincidencia
Trayectoriadereferenciaparadefinirlaperformance
Funciones bsicasparatrayectoriasdecontrolfuturas
87
Funcionesbsicas
Escalonesconretardo
Polinomiosdebajoorden
( ) ( ) ( ) ( ) ( )
c
c
i k u i k u i k u k u k i k u + + + + = + L
2
2 1 0
|
Escaln
( ) ( ) ( ) ( ) ( )
c 2 1 0
k Tiempo
Rampa
k Tiempo k Tiempo
Parbola
88
k Tiempo
Emplea el concepto de puntos de coincidencia Empleaelconceptodepuntosdecoincidencia
parafacilitarlosclculos:lasalidapredichayla
referencia deben coincidir en dichos puntos referenciadebencoincidirendichospuntos.
Noserequiereunmodelodiscretoenel
tiempo.
Solo se necesitan conocer los valores de la Solosenecesitanconocerlosvaloresdela
respuestaalescalnenlospuntosde
i id i coincidencia.
Se podra trabajar completamente en tiempo Sepodratrabajarcompletamenteentiempo
continuo.
89
Unpuntodecoincidencia:p = m
Consignaconstante
Consigna
d
e
) ( H n+
p
T
r
a
y
e
c
t
o
r
i
a
d
e
r
e
f
e
r
e
n
c
i
a
i
c
h
a
) (n
p
S
a
l
i
d
a
p
r
e
d
i
c
h
Salida del
Proceso (y
p
)
m
Salida del modelo
Horizonte de coincidencia
n+H
1
n+H
2
n+H n
Salida del
modelo (y
m
)
90
Horizonte de prediccin
Futuro Pasado
( ) ( ) ( ) con ) ( ) (
s
T
T
H
p
H
e n y n c n H n
= = = +
( ) ( ) ( ) ( ) ( )( ) 1
y
H H
H
m p
=
( ) ( ) ( ) ( ) ( )( )
( )( ) ( ) ( )
resulta do Reemplazan
1
H
H H
n n n H n n p = = + =
( )( ) ( ) ( )
( )( ) ( )
resulta o Resolviend
1 ) ( ) (
m m
H
p
n y H n y n y n c + =
( )( ) ( )
( ) 1
1 ) ( 1 ) (
) (
H
m m
H
m m
H
p
a K
a n y n y C(n)
n MV
+
=
. con
m
s
T
T
m
e a
=
91
Formulacin continua en el tiempo Formulacincontinuaeneltiempo
: costo Funcin
) | (
) | (
) ( ) (
2 2
2
1
2
1
d t u d t y t r t V
+ + + + =
) ( ) ( ) ( ) ( ) | ( y
: salida de Prediccin
) (
2
t y t y t y t y t
n
n
+ + + + = + L
& & &
: entrada la de acin Parametriz
) (
!
) (
! 2
) ( ) ( ) | ( y t y
n
t y t y t y t + + + + = + L
) (
!
) (
! 2
) ( ) ( ) | (
) (
2
t u
m
t u t u t u t u
m
n
+ + + + = + L
& & &
m juegaunpapelsimilaralhorizontedecontrol
92
j g p p
Control Predictivo Generalizado ControlPredictivoGeneralizado
FuepropuestoporClarkeetal.en1987.
Se ha empleado con xito en numerosas Sehaempleadoconxitoennumerosas
aplicacionesindustriales
Tienemuchasideasencomnconotros
controladores predictivos. controladorespredictivos.
Escapazdeproporcionarunasolucinexplcitaen
ausenciaderestricciones.
93
Formulacin del Formulacindel
ControlPredictivoGeneralizado(GPC)
) ( ) ( ) 1 ( ) ( ) ( ) (
1 1 1
C B A
d
UnprocesoSISOpuedeserdescritosdelasiguienteforma:
si
) ( ) ( ) 1 ( ) ( ) ( ) (
1 1 1
+ =
t e z C t u z B z t y z A
d
) (
1 ) (
2
2
1
1 0
1
2
2
1
1
1
+ + + + =
+ + + + =
z b z b z b b z B
z a z a z a z A
nb
nb
na
na
L
L
sistema del muerto tiempo el es donde
1 ) (
2
2
1
1
1
0
+ + + + =
d
z c z c z c z C
nc
nc
nb
L
1 C tomar podemos d simplicida Por
sistema. del muerto tiempo el es donded
94
1. C tomar podemos d simplicida Por =
ElobjetivodelalgoritmoGPCconsisteenaplicaruna j g p
secuenciadesealesdecontrolqueminimiceuna
funcindecostedelaforma:
( ) [ ]
+ + + =
N
u
j t w k j t y j N N N J
2
2 1
) ( |
) ( ) , , (
2
[ ]
=
+ +
u
N
N j
j t u j
2
) 1 ( ) (
1
= j 1
95
Prediccionesptimas
( ) + = + +
+ + 1 1
) ( ) ( | 1
) ( ) ( | 1
t y F t u G t d t y
t y F t u G t d t y
d d
d d
M
( ) + + = + +
+ +
t i i l f it d
) ( ) 1 ( |
t y F N t u G t N d t y
N d N d
M
+ + =
1 1 1
) (
como matricial forma en escrito ser puede
z u ) G'(z )y(t) F(z Gu y
- -
+ +
0
0 0 ) ( ) 1 | 1 (
donde
g t u d t y L
+
=
+ +
=
0 1
0 ) 1 ( ) 1 | 2 (
g g
G
t u
u
d t y
y
M O M M
L
M M
96
+ +
0 2 1
) 1 ( ) 1 | (
g g g N t u N d t y
N N
L
( )
( )
g z G z
d
+
) (
0
1
1
( ) z g g z G z
z G
d
=
+
) (
) ( '
1
1 0
1
2
2
1
M
( )
z F
z g z g g z G z
N
N N d
N
+
) (
) (
1
) 1 (
1
1
1 0
1
L
z F
z F
z F
d
d
=
+
+
) (
) (
) (
1
2
1
1
M
f
z F
N d
+
d d d l l i l i l d d Al
) (
1
M
f : en agrupar pueden se pasado del solo terminos ltimos los depender Al
f Gu y + =
Similar al caso DMC pero la respuesta libre es distinta
97
SimilaralcasoDMC perolarespuestalibreesdistinta
Obtencindelaleydecontrol y
( ) ( ) u u w f Gu w f Gu J
T
T
+ + + =
donde
[ ] N d t w d t w d t w w
T
+ + + + + + = ) ( ) 2 ( ) 1 (
donde
L
f bu Hu u J
T
+ + =
0
2
1
Al mismo resultado se puede
( ) I G G H
T
+ = 2
con
2
Almismoresultadosepuede
llegarcalculandoGapartirdelos
coeficientes de la respuesta ante
( )
( )
( ) ( ) w f w f f
G w f b
T
T
=
=
0
2
coeficientesdelarespuestaante
escaln.
( ) ( ) w f w f f
0
: resulta control de ley La
98
T
b H u
1
=
ControlPredictivobasadoenModeloNoLineal
(NMPC)
h l li l Muchosprocesossonaltamentenolineales
Necesidaddeoperarendiferentespuntosde p p
operacin
Procesos donde no hay un estado estacionario Procesosdondenohayunestadoestacionario
NecesidaddeimplementarNMPC p
Necesidaddemodelosnolineales
99
Las aplicaciones que requieren NMPC puedes LasaplicacionesquerequierenNMPC puedes
serdivididasendosgrandescategoras:
Problemas de control regulador donde el Problemasdecontrolreguladordondeel
procesoesaltamentenolinealyocurren
frecuentes perturbaciones (control de pH frecuentesperturbaciones(controldepH,
etc.).
Problemasdeservocontroldondeelpuntode
operacin cambia frecuentemente y la planta operacincambiafrecuentementeylaplanta
tienedinmicasaltamentenolineales
(manufactura de polmeros, sntesis de (manufacturadepolmeros,sntesisde
amonaco,etc.).
100
An Overview ofNonlinear Model Predictive ControlApplications,2000 pp ,
S.Qin,A.Badgwell
101
El desarrollo de un modelo no lineal puede ser Eldesarrollodeunmodelonolinealpuedeser
bastantecomplejo
Diferentestiposdemodelosnolineales:
Modelodeprimerosprincipios p p p
Mltiplesmodeloslineales
Modelos Hammerstein Wiener ModelosHammersteinWiener
ModelosdeVolterra
ModeloARXnolineal
Modelosdifusos
Modelosconredesneuronales
102
El uso de modelos no lineales cambia el problema Elusodemodelosnolinealescambiaelproblema
deoptimizacin:
MPC: Programacin cuadrtica convexa MPC: Programacincuadrticaconvexa
NMPC: Problemanolinealnoconvexo.
En NMPC no hay garanta de que pueda encontrarse EnNMPC nohaygarantadequepuedaencontrarse
unptimoglobal.
La manera general de resolver este problema Lamanerageneralderesolveresteproblema
consisteenlosiguiente:
1 Uso de un modelo no lineal completo de la planta 1. Usodeunmodelonolinealcompletodelaplanta
paraelcmputodelaprediccin.
2. Uso de eficientes algoritmos de optimizacin no 2. Usodeeficientesalgoritmosdeoptimizacinno
linealcapacesdemanejargrannmerodevariables
yrestricciones.
103
Optimizacin
Elproblemadeoptimizacinpuedeserexpresadodelasiguiente
manera:
) ( i X f
sujetoa
) ( min X f
n
X
e i
e i
m m i X G
m i X G
+ =
= =
,..., 1 0 ) (
,..., 1 0 ) (
donde
X eselvectordelosparmetrosdediseo(lasvariables
i l d )
u l
X X X
manipuladasenMPC)
f(X) eslafuncinobjetivoquedevuelveunvalorescalar
G(X) eselvectorconlasrestriccionesigualdadesydesigualdades ( ) g y g
evaluadasenX
104
Silafuncinobjetivoylasrestriccionessonfunciones j y
linealesdelavariabledediseo,elproblemaseconoce
comodeProgramacinLineal(LP).
ProgramacinCuadrtica(QP)serefierealamaximizacin
ominimizacindefuncionesobjetivoscuadrticas
linealmente restringidas. linealmenterestringidas.
LosproblemasdeLP yQPtienenprocedimientosde
solucinrelativamentesimples. p
LosproblemasdeProgramacinNoLineal(NP), enlos
cualeslafuncinobjetivoylasrestriccionespuedenser j y p
funcionesnolinealesdelasvariablesdediseo,sonms
difcilderesolver.
LasolucindeunproblemaNP generalmenterequiereun
procedimientoiterativo.
105
Diagramadeflujode
l it NMPC
INICIO
unalgoritmoNMPC
SETEO DE CONDICIONES
INICIALES
SIMULACIN DEL MODELO DURANTE EL
HORIZONTE DE PREDICCIN N2
CORRECCIN DE LA PREDICCIN
CONSIDERANDO EL VALOR DE SALIDA DE
CLCULO DEL FUNCIONAL COSTO J
CLCULO DE UN NUEVO
VECTOR DE CONTROL DE
LONGITUD Nu
Se repite el ciclo
CONSIDERANDO EL VALOR DE SALIDA DE
LA PLANTA
cada Ts segundos
durante todo el
tiempo de
simulacin
CLCULO DEL GRADIENTE DE J CON
RESPECTO A LA VARIABLE MANIPULADA
J es
mnimo?
SI
NO
ACTUALIZACIN DEL
VECTOR DE ESTADO
Optimizacin
IMPLEMENTACIN EN LA PLANTA DE LA PRIMERA
ACCIN DE CONTROL DEL VECTOR DE CONTROL
CALCULADO
SI
106
FIN
Programacin no lineal usando MATLAB ProgramacinnolinealusandoMATLAB
LafuncinLSQNONLIN (Optimization Toolbox)resuelve
elproblemademnimoscuadradosnolineal:
( )
2 2 2
2
( )
ub X lb
X f X f X f X f
n
X X
+ + + =
s.t.
) ( ) ( ) ( min ) ( min
2 2
2
2
1
2
2
L
x=lsqnonlin(fun,x0,lb,ub)comienzaenelpuntox0 y
encuentra un mnimo de la suma de los cuadrados de encuentra unmnimo delasuma deloscuadrados de
las funciones descriptas enfun.
fun debe retornar unvectordevalores ynolasuma de y
loscuadrados delosvalores.
107
Ejemplo
E t X i i i d l t X [0 3 0 4]
( )
2
10
2 1
2 2
+
kx kx
k Encontrar X que minimice comenzando enelpunto X=[0.3,0.4].
Lafuncin que selepasa aLSQNONLIN debe computar elvector
para k= 1 a 10 (F debe tenr tener k componentes)
( )
1
2 1
2 2
=
+
k
kx kx
e e k
2 1
2 2 ) (
kx kx
k
e e k X F + =
para k=1a10(F debe tenr tener k componentes).
Primero,escribir unarchivo .m para computar kcomponentes delvectorF.
functionF=myfun(x)
k=1:10;
F = 2 + 2*kexp(k*x(1))exp(k*x(2)); F 2+2 k exp(k x(1)) exp(k x(2));
Luego,invocar una rutina deoptimizacin
x0=[0.30.4] %Startingguess
[x,resnorm]=lsqnonlin(@myfun,x0) %Invokeoptimizer
Luego de24evaluaciones delafuncin elresultado es elsiguiente:
x=0.25780.2578
108
resnorm =124.3622 %Residualorsumofsquares
MPC en Sistemas Hbridos MPCenSistemasHbridos
Ciencia de la
i
Teora de
l
Maquina de
Sistema
dinmico
computacin control
A
u(t) y(t)
q
estados
finita
dinmico
continuo en
el tiempo
Sistema
1
2
A
C
B
S ste a
Hbrido
U
X
m
n
5
3
D
B
C
( )
=
) ( ), (
) (
t u t x f
dt
t dx
Y
p
4
A
C
{ }
{ } D C B A U
X
, , ,
5 , 4 , 3 , 2 , 1
( )
( )
= ) ( ), ( ) ( t u t x g t y
dt
109
{ } , , ,
( )
( )
=
= +
) ( ), ( ) (
) ( ), ( ) 1 (
k u k x g k y
k u k x f k x
Como modelar el sistema hbrido? Comomodelarelsistemahbrido?
Algunasopciones:
Pieceawise ContinuosSystems
S it h d Affi S t Switched Affine Systems
Mixed Logical Dynamical Systems Mixed Logical Dynamical Systems
110
Pieceawise ContinuosSystems
g k u D k x C k y
f k u B k x A k x
k i k i k i
) ( ) ( ) (
) ( ) ( ) 1 (
) ( ) ( ) (
+ + =
+ + = +
K k J k H k i
g k u D k x C k y
k i k i k i
) ( ) ( t ) (
) ( ) ( ) (
) ( ) ( ) (
+
+ + =
K k u J k x H k i
k i k i k i
) ( ) ( s.t. ) (
) ( ) ( ) (
+
{ } s k i
Y y U u X x
p m n
, , 1 ) (
, ,
L
Sepuedenaproximar
dinmicasnolinealesy/o
discontinuasarbitrariamente
bien
111
Switched Affine Systems
Laecuacin deestado puede serescrita como
bi i d i di i if h combinacin detrminos ycondiciones ifthen
else:
112
Mixed Logical Dynamical Systems Mixed Logical Dynamical Systems
Orientadoalacomputacin(mixedinteger programming)
Adecuado para sntesis de controladores verificacin Adecuadoparasntesisdecontroladores,verificacin,
etc.
113