Sei sulla pagina 1di 23

Universidad Nacional de Colombia - Facultad de

Minas
Curso de Control III
Ejercicio ilustrativo
Creado por: Ing. Jairo Espinosa M.Sc. Ph.D. jjespino@unalmed.edu.co
Fecha: Septiembre 2006
Introduccin
El presente ejercicio pretende aplicar los principales elementos estudiados a lo largo
del curso de Control Multivariable. Este es un documento que recibe continuas
actualizaciones y la idea es que el lector (estudiante) a travs de un estudio activo
(reproduciendo estos resultados) encuentre preguntas nuevas y logre el objetivo de
aprender a disear controladores multivariables. Enve sus preguntas a mi correo
electrnico.
La planta
La planta utilizada en este ejemplo es un reactor tanque agitado (CSTR - Continuous
Stirred Tank Reactor). La reaccin qumica que tiene lugar en el reactor convierte de
manera irreversible el componente A en un componente B. A B . Esta reaccin es
irreversible y tiene lugar en un tanque cilndrico agitado con una capacidad total de
V
max
= 120 litros. El tanque es cilndrico con una seccin de
2
0.2 m A = .
Figura 1 Diagrama de un reactor de tanque agitado
El reactante entra al sistema con un flujo q(t), una temperatura To=350 K y una
concentracin de producto A Cao= 1 mol/l. El reactor tiene un volumen instantneo
Cao, T0, q
Ca,T,V
h
q
c
,Tc0
Ca,q
o
,T
V(t), una temperatura T(t) y una concentracin de producto A Ca(t). El fluido deja el
reactor con un caudal q
o
(t) y una concentracin y una temperatura igual a las que
existen en el reactor. Ya que la reaccin es exotrmica el sistema requiere
refrigeracin para controlar la reaccin. Un serpentn de refrigeracin con agua Tco =
350K y con caudal q
c
(t) es utilizado para controlar la temperatura del reactor.
El sistema se puede describir usando las siguientes ecuaciones:
( )
( )
( )
3
( )
0 0
( )
0 1
( )
2 0
4
( ) ( )
( ) ( )
( )
( ) ( )
( ) ( )
( )
( )
1 ( )
( )
( )
( ) ( )
c
E
RT t
E
RT t
k
q t c
C
dCa t q t
Ca Ca t k Ca t e
dt V t
dT t q t
T T t k Ca t e
dt V t
q t
k e T T t
V t
dV t
q t k V t
dt

=
= +
| |
+ |
|
\
=
Los valores de las constantes estn dados por:
0
1 2 3
, ,
c pc
a
p p c pc
C
Hk h
k k k
C C C

= = =
,
Parmetro Descripcin Valor Nominal
0
k Constante de velocidad
de reaccin.
7.2 x 10
10
min
-1
4
k Constante de la vlvula
de salida del tanque
10 l/(min m
3/2
)
E R Energa de activacin 1 x 10
4
K
0
T Temperatura del flujo
del reactante
350 K
0 C
T Temperatura del liquido
refrigerante
350 K
H Calor de la reaccin -2 x 10
5
cal/mol
,
p pc
C C Calores especficos 1 cal/g/K
,
c
Densidad de los
lquidos
1 x 10
3
g/l
a
h Coeficiente de
transferencia de calor
7 x 10
5
cal/min/K
0
Ca Concentracin de
producto A en la
alimentacin del reactor
1 mol/l
Tabla 1 Parmetros del reactor
Los flujos q
c
(t) (refrigerante) y q(t) (materia prima) estn limitados a un valor
mximo q
cmax
= q
max
=120 l/min.
Definicin del problema de Control
Se requiere controlar el reactor mostrado en la seccin anterior de forma que la
concentracin Ca y el volumen V se puedan fijar en valores deseados. Los flujos q
c
(t)
(refrigerante) y q(t) (materia prima) son la variables que se pueden manipular. El
objetivo es controlar el sistema alrededor de un punto de operacin definido como:
Variable Valor en el punto de
operacin
Ca 0.1 mol/l
V 100 l
q 100 l/min
q
c
103.37 l/min
T 438.54 K
Tabla 2 Punto de operacin del Reactor
Si suponemos que solo podemos medir las variables Ca y V, nuestro sistema quedar
definido de la siguiente manera:
Estados: Ca(t), T(t), V(t)
Salidas: Ca(t) y V(t)
Entradas: q(t) y q
c
(t)
Se espera que el sistema en lazo cerrado presente un sobreimpulso inferior al 10% y
un tiempo de establecimiento de 7 minutos. Observe que el sistema est descrito con
el tiempo en minutos.
Linealizacin del sistema
Aplicando el concepto de series de Taylor se puede linealizar el sistema alrededor del
punto de operacin mostrado en la Tabla 2.
* *
* * * *
( , )
( , ) ( , )
( , ) ( ) ( )
x u
dx
f x u
dt
f x u f x u
f x u x x u u
x x
=

