Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Rev. 4/05/2007
Indice general
Lista de figuras
XIII
1. Introducci
on al control por computador
10
2. Secuencias y transformada Z
13
2.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
. . . . . . . . . . . . . . . . . . . . . . . . .
14
2.3. Transformada en Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
16
17
INDICE GENERAL
ii
21
21
22
24
3. Proceso de muestreo
25
3.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
26
27
29
31
32
4. An
alisis de sistemas muestreados
35
35
39
41
49
50
53
INDICE GENERAL
iii
5. Dise
no de controladores discretos
59
59
60
62
63
64
64
65
66
66
70
5.4.1. Causalidad
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
72
74
5.5. Control en un n
umero finito de intervalos. Control dead-beat . . . . . .
76
79
79
80
81
INDICE GENERAL
iv
83
84
85
85
86
87
88
90
93
6.6.1. Controlabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
95
6.6.3. Observabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
97
. . . . . . . . . . .
97
98
98
99
99
INDICE GENERAL
. . . . . . . . . . 112
123
8. Introducci
on a la identificaci
on de sistemas
129
INDICE GENERAL
vi
9. Identificaci
on por mnimos cuadrados
141
INDICE GENERAL
vii
159
177
INDICE GENERAL
viii
185
13.Introducci
on al control adaptativo
199
211
INDICE GENERAL
ix
223
235
INDICE GENERAL
. . . . . . 250
17.Controladores predictivos
253
INDICE GENERAL
xi
269
. . . . . . . . . . . . . . . . . . . . . . 274
18.1.4.1. Tecnicas de b
usqueda de soluciones factibles . . . . . . 275
xii
INDICE GENERAL
Indice de figuras
1.1. Seleccion de que datos se deben guardar, con que frecuencia y en que
formato en los historicos de un sistema de control por computador. . .
1.2. Todos los sistemas de control por computador presentan mmicos mas o
menos realistas con la informacion de la planta. . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . .
10
11
14
24
xiii
INDICE DE FIGURAS
xiv
25
27
29
29
30
30
32
. . . . . . . . . . . . . . . . . . . . . . . . . .
37
42
43
44
4.6. Respuestas ante un impulso para un sistema con un polo en el eje real.
45
INDICE DE FIGURAS
xv
46
4.8. Respuestas ante un impulso para un sistema con polos conjugados dentro
del circulo unidad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
48
53
54
. . . . . . . . . . .
55
56
57
57
. . . . . . . . . . .
58
. . . . . . . . .
60
62
63
65
. . . . . . . . . . . .
67
67
68
INDICE DE FIGURAS
xvi
69
80
99
6.3. Diagrama de bloques de un sistema LTI controlado mediante una realimentacion del vector de estados que estima el estado con un observador. 109
6.4. Diagrama de bloques de un observador de orden completo. . . . . . . . 109
. . . . . . . 125
. . . . . . . . . . . . . . . . . . 133
9.1. Diagrama de flujo del proceso de identificacion mediante mnimos cuadrados recursivos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
9.2. Diagrama de Bode de un sistema de segundo orden (linea continua) y
de un modelo de primer orden estimado para una entrada senoidal de
frecuencia = 0,2 rad s1 . . . . . . . . . . . . . . . . . . . . . . . . 153
9.3. Misma situacion que en la figura 9.2 pero con una se
nal de entrada
1
senoidal de frecuencia = 1 rad s . . . . . . . . . . . . . . . . . . . 153
9.4. Evolucion de los parametros identificados en un caso de sobreparametrizacion.
154
INDICE DE FIGURAS
xvii
9.5. Evolucion de unos parametros frente a otros para el modelo sobreparametrizado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
xviii
INDICE DE FIGURAS
INDICE DE FIGURAS
xix
. . . . 203
. . . . 203
. 212
. 213
. . . . . . . . . . . . . 219
15.1. PID industrial moderno con funcion de autoajuste (ABB modelo ECA). 225
15.2. Determinacion de T y L por areas. . . . . . . . . . . . . . . . . . . . . 227
15.3. Estructura usada en el metodo basado en oscilaciones de rele. . . . . . 228
15.4. Configuracion generica de un controlador adaptativo con adaptacion en
bucle abierto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
15.5. Curva de pH para una solucion de HCl 0.001 M y NaOH 0.001 M.
15.6. Caracterstica aproximada de una sonda lambda
. . 230
. . . . . . . . . . . . 231
xx
INDICE DE FIGURAS
Captulo 1
Introducci
on al control por
computador
1.1.
Conceptos b
asicos
El control por computador surge de la evolucion del control analogico clasico (usado
extensivamente en sistemas mecanicos, electricos y electronicos), en la cual el computador se ve como medio para ampliar las capacidades y funcionalidades de los sistemas
de control. Esa incorporacion del computador digital comienza ya en etapas tan tempranas del desarrollo de los computadores como la decada de 1950. En esa epoca el
uso que se le daba al computador en los sistemas de control era el de supervisor de los
lazos de control analogico tradicional. El siguiente paso es el de sustituir directamente
a los controladores analogicos (habitualmente de tipo PID) en lo que se vino a llamar
el Control Digital Directo. En este tipo de control el computador calcula la se
nal de
control que se aplicara directamente al proceso.
La decada de los 70 ve la aparicion de los microprocesadores como sustitutos en un
solo circuito integrado de los principales componentes de un computador. La dramatica
reduccion de costes, espacio y consumos unido a la escalada en prestaciones hace que
se contemple dedicar un sistema basado en microprocesador a cada lazo de control,
descargando de tareas al computador central. Esto lleva a la aparicion de los sistemas
de control distribuidos en los que diversos computadores se reparten las distintas tareas
de control de una planta. Esos computadores se conectaran entre si mediante diferentes
topologas de red, propiciando la aparicion de normas de interconexion especficas de
los entornos industriales: los buses de campo. Dentro de las redes se pueden establecer
1
1.2.
Toda tecnologa nueva suele venir cargada de ventajas pero tambien suele presentar
nuevos inconvenientes. En esta seccion se describiran brevemente ambas caractersticas.
Dentro de las principales ventajas del control por computador podemos encontrar:
Los sistemas de control por computador son mas eficientes a la hora de controlar
sistemas complejos. Ademas al ser sistemas programables, se pueden incorporar
algortmos de control mas sofisticados que los que se pueden realizar con componentes analogicos.
Mayor flexibilidad a la hora de cambiar la sintona o incluso el algoritmo de
control de un lazo determinado. Esta mayor flexibilidad viene dada por el hecho
de que el software es intrnsecamente mas flexible que el hardware.
Mayor precision en los calculos. Con instrumentacion analogica alcanzar una alta
precision en los calculos es muy caro, mientras que con los computadores digitales
la precision en muchos casos es arbitraria.
Invariabilidad de los calculos. No hay envejecimiento ni derivas ya que los calculos
se realizan usando aritmetica digital.
Por otra parte los sistemas de control por computador tambien presentan inconvenientes, entre ellos:
1.3.
Las tareas que un sistema de control por computador realiza van mas alla de las de
control que realiza un sistema de control clasico.
El primer grupo de funciones que se pueden enumerar es la de adquisicion y tratamiento de datos. El sistema adquiere las se
nales y realiza operaciones de adecuacion entre
las que se encuentran:
Filtrado de se
nales.
Linealizacion de la caracterstica de sensores y actuadores.
Conversion a unidades de ingeniera.
Figura 1.1: Seleccion de que datos se deben guardar, con que frecuencia y en que formato en los
historicos de un sistema de control por computador.
Figura 1.2: Todos los sistemas de control por computador presentan mmicos mas o menos realistas
con la informacion de la planta.
Figura 1.3: Herramientas para creacion de mmicos en un sistema de control por computador.
Los sistemas de control por computador son capaces ademas de ayudar o asistir en
la toma de decisiones sobre la manera de operar el sistema. Suele ser habitual el uso
de simuladores que permiten ensayar y ver el efecto de cambios en la planta sin tener
que realizarlos sobre el sistema real. Complementando a los simuladores se pueden
encontrar en algunos sistemas de control por computador programas de inteligencia
artificial como los sistemas expertos, que tienen la mision de sugerir cual es la posible
solucion a cualquier incidencia que se presente o indicar los puntos de funcionamiento
o modos de operacion que sean mas productivos. Es decir, un sistema experto emula
el conocimiento de un ((experto humano)).
Otra de las funciones mas importantes de un sistema de control por computador es
la de almacenar historicos (ver figura 1.4) de todas las variables (sensores, actuadores,
etc. . . ) que se considere necesario (no necesariamente solo las que se muestran en
los mmicos). Esta informacion es de gran utilidad para analizar el funcionamiento del
proceso, estudiar el efecto de cambios en la operacion del sistema y averiguar las causas
de fallos y alarmas.
Figura 1.4: Los historicos presentan informacion relevante sobre la evolucion de las variables monitorizadas bien en forma grafica o numerica.
1.4.
Una estructura alternativa es la estructura distribuida. En esta estructura (ver figura 1.7), diversos elementos de control y computadores se conectan a traves de una
red (llamada bus de campo) que reparte datos y se
nales entre ellos. Esta estructura es
mas fiable y redundante por lo que hay una mayor seguridad ante fallos. Las tareas
y responsabilidades se reparten entre los distintos elementos y se obtiene mayor rapidez de procesamiento y respuesta. Ademas el coste de instalacion es menor pues los
controladores se situan mas cerca de los elementos de medida y control. Sin embargo
se impone la necesidad de definir y usar estandares de interconexion y protocolos de
comunicaciones.
1.5.
Instrumentaci
on especfica de los sistemas de
control por computador
10
SOFTWARE DE CONTROL
SINCRONA
REF
ERROR
ENTRADA
COMPUTADOR
C. D/A +
M.O.C.
PLANTA
C. A/D
SALIDA
PLANTA DISCRETIZADA
Finalmente hay que recordar que los distintos componentes se conectan a traves de
redes de comunicaciones digitales llamadas buses de campo. Esas redes estan regidas
por diferentes protocolos de comunicaciones estandarizados.
1.6.
Software de control
11
Figura 1.10: Simulink es un lenguaje grafico que se puede utilizar para programar algoritmos de
control.
12
SOFTWARE DE CONTROL
Captulo 2
Secuencias y transformada Z
2.1.
Introducci
on
{uk } = {1, 1, 0, 2, . . .}
Notese que con la notacion yk se esta indicando y(kT ), de manera que yk1 = y((k 1)T ) y
as sucesivamente. Por otra parte es habitual utilizar tambien la notacion y(k),y(k 1), etc. . .
13
SECUENCIA DE PONDERACION
14
2.2.
Secuencia de ponderaci
on
Denominaremos secuencia de ponderacion {gk } = {g0 , g1 , } a la secuencia obtenida a la salida de un sistema discreto cuando a la entrada hay una secuencia de impulso
unitario {k } = {1, 0, 0, } (ver figura 2.1). Este es un concepto analogo al de re{ k}={1,0,0,}
Sistema
Discreto
{gk}={g0,g1,g2,}
g0
g1 g2
...
l=
X
ul {kl }
l=
l=
X
ul {kl }
l=0
l=
X
l=0
ul {gkl }
15
l=
X
gl {ukl }
l=0
Esto implica que conociendo la secuencia de ponderacion de un sistema podemos calcular la salida para cualquier secuencia de entrada. La expresion anterior es equivalente
a:
l=
X
gl {ukl } = {gk } ? {uk }
(2.1)
{yk } =
l=0
2.3.
Transformada en Z
La transformada en Z cumple el mismo papel en sistemas discretos que la transformada de Laplace en sistemas continuos. Permite obtener la solucion de ecuaciones en
diferencias y por tanto representar se
nales y secuencias de una manera mas compacta.
Para entender la transformada en Z se parte de una se
nal continua x(t). Esta se
nal es
muestreada con un tiempo de muestreo T . Eso implica que se registra una secuencia:
x(0), x(T ), x(2T ), , x(kT )
Teniendo en cuenta que la funcion delta de Dirac (t kT ) vale 1 para t = kT y cero
en todos los demas casos, es claro que la se
nal muestreada es igual a:
x (t) =
X
k=0
x(kT )(t kT )
16
TRANSFORMADA EN Z
X(s) = L {x (t)} =
x (t)est dt
R P
0 k=0
R
P
k=0 0
x(kT )ekT s
k=0
xk z k
(2.2)
k=0
2.3.1.
Transformadas de algunas se
nales tpicas
Se
nal impulso. Esta se
nal tiene como secuencia asociada
{k } = {1, 0, 0, }
En este caso la transformada Z se calcula facilmente como:
Z {k } =
k z k = 0 z 0 = 1
k=0
Se
nal escalon. En este caso la se
nal es
{uk } = {1, 1, 1, }
17
uk z
k=0
z k =
k=0
z
1
=
1
1z
z1
Se
nal {ak }:
X
X
a k
1
Z ak =
ak z k =
=
z
1
k=0
k=0
a
z
z
za
Se
nal {eak }. En este caso se aplica el resultado anterior con a = ea obteniendose
z
Z eak =
z ea
Aplicando consideraciones similares se puede ir obteniendo la transformada Z de las
secuencias mas habituales. En las tablas 2.1 y 2.2 se enumeran las transformadas Z de
dichas secuencias y sus equivalentes en transformada de Laplace.
2.4.
Propiedades de la transformada Z
P
Z {xk+n } =
xk+n z k tomando l = k + n
k=0
xl z (ln)
l=n
n1
P
n
l
= z X(z)
xl z
=
= z n X(z) z n
l=0
n1
P
l=0
1
z
< 1.
xl z l
18
PROPIEDADES DE LA TRANSFORMADA Z
19
20
PROPIEDADES DE LA TRANSFORMADA Z
el termino z n
n1
P
l=0
P
yk z k
Y (z) =
k=0
k=0
= z 1
= z
xk1 z k
k=0
P
k
0 =1
xk0 z k
= z 1 x1 z +
= z 1 X(z)
P
k0 =0
xk 0 z
k0
Z {{xk } ? {yk }} = Z
k
X
)
xl ykl
= X(z)Y (z)
(2.3)
l=0
4. Teorema del valor final. El valor en k = de la secuencia {xk } viene dado por:
x = lm xk = lm(z 1)X(z)
k
z1
Nota: en algunos textos aparece como lm (1 z 1 )X(z). Por otra parte este
z1
teorema es valido si el lmite existe.
Ejemplo 2.1
Sea
X(z) =
z
z1
21
5. Teorema del valor inicial. El valor inicial para k = 0 de la secuencia {xk } viene
dado por:
x0 = lm X(z)
z
Ejemplo 2.2
Sea {xk } un escalon unitario. En este caso
z
1
= lm
z z 1
z 1
x0 = lm
2.5.
1
z
=1
Transformada Z inversa
2.5.1.
z
zc
obtener la representacion temporal por el metodo de la division larga. En este caso, al
realizar la division se obtiene:
X(z) =
z
= 1 + cz 1 + c2 z 2 + c3 z 3 +
zc
22
TRANSFORMADA Z INVERSA
Ejemplo 2.4
Sea
X(z) =
0,1z 2
z 2 1,9z + 0,9
2.5.2.
Descomposici
on en fracciones
El metodo consiste en descomponer la representacion en transformada Z en fracciones simples y aplicar las equivalencias correspondientes a cada fraccion. Para ello
basta con buscar en las tablas de la transformada Z. Un detalle a tener en cuenta es
que cuando la transformada Z tiene en su numerador un termino z es mejor descomponer X(z)
en lugar de X(z) directamente. Si ese termino no esta presente se puede
z
descomponer directamente, de manera analoga a lo que se hace con la transformada
de Laplace inversa para sistemas continuos.
23
Ejemplo 2.5
Sea
X(z) =
(1 eaT )z
(z 1)(z eaT )
z
z
z 1 z eaT
Ejemplo 2.6
Sea
X(z) =
(1 eaT )
(z 1)(1 eaT )
(1 eaT )
1
1
=
aT
(z 1)(1 e )
z 1 z eaT
Notese que
1
z
= z 1
z1
z1
es decir corresponde a un escalon unitario retrasado, {1k1 }. Aplicando al otro termino
esta consideracion se ve que corresponde con {eaT (k1) }. Por tanto:
{xk } = {1k1 + eaT (k1) }
Notese que este tipo de terminos aparecera siempre en sistemas con retardo (en este
caso el retardo es 1).
DE TRANSFERENCIA EN Z
FUNCION
24
2.6.
Funci
on de transferencia en Z
{gk}
{yk}
Y (z) = Z {yk }
U (z) = Z {uk }
G(z) = Z {gk }
Y (z)
U (z)
Y (z)
b0 + b1 z 1 + + bm z m
=
U (z)
1 a1 z 1 an z n
Captulo 3
Proceso de muestreo
3.1.
Introducci
on
MUESTREO
REF
T
e(t) {ek}
COMPUTADOR
{uk}
C. D/A +
M.O.C.
u(t)
PLANTA
C. A/D
SALIDA
y(t)
PLANTA DISCRETIZADA
26
de control solo cambia en los instantes en los que la salida del computador se conecta
a la planta. Esos instantes son los intervalos de muestreo y a T se le llama tiempo de
muestro. La figura 3.2 ilustra el muestreo de una se
nal continua y la aplicacion de un
mantenedor o retenedor de orden cero a la se
nal muestreada.
1. Muestrear la se
nal continua.
nal de control) hasta el siguiente periodo de muestreo.
2. Mantener la salida (se
3.2.
Z2
fT (t)ejn t dt
FT (n ) =
donde n =
2
n
T
n = 0, 1, . . .
(3.1)
T2
1X
1 X
jn t
fT (t) =
FT (n )e
=
FT (n )ejn t
T
2
donde =
2
T
(3.2)
En el caso de que la se
nal a transformar no fuese periodica se considera que el periodo
T tiende a infinito por lo que el sumatorio de la antitransformada se aproxima por una
27
F () =
(3.3)
1
f (t) =
2
Z
f ()ejt dw
(3.4)
Notese que F () es un n
umero complejo, por lo que a la hora de representarla se
utilizaran dos graficas, una para el modulo y otra para la fase.
La transformada de Fourier nos da informacion sobre la distribucion de la energa
de una se
nal a lo largo del espectro de frecuencias que esta ocupa. Una diferencia
entre la transformada de una se
nal periodica y la de otra que no lo es, es que una se
nal
periodica tiene un espectro de frecuencia finito, mientras que una no periodica presenta
energa (en mayor o menor medida) en todas las frecuencias.
3.3.
28
La se
nal portadora tendra la forma:
p(t) =
(t kT )
x (t) =
x(t)(t kT ) = x(t) p(t)
(3.5)
k=0
Notese que a la se
nal x(t) se le corresponde su transformada de Fourier X(), mientras que a la se
nal portadora, por ser periodica le corresponde como transformada de
Fourier:
T
Z2
2
P (n ) =
(t)ejn t dt = 1 n =
n
T
T2
Z
x (t)ejt dt =
x(t) p(t)ejt dt
(3.6)
1 X jn t
e
T
1 X jn t jt
1 X
X (w) =
x(t)
e
e
dt =
x(t)ej(n )t dt
T
T n=
(3.7)
1 X
X (w) =
X( n )
T n=
n =
2
n
T
(3.8)
29
El espectro en frecuencia de la se
nal muestrada x (t) tiene la misma forma
que la de la se
nal sin muestrar x(t), atenuada por un factor T1 y repetida
radianes por segundo.
en la frecuencia cada = 2
T
Esto se ilustra en la figura 3.6. Notese que para n = 0 entonces n = 0 y X (0 ) =
1
X().
T
3.4.
Reconstrucci
on de una se
nal muestreada
Filtro
T
|X*( )|
1/T
|X( )|
Figura 3.5: Uso de un filtro paso banda para obtener el espectro en frecuencia de la se
nal original a
partir del de la muestreada.
DE UNA SENAL
RECONSTRUCCION
MUESTREADA
30
Notese que este proceso es posible siempre que las repeticiones de X() esten suficientemente separadas. Las repeticiones aparecen cada 2
radianes por segundo, por
T
lo que si el tiempo de muestreo T crece la separacion disminuira, hasta que llegue un
momento en el que las repeticiones se ((montaran)) unas sobre otras, solapandose y
dejando irreconocible el espectro original (ver figura 3.6). En ese caso no sera posible
reconstruir la se
nal original.
|X*( )|
1/T
31
Evidentemente como s = 2
la condicion para que el tiempo de muestreo sea tal que
T
permita la reconstruccion de la se
nal es:
T
(3.9)
Si una se
nal no contiene componentes en frecuencias superiores a c , puede
ser completamente caracterizada por los valores muestreados en instantes
de tiempo separados por T c .
.
Como regla practica este resultado no se lleva al lmite, pues los filtros distan mucho
de ser ideales, de manera que se suele usar un tiempo de muestreo entre 10 y 20 veces
mas rapido que la constante de tiempo caracterstica del sistema continuo.
3.5.
DE LA FUNCION
DE TRANSFERENCIA PULSADA
OBTENCION
32
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
10
20
30
40
50
60
la se
nal que se obtiene al muestrear no coincide con la original. Es mas su frecuencia es
aproximadamente un quinto de la original y los valores obtenidos coinciden con los que
se obtendrian muestreando la se
nal x(t) = sen( 15 t). Por lo tanto la se
nal x(t) = sen( 51 t)
sera una se
nal alias de la original con este tiempo de muestreo.
3.6.
Obtenci
on de la funci
on de transferencia pulsada
33
G(s)
.
s
1 esT 1
s
s+a
sT
esT
1
1
e
1
1
1
g(t) = L
=L
L
s(s + a) s(s + a)
s(s + a)
s(s + a)
Notese que en la expresion anterior, las funciones a las que se aplica la antitransformada
son la misma, excepto que la segunda es la primera retrasada un tiempo T ,por lo
34
DE LA FUNCION
DE TRANSFERENCIA PULSADA
OBTENCION
1
11 1 1
1
1
1
g1 (t) = L
=L
= (1 eat )
s(s + a)
as as+a
a
Luego
1
1 eakT
a
Aplicamos la transformada Z a lo anterior obteniendose (en este caso se pueden usar
directamente las tablas):
1
1 akT 1
z
z
=
G1 (z) = Z {1} Z e
a
a
a z 1 z eaT
{g1k } =
Y usando este resultado se puede calcular la funcion de transferencia pulsada del sistema original:
1
1
1 1 eaT
1
1 z
G(z) = (1 z )G1 (z) = (1 z )
=
a z 1 z eaT
a z eaT
Captulo 4
An
alisis de sistemas muestreados
4.1.
Y (z)
b0 + b1 z 1 + + bm z m
=
U (z)
1 + a1 z 1 + + an z n
N (z)
Nu (z)
b0 z n + b1 z n1 + + bm z nm Nu (z)
n
n1
z + a1 z
+ + an
Du (z)
(z p1 ) (z pn ) (z pu1 ) (z pum )
35
36
A1
A2
An
Bu1
Bum
+
+ +
+
+ +
z p1 z p2
z pn z pu1
z pum
(4.2)
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
37
0.8
2.5
0.6
2
0.4
1.5
0.2
0
4
6
0<p<1
10
10
10
p>1
3
2
0.5
1
0
1
2
0.5
4
6
1 < p < 0
10
4
p < 1
Figura 4.1: Evolucion de una secuencia de la forma (4.3) para distintos valores de pi .
38
Si hay un polo fuera del crculo unidad, es decir |pi | > 1, el termino correspondiente
no se amortiguara con lo que el sistema no sera estable.
En el estudio de sistemas continuos el resultado de estabilidad mas conocido establece que un sistema es estable si todos sus polos tienen parte real negativa. Es esto
equivalente al resultado enunciado en la propiedad 4.1? Recuerdese que
z = eTm s
Tomese un punto de la frontera de estabilidad del plano s, es decir un punto en el eje
imaginario del plano s. Estos puntos son los que cumplen que
s = j
es decir con parte real igual a cero. Esto supone que
z = eTm j = 1Tm
es decir, z es un n
umero complejo de modulo unidad y argumento Tm . Por tanto un
punto en la frontera de estabilidad del plano s se transforma en un punto en la frontera
de estabilidad del plano z.
Que ocurre si tenemos un punto en el plano s con parte real distinta de cero ? Ese
punto tendra la forma s = + j, por lo que su correspondencia en el plano z sera
z = eTm s = eTm (+j) = eTm eTm j
lo que implica que
z = eTm Tm
o lo que es lo mismo un n
umero complejo con modulo eTm y argumento Tm . Si
consideramos que es constante y variamos , esto nos da un crculo de radio eTm . Si
es mayor que cero, el punto en el plano s corresponde a la zona inestable. El crculo
correspondiente en el plano z tendra modulo mayor que la unidad, pues eTm > 1 para
> 0. Si es menor que cero, entonces es facil ver que eTm < 1, por que e estara
elevado a un exponente negativo. Por tanto el crculo asociado sera de modulo inferior
a la unidad y por tanto el punto en la region estable del plano s se transformara en
un punto estable en el plano z.
Que ocurre para el caso de s = 0 ? En este caso z = eTm 0 = 1, por lo que se
transforma en z = 1. Esto nos indica que un polo en cero en continuo, es decir un
polo integrador, corresponde a un polo en z = 1 para un sistema en tiempo discreto.
Analogamente es facil ver que si s = , la transformacion correspondiente es z =
0. Finalmente partiendo de estos dos resultados se puede comprobar, que, la parte
negativa del eje real en el plano s (es decir todos los valores reales de s desde s = 0
hasta s = ), se transforma en la parte del eje real del plano z que va desde z = 1
hasta z = 0.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
4.1.1.
39
A(z) = a0 z n + a1 z n1 + + an = 0
El criterio de Jury se basa en la construccion de una tabla, cuyas dos primeras filas
son los coeficientes de A(z) en orden directo e inverso, es decir
a0
an
a1
an1
an1
a1
an
a0
Una tercera fila se calcula restando a los elementos de la primera fila los de la
segunda multiplicados cada uno por n = aan0 , resultando
a0
an
a1
an1
an1
a1
an
a0
an1
0
an1
1
an1
n1
A continuacion se a
nade una cuarta fila formada por los coeficientes de la tercera
fila (excepto el u
ltimo) escritos en orden inverso:
a0
an
a1
an1
an1
a1
an
a0
an1
0
an1
n1
an1
1
an1
n2
an1
n1
an1
0
Una quinta linea se obtiene restando a la tercera fila los elementos de la cuarta
an1
multiplicados por n1 = an1
n1 , obteniendo:
0
40
a0
an
a1
an1
an1
a1
an
a0
an1
0
an1
n1
an1
1
an1
n2
an1
n1
an1
0
an2
0
an2
1
El proceso continuara a
nadiendo una sexta fila formada por los coeficientes de la
quinta (menos el u
ltimo) escritos en orden inverso, etc . . . hasta que al final se obtendra
una tabla con 2n + 1 filas:
a0
an
a1
an1
an1
a1
an
a0
an1
0
an1
n1
an1
1
an1
n2
an1
n1
an1
0
an2
0
an2
n2
an2
1
an2
n3
..
.
a00
En general los elementos de la tabla se calculan mediante la expresion:
ak1
= aki k akki
i
siendo
k =
akk
ak0
Teorema 4.1 Si a0 > 0 entonces el polinomio A(z) tiene todas las raices dentro del
as,
crculo unidad si y solo si todos los ak0 con k = 0, 1, 2, . . . , n 1 son positivos. Adem
k
k
umero de
umero de valores a0 negativos es igual al n
si ning
un a0 es cero, entonces el n
raices de A(z) que estan fuera del crculo unidad.
Corolario 4.1.1 Si todos los ak0 para k = 1, . . . , n 1 (n
otese que se excluye k = 0)
0
son positivos, entonces la condici
on a0 > 0 es equivalente a las condiciones:
A(1) > 0
Estas condiciones son necesarias para la estabilidad, por lo que se pueden usar antes
de formar la tabla.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
41
Ejemplo 4.1
Estabilidad de un sistema de segundo orden generico. Considerese la ecuacion caracterstica:
A(z) = z 2 + a1 z + a2 = 0
Se forma la tabla:
1
a2
a1
a1
a2
1
2 = a2
a22
1
a1 (1 a2 )
a1 (1 a2 )
1 a22
0
1 =
1 a22
a21 (1a2 )
1+a2
a1
1+a2
De esta tabla se desprende que todas las raices estaran en el crculo unidad si
1 a22
1 a22
a21 (1a2 )
1+a2
> 0
> 0
4.2.
En esta seccion se vera los distintos tipos de respuesta transitoria de sistemas discretos en funcion de la posicion de los polos. Como ya se ha visto en la seccion 4.1,
los sistemas cuyos polos esten fuera del circulo unidad son inestables y sus respuestas
transitorias son inestables. Los que esten dentro del circulo unidad seran estables y la
respuesta se amortigua, mas o menos lentamente dependiendo de lo cerca que esten
de la frontera de estabilidad. Los que esten en la frontera de estabilidad produciran
una respuesta oscilatoria estable en el sentido de que permanece acotada pero no se
amortiguara. Las figuras 4.4 y 4.5 muestran las distintos casos para polos en el plano
42
1.5
0.5
0.5
1.5
2.5
2.5
1.5
0.5
0.5
1.5
2.5
s y sus equivalentes en el plano z. Puede observarse que las respuestas la forma de las
respuestas se preserva al muestrear pero tambien como la posicion de los polos cambia.
Por otra parte, es interesante tambien observar como va variando la respuesta impulsional de un sistema en funcion de la localizacion de sus polos. En la figura 4.6 puede
observarse que en el caso de que los polos esten en el eje real, la respuesta impulsional
sera oscilatoria en la parte negativa y no oscilatoria en la parte positiva. Como es logico
fuera del crculo unidad la respuesta es siempre inestable. Por otra parte si los polos son
complejos conjugados en el eje imaginario, puede observarse (ver figura 4.7) que son
siempre oscilatorios, tardandose mas en amortiguar la respuesta conforme se acercan
a la frontera de la region de estabilidad. En el caso de sistemas en los que los polos
sean complejos conjugados y esten dentro del circulo unidad la respuesta sera siempre estable y oscilatoria (ver figura 4.8), salvo en el caso en el que la parte real sea
positiva, en el que conforme la parte imaginaria se hace mas peque
na el caracter oscilatorio disminuye. Finalmente, cuando los polos estan en el cirtulo unidad la respuesta
es oscilatoria y no se amortigua, aunque la frecuencia de las oscilaciones depende de la
posicion de los polos (ver figura 4.9). Fuera del circulo unidad la respuesta impulsional
sera oscilatoria e inestable.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
43
Figura 4.4: Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en el plano s (a). Respuestas transitorias a los correspondientes polos discretos (b).
44
Figura 4.5: Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en los lmites de las franjas periodicas del plano s (c). Respuestas transitorias a los correspondientes polos discretos (d).
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
Figura 4.6: Respuestas ante un impulso para un sistema con un polo en el eje real.
45
46
Figura 4.7: Respuestas ante un impulso para un sistema con polos conjugados en el eje imaginario.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
47
Figura 4.8: Respuestas ante un impulso para un sistema con polos conjugados dentro del circulo
unidad.
48
Figura 4.9: Respuestas ante un impulso para un sistema con polos conjugados en el circulo unidad.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
4.3.
49
Supongase que se aplica al sistema como entrada un escalon unitario, cuya transformada
Z es
z
R(z) =
z1
El error en regimen permanente lo calcularemos como
z
(1 G(z)) z1
erpescalon = lm zz (1 z 1 )(1 G(z))R(z) = lm z1
z
z1
z1
1 z++bm z
= lm(1 G(z)) = 1 lm ba00+b
+a1 z++an z n
z1
= 1
m
P
i=0
n
P
i=0
z1
bi
ai
Ejemplo 4.2
Sea el sistema
G(z) =
0,2
z 0,9
0,2
= 1
1 0,9
50
Ejemplo 4.3
Sea un sistema de primer orden cualquiera
yk = ayk1 + buk1
determinar las condiciones para que tenga error en regimen permanente nulo frente a
una entrada escalon.
En este caso la funcion de transferencia es
G(z) =
b
za
b
1ab
=
1a
1a
4.3.1.
El caso mas interesante es el de los errores para sistemas en bucle cerrado. Supongamos un sistema cuya funcion de transferencia en bucle abierto es G(z) y que se coloca
en la configuracion usual de bucle cerrado con realimentacion unitaria. En este caso se
cumple que
Y (z) = G(z)E(z)
donde E(z) = R(z) Y (z)
y de ah se deduce que
E(z) = R(z) G(z)E(z)
E(z) =
1
R(z)
1 + G(z)
z1
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
51
Notese que Kp es en realidad la ganancia estatica del sistema, por lo que seg
un la
expresion anterior a mayor ganancia, menor error en regimen permanente. Por otra
parte si se desea que el error en regimen permanente frente a escalon sea cero, Kp debe
ser infinita. Eso se consigue si G(z) tiene un polo en z = 1. Este tipo de sistemas se
llama sistemas de tipo 1, y de manera mas general se considera la siguiente definicion:
Definici
on 4.1 Se llama tipo de un sistema al n
umero de polos en z = 1 que tiene
dicho sistema.
Notese que un polo en z = 1 se corresponde con un polo en s = 0 para sistemas en
tiempo continuo, por lo que esta definicion es congruente con la que se da para sistemas
continuos.
Veamos a continuacion el error en regimen permanente cuando la entrada es una
rampa. En este caso la transformada Z de la se
nal de entrada es:
R(z) =
zT
(z 1)2
1
(z1)
zT
(z1)G(z)
zT
1
lm (z1)G(z)
zT
z1
1
Kv
0
Kv
1
errpparabola
Ka
4.4.
Este resultado tiene como consecuencia que solo una determinada region del plano
s es la que resulta de interes. Esta region conocida como franja primaria es la que
2
esta entre j 2s y j 2s o lo que es lo mismo entre los n
umeros con fase 2T
T = y
(ver figura 4.10). Por encima y por debajo de esa franja tendramos infinitas franjas
complementarias en la que los n
umeros tienen los mismos equivalentes en z que los
correspondientes en la franja primaria.
Centrando la atencion en la franja primaria, considerese la figura 4.11a. Se definen
en ella una serie de puntos de interes en el plano s, de los que veremos cual es su
equivalente en el plano z. Dichos puntos seran:
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
53
1. El punto s = 0 se transforma en z = e0 = 1.
2. El punto s = j 2s se transforma en z = ej
con modulo uno y fase (180 grados).
s
T
2
3. Un punto s = + j 2s se transforma en z = e ej
modulo tendiendo a cero y fase .
s
T
2
4. Un punto s = j 2s se transforma en z = e ej
con modulo tendiendo a cero y fase .
, es decir un n
umero con
s
T
2
, es decir un n
umero
4.4.1.
Otras correspondencias
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
55
1 1
1T
Lugares de factor de amortiguamiento constante. El factor de amortiguamiento en sistemas continuos de segundo orden esta relacionado con el
denominador de la funcion de transferencia:
D(s) = s2 + 2n s + n2
Los lugares de amortiguamiento constante en el p
plano s son rectas (ver figura
4.14) dadas por s = n T + jd T , donde d = 1 2 n . La transformacion
en z es z = e(n +jd )T , cuyo modulo y fase resulta ser:
2
|z| = e 12 s
z = 2 ds
donde s = 2
. La curva que describen estos n
umeros al variar n se llama espiral
T
logartmica. Dicha curva, representada para frecuencias entre 0 12 s y
diversos valores de , se muestra en la figura 4.15. Para valores de la frecuencia
entre 21 s 0, las curvas son imagenes especulares de 4.15.
Lugares de frecuencia natural n constante. Como se muestra en la figura
4.14 los lugares de frecuencia natural constante en el plano s son crculos perpendiculares a los lugares de amortiguacion constante. La transformacion de s
en z es un mapeo conforme que preserva los angulos entre lugares, por lo que
los lugares de frecuencia natural constante seran tambien perpendiculares en z.
La figura 4.16 muestra ambos lugares en el plano z para diversos valores de y
n . Notese que los lugares para frecuencias entre 12 s 0, tambien son
imagenes especulares de 4.16.
CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS
57
Captulo 5
Dise
no de controladores discretos
5.1.
Discretizaci
on de reguladores continuos
A la hora de dise
nar un controlador en tiempo discreto es frecuente partir de un
controlador continuo obtenido mediante los metodos clasicos y discretizar este u
ltimo,
en lugar de realizar el dise
no directamente en tiempo discreto. El resultado de esta
discretizacion es implementado despues en forma de programa en un computador.
El caso mas com
un (y el que trataremos aqu) es el de los controladores PID, cuya
expresion en tiempo continuo es
u(t) = Kp e(t) +
1
Ti
Zt
e( )d + Td
de(t)
dt
donde u(t) es la entrada que se aplica en el instante t y e(t) = y(t) ref(t), es decir
la diferencia entre la salida y la referencia a seguir en t. Es importante destacar que el
resultado que se obtiene al aplicar la discretizacion es una aproximacion del controlador
original. Para obtener dicha aproximacion se pueden usar diferentes alternativas.
Comentario 5.1 En este tema se supone que el lector esta familiarizado con la sintona de controladores PID continuo, que normalmente se suele hacer a partir de las
reglas de Ziegler-Nichols. Estas reglas se resumen en la siguiente tabla:
59
DE REGULADORES CONTINUOS
DISCRETIZACION
60
P
PI
PID
Kp
Ti
Td
Km
0,9
Km
1,2
Km
3m
2m
0,5m
5.1.1.
Aproximaci
on rectangular hacia delante (Euler I)
k1
X
e(i)T =
i=0
k1
X
T ei
i=0
Esta aproximacion se ilustra en la figura 5.1, en la que la suma del area de los rectangulos sombreados sera la aproximacion de la integral.
T
e(t)
K-1
!
k1
T X
Td
uk = Kp ek +
ei +
(ek ek1 )
Ti i=0
T
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
61
Notese que esta expresion puede ser retrasada en el tiempo de manera que:
!
k2
T X
Td
uk1 = Kp ek1 +
ei +
(ek1 ek2 )
Ti i=0
T
Restando ambas expresiones se llega a que
Td
T
uk uk1 = Kp ek ek1 + ek1 +
(ek 2ek1 + ek+2 )
Ti
T
que a su vez se puede poner como
uk uk1 = q0 ek + q1 ek1 + q2 ek2
con
q0 = Kp 1 + TTd
q1 = Kp 1 2 TTd +
T
Ti
(5.1)
q2 = Kp TTd
Aplicamos la transformada Z a la ecuacion (5.1) obteniendose:
U (z)(1 z 1 ) = (q0 + q1 z 1 + q2 z 2 )E(z)
Finalmente se define la funcion de transferencia del controlador como:
C(z) =
U (z)
q0 + q1 z 1 + q2 z 2
=
E(z)
1 z 1
(5.2)
z1
T
DE REGULADORES CONTINUOS
DISCRETIZACION
62
5.1.2.
Aproximaci
on rectangular hacia atras (Euler II)
k
X
e(i)T =
i=1
k
X
T ei
i=1
e(t)
K-1
!
k
T X
Td
uk = Kp ek +
ei +
(ek ek1 )
Ti i=1
T
y de ah a:
uk uk1 = q0 ek + q1 ek1 + q2 ek2
con
q0 = Kp 1 + TTi + TTd
q1 = Kp 1 2 TTd
q2 = Kp TTd
Tz
z1
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
5.1.3.
63
Aproximaci
on bilineal (trapezoidal o Tustin)
k
k
X
X
e(i) e(i 1)
ei + ei1
(e(i 1 +
)T =
T
2
2
i=1
i=1
T
e(t)
K-1
Como en los casos anteriores se llega a un resultado igual en forma, pero variando
el valor de los coeficientes:
q0
q1
Td
T
= Kp 1 + 2Ti + T
Td
T
= Kp 2T
2
T
i
q2 = Kp TTd
Como se vera en la seccion siguiente, esta aproximacion se corresponde con una sustitucion de s por
2 z1
s,
T z+1
64
5.2.
(5.3)
kT
R
du(t)
dt
dt
0
(k1)T
R
0
du(t)
dt
dt
kT
R
= u((k 1)T ) +
(k1)T
kT
R
du(t)
dt
dt
(5.4)
(au(t) + ae(t)) dt
(k1)T
= u((k 1)T ) + A
Donde A es la integral de u(t) entre los instantes de muestreo k 1 y k tal y como se
muestran en la figura 5.4. A continuacion se vera cada caso particular de aproximacion
de la integral.
5.2.1.
En este caso se cumple que u(t) = u((k 1)T ) en todo el intervalo de integracion
de A por lo que:
ZkT
A=
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
65
e(t)
A
a
+a
z1
T
z1
T
o tambien
z , Ts + 1
5.2.2.
U (z)
aT
=
=
E(z)
1 + aT z 1
a
1z 1
T
+a
66
1 z 1
z1
=
T
zT
o tambien
z,
5.2.3.
1
1 Ts
Trapezoidal o Bilineal
uk + uk1
ek + ek1
A = aT
+ aT
2
2
u(t) = u((k 1)T ) +
uk + uk1
2
+ aT
ek + ek1
2
aT
2
(1z 1 )
+ aT
(1+z 1 )
2
a
2 (z1)
T (z+1)
+a
2 (z 1)
T (z + 1)
o tambien
z,
5.3.
1+
1
Ts
2
Ts
2
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
67
Figura 5.6: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion rectangular hacia delante (sombreada).
la region de estabilidad del plano z pero tambien un infinito puntos del plano z
fuera de dicha region, por lo que un controlador estable en el plano s no tiene
por que resultar en un controlador estable en el plano z cuando se aplica esta
aproximacion.
68
Ts
2
Ts
2
1+
1
1+
1
jT
2
jT
2
1 + jT
1+
2 T 2
4
2 T 2
4
1
1+
2 T 2
4
2 T 2
4
T
2 2 j
1 + 4T
1
1+
2 T 2
4
2 T 2
4
y=
T
2 2
1 + 4T
Se comprueba que
x2 + y 2 = 1
Esta region describe un circulo de radio uno centrado en el origen en el plano z
(ver figura 5.7) que es precisamente la region de estabilidad en el plano z. Esto
implica que un controlador estable en el plano s se corresponde con un controlador
estable en el plano z (y viceversa) cuando se aplica esta aproximacion.
Figura 5.7: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion bilineal (sombreada).
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
69
0,5
Figura 5.8: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion rectangular hacia atras (sombreada).
DIRECTO
METODO
DE DISENO
70
La aproximacion es:
s,
z1
T
z1 2
+2 z1
+1
T
T
z 2 2z+1 2z2
+ T +1
T2
1
100z 2 200z+100+20z20+1
1
100z 2 180z+81
Y (z)
b0 + b1 z 1 + b2 z 2 + + bn z n
=
U (z)
1 + a1 z 1 + a2 z 2 + + an z n
0,01z 2
1 1,8z 1 + 0,81z 2
y de ah se obtiene que:
uk = 1,8uk1 0,81uk2 + 0,01ek2
(5.5)
5.4.
M
etodo de dise
no directo
En esta seccion se vera una alternativa a la discretizacion de controladores continuos, el metodo de dise
no directo o metodo de Ragazzini-Truxal. Este metodo se
basa en dise
nar el controlador directamente en tiempo discreto, imponiendo una serie
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
71
C(z)G(z)
1 + C(z)G(z)
1
Gd (z)
G(z) 1 Gd (z)
(5.6)
5.4.1.
Causalidad
Nc (z)
Dc (z)
entonces
grado(Nc (z)) grado(Dc (z))
Veamos la causa de esta condicion. Si C(z) es igual a
C(z) =
b0 z m + b1 z m1 + + bm
U (z)
= n
E(z)
z + a1 z n1 + + an
DIRECTO
METODO
DE DISENO
72
D(z) Dd (z)
D(z)
Nd (z)
Nc (z)
C(z) =
=
=
N
(z)
d
N (z) 1
N (z) Dd (z) Nd (z)
Dc (z)
Dd (z)
(5.7)
Esto implica que si el sistema tiene un retardo la funcion deseada de bucle cerrado ha
de tener al menos el mismo retardo (por que la planta no puede reaccionar antes de
que cambie la referencia).
5.4.2.
Estabilidad Interna
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
73
Es conocido que las raices de esta ecuacion son los polos de bucle cerrado del sistema.
Esta ecuacion se puede reescribir como:
1+
Nc (z) N (z)
=0
Dc (z) D(z)
que equivale a
Dc (z)D(z) + Nc (z)N (z) = 0
(5.8)
D(z) = (z )D(z)
donde || > 1
c (z),
Si lo cancelamos con un cero en el numerador de C(z), es decir Nc (z) = (z )N
entonces teniendo en cuenta (5.8) la ecuacion caracterstica sera:
c (z)N (z) = 0
Dc (z) (z )D(z)
+ (z )N
+N
Es decir, la ecuacion caracterstica tiene una raiz inestable, lo que implica que uno de
los polos de bucle cerrado es inestable. El mismo analisis se podra repetir para los
ceros inestables de G(z).
El analisis anterior se refuerza por el hecho de que si bien es posible que analticamente se pueda cancelar un cero inestable con un polo inestable y viceversa, en la
practica por cambios y tolerancias en la dinamica de la planta o del controlador es
muy dificil lograr tal cancelacion o mantenerla en el tiempo. Por lo tanto se acabara
teniendo un cero y un polo inestable.
Veamos como se concretan estas ideas. Como se tiene que:
C(z) =
D(z) Gd (z)
N (z) 1 Gd (z)
DIRECTO
METODO
DE DISENO
74
5.4.3.
Errores en r
egimen permanente
Dependiendo de la referencia que se desee seguir con error en regimen permanente nulo
se tendran diferentes condiciones a imponer sobre Gd (z):
1. Error en r
egimen permanente nulo ante referencia escal
on: En este caso
z
R(z) =
z1
por lo que
erp = lm(z 1)(1 Gd (z))
z1
z
= lm z(1 Gd (z)) = 1 Gd (1)
z 1 z1
erp = lm T
z1
d
(1
dz
d
(z
dz
Gd (z))
dGd (z)
= T
dz z=1
1)
por que el error en regimen permanente ante rampa y escalon sera nulo si
T
Gd (1)
dGd (z)
dz
z=1
= 1
= 0
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
75
Ejemplo 5.2
Sea
G(z) =
1
z+2
Se pide hallar el controlador C(z) tal que el sistema en bucle cerrado tenga sus polos
en z = 0 y z = 0,8 y que el error en regimen permanente ante escalon sea cero.
En primer lugar se vera que forma ha de tener Gd (z). Se ha de cumplir que el exceso
de polos sobre ceros de Gd (z) sea mayor o igual que el de G(z), que en este caso es 1.
Por tanto, Gd (z) tendra como forma:
Gd (z) =
b0 z + b1
z(z 0,8)
De esta forma ya estan especificados los polos y se cumple que el exceso de polos es
igual.
En segundo lugar hay que imponer las condiciones de estabilidad interna. G(z) tiene
un polo inestable en z = 2 por lo que 1 Gd (z) tiene que tener un cero en z = 2.
Calcularemos primero 1 Gd (z):
1 Gd (z) = 1
b0 z + b1
z(z 0,8) b0 z b1
=
z(z 0,8)
z(z 0,8)
2(2 0,8) + b0 2 b1
=0
2(2 0,8)
(5.9)
b1 = 2
(5.10)
CONTROL EN UN NUMERO
FINITO DE INTERVALOS. CONTROL DEAD-BEAT
76
1,8z + 2
2(0,9z + 1)
=
z(z 0,8)
z(z 0,8)
1
Gd (z)
2(1 0,9z)
2(z 1 0,9)
z(z0,8)
C(z) ==
= (z + 2)
=
=
G(z) 1 Gd (z)
(z 1)
1 z 1
1 2(0,9z+1)
z(z0,8)
Luego
C(z) =
U (z)
2(z 1 0,9)
=
E(z)
1 z 1
Por tanto:
U (z)(1 z 1 ) = E(z)(1,8 + 2z 1 ) uk = uk1 1,8ek + 2ek1
5.5.
Control en un n
umero finito de intervalos. Control dead-beat
a0 z N + a1 z N 1 + + aN
zN
donde N es mayor o igual que el orden del sistema n. Notese que en esta Gd (z) todos
los polos de bucle cerrado estan en z = 0. En esta configuracion el error llega a 0 en N
tiempos de muestreo y el tiempo de asentamiento es t = N T , donde T es el tiempo
de muestreo.
Es habitual que N tome el valor mnimo posible, es decir N = n. En este tipo
de control, llamado dead-beat el u
nico parametro de dise
no es el tiempo de muestreo.
Si tomamos un tiempo de muestreo muy peque
no la magnitud de la se
nal de control
aumenta drasticamente y el sistema puede sobreoscilar mucho.
Veremos como se dise
na el controlador en este caso, partiendo de que Gd (z) sera
Gd (z) =
Nd (z)
zN
DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO
77
C(z) =
d
1
Gd (z)
D(z)
D(z) Nd (z)
zN
=
N N (z) =
z
d
G(z) 1 Gd (z)
N (z)
N (z) z N Nd (z)
N
(5.11)
Por otra parte la funcion de transferencia entre la referencia y la salida del controlador
(z)
Gu (z) = UR(z)
debe tener tambien una respuesta impulsional finita, de manera que
Gu (z) =
U (z)
U (z) Y (z)
1
=
=
Gd (z)
R(z)
Y (z) R(z)
G(z)
D(z) Nd (z)
N (z) z N
podemos tomar
Nd (z) = M (z)N (z)
donde M (z) nos da mas grados de libertad. Sabiendo entonces que Nd (z) = M (z)N (z),
se lleva a (5.11) de manera que
C(z) =
Siendo una condicion es que el error en regimen permanente ante escalon sea nulo,
se puede elegir M (z) de manera que Gd (1) = 1 es decir
Gd (z) =
M (z)N (z)
1
1
M (1) N (1) = 1 M (1) =
=P
N
z
N (1)
bi
1
m= P
bi
zN
D(z) m
m N (z)
Ejemplo 5.3
Sea
G(z) =
b0 z + b1
(z a)
78
CONTROL EN UN NUMERO
FINITO DE INTERVALOS. CONTROL DEAD-BEAT
1
(z a) b0 +b
1
z1
1
(b z
b0 +b1 0
+ b1 )
1
(1 az 1 ) b0 +b
1
1
(b
b0 +b1 0
+ b1 z 1 )
(1 az 1 )
b1 (1 z 1 )
Captulo 6
Control de sistemas discretos en el
espacio de estados
6.1.
Representaci
on de sistemas discretos en el espacio de estados
Definici
on 6.1 Concepto de estado: El estado de un sistema dinamico es el conjunto mas peque
no de variables (llamadas variables de estado) tal que, el conocimiento
de esas variables en un determinado instante t0 junto con el conocimiento de los valores
de la se
nal de entrada para los instantes t t0 , permite determinar el comportamiento
y evoluci
on del sistema para cualquier instante de tiempo t t0 .
Las variables de estado se agrupan en el llamado vector de estado y el espacio ndimensional que determinan los posibles valores de esas variables, se denomina espacio
de estados.
La dinamica de un sistema se puede describir en funcion del valor del vector de
estados y de la se
nal de entrada (asumiendo que el sistema es no autonomo mediante
79
DE LA REPRESENTACION
DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS
80OBTENCION
(6.1)
u(k)
x(k+1)
+
z-1I
x(k)
G
Figura 6.1: Diagrama de bloques de la representacion en espacio de estados de un sistema LTI.
6.2.
Obtenci
on de la representaci
on de en espacio
de estados de sistemas discretos
b0 + b1 z 1 + b2 z 2 + + bn z n
Y (z)
=
U (z)
1 + a1 z 1 + a2 z 2 + + an z n
(6.3)
A continuacion se expondran dos de los metodos disponibles para obtener la representacion en espacio de estados del sistema descrito por (6.3).
6.2.1.
81
M
etodo de programaci
on directa
Y (z)
U (z)
(6.4)
se obtiene:
(6.5)
(6.6)
con:
Y (z)
U (z)
=
1
n
1
(b1 a1 b0 )z + + (bn an b0 )z
1 + a1 z + + an z n
(6.8)
De ah se obtiene que:
Q(z) = a1 z 1 Q(z) a2 z 2 Q(z) an z n Q(z) + U (z)
(6.9)
(n1)
Q(z)
Xn (z) = z 1 Q(z)
lo que teniendo en cuenta las propiedades de la transformada Z, implica que:
zX1 (z) = X2 (z)
zX2 (z) = X3 (z)
(6.11)
DE LA REPRESENTACION
DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS
82OBTENCION
(6.12)
x2 (k + 1) = x3 (k)
xn1 (k + 1) = xn (k)
Notese que seg
un la u
ltima igualdad de (6.11) se tiene que Q(z) = zXn (z), luego
teniendo en cuenta esto y el resto de las igualdades de (6.11) podemos reescribir la
expresion de Q(z) en (6.9) como:
zXn (z) = a1 Xn (z) a2 Xn1 (z) an X1 (z) + U (z)
(6.13)
o lo que es lo mismo:
xn (k + 1) = an x1 (k) an1 x2 (k) a1 xn (k) + u(k)
(6.14)
x1 (k + 1)
0
1
0
0
x1 (k)
0
x2 (k + 1) 0
0
1
0
x2 (k) 0
..
..
..
.
.
.
.
..
..
..
..
= .
+ . u(k)
.
xn1 (k + 1) 0
0
0
1 xn1 (k) 0
xn (k + 1)
an an1 an2 a1
xn (k)
1
(6.15)
Por otra parte, podemos reescribir tambien (6.10) teniendo en cuenta las igualdades
de (6.11) de manera que:
Y (z) = (b1 a1 b0 )Xn (z) + (b2 a2 b0 )Xn1 (z) + + (bn an b0 )X1 (z)
(6.16)
y(k) =
bn an b0 bn1 an1 b0
x1 (k)
x2 (k)
..
.
b1 a1 b0
xn1 (k)
xn (k)
+ b0 u(k)
(6.18)
Las ecuaciones (6.15) y (6.18) forman una representacion en espacio de estados del
sistema descrito por la funcion de transferencia (6.3) que se denomina forma can
onica
controlable.
6.2.2.
83
M
etodo de programaci
on anidada
(6.19)
(6.20)
(6.21)
(6.22)
Sustituyendo esta expresion en la definicion de las variables de estado (6.21) y multiplicando por z en ambos lados de cada igualdad se obtiene:
zXn (z) = Xn1 (z) a1 Xn (z) + (b1 a1 b0 )U (z)
zXn1 (z) = Xn2 (z) a2 Xn (z) + (b2 a2 b0 )U (z)
..
.
zX2 (z) = X1 (z) an1 Xn (z) + (bn1 an1 b0 )U (z)
zX1 (z) = an Xn (z) + (bn an b0 )U (z)
Antitransformando lo anterior:
x1 (k + 1) = an xn (k) + (bn an b0 )u(k)
x2 (k + 1) = x1 (k) an1 xn (k) + (bn1 an1 b0 )u(k)
..
.
xn1 (k + 1) = xn2 (k) a2 xn (k) + (b2 a2 b0 )u(k)
xn (k + 1) = xn1 (k) a1 xn (k) + (b1 a1 b0 )u(k)
(6.23)
LA REPRESENTACION
84
x1 (k + 1)
0
x2 (k + 1)
1
..
..
=
.
.
xn1 (k + 1)
0
(6.24)
x1 (k)
bn an b0
0 0 0 an
..
..
..
.. ..
..
+
.
.
.
. .
.
xn1 (k)
b2 a2 b0
0 1 0 a2
xn (k)
b1 a1 b0
xn (k + 1)
0 0 0 1 a1
x1 (k)
x2 (k)
.
.
y(k) =
0 0 0 1
+ b0 u(k)
.
xn1 (k)
xn (k)
u(k)
(6.25)
6.3.
La representaci
on en espacio de estados de un
sistema no es u
nica
85
x(k + 1) = G
(6.27)
= P 1 GP y H
= P 1 H. De la misma manera la ecuacion, de la salida del
con G
sistema se puede expresar como:
(6.28)
6.4.
Resoluci
on de las ecuaciones del espacio de estados
6.4.1.
Procedimiento recursivo
Iterando las ecuaciones del estado para un sistema LTI como (6.1) a partir de k = 0:
x(1) = Gx(0) + Hu(0)
x(2) = Gx(1) + Hu(1) = G2 x(0) + GHu(0) + Hu(1)
x(3) = Gx(2) + Hu(2) = G3 x(0) + G2 Hu(0) + GHu(1) + Hu(2)
..
.
generalizando para cualquier k > 0:
k
x(k) = G x(0) +
k1
X
Gkj1 Hu(j)
(6.29)
j=0
1
Observese que en la ecuacion (6.28) el estado aparece con , indicando que el vector de estados
es diferente al original. La salida sin embargo si coincide con la del sistema original pues ambas
representaciones son equivalentes.
86
Observese que x(k) depende del estado inicial y de los valores de la entrada. Por otra
parte, la salida se puede expresar como:
k
y(k) = CG x(0) + C
k1
X
(6.30)
j=0
6.4.2.
Matriz de transici
on de estados
Considerese la ecuacion:
x(k + 1) = Gx(k)
(6.31)
(0) = I
es decir:
(k) = Gk
A (k) se le llama la matriz de transicion de estados y contiene toda la informacion
sobre los movimientos libres del sistema descrito por (6.31). Estos movimientos libres
se refieren a los cambios de estado o evolucion del estado del sistema en ausencia de
entrada.
En terminos de (k) la solucion de la ecuacion de estados para el sistema (6.1)
viene dada por:
x(k) = (k)x(0) +
k1
X
(k j 1)Hu(j)
(6.32)
j=0
= (k)x(0) +
k1
X
(j)Hu(k j 1)
j=0
lo que lleva a:
y(k) = C(k)x(0) + C
k1
X
j=0
(j)Hu(k j 1) + Du(k)
(6.33)
6.4.3.
87
M
etodo basado en la transformada Z
G =Z
(zI G) z
k1
X
j=0
G=
0
1
0,16 1
H=
1
1
C=
1 0
(zI G)
=
"
=
"
=
z
1
0,16 z + 1
z+1
(z+0,2)(z+0,8)
0,16
(z+0,2)(z+0,8)
1
(z+0,2)(z+0,8)
z
(z+0,2)(z+0,8)
1
4 1
31 z+0,8
3 z+0,2
1
1
0,8
+ 0,8
3 z+0,2
3 z+0,8
5 1
1
53 z+0,8
3 z+0,2
1
1
13 z+0,2
+ 43 z+0,8
#
(6.35)
88
4
1
5
5
k
k
k
k
(0,2)
(0,8)
(0,2)
(0,8)
k
1
1
3
3
3
3
(k) = G = Z
(zI G) z =
0,8
1
4
k
k
k
(0,2)
+
(0,8)
(0,2)
+
(0,8)k
0,8
3
3
3
3
(6.36)
El ejemplo se puede completar resolviendo completamente la ecuacion de estado y la
de la salida para una se
nal de entrada dada por:
1
u(k) = 1 k = 0, 1, 2,
x(0) =
1
Teniendo en cuenta la transformada Z de la entrada (escalon unitario) y que se sabe
que:
X(z) = (zI G)1 [zx(0) + HU (z)]
se calcula:
zx(0) + HU (z) =
z
z
z
z1
z
z1
"
z2
z1
z 2 +2z
z1
x(k) =
17
(0,2)k + 22
(0,8)k +
6
9
3,4
17,6
(0,2)k 9 (0,8)k +
6
25
18
7
18
y(k) =
1 0 x(k)
17
22
25
= (0,2)k + (0,8)k +
6
9
18
6.4.3.1.
Se observa en el ejemplo 1.1 que gran parte del calculo se emplea en calcular (zI
G) . Esto puede ser muy engorroso cuando el orden de las matrices involucradas es
superior a 3. A continuacion se detalla un procedimiento alternativo para esos casos.
En primer lugar es conocido que, por definicion de matriz inversa:
1
(zI G)1 =
Adj(zI G)
|zI G|
89
a1 = traza(G)
a2 = 12 traza(GH1 )
H1 = G + a 1 I
1
0
1
1
1
a2 = traza
= 0,16
0,16 1
0,16 0
2
90
1
1
Adj(zI G) = Iz +
0,16 0
z+1 1
=
0,16 z
Finalmente:
(zI G)1
z+1 1
0,16 z
=
(z + 0,2)(z + 0,8)
6.5.
Discretizaci
on de las ecuaciones de estado continuas
(6.37)
(6.38)
donde puede observarse que las matrices G y H dependen del tiempo de muestreo T .
Para determinar el valor de G(T ) y H(T ) usaremos la solucion de la ecuacion de estado
en tiempo continuo:
Z
At
At
x(t) = e x(0) + e
eA Bu( )d
(6.39)
para
kT t kT + T
(6.40)
91
Se tiene que:
Z
x((k + 1)T ) = e
A(k+1)T
x(0) + e
x(kT ) = e
eA Bu( )d
(6.41)
Z
AkT
(k+1)T
A(k+1)T
kT
AkT
x(0) + e
eA Bu( )d
(6.42)
donde = T . Sea:
G(T ) = eAT
R T A
H(T ) =
e d B
0
(6.45)
(6.46)
que es la ecuacion a la que tenamos que llegar y por tanto se ha obtenido la ecuacion
de estado continuo discretizada.
En el caso particular (aunque muy com
un, y por tanto interesante) de que A sea
una matriz invertible se tiene que:
H(T ) = eAT I A1 B
Por otra parte, la ecuacion de la salida al ser discretizada queda:
y(kT ) = Cx(kT ) + Du(kT )
(6.47)
92
0 1
A=
0 2
Para ello se calcula:
(sI A) =
s 0
0 s
0 1
0 2
s 1
0 s+2
1
s
1
s(s+2)
1
(s+2)
1 12 (1 e2t )
At
1
1
e =L
(sI A)
=
0
e2t
Ejemplo 6.4
Como ejemplo de discretizacion de las ecuaciones de estado en tiempo continuo, considerese el siguiente sistema:
x = ax + u
y = x
Usando las expresiones de (6.45) se obtiene:
G(T ) = eAT
= eaT
y
H(T ) =
=
=
T A
e d B
0
R
T a
e
d
0
1eaT
a
Luego:
x(k + 1) = eaT x(k) +
y(k) = x(k)
6.6.
1eaT
a
93
u(k)
Controlabilidad y Observabilidad
6.6.1.
Controlabilidad
Definici
on 6.2 Un sistema dinamico es completamente controlable o de estado completamente controlable, si es posible transferir al sistema desde un estado inicial arbitrario a cualquier estado deseado en un tiempo finito. Tambien puede decirse que
ser
a completamente controlable, si cada variable de estado se puede controlar en un
tiempo finito por una se
nal de control que no este sujeta a ning
un tipo de restricci
on.
x(nT ) = G x(0) +
n1
X
j=0
Gnj1 Hu(jT )
94
CONTROLABILIDAD Y OBSERVABILIDAD
x(nT ) Gn x(0) =
.
.
.
H .. GH .. .. Gn1 H
u((n 1)T )
u((n 2)T )
..
.
(6.50)
u(0)
donde la matriz
h
Mc =
.
.
.
H .. GH .. .. Gn1 H
i
(6.51)
6.6.2.
95
(6.52)
(6.54)
sera:
..
.
.
.
. CH .. CGH .. .. CGn1 H
io
=m
(6.55)
Notese que en esta segunda forma de la ecuacion de salida, la presencia del termino
Du(kT ) no empeora la controlabidad del sistema, sino justo lo contrario. De hecho, al
introducirse una columna extra en la matriz de controlabilidad (la correspondiente a
D), se puede dar el caso que se pase de tener m1 columnas linealmente independientes
a tener m, por lo que se lograra la controlabilidad de la salida. Dicho de otra manera,
encontrar m vectores linealmente independientes siempre sera igual o mas facil entre
n + 1 vectores que entre solo n de esos vectores.
6.6.3.
Observabilidad
(6.56)
Definici
on 6.3 El sistema autonomo (6.56) es completamente observable si todo estado inicial x(0) se puede determinar de la observacion de y(kT ) durante un n
umero
finito de intervalos de muestreo. Para que ello ocurra, cada transici
on del estado debe
afectar a todos los elementos del vector de salida.
96
CONTROLABILIDAD Y OBSERVABILIDAD
97
6.6.4.
Principio de Dualidad
(6.59)
CONTROLABLE
OBSERVABLE
SI S1
ENTONCES S2
OBSERVABLE
CONTROLABLE
6.7.
Transformaci
on de un sistema en formas can
onicas
(6.60)
Notese que los sistemas S1 y S2 son diferentes, es decir, S2 no es una representacion alternativa
de S1 .
TRANSFORMACION
98
6.7.1.
Obtenci
on de la forma can
onica controlable
h
M=
.
.
.
H .. GH .. .. Gn1 H
W =
an1 an2
an2 an3
..
..
.
.
a1
1
1
0
a1
1
..
.
0
0
1
0
..
.
0
0
donde los coeficientes ai son los coeficientes de la ecuacion caracterstica del sistema,
es decir:
|zI G| = z n + a1 z n1 + + an1 z + an = 0
Se define el estado x(k) en funcion de la transformacion de otro vector de estados x(k):
x(k) = T x(k)
Entonces el sistema:
x(k) + Hu(k)
x(k + 1) = G
y(k) = Cx(k)
+ Du(k)
(6.61)
= T 1 GT , H
= T 1 H, C = CT , D
= D esta en forma canonica controlable.
con G
6.7.2.
Obtenci
on de la forma can
onica observable
h
N=
..
.
.
. G C .. .. (G )n1 C
= Q1 GQ, H
= Q1 H, C = CQ, D
= D y defnase el estado x(k) como
Sea G
x(k) = Q
x(k). Entonces el sistema (6.61) esta en forma canonica observable.
6.8.
99
Colocaci
on de polos mediante realimentaci
on
del vector de estados
En esta seccion se presentara una estrategia de control que permite elegir la situacion
de los polos de bucle cerrado del sistema, mediante la realimentacion lineal del vector
de estados. Se vera que la condicion necesaria para que esto se pueda conseguir es que
el sistema sea controlable. Por otra parte, se asumira que todas las variables de estados
son accesibles, es decir, podemos medirlas directamente sin tener que estimarlas por
otros procedimientos.
6.8.1.
Condici
on necesaria y suficiente para la colocaci
on arbitraria de polos
x(k+1)
x(k)
z-1I
G
u(k)
-K
Figura 6.2: Diagrama de bloques de un sistema controlado por una realimentacion del vector de
estados.
6.8.2.
Sean 1 ,2 , ,n los valores deseados para los polos de bucle cerrado, es decir,
para los autovalores de (G HK). Aquellos que sean complejos siempre iran por pares
conjugados. La ecuacion caracterstica del sistema en bucle abierto es:
|zI G| = z n + a1 z n1 + + an = 0
Se define una matriz de transformacion T = M W exactamente igual que la matriz
de transformacion necesaria para obtener la forma canonica controlable descrita en la
seccion 6.7.1. Se obtiene:
0
1
0
0
0
0
0
1
0
0
.
..
..
..
.
=
=
T 1 GT = G
T 1 H = H
..
..
.
.
.
0
0
0
0
1
an an1 an2 a1
Se define a continuacion:
= KT =
K
n n1 1
Entonces:
K
=
H
0
0
..
.
0
0
..
.
0
0
..
.
0
0
..
.
n n1
1
0
0 0
1
n n1 1
101
1 0 0
0
1
0
0 1 0 0
0
1
.. ..
.
.
.
..
.. ..
..
= z . .
.
0 0 0 0
0
0
0 0 1
a an1 an2
n
0
0 0
0
0 0
..
.
.
..
..
+ .
0
0 0
n n1 1
z
1
0
z
..
..
..
=
.
.
.
0
0
an + n an1 + n1 z + a1 + 1
0
0
..
.
1
a1
= h n n1 1 T 1
i
.
.
.
1
=
n an ..n1 an1 .. ..1 a1 T
(6.62)
que coloca los polos de bucle cerrado del sistema en los valores deseados. Notese
que si el sistema en bucle abierto viene dado en forma canonica controlable, se verifica
que T = I = T 1 .
6.8.2.1.
Procedimiento alternativo: la f
ormula de Ackermann
Existen otros procedimientos alternativos para el calculo de la matriz K. Aqu mencionaremos uno muy conocido, el que emplea la formula de Ackermann. Seg
un esto, la
expresion para K tomara la forma:
i1
h
.
.
.
K = 0 0 0 1
(G)
H .. GH .. .. Gn1 H
donde:
(G) = Gn + 1 Gn1 + + n1 G + n I
Los coeficientes i se calcularan como en el apartado anterior.
Finalmente, otro procedimiento que puede ser u
til para sistemas de bajo orden
consiste en tomar
K = k1 k2 kn
plantear la ecuacion caracterstica en funcion de los ki :
|zI G + HK| = 0
e igualar a los coeficientes de
z n + 1 z n1 + 2 z n2 + + n1 + n = 0
6.8.3.
Control Dead-Beat
Este es un tipo de control que resulta ser un caso particular del control por colocacion de polos.
Definici
on 6.4 Dado un sistema LTI, entenderemos como control dead-beat aquel que
consigue llevar el estado a cero en como maximo n intervalos de muestreo, donde n es
el orden del sistema.
Para obtener este tipo de control se deben especificar los polos de bucle cerrado conforme a lo que se establece en el siguiente lema.
Lema 6.3 Se demuestra que si se escogen los polos de bucle cerrado de manera que
esten todos en el origen (es decir, todos los autovalores de (G HK) igual a cero) se
consigue un control dead-beat.
103
Esto se lleva a la practica con una matriz de realimentacion del vector de estados
calculada mediante:
K = an an1 a1 T 1
Este tipo de control no goza de una reputacion excesivamente favorable porque habitualmente se precisa de una se
nal de control de amplitud muy grande para obtener la
respuesta dead-beat. De hecho en este tipo de control, el u
nico parametro de dise
no
que se ha de elegir es el tiempo de muestreo. Si este es muy peque
no, los n intervalos
de muestreo supondran un tiempo total muy corto, de manera que para llevar el estado
a cero partiendo de un estado inicial arbitrario se precisara un valor muy alto de la
se
nal.
Ejemplo 6.5
Sea un sistema
x(k + 1) = Gx(k) + Hu(k)
con
G=
0
1
0,16 1
0
1
Se desea determinar una matriz K, tal que los polos de bucle cerrado sean el par
complejo conjugado z = 0,5 j0,5.
En primer lugar hay que determinar la controlabilidad del sistema. Para ello, se
forma la matriz de controlabilidad:
h
i 0 1
..
H . GH = 1 1
cuyo rango es igual a dos (basta comprobar que su determinante es distinto de cero),
por lo que el sistema es controlable y se puede proceder a calcular K. La ecuacion
caracterstica de bucle cerrado deseada es:
|zI G + HK| = (z 0,5 j0,5)(z 0,5 + j0,5) = z 2 z + 0,5 = 0
(6.63)
por tanto, los coeficientes i son en este caso 1 = 1 y 2 = 0,5. Por otra parte, la
ecuacion caracterstica de bucle abierto del sistema es:
z
1
|zI G| =
0,16 z + 1
por lo que los coeficientes ai son a1 = 1 y a2 = 0,16. A partir de aqu se puede aplicar
cualquiera de los metodos explicados anteriormente.
Metodo 1
h
K=
.
2 a2 .. 1 a1
T 1
Observese que el sistema viene dado en forma canonica controlable, por lo que T = I
y por tanto:
K = 0,34 2
Metodo 2 (formula de Ackermann)
En este caso la formula de Ackermann sera:
i1
h
..
(G)
K= 0 1
H . GH
donde (G) es
(G) = G2 G + 0,5I
0,16 1
0
1
0,5 0
=
+
0,16 0,84
0,16 1
0 0,5
0,34 2
=
0,32 2,34
por lo que
0 1
K =
0 1
1 1
=
0,34 2
0,34 2
0,32 2,34
Metodo 3
Este procedimiento es apropiado para sistemas de bajo orden como el que nos ocupa.
En primer lugar, se toma K = [k1 k2 ] y se formula la ecuacion caracterstica de bucle
cerrado en funcion de K:
z 0
0
1
0
+
|zI G + HK| =
k1 k2
0
z
0,16
1
1
z
1
=
0,16 + k1 z + 1 + k2
= z 2 + (1 + k2 )z + k1 + 0,16 = 0
la comparamos con la ecuacion caracterstica deseada (6.63) e identificamos coeficientes:
1 + k2 = 1
k1 + 0,16 = 0,5
105
a2 a1
T 1 =
0,16 1
x1 (k)
x1 (k + 1)
0
1
x1 (k)
0
=
+
0,16 1
x2 (k + 1)
0,16 1
x (k)
1
x2 (k)
2
0 1
x1 (k)
=
0 0
x2 (k)
Supongamos ahora que el estado inicial es
x1 (0)
a
=
x2 (0)
b
entonces se tiene que:
x1 (1)
x2 (1)
0 1
0 0
a
b
b
0
x1 (2)
x2 (2)
0 1
0 0
b
0
0
0
luego este control lleva al estado a cero en 2 pasos y es efectivamente un control deadbeat.
6.9.
En el control por colocacion de polos se asume que el estado se puede medir directamente. En ocasiones, sin embargo, puede que esta suposicion no se cumpla y todas
106
o algunas de las variables de estado no puedan ser medidas. Es decir, puede que haya
variables de estado no accesibles. En cualquier caso, para poder controlar el sistema se
deberan estimar los valores de esas variables de estado no accesibles. Este proceso de
estimacion es lo que se conoce como observaci
on.
Un observador del estado es un subsistema del sistema de control, que realiza la
estimacion de las variables de estado basandose en los valores medidos (observados) de
las salidas y la se
nal de control. Se distinguen tres tipos de observadores, en funcion
de las variables de estado que se estimen:
1. Observador del estado completo. Es aquel que estima todas las variables de estado.
2. Observador de orden mnimo. En este caso solo se estiman aquellas variables de
estado que no son accesibles.
3. Observador de orden reducido. Este tipo de observador estima todas las variables
no accesibles y algunas de las accesibles.
En esta asignatura nos centraremos en los dos primeros tipos de observadores. Como
en el caso de la colocacion de polos, formularemos en primer lugar las condiciones para
que se pueda llevar a cabo la observacion.
on necesaria y suficiente para la observacion del estado. Dado un
Lema 6.4 Condici
sistema LTI, se puede determinar x(k + 1) a partir de y(k), y(k 1), ,y(k n + 1) y
u(k),u(k 1), ,u(k n + 1), donde n es el orden del sistema, s y solo s, el sistema
es completamente observable.
Por tanto x(k + 1) se puede determinar, si el sistema es observable, en n pasos. Sin
embargo, no debe olvidarse que sobre el sistema act
uan ruidos y perturbaciones. Por
esta razon no es posible utilizar un procedimiento algebraico para determinar el estado,
sino que se ha de acudir a un procedimiento iterativo para estimarlo.
6.9.1.
(6.64)
107
Si se dispone de una aproximacion del estado en k, que denotaremos x(k), esta evolucionara seg
un la dinamica del sistema
x(k + 1) = G
x(k) + Hu(k)
y(k) = C x(k)
(6.65)
Si las condiciones iniciales son las mismas, es decir, si x(0) = x(0) entonces se verifica
que x(k) = x(k). Sin embargo, si las condiciones iniciales son diferentes entonces, de
manera general, x(k) 6= x(k). Podemos pues, definir el error de estimacion en k como:
e(k) = x(k) x(k)
Restando la ecuacion de estado aproximada (6.65) de la real (6.64):
x(k + 1) x(k + 1) = G (x(k) x(k))
que teniendo en cuenta la definicion del error de aproximacion es equivalente a:
e(k + 1) = Ge(k)
que se puede considerar como un sistema dinamico autonomo. Si G es una matriz
estable (es decir, si sus autovalores estan dentro del crculo unidad) el ((estado)) de este
sistema tiende a cero, es decir:
e(k) 0 x(k) x(k)
Por tanto, si el sistema es estable, la propia dinamica del sistema hace que la aproximacion del estado tienda al valor real del mismo. Esto quiere decir que podramos usar
la propia ecuacion del sistema para obtener en cualquier instante k una aproximacion
del estado, cuyo error ira decayendo a lo largo del tiempo. Esta convergencia al valor
real, sin embargo, puede ser muy lenta, y por otra parte no siempre se tratara con
sistemas estables. Por tanto, esta estrategia no es muy aconsejable.
Notese que en el esquema que se ha presentado, no se hace uso de la salida del sistema, que siempre sera accesible. Esto puede ser aprovechado para mejorar el rendimiento del observador introduciendose un termino corrector, de manera que la ecuacion para
obtener la aproximacion del estado para el instante k + 1 sera:
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) C x(k))
donde Ke es una matriz de ponderacion o ganancia. Este termino se puede elegir de
manera que se mejore el rendimiento, incluso si existen discrepancias entre las matrices
del sistema y las del proceso real al que dicho sistema representa.
108
6.9.2.
Sea un sistema LTI observable (6.64) con una ley de control por realimentacion
negativa del vector de estados,
u(k) = Kx(k)
siendo el estado del sistema x(k) no accesible pero s observable. Por tanto, podemos
sustituir el valor del estado por una aproximacion de manera que
u(k) = K x(k)
y de ah, aplicando las consideraciones de la seccion 6.9.1 se obtiene
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) y(k))
= (G Ke C)
x(k) + Hu(k) + Ke y(k)
= (G Ke C HK)
x(k) + Ke y(k)
(6.66)
Esta
es la llamada ecuacion del observador predictivo. La palabra predictivo se utiliza
para indicar que la estimacion del valor futuro del estado en k + 1, se realiza utilizando
informacion disponible en el instante k. A los autovalores de la matriz (G Ke C)
se les suele denominar polos del observador, y como se hizo en la seccion 6.9.1, se
vera a continuacion que marcan la dinamica de la evolucion del error de observacion.
En efecto, si se resta la ecuacion del observador de la del sistema real (6.64) se llega a
que
e(k + 1) = (G Ke C)e(k)
de lo que puede observarse que los polos del observador determinan la dinamica del
error. Si G Ke C es estable, el error convergera a cero independientemente de la
estimacion del estado inicial x(0).
La ecuacion del observador y del propio sistema en espacio de estados controlado
por la realimentacion lineal del vector de estados, pueden representarse mediante un
diagrama de bloques que se ilustra en las figuras 6.3 y 6.4.
Finalmente, es evidente que interesa que la estimacion del estado converja rapidamente al valor real de dicho estado. Una manera evidente de lograr esto es colocar todos
los polos del observador en cero, de manera que se consiga que el error de aproximacion
muestre una respuesta dead-beat. Esto se consigue eligiendo de manera apropiada Ke .
u(k)
x(k+1)
+
y(k)
x(k)
z-1I
109
G
u(k)
-K
x (k)
y(k)
u(k)
OBSERVADOR
Figura 6.3: Diagrama de bloques de un sistema LTI controlado mediante una realimentacion del vector
de estados que estima el estado con un observador.
x (k)
u(k)
+
+
x(k+1)
+
z-1I
x (k)
C
y (k)
Ke
y(k)
110
6.9.2.1.
C
alculo de Ke
El procedimiento para elegir Ke de manera que se coloquen los polos del observador
en unos valores especificados es analogo al de la colocacion de polos vista en la seccion
6.8. Si la ecuacion caracterstica deseada del observador es:
z n + 1 z n1 + + n1 z + n = 0
y la del sistema es
z n + a1 z n1 + + an1 z + an = 0
entonces
Ke = (W N )1
n an
n1 an1
..
.
(6.67)
1 a1
donde
W =
an1 an2
an2 an3
..
..
.
.
a1
1
1
0
a1
1
..
.
0
0
1
0
..
.
0
0
h
N=
.
.
.
C .. G C .. .. (G )n1 C
es decir, la misma matriz W empleada en la colocacion de polos y la matriz de observabilidad3 . Notese que si el sistema viene indicado en forma canonica observable
(W N )1 = I. Tambien puede emplearse la formula de Ackermann, que para este caso
es:
1
C
0
CG 0
Ke = (G)
..
..
.
.
n1
CG
1
donde
(G) = Gn + 1 Gn1 + + n1 G + n I = 0
Ejemplo 6.7
Considerese un sistema como (6.64) con
1 1
0,5
G=
H=
0 1
1
3
C=
1 0
A fin de obtener un texto mas legible se evita en lo posible hacer referencias a material anterior,
a
un a pesar de que esto pueda alargar la exposicion del tema al repetirse ecuaciones y expresiones.
111
dise
naremos un observador del estado. En primer lugar, se ha de comprobar que el
sistema es observable. Para ello se comprueba que
nh
io
1
1
.
rango
= rango
=2
C .. G C
0 1
luego el sistema es completamente observable. El siguiente paso es hallar la ecuacion
caracterstica del sistema en bucle abierto:
z 0
1
1
|zI G| =
0 z
0 1
= z 2 2z + 1 = 0
luego a1 = 2 y a2 = 1. Deseamos que el observador tenga una respuesta dead-beat,
luego la ecuacion caracterstica deseada del observador sera:
z 2 = 0 1 = 2 = 0
A continuacion se calculara Ke :
Ke = (W N )
con
N=
1 1
0 1
W =
resultando
Ke =
a1 1
1 0
2
1
1
2
2 1
1 0
C
alculo de Ke mediante la f
ormula de Ackermann
En este caso la formula de Ackermann es:
1
C
0
Ke = (G)
CG
1
con
(G) = G2 + 1 G + 2 I = G2
resultando
Ke =
1 1
0 1
1 0
1 1
0
1
2
1
112
Estudio de la evoluci
on del error de estimaci
on
Vamos a comprobar que el error cae a cero seg
un una respuesta dead-beat. Sea
a1
a2
x(0) =
x(0) =
b1
b2
entonces
G Ke C =
a1 a2
b1 b2
1 1
1 1
a
b
e1 (k + 1)
1 1
e1 (k)
=
e2 (k + 1)
1 1
e2 (k)
por lo que se calcula la evolucion de este
e1 (1)
=
e2 (1)
e1 (2)
=
e2 (2)
error:
1 1
1 1
a + b
a + b
1 1
1 1
0
0
a
b
a + b
a + b
luego, tal y como se pretenda, la estimacion del vector de estados coincide con el
valor real de dicho vector dos tiempos de muestreo despues de iniciarse la estimacion.
Finalmente, la ecuacion del observador es:
x1 (k + 1)
1 1
x1 (k)
0,5
2
=
+
u(k) +
y(k)
x1 (k + 1)
1 1
x1 (k)
1
1
6.9.2.2.
113
planta coincida con la dinamica real de la misma) este termino corrector debera tomar
un valor alto. Sin embargo, si la se
nal de salida esta contaminada por perturbaciones y
ruido en general procedente, por ejemplo, de los sensores de medida, entonces la se
nal
de salida no es fiable en el sentido de que no proviene u
nicamente de la dinamica real de
la planta. Por tanto, en estas situaciones el termino corrector debera ser mas peque
no.
Al seleccionar Ke se debe pensar no solo en reducir el error en base a una correccion
energica, sino que hay que tener en cuenta que cuando hay ruidos o perturbaciones,
una ganancia Ke alta no contribuira a reducir el error, porque las correcciones no iran
en la ((direccion)) correcta. Es decir, hay que llegar a un compromiso entre la velocidad
de respuesta y la sensibilidad a ruidos y perturbaciones.
6.9.2.3.
Efectos de la adici
on del observador
(6.68)
Cabe preguntarse si al usar el observador, se colocan los polos del sistema en el sitio
que se pretende al calcularse la ganancia de realimentacion del vector de estado K.
Que efectos tiene el observador sobre los polos de bucle cerrado? Para estudiar esto,
se analizara el efecto que tiene la adicion del observador sobre la ecuacion caracterstica
del sistema en bucle cerrado.
Sea el sistema (6.64) controlado mediante (6.68). La ecuacion de estado puede
reescribirse como:
x(k + 1) = Gx(k) HK x(k)
= (G HK)x(k) + HK(x(k) x(k))
= (G HK)x(k) + HKe(k)
donde e(k) es el error de observacion en el instante k. Recordemos que el error de
observacion viene dado por:
e(k + 1) = (G Ke C)e(k)
La ecuacion de estado y la del error, se pueden combinar en la ecuacion de un sistema
autonomo aumentado que describe la dinamica del sistema observado (es decir, de todo
el conjunto sistema-controlador-observador):
x(k + 1)
G HK
HK
x(k)
=
e(k + 1)
0
G Ke C
e(k)
114
zI G + HK
HK
0
zI G + Ke C
=0
es decir,
|zI G + HK||zI G + Ke C| = 0
Dado que las races de esta ecuacion son las races de cada uno de los dos determinantes
que aparecen, esto implica que los polos del sistema completo son los polos del sistema
en bucle cerrado, tal y como se han colocado mediante el dise
no de K junto con los
polos del observador. Por tanto, la colocacion de polos y la observacion son dos cosas
independientes, porque la adicion del observador no modifica los polos de bucle cerrado
del sistema tal y como se eligieron al dise
nar K. Por tanto:
Los polos del sistema se eligen para que se cumplan las especificaciones del sistema
de control.
Los polos del observador se escogen de manera que la respuesta del observador
sea mas rapida que la del sistema (para que esta u
ltima resulte dominante),
tpicamente 4 o 5 veces mas rapida.
6.9.3.
Supongase que x(k) es un n-vector y que y(k) es un m-vector. Como las m salidas
son combinaciones lineales del estado, hay m variables que no necesitan ser estimadas.
El observador de orden mnimo sera el que estime las n m restantes.
Para dise
nar el observador de orden mnimo estableceremos una particion del vector
de estados:
xa (k)
x(k) =
xb (k)
donde el m-vector xa (k) son las variables medibles (accesibles) y el n m-vector xb (k)
son las variables no medibles (no accesibles). Esta particion del vector de estados
115
..
G
.
G
ab
xa (k + 1)
Ha
aa .
xa (k)
= .. + u(k)
..
xb (k + 1)
xb (k)
Hb
Gba . Gbb
h
i xa (k)
.
.
y(k) =
I . 0
xb (k)
donde Gaa Rmm , Gab Rm(nm) , Gba R(nm)m , Gbb R(nm)(nm) , Ha
Rm1 , Hb R(nm)1 . La ecuacion de la parte del estado que es accesible (medible)
sera:
xa (k + 1) = Gaa xa (k) + Gab xb (k) + Ha u(k)
Notese que en esta ecuacion hay terminos que no son medibles, por lo tanto la podemos
reescribir agrupando los terminos medibles a la izquierda y los no medibles a la derecha:
xa (k + 1) Gaa xa (k) Ha u(k) = Gab xb (k)
(6.69)
Por otro lado, la parte del vector de estados que no se puede medir se puede escribir
como:
xb (k + 1) = Gba xa (k) + Gbb xb (k) + Hb u(k)
Observese que en esta ecuacion, los terminos que dependen de xa (k) y u(k) son conocidos mientras que el termino que depende de xb (k) es desconocido. Esta ecuacion la
podemos reescribir como
xb (k + 1) = Gbb xb (k) + [Gba xa (k) + Hb u(k)]
(6.70)
El dise
no del observador de orden mnimo se realiza tomando como referencia el del
observador de orden completo, cuya ecuacion de estados es
x(k + 1) = Gx(k) + Hu(k)
En el caso del observador de orden mnimo, la ecuacion (6.70), es decir, la ecuacion
que describe la evolucion de la parte del estado no medible, es la que hace el papel
de ecuacion de estado. Por otra parte, se conoce que la ecuacion de salida para el
observador de orden completo es:
y(k) = Cx(k)
donde y(k) es medible y Cx(k) es no medible (por serlo x(k)). Observese que se puede
establecer un paralelismo entre los terminos de esta ecuacion y los de la ecuacion (6.69).
En el caso del observador de orden mnimo, por tanto, se considera como ecuacion de
salida la ecuacion (6.69).
116
xb (k)
Gbb
Gba xa (k) + Hb u(k)
xa (k + 1) Gaa xa (k) Ha u(k)
Gab
Ke R(nm)m
(6.72)
117
6.9.2.1. Por ejemplo, si la salida y(k) es un escalar, es decir m = 1, se tienen que estimar
n 1 variables. La formula de Ackermann, por ejemplo, quedara:
1
Gab
0
Gab Gbb 0
Ke = (Gbb )
..
..
.
.
Gab Gn2
bb
donde
n2
(Gbb ) = Gn1
bb + 1 Gbb + + n1 I
1 0,2
0,02
G=
H=
0 1
0,2
C=
1 0
se pide
1. Dise
nar un controlador que coloque los polos de bucle cerrado en z = 0,6 j0,4.
2. Asumiendo que y(k) = x1 (k) es el u
nico estado accesible, dise
nar un observador
de orden mnimo con respuesta dead-beat.
En primer lugar, se ha de comprobar la controlabilidad y observabilidad del sistema:
nh
io
0,02
0,06
.
rango
= rango
=2
H .. GH
0,2 0,2
nh
io
1 1
..
rango
= rango
=2
C . GC
0 0,2
Luego el sistema cumple ambas condiciones. La ecuacion caracterstica del controlador
es:
z 1 0,2
= z 2 2z + 1
|zI G| =
0
z1
118
K = 2 a2 1 a1 T 1 = 0,48 0,8 T 1
donde la matriz T se calcula
h
T = H
como
i a 1 0,02 0,02
1
=
1 0
0,2 0,2
..
. GH
lo que lleva a
K=
25 2,5
25 2,5
8 3,2
x1 (k)
y(k)
= 8 3,2
= 8 3,2
x2 (k)
x2 (k)
En cuanto al observador de
que es de orden 1. La particion
.
Gaa .. Gab
... =
..
Gba . Gbb
1 .. 0,2
Ha
0,02
.
=
..
.
Hb
0,2
0 .. 1
119
K x(k)
8y(k) 3,2
x2 (k)
8y(k) 3,2(5y(k) + (k))
24y(k) 3,2
(k)
6.10.
Control
optimo LQR
Las tecnicas de control optimo conforman una de las ramas del control automatico
mas importantes en el desarrollo de las estrategias modernas de control mas utilizadas
hoy en da. Se han escrito numerosas monografas dedicadas a su estudio, y se ha
publicado una ingente cantidad de artculos en revistas especializadas. No obstante,
en estos apuntes solo se dara una pincelada sobre este particular, centrandonos en el
caso particular del control LQR con horizonte infinito, tambien conocido como LQR
de regimen permanente.
Las estrategias de control optimo calculan la ley de control de manera que se optimiza una cierta medida del rendimiento del controlador. Se parte de un sistema descrito
por
x(k + 1) = Gx(k) + Hu(k)
El objetivo es calcular una ley de control
u(k) = Kx(k)
de tal manera que se minimiza el funcional (que expresa un ndice de funcionamiento)
1X
(x (k)Qx(k) + u (k)Ru(k))
J=
2 k=0
(6.73)
CONTROL OPTIMO
LQR
120
siempre lo mas cerca posible del origen4 . Por otra parte, se observa que en el funcional
hay otro termino que pondera el valor de la secuencia de se
nales de actuacion. Este
termino impide que se obtenga una ley de control que lleve el estado al origen a expensas de una actuacion muy grande. Al minimizarse J, por tanto, se conseguira una ley de
control que por una parte acerque el estado al origen lo mas rapido posible, pero manteniendo un nivel de actuaciones moderado, encontrandose por tanto, una solucion de
compromiso entre el rendimiento del controlador y su nivel de actuacion. El sentido de
este compromiso puede venir dictado por diferentes razones, como por ejemplo moderar
el gasto de energa o combustible necesario para proporcionar la se
nal de actuacion.
Existen razones mas sutiles pero no por ello menos importantes para incorporar esta
ponderacion del esfuerzo de control. Por ejemplo, cuando existen discrepancias entre
el modelo del sistema y su dinamica real (algo que ocurre casi siempre, pues los modelos matematicos no pueden recoger todas las complejidades de los sistemas o procesos
reales) esta ponderacion del esfuerzo de control resulta en un sistema mas estable.
Para calcular la ley de control que minimiza el ndice (6.73) se define una matriz P
que satisface la siguiente ecuacion de Riccatti:
P = Q + G P G G P H(R + H P H)1 H P G
(6.74)
Esta es una interpretacion que hay que tomar con cierto cuidado, pues puede que se obtenga una
ley de control que provoque que el estado no se acerque al origen todo lo posible al principio pero que
lo lleve a dicho origen muy rapidamente en los instantes siguientes, manteniendo pues el valor de J
muy bajo.
6.10.1.
121
Soluci
on de la ecuaci
on de Riccatti
6.11.
Filtro de Kalman
R = E {(k) (k)}
Q = E {(k) (k)}
P0 = E {(0) (0)}
(6.75)
122
FILTRO DE KALMAN
(6.76)
que son las ecuaciones del filtro de Kalman de regimen permanente. Notese que para
resolver la ecuacion de Riccatti se puede usar el mismo metodo usado en el LQR.
Captulo 7
Modelos de procesos y
perturbaciones
7.1.
Introducci
on
124
7.2.
Como fuente de perturbaciones con una mayor variabilidad que los modelos clasicos
antes comentados, se pueden considerar las perturbaciones deterministas a trozos. Surgen de la necesidad de estudiar el efecto de perturbaciones mas realistas en sistemas
de control que se basan en alg
un tipo de esquema predictivo para calcular la se
nal
de control. En este tipo de sistemas, el considerar una perturbacion absolutamente
predecible (como en el caso de los modelos clasicos) no tiene utilidad alguna, pues se
pueden considerar directamente en el calculo de la ley de control.
Los modelos de perturbaciones deterministas a trozos parten de la suposicion de
que son generados por un sistema lineal, en el que la entrada es cero excepto en ciertos
instantes de tiempo separados por mas de n tiempos de muestreo, donde n es el orden
del sistema:
C(z 1 )
y(k) =
w(k)
A(z 1 )
suponiendose que el grado de C(z 1 ) es igual al grado de A(z 1 ). Si la entrada es
cero excepto en ciertos instantes de tiempo que estan separados, quiere decir que la
se
nal w(k) es un tren de pulsos. La amplitud y momento de aparicion de esos pulsos
son desconocidos. Esto es lo que le da variabilidad a la fuente de perturbaciones. Sin
embargo, una vez que aparecen y se conoce la amplitud del pulso, la evolucion de la
salida y(k) es perfectamente predecible pues la dinamica del sistema es conocida. De
ah el nombre de determinista a trozos.
7.3.
Procesos estoc
asticos
Estocastico: relativo a una variable aleatoria; algo que sigue una determinada distribucion de
probabilidad, usualmente con varianza finita.
125
w=w0
t0
t1
t2
t3
t4
......
126
Definici
on 7.2 Se denomina proceso estoc
astico estacionario, a aquel cuya distribuci
on estadstica para X(t1 ), X(t2 ),. . . ,X(tn ) es la misma que para X(t1 + ), X(t2 +
),. . . ,X(tn + ). Es decir, su distribucion no vara con el tiempo.
Definici
on 7.3 Se denomina ruido blanco discreto, a un proceso aleatorio que se puede
considerar como una secuencia cuyos elementos son variables aleatorias independientes
entre s cuya distribucion es identica. Se suele suponer que
E {x(k)} = 0
es decir, que el valor esperado es cero y ademas
E {x(i)x(j)} =
7.4.
En esta seccion veremos como se pueden generar diversos tipos de procesos estocasticos, cuando a un sistema lineal se le inyecta un ruido blanco v(k) ademas de
una entrada externa u(k) a traves de sendas funciones de transferencia.
El caso mas general es el llamado modelo de Box-Jenkins, el cual se ilustra en la
figura 7.2. Esta estructura es demasiado general, y normalmente se utilizan diversas
v(k)
C( z
D( z
)
)
y(k)
u(k)
B( z
A( z
1
1
)
)
127
Modelo de Media Movil (MA : Moving Average). Es el caso mas sencillo y viene
descrito por
y(k) = v(k) + c1 v(k 1) + c2 v(k 2) + + cn v(k n)
Con este modelo se pueden describir muchos tipos de perturbaciones aleatorias. Sin embargo, no incluye a los valores pasados de la salida por lo que no
servira para modelar procesos que tengan dinamica.
Modelo Autoregresivo (AR). Viene descrito por
y(k) + d1 y(k 1) + d2 y(k 2) + + dn y(k n) = v(k)
En este caso, la parte aleatoria correspondiente a la perturbacion tiene una estructura muy simple porque no depende de los valores pasados.
Modelo Autoregresivo de Media Movil (ARMA). Es la combinacion de los dos
anteriores, por lo que tomara la forma
y(k) + d1 y(k 1) + + dn y(k n) = v(k) + c1 v(k 1)
+c2 v(k 2) + + cn v(k n)
Este modelo permite describir procesos mas ricos que los anteriores. Sin embargo,
desde el punto de vista del control es interesante poder considerar el efecto de una
entrada externa, por lo que se considera el siguiente tipo de modelos de procesos
con ruidos.
Modelo Autoregresivo de Media Movil con una entrada exogena (ARMAX). Tambien llamado modelo CARMA (Controlled ARMA). Viene descrito por
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n)
+v(k) + c1 v(k 1) + + cn v(k n)
Modelo Autoregresivo con entrada exogena para mnimos cuadrados (ARX-LS ).
Este modelo surge como version simplificada del anterior, para el caso en el que
no se necesita que la fuente de perturbaciones tenga una estructura tan compleja.
Viene descrito por
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n) + v(k)
Como su nombre indica se utiliza en la identificacion por el metodo de los mnimos
cuadrados (vease el tema 9).
128
Captulo 8
Introducci
on a la identificaci
on de
sistemas
8.1.
Introducci
on
DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION
130
8.2.
Ideas b
asicas sobre identificaci
on de sistemas
La identificacion de sistemas es la aproximacion experimental al modelado de sistemas. Consiste en obtener un modelo a partir de observaciones obtenidas directamente
del propio sistema que se pretende modelar. La identificacion de un sistema conlleva
una serie de actividades y herramientas, de las que podemos destacar:
A continuacion, se iran desglosando las principales ideas de cada uno de estos aspectos.
8.2.1.
Planificaci
on de los experimentos
Dado que la identificacion de sistemas involucra experimentar con el proceso a modelar, es necesario tener en cuenta que, en general, es muy costoso experimentar con procesos industriales. Por tanto, es necesario elegir una tecnica que nos sea lo mas rentable
desde el punto de vista del tipo de experimentos necesarios. Algunas tecnicas son muy
sencillas, en el sentido de que una vez hecho el experimento es facil obtener el modelo.
Estas tecnicas, sin embargo, requieren que en los experimentos se utilicen se
nales de
entradas preestablecidas de manera muy precisa: pulsos, sinusoides, etc. . . Puede que
el proceso a modelar no pueda ser sometido a este tipo de entradas por consideraciones
de seguridad o motivos economicos. Otras tecnicas de identificacion pueden emplear
casi cualquier tipo de se
nal de entrada (es decir, son menos exigentes en el tipo de
experimentos necesarios), pero una vez realizado el experimento es mas complicado
obtener el modelo. Como comentario general, es necesario que en el experimento se
utilicen se
nales de entrada que exciten todos los modos del sistema. Mas alla de eso,
un buen metodo de identificacion debe ser insensible a las caractersticas de la entrada.
Otro aspecto es que a veces no se puede identificar en bucle abierto y hay que hacerlo
en bucle cerrado. Esto no es siempre posible, pues aunque el sistema sea identificable en
A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION
131
bucle abierto esta propiedad puede perderse en bucle cerrado. Esto ocurre, por ejemplo,
si los perfiles de la consigna o referencia que se usan son muy simples. Tambien, si los
lazos de control son demasiado simples. En general, cuanto mas complejos sean los
lazos de control y mas se mueva la consigna, mas facil sera la identificacion en bucle
cerrado.
8.2.2.
Selecci
on del tipo de modelo
En teora, la seleccion del tipo de modelo debera venir dada por un conocimiento
del proceso y de las perturbaciones que deban ser tenidas en cuenta. Dependiendo de
si conocemos mucho o poco la estructura del proceso elegiremos entre uno u otro tipo
de modelo. En general, los modelos los clasificaremos como:
Modelos de Caja Blanca. Son los obtenidos a partir de leyes fsicas (esto no sera
realmente identificacion porque no se estaran haciendo experimentos).
Modelos de Caja Negra. En estos modelos se postula una estructura matematica
con una serie de parametros libres, a los cuales se les da valor a partir de los
datos obtenidos en los experimentos.
Modelos de Caja Gris. Corresponden a un tipo intermedio entre los dos anteriores.
Parte del modelo se obtiene mediante leyes fsicas y otra parte, se ajusta usando
medidas experimentales. Por ejemplo, mediante leyes fsicas podemos determinar
la estructura del modelo (o de parte de el) y usar experimentos para terminar de
caracterizar el modelo.
Tambien se pueden clasificar los tipos de modelos en parametricos y no parametricos. En los primeros se tienen una serie de parametros que hay que ajustar. Por ejemplo,
en una funcion de transferencia se tendran que ajustar el orden y los coeficientes de
los polinomios. En modelos de espacio de estados tendramos la misma situacion pero
con las matrices del sistema. En los modelos no parametricos, el modelo no tiene una
serie de parametros que definen la dinamica sino que se compone de una cantidad de
informacion sobre la misma, por ejemplo los modelos basados en la respuesta en frecuencia de un sistema. En el caso que aqu nos ocupa los modelos que emplearemos
seran de caja negra y parametricos.
132
8.2.3.
DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION
Elecci
on de un criterio
8.2.4.
Estimaci
on de los par
ametros
8.2.4.1.
Identificaci
on en lnea
A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION
133
y(k)
u(k)
PLANTA
IDENTIFICACIN
MODELO
ACTUALIZADO
SUPERVISIN
MODELO
CORREGIDO
8.2.4.2.
Identificaci
on fuera de lnea
En este caso se toman los datos del experimento (es decir, series de medidas) y
posteriormente, se ajusta el modelo usando para ello todo el conjunto de datos. Este
tipo de procedimientos suelen obtener modelos mas precisos y son mas fiables en cuanto
a la convergencia de los parametros estimados a los parametros reales del proceso1 . En
cualquier caso, existe un consenso general en que no existe un metodo universalmente
bueno, por tanto, dependiendo de la situacion unos funcionaran mejor que otros.
8.2.5.
Validaci
on del modelo
Notese que aunque el proceso real no correspondera en general exactamente con el modelo (pues
todo modelo implica un cierto grado de simplificacion de la realidad) se asume que existe un valor del
vector de parametros que es el que mejor describe al proceso.
DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION
134
VCP (, CP) =
2dimension()
1+
N
N
1 X 2
e (t, )
N t=1
donde e(t, ) = y(t) y(t, ) es el error de estimacion para los datos obtenidos en el
instante t.
Tampoco puede descartarse la posibilidad de no usar criterio de validacion alguno y
efectuar una inspeccion visual sobre una simulacion, en la que se usa el modelo estimado
para predecir la salida en base a datos de entradas experimentales.
Finalmente, la tecnica de validacion cruzada, aunque muy popular no es la u
nica.
Otra tecnica que a veces se utiliza es el analisis de residuos. Se entiende por residuos
los errores que comete el modelo una vez ajustado, es decir e(t) = y(t) y(t, ). Si el
modelo estimado es suficientemente bueno, estos residuos tienen que ser independientes
A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION
135
8.2.6.
TOMA DE DATOS
ACONDICIONAMIENTO DE
DATOS
AJUSTAR MODELO
VALIDAR MODELO
NO
VALIDO ?
SI
USAR MODELO
pueda retornar a cualquiera de las pasos intermedios, indica que puede que en cada
136
ALGUNAS PROPIEDADES
iteracion no se realicen todos los pasos. Por otra parte, aparece un paso sobre el que no
se ha comentado nada, el acondicionamiento de datos. Esta tarea consiste en manipular los datos de manera que sean apropiados para el metodo de ajuste elegido. Es algo
que es especfico para cada procedimiento. As por ejemplo, una tarea muy com
un de
acondicionamiento de datos es la eliminacion de los valores de continua de las se
nales
de entrada y salida. Esto sera tratado en mayor profundidad en el tema 9. Finalmente,
en el caso de la identificacion en linea el proceso es mas simple, ya que por ejemplo
no es posible cambiar la estructura del modelo sin descartar el resultado que se ha
obtenido hasta ese momento. Ademas, los datos se toman seg
un van llegando, pues
recordemos que en este tipo de identificacion la identificacion se hace como su propio
nombre indica en tiempo real, es decir, ((en lnea)).
8.3.
Algunas propiedades
8.3.1.
Excitaci
on persistente
N
X
!2
1
A(z )u(k)
>0
k=1
para todo polinomio A(z 1 ) no nulo de grado inferior a n. Usando este resultado se
pueden caracterizar las se
nales mas comunes:
Pulso: no excita persistentemente para ning
un orden n.
A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION
137
voltaje
5.5
4.5
3.5
20
40
60
80
100
120
140
160
180
200
intervalos de muestreo
8.3.2.
Convergencia e identificabilidad
138
ALGUNAS PROPIEDADES
convergencia tiene a su vez una serie de requisitos o condiciones que se pueden resumir
en:
El orden del modelo y el retardo deben ser conocidos.
Los valores de continua de la se
nal de entrada y la de salida deben ser conocidos.
Si el sistema es de orden n, la se
nal de entrada debe ser persistentemente excitadora de orden n o mayor.
Las perturbaciones sobre la salida deben ser ruidos estacionarios.
El error en el instante k debe ser incorrelado con los elementos de los que depende
la salida en el instante k (es decir, de los valores pasados de la entrada y la salida).
El valor esperado (esperanza matematica) del error en k debe ser cero, es decir
E{e(k)} = 0.
Finalmente, la convergencia tambien depende de los valores iniciales del estimador.
8.3.2.1.
Identificaci
on en bucle cerrado
Q(z 1 )
y(t)
P (z 1 )
A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION
139
Primera condici
on de identificabilidad en bucle cerrado
Los ordenes del modelo del proceso y de las perturbaciones deben ser conocidos con
exactitud.
Segunda condici
on de identificabilidad en bucle cerrado
Si los polinomios A(z 1 ) y C(z 1 ) tienen p ceros comunes (en caso de que sean primos
entre si, p = 0) se ha de cumplir que
max(w mb , d + v ma ) p
Si esto no se cumpliese, la solucion pasa por fijar alguno de los parametros del modelo
a fin de bajar los grados ma o mb . Si fuera factible aumentar el retraso, tambien
podra usarse esto para lograr la identificabilidad en bucle cerrado. Notese que por
estos procedimientos lo que se consigue es que el proceso de identificacion converja a
un valor del vector de parametros que corresponde con el que da un menor error. No
quiere decir que el sistema real se describa mejor por ese modelo. Es decir, puede que
exista otro modelo del mismo orden mejor, pero si no se toman las medidas indicadas
no se llegara a ese modelo ni probablemente se convergera a ning
un otro.
Un caso com
un es que p = 0 y ma = mb = n, por lo que esta condicion se puede
expresar como
max(w, v + d) n
Ejemplo 8.1
Supongamos que ma = mb = n y que
u(k) =
G(z 1 )
y(k)
zB(z 1 )F (z 1 )
140
ALGUNAS PROPIEDADES
8.3.3.
Niveles de supervisi
on y acondicionamiento
Captulo 9
Identificaci
on por mnimos
cuadrados
9.1.
El m
etodo de los mnimos cuadrados
(9.1)
Notese que este modelo es determinista en el sentido de que no considera ruidos aleatorios como en los modelos vistos en el tema 7. Es inmediato comprobar que este modelo
corresponde a la siguiente funcion de transferencia:
G(z 1 ) =
b1 z 1 + + bn z n
1 + a1 z 1 + + an z n
(9.2)
Este metodo se puede aplicar sin cambios conceptuales a modelos multivariables. Sin embargo por
simplicidad nos ce
niremos al caso de modelos monovariables.
141
EL METODO
DE LOS MINIMOS CUADRADOS
142
donde el vector
m(k) =
es llamado regresor y
=
a1 an b1 bn
(9.3)
el error de
es el vector de par
ametros. Dado un valor del vector de parametros ,
prediccion para el instante k sera
= y(k) y(k) = y(k) m(k)
e(k, )
Notese que conocido el valor de los valores presentes y pasados de la salida y la entrada,
la expresion (9.2) es una ecuacion en las que las 2n incognitas son los parametros que
forman . Si el proceso a identificar correspondiese exactamente con un modelo como
(9.1) se podra determinar el valor del vector de parametros a partir de 2n medidas u
observaciones de la salida para una serie de entradas conocidas. Es decir, se formara
un sistema de 2n ecuaciones con el que se podra determinar el valor ((real)) de .
El metodo de los mnimos cuadrados parte de N pares (y(k), m(k)) donde N es
generalmente mucho mayor de 2n (este sera el conjunto de estimacion) y permite
ajustar un modelo del tipo (9.1). En el supuesto poco realista de que el proceso coincida
con un modelo como el que se intenta ajustar, se tendra un sistema de ecuaciones
sobredeterminado compatible, de manera que tendra solucion y el error de prediccion
alcanzado sera cero para todas las medidas del conjunto de estimacion. Sin embargo,
en la practica el proceso no se puede describir a la perfeccion mediante un modelo lineal
del tipo (9.1) por lo que el sistema de ecuaciones no tiene solucion en el sentido de que
no existe un valor del vector de parametros que haga que el error de prediccion sea cero
para todas las medidas del conjunto de estimacion. Es decir, el sistema de ecuaciones
es incompatible. Sin embargo si se puede encontrar un valor del vector de parametros
que haga mnimo el error de prediccion, de manera mas precisa que haga mnima la
suma de los cuadrados de los errores de prediccion del conjunto de estimacion. Esta es
precisamente la estrategia del metodo de mnimos cuadrados2 .
Las medidas obtenidas desde k = n hasta k = N se agrupan en vectores de manera
que se obtiene:
E(N, ) = Y (N ) M (N )
donde los vectores E(N ) e Y (N ) son
E(N, ) =
Y (N ) =
2
e(n, ) e(N, )
T
y(n) y(N )
143
m(n)
..
M (N ) =
.
m(N )
Se define el ndice de bondad de ajuste como
J() = kE(N, )k2 =
N
X
e2 (k, )
k=n
(9.4)
y ese es por tanto el valor del vector de parametros del modelo identificado.
Notese que para que el problema de identificacion tenga solucion la matriz [M T (N )M (N )]
tiene que ser invertible al igual que M (N ). Sin entrar en demasiados detalles, tal condicion se verifica cuando la entrada cumple las condiciones de excitacion persistente del
sistema. Se debera acudir por tanto a se
nales de entrada parecidas al ruido blanco (ver
tema 8).
9.2.
La expresion (9.4) implica la inversion de una matriz que puede tener unas dimensiones apreciables, tanto mas si se tiene en cuenta que para identificar correctamente
EN LINEA
ALGORITMO RECURSIVO PARA IDENTIFICACION
144
un sistema se deben tener suficientes medidas para eliminar el efecto de ruidos y perturbaciones ajenas a la dinamica del sistema. Intentar efectuar estos calculos en linea
es bastante ambicioso para el hardware de control habitual3 . Por tanto este algoritmo
se destina a la identificacion fuera de linea. En linea se emplea otro procedimiento que
se muestra a continuacion.
La estimacion para el instante k usando las medidas obtenidas desde el instante n
vendra dada por
(k)
= [M T (k)M (k)]1 M T (k)Y (k)
= P (k)M T (k)Y (k)
= P (k)(M T (k 1)Y (k 1) + mT (k)y(k))
donde
P (k) = [M T (k)M (k)]1 =
" k
X
(9.5)
#1
mT (i)m(i)
i=n
(k)
=
=
=
1) P (k)mT (k)m(k)(k
1) + P (k)mT (k)y(k)
(k
1) + P (k)mT (k)(y(k) m(k)(k
1))
(k
1) + K(k)(y(k) m(k)(k
1))
(k
(9.6)
Tengase en cuenta que el hardware industrial no se renueva tan rapidamente como el usado
en informatica personal y que ademas tampoco se incorporan las u
ltimas tecnologias con la misma
rapidez.
145
2. En cada instante k
a) Leer los valores de y(k) y u(k).
b) Formar el vector regresor m(k) seg
un la expresion (9.3).
c) Calcular P (k) mediante
P (k) = P (k 1)
P (k 1)mT (k)m(k)P (k 1)
1 + m(k)P (k 1)mT (k)
y(k)
PLANTA
FORMAR
REGRESOR
y(k)
ALGORITMO
RECURSIVO
K(k) (k)
y(k +1)
e(k)
Z-1
P(k)
Figura 9.1: Diagrama de flujo del proceso de identificacion mediante mnimos cuadrados recursivos.
9.3.
Interpretaci
on estadstica
146
ESTADISTICA
INTERPRETACION
= E (k)
147
La situacion es diferente con el modelo ARX-LS. En este caso los valores de M (k)
no pueden estar relacionados con V (k) (que, al ser cn = 0, solo esta formada por los
valores presentes de v(k) para cada instante k). Por tanto, el estimador por mnimos
cuadrados es insesgado, es decir = 0 y por tanto el valor esperado del estimador
coincide con el valor real del vector de parametros, es decir
n
o
E (k)
=
Por otra parte, el hecho que de que el proceso responda a uno u otro tipo de
modelo tiene una interpretacion fsica inmediata. En el caso del proceso ARMAX el
ruido presenta una cierta dinamica , mientras que en el caso del ARX-LS el ruido no
presenta dinamica alguna y responde u
nicamente a un ruido proveniente del sensor
de medida. Es en este u
ltimo caso cuando el metodo de mnimos cuadrados produce
estimaciones consistentes.
Otra propiedad que resulta interesante conocer es la varianza del estimador. Claramente interesa que esta varianza sea peque
na o por lo menos que disminuya conforme
se acumulan medidas disponibles para usarlas en la estimacion. De esa manera, el vector de parametros estimados estara con seguridad cerca del vector real. La varianza del
estimador se puede calcular como
n
o
)T ((k)
)
varianza((k))
= E ((k)
= 2 P (k)
donde = E{v(i)v(j)} para i = j. Notese que para que la varianza sea peque
na
interesa que P (k) sea ((peque
na)) o que al menos decrezca a medida de que k aumenta.
Una medida del tama
no de P (k) es su traza, por lo que se usa como una medida de la
exactitud de la estimacion, de manera que se busca que la traza vaya decreciendo.
Esta interpretacion estadistica del tama
no de P (k) tambien proporciona una regla
para dar un valor inicial a la matriz P (k). En efecto, en general no se tendra demasiada
confianza en que el valor inicial del vector de parametros estimados, por lo que se
escogera una matriz P (0) ((grande)) para reflejar esa desconfianza, por ejemplo P (0) =
pI donde p es un n
umero muy alto (por ejemplo 10000). Este n
umero sera mas peque
no
148
k
X
!1
mT (i)m(i)
i=n
lo que implica que a medida que N crece P decrece. Se puede demostrar que si el
tama
no del regresor no cambia demasiado P decrece como N1 . Esto quiere decir que la
incertidumbre en la estimacion decrece, es decir, que cada vez se obtiene un estimador
mas cercano al valor real. Ademas la ganacia de adaptacion K(k) tambien decrece
(vease su definicion en la seccion 9.2) lo cual es congruente con el hecho de que cuanto
mas exacta es la estimacion menos correccion de su valor se necesita. Esto es bueno
si la dinamica del proceso no cambia con el tiempo, pero si esto no es as habra que
modificar este esquema.
9.4.
A veces es conveniente dar mas peso a algunas medidas que a otras en la estimacion. Por ejemplo si se identifica un proceso cuya dinamica cambia con el tiempo
interesara dar mas peso a las medidas mas recientes, pues estas seran las que reflejen la
dinamica mas actualizada. Para conseguir esto hay que modificar el ndice de bondad
de ajuste, de manera que se use
T
N
X
w(k)e2 (k, )
k=n
w(n)
...
W (N ) =
w(N )
(9.8)
149
, donde (0, 1) es el llamado factor de olvido. Es facil entender por que se le llama
olvido exponencial: el peso dado a la medida disminuye exponencialmente cuanto mas
antigua sea. De esta manera las medidas muy antiguas se olvidan, pues su peso es tan
peque
no que es como si no se contribuyesen a la estimacion. Habitualmente se usa
[0,98, 1). Por ejemplo, si = 0,99 el estimador tendra una ((memoria)) de unas 100
muestras. En aquellos casos que la dinamica del proceso cambie muy rapidamente se
puede optar por valores mas bajos (por ejemplo, = 0,95).
En el caso de la tecnica de olvido la formulacion recursiva puede aplicarse modificando las expresiones para el calculo de P (k) de manera que:
P (k) =
P (k 1) P (k 1)mT (k)m(k)P (k 1)
Puede observarse que, dado que K(k) = P (k)mT (k), la ganancia de adaptacion K(k)
depende de y a menor mayor ganancia de adaptacion. Esto quiere decir que a menor
mejor se adaptara la identificacion a una dinamica cambiante, ya que se considerara
en la optimizacion solo la informacion mas reciente.
Sin embargo si en el sistema o en las medidas hay mucho ruido, es conveniente
que la dinamica se identifique sobre un conjunto amplio de medidas ya que si no se
identificara el ruido mas que la dinamica del proceso. Por tanto en estos casos conviene
que no sea muy peque
no. Por tanto hay que llegar a un compromiso entre la capacidad
de seguir una dinamica cambiante y el rechazo del ruido en la identificacion.
9.5.
Seg
un se explico en la seccion 9.3 el estimador obtenido mediante mnimos cuadrados es insesgado si el proceso responde a un modelo ARX-LS, pero no si responde a
un modelo ARMAX. En la practica, si la relacion se
nal-ruido es baja el proceso ha de
modelarse con un modelo de perturbaciones mas complejo que el del ARX-LS ya que
la se
nal de ruido y su influencia sobre la dinamica son importantes. En estos casos se
debe recurrir a un modelo ARMAX.
El metodo de los mnimos cuadrados extendidos trata de resolver el problema del
sesgo en la estimacion de modelos ARMAX. La solucion es incluir los coeficientes del
polinomio C(z 1 ) en el vector de parametros del estimador, es decir
=
a1 an b1 bn c1 cn
150
N = E vv T
es distinta de la matriz identidad se obtienen mejores resultados si el criterio que se
utiliza es
X
J() =
eT (k, )N 1 e(k, )
9.6.
Estimaci
on de los valores de continua
y(k) = Y (k) Y
donde U (k) e Y (k) son los valores reales de la salida y la entrada y U e Y son
los valores de continua de ambas se
nales. Para estimar dichos valores existen diversas
opciones.
9.6.1.
151
Utilizaci
on de los incrementos de las variables
9.6.2.
C
alculo de los valores medios
La idea es aproximar los valores de continua por los valores medios de las se
nales.
En el caso de la formulacion fuera de linea estos valores medios se calculan mediante
las expresiones tradicionales, es decir
U =
N
1 X
u(i)
N i=1
Y =
N
1 X
y(i)
N i=1
9.6.3.
U (k) = U (k 1) +
1
(U (k) U (k 1))
k
Y (k) = Y (k 1) +
1
(Y (k) Y (k 1))
k
Estimaci
on de una constante
La idea en este caso es que el modelo que se pretende identificar puede reescribirse
como
Y (k) Y = a1 (Y (k 1) Y ) a2 (Y (k 1) Y ) an (Y (k n) Y )
+b1 (U (k d 1) U ) + + bn (U (k d n) U )
152
(9.9)
T
= a 1 a n b1 bn K
y en el regresor se incluye un 1
9.7.
El orden del sistema a identificar es algo que debe ser conocido para asegurar la
convergencia e identificabilidad (ver tema 8). En la practica esto no es sencillo, y se
debe recurrir a probar con varios modelos de ordenes y estructuras distintas a ver cual
resulta mejor. Esto quiere decir que se pueden dar situaciones de mala estimacion del
orden del modelo por defecto (incurriendose en lo que se llama infraparametrizaci
on)
o por exceso (sobreparametrizaci
on).
Veamos que ocurre cuando se intenta aproximar un sistema por un modelo de
orden inferior. Si esto sucede se llega a una situacion en la que el modelo solo puede
aproximar al sistema real en una banda de frecuencia relativamente estrecha. Si durante
el transcurso del proceso de identificacion la se
nal de entrada cambia su contenido
frecuencial, el modelo estimado (es decir su vector de parametros) evoluciona hasta
aproximar al sistema en torno a la nueva banda de frecuencias. Todo esto implica que
se obtendra un modelo distinto dependiendo de la se
nal de entrada. Este problema se
ilustra en las figuras 9.2 y 9.3. En ambas se muestra el diagrama de bode de un sistema
de segundo orden sobre el que ha sido identificado un modelo de primer orden mediante
dos entradas senoidales de distinta frecuencia. Puede observarse en ambas figuras que
153
20
amplitud dB
10
0
10
20
30
40
1
10
10
10
desfase (grados)
50
100
150
200
250
1
10
10
frecuencia rad/s
10
Figura 9.2: Diagrama de Bode de un sistema de segundo orden (linea continua) y de un modelo de
primer orden estimado para una entrada senoidal de frecuencia = 0,2 rad s1 .
20
amplitud dB
10
0
10
20
30
40
1
10
10
10
desfase (grados)
50
100
150
200
250
1
10
10
frecuencia rad/s
10
Figura 9.3: Misma situacion que en la figura 9.2 pero con una se
nal de entrada senoidal de frecuencia
= 1 rad s1 .
154
uey
0.5
0
0.5
1
1.5
10
15
20
25
30
35
40
10
15
20
tiempo (s)
25
30
35
40
1.5
ai, bi estimados
1
0.5
0
0.5
1
1.5
2
155
0.025
k=30
0.02
k=100
b3
0.015
0.01
0.005
0
0.005
2
1.8
k=180
1.6
1.4
1.2
0.8
0.8
0.6
a1
1.5
a2
0.5
k=180
k=100
0
k=30
0.5
2
1.8
1.6
1.4
1.2
0.6
a1
Figura 9.5: Evolucion de unos parametros frente a otros para el modelo sobreparametrizado.
9.8.
Identificaci
on de sistemas con retardo o no lineales
El metodo de los mnimos cuadrados puede aplicarse a procesos con retardo, siempre
que se tengan en cuenta algunas cuestiones. El modelo determinista de un sistema con
retardo puro de d periodos de muestreo se puede poner como
A(z 1 )y(k) = B(z 1 )u(k d 1)
Eso quiere decir que el regresor en el instante k debe contener valores pasados de la
entrada desde k d 1 a k d n donde n es el grado del polinomio B(z 1 ). Por
tanto el regresor queda
156
CONSIDERACIONES FINALES
en los parametros del modelo (se adaptan a esos cambios) no recogen la posibilidad
de un retardo variable (existen remedios a este problema, pero no se trataran aqu).
Otro problema que puede suceder es que el retardo no sea multiplo exacto del tiempo
de muestreo. Aunque existen formas para describir retardos no enteros (por ejemplo,
el uso de una expansion de Pade) es mas sencillo y menos problematico emplear si es
posible otro tiempo de muestreo para hacer que el retardo sea entero.
Finalmente se comento al principio del tema que el metodo de mnimos cuadrados
tambien permite la identificacion de sistemas no lineales con la limitacion de que el
modelo a identificar sea lineal en los parametros. De este modo, si el sistema se pretende
identificar con un modelo que por ejemplo podra ser
y(k) + ay(k 1) = bu2 (k 1)
el regresor y el vector de parametros seran
m(k) =
y(k 1) u2 (k 1)
(k) =
a b
respectivamente.
9.9.
Consideraciones finales
157
1
P (0) = M T (2n)M (2n)
y como valor inicial del vector de parametros se puede usar = P (0)M (2n)Y (2n).
158
CONSIDERACIONES FINALES
Captulo 10
Control de sistemas con grandes
retrasos
10.1.
Los tiempos muertos o retrasos puros estan presentes en muchos sistemas dinamicos
y especialmente en la industria de procesos. Los retrasos pueden deberse al tiempo que
tarda en circular un fluido o material de un punto a otro (retraso ((distancia-velocidad)),
o deberse por ejemplo al tiempo de mezcla imperfecta de un equipo tipo tanque agitado
o quizas al tiempo de medida de los sensores que miden las variables a controlar. En
la figura 10.1 se muestra un ejemplo tpico. La variable a controlar en este caso es
la temperatura a la salida de un intercambiador de calor al que se suministra calor
controlado mediante la apertura de la valvula de entrada de un quemador de gas.
El retardo viene provocado en este caso por el hecho de que el termopar de medida
esta situado a una distancia apreciable de la salida del intercambiador (se supone que
la tubera no tiene perdidas, por lo que la temperatura medida coincide con la de la
salida). Intuitivamente se ve que el retraso en este caso sera
distancia al sensor
.
retraso =
velocidad de transporte del fluido
160
TT
r(t)
G(s)e
C(s)
+
-
161
y(t)
-t
ms
10.1.1.
Representaci
on matem
atica del retraso
Comenzaremos por indicar cual es la representacion matematica que tiene un determinado tiempo muerto tm en el dominio s, es decir en tiempo continuo1 . Supongase
que una determinada funcion gp (t) es igual a otra g(t) pero retrasada un tiempo tm .
Es decir, gp (t) = g(t tm ). Gp (s), es decir la transformada de Laplace de gp (t) se
calculara como:
Z
Gp (s) = g(t tm )est dt
0
Z
0
Gp (s) =
s(t0 +tm )
g(t )e
stm
dt = e
es decir
Gp (s) = estm G(S).
(10.1)
Por tanto, el retraso tm se representa por un termino estm que multiplica a la transformada de Laplace de gp (t). La figura 10.2 muestra la configuracion de un lazo de control
realimentado para un proceso con retraso tm y cuya funcion de transferencia excluido
el retraso es G(s).
Lo anterior se refiere a tiempo continuo. Para sistemas descritos en tiempo discreto,
el retraso se mide en periodos de muestreo, es decir un determinado sistema tendra un
retraso de d periodos de muestreo2 . En este caso el retraso se representa por un termino
de la forma z d , de manera que la funcion de transferencia se representara por
Gp (z 1 ) = z d G(z 1 ).
1
Todas las estructuras presentadas en este captulo estan inicialmente formuladas para sistemas en
tiempo continuo, pero son facilmente extensibles al caso discreto e implementables en un computador.
En el captulo se indicaran las diferencias entre ambos casos.
2
En caso de que el n
umero de que el retraso sea un n
umero no m
ultiplo del periodo de muestreo
se recomienda cambiar dicho periodo de muestreo para que el retraso sea o bien un m
ultiplo exacto o
bien la parte fraccionaria sea muy peque
na y se pueda despreciar.
162
t s
0
0.5
1
4
x 10
tm=1
0.5
To: Y(1)
0.5
tm=2
1
tm=3
1.5
2 1
10
10
10
10
Frequency (rad/sec)
Figura 10.3: Diagrama de Bode para distintos valores de un retraso puro etm s .
10.1.2.
Problem
atica del control de sistemas con retraso
163
10
0
tm=0
90
tm=0.01
To: Y(1)
10
tm=0.1
180
tm=1
270 2
10
10
10
10
Frequency (rad/sec)
Figura 10.4: Diagrama de Bode para distintos valores de un retraso puro tm s para el sistema
10
C(s)G(s)etm s con C(s) = 1 y G(s) = 1+s
.
10
de transferencia G(s) = 1+s
y un controlador C(s) = K, donde inicialmente K = 1.
En la figura 10.4 se muestra el diagrama de Bode para este sistema para distintos
retrasos. Puede observarse que conforme aumenta el retraso aumenta el desfase y de
hecho disminuye el margen de fase hasta hacerse negativo. En este u
ltimo caso, el
sistema sera inestable en bucle cerrado para ese controlador C(s).
164
5
10
15
0
tm=0
90
To: Y(1)
tm=0.1
tm=1
tm=0.01
180
270 1
10
10
10
Frequency (rad/sec)
Figura 10.5: Diagrama de Bode para distintos valores de tm s para el sistema de la figura 10.4 con
C(s) = 0,2.
r(t)
+
-
C(s)
G(s)
em
-t
165
y(t)
y(t+t )
Figura 10.6: Sistema de control realimentado para un proceso con retraso donde el sensor se ha
dispuesto antes del retardo.
10.2.
El Predictor de Smith
El Predictor de Smith es el mas popular de los algoritmos de control para compensacion de retardos. Aunque desarrollado para sistemas continuos en la decada de 1950,
su implementacion con circuitos analogicos es muy complicada y su para su aplicacion
es mas apropiado el control por computador.
La idea fundamental de la que se parte es la de cambiar la disposicion del sensor que
mide la variable controlada, situandolo antes del retraso puro (vease la figura 10.6. De
esta manera se esta controlando el sistema sin retraso, es decir, se ha sacado el retraso
del bucle de control. La funcion de transferencia de bucle cerrado sera por tanto:
GBC (s) =
C(s)G(s) tm s
e
1 + C(s)G(s)
(10.2)
Es decir la salida del sistema en bucle cerrado sera la salida del sistema sin retraso en
bucle cerrado retrasada un tiempo tm .
166
EL PREDICTOR DE SMITH
r(t)
+
-
C(s)
G(s)e
ms
y(t)
-t
G (s)
m
Figura 10.7: Sistema de control en donde se realimenta la prediccion de la salida mediante un modelo
en bucle abierto.
Comentario 10.2 En el caso de poder disponer el sensor antes del retraso, al sacar
el retraso del sistema, se disminuye de manera drastica el retraso de fase, aumentando
el margen de fase, permitiendo una sintonizacion mas apropiada del controlador y
obteniendose por tanto una mejor respuesta y rechazo de perturbaciones. Esto sera,
por tanto, la solucion ideal al problema de control de sistemas con retraso.
Desgraciadamente en muchos casos no sera posible colocar el sensor antes del retraso. Por ejemplo cuando el retraso este asociado al propio sensor (caso de un cromatografo). Tambien cuando el proceso sea de parametros distribuidos de manera que
la variable y(t + tm ) no sea posible medirla y haya de ser estimada mediante un algoritmo que tiene un tiempo de ejecucion tm .
Cuando la salida sin retraso, es decir y(t+tm )3 , no se puede medir, se puede recurrir
a estimar su valor, o de manera mas precisa a predecir su valor en t + tm . Para ello se
puede usar un modelo suficientemente exacto de G(s) que denotaremos por Gm (s). Este
es por tanto un modelo del proceso sin retraso, que podemos llamar ((modelo rapido))
del proceso. La prediccion de y(t + tm ) (denotada a veces como y(t + tm |t)) puede ser
usada en un lazo de control como se ilustra en la figura 10.7. En esta estructura en
lugar de realimentar la salida y(t) del proceso, se realimenta la prediccion de y(t + tm )
efectuada en tiempo t mediante el modelo Gm (s). Los valores de la se
nal de control
calculados mediante C(s) se aplican directamente al proceso. Esta estructura tendra
como funcion de transferencia de bucle cerrado la expresion:
GBC (s) =
C(s)G(s)
etm s
1 + C(s)Gm (s)
(10.3)
En el caso de que el modelo del proceso sin retardo fuera perfecto, es decir Gm (s) =
G(s), claramente la funcion de transferencia (10.3) es entonces igual a la de (10.2).
3
Notese que en tiempo t + tm lo que hay en la salida del sistema es lo que haba en tiempo t a la
salida de G(s) antes del retraso, es decir y(t + tm ) es la salida sin retraso.
r(t)
+
-
C(s)
G(s)e
u(t)
G (s)
167
y(t)
-t s
y(t+t |t)
y(t|t)
-t s
+
e(t)
+
Por tanto si Gm (s) = G(s) este esquema funciona como si se pudiese sacar el retraso
cambiando la posicion del sensor. Esta situacion no se dara en la realidad, por que
siempre habra errores de modelado.
Notese que la estructura de control de la figura 10.7 es esencialmente una estructura
de control en bucle abierto, por que no se esta haciendo uso del valor de la variable
controlada y(t). Por tanto no sera capaz de hacer frente a perturbaciones o errores de
modelado. No se esta aprovechando el valor de y(t) para, por ejemplo, determinar los
errores de prediccion cometidos al usar el ((modelo rapido)). Precisamente este uso es
el que se le da en el Predictor de Smith.
La estructura del Predictor de Smith se muestra en la figura 10.8. Difiere de la
estructura de la figura 10.7 en que en este caso si se usa la variable controlada, es decir
es una estructura en bucle cerrado. Lo que se hace es que se compara la salida y(t)
con la salida del ((modelo rapido)) retrasada un tiempo t0m (donde t0m es la estimacion
del valor del retraso tm ), obteniendose por tanto una estimacion de y(t) (que se puede
denotar por y(t|t)). La comparacion permite obtener una se
nal de error de prediccion
e(t) = y(t) y(t|t) que se suma a la prediccion de y(t + tm ), de manera que los que se
realimenta es y(t + tm |t) + e(t).
Ademas del ((modelo rapido)) Gm (s), en el Predictor de Smith se tiene el ((modelo
0
de planta)) cuya funcion de transferencia es Gm (s)etm s . La funcion de transferencia
0
de bucle cerrado cuando el ((modelo de planta)) es perfecto, es decir Gm (s)etm s =
G(s)etm s coincide con la de la ecuacion (10.2). Por tanto esta funcion de transferencia
coincide con la de un proceso sin retraso, seguido de un retraso despues del lazo. Esto
implica que la sintona del controlador C(s) se realiza como si realmente no existiera el
retraso, ya que al utilizar el Predictor de Smith se supone que el retraso sale del bucle
de control.
Ejemplo 10.1
168
EL PREDICTOR DE SMITH
60
40
20
0
20
0
90
180
270 3
10
10
10
10
Frequency (rad/sec)
En este ejemplo se ilustrara el control de sistemas con retraso y el uso del Predictor de
Smith. Considerese el siguiente sistema:
G(s) =
1
e20s
1 + 10s
En primer lugar se considera un lazo de realimentacion simple, en este caso con un PI,
dise
nado de manera que cancele el polo del sistema y para que la constante de tiempo
del sistema en bucle cerrado sin retraso sea la mitad del original. El PI resulta ser:
C(s) =
1 1 + 10s
5
s
169
40
20
0
20
40
0
90
180
270 3
10
10
10
10
Frequency (rad/sec)
Figura 10.10: Bode de C(s)G(s) para el ejemplo, desintonizando el controlador de manera que la
ganancia sea cuatro veces menor.
1.5
0.5
0
0
50
100
150
200
250
300
350
400
Figura 10.11: Respuesta del sistema en bucle cerrado con el controlador desintonizado de manera que
la ganancia sea cuatro veces menor.
170
EL PREDICTOR DE SMITH
1.5
0.5
0
0
50
100
150
200
250
300
350
400
Figura 10.12: Respuesta del sistema en bucle cerrado con el predictor de smith (trazo solido) comparada con la del lazo simple (trazo discontinuo).
10.2.1.
Como se ha comentado numerosas veces, los modelos matematicos siempre presentan diferencias con la dinamica real del proceso. Esas diferencias son imputables a la
propia simplificacion tpica de los modelos, o tambien por errores en la identificacion
de los parametros o bien por que la dinamica del proceso ha cambiado desde que se
obtuvo el modelo. En esta seccion analizaremos brevemente la influencia de los errores
de modelado sobre la funcion de bucle cerrado cuando se usa el Predictor de Smith.
0
Para ello se emplea el ((modelo de planta)) es decir Gm (s)etm s en comparacion con la
171
1+
C(s)
1+C(s)Gm (s)
G(s)etm s
C(s)
G(s)
1+C(s)Gm (s)
(10.4)
En caso de no existir errores de modelado, es decir G(s) = 0 la funcion de transferencia de bucle cerrado coincide con la del proceso controlado sin retraso seguido del
retraso. Reordenando la expresion (10.4) se tiene:
GBC (s) =
C(s)G(s)
etm s
1 + C(s)Gm (s) + C(s)G(s)
(10.5)
10.2.2.
El Predictor PI
Evidentemente aqu se esta suponiendo que existe un modelo lineal con retraso que describe
perfectamente al proceso.
172
EL PREDICTOR DE SMITH
20%
1.2
10%
1
+10%
0.8
+20%
0.6
0.4
0.2
0
0
20
40
60
80
100
120
140
160
180
200
Figura 10.13: Respuestas del sistema en bucle cerrado con el predictor de smith cuando se tienen
diversos errores en la estimacion del retardo.
r(t)
C(s)
+
-
G(s)e
u(t)
y(t)
-t s
y(t+t |t)
em
-t
y(t|t)
+
e(t)
+
que se utiliza sera Kp etm s . Dicho de otra manera, el ((modelo rapido)) sera Gm (s) = Kp .
El resto de la estructura es igual a la del Predictor de Smith. Dicha estructura se ilustra
en la figura 10.14.
10.2.3.
El Predictor de Smith es directamente aplicable al caso discreto. Como se ha comentado, el retardo puro se expresa como z d , donde d es el n
umero de periodos de
muestreo que comprende el retardo. Por lo demas la estructura es la misma, con el
logico cambio de funciones de transferencia en tiempo continuo por sus equivalentes en
tiempo discreto.
173
Hacer
esperar(Tiempo_de_Muestreo);
k=k+1;
ymr(k+d) = salida_modelo_rapido(k+d);
ymp(k) = salida_modelo_planta(k);
y(k) = leer(sensor);
realim(k) = y(k) - ymp(k) + ymr(k+d);
e(k) = ref(k) - realim(k);
u(k) = calcula_control_C(e);
aplica(u(k));
Hasta STOP
10.3.
174
K1
1 + 1 s
G2 (s) =
K2
1 + 2 s
K1
K2
1 + 1 s 1 + 2 s
(K1 2 K2 1 )s + (K1 K2 )
(1 + 1 s)(1 + 2 s)
1
1
(10.6)
G(s) = k
1 + 1 s 1 + 2 s
175
K1
1 + s 1
r(t)
+
-
C(s)
u(t)
-K2
1 + s 2
1
k
1 + s 1
y(t)
1 + s 2
+
-
e(t)
176
1.5
0.5
0.5
0
10
20
30
40
50
60
70
80
Figura 10.17: Ejemplo de control de un sistema de fase no mnima con un PI usando un lazo simple
de realimentacion (trazo discontinuo) y la estructura de control para procesos con respuesta inversa
propuesta en la figura 10.16.
Captulo 11
Control de procesos con
perturbaciones medibles
11.1.
Introducci
on
En este captulo y el siguiente se expondran tecnicas o estructuras de control avanzadas que son bastante u
tiles en control de procesos. Ambos captulos tienen en com
un
que las tecnicas que se exponen utilizan variables adicionales a la entrada y salida del
proceso que es lo que hasta ahora se ha usado u
nicamente.
La primera de las tecnicas que se expondran en este captulo es el control en cascada.
Esta tecnica utiliza la medida de variables internas para detectar rapidamente el efecto
de perturbaciones a la entrada del sistema y poder as iniciar antes la accion correctora.
Fsicamente esta estrategia conlleva el uso de varios lazos de realimentacion anidados,
de ah el nombre.
Ademas del control en cascada en este captulo se estudia el control anticipativo o
control en adelanto. Este tipo de control usa como variables adicionales perturbaciones
medibles que incidan sobre la salida del proceso. Se usa por tanto para cancelar lo mas
rapidamente posible el efecto de perturbaciones a la salida del proceso.
177
178
CONTROL EN CASCADA
P
+
C(s)
V(s)
G(s)
Dinmica o caracterstica
instalada del actuador
11.2.
Control en cascada
En muchos procesos es posible medir variables internas que permiten detectar perturbaciones antes de que tengan efectos apreciables sobre la salida o variable controlada
del proceso. La idea es usar estas variables internas para evitar que se acumule el efecto
de la perturbacion o error sobre la salida.
Uno de los casos mas frecuentes es el de las perturbaciones a la entrada que inciden
sobre los actuadores. El efecto de una perturbacion sobre los actuadores es el de variar
la magnitud de la accion esperada por el controlador para un determinado nivel de la
se
nal de entrada. De este modo, la accion de control efectiva que realmente se aplica
puede no ser la adecuada para controlar el sistema. Por ejemplo, en un proceso donde
se controle un determinado nivel con una valvula, una perturbacion sobre la dinamica
o caracterstica de la valvula hara que para un mismo porcentaje de apertura, el
flujo o caudal variase desviandose del esperado. En este razonamiento se esta haciendo
mencion explcita al hecho de que los actuadores tienen su propia dinamica, y por tanto
se pueden representar por su propia funcion de transferencia. La dinamica del actuador
sera por lo general mas rapida que la del proceso, y en algunos casos la diferencia
sera tal que se pueda ignorar su efecto o considerarlo subsumido en la dinamica de la
planta. Cuando el actuador esta sometido a perturbaciones es conveniente considerarlo
como un elemento autonomo como se ilustra en la figura 11.1. En ella puede observarse
la dinamica del actuador V (s), interpuesta entre las del controlador C(s) y la planta
propiamente dicha, G(s). Puede observarse ademas una perturbacion que incide sobre el
actuador, de manera que la actuacion que realmente recibe la planta estara perturbada
por P .
Como se comporta la estructura de control de la figura 11.1 ante el efecto de la
perturbacion P ? Es evidente que P afecta a la se
nal de control, y que esa desviacion
se manifestara en una desviacion en la salida al cabo de un cierto tiempo. Una vez se
179
P
+
-
CM(s)
+
-
CS(s)
V(s)
G(s)
detecte esta variacion, el controlador actuara sobre el proceso para corregir la desviacion
de la salida. El problema es el tiempo que pasa entre que se produce la perturbacion
sobre el actuador hasta que esta se manifiesta en todo su efecto sobre la salida del
proceso. Durante todo ese tiempo, la perturbacion ha estado acumulando un exceso
o defecto de energa o masa aportada al sistema. Esta acumulacion sera corregida
por el controlador, pero demasiado tarde, cuando ya sea inevitable un notable efecto
pernicioso en la salida.
El control en cascada trata de hacer frente a este problema actuado sobre el proceso
sin tener que esperar a que la perturbacion a la entrada se manifieste a la salida. Esto se
consigue midiendo una variable interna que se vea afectada mucho antes que la salida.
Esta variable suele ser el valor de la actuacion que realmente se aplica.
11.2.1.
180
CONTROL EN CASCADA
11.2.2.
Sintonizaci
on de controladores en cascada
181
11.3.
Control anticipativo
182
CONTROL ANTICIPATIVO
D(s)
GD(s)
+
U(s)
Gp(s)
Y(s)
GD(s)
+
Ref
C(s)
U(s)
Gp(s)
Y(s)
Figura 11.4: Sistema con perturbacion a la salida controlado con un lazo simple de realimentaci
on.
183
D(s)
GD(s)
GFF(s)
+
U(s)
Gp(s)
Y(s)
Figura 11.5: Sistema con perturbacion a la salida controlado con un control anticipativo.
GD (s)
GP (s)
(11.1)
Finalmente, la estructura de control propuesta para el control anticipativo es claramente una estructura de control en bucle abierto, por lo que cualquier discrepancia
entre el modelo del efecto de la perturbacion y dicho efecto evitara la cancelacion
perfecta de la perturbacion. La solucion es bien sencilla: utilizar el control anticipativo
o feed-forward en una estructura de control realimentado que cancele esas diferencias.
Esta estructura es la que se muestra en la figura 11.6.
11.3.1.
Consideraciones pr
acticas sobre los controladores anticipativos
184
CONTROL ANTICIPATIVO
D(s)
GD(s)
GFF(s)
Ref
+
C(s)
U2 +
U1
U(s)
Gp(s)
Y(s)
Figura 11.6: Sistema con perturbacion a la salida controlado con un control anticipativo con control
realimentado.
tinuacion se mostrara un caso en el que esto ocurre. Considerense los siguientes valores
para GD (s) y GP (s):
KD tmD s
e
1 + D s
KP
etmP s
GP (s) =
1 + P s
GD (s) =
KD 1 + P s (tmD tmP )s
e
KP 1 + D s
Esta expresion solo sera realizable si el retraso puro que aparece es positivo, es decir si
(tmD tmP ) 0. En el caso de que tmD < tmP esta funcion de transferencia incorporara un adelanto en lugar de un retraso que es fsicamente imposible de realizar. Esto
correspondera a una situacion en la que el efecto de la perturbacion se transmite mas
rapidamente que el efecto de la variable manipulada lo que evidentemente impide que
se pueda actuar sobre la perturbacion con suficiente tiempo.
Por otra parte la condicion de anular completamente el efecto de la perturbacion
puede ser demasiado estricta, por lo que en la practica se pretende reducir el efecto de
la perturbacion mas que cancerlarla completamente. Una forma de lograr esto es la de
emplear un control anticipativo est
atico, que consiste en una simple ganancia calculada
para corregir el efecto de la perturbacion en regimen permanente. Esta ganancia coincide con la ganancia estatica del control anticipativo calculado con la expresion (11.1),
es decir:
KD
GD (s)
=
lm GF F (s) = lm
s0
s0 GP (s)
KP
Evidentemente este tipo de control solo cancela el efecto del regimen permanente de
las perturbaciones pero ademas reduce el transitorio de las mismas.
Captulo 12
Control de procesos multivariables
12.1.
Introducci
on
Hasta ahora se ha supuesto de manera implcita que los sistemas a controlar cuentan
tan solo con una entrada y una salida. Las tecnicas de control vistas son por tanto
tecnicas de control SISO (Single Input Single Output). En la practica los sistemas o
plantas a controlar son suficientemente complejos y tienen siempre mas de una variable
controlada (salida) y mas de una variable manipulada (entrada). El uso de controladores
dise
nados con tecnicas SISO en estos sistemas puede llevar a rendimientos muy pobres
fundamentalmente por las interacciones existentes entre las diversas entradas y salidas.
Esto es as porque una entrada puede afectar a mas de una salida y por que una salida
puede depender de mas de una entrada. La figura 12.1 ilustra este hecho.
Los problemas causados por las interacciones son mas evidentes cuando los lazos de
control estan en automatico, y usualmente se desintonizan los controladores, perdiendo
rapidez y rendimiento en el control a fin de minimizar los efectos de las interacciones.
El mejor metodo para abordar los problemas de control en sistemas multivariables
comienza por evaluar las interacciones entre entradas y salidas a fin de poder establecer
los mejores emparejamientos posibles entre entradas y salidas. Como se vera, al usar
controladores SISO en sistemas multivariables, se obtienen mejores rendimientos si las
entradas se emparejan con las salidas correctas. Otro aspecto que se estudiara en este
captulo es el uso de desacopladores, que buscaran eliminar o al menos reducir las
interacciones. La idea tras este metodo es que un sistema multivariable desacoplado
puede ser controlado por controladores SISO en la misma manera que un conjunto de
185
186
SISTEMAS MULTIVARIABLES
1
1.6
0.9
1.4
0.8
1.2
0.7
1
2
u y
0.5
0.8
u y
0.6
0.6
0.4
0.4
0.3
0.2
0.2
0.1
0
0
20
40
60
80
100
120
140
160
0.2
0
20
40
60
80
100
120
140
160
Figura 12.1: Respuesta de un sistema multivariable de dos entradas y dos salidas cuando se aplican
escalones en sus entradas. Pueden observarse las interacciones en el hecho de que las salidas varan
cuando las entradas respectivas estan en reposo.
U1(s)
G11
G12
G21
U2(s)
G22
Y1(s)
+
Y2(s)
12.2.
Sistemas multivariables
Considerese un sistema dinamico con dos entradas u1 (s),u2 (s) y dos salidas y1 (s),y( 2).
Cada una de las salidas depende de las dos entradas, de manera que se puede considerar
un modelo lineal como el que sigue:
y1 (s) = G11 (s)u1 (s) + G12 (s)u2 (s)
y2 (s) = G21 (s)u1 (s) + G22 (s)u2 (s)
(12.1)
Este modelo lineal se representa con el diagrama de bloques que aparece en la figura
12.2. Estas expresiones se pueden reescribir en forma vectorial-matricial como:
Y(s) = G(s)U(s)
(12.2)
R1(s) +
U1(s)
GC1
187
G12
R2(s)
G21
+
GC2
G22
U2(s)
Y1(s)
G11
Y2(s)
Figura 12.3: Representacion de un sistema multivariable de orden 2 en bucle cerrado con dos controladores multivariables.
donde
Y(s) =
y1 (s)
y2 (s)
M(s) =
U(s) =
u1 (s)
u2 (s)
188
(12.4)
12.3.
El metodo de Bristol de las ganancias relativas es una tecnica que permite evaluar
con facilidad las interacciones en regimen permanente y que, en consecuencia, se utiliza
189
y1
y1
y1 = u
u
+
u2
1
u2
1
u2 cte
u1 cte
(12.5)
y2
y2
y2 = u
u
+
u
1
2
u2
1
u2 cte
u1 cte
y1
y1
y2
y2
K11 = u1
K12 = u2
K21 = u1
K22 = u2
(12.6)
u2 cte
u1 cte
u2 cte
u1 cte
Las ganancias estaticas de bucle abierto pueden determinarse facilmente mediante los
modelos del proceso o experimentalmente mediante ensayos en escalon en cada una de
las entradas mientras las restantes se mantienen constantes. Las ganancias estaticas de
bucle abierto definen la influencia de las entradas del sistema sobre sus salidas cuando
este esta en bucle abierto.
Las ganancias de bucle abierto no son una buena eleccion para la medida de las
interacciones debido a que:
Nos se pueden comparar entre si al tener distintas unidades.
No consideran lo que ocurre al cerrar los demas lazos de control.
Para analizar que ocurre con la ganancia del sistema cuando se cierran los demas
lazos de control deberemos analizar otras ganancias, definidas de la forma siguiente:
y1
y2
y2
y1
K
=
K
=
K
=
KC11 = u
C12
C21
C22
u2
u1
u2
1
y2 cte
y2 cte
y1 cte
y1 cte
MEDIDA DE LAS INTERACCIONES. METODO
DE BRISTOL
190
Kij
KCij
(12.7)
K21
u1
K22
K21
K12 K21
y1 = K11 u1 + K12
u1 = K11
u1
K22
K22
Por tanto:
KC11
y1
K12 K21
K11 K22 K12 K21
=
=
= K11
u1 y2 cte
K22
K22
u2 y2 cte
K21
KC21
KC22
u1 y1 cte
K12
u2 y1 cte
K11
T
M = K 1
KC11
1
KC21
KC12
1
KC22
K11 K12
K21 K22
191
1 !T
Por tanto, una vez calculada M = [mij ] las ganancias relativas ij se obtienen mediante:
ij =
Kij
= Kij mij
KCij
Ejemplo 12.1
Considerese a modo de ejemplo un sistema consistente en un tanque bien aislado donde
se aportan un caudal Q1 de agua fria a temperatura T1 y otro de agua caliente con
caudal Q2 y temperatura T2 . El tanque desagua y se pretende que lo haga con un
caudal Q0 y temperatura T0 . Las variables que se pueden manipular son los caudales
(es decir Ui = Qi , mientras que las variables a controlar son la temperatura y caudal
de salida. Despreciando perdidas, el permanente (que es lo que interesa en el metodo
de Bristol) vendra dado por:
Y1 = U 1 + U 2 Y2 =
U 1 T1 + U 2 T2
U1 + U2
Este modelo teorico nos permite calcular las ganancias de bucle abierto usando derivadas:
K11 =
K21 =
Y1
Y1
= 1 K1 2 =
=1
U1
U2
Y2
T1 (U1 + U2 ) (U1 T1 + U2 T2 )
U2 (T1 T2 )
=
=
2
U1
(U1 + U2 )
(U1 + U2 )2
192
K22 =
Y2
T2 (U1 + U2 ) (U1 T1 + U2 T2 )
U1 (T2 T1 )
=
=
2
U2
(U1 + U2 )
(U1 + U2 )2
T1 = 60 C
U2 = 1 l/s
K11 K12
1
K=
= 10
K21 K22
3
de ah:
M = (K
1 T
) =
2
3
1
3
1
3
2
3
2
3
1
10
T2 = 30 C
1
20
3
1
3
1
10
Por lo tanto los emparejamientos mas apropiados son Y1 con U1 y Y2 con U2 o lo que
es lo mismo el caudal de agua de salida se controla con el caudal del agua caliente y la
temperatura de salida se regula con el caudal de agua fria.
Notese que los emparejamientos pueden ser dependientes del punto de operacion.
Efectivamente, si consideramos que
se obtiene
K=
U1 = 1 l/s
U2 = 2 l/s
K11 K12
K21 K22
1
3
2
3
2
3
1
3
20
3
10
3
12.4.
193
(12.8)
(12.9)
(12.10)
(12.11)
(12.12)
y de ah:
Podemos entonces definir la funcion de transferencia de bucle cerrado como:
Gbc (s) = (I + G(s)Gc (s)H(s))1 G(s)Gc (s)
(12.13)
Para que el sistema en bucle cerrado sea estable, los polos de todos los elementos
de la matriz Gbc (s) deben ser estables, es decir deben estar en el semiplano izquierdo
en el caso de sistemas continuos o dentro del crculo unidad en el caso de los sistemas
discretos.
Por otra parte, el sistema estara desacoplado cuando la Gbc (s) sea diagonal. A
continuacion se estudiaran las condiciones en las que esto se verifica. Supongase que
H(s) = I, entonces:
Gbc (s) = (I + G(s)Gc (s))1 G(s)Gc (s)
(12.14)
194
R(s)
E(s)
GC1
Gcn
Gd
U(s)
Y(s)
GCn
Claramente, G(s)Gc (s) es diagonal entonces Gbc (s) tambien lo sera. Veamos que al
contrario tambien se verifica. Supongase que Gbc (s) es diagonal. De la expresion anterior se tiene que:
Gbc (s) (G(s)Gc (s))1 = (I + G(s)Gc (s))1
(12.15)
(12.16)
(12.17)
(12.18)
En esta expresion, Gbc (s) es diagonal y tambien lo es (I Gbc (s))1 por lo que se
puede concluir que G(s)Gc (s) es tambien diagonal. Por tanto, la condicion necesaria
y suficiente para que Gbc (s) sea diagonal es que G(s)Gc (s) lo sea. Notese que esto
u
ltimo implica que la cadena directa en bucle abierto debe ser diagonal. Si esto se
verifica entonces el proceso de dise
no se reduce a sintonizar n lazos monovariables.
En el proceso de dise
no por desacoplo se considera que
Gc (s) = Gd (s)Gcn (s)
(12.19)
donde Gd (s) es la matriz de desacoplo y Gcn (s) es una matriz diagonal que corresponde a los n reguladores. Es decir, el bucle cerrado desacoplado puede conseguirse
calculando un bloque de desacoplo que diagonalice la matriz de transferencia del sistema y ajustando cada bucle como si fuera un sistema monovariable independiente.
Esta estructura de control se muestra en la figura 12.4.
En el calculo de las matrices de desacoplo puede llegarse a casos en los que las
matrices resultantes sean muy complejas o irrealizables (puede suceder cuando los
retrasos son diferentes).
195
4
1
2
0.8
Y2 U2
Y1 U1
0.6
0.4
0.2
0
0
20
40
60
80
100
120
140
8
0
160
20
40
60
80
100
120
140
160
tiempo
tiempo
Figura 12.5: Respuesta del sistema multivariable del ejemplo cuando se aplican escalones en sus entradas.
Notese que Gc (s) se puede calcular directamente a partir de G(s) y Gbc (s) mediante
la expresion:
Gc (s) = G(s)1 Gbc (s) (I Gbc (s))1
(12.20)
Ejemplo 12.2
Sea el siguiente sistema multivariable:
"
Y1 (s)
=
Y2 (s)
10
3
20
3
1+5s
1+5s
U1 (s)
U2 (s)
(12.21)
1
1
1
0
10
20
30
103
3
3
3
C2
G
1+5s
1+5s
1+5s
1+5s
=
V
V C2 = C2 C1 V
V C1 = C1 +
I
3
1
1
0
1
0
1
0
1
1
0
V 2
3
1
3
1
1
10
1+5s
196
0
0.8
0.6
Y2 U2
Y U
0.7
0.5
0.4
6
0.3
0.2
0.1
0
0
20
40
60
80
100
120
140
10
0
160
20
40
60
80
100
120
140
160
tiempo
tiempo
Figura 12.6: Respuesta del sistema multivariable desacoplado cuando se aplican escalones en sus
entradas.
Gd (s) =
2
3
1
3
1
1
1 0
G(s) =
10
0 1+5s
En la figura 12.6 se muestra la respuesta del sistema con la matriz de desacoplo interpuesta. Puede comprobarse que las interacciones han desaparecido.
El dise
no de los controladores puede realizarse mediante cualquier metodo conocido
para controladores monovariables. Por ejemplo, si se quiere que el error en regimen
permanente ante escalon sea cero y que la constante de tiempo de bucle cerrado sea
1 segundo para ambos bucles, el dise
no sera como sigue. En primer lugar, Gbc (s) es
igual a:
1
0
1+s
Gbc (s) =
1
0 1+s
Teniendo en cuenta que la funcion de transferencia de bucle abierto del primer lazo es
1:
1
1
GC1
=
V 1 + GC1 = GC1 (1 + s) V GC1 =
GBC1 =
1 + GC1
1+s
s
Por otra parte, dado que la funcion de transferencia de bucle abierto del segundo lazo
10
es 1+5s
, el dise
no del segundo controlador GC2 a partir de la funcion de transferencia
de bucle cerrado deseada sera:
GBC2 =
10
GC2 1+5s
10
GC2 1+5s
10
10
1 + 5s
1
V 1GC2
= GC2
(1+s) V GC2 =
1+s
1 + 5s
1 + 5s
10s
0.8
0.8
0.6
0.6
R Y
197
R Y
0.4
0.4
0.2
0.2
0
0
20
40
60
80
100
120
140
160
180
200
0
0
20
40
60
80
100
120
140
160
180
tiempo
tiempo
En cuanto a las se
nales de control que realmente se aplican al sistema, estas se
calculan teniendo en cuenta los controladores dise
nados y la matriz de desacoplo:
U1 (s) =
2
1 + 5s
e1 (s) +
e2 (s)
3s
10s
U2 (s) =
1 + 5s
1
e1 (s)
e2 (s)
3s
10s
200
198
Captulo 13
Introducci
on al control adaptativo
13.1.
200
+
REFERENCIA
CONTROLADOR
AJUSTABLE
PLANTA
DECISIN
COMPORTAMIENTO
DESEADO
MECANISMO DE
ADAPTACIN
MEDIDA DEL
INDICE DE
ACTUACIN
dicha comparacion se ajustan los parametros del regulador. Para ello se utiliza un
mecanismo de adaptacion que en algunos casos (no siempre) tambien puede actuar
directamente sobre la actuacion o se
nal de control que recibe el proceso. En algunos
casos se a
nade un tercer bucle que tiene como tarea la supervision del sistema de
manera que, por ejemplo, se garantice la estabilidad del sistema en bucle cerrado o se
eviten ciertos comportamientos indeseados tales como cambios demasiado abruptos en
los parametros del regulador ajustable.
Es facil ver que en el esquema anterior el mecanismo de adaptacion realiza la tarea
de resolver en tiempo real el problema de dise
nar un regulador apropiado (en el caso
mas sencillo con una estructura predefinida) para un sistema dado de manera que se
cumplan unas determinadas especificaciones de dise
no (dadas por el ((comportamiento
deseado))).
Existen otros controladores que proporcionan una cierta capacidad de adaptacion
pero que no encajan en la definicion anterior ya que la adaptacion se realiza en bucle
abierto, es decir, para adaptar la ley de control no se usan las medidas de la salida o
estado de la planta. Este es el caso de los controladores gain scheduling los cuales se
trataran en la seccion 15.4.
AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
13.1.1.
201
Clasificaci
on grosso modo de los sistemas de control
adaptativo
202
optimizan un criterio de comportamiento o funcionamiento. En este grupo estudiaremos los controladores de mnima varianza y mnima varianza generalizado. Tambien
se puede considerar en este grupo el control predictivo basado en modelo (al que dedicaremos un amplio captulo mas adelante) cuando este tipo de control se utiliza como
controlador ajustable en alguno de los esquemas de control adaptativo referidos al
principio del tema.
Los controladores adaptativos sin criterio optimo buscan los parametros del controlador no mediante la optimizacion de un criterio de funcionamiento sino entre aquellos
que cumplen unas ciertas especificaciones, por ejemplo, la colocacion de los ceros y los
polos de bucle cerrado. En estos esquemas el controlador ajustable puede ser por ejemplo un regulador PID, un controlador dead-beat como los estudiados anteriormente o
un controlador por asignacion de polos o de ceros y polos. En tiempo real se resolvera el
problema de dise
nar dichos controladores, de manera que a pesar de los cambios en el
proceso se sigan cumpliendo las especificaciones de dise
no.
13.2.
Justificaci
on del uso de control adaptativo
El control adaptativo conlleva una serie de inconvenientes que pueden hacernos cuestionar su uso. Por ejemplo, su sintona no suele ser tan sencilla como la de los clasicos
controladores PID. Por tanto, hay que ver en que situaciones puede ser ventajoso su
uso y en que situaciones es mejor quedarse con controladores mas sencillos.
En general un controlador convencional esta pensando para controlar sistemas cuyos
parametros permanecen constantes (es decir, su dinamica no vara). Esta suposicion se
corresponde mas o menos con la de un sistema que suele operar siempre cerca de un
determinado punto de operacion y cuyas perturbaciones no son grandes (en relacion a
la variable controlada) y no varan demasiado. Sin embargo, puede suceder que el punto
de trabajo vare frecuentemente y en algunos sistemas puede suponer una variacion de
su dinamica lo suficientemente importante para afectar al rendimiento del controlador.
Por ejemplo, supongamos un sistema realimentado en el que el actuador presenta una
caracterstica de transferencia no lineal (figura 13.2). Esta situacion corresponde por
ejemplo a la caracterstica instalada de un valvula que usualmente suele ser no lineal.
Supongamos que el caudal de salida de la valvula viene dado por una expresion C =
A4 , donde es una cierta constante y A la apertura porcentual de la valvula. En
la figura 13.3 se muestra dicha caracterstica instalada (trazo solido). A la hora de
dise
nar el sistema de control se intentara obtener un modelo linealizado del actuador,
que evidentemente saldra diferente en funcion del punto de operacion. Si el controlador
AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
f(u)
203
G(s)
14
12
caudal (m3/h)
10
10
20
30
40
50
60
70
80
90
100
apertura (%)
1
(s + 1)(s + a)
(13.1)
204
La primera aproximacion a este sistema sera hallar su respuesta ante escalon, para
los diversos valores de a. Como se ilustra en la figura 13.4 (izquierda), dicha respuesta
vara mucho en funcion de los valores del parametro a, pasando de hecho de ser un
sistema estable a otro inestable. Parecera que el sistema vara lo suficiente como para
justificar el uso del control adaptativo. Sin embargo, la configuracion que realmente
nos interesa es la del sistema realimentado. En la figura 13.4 (derecha) se muestra la
respuesta del sistema en bucle cerrado (realimentacion unitaria). En contra de lo que
podramos suponer la respuesta en bucle cerrado es mas o menos la misma, por lo que,
siendo esta la configuracion en la que se va a trabajar, no sera necesario usar control
adaptativo.
Step Response
Step Response
1.4
600
1.2
500
400
0.8
Amplitude
Amplitude
700
300
0.6
200
0.4
100
0.2
20
40
60
80
100
120
140
160
180
200
Time (sec)
10
12
Time (sec)
Figura 13.4: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.1).
Es facil poner un ejemplo en el que la situacion sea la inversa de la anterior. Considerese el sistema dado por la funcion de transferencia
G(s) =
20(1 T s)
(s + 1)(s + 20)(T s + 1)
(13.2)
En este caso la respuesta en bucle abierto del sistema es muy parecida independientemente de los valores de T (figura 13.5 izquierda). Cuando se le realimenta usando como
entrada u = 15(ref y) se obtienen, sin embargo, comportamientos muy diferentes en
funcion del valor de T (figura 13.5 derecha). Es por tanto que en este caso s estara
justificado el uso de tecnicas de control adaptativo. El lector puede comprobar ademas
que no solo hay que juzgar en funcion del comportamiento en bucle cerrado en general, sino que hay que tener en cuenta cuales van a ser las condiciones de operacion
particulares en las que se va a trabajar. En efecto, si se obtiene la respuesta en bucle
cerrado para el sistema (13.2) pero utilizando una realimentacion unitaria (esto es,
u = (ref y)) entonces las respuestas son esencialmente iguales independientemente
del valor de T .
AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
Step Response
205
Step Response
1.5
0.9
0.8
0.7
1
Amplitude
Amplitude
0.6
0.5
0.4
0.5
0.3
0.2
0.1
0
0
0
3
Time (sec)
0.5
1.5
2.5
Time (sec)
Figura 13.5: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.2).
13.3.
Es una de las tecnicas mas antiguas de control adaptativo y se basa, como su nombre
indica, en disponer de un modelo de bucle cerrado que es el que se desea que describa al
conjunto controlador-planta. Es decir, se debe partir de un conjunto de especificaciones
deseadas de bucle cerrado que se expresan mediante el modelo de referencia. El controlador ajustable debera adaptar sus parametros para que el modelo de bucle cerrado
del conjunto coincida o se acerque lo mas posible al modelo de referencia. La figura
13.6 muestra la configuracion mas popular (no es la u
nica sin embargo) para este tipo
de controladores. En dicha figura puede observarse un controlador primario ajustable
que en principio puede ser cualqier tipo de controlador. El mecanismo de adaptacion
es el que se va a encargar de ajustar los parametros del control primario para que la
diferencia entre la salida de la planta y el modelo de referencia sea lo mas peque
na
posible (es decir, que independientemente del valor inicial de esa diferencia, esta vaya
tendiendo a cero progresivamente).
Ademas de utilizar las se
nales tomadas de las salidas de la planta y el modelo,
el mecanismo de adaptacion puede utilizar las se
nales de entrada, de referencia y si
estuviesen disponible las variables de estado. En suma, toda la informacion disponible
sobre la planta y el comportamiento del sistema en bucle cerrado.
Para dise
nar un MRAC se ha de definir el modelo de referencia, el controlador y
la ley de adaptacion. En cuanto al modelo de referencia, sabemos que este especifica
el comportamiento en bucle cerrado deseado. Por tanto, el modelo ha de ser tal que
206
ym
MODELO DE
REFERENCIA
+
REFERENCIA
CONTROLADOR
AJUSTABLE
PLANTA
yp
MECANISMO DE
ADAPTACIN
Figura 13.6: Configuracion generica de un controlador adaptativo por modelo de referencia (MRAC).
AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
13.3.1.
207
donde T es un periodo fijo de tiempo. La idea de la regla del MIT es ajustar el vector
de parametros del controlador en el instante t + T , de manera que haga decrecer J. Es
decir,
Z t+T
J
e( )
(t + T ) = (t)
= (t)
2e( )
d
(13.4)
t
donde Rnn es una matriz definida positiva que act
ua como ganancia de adaptacion.
Es facil entender que el controlador solo tiene influencia sobre la salida de la planta,
no sobre la del modelo. Por tanto ymodelo (t) no depende de y al variar este tampoco
lo hace ymodelo (t), luego
e( )
yproceso ( )
=
Finalmente, podemos conocer la variacion instantanea de los parametros del controlador tomando T 0 en el segundo miembro de (13.4) y teniendo en cuenta lo anterior
se llega a
d
yproceso
= 2e(t)
(13.5)
dt
208
d
e(t)
= e(t)
dt
que resulta en
d
e(t)
=
signo(e(t))
dt
e(t)
signo(e(t))
Ejemplo 13.1
Supongamos que tenemos un proceso cuya funcion de transferencia viene dada por
G(s) = kF (s)
donde k es ganancia desconocida y F (s) es perfectamente conocida. Se pretende que
el sistema en bucle cerrado se comporte acorde al modelo de referencia
GM (s) = k0 F (s)
(13.6)
donde k0 es una ganancia conocida (es un dato de entrada del problema). El controlador
ajustable del que se dispone tiene la estructura
u = uc
donde u es la entrada que se aplica a la planta y uc es la entrada al controlador (es
decir el parametro que se ha de ajustar es simplemente una ganancia). Se supone una
configuracion del sistema de control tal que es una ganancia feed-forward , es decir,
la funcion de transferencia desde uc a la salida del proceso yp es
Y (s)
= kF (s)
UC (s)
Como se pretende que la funcion de transferencia sea como en (13.6), lo logico sera
tomar
k0
=
k
pero es evidente que esto no se puede hacer, porque se desconoce el valor de k. Se
propone ajustar mediante la regla del MIT en el contexto de un control adaptativo
MRAC. El error es en este caso
e(t) = yp (t) ym (t) = kF (s)uc (t) k0 F (s)uc (t)
(13.7)
AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
209
(13.8)
ym (t)
k0
k0
La variacion de los parametros seg
un la regla del MIT sera
d
k
= ym (t)e(t)
dt
k0
Notese que se sigue desconociendo el valor de k0 , sin embargo esto no plantea problema
alguno, pues como es una constante cualquiera podemos agrupar las constantes que
aparecen en una sola 0 , de manera que la regla sera
d
= 0 ym (t)e(t)
dt
210
Captulo 14
Reguladores Autoajustables (STR)
14.1.
Introducci
on. Estructura general de los STR
212
REFERENCIA
CONTROLADOR
AJUSTABLE
PLANTA
y
COMPORTAMIENTO
DESEADO
DISEO DEL
CONTROLADOR
ESTIMACIN DE
LA PLANTA
En los STR clasicos se suele suponer que los procesos son deterministas (es decir no
se consideran fuentes de perturbaciones estocasticas como las vistas en el captulo 7).
Por otra parte es com
un que el controlador ajustable sea del tipo PID. En realidad,
como es la estructura de un STR es modular, se puede usar cualquier combinacion de
controlador/metodo de identificacion.
Tambien se pueden considerar procesos estocasticos en los STR. Es com
un entonces
que la estructura escogida para el modelo sea la de tipo ARMAX (vease el captulo 7).
El dise
no se podra hacer, por tanto, utilizando un criterio estocastico o no estocastico.
En el caso de que sea un criterio estocastico normalmente se obtienen los parametros
del regulador mediante la minimizacion de un cierto ndice de funcionamiento. Por
ejemplo en el regulador de mnima varianza (el cual se vera en la seccion 14.2) se
intentan minimizar las variaciones con respecto a cero de la salida (se considera un
problema de regulacion con referencia nula), que al ser una se
nal ruidosa se consigue
minimizando la esperanza matematica de la salida en k + d, es decir
J = E y 2 (k + d)
siendo d el retraso.
Cuando el dise
no ser realiza usando un planteamiento no estocastico, se esta considerando que las perturbaciones que inciden sobre el sistema son conocidas con exactitud de antemano, de tal manera que podemos usar modelos deterministas (vease el
captulo 7). En este caso el ndice de actuacion se da en funcion de unas especificaciones que debe cumplir la salida del sistema, como por ejemplo el tiempo de subida y
213
14.1.1.
Entre los STR podemos distinguir dos tipos de algoritmos, unos que identifican directamente los parametros de la planta y luego dise
nan el controlador para cumplir con
los requisitos (estructura explcita) y otros que lo que hacen es estimar el controlador
directamente sin pasar por la estimacion previa de la planta (estructura implcita).
Un algoritmo con estructura explcita constara de los siguientes pasos:
1. Estimar los parametros del modelo mediante un algoritmo de identificacion recursivo.
2. Calcular los parametros del controlador.
3. Calcular la se
nal de control y aplicarla.
Estos pasos se repetiran en cada tiempo de muestreo.
Los algoritmos de estructura implcita son mas complicados desde el punto de vista
conceptual. Lo que se hace en ellos es reparametrizar el modelo de la planta y el
controlador en funcion de los parametros del controlador. El esquema sera el mostrado
en la figura 14.2. Observese en esta figura que no se esta pasando por la fase de dise
no del
REFERENCIA
CONTROLADOR
AJUSTABLE
PLANTA
y
IDENTIFICACIN
DEL MODELO
REPARAMETRIZADO
COMPORTAMIENTO
DESEADO
controlador sino que este se identifica, de manera que cumpla con las especificaciones de
dise
no. Por eso en la figura 14.2 como la identificacion toma como datos de entrada las
214
14.2.
J = E y 2 (k + d|k)
donde E{} es el operador esperanza matematica, y la notacion y(k + d|k) indica la
prediccion del valor de y en el instante k + d hecha en base a la informacion disponible
en el instante k. El modelo del proceso que se considera es del tipo ARMAX, el cual
se indica a continuacion
A(z 1 )y(k + d) = B(z 1 )u(k) + C(z 1 )v(k + d)
donde
A(z 1 ) = 1 + a1 z 1 + + an z n
B(z 1 ) = b1 z 1 + b2 z 2 + + bn z n
C(z 1 ) = 1 + c1 z 1 + + cn z n
(14.1)
215
y d es el retraso puro1 .
Supongase que se desea dividir C(z 1 ) entre A(z 1 ). Dicha division de polinomios
producira en general un polinomio cociente y un polinomio resto. El cociente lo denotaremos por F (z 1 ) y el resto se factoriza de manera que se denote por z (d+1) G(z 1 ).
Por tanto podremos reescribir la conocida expresion dividendo igual a divisor por cociente mas resto as
C(z 1 ) = A(z 1 )F (z 1 ) + z (d+1) G(z 1 )
(14.2)
donde
F (z 1 ) = 1 + f1 z 1 + + fd z d
G(z 1 ) = g0 + g1 z 1 + + gn1 z (n1)
Notese que el grado de F (z 1 ) es d y el de G(z 1 ) es n 1. A continuacion dividiremos
ambos miembros de la ecuacion (14.1) por A(z 1 ) y usaremos (14.2) de manera que se
obtiene
z 1 G(z 1 )
B(z 1 )
1
u(k)
+
F
(z
)v(k
+
d)
+
v(k)
(14.3)
y(k + d) =
A(z 1 )
A(z 1 )
en donde ademas se ha tenido en cuenta que z d v(k + d) = v(k). Veamos el significado
de algunos de los terminos de (14.3). El termino F (z 1 )v(k + d) es una combinacion
lineal de los valores de v(k) a v(k + d) cuyo efecto sobre y(k + d) no depende de u(k).
Por otra parte el termino
z 1 G(z 1 )
v(k)
A(z 1 )
representa el efecto sobre la salida de las perturbaciones en instantes anteriores a k.
Por otra parte si dividimos por C(z 1 ) la expresion (14.2) se obtiene
1=
A(z 1 )F (z 1 )
z (d+1) G(z 1 )
=
C(z 1 )
C(z 1 )
(14.4)
B(z 1 ) d
A(z 1 )
y(k)
z u(k)
C(z 1 )
C(z 1 )
Notese que el polinomio B(z 1 ) no tiene termino independiente, lo que se refleja en la forma de
describir el proceso ARMAX en la ecuacion (14.1).
216
B(z 1 )
z 1 G(z 1 ) A(z 1 )
B(z 1 ) d
1
y(k + d) =
u(k) + F (z )v(k + d) +
y(k)
z u(k)
A(z 1 )
A(z 1 )
C(z 1 )
C(z 1 )
operando
y(k + d) =
B(z 1 )
z 1 G(z 1 )
G(z 1 )B(z 1 ) (d+1)
1
u(k)
+
F
(z
)v(k
+
d)
+
y(k)
z
u(k)
A(z 1 )
C(z 1 )
A(z 1 )C(z 1 )
z 1 G(z 1 )
G(z 1 )z (d+1)
1
1
y(k + d) = F (z )v(k + d) +
1
B(z 1 )u(k)
y(k) +
1
1
1
C(z )
A(z )
C(z )
Recuerdese ahora la ecuacion (14.4) y sustit
uyase en la anterior para obtener
y(k + d) = F (z 1 )v(k + d) +
F (z 1 )B(z 1 )
z 1 G(z 1 )
y(k)
+
u(k)
C(z 1 )
C(z 1 )
A partir de esta ecuacion podemos calcular J y ver que valor de u(k) hace mnimo J:
2
2
2
F (z 1 )B(z 1 )
z 1 G(z 1 )
1
E y (k + d) = E F (z )v(k + d) + E
u(k) +
y(k)
C(z 1 )
C(z 1 )
F (z 1 )B(z 1 )
z 1 G(z 1 )
1
u(k) +
y(k)
+2E F (z )v(k + d)
C(z 1 )
C(z 1 )
Si se intenta minimizar la expresion anterior se tiene que el primer termino no depende
de u(k), por lo que no influye a la hora de calcular el valor de u(k) que hace mnimo
J. Por tanto, ese termino puede ser descartado. Por otra parte, el tercer termino es la
esperanza matematica de una expresion la que aparece terminos en los que los valores
de la perturbacion v(k + i) i = 0 . . . d multiplican valores actuales y pasados de y(k)
y u(k). Como los valores de v(k + i) i = 0 . . . d son independientes (incorrelados)
de los de y(k) y u(k) la esperanza matematica que aparece en ese tercer termino es
cero. Por tanto, nos queda solo el segundo termino que es el que hay que minimizar.
Para ello basta con calcular el valor que hace cero lo que esta dentro de las llaves y
as el cuadrado sera cero (que es el mnimo valor posible de una funcion cuadratica).
El resultado es
z 1 G(z 1 )
y(k)
(14.5)
u(k) =
F (z 1 )B(z 1 )
que se puede reescribir tambien como (y as aparece en algunos textos)
u(k) =
G(z 1 )
y(k)
zB(z 1 )F (z 1 )
(14.6)
217
Ejemplo 14.1
Considerese el siguiente sistema lineal
yk = ayk1 + buk2
Se pide encontrar la expresion del regulador de mnima varianza.
En este caso es facil ver que
A(z 1 ) = 1 az 1 B(z 1 ) = bz 1 C(z 1 ) = 1
y por otra parte d = 1. Recordemos que se ha de dividir C(z 1 ) entre A(z 1 ) hasta que
el grado del cociente F (z 1 ) sea d, o sea en este caso F (z 1 ) tiene la forma F (z 1 ) = 1+
f1 z 1 . La figura 14.3 nos muestra la division hecha paso a paso a la manera tradicional.
Por tanto F (z 1 ) = 1 + az 1 . El resto que en este caso es a2 z 2 debe identificarse con
1
1-az-1
1-az-1
1+az-1
az-1
az-1-a2z -2
a2z -2
la expresion z 2 G(z 1 ), por lo que es evidente que en este caso G(z 1 ) = a2 . Luego
recordando la expresion (14.5) obtenemos que el regulador de mnima varianza para
este caso es
a2
z 1 a2
yk =
yk
uk =
(1 + az 1 )bz 1
(1 + az 1 )b
14.2.1.
El control por mnima varianza tal y como se ha presentado aqu presenta problemas
cuando el sistema es de fase no mnima ya que al tener ceros inestables estos se cancelaran mediante polos inestables. Esta situacion no es deseable, por que en la practica
puede que los ceros cambien de posicion, bien por imprecision en el modelo del sistema
o por variaciones de la dinamica del sistema. En este caso los ceros no se cancelaran
con los polos con lo cual a
nadiramos polos inestables al sistema. Evidentemente esto
u
ltimo llevara a la inestabilidad del sistema. Existen variaciones del regulador de mnima varianza que tratan este problema y ademas incorporan seguimiento de referencias
y ponderacion del esfuerzo de control (es decir, que ademas de perseguir el objetivo de
DE POLOS Y CEROS
ASIGNACION
218
mnimizar las variaciones de la salida con respecto a la referencia se intenta hacer esto
usando el menor esfuerzo de control posible). La mas conocida es la del regulador de
mnima varianza generalizado. La idea de este regulador es la de considerar el siguiente
ndice de funcionamiento
n
2 o
1
1
1
J = E Q(z )y(k + d) + R(z )u(t) P (z )ref(t + d)
donde Q(z 1 ), R(z 1 ) y P (z 1 ) son funciones de ponderacion estables que tienen la
forma
Qn (z 1 )
Rn (z 1 )
Pn (z 1 )
1
1
Q(z 1 ) =
R(z
)
=
P
(z
)
=
Qd (z 1 )
Rd (z 1 )
Pd (z 1 )
Bajo estas condiciones la se
nal de control que minimiza J es
u(k) =
(14.7)
14.3.
G(z 1 )
C(z 1 )
y(t)
ref(t + d)
zB(z 1 )F (z 1 )
zB(z 1 )F (z 1 )
(14.8)
Asignaci
on de polos y ceros
w(k)
1
M(z )
S(z1 )
219
B(z -1 )z d
A(z-1 )
y(k)
G(z )
1
Rm (z 1 ) d
z w(k)
Pm (z 1 )
(14.9)
S(z 1 )B(z 1 )z d
w(k)
A(z 1 )M (z 1 ) + B(z 1 )G(z 1 )z d
(14.10)
DE POLOS Y CEROS
ASIGNACION
220
Por otra parte se asume que, ademas de especificarse el retraso y los polinomios que
definen la funcion de transferencia deseada, como parte de los datos de entrada del
problema, se tiene un polinomio A0 (z 1 ) que se utiliza para definir S(z 1 ) mediante la
expresion
S(z 1 ) = A0 (z 1 )Rm1 (z 1 )
Con todo lo anterior y la ecuacion (14.10) se llega a
A(z 1 )M1 (z 1 ) + B (z 1 )G(z 1 )z d = A0 (z 1 )Pm (z 1 )
(14.11)
Esto es una ecuacion polinomial, donde las incognitas son M1 (z 1 ) y G(z 1 ), que
puede resolverse mediante diferentes metodos2 . Quizas el mas simple (pero no mas
eficiente) sea plantear un sistema de ecuaciones lineales donde las incognitas sean los
coeficientes de los polinomios M1 (z 1 ) y G(z 1 ). En cualquier caso se deben imponer
condiciones sobre los grados de dichos polinomios para que la ecuacion tenga solucion
u
nica. Aplicando consideraciones algebraicas que no mostraremos aqu, se llega a que
existen dos posibles opciones para los grados de M1 (z 1 ) y G(z 1 ),
1.
grado(G(z 1 )) = grado(A(z 1 )) 1
grado(M1 (z 1 )) = grado(A0 (z 1 )) + grado(Pm (z 1 )) grado(A(z 1 ))
2.
grado(G(z 1 )) = grado(A0 (z 1 )) + grado(Pm (z 1 )) grado(B (z 1 )) d
grado(M1 (z 1 )) = grado(B (z 1 )) + d 1
Se puede demostrar que el control por asignacion de polos y ceros es equivalente al
MRAC. Por otra parte seg
un el sistema podemos tener casos simplificados:
1. Cancelacion de todos los ceros. Esto se puede hacer si el sistema es de fase mnima.
En este caso
B + (z 1 ) = B(z 1 )
B (z 1 ) = 1
M (z 1 ) = M1 (z 1 )B(z 1 )
Rm (z 1 ) = Rm1 (z 1 ) = K
S(z 1 ) = KA0 (z 1 )
De hecho es una ecuacion polinomial diofantica. Este tipo de ecuaciones las encontraremos de
nuevo en el captulo 17, donde se veran otros metodos para resolverla.
221
2. No se cancela ning
un cero. Esto ocurre si todos las races de B(z 1 ) son inestables.
En este caso
B + (z 1 ) = 1
B (z 1 ) = B(z 1 )
M (z 1 ) = M1 (z 1 )
S(z 1 ) = KA0 (z 1 )
Rm (z 1 ) = KB(z 1 )
14.3.1.
Notese que multiplicando ambos miembros de la ecuacion (14.11) por y(k) se obtiene
A(z 1 )M1 (z 1 )y(k) + B (z 1 )G(z 1 )z d y(k) = A0 (z 1 )Pm (z 1 )y(k)
que dado que A(z 1 )y(k) = B(z 1 )z d u(k) es equivalente a
M1 (z 1 )B(z 1 )z d u(k) + B (z 1 )G(z 1 )y(k) = A0 (z 1 )Pm (z 1 )y(k)
Por otra parte sabemos que M (z 1 ) = M1 (z 1 )B + (z 1 ) y B(z 1 ) = B + (z 1 )B (z 1 ),
por lo que se llega a
DE POLOS Y CEROS
ASIGNACION
222
1
1
1
S(z
)w(k)
G(z
)y(k)
M (z 1 )
14.3.2.
1
1
1
S(z
)w(k)
G(z
)y(k)
M (z 1 )
Captulo 15
Controladores PID con autoajuste
y Ajuste por tabla
15.1.
Introducci
on
En este captulo se revisaran algunas de las tecnicas de control adaptativo con mayor
15.2.
Funci
on de autoajuste (autotuning )
Los reguladores adaptativos vistos hasta ahora, es decir los MRAC y STR, necesitan
para poder funcionar correctamente un conocimiento basico a priori de la planta. A fin
de poder obtener esa informacion lo mas facilmente posible, los fabricantes introdujeron
en los controladores adaptativos comerciales un modo de sintona previa (pre-tune), que
obtena dicha informacion basica.
Paralelamente, se estaban desarrollando tecnicas para poder ajustar automaticamente controladores de tipo PID sin necesidad de intervencion del operario. Lo que
223
224
DE AUTOAJUSTE (AUTOTUNING)
FUNCION
ocurrio, es que se vio que para poder ajustar un PID automaticamente bastaba con la
informacion basica que proporcionaban los modos pre-tune de los controladores adaptativos.
Por otra parte, desde el mundo industrial una de las caractersticas mas demandadas
era una funcion de autoajuste inicial. Al instalarse el controlador se activara dicha
funcion (apretando un boton en el panel de control) a lo que el controlador respondera
realizando una batera de tests pre-programados que daran como resultado el ajuste
automatico del controlador. Esta demanda surge de la dificultad y el engorro de ajustar
un controlador inicialmente. Lo que hicieron los fabricantes de PID fue aprovechar los
resultados obtenidos en el desarrollo de funciones pre-tune en controladores adaptativos
para dotar a sus PID de una funcion de autoajuste como la que demandaban los
usuarios.
Para conseguir el autoajuste se puede utilizar cualquier tecnica de control adaptativo que permita estimar los parametros adecuados, con el u
nico requisito de que
los ensayos requeridos sean sencillos, a fin de poderse realizar de manera automatica.
Desde el punto de vista practico, los controladores con autoajuste tendran dos modos
de funcionamiento, el modo normal en el cual funcionan como cualquier controlador
y el de ajuste. En el modo de ajuste el control se desconecta, se realizan los ensayos
necesarios y despues se vuelve al modo normal con el controlador ajustado.
Por tanto un controlador con autoajuste realiza tareas de modelado (identificacion),
y dise
no del controlador, de manera transparente al usuario, por lo que se simplifican
mucho las tareas de instalacion y puesta en marcha de los controladores. Por otra parte
no incrementan en mucho el coste final del controlador y son una manera de introducir
tecnicas de control adaptativo en la industria.
Finalmente hay que hacer notar la diferencia fundamental entre un controlador
autoajustable del tipo STR y un controlador con autoajuste. En los primeros el controlador de manera autonoma va adaptandose de una manera mas o menos continuada.
En un controlador con funcion de autoajuste, dicho autoajuste solo se realiza bajo demanda del operador, y usualmente solo cuando se instala o se cambia sustancialmente
las condiciones del equipo a controlar.
15.3.
225
Antes de tratar las distintas tecnicas existentes para ajustar automaticamente PIDs
es importante hacer notar que los PIDs industriales (figura 15.1) no son exactamente
iguales a las formulaciones academicas que se ense
nan en cursos basicos de control. Por
Figura 15.1: PID industrial moderno con funcion de autoajuste (ABB modelo ECA).
226
0,7 1
15.3.1.
T
ecnicas de ajuste basadas en la respuesta transitoria
Estas son tecnicas de ajuste en bucle abierto que se basan en aplicar un escalon en
la se
nal de entrada del lazo que se quiere sintonizar y ajustar un modelo simple del
tipo
k
esL
(15.1)
G(s) =
1 + sT
227
Conocidos los parametros del modelo el PID se puede ajustar usando tecnicas del
tipo Ziegler-Nichols de bucle abierto. Otros metodos estan basados en medida de areas
como la que se describe a continuacion. Considerese la figura 15.2. El procedimiento
para calcular T y L comienza por el calculo de A0 . De ah se determina
L+T =
A0
k
eA1
k
A0
A1
L+T
15.3.2.
M
etodos basados en las oscilaciones producidas al realimentar con un rel
e
Los metodos de ajuste basados en la respuesta transitoria son simples, pero muy
sensibles a las perturbaciones, ya que las pruebas se realizan en bucle abierto. Las
tecnicas basadas en experimentos en bucle cerrado no tienen este problema. De estas
tecnicas veremos la que esta basada en las oscilaciones producidas al realimentar con
un rele. La estructura para realizar el ajuste es la que se muestra en la figura 15.3.
La idea clave es que la mayora de los procesos exhiben oscilaciones autosostenidas
(conocidas como ciclos lmite1 ) cuando son realimentados con un rele en la cadena
1
El estudio de los ciclos lmite no pertenece a esta asignatura. Baste saber que son oscilaciones con
entrada nula o referencia constante que aparecen en ciertos sistemas y que pueden provocarse con la
estructura presentada aqu.
LA TECNICA
DE AJUSTE POR TABLA O GAIN SCHEDULING
228
PID
u
PROCESO
REL
directa. Los parametros del ciclo lmite contienen informacion suficiente para calcular
los parametros de ajuste del PID.
El procedimiento consiste en desconectar el controlador a la hora de hacer el ajuste
y sustituirlo por el rele. En la salida comenzaran a aparecer oscilaciones que se empezaran a repetir periodicamente cuando el ciclo lmite aparezca. Una vez que se han
determinado los parametros del ciclo lmite se calculan los del PID y se vuelve a conectar el controlador. El metodo mas conocido para calcular los parametros del PID es el
metodo de Ziegler-Nichols de bucle cerrado. Suponiendo una referencia nula, si el ciclo
lmite resultante tiene amplitud a y frecuencia u entonces los parametros del metodo
de Ziegler-Nichols de bucle cerrado, es decir, la ganancia crtica Ku y el periodo crtico
Tu son iguales a
2
4d
Tu =
Ku =
a
u
donde d es la amplitud del rele.
15.4.
La t
ecnica de ajuste por tabla o gain scheduling
+
REFERENCIA
MEDIO
AMBIENTE
MEDIDA DE LA
VARIABLE
AUXILIAR
CONTROLADOR
AJUSTABLE
PLANTA
229
MECANISMO DE
ADAPTACIN
Figura 15.4: Configuracion generica de un controlador adaptativo con adaptacion en bucle abierto.
se usan en cada instante vienen determinados por una tabla precalculada para varios
puntos de funcionamiento o valores de la variable auxiliar. Este tipo de control es muy
popular, por ejemplo, en sistemas de control de vuelo, en los que los parametros del
controlador se seleccionan de un conjunto de parametros precalculados en funcion de
la altura de vuelo. Por supuesto, este tipo de control funciona bien si entre la variable
auxiliar y la dinamica del sistema existe una fuerte relacion, que permite determinar
el valor de los parametros en funcion del valor observado de la variable auxiliar. Una
ventaja que tiene este esquema es que los parametros del control se pueden cambiar
(adaptar) a la misma velocidad a la que cambia la dinamica del sistema pues estos
cambios se reflejan sobre la variable auxiliar a la vez que se producen. Esta rapidez en
el cambio de los parametros puede ser, sin embargo, contraproducente. Por otra parte la
construccion de la tabla puede ser muy complicada. De hecho no existe una metodologa
universal, sino que para cada aplicacion ha de verse como llevar a la practica las ideas
del gain scheduling. Por u
ltimo encontrar la variable auxiliar apropiada no siempre es
posible.
Estos controladores, sin embargo, se pueden encontrar en diversos sistemas tpicos de control, principalmente debido a su sencillez y efectividad cuando estan bien
dise
nados. Algunas de las aplicaciones tpicas son:
Linealizacion de la caracterstica de ciertos actuadores. Tal y como se vio en la
seccion 13.2 la caracterstica no lineal de un actuador se puede aproximar por un
modelo linealizado a trozos, de manera que en funcion del punto de operacion del
actuador se escogeran unos valores u otros para el controlador.
Control de pH. En estos sistemas se presentan no linealidades originadas tanto
por los elementos de control (valvulas, bombas, sensores) como por las reacciones
LA TECNICA
DE AJUSTE POR TABLA O GAIN SCHEDULING
230
pH
8
7
6
5
4
3
2
1
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
1
3
x 10
Figura 15.5: Curva de pH para una solucion de HCl 0.001 M y NaOH 0.001 M.
1 si V > 0,5
e=
1 si V 0,5
2
En realidad el nombre tecnico es curva de titracion, aunque tales detalles no son relevantes en
esta asignatura
231
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0.5
0.6
0.7
0.8
0.9
1.1
1.2
1.3
1.4
1.5
15.5.
232
15.5.1.
233
15.5.2.
Foxboro EXACT
15.5.3.
ABB Novatune
Esta herramienta de control STR (figura 15.7) esta basada entre otras cosas en el
control de mnima varianza y ofrece la capacidad de especificar la posicion de 1 de los
234
polos de bucle cerrado. Utiliza mnimos cuadrados recursivos con factor de olvido para
Figura 15.7: La herramienta Novatune se comercializa actualmente con el sistema Advant 410 de ABB.
Captulo 16
Control Predictivo Basado en
Modelo (MPC)
16.1.
Perspectiva hist
orica
El Control Predictivo se desarrollo en base a dos lneas basicas. Por un lado, a finales
de los a
nos setenta surgieron diversos algoritmos que usaban explcitamente un modelo
dinamico del proceso para predecir el efecto de las acciones de control futuras en la
salida, las cuales eran determinadas minimizando el error predicho sujeto a restricciones
de operacion. La optimizacion se repeta en cada instante de muestreo con informacion
actualizada del proceso. Estas formulaciones eran de naturaleza heurstica y algortmica
e intentaban aprovechar el creciente potencial de los computadores digitales por aquella
epoca.
Rapidamente el mpc adquirio gran popularidad en las industrias de procesos qumicos principalmente debido a la simplicidad del algoritmo y al uso del modelo de respuesta impulsional o en escalon, que aunque posea muchos mas parametros que las
formulaciones en el espacio de estados o funcion de transferencia suele ser preferido
por ser intuitivo y necesitar menos informacion a priori para identificar. La mayora
de las aplicaciones fueron llevadas a cabo sobre sistemas multivariables incluyendo
restricciones. Los algoritmos utilizados fueron principalmente el idcom (IdentificationCommand) y el dmc (Control con Matriz Dinamica, Dynamic Matrix Control).
Independientemente fue surgiendo otra lnea de trabajo en torno a las ideas del control adaptativo, desarrollando estrategias esencialmente para procesos monovariables
235
CONCEPTOS BASICOS
DE CONTROL PREDICTIVO
236
formuladas con modelos entrada/salida. En este contexto se extendieron las ideas del
Controlador de Mnima Varianza y se desarrollo el Control Predictivo Generalizado
(Generalized Predictive Control gpc) que es uno de los metodos mas populares en la
actualidad.
16.2.
Conceptos b
asicos de control predictivo
237
16.3.
238
u(t+k|t)
u(t)
^y(t+k|t)
y(t)
N
t-1
t+1
...
t+k
...
t+N
1. En cada instante t y haciendo uso del modelo del proceso se predicen las futuras
salidas para un determinado horizonte N , llamado horizonte de prediccion. Estas
salidas predichas, y(t + k | t)1 para k = 1 . . . N dependen de los valores conocidos
hasta el instante t (entradas y salidas pasadas) y de las se
nales de control futuras
u(t + k | t), k = 0 . . . N 1 que se pretenden mandar al sistema y que son las
que se quieren calcular.
2. El conjunto de se
nales de control futuras se calcula optimizando un determinado
criterio en el que se pretende mantener el proceso lo mas proximo posible a la
trayectoria de referencia w(t + k) (que puede ser directamente el setpoint o una
suave aproximacion a este). Este criterio suele tomar la forma de una funcion
cuadratica de los errores entre la salida predicha y la trayectoria de referencia
tambien predicha, incluyendo en muchos casos el esfuerzo de control. Si el criterio
es cuadratico, el modelo lineal y no existen restricciones se puede obtener una
solucion explcita, en otro caso se debe usar un metodo iterativo de optimizacion.
Adicionalmente se hace alguna suposicion sobre la estructura de la ley de control
futura, como por ejemplo que va a ser constante a partir de cierto instante.
nal de control u(t | t) es enviada al proceso mientras que las siguientes
3. La se
se
nales de control calculadas son desechadas, puesto que en el siguiente instante
1
Entradas y salidas
pasadas
Trayectoria
de referencia
Salidas
predichas
Modelo
239
+
-
Controles
futuros
Optimizador
Errores futuros
Funcion de coste
Restricciones
Para llevar a cabo esta estrategia, se usa una estructura como la mostrada en la
figura 16.2. Se hace uso de un modelo para predecir las salidas futuras del proceso,
basandose en las futuras se
nales de control propuestas. Estas se
nales son calculadas
por el optimizador teniendo en cuenta la funcion de coste (donde aparece el futuro
error de seguimiento) as como las restricciones. Por tanto el modelo juega un papel
decisivo en el controlador. El modelo elegido debe ser capaz de capturar la dinamica del
proceso para poder predecir las salidas futuras al mismo tiempo que debe ser sencillo
de usar y de comprender.
El optimizador es otra parte fundamental de la estrategia pues proporciona las
acciones de control. Si la funcion de coste es cuadratica, el mnimo se puede obtener
como una funcion explcita de las entradas y salidas pasadas y de la trayectoria de
referencia. Sin embargo, cuando existen restricciones de desigualdad la solucion debe
ser calculada por metodos numericos con mas carga de calculo.
ELEMENTOS BASICOS
240
16.4.
Elementos b
asicos
Todos los controladores predictivos poseen elementos comunes y para cada uno de
estos elementos se pueden elegir diversas opciones, dando lugar a distintos algoritmos.
Estos elementos son:
Modelo de prediccion
Funcion objetivo
Obtencion de la ley de control
16.4.1.
Modelo de predicci
on
g2
y(t)
g1
y(t)
hN
h1
hi
gi
h2
241
...
t+1 t+2
t+N
...
t+1 t+2
t+N
b)
a)
hi u(t i)
i=1
N
X
(16.1)
i=1
N
X
i=1
ELEMENTOS BASICOS
242
donde las gi son los valores muestreados ante la entrada en escalon y 4u(t) =
u(t) u(t 1), seg
un se muestra en la figura 16.3b. El valor de y0 puede tomarse
0 sin perdida de generalidad, con lo cual el predictor sera:
y(t + k | t) =
N
X
gi 4 u(t + k i | t)
i=1
k
X
i=1
Posee la ventaja de que sirve tambien para sistemas multivariables a la vez que
permite analizar la estructura interna del proceso (aunque a veces los estados
obtenidos al discretizar no tienen ning
un significado fsico). Los calculos pueden
ser complicados, con la necesidad adicional de incluir un observador si los estados
no son accesibles.
243
C(z 1 )e(t)
D(z 1 )
e(t)
1 z 1
16.4.1.1.
ELEMENTOS BASICOS
244
La se
nal uc (t) vale cero en el pasado y corresponde a las se
nales de control en los
instantes futuros:
uc (t j) = 0 para j = 1, 2,
uc (t + j) = u(t + j) u(t 1) para j = 0, 1, 2,
Process
uc
y
f
yc
16.4.2.
Funci
on objetivo
Los diversos algoritmos de mpc proponen distintas funciones de coste para la obtencion de la ley de control. En general se persigue que la salida futura en el horizonte
considerado siga a una determinada se
nal de referencia al mismo tiempo que se puede
penalizar el esfuerzo de control requerido para hacerlo. La expresion general de tal
funcion objetivo sera:
J(N1 , N2 , N u) =
N2
X
j=N1
(j)[
y (t + j | t) w(t + j)] +
Nu
X
j=1
245
Parametros: N1 y N2 son los horizontes mnimo y maximo de coste (o de prediccion) y N u es el horizonte de control, que no tiene por que coincidir con el
horizonte maximo, como se vera posteriormente. El significado de N1 y N2 resulta bastante intuitivo: marcan los lmites de los instantes en que se desea que
la salida siga a la referencia. As, si se toma un valor grande de N1 es porque
no importa que haya errores en los primeros instantes, lo cual provocara una respuesta suave del proceso. Notese que para procesos con tiempo muerto d no tiene
sentido que N1 sea menor que dicho valor puesto que la salida no empezara a
evolucionar hasta el instante t + d. Ademas, si el proceso es de fase no mnima,
este parametro permite eliminar de la funcion objetivo los primeros instantes de
respuesta inversa.
Los coeficientes (j) y (j) son secuencias que ponderan el comportamiento futuro. Usualmente se consideran valores constantes o secuencias exponenciales. Por
ejemplo se puede conseguir un peso exponencial de (j) a lo largo del horizonte
usando:
(j) = N2 j
Si esta comprendido entre 0 y 1 indica que se penaliza mas a los errores mas
alejados del instante t que a los mas proximos, dando lugar a un control mas
suave y con menor esfuerzo. Si, por el contrario, > 1 es que se penalizan mas
los primeros errores, provocando un control mas brusco.
Todos estos valores pueden ser usados como parametros de sintonizacion, obteniendo un abanico muy amplio de posibilidades con las que se puede cubrir una extensa gama de opciones, desde un control estandar hasta una estrategia dise
nada
a medida para un proceso en particular.
Trayectoria de referencia: Una de las ventajas del control predictivo es que si se
conoce a priori la evolucion futura de la referencia, el sistema puede empezar
a reaccionar antes de que el cambio se haya efectivamente realizado, evitando
los efectos del retardo en la respuesta del proceso. En muchas aplicaciones la
evolucion futura de la referencia r(t + k) es conocida de antemano, como en
Robotica, servos o procesos en batch; en otras aplicaciones aunque la referencia sea
constante, se puede conseguir una sensible mejora de prestaciones simplemente
conociendo el instante de cambio de valor y adelantandose a esa circunstancia.
En el criterio de minimizacion (16.3), la mayora de los metodos suelen usar una
trayectoria de referencia w(t + k) que no tiene por que coincidir con la referencia
ELEMENTOS BASICOS
246
real. Normalmente sera una suave aproximacion desde el valor actual de la salida
y(t) a la referencia conocida mediante un sistema de primer orden:
w(t) = y(t)
k = 1 . . . N (16.4)
r(t+k)
w1(t+k)
w2 (t+k)
y(t)
t
Figura 16.5: Trayectoria de referencia
247
u(t)
umax
y(t)
ymax
t
t
t
16.4.3.
Obtenci
on de la ley de control
j > Nu
lo cual es equivalente a dar pesos infinitos a las cambios en el control a partir de cierto
instante. El caso lmite sera considerar N u igual a 1 con lo que todas las acciones
futuras seran iguales a u(t)2 .
2
248
16.5.
Revisi
on de los principales algoritmos
Se presentan a continuacion los principales algoritmos de control predictivo, mostrando sus principales caractersticas pero sin entrar en detalles. En el tema siguiente se
estudiaran en detalle los dos metodos considerados mas representativos: dmc y gpc.
16.5.0.1.
Este metodo usa la respuesta ante escalon (16.2) para modelar el proceso, considerando solo los N primeros terminos, asumiendo por tanto que el proceso es estable.
En cuanto a las perturbaciones, se considera que su valor permanence constante e
igual al existente en el instante actual durante todo el horizonte, es decir, igual al valor
medido de la salida (ym ) menos el estimado por el modelo y(t | t)).
n
(t + k | t) = n
(t | t) = ym (t) y(t | t)
y por tanto el valor predicho de la salida sera:
y(t + k | t) =
k
X
i=1
gi 4 u(t + k i) +
N
X
gi 4 u(t + k i) + n
(t + k | t)
i=k+1
donde el primer termino contiene las acciones de control futuras (que seran calculadas),
el segundo los valores pasados de las acciones de control (conocidas) y el u
ltimo representa las perturbaciones. La funcion de coste puede considerar solo errores futuros o
incluir tambien el esfuerzo de control, en cuyo caso toma la forma generica (16.3).
Una de las caractersticas de este metodo que lo ha hecho muy popular en la industria es la inclusion de restricciones, que se traduce en inecuaciones de la forma
generica:
N
X
j
j
Cyi
y(t + k | t) + Cui
u(t + k i) + cj 0
j = 1 . . . Nc
i=1
En este caso la optimizacion debe ser numerica y se lleva a cabo en cada periodo de
muestreo, enviandose la se
nal u(t) y recalculando todo en el nuevo periodo de muestreo,
como en todos los metodos mpc. Los principales inconvenientes de este metodo son el
tama
no del modelo empleado y la imposibilidad de tratar procesos inestables.
16.5.0.2.
249
Este metodo se conoce tambien como Model Predictive Heuristic Control y el producto comercial se llama idcom (Identification-Command). Es muy similar al dmc con
la diferencia principal de usar un modelo de respuesta impulsional (16.1). Introduce el
concepto de trayectoria de referencia como un sistema de primer orden que evoluciona
desde la salida actual al setpoint seg
un una determinada constante de tiempo. La varianza del error entre esta trayectoria y la salida es lo que marca la minimizacion de la
funcion objetivo. Las perturbaciones se pueden tratar como en el metodo anterior o se
pueden estimar seg
un la siguiente expresion:
n
(t + k | t) =
n(t + k 1 | t) + (1 )(ym (t) y(t | t))
con n
(t | t) = 0. es un parametro ajustable (0 < 1) relacionado con el tiempo
de respuesta, el ancho de banda y la robustez del bucle cerrado. El metodo tambien
considera restricciones en los actuadores, en las variables internas o en salidas secundarias.
16.5.0.3.
Este controlador fue desarrollado por Richalet para procesos rapidos. Emplea un
modelo en el espacio de estados, por lo que permite el manejo de procesos inestables,
y tambien la extension al caso no lineal. Este esquema de control tiene dos caractersticas que lo distinguen del resto de controladores de la familia: el uso de puntos de
coincidencia y de funciones base.
El concepto de puntos de coincidencia (ver figura 16.6) se emplea para simplificar
los calculos considerando solo un subconjunto de puntos en el horizonte de prediccion
hj , j = 1, . . . , nH . La salida deseada y la predicha deben coincidir en dichos puntos, no
en todo el horizonte de prediccion.
La otra idea innovadora de este metodo es la parametrizacion de la se
nal de control como una combinacion lineal de ciertas funciones base, que son elegidas seg
un la
naturaleza del proceso y la referencia:
u(t + k) =
nB
X
i (t)Bi (k)
i=1
Normalmente estas funciones son de tipo polinomico: escalones (B1 (k) = 1), rampas
(B2 (k) = k) o parabolas (B3 (k) = k 2 ), ya que la mayora de referencias se pueden especificar como combinacion de estas funciones. Con esta estrategia, un perfil de entrada
250
Puntos de coincidencia
16.5.0.4.
(k)[w(t + k) P (z 1 )
y (t + k | t)]2
251
u(t) =
hk (k)[w(t + k) P (z 1 )
y (t + k | t)]
k=d
N
P
k=d
(k)h2k
16.5.0.5.
1<k N d
N
d
X
u2 (t + k)
k=0
252
16.5.0.6.
Este metodo propuesto por Clarke et al. emplea un modelo carima (Controlled
Auto-Regressive Integrated Moving Average) para la prediccion de la salida:
e(t)
4
donde la perturbacion viene dada por un ruido blanco coloreado por el polinomio
C(z 1 ). Como en la practica es difcil encontrar el verdadero valor de este polinomio,
se puede emplear como parametro de dise
no para rechazo de perturbaciones o mejora de
la robustez. La prediccion optima se lleva a cabo resolviendo una ecuacion diofantica,
lo cual puede hacerse eficazmente de forma recursiva.
Este algoritmo, al igual que otros que usan el modelo de funcion de transferencia,
se puede implementar facilmente en forma adaptativa usando un algoritmo de identificacion en lnea como los mnimos cuadrados recursivos.
gpc usa una funcion de coste cuadratica de la forma
J(N1 , N2 , Nu ) =
N2
X
j=N1
(j)[
y (t + j | t) w(t + j)] +
Nu
X
(j)[4u(t + j 1)]2
j=1
Captulo 17
Controladores predictivos
17.1.
El metodo Dmc se desarrollo a finales de los setenta por Cutler y Ramaker de Shell
Oil Co. y ha sido aceptado ampliamente en el mundo industrial, principalmente por
las industrias petroqumicas. Actualmente dmc es algo mas que un algoritmo y parte
de su exito se debe al hecho de que el producto comercial resuelve otros temas como
identificacion u optimizacion global de la planta. En esta seccion solo se analiza el
algoritmo standard sin abordar detalles tecnicos propios del producto de mercado que
no son de dominio p
ublico.
Pero a pesar de este exito en la practica, este metodo adolece quizas de la ausencia
de un analisis teorico mas completo que estudie la influencia de los parametros de
dise
no (horizontes, secuencias de ponderacion) sobre la estabilidad del bucle cerrado
as como de resultados de robustez.
17.1.1.
Predicci
on
254
gi 4 u(t i)
i=1
gi 4 u(t + k i) + n
(t + k | t) =
i=1
k
X
gi 4 u(t + k i) +
i=1
gi 4 u(t + k i) + n
(t + k | t)
i=k+1
k
X
gi 4 u(t + k i) +
i=1
X
i=1
gi 4 u(t i) =
gi 4 u(t + k i) + ym (t)
i=k+1
k
X
gi 4 u(t + k i) + f (t + k)
i=1
X
f (t + k) = ym (t) +
(gk+i gi ) 4 u(t i)
(17.1)
i=1
Notese que si el proceso no es estable, entonces no existe N y no se puede calcular f (t + k) (aunque existe una generalizacion en el caso de que la inestabilidad sea
producida por integradores puros).
255
g1
0
g
g1
2
..
..
.
.
G =
gm gm1
..
..
.
.
gp gp1
..
.
0
0
..
.
g1
..
..
.
.
gpm+1
(17.2)
17.1.2.
Perturbaciones medibles
256
donde y
d es la contribucion de las perturbaciones medibles a la salida, D es una matriz
similar a G que contiene los coeficientes de la respuesta del sistema a un escalon en la
perturbacion, d es el vector de incrementos en la perturbacion y fd es la parte de la
respuesta que no depende de la perturbacion.
En el caso mas general de perturbaciones medibles y no medibles, la respuesta libre
completa del sistema (la fraccion de la salida que no depende de la variable manipulada)
se puede considerar como la suma de cuatro efectos: la respuesta a la entrada u(t), a la
perturbacion medible d(t), a la perturbacion no medible y al estado actual del proceso:
f = fu + D d + fd + fn
Por tanto la prediccion se puede expresar en la forma general
y
= Gu + f
17.1.3.
Algoritmo de control
p
X
j=1
[
y (t + j | t) w(t + j)] +
m
X
[4u(t + j 1)]2
j=1
257
u
K
Proceso
f
Calculo
Resp. libre
Figura 17.1: Ley de control
(17.3)
Recuerdese que, como en todas las estrategias predictivas, solo se enva al proceso
el primer elemento del vector u (4u(t)). No es aconsejable implementar la secuencia
completa sobre los siguientes m intervalos, ya que al ser imposible estimar de forma
exacta las perturbaciones, no es posible anticiparse a las perturbaciones inevitables que
provocan que la salida real difiera de las predicciones que se emplean para calcular la
secuencia futura de acciones de control. Ademas, el setpoint puede cambiar durante los
proximos m intervalos.
Resulta interesante analizar en que consiste realmente la ley de control. Analizando la expresion 17.3 se observa que el primer elemento del vector u, que es la se
nal
que efectivamente se enva a la planta, es el producto de la primera fila de la matriz
(GT G+I)1 GT (llamemosle K) por la diferencia entre la trayectoria de referencia y la
respuesta libre, que es el error futuro si no hubiera incrementos en la se
nal de control.
Se puede decir por tanto que el incremento de la se
nal de control es proporcional (por
medio de K) a los errores futuros y por tanto habra cambios en la se
nal de control
siempre que el controlador detecte que va a haber una discrepancia en el futuro entre el
objetivo deseado y el comportamiento esperado del sistema. Esta idea queda reflejada
en la figura 17.1.
258
P. operacion
optimo
Zona segura 1
Punto operacion 1
Restriccion
zona
segura 2
Punto operacion 2
Restriccion
Figura 17.2: Punto de operacion optimo de un proceso tpico
17.1.3.1.
j
j
Cyi
y(t + k | t) + Cui
u(t + k i) + cj 0
j = 1 . . . Nc
i=1
que deben tenerse en cuenta para la minimizacion. Como se ha visto, las salidas se
pueden expresar en funcion del vector de incrementos de control a traves de la matriz
dinamica, por que las restricciones tanto en la entrada como en la salida se pueden
recoger en una desigualdad matricial de la forma Ru c, como se vera con mas
detalle en el tema dedicado a restricciones. Ahora la minimizacion es un problema de
Programacion Cuadratica qp, cuya solucion es numerica.
259
Todo lo relacionado con las restricciones sera abordado con mayor grado de detalle
en el tema dedicado a ello.
17.1.3.2.
Extensi
on al caso multivariable
G =
G11
G21
..
.
G12
G22
..
.
...
G1nu
G2nu
..
.
Cada submatriz Gij contiene los coeficientes de la respuesta ante escalon i-esima
correspondiente a la entrada j-esima. El proceso de minimizacion es analogo solo que la
ponderacion tanto de los errores como de los esfuerzos de control se realiza con matrices
de peso.
260
17.2.
El Control Predictivo Generalizado gpc fue propuesto por Clarke et al. en 1987
y se ha convertido en uno de los metodos mas populares en el ambito del Control
Predictivo tanto en el mundo industrial como en el academico. Se ha empleado con
exito en numerosas aplicaciones industriales, mostrando buenas prestaciones a la vez
que un cierto grado de robustez respecto a sobreparametrizacion o retardos mal conocidos. Puede resolver muchos problemas de control diferentes para un amplio campo de
procesos con un n
umero razonable de variables de dise
no, que son especificadas por el
operario dependiendo del conocimiento previo del proceso y de los objetivos de control.
La idea basica del gpc es calcular una secuencia de futuras acciones de control
de tal forma que minimice una funcion de coste multipaso. El ndice a minimizar es
una funcion cuadratica que mide por un lado la distancia entre la salida predicha del
sistema y una cierta trayectoria de referencia hasta el horizonte de prediccion, y por
otro el esfuerzo de control necesario para obtener dicha salida.
El Control Predictivo Generalizado tiene muchas ideas en com
un con otros controladores predictivos previamente mencionados ya que esta basado en las mismas
ideas pero posee a su vez algunas diferencias. Como se vera mas adelante, es capaz de
proporcionar una solucion explcita (en ausencia de restricciones), puede trabajar con
procesos inestables o de fase no mnima e incorpora el concepto de horizonte de control
as como la consideracion en la funcion de coste de ponderacion de los incrementos en
las acciones de control. Las diversas posibilidades disponibles para el gpc conducen a
una gran variedad de objetivos de control comparado con otras realizaciones, algunas
de las cuales pueden ser consideradas como subconjuntos o casos lmites del gpc.
17.2.1.
Formulaci
on del Control Predictivo Generalizado
La mayora de los procesos de una sola entrada y una sola salida (single-input singleoutput, siso), al ser considerados en torno a un determinado punto de trabajo y tras
ser linealizados, pueden ser descritos de la siguiente forma:
A(z 1 )y(t) = z d B(z 1 )u(t 1) + C(z 1 )e(t)
donde u(t) y y(t) son respectivamente la se
nal de control y la salida del proceso y e(t)
es un ruido blanco de media cero. A, B y C son los siguientes polinomios en el operador
de desplazamiento hacia atras z 1 :
A(z 1 ) = 1 + a1 z 1 + a2 z 2 + ... + ana z na
261
e(t)
4
con
4 = 1 z 1
(17.4)
N2
X
(j)[
y (t + j | t) w(t + j)]2 +
Nu
X
j=1
j=N1
donde y(t + j | t) es la prediccion optima j pasos hacia delante de la salida del proceso
con datos conocidos hasta el instante t, N1 y N2 son los horizontes mnimo y maximo
de coste, N u es el horizonte de control y (j) y (j) son las secuencias de ponderacion
mientras que w(t + j) es la futura trayectoria de referencia, que se puede calcular seg
un
se muestra en la figura 16.5. En muchas situaciones se considera (j) igual a 1 y (j)
constante.
El objetivo es pues el calculo de la futura secuencia de control u(t), u(t + 1),... de
tal manera que la salida futura del proceso y(t + j) permanezca proxima a w(t + j).
Esto se logra minimizando J(N1 , N2 , N u).
17.2.1.1.
Predicci
on
optima
(17.6)
262
263
Esta claro que solamente es necesario dar un paso mas en la division para obtener
los polinomios Ej+1 y Fj+1 . Al ser Ej+1 el nuevo cociente de la division, sera igual al
cociente que haba hasta el momento (Ej ) mas un nuevo termino, que sera el fj,0 pues
es monico. Por tanto:
el divisor (A)
Ej+1 (z 1 ) = Ej (z 1 ) + ej+1,j z j
Teniendo en cuenta que el nuevo resto sera el resto anterior menos el producto del
cociente por el divisor, los coeficientes del polinomio Fj+1 se pueden expresar como:
fj+1,i = fj,i+1 fj,0 a
i+1 i = 0 na
para i = 0 nb
264
(17.9)
Donde
y =
y(t + d + 1 | t)
y(t + d + 2 | t)
..
.
u=
y(t + d + N | t)
G =
g0
g1
..
.
0
g0
..
.
F(z ) =
4u(t + N 1)
0
0
..
.
z(Gd+1 (z 1 ) g0 )
z 2 (Gd+2 (z 1 ) g0 g1 z 1 )
..
.
gN 1 gN 2 ... g0
G (z ) =
...
...
..
.
4u(t)
4u(t + 1)
..
.
z N (Gd+N (z 1 ) g0 g1 z 1 gN 1 z (N 1) )
Fd+1 (z 1 )
Fd+2 (z 1 )
..
.
Fd+N (z 1 )
Al depender los u
ltimos terminos de la ecuacion (17.9) solo del pasado, pueden
agruparse en f, dando lugar a:
y = Gu + f
(17.10)
Observese que es la misma expresion que se obtuvo para el dmc, aunque en este
caso la respuesta libre es distinta.
17.2.1.2.
265
Obtenci
on de la ley de control
(17.11)
donde:
w=
(17.12)
(17.13)
donde:
H = 2(GT G + I)
b = 2(f w)T G
f0 = (f w)T (f w)
El mnimo de J, siempre que no existan restricciones en la se
nal de control, puede
ser calculado igualando a cero el gradiente de J, lo cual conduce a:
u = H1 bT
(17.14)
Debido al uso de la estrategia deslizante, solo se aplica realmente el primer elemento del
vector u, repitiendo de nuevo el mismo procedimiento al siguiente instante de muestreo.
La solucion propuesta involucra la inversion (o al menos la triangularizacion) de una
matriz de dimension N N , lo cual conlleva una gran carga de calculo. El concepto ya
usado en otros metodos de horizonte de control se emplea con la finalidad de reducir
la cantidad de calculo, asumiendo que las se
nales de control permaneceran en un valor
constante a partir del intervalo N u < N . Por tanto la dimension de la matriz que hay
que invertir queda reducida a N u N u, quedando la carga de calculo reducida (en el
caso lmite de N u = 1, se reduce al caso escalar) aunque restringiendo la optimalidad.
17.2.2.
Ejemplo de c
alculo
266
e(t)
4
F1 (z 1 ) = 1,8 0,8z 1
F2 = 2,44 1,44z 1
y(t + 1 | t)
0,4
0
0
4u(t)
y(t + 2 | t) = 1,32 0,4 0 4u(t + 1) +
y(t + 3 | t)
2,056 1,32 0,4
4u(t + 2)
267
0,133
0,286 0,147
(GT G + I)1 GT = 0,154 0,165 0,286
0,029 0,154 0,1334
Como solo se necesita el valor de 4u(t) para los calculos, solo se emplea realmente la
primera fila de la matriz, con lo que resulta la siguiente expresion para la ley de control:
4u(t) = 0,6042 4 u(t 1) 1,371y(t) + 0,805y(t 1) +
+ 0,133w(t + 1) + 0,286w(t + 2) + 0,147w(t + 3)
donde w(t + i) es la trayectoria de referencia que se puede considerar bien constante
e igual a la referencia actual o bien una suave aproximacion de primer orden a esta.
Entonces la se
nal de control resulta ser una funcion de la referencia deseada y de
entradas y salidas pasadas, dada por:
17.2.3.
Caso multivariable
Al igual que en el dmc todo lo visto para el caso de sistemas con una sola entrada
y una sola salida se puede extender al caso multivariable, aunque los calculos son mas
complejos.
En este caso el modelo carima para un sistema de m entradas y n salidas se puede
expresar como:
1
A(z 1 )y(t) = B(z 1 )u(t 1) + C(z 1 )e(t)
(17.15)
4
268
N2
X
j=N1
k
y (t + j | t) w(t +
j)k2R
N3
X
k 4 u(t + j 1)k2Q
j=1
Captulo 18
Otros aspectos del Control
Predictivo
18.1.
En la practica todos los procesos estan sujetos a restricciones. Los actuadores tienen
un campo limitado de accion impuesto por lmites fsicos (por ejemplo una valvula no
puede abrir mas de un 100 % o un calentador no puede aportar mas de su potencia
maxima. Tambien existen lmites de seguridad (por ejemplo presiones o temperaturas
maximas), requerimientos tecnologicos (por ejemplo mantener temperaturas en un rango dado), limitaciones de calidad del producto (no salirse de cierta zona) o normativa
medioambiental.
18.1.1.
270
P
Pmax
P1
P2
Q1 Q2
u(t+1)
u(t+1)
u max
u max
uc
u
u max
uc
u(t)
a)
271
u
u max
u(t)
b)
esta optimizando.
18.1.2.
En la actualidad el mpc es la u
nica metodologa capaz de incorporar las restricciones
de forma sistematica en la fase de dise
no del controlador, siendo esta caracterstica una
de las razones de su gran exito en la industria. Parece logico que al disponer de un
modelo dinamico del proceso se pueda conocer la evolucion futura de su salida y por
tanto se pueda saber si esta va a violar o no las restricciones y actuar en consecuencia.
Para formular el algoritmo mpc con restricciones hay que expresar estas en funcion
de la variable sobre la que se puede actuar, es decir, en funcion de u. Las restricciones
en la entrada estan ya expresadas en funcion de u y para las restricciones en la salida
se hace uso de las ecuaciones de prediccion que expresan el valor futuro de las salidas
en funcion de las se
nales de control futuras y valores conocidos en el instante t.
Cualquier controlador predictivo calcula la prediccion como:
y = Gu + f
por lo que tanto entradas como salidas se pueden expresar en funcion del vector de
incrementos de la se
nal de control.
272
U
u(t)
U t
u u(t) u(t 1) u t
y
y(t)
y t
R=
IN N
IN N
T
T
G
G
c=
lu
l u
l U lu(t 1)
l U + lu(t 1)
l yf
l y + f
273
18.1.3.
Resoluci
on del problema
274
18.1.4.
Gesti
on de restricciones
275
Lmites fsicos
Restricciones reales
Lmites de operacin
18.1.4.1.
T
ecnicas de b
usqueda de soluciones factibles
276
2. Eliminacion de restricciones.
3. Relajacion de restricciones.
4. Otras tecnicas.
1. Desconexi
on del controlador
La forma mas sencilla de resolver de este tipo de problemas es pasar el controlador
a posicion manual cuando aparecen las incompatibilidades de restricciones y volver a
operacion automatica cuando se recupera la admisibilidad de la solucion.
Este metodo, como se puede comprender tiene serias desventajas. Normalmente,
cuando aparecen problemas de incompatibilidad de restricciones es porque el sistema
en bucle cerrado se encuentra en un estado crtico donde normalmente el operador
tendra muy poca experiencia en la operacion. Adicionalmente, si las restricciones estan
relacionadas con aspectos de seguridad o economicos, las decisiones llevadas a cabo
cuando aparecen problematicas de compatibilidad de restricciones suelen ser crticas
dado que en estos casos alguno de los objetivos del control no puede ser satisfecho.
El metodo suele ser utilizado cuando los problemas de incompatibilidad de restricciones no son frecuentes.
2. Eliminaci
on de restricciones
La factibilidad se analiza en cada periodo de muestreo, por lo que la eliminacion
de restricciones se realiza de forma temporal. Periodicamente se chequea la factibilidad
para poder reinsertar restricciones eliminadas.
La eliminacion de un grupo de restricciones ha de realizarse en aquellos casos en que
el conjunto completo de restricciones que se imponen sobre el sistema sea incompatible.
Cada vez que existe un problema de incompatibilidad de restricciones, se forma un
conjunto de restricciones no admisibles que no se tienen en cuenta en el proceso de
optimizacion. Se pueden distinguir en la metodologa de eliminacion de restricciones
varios tipos.
Eliminaci
on indiscriminada Con esta estrategia todas las restricciones se eliminan cada vez que aparezcan problemas de existencia de solucion factible, quedando
la optimizacion de un problema sin restricciones. No es un metodo muy optimo para
277
Eliminaci
on jer
arquica En este caso solo se eliminan las restricciones que provocan
problemas de incompatibilidad. En este metodo se asigna en la etapa de dise
no una
prioridad a cada restriccion, que da un grado de importancia relativa de dicha restriccion frente a las otras. Esta prioridad se usara para clasificar las restricciones de una
forma jerarquica (se asigna un n
umero que indica su posicion en la jerarqua). De este
modo, cada vez que haya problemas de factibilidad o existencia de solucion el gestor
de restricciones va eliminando por orden las restricciones menos prioritarias hasta que
se restablece la factibilidad de la solucion, que se chequea cada periodo de muestreo
para reinsertar restricciones que hubieran sido temporalmente eliminadas.
En este sentido, a la hora de eliminar restricciones se pueden establecer diferentes
tipos de reglas para establecer el n
umero de restricciones que se eliminan, si conviene
eliminar mas restricciones a costa de no eliminar una con prioridad superior, etc.
3. Relajaci
on de restricciones
Otro metodo para tener en cuenta el problema de existencia de solucion es la relajacion de las restricciones. Se puede hacer una relajacion de los lmites de forma
temporal o convertir restricciones duras (Ru c), cambiandolas en restricciones blandas (Ru c + , con 0) para asegurar la existencia de solucion, a
nadiendo un
termino T T a la funcion de coste de forma que se penalice la violacion de la restriccion y obtener un mejor comportamiento del sistema controlado. A largo plazo, el
termino de penalizacion en la funcion objetivo llevara las variables auxiliares a cero.
4. Otras t
ecnicas
Existen tecnicas que se basan en la manipulacion del horizonte mnimo de las restricciones. Algunos controladores industriales como el qdmc usan el concepto de constraint
window. La constraint window comienza en alg
un punto en el futuro y contin
ua hasta
el estado estacionario. Si existe dinamica del tipo de fase no mnima, se pueden mejorar
las prestaciones desplazando la ventana hacia el futuro, lo que equivale a ignorar las
restricciones duras en la salida durante la fase inicial de la respuesta.
278