+ +


* *
( , ) ( , )
,
( )
( ) ( )
( ) , ,
( ) ( )
( )
x u
c
f x u f x u
A B
x u
Ca t
q t Ca t
x T t u y
q t V t
V t

= =

(
( (
(
= = =
( (
(

(

Calculando la linealizacin sobre el sistema descrito en el sistema de ecuaciones se
obtiene:
( )
( )
( )
* *
*
*
3 3
* *
* *
*
0 0 0 * *2 *2
* *
*
0 1 *2 * *2
1 * *
*
2 0 2 *2 *
4
*
*
0
*
0
( )
( )
1 1
0 0
2
0
c c
E E
RT RT
E
RT
E
RT
k k
q q c c
C
q E q
k e k Ca t e Ca Ca
V RT V
q q E
T T t k Ca e
V V RT
A k e
q q
k e T T k e
V V
k
V
Ca Ca
V
T
B


(

(
(
(
+ (
(
=
(
| | | |
(
| |
| | (
\ \
(
(

=


( ) ( )
3 3
* *
*
* * 2 3 2
0 0 * * * *
* * *
* * *
1
1 0
( ) ( ) ( )
1 0 0 0 0
,
0 0 1 0 0
0.1
100 0.1
438.54 , ,
103.37 100
100
c c
k k
q q
C C
c
T k k k
e T T e T T
V V q V
y t y C x x D u u
C D
x u y

(
(
(
( | |

| (
|
(
\
(
(
(

+ +
( (
= =
( (

(
( (
(
= = =
( (
(

(

La anterior derivacin es sencilla desde el punto de vista conceptual, sin embargo, el
clculo de este tipo de derivadas de forma manual puede en algunos casos ser tedioso
y susceptible de error. Por ello le recomiendo que para sistemas muy complejos utilice
herramientas computacionales como Maple o el Symbolic Math Toolbox de Matlab
para realizar este clculo. Otra alternativa es utilizar funciones tales como linmod
que permite linealizar modelos en Simulink, sin embargo, est ltima funciones puede
generar confusin desde el punto de vista conceptual, dado que esta funcin linealiza
todos los estados presentes en el modelo y genera matrices relacionadas con todas las
salidas sealadas en el modelo, an sin que ellas sean fsicamente medibles.
Un ejemplo de linealizacin analtica del anterior problema se puede calcular usando
el Symbolic Math Toolbox de Matlab de la siguiente forma:
Figura 2 Derivacin analtica usando el toolbox de Math Symbol de Matlab
Calculando los valores de las matrices del sistema se obtiene:
MERGEFORMAT
-9.9979 -0.046787 -0.009
1799.6 7.3245 1.7999
0 0 -0.5
0.009 0
0.8854 0.8775
1 0
1 0 0 0 0
,
0 0 1 0 0
A
B
C D
(
(
=
(
(

(
(
=
(
(

( (
= =
( (

En este punto le sugiero que haga lo siguiente:
1) Implemente el modelo dado en la ecuacin en simulink.
2) Calcule de forma analtica en Matlab la linealizacin, preste mucha
atencin al significado de la linealizacin recuerde que este texto no es
auto contenido y es necesario que estudie la gua del curso.
3) Simule el sistema aplicando una pequea perturbacin aleatoria en q
c
esa
perturbacin debe tener una amplitud de 3 o 4 l/min, recuerde usar el
valor nominal de q
c.
4) Implemente una simulacin con el sistema lineal descrito por la matrices
y aplique la misma perturbacin, las respuestas deben ser muy parecidas,
no olvide sumar los valores de y* a las salidas y de restar u* a las
entradas.
5) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
syms Ca q V Ca0 k0 ER T T0 k1 k2 qc Tc k3 k4
system = [ (q/V)*(Ca0-Ca)-k0*Ca*exp(-ER/T);
(q/V)*(T0-T)+k1*Ca*exp(-ER/T)+k2*(qc/V)*(1-exp(-k3/qc))*(Tc-T);
q-k4*sqrt(V)]

states = [Ca T V]
inputs = [q qc]
A = jacobian(system,states)
B = jacobian(system,inputs)
Anlisis de Controlabilidad y Observabilidad
Calculando a partir de la ecuacin las matrices con Controlabilidad y Observabilidad
obtenemos:
1
0.0090 0 -0.0576 0.0411 0.0414 -0.1098
-0.8854 -0.8775 11.5111 -6.4272 -20.1645 26.8069
1.0000 0 -0.5000 0 0.2500 0
rank( ) = 3
n
Co B AB A B
Co
Co

( =

(
(
=
(
(

Lo que implica que el sistema es controlable. Para la observabilidad se obtiene:


1
1 0 0
0 0 1
-9.9979 -0.0468 -0.0090
0 0 -0.5
15.7616 0.1251 0.0103
0 0 0.25
rank( )=3
T
n
Ob C CA CA
Ob
Ob

( =

(
(
(
(
=
(
(
(
(
(

Lo que implica que el sistema es observable.


En este punto le sugiero que haga lo siguiente:
1) Reproduzca los resultado obtenidos en este punto usando MATLAB
2) Aplique otros mtodos de prueba de controlabilidad y observabilidad
como PBH (Popov Belevitch y Hautus)
3) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Anlisis de Ganancias Relativas (RGA)
Usando la linealizacin del sistema expresada por las matrices de la ecuacin se
puede calcular la ganancia del sistema usando la expresin:
1
( ) ( ) G j C j I A B D

= +
Es importante recordar que el anlisis de ganancias relativas se debe realizar a dos
valores distintos de frecuencia:
Se debe realizar a frecuencia cero ( 0 rad/s = ) para entender la influencia de
las variables manipuladas en las variables controladas cuando se realiza
control manual.
Se debe realizar a la frecuencia esperada de crossover (
rad/s
n
=
) para
entender la influencia de las variables manipuladas en las variables
controladas cuando se realiza control automtico.
Tomando 7min Ts = y Mp = 1.1 si aproximamos la respuesta como una respuesta de
segundo orden tendremos:
[ ]
[ ]
2
2
1
2
2
ln( 1)
1 0.5912
ln( 1)
Mp
Mp e
Mp



= + = =
+
4 4
0.9666 rad/min
s n
n s
t
t


= = =
usando esos valores de frecuencia obtenemos las siguientes ganancias:
0.0056 0.0037
(0)
2 0
G
(
=
(

-0.0032 0.0028 0.0038 - 0.0010
( 0.966)
0.4222 - 0.8162 0
j j
G j
j
+ (
=
(

1
calculando las matrices de ganancias relativas se obtiene:
0 1
(0)
1 0
RGA
(
=
(

0 1
( 0.9666)
1 0
RGA j
(
=
(

De acuerdo con las reglas de seleccin estudiadas:
Las reglas de seleccin se pueden resumir de la siguiente manera:
1- Trate de hacer lazos con aquellos elementos en los cuales el
)) ( (
c
j G RGA
lo
ms cercano posible al punto 1+j0 en el plano complejo.
2- Evite hacer lazos con aquellos pares que tienen valores negativos de
ganancia relativa en estado estable
)) 0 ( (G RGA
.
Ambos criterios se cumplen perfectamente si se hacen controles con los pares entre la
entrada 1 (q(t)) y la salida 2 V(t) y entre la entrada 2 (q
c
(t)) y la salida 1 Ca(t).
En este punto le sugiero que haga lo siguiente:
1) Reproduzca los resultado obtenidos en este punto usando MATLAB
2) Cambie la matriz C del sistema por
1 0 0
0 1 0
C
(
=
(

de manera que las
salidas sean concentracin y temperatura y repite el anlisis de RGA.
Observe la contradiccin entre los resultados a frecuencia cero y a la
frecuencia de crossover.
3) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
1
Observe que la frecuencia se dej en rad/min y no en rad/seg, esto debido a que el modelo esta
escalizado en minutos.
Clculo de Controladores PID sin desacople
Usando el flujo q(t) para controlar el volumen en el reactor V(t) y q
c
(t) el flujo de
refrigerante para controlar la concentracin Ca(t), se dise un par de controladores
PID. Los controladores se sintonizaron en el siguiente orden primero el que controla
el volumen y luego el que controla la concentracin.
El esquema de conexin de los controladores se puede observar en la Figura 3.
Observe que a la seal de actuacin de los PIDs se le aade el valor constante
alrededor del cual se hizo la linealizacin. Los valores obtenidos para los PID usando
sintonizacin manual fueron:
Kp Ti Td
Lazo de Volumen 1 1 0
Lazo de
Concentracin.
50 0.333 0.2
Figura 3 Diagrama de conexin de los controladores PID sin desacoplador
Se aplicaron seales tipo paso despus de 10 minutos para llevar el nivel de 100 a 110
litros y a los 50 minutos para llevar la concentracin de 0.1 mol/l a 0.11 mol/l.
En la figura se observa que despus de sintonizados los PIDs el cambio en el nivel
genera un impacto en la concentracin, sin embargo un cambio en concentracin no
afecta el nivel. Si queremos reducir este impacto podremos construir un desacoplador
esttico y recalcular los PIDs.
Figura 4 Resultados de la simulacin de sistema controlado con dos PID's sin desacople
2

En este punto le sugiero que haga lo siguiente:
1) Experimente cambiando los parmetros de los PID en el archivo
CSTRCoupledPID.mdl antes de correr esta simulacin debe ejecutar
el archivo cstrinit.m para inicializar los parmetros del simulador.
2) Trate de hacer su propia sintonizacin (Estoy seguro que con un poco de
esfuerzo podr obtener algo mejor!!)
3) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Clculo de Controladores PID usando desacoplador.
Si observamos la ganancia esttica del sistema
2
El archivo de simulink CSTRCouplePID.mdl contiene los elementos necesarios para reproducir esta
simulacin.
0.0056 0.0037
(0)
2 0
G
(
=
(

es imposible aplicar las formulas estudiadas en el curso para diagonalizar este
sistema, ya que las frmulas, requieren que los elementos en la diagonal principal
sean distintos de cero. Hay dos opciones una es recalcular una formula para un
desacoplador que no divida por los elementos de la diagonal principal o intercambiar
las entradas de modo que la ganancia en la diagonal principal sea distinta de cero. Que
es lo que haremos en las siguientes lneas:
11 12
21 22
( )
c
q q
G s G G Ca
G G V
= (
(

Intercambiando las columnas de G(s) se obtiene:
12 11
22 21
'( )
c
q q
G s G G Ca
G G V
= (
(

En este caso
11 12
12 11
21 22
22 21
( )
' ( ) ( )
( )
( )
' ( ) ( )
( )
( )
' ( ) ( )
( )
( )
' ( ) ( )
( )
c
c
c
Ca s
G s G s
q s
Ca s
G s G s
q s
V s
G s G s
q s
V s
G s G s
q s
= =
= =
= =
= =
Si calculamos la expresin a frecuencia cero:
0.0037 0.0056
'(0)
0 2
G
(
=
(

Con esta descripcin podremos construir un desacoplador usando la frmula:
12 11
21 22
1 '( ) '( )
'( )
'( ) '( ) 1
G s G s
D s
G s G s
(
=
(


ya que el desacoplador es esttico se obtiene:
1 1.4878
'(0)
0 1
D
(
=
(

Observe que este desacoplador nos relaciona dos entradas f
1
(t) y f
2
(t) que estarn
acopladas con q
c
(t) y q(t) .
1 2
' '
11 12
' '
21 22
'( ) ( ) ( )
( ) ( )
c
f f
D s q D s D s
q D s D s
= (
(

si queremos que el desacoplar funcione con nuestro sistema original G(s), bastar con
intercambiar las filas del desacoplador.
1 2
' '
21 22
' '
11 12
( ) ( ) ( )
( ) ( )
c
f f
D s q D s D s
q D s D s
= (
(

0 1
(0)
1 1.4878
D
(
=
(

Comprobamos la condicin de desacople, calculando el producto
0.0037 0
(0) (0)
0 2
G D
(
=
(

Efectivamente el sistema queda reducido a un sistema desacoplado. La sintonizacin
de los PIDs es ahora ms simple ya que los efectos debidos a los otros lazos son
menores, permitiendo una mayor libertad en el momento de sintonizar el sistema.
Los parmetros de los PIDs para el sistema desacoplado quedan resumidos en la
siguiente tabla:
Kp Ti Td
Lazo de Volumen 1 1 0
Lazo de
Concentracin.
200 2 2.5
El esquema de conexin de los PIDs y el desacoplador se muestra en la Figura 5
Figura 5 Sistema controlado con desacoplador y PID
3
3
El archivo de simulink CSTRDeCouplePID.mdl contiene los elementos necesarios para reproducir
esta simulacin.
La Figura 6 muestra los resultados de la simulacin del sistema con el desacoplador.
Figura 6 Resultados de la simulacin del sistema desacoplado y controlado con PIDs
En este punto le sugiero que haga lo siguiente:
1) Reproduzca cuidadosamente los resultados y analice en detalle el diseo
del desacoplador. Observe que el problema requiere un manejo especial.
Si no comprende este manejo. Pregunte!!!
2) Experimente cambiando los parmetros de los PID en el archivo
CSTRDeCoupledPID.mdl antes de correr esta simulacin debe
ejecutar el archivo cstrinit.m para inicializar los parmetros del
simulador.
3) Trate de hacer su propia sintonizacin (Estoy seguro que con un poco de
esfuerzo podr obtener algo mejor!!)
4) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Diseo de un controlador Multivariable LQR
En nuestro ejemplo se pide controlar dos variables (Concentracin y Volumen) con
cero error de estado estacionario. Esta tarea exige que si queremos construir un
controlador por realimentacin de estado debamos extender el sistema de modo que
incluya un par de integradores sobre las variables que deseamos controlar con cero
error de estado estacionario. El sistema extendido tendr la siguiente presentacin:
[ ]
0 0
0
0
ref
ref
Ca x A x B
u
V e C e D I
x
y C Du
e
( ( ( ( ( (
= + +
( ( ( ( ( (


(
= +
(

donde el vector e representa la integral del error de seguimiento, definido como:


( ) ( ) ( )
( ) ( ) ( )
ref Ca
ref v
Ca t Ca t e t
e
V t V t e t
( (
= =
( (

Usando esta nueva representacin podremos calcular un controlador LQR si


definimos las matrices de la funcin de costo:
0
( ) ( ) ( ) ( )
T T
J x t Qx t u t Ru t dt

( = +

de la siguiente forma:
1 0 0 0 0
0 1 0 0 0
1 0
, 0 0 1 0 0
0 1
0 0 0 1 0
0 0 0 0 1
Q R
(
(
(
(
( = =
(
(

(
(

Observe que todos los estados y las entradas tienen la misma penalizacin.
Obtenindose una matriz de realimentacin de estado con los siguientes valores:
125.7877 0.7120 1.4577 0.0788 -0.9969

-173.4768 -1.1591 -0.0897 -0.9969 -0.0788
K
(
=
(

Las tres primeras columnas corresponden a la realimentacin de los 3 estados
"naturales" del sistema (Concentracin, Temperatura y Volumen) (matriz K
s
) los dos
columnas restantes corresponden a la realimentacin de las integrales de los errores de
seguimiento (matriz K
I
).
125.7877 0.7120 1.4577
-173.4768 -1.1591 -0.0897
0.0788 -0.9969

-0.9969 0.0788
S
I
K
K
(
=
(

(
=
(

Figura 7 Diagrama de bloques de la simulacin lineal del controlador LQR
Es conveniente realizar la sintona del controlador usando el modelo lineal, una vez
ajustado se puede montar el controlador sobre el modelo no-lineal. La Figura 7
muestra el diagrama de Simulink (CSTRLQRLin.mdl) utilizado para probar el
sistema. El resultado generado por este primer controlador (Figura 8) no satisface los
requerimientos exigidos por las condiciones del problema.

0 10 20 30 40 50 60 70 80 90 100
0.06
0.08
0.1
0.12
C
o
n
c
e
n
t
r
a
t
i
o
n
0 10 20 30 40 50 60 70 80 90 100
100
105
110
115
V
o
l
u
m
e
0 10 20 30 40 50 60 70 80 90 100
90
100
110
120
130
F
l
o
w
s
0 10 20 30 40 50 60 70 80 90 100
435
440
445
T
e
m
p
e
r
a
t
u
r
e
Figura 8 Respuesta del modelo lineal con controlador LQR (Q=diag([1 1 1 1 1 1]) R=diag([1 1]))
De la figura es claro que la respuesta de la concentracin es particularmente lenta, de
otro lado el control de volumen llena las expectativas que se requieren en el sistema.
Intuitivamente podemos tomar dos acciones una penalizando la desviacin de la
concentracin (Ca) o penalizar la integral del error de concentracin e
Ca
. La idea es
incrementar esta penalizacin, mientras mantenemos los valores de los flujos dentro
de los lmites permitidos por el sistema. Las siguientes grficas muestran el efecto del
cambio en la penalizacin de la integral del error de concentracin.
0 10 20 30 40 50 60 70 80 90 100
0.06
0.08
0.1
0.12
C
o
n
c
e
n
t
r
a
t
i
o
n
0 10 20 30 40 50 60 70 80 90 100
100
105
110
115
V
o
l
u
m
e
0 10 20 30 40 50 60 70 80 90 100
90
100
110
120
130
F
l
o
w
s
0 10 20 30 40 50 60 70 80 90 100
435
440
445
T
e
m
p
e
r
a
t
u
r
e
Figura 9 Respuesta del modelo lineal con controlador LQR (Q=diag([1 1 1 1e4 1]) R=diag([1 1]))
0 10 20 30 40 50 60 70 80 90 100
0.06
0.08
0.1
0.12
C
o
n
c
e
n
t
r
a
t
i
o
n
0 10 20 30 40 50 60 70 80 90 100
100
105
110
115
V
o
l
u
m
e
0 10 20 30 40 50 60 70 80 90 100
90
100
110
120
130
F
l
o
w
s
0 10 20 30 40 50 60 70 80 90 100
435
440
445
T
e
m
p
e
r
a
t
u
r
e
Figura 10 Respuesta del modelo lineal con controlador LQR (Q=diag([1 1 1 1 50000 1])
R=diag([1 1]))
Observe que finalmente con las matrices de costo:
1 0 0 0 0
0 1 0 0 0
1 0
, 0 0 1 0 0
0 1
0 0 0 50000 0
0 0 0 0 1
Q R
(
(
(
(
( = =
(
(

(
(

el sistema cumple con las especificaciones de control deseadas. Generando unas
matrices de realimentacin de la forma:
153.5413 0.9292 1.4970 58.0275 -0.9657

-257.9776 -1.8432 -0.1256 -215.9463 -0.2595
K
(
=
(

Que queda distribuida entre la realimentacin de los estados originales y los de la
integral del error as:
153.5413 0.9292 1.4970

-257.9776 -1.8432 -0.1256
58.0275 -0.9657
-215.9463 -0.2595
s
I
K
K
(
=
(

(
=
(

Finalmente verificaremos el funcionamiento del sistema conectando las matrices de
realimentacin al sistema lineal original de acuerdo con el diagrama mostrado en la
Figura 11 (CSTRLQR.mdl)
Vol ume Ref
(Caa Ta v)
State of
Li neari zati on
-Ks* u
State Feedback
1
s
Integrator1
1
s
Integrator
-Ki * u
Integral
State Feedback
Demux
103.37
Constant1
100 Constant
Conc Ref
Reactant Flow
Coolant Flow
Concentration
Temperature
Volume
CST R
Figura 11 Diagrama de simulacin del controlador LQR con la planta no lineal
El desempeo del sistema es bastante similar al observado con el sistema lineal como
lo muestra la Figura 12. Observe que el controlador realiza automticamente la labor
de desacoplamiento reduciendo el impacto producido por los cambios en la referencia
de variables distintas.
0 10 20 30 40 50 60 70 80 90 100
0.06
0.08
0.1
0.12
C
o
n
c
e
n
t
r
a
t
i
o
n
0 10 20 30 40 50 60 70 80 90 100
100
105
110
115
V
o
l
u
m
e
0 10 20 30 40 50 60 70 80 90 100
90
100
110
120
130
F
l
o
w
s
0 10 20 30 40 50 60 70 80 90 100
435
440
445
T
e
m
p
e
r
a
t
u
r
e
Figura 12 Desempeo del sistema no linear con el controlador LQR
En este punto le sugiero que haga lo siguiente:
1) Reproduzca cuidadosamente los resultados y analice en detalle el diseo
del controlador, especialmente la implementacin y el uso de los
integradores as como los ajustes donde se adiciona o restan los valores
de referencia de linealizacin.
2) Experimente cambiando los parmetros Q y R y recalcule distintas
realimentaciones de estado, realice la implementacin en CSTRLQRLin
y analice los tiempos de establecimiento.
3) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Diseo de un observador ptimo (Kalman Filter).
Para construir este observador asumimos que el ruido de medicin de las salidas es:
0.001mol/l
1l
Ca
V
v
v
=
=
y el "ruido en los estados"
0.007 mol/l
4 Kelvin
1.5 litros
Ca
T
V
w
w
w
=
=
=
Si asumimos dichos ruidos como no correlacionados, tendremos unas matrices de
covarianza de la siguiente forma:
{ }
{ }
2 5
2
2
2 6
2
0 0 4.9 10 0 0
( ) ( ) 0 0 0 16 0
0 0 0 0 2.25
0 10 0
( ) ( )
0 0 121
Ca
T
w T
v
T Ca
v
V
w
R w t w t w
w
v
R v t v t
v

( (
( (
= = =
( (
( (

( (
= = =
( (

Ya que el ruido w(t) se asume entrando a cada estado de manera individual, se puede
decir que:
1 0 0
0 1 0
0 0 1
w
B
(
(
=
(
(

La ganancia del observador se puede calcular, resolviendo la ecuacin de Riccati o
bien usando directamente la funcin kalman incluida en el toolbox de control de
Matlab. Para utilizar la funcin kalman es necesario entregar a la rutina un sistema
dinmico con la siguiente descripcin:
[ ]
[ ]
0
K k w
k k
A A B B B
C C D D
= =
= =
el prototipo de la funcin es:
[KEST,L,P] = KALMAN(SYS,QN,RN)
donde KEST es un sistema dinmico con el observador ya construido, L es la
ganancia del observador y P la solucin de la ecuacin de Riccati. SYS es el sistema
descrito por las matrices de la frmula (SYS=SS(AK,BK,CK,DK)), QN es Rw y RN
es Rv . Resolviendo obtenemos la matriz L que gobernar la dinmica del observador.
En la Figura 13 se puede observar la conexin del observador de estado. Es
importante resaltar que a la seal de salida se le ha adicionado un ruido de medicin
con varianza igual a la diagonal de Rv. El diagrama est en el archivo
CSTRKALMAN.mdl. En la Figura 14 se puede observar el diagrama interno de la
implementacin del observador.
Figura 13 Conexin del Observador de estado al sistema con el controlador LQR
Figura 14 Diagrama interno del observador incluyendo las adaptaciones para el punto de
operacin
El desempeo del observador se puede apreciar en la siguiente figura donde se
compara el estado original con el estado estimado. Observe que a pesar de lo ruidosa
de la seal de salida con el ruido de medicin el sistema es capaz de hacer una
estimacin bastante "limpia" de los estados.
En este punto le sugiero que haga lo siguiente:
1) Reproduzca cuidadosamente los resultados y analice en detalle el diseo
del observador, especialmente la implementacin y los ajustes donde se
adiciona o restan los valores de referencia de linealizacin.
2) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Figura 15 Seales medidas incluyendo el ruido de medicin
Figura 16 Estados estimados. Observe la apreciable reduccin en la amplitud del ruido en las
seales Concentracin y Volumen comparados con las seales medidas.
Controlador Cuadrtico Gaussiano (LQG)
En esta fase no nos resta sino cerrar el lazo de control de manera que conectemos el
controlador LQR al observador. La conexin se puede hacer de dos maneras,
1. una es conectar al LQR las seales de salida (y) directamente y conectar los
estados entregados por el observador (CSTRLQG2.mdl).
2. la otra manera es conectar el LQR a las seales de salida (y
e
) del observador y
conectar los estados entregados por el observador (CSTRLQG1.mdl).
El desempeo de ambas opciones es diferente como se muestra en las siguientes
figuras.
Figura 17 Desempeo del sistema con controlador LQG y realimentacin de la salida estimada.
En este punto le sugiero que haga lo siguiente:
1) Reproduzca cuidadosamente los resultados y analice en detalle las
diferencias entre las dos conexiones
2) Reduzca los dos bloques de controlador y observador a un bloque nico
eliminando posibles ajustes de nivel que sean redundantes.
3) Repase los pasos que tomo para completar este diseo.
4) Compare sus resultados con el sistema que utilizo unicamente PID y PID
con desacoplador
5) Cual considera ud. es ms fcil de disear.
6) PREGUNTE LO QUE NO ENTIENDA. Recuerde que no es obligatorio
hacer estos ejercicios ni rendir informe, lo importante es que pueda
preparar su evaluacin.
Figura 18 Desempeo del sistema con controlador LQG y realimentacin de la salida medida.

Potrebbero piacerti anche