Documentos de Académico
Documentos de Profesional
Documentos de Cultura
APUNTES DE INGENIER IA DE CONTROLapuntesIC4 PDF
APUNTES DE INGENIER IA DE CONTROLapuntesIC4 PDF
ANALISIS Y CONTROL DE SISTEMAS EN ESPACIO DE ESTADO
DE SISTEMAS
IDENTIFICACION
CONTROL ADAPTATIVO
CONTROL PREDICTIVO
Carlos Bord
ons Alba
Rev. 5/05/2005
Indice general
Lista de figuras IX
i
ii INDICE GENERAL
1.6.1. Controlabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.3. Observabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.9.2.1. Calculo de Ke . . . . . . . . . . . . . . . . . . . . . . . 32
2.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3. Introducci
on a la identificaci
on de sistemas 51
3.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4. Identificaci
on por mnimos cuadrados 63
5. Introducci
on al control adaptativo 81
10.1.4.1. Tecnicas de b
usqueda de soluciones factibles . . . . . . 157
viii INDICE GENERAL
Indice de figuras
3.3. Ejemplo de se
nal de entrada del tipo PRBSS. . . . . . . . . . . . . . . 59
ix
x INDICE DE FIGURAS
4.3. Misma situacion que en la figura 4.2 pero con una se nal de entrada
senoidal de frecuencia = 1 rad s . . . . . . . . . . . . . . . . . . .
1
75
7.1. PID industrial moderno con funcion de autoajuste (ABB modelo ECA). 107
7.5. Curva de pH para una solucion de HCl 0.001 M y NaOH 0.001 M. . . 112
10.2. Restricciones en la se
nal de control . . . . . . . . . . . . . . . . . . . . 153
1
DE LA REPRESENTACION
2OBTENCION DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS
x(k+1) x(k) +
u(k) +
H +
z-1 C +
y(k)+a1 y(k1)+a2 y(k2)+ +an y(kn) = b0 u(k)+b1 u(k1)+ +bn u(kn) (1.2)
Es bien conocido de anteriores temas de la asignatura que este sistema puede ser
descrito por la siguiente funcion de transferencia:
Y (z) b0 + b1 z 1 + b2 z 2 + + bn z n
G(z) = = (1.3)
U (z) 1 + a1 z 1 + a2 z 2 + + an z n
A continuacion se expondran dos de los metodos disponibles para obtener la repre-
sentacion en espacio de estados del sistema descrito por (1.3).
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 3
1.2.1. M
etodo de programaci
on directa
con:
(b1 a1 b0 )z 1 + (b2 a2 b0 )z 2 + + (bn an b0 )z n
Y (z) = (1.7)
1 + a1 z 1 + a2 z 2 + + an z n
Por otra parte, teniendo en cuenta la expresion de Y (z) se puede definir un Q(z) que
cumple que:
Y (z) U (z)
Q(z) = = (1.8)
(b1 a1 b0 )z + + (bn an b0 )z
1 n 1 + a1 z + + an z n
1
De ah se obtiene que:
Por otra parte, podemos reescribir tambien (1.10) teniendo en cuenta las igualdades
de (1.11) de manera que:
Y (z) = (b1 a1 b0 )Xn (z) + (b2 a2 b0 )Xn1 (z) + + (bn an b0 )X1 (z) (1.16)
Esto se puede llevar a la ecuacion (1.6) de manera que antitransformando se obtiene:
y(k) = (bn an b0 )x1 (k) + (bn1 an1 b0 )x2 (k) + + (b1 a1 b0 )xn (k) + b0 u(k) (1.17)
lo cual se puede escribir como:
x1 (k)
x2 (k)
..
y(k) = bn an b0 bn1 an1 b0 b 1 a 1 b0 . + b0 u(k) (1.18)
xn1 (k)
xn (k)
Las ecuaciones (1.15) y (1.18) forman una representacion en espacio de estados del
sistema descrito por la funcion de transferencia (1.3) que se denomina forma canonica
controlable.
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 5
1.2.2. M
etodo de programaci
on anidada
Notese que segun esta definicion de las variables de estado la expresion (1.20) se puede
reescribir en forma condensada como:
Antitransformando lo anterior:
1.3. La representaci
on en espacio de estados de un
sistema no es u
nica
1.4. Resoluci
on de las ecuaciones del espacio de es-
tados
Iterando las ecuaciones del estado para un sistema LTI como (1.1) a partir de k = 0:
1
Observese que en la ecuacion (1.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.
8 DE LAS ECUACIONES DEL ESPACIO DE ESTADOS
RESOLUCION
Observese que x(k) depende del estado inicial y de los valores de la entrada. Por otra
parte, la salida se puede expresar como:
k1
X
k
y(k) = CG x(0) + C Gkj1 Hu(j) + Du(k) (1.30)
j=0
Considerese la ecuacion:
x(k + 1) = Gx(k) (1.31)
x(k) = (k)x(0)
con:
(k + 1) = G(k) (0) = I
es decir:
(k) = Gk
k1
X
x(k) = (k)x(0) + (k j 1)Hu(j) (1.32)
j=0
k1
X
= (k)x(0) + (j)Hu(k j 1)
j=0
lo que lleva a:
k1
X
y(k) = C(k)x(0) + C (j)Hu(k j 1) + Du(k) (1.33)
j=0
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 9
1.4.3. M
etodo basado en la transformada Z
y antitransformando:
x(k) = Z1 (zI G)1 z x(0) + Z1 (zI G)1 HU (z)
k1
X
k
G =Z 1 1
(zI G) z y Gkj1 Hu(j) = Z1 (zI G)1 HU (z) (1.34)
j=0
Ejemplo 1.1
y de ahi, antitransformando:
176
(0,2)k + 22
9
(0,8)k + 25
18
x(k) = 3,4 17,6 7
6
(0,2)k 9 (0,8)k + 18
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
1
Adj(zI G) = Iz n1 + H1 z n2 + H2 z n3 + + Hn1
H1 = G + a 1 I
H2 = GH1 + a2 I
..
.
Hn1 = GHn1 + an1 I
Hn = GHn1 + an I = 0
a1 = traza(G)
1
a2 = traza(GH1 )
2
1
a3 = traza(GH2 )
3
..
.
1
an = traza(GHn1 )
n
Ejemplo 1.2
|zI G| = z 2 + a1 z + a2
Adj(zI G) = Iz + H1
donde:
a1 = traza(G)
H1 = G + a 1 I
a2 = 12 traza(GH1 )
La traza de G es igual a 1, luego a1 = 1 y de ah se obtiene que H1 = G + I, con lo
que se puede calcular:
1 0 1 1 1
a2 = traza = 0,16
2 0,16 1 0,16 0
12 DE LAS ECUACIONES DE ESTADO CONTINUAS
DISCRETIZACION
Finalmente:
z+1 1
0,16 z
(zI G)1 =
(z + 0,2)(z + 0,8)
que evidentemente es el mismo resultado obtenido en el ejemplo 1.1.
1.5. Discretizaci
on de las ecuaciones de estado con-
tinuas
x = Ax + Bu
(1.37)
y = Cx + Du
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 t
At At
x(t) = e x(0) + e eA Bu( )d (1.39)
0
Se tiene que:
Z (k+1)T
A(k+1)T A(k+1)T
x((k + 1)T ) = e x(0) + e eA Bu( )d (1.41)
0
Z kT
AkT AkT
x(kT ) = e x(0) + e eA Bu( )d (1.42)
0
donde = T . Sea:
G(T ) = eAT
R T A (1.45)
H(T ) = 0
e d B
entonces la ecuacion (1.44) queda:
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
Existen diferentes metodos para calcular eAT . Quizas el mas sencillo de aplicar
cuando se trata de calcular la exponencial con papel y lapiz sea utilizar la equivalencia:
eAt = L1 (sI A)1 (1.48)
14 DE LAS ECUACIONES DE ESTADO CONTINUAS
DISCRETIZACION
Ejemplo 1.3
Ejemplo 1.4
Luego:
1eaT
x(k + 1) = eaT x(k) + a
u(k)
y(k) = x(k)
1.6.1. Controlabilidad
Lema 1.1 Dado un sistema LTI de orden n representado por (1.49), es condicion
necesaria y suficiente para que el sistema sea completamente controlable que el rango
de la matriz de controlabilidad (1.51) sea igual a n.
Comentario 1.1 El sistema que cumpla la condicion establecida en el lema 1.1 po-
dra alcanzar cualquier estado como maximo en n periodos de muestreo, pero solo si no
existen restricciones sobre la se
nal de control. En caso contrario, se tardara mas.
donde m es el n
umero de salidas. Por otra parte, si la ecuacion de la salida es:
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.
1.6.3. Observabilidad
y de ah
y(kT ) = CGk x(0)
se pueden determinar
x1 (0), x2 (0), , xn (0)
y(0) = Cx(0)
y(T ) = CGx(0)
..
.
y((n 1)T ) = CGn1 x(0)
Propiedad 1.1 Sea un sistema LTI dado en la forma usual (1.1), cuya matriz de
controlabilidad es M y la de observabilidad es N . Si se define una transformacion
como (1.26) con:
G = P 1 GP
H = P 1 H
C = CP
siendo P una matriz invertible, entonces las matrices de controlabilidad y observabilidad
del sistema equivalente tienen el mismo rango que M y N .
1.7. Transformaci
on de un sistema en formas can
onicas
1.7.1. Obtenci
on de la forma can
onica controlable
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
x(k) = T x(k)
Entonces el sistema:
x(k) + Hu(k)
x(k + 1) = G
(1.61)
y(k) = Cx(k) + Du(k)
= T 1 GT , H
con G = T 1 H, C = CT , D
= D esta en forma canonica controlable.
1.7.2. Obtenci
on de la forma can
onica observable
Q = (W N )1
con h i
.. . .
N= C
. G C .. .. (G )n1 C
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.
z-1
+ x(k+1) x(k)
H
+
u(k)
-K
Figura 1.2: Diagrama de bloques de un sistema controlado por una realimentacion del vector de
estados.
Lema 1.2 Se demuestra que la condicion necesaria y suficiente para que por medio de
una realimentacion del vector de estados puedan escogerse los polos de bucle cerrado
(es decir, los autovalores de (G HK)) es que el sistema en bucle abierto sea de estado
completamente controlable. Si esta condicion no se cumple, no se podran elegir todos
los polos de bucle cerrado.
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 a continuacion:
= KT =
K n n1 1
Entonces:
0 0 0
0 0 0 0
0
.. .. ..
K
H =
..
n n1 1 =
. . .
.
0
0 0
1
n n1 1
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 23
(z 1 )(z 2 ) (z n ) = z n + 1 z n1 + 2 z n2 + + n1 + n = 0
1 = a 1 + 1
2 = a 2 + 2
..
.
n = a n + n
1
K = KT
= h n n1 1 T 1 i (1.62)
= .
. .
. .
.
n an .n1 an1 . .1 a1 T
1
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 .
DE POLOS MEDIANTE REALIMENTACION
24 COLOCACION DEL VECTOR DE ESTADOS
donde:
(G) = Gn + 1 Gn1 + + n1 G + n I
Los coeficientes i se calcularan como en el apartado anterior.
|zI G + HK| = 0
z n + 1 z n1 + 2 z n2 + + n1 + n = 0
Este es un tipo de control que resulta ser un caso particular del control por colo-
cacion de polos.
Definicion 1.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 con-
forme a lo que se establece en el siguiente lema.
Lema 1.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.
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 25
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 habit-
ualmente 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 diseno
que se ha de elegir es el tiempo de muestreo. Si este es muy pequeno, 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 1.5
Sea un sistema
x(k + 1) = Gx(k) + Hu(k)
con
0 1 0
G=
0,16 1 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:
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.
DE POLOS MEDIANTE REALIMENTACION
26 COLOCACION DEL VECTOR DE ESTADOS
Metodo 1
h i
.
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
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
1
0 1 0,34 2
K = 0 1
1 1 0,32 2,34
= 0,34 2
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
1 + k2 = 1
k1 + 0,16 = 0,5
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 27
Ejemplo 1.6
Calcular para el mismo sistema del ejemplo anterior la matriz K que conlleva un
control dead-beat, y comprobarlo calculando la evolucion del sistema a partir de un
estado inicial arbitrario.
En este caso:
K= a2 a1 T 1 = 0,16 1
Vamos a verificar que el control es dead-beat. Para ello, obtenemos la ecuacion de
estado del sistema en bucle cerrado:
x1 (k + 1) 0 1 x1 (k) 0 x1 (k)
= + 0,16 1
x2 (k + 1) 0,16 1 x (k) 1 x2 (k)
2
0 1 x1 (k)
=
0 0 x2 (k)
luego este control lleva al estado a cero en 2 pasos y es efectivamente un control dead-
beat.
En el control por colocacion de polos se asume que el estado se puede medir direc-
tamente. En ocasiones, sin embargo, puede que esta suposicion no se cumpla y todas
28 OBSERVADORES DEL ESTADO
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 observacion.
1. Observador del estado completo. Es aquel que estima todas las variables de esta-
do.
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.
Lema 1.4 Condicion necesaria y suficiente para la observacion del estado. Dado un
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.
Si se dispone de una aproximacion del estado en k, que denotaremos x(k), esta evolu-
cionara seg
un la dinamica del sistema
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 + 1) = Ge(k)
Por tanto, si el sistema es estable, la propia dinamica del sistema hace que la aproxi-
macion 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 sis-
tema, que siempre sera accesible. Esto puede ser aprovechado para mejorar el rendimien-
to 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))
Sea un sistema LTI observable (1.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)
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).
Finalmente, es evidente que interesa que la estimacion del estado converja rapida-
mente 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 .
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 31
u(k)
H
+
x(k+1)
+
z-1 x(k)
C +
y(k)
G
u(k)
-K
x(k)
u(k) y(k)
OBSERVADOR
Figura 1.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)
+ x(k+1) x(k) y(k)
+ + -
u(k)
H +
z-1 C
+ y(k)
Ke
1.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
1.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
n a n
n1 an1
Ke = (W N )1 .. (1.67)
.
1 a 1
donde
an1 an2 a1 1
an2 an3 1 0
h i
.. .. .. .. . . .
C .. G C .. .. (G )n1 C
W = . . . . N=
a1 1 0 0
1 0 0 0
es decir, la misma matriz W empleada en la colocacion de polos y la matriz de ob-
servabilidad3 . 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) .. ..
. .
CGn1 1
donde
(G) = Gn + 1 Gn1 + + n1 G + n I = 0
Ejemplo 1.7
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 C .. G C = rango
0 1
=2
z 2 = 0 1 = 2 = 0
A continuacion se calculara Ke :
1 1
Ke = (W N )
2
con
1 1 a1 1 2 1
N= W = =
0 1 1 0 1 0
resultando
2
Ke =
1
C
alculo de Ke mediante la f
ormula de Ackermann
Estudio de la evoluci
on del error de estimaci
on
Vamos a comprobar que el error cae a cero segun una respuesta dead-beat. Sea
a1 a2
x(0) = x(0) =
b1 b2
entonces
a1 a 2 a
e(0) = x(0) x(0) = =
b1 b 2 b
ademas se tiene que
1 1
G Ke C =
1 1
el error evoluciona, por tanto, segun
e1 (k + 1) 1 1 e1 (k)
=
e2 (k + 1) 1 1 e2 (k)
por lo que se calcula la evolucion de este error:
e1 (1) 1 1 a
=
e2 (1) 1 1 b
a + b
=
a + b
e1 (2) 1 1 a + b
=
e2 (2) 1 1 a + b
0
=
0
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
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.
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.
e(k + 1) = (G Ke C)e(k)
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.
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
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 37
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 cono-
cidos mientras que el termino que depende de xb (k) es desconocido. Esta ecuacion la
podemos reescribir como
El dise
no del observador de orden mnimo se realiza tomando como referencia el del
observador de orden completo, cuya ecuacion de estados 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 (1.69).
En el caso del observador de orden mnimo, por tanto, se considera como ecuacion de
salida la ecuacion (1.69).
38 OBSERVADORES DEL ESTADO
x(k + 1) = (G Ke C)
x(k) + Hu(k) + Ke y(k)
Comparando las ecuaciones de estado y salida del observador de orden completo y las
del observador de orden mnimo, se establecen las siguientes analogas:
Observador de orden completo Observador de orden mnimo
x(k) xb (k)
G Gbb
Hu(k) Gba xa (k) + Hb u(k)
y(k) xa (k + 1) Gaa xa (k) Ha u(k)
C Gab
Ke Rnm Ke R(nm)m
y(k) = xa (k)
xb (k + 1) = (Gbb Ke Gab )
xb (k) + Ke y(k + 1) + (Gba Ke Gaa )y(k) + (Hb Ke Ha )u(k)
que sera la ecuacion del observador de orden mnimo. Los polos del observador de
orden mnimo seran los autovalores de (Gbb Ke Gab ). Observese, sin embargo, que en
esta ecuacion aparece un termino que multiplica a y(k + 1). Como es logico el valor
de la salida en k + 1 no esta disponible en el instante k, por lo que esta ecuacion ha
de ser modificada. Se puede demostrar (no se hara aqu), que esta ecuacion se puede
reescribir como:
y como en el caso del observador de orden completo, Ke se puede elegir para colocar
los polos del observador donde se desee mediante los metodos indicados en la seccion
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 39
1.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 1
donde
(Gbb ) = Gn1 n2
bb + 1 Gbb + + n1 I
Ejemplo 1.8
1. Dise
nar un controlador que coloque los polos de bucle cerrado en z = 0,6 j0,4.
En cuanto al observador de orden mnimo, este estimara una sola variable, por lo
que es de orden 1. La particion de la ecuacion de estado en este caso sera:
. .
Gaa .. Gab 1 .. 0,2
Ha 0,02
... = .
..
=
.. . Hb 0,2
Gba . Gbb 0 .. 1
u(k) = K x(k)
= 8y(k) 3,2
x2 (k)
= 8y(k) 3,2(5y(k) + (k))
= 24y(k) 3,2
(k)
1.10. Control o
ptimo 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 opti-
miza una cierta medida del rendimiento del controlador. Se parte de un sistema descrito
por
x(k + 1) = Gx(k) + Hu(k)
u(k) = Kx(k)
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 expen-
sas 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 man-
teniendo 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 mode-
los 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 (1.73) se define una matriz P
que satisface la siguiente ecuacion de Riccatti:
con A = I, B = H y C = R1 H P .
4
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.
CAPITULO 1. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS 43
1.10.1. Soluci
on de la ecuaci
on de Riccatti
Pi+1 = Q + G Pi G G Pi H (R + H Pi H)1 H Pi G
La condicion de parada del bucle o proceso iterativo sera que Pi+1 Pi 0, esto es,
que la diferencia entre Pi+1 y Pi sea una matriz cuyos elementos esten todos cerca del
cero.
Sea un sistema:
x(k + 1) = Gx(k) + Hu(k) + (k)
y(k) = Cx(k) + (k)
donde (k) y (k) son variables aleatorios que actuan como ruidos aditivos. Se de-
muestra que se puede obtener una estimacion optima del vector de estados mediante
el siguiente esquema:
x(k + 1) = G
x(k) + Hu(k) + Ke (k) (y(k) C x(k))
Ke (k) = GPk C (R + CPk C )1 (1.75)
Pk+1 = Q + (G Ke (k)C) Pk G
donde
R = E {(k) (k)}
Q = E {(k) (k)}
P0 = E {(0) (0)}
44 FILTRO DE KALMAN
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) C x(k))
Ke = GP C (R + CP C )1 (1.76)
P = Q + GP G GP C (R + CP C )1 CP G
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 2
Modelos de procesos y
perturbaciones
2.1. Introducci
on
Pulsos.
Escalones.
Rampas.
Sinusoides.
Todos estos modelos tienen en com un que son absolutamente predecibles en su evolu-
cion en funcion de las condiciones iniciales. Es decir, en cuanto la perturbacion aparece
45
46 PERTURBACIONES DETERMINISTAS A TROZOS
Como fuente de perturbaciones con una mayor variabilidad que los modelos clasicos
antes comentados, se pueden considerar las perturbaciones deterministas a trozos. Sur-
gen de la necesidad de estudiar el efecto de perturbaciones mas realistas en sistemas
de control que se basan en algun 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.
w=w0
t0 t1 t2 t3 t4 ......
Definici
on 2.1 Se denomina proceso estocastico determinista, a aquel cuya evolucion
puede ser predicha exactamente con un predictor lineal 2 en base a medidas pasadas.
En estos procesos, el caracter estocastico solo se manifiesta en la aleatoriedad de las
condiciones iniciales. Para aplicaciones basadas en prediccion no son muy interesantes.
2
Es decir, haciendo evolucionar hacia delante un modelo lineal.
48 MODELOS DE PROCESOS CON RUIDOS
Definici on 2.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
En esta seccion veremos como se pueden generar diversos tipos de procesos es-
tocasticos, 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.
v(k)
y(k)
u(k)
Modelo de Media Movil (MA : Moving Average). Es el caso mas sencillo y viene
descrito por
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). Tam-
bien llamado modelo CARMA (Controlled ARMA). Viene descrito por
Cuando en los modelos anteriores el polinomio que convoluciona con la se nal v(k) es
distinto de la unidad se habla de ruido coloreado, y en caso contrario, de ruido blanco.
Captulo 3
Introducci
on a la identificaci
on de
sistemas
3.1. Introducci
on
51
52
IDEAS BASICAS DE SISTEMAS
SOBRE IDENTIFICACION
3.2. Ideas b
asicas sobre identificaci
on de sistemas
A continuacion, se iran desglosando las principales ideas de cada uno de estos aspectos.
3.2.1. Planificaci
on de los experimentos
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
CAPITULO 3. INTRODUCCION
A LA IDENTIFICACION
DE SISTEMAS 53
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.
3.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 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.
3.2.3. Elecci
on de un criterio
3.2.4. Estimaci
on de los par
ametros
3.2.4.1. Identificaci
on en lnea
u(k) y(k)
PLANTA
IDENTIFICACIN
MODELO
ACTUALIZADO
SUPERVISIN
MODELO
CORREGIDO
3.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.
3.2.5. Validaci
on del modelo
La idea tras el concepto de validacion del modelo es estimar distintos tipos de modelos
(por ejemplo con distintos ordenes) y quedarse con el que mejor ajusta (es decir, el que
de menor FCE ). Mediante esta tecnica de validacion cruzada, lo que se trata de ver es
si el modelo es capaz de reproducir los datos de salida para entradas que no se han
empleado en la estimacion.
Como se ha comentado anteriormente, el criterio VCP no tiene por que ser el mismo
que el VCE . Por ejemplo, se puede usar como criterio para validacion el conocido criterio
de Akaike o criterio AIC (Akaikes Information Criterion), el cual asumiendo que las
perturbaciones siguen una distribucion gaussiana se calcula mediante la formula
N
2dimension() 1 X 2
VCP (, CP) = 1+ e (t, )
N N t=1
donde e(t, ) = y(t) y(t, ) es el error de estimacion para los datos obtenidos en el
instante t.
INICIO
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
58 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 manipu-
lar 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 4. 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)).
3.3.1. Excitaci
on persistente
N
!2
1 X
lm A(z 1 )u(k) >0
N N 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:
Esto quiere decir que el ruido blanco sera una senal de entrada muy buena para identi-
ficar sistemas. En la practica, sin embargo, es muy difcil obtener una senal de entrada
que se comporte como un ruido blanco ideal, porque es muy difcil obtener una se-
cuencia de valores puramente aleatorios. Es posible obtener sin embargo, secuencias de
valores seudoaleatorios, por lo que en la practica se recurre a secuencias seudoaleatorias
de escalores binarios (PRBSS: Pseudo Random Binary Step Sequence). En la figura
3.3 se muestra una de esas secuencias. Notese que los escalones no tienen por que tener
amplitud unitaria, el concepto de binario se refiere solamente a dos niveles de entrada
distintos. Por otra parte, la aleatoriedad esta en la duracion de los escalones y en el
momento de aparicion de los mismos.
6.5
5.5
5
voltaje
4.5
3.5
3
0 20 40 60 80 100 120 140 160 180 200
intervalos de muestreo
convergencia tiene a su vez una serie de requisitos o condiciones que se pueden resumir
en:
Si el sistema es de orden n, la se
nal de entrada debe ser persistentemente excita-
dora de orden n o mayor.
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.
3.3.2.1. Identificaci
on en bucle cerrado
donde d es el retraso del proceso, y los grados de los polinomios A(z 1 ), B(z 1 ), C(z 1 )
son ma , mb , mc respectivamente. Supongase ademas que el sistema esta gobernado por
un regulador que toma la expresion:
Q(z 1 )
u(t) = y(t)
P (z 1 )
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 3.1
G(z 1 )
u(k) = y(k)
zB(z 1 )F (z 1 )
max(n + d 1, n 1 + d) n
Esto implica que para que el sistema sea identificable en bucle cerrado, d 1. Otra
solucion sera fijar un parametro.
62 ALGUNAS PROPIEDADES
Acondicionamiento de se
nales: eliminacion de los valores de continua y escalado
de las variables.
Supervisar que la evolucion de los parametros este dentro de unos rangos deter-
minados.
Identificaci
on por mnimos
cuadrados
4.1. El m
etodo de los mnimos cuadrados
Este metodo permite la identificacion en tiempo real de modelos con el u nico req-
uisito de que estos sean lineales en los parametros. Esto incluye, por tanto, a modelos
lineales y no lineales que sean lineales en los parametros. El mayor interes practico re-
side, sin embargo, en la identificacion de los primeros, dado que son los mas utilizados
en control.
Notese que este modelo es determinista en el sentido de que no considera ruidos aleato-
rios como en los modelos vistos en el tema 2. Es inmediato comprobar que este modelo
corresponde a la siguiente funcion de transferencia:
b1 z 1 + + bn z n
G(z 1 ) =
1 + a1 z 1 + + an z n
El modelo (4.1) se puede reescribir como:
63
64
EL METODO DE LOS MINIMOS CUADRADOS
donde el vector
m(k) = y(k 1) y(k n) u(k 1) u(k n) (4.3)
es llamado regresor y T
= a1 a n b 1 b n
el error de
es el vector de parametros. 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 (4.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
(4.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 .
J() = (Y (N ) M (N ))T (Y (N ) M (N ))
El mnimo valor de J() se dara en el valor del vector de parametros que cumpla que
dJ()
=0
d
es decir,
2(M (N ) Y (N ))T M (N ) = 0
de donde se obtiene que el valor del vector de parametros que hace mnimo el ndice
de bondad de ajuste es
= [M T (N )M (N )]1 M T (N )Y (N ) (4.4)
y ese es por tanto el valor del vector de parametros del modelo identificado.
La expresion (4.4) implica la inversion de una matriz que puede tener unas dimen-
siones apreciables, tanto mas si se tiene en cuenta que para identificar correctamente
66 EN LINEA
ALGORITMO RECURSIVO PARA IDENTIFICACION
un sistema se deben tener suficientes medidas para eliminar el efecto de ruidos y per-
turbaciones 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.
donde " #1
k
X
P (k) = [M T (k)M (k)]1 = mT (i)m(i)
i=n
P 1 (k 1) = P 1 (k) mT (k)m(k)
donde K(k) = P (k)mT (k). Por tanto (k) se puede expresar en forma recursiva, es
decir en funcion del valor del estimador en el instante anterior mas un termino corrector
que consiste en el error de prediccion en el instante actual cometido por el estimador
calculado en el instante anterior multiplicado por una ganancia de adaptacion K(k).
Esta formula da lugar al llamado algoritmo de minimos cuadrados recursivos, que
consiste en
2. En cada instante k
P (k 1)mT (k)m(k)P (k 1)
P (k) = P (k 1)
1 + m(k)P (k 1)mT (k)
e) Calcular (k):
= (k
(k) 1) + K(k)[y(k) m(k)(k
1)]
+
+-, .)/
FORMAR
REGRESOR
-
ALGORITMO
" # !
+
Z-1
RECURSIVO
4.3. Interpretaci
on estadstica
Un hecho a tener en cuenta es que al ser v(k) una variable aleatoria, y(k) es a su
vez una variable aleatoria al ser el ruido aditivo. Esto implica a su vez que el valor
del vector de parametros estimado tambien es una variable aleatoria que se puede
estudiar desde un punto de vista estadstico. Por responder el proceso exactamente a
uno de los dos tipos de modelos considerados existe un valor del vector de parametros
que consideraremos como verdadero. Es decir
es decir como la diferencia entre el valor esperado de (k) y el valor ((verdadero)) . Se
comprueba que
= E [M T (k)M (k)]1 M T (k)V (k) (4.7)
donde V (K) es una matriz donde la fila correspondiente al instante k esta formada por
los valores v(k), ,v(k cn ). Notese ademas que la fila de M (k) correspondiente al
instante k contiene los valores de la salida y de la entrada en los instantes k 1, ,k n
pero no los del instante k (ver expresion (4.3)).
Considerese el caso del modelo ARMAX. Claramente existe relacion entre los com-
ponentes de la matriz M (k) y V (k). En efecto, la matriz de regresores esta formada por
valores de la salida y la entrada. Los primeros dependen de los valores de la se nal de
ruido y los segundos son deterministas, por lo que existe una correlacion entre la matriz
M (k) y V (K). Por lo tanto tambien existe esa correlacion entre [M T (k)M (k)]1 M T (k)
y V (k). Eso implica que seg un la expresion (4.7) es distinto de cero. Por tanto no
esta garantizada la convergencia del vector de parametros estimados con el ((real)).
CAPITULO 4. IDENTIFICACION
POR MINIMOS CUADRADOS 69
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 ultimo caso cuando el metodo de mnimos cuadrados produce
estimaciones consistentes.
Otra propiedad que resulta interesante conocer es la varianza del estimador. Clara-
mente 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 vec-
tor de parametros estimados estara con seguridad cerca del vector real. La varianza del
estimador se puede calcular como
n o
varianza((k)) = E ((k) )T ((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 tamano 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 numero muy alto (por ejemplo 10000). Este n umero sera mas pequeno
si se sabe que el valor inicial del vector de parametros esta cerca de .
Por otra parte, es evidente que a medida que el numero de observaciones N crece
la suma
XN
mT (k)m(k)
k=n
70 MINIMOS CUADRADOS PONDERADOS
k
!1
X
P (k) = 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 4.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.
A veces es conveniente dar mas peso a algunas medidas que a otras en la esti-
macion. 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
N
X
2
T
J() = E(N, ) W (N )E(N, )k = w(k)e2 (k, )
k=n
= [M T (N )W (N )M (N )]1 M T (N )W (N )Y (N ) (4.8)
, 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
pequeno 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).
P (k 1) P (k 1)mT (k)m(k)P (k 1)
P (k) =
+ m(k)P (k 1)mT (k)
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.
Seg
un se explico en la seccion 4.3 el estimador obtenido mediante mnimos cuadra-
dos 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 resto del procedimiento es exactamente igual, tanto en las formulaciones fuera de lin-
ea como en linea. Con este metodo se consiguen estimaciones insesgadas y consistentes
para procesos que respondan como un modelo ARMAX. Los problemas son un aumen-
to de la carga de calculo y una menor velocidad de convergencia en los parametros ci
debido a que la senal de ruido no es la mas preponderante.
Finalmente, existe otra variante de los mnimos cuadrados que son los mnimos
cuadrados generalizados. Sin entrar en demasiados detalles, esta formulacion se usa
cuando se tiene alg
un conocimiento del valor real del polinomio C(z 1 ) o de la matriz
P (matriz de covarianza). En este caso si la matriz N definida como
N = E vv T
4.6. Estimaci
on de los valores de continua
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.
CAPITULO 4. IDENTIFICACION
POR MINIMOS CUADRADOS 73
4.6.1. Utilizaci
on de los incrementos de las variables
donde la se
nal uID (k) es la se
nal de entrada que se utiliza en la identificacion. Como
se puede observar, al usarse el incremento, se resta de manera implicita la componente
continua. Lo mismo se hace con la salida
4.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
N N
1 X 1 X
U = u(i) Y = y(i)
N i=1 N i=1
4.6.3. 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 )
74 IMPORTANCIA DEL ORDEN DEL MODELO
Y (k) = a1 Y (k 1) an Y (k n)
+b1 U (k d 1) + + bn U (k d n) + K
K = (1 + a1 + + an )Y (b1 + + bn )U (4.9)
y en el regresor se incluye un 1
m(k) = y(k 1) y(k n) u(k 1) u(k n) 1
Una vez estimado el valor de K, lo que se hace es dar un valor arbitrario a Y , por
ejemplo igual al valor de la referencia o consigna. Con ese valor se calcula U mediante
la expresion (4.9).
El orden del sistema a identificar es algo que debe ser conocido para asegurar la
convergencia e identificabilidad (ver tema 3). 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 infraparametrizacion)
o por exceso (sobreparametrizacion).
20
10
0
amplitud dB
10
20
30
40
1 0 1
10 10 10
50
desfase (grados)
100
150
200
250
1 0 1
10 10 10
frecuencia rad/s
Figura 4.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 s 1 .
20
10
0
amplitud dB
10
20
30
40
1 0 1
10 10 10
50
desfase (grados)
100
150
200
250
1 0 1
10 10 10
frecuencia rad/s
Figura 4.3: Misma situacion que en la figura 4.2 pero con una se
nal de entrada senoidal de frecuencia
= 1 rad s .
1
76 IMPORTANCIA DEL ORDEN DEL MODELO
0.5
uey
0.5
1.5
0 5 10 15 20 25 30 35 40
1.5
0.5
a , b estimados
0.5
i
1
i
1.5
2
0 5 10 15 20 25 30 35 40
tiempo (s)
0.025
0.02 k=30
k=100
0.015
0.01
3
b
0.005
0.005
2 1.8
k=180 1.6 1.4 1.2 1 0.8 0.6
a1
1.5
0.5 k=180
2
a
k=100
k=30
0.5
2 1.8 1.6 1.4 1.2 1 0.8 0.6
a1
Figura 4.5: Evolucion de unos parametros frente a otros para el modelo sobreparametrizado.
4.8. Identificaci
on de sistemas con retardo o no li-
neales
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
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
m(k) = y(k 1) y(k n) u(k d 1) u(k d n)
Con esta modificacion cualquiera de los algoritmos de mnimos cuadrados vistos ante-
riormente se puede aplicar a procesos con retardo. El problema estriba en que se ha
de conocer exactamente el retardo (vease tema 3). El metodo usual para conocer este
dato es provocar un cambio en la entrada y observar cuando se manifiesta dicho cam-
bio en la salida (ha de tenerse en cuenta que en todo sistema muestreado los cambios
en la entrada se manifestaran como mucho en el siguiente periodo de muestreo). Este
sencillo esquema se puede complicar por ejemplo si el retardo es variable. Esto es mas
comun de lo que se cree, pues el retardo as como el resto de parametros de un sistema
suele depender del punto de funcionamiento (por ejemplo, los retardos de transporte
ocasionados por tuberias dependen del caudal de material que se transporta). El pro-
blema es que, aunque los metodos de identificacion propuestos puedan seguir cambios
78 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.
respectivamente.
y como valor inicial del vector de parametros se puede usar = P (0)M (2n)Y (2n).
80 CONSIDERACIONES FINALES
Captulo 5
Introducci
on al control adaptativo
81
82 PLANTEAMIENTO DEL PROBLEMA
-
9;:=<?>A@B:DCFEHGI:D@
REFERENCIA
+
EKJMLONP>AEHQRCAS + u
T CFEB<U>VE
+
y
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.
5.1.1. Clasificaci
on grosso modo de los sistemas de control
adaptativo
Ambas estrategias suponen que para cualquier juego de valores de los parametros del
sistema y las perturbaciones, existe un controlador lineal que hace que el sistema en
bucle cerrado cumpla los requisitos de dise
no.
Las dos tecnicas tienen sus ventajas e inconvenientes. Las ventajas del MRAC pasan
por una rapida adaptacion y la posibilidad de utilizar formulaciones que garanticen
estabilidad (usando metodos de Lyapunov). Sin embargo, la capacidad de adaptacion
de estas estrategias dependen en gran medida de la riqueza dinamica de la se nal de
control (esto es analogo a lo que ocurre en la identificacion de sistemas, vease el tema
3). Por otra parte, los STR se adaptan bien en casi todas las situaciones y son faciles de
implementar pues admiten tecnicas de programacion modular. Sin embargo, tambien
presentan sus propios inconvenientes como se vera mas adelante.
En los primeros el valor de los parametros se obtiene buscando entre los posibles valores
aquellos que hacen optimo un cierto criterio de comportamiento del sistema. Es decir,
optimizan un criterio de comportamiento o funcionamiento. En este grupo estudiare-
mos los controladores de mnima varianza y mnima varianza generalizado. Tambien
se puede considerar en este grupo el control predictivo basado en modelo (al que dedi-
caremos 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.
84 DEL USO DE CONTROL ADAPTATIVO
JUSTIFICACION
Los controladores adaptativos sin criterio optimo buscan los parametros del contro-
lador 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 ejem-
plo 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 disenar dichos controladores, de manera que a pesar de los cambios en el
proceso se sigan cumpliendo las especificaciones de dise no.
5.2. Justificaci
on del uso de control adaptativo
El control adaptativo conlleva una serie de inconvenientes que pueden hacernos cues-
tionar 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.
+ u v
f(u) G(s)
-
14
12
10
caudal (m /h)
3
0
0 10 20 30 40 50 60 70 80 90 100
apertura (%)
general, cuando la variacion en los parametros del sistema o los actuadores se conoce
de antemano y ademas se puede establecer una dependencia entre dichos parametros
y el punto de operacion (o una variable auxiliar) se puede recurrir a tecnicas sencillas
de control adaptativo como el gain scheduling (vease la seccion 7.4). En caso contrario
tendramos que recurrir a tecnicas mas sofisticadas.
Step Response
Step Response
700 1.4
600 1.2
500 1
400 0.8
Amplitude
Amplitude
300 0.6
200 0.4
100 0.2
0 0
0 20 40 60 80 100 120 140 160 180 200 0 2 4 6 8 10 12
Time (sec) Time (sec)
Figura 5.4: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5.1).
20(1 T s)
G(s) = donde T = 0, 0,015, 0,03 (5.2)
(s + 1)(s + 20)(T s + 1)
En este caso la respuesta en bucle abierto del sistema es muy parecida independiente-
mente de los valores de T (figura 5.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 5.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 particu-
lares en las que se va a trabajar. En efecto, si se obtiene la respuesta en bucle cerrado
para el sistema (5.2) pero utilizando una realimentacion unitaria (esto es, u = (ref y))
entonces las respuestas son esencialmente iguales independientemente del valor de T .
CAPITULO 5. INTRODUCCION
AL CONTROL ADAPTATIVO 87
1.5
0.9
0.8
0.7
1
0.6
Amplitude
Amplitude
0.5
0.4
0.5
0.3
0.2
0.1
0
0
0 1 2 3 4 5 6 0 0.5 1 1.5 2 2.5 3
Time (sec) Time (sec)
Figura 5.5: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (5.2).
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 con-
trolador 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
5.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).
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
88 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)
Fh u rzdX|2k;rzhFrzrtiAeBd{cfk;v5rj ym
+
-
cFdfj=eBl\mogbh]n2gpdXj;iPqfj;iVkDr dFh u
s iPj7eogtj yp
REFERENCIA +
Figura 5.6: Configuracion generica de un controlador adaptativo por modelo de referencia (MRAC).
Por otra parte para el controlador primario se puede pensar en casi cualquier es-
tructura de control lineal, incluyendo los populares PI, PID, etc. . . Se deben cumplir
sin embargo varios requisitos, entre ellos que la se
nal de control debe ser una funcion
lineal de los parametros. Tambien (suponiendose fijado el modelo) se debe escoger un
controlador ajustable que permita reproducir el modelo.
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 (5.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 contro-
lador tomando T 0 en el segundo miembro de (5.4) y teniendo en cuenta lo anterior
se llega a
d yproceso
= 2e(t) (5.5)
dt
Notese que yproceso
representa como vara la salida del proceso frente a variaciones del
vector de parametros, es decir la sensibilidad de yproceso (t) frente a variaciones de , de
ah el nombre alternativo de ((enfoque de sensibilidad)).
Finalmente hay que decir que esta regla presenta diversas formulaciones alternati-
vas. De hecho la formulacion original del MIT se basaba en el ndice
1
J(t) = e2 (T )
2
90 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)
Ejemplo 5.1
Supongamos que tenemos un proceso cuya funcion de transferencia viene dada por
G(s) = kF (s)
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
e(t)
= kF (s)uc (t) (5.8)
ahora bien, de (5.7) se obtiene que
luego,
ym (t)
F (s)uc (t) =
k0
por lo que llevando esto a (5.8) se obtiene
e(t) k
= ym (t)
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
1
Con el objeto de simplificar las cosas en la ecuacion (5.7) se ha abusado notablemente de la
notacion pues se estan incluyendo simultaneamente funciones en el dominio s (de la transformada de
Laplace) y se
nales en el dominio temporal. Esto no es correcto y quizas sera mejor utilizar la notacion
d
F (p) donde p = dt , es decir, sustituir las funciones en s por su equivalente en el operador derivada.
92 CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)
Captulo 6
6.1. Introducci
on. Estructura general de los STR
93
94 ESTRUCTURA GENERAL DE LOS STR
INTRODUCCION.
REFERENCIA
+
- }V~VF]]A8~fFFP2X ~A u
FX2
y
COMPORTAMIENTO
DESEADO
}V~VF]Z)AR~f~FXXp~A z)p K]}tf5XV2{ 7
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 2).
Por otra parte es comun 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.
siendo d el retraso.
Entre los STR podemos distinguir dos tipos de algoritmos, unos que identifican di-
rectamente 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).
3. Calcular la se
nal de control y aplicarla.
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 6.2. Observese en esta figura que no se esta pasando por la fase de dise
no del
REFERENCIA
+
- ptVAZF&PM&tz&z8V t u
&zV8
y
VV&f; oPpzF
b zbzD28 VA
COMPORTAMIENTO
DESEADO
controlador sino que este se identifica, de manera que cumpla con las especificaciones de
dise
no. Por eso en la figura 6.2 como la identificacion toma como datos de entrada las
96 CONTROL POR MINIMA VARIANZA
2. Calcular y aplicar la se
nal de control.
Al igual que en caso anterior estos pasos se repiten cada tiempo de muestreo.
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
CAPITULO 6. REGULADORES AUTOAJUSTABLES (STR) 97
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 deno-
taremos 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 co-
ciente mas resto as
donde
F (z 1 ) = 1 + f1 z 1 + + fd z d
A(z 1 ) B(z 1 ) d
v(k) = y(k) z u(k)
C(z 1 ) C(z 1 )
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 (6.1).
98 CONTROL POR MINIMA VARIANZA
operando
z 1 G(z 1 ) F (z 1 )B(z 1 )
y(k + d) = F (z 1 )v(k + d) + 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
1 F (z 1 )B(z 1 )
2 z 1 G(z 1 )
E y (k + d) = E F (z )v(k + d) + E u(k) + y(k)
C(z 1 ) C(z 1 )
1 F (z 1 )B(z 1 ) z 1 G(z 1 )
+2E F (z )v(k + d) u(k) + y(k)
C(z 1 ) C(z 1 )
G(z 1 )
u(k) = y(k) (6.6)
zB(z 1 )F (z 1 )
CAPITULO 6. REGULADORES AUTOAJUSTABLES (STR) 99
Ejemplo 6.1
yk = ayk1 + buk2
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 6.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
M5& M5&
&
&
& &Z
)
Figura 6.3: Division de polinomios para el ejemplo 6.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 (6.5) obtenemos que el regulador de mnima varianza para este
caso es
z 1 a2 a2
uk = yk = yk
(1 + az 1 )bz 1 (1 + az 1 )b
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 cance-
laran 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 mni-
ma 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
100 DE POLOS Y CEROS
ASIGNACION
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)
G(z 1 ) C(z 1 )
u(t) = y(t) ref(t + d) (6.8)
zB(z 1 )F (z 1 ) zB(z 1 )F (z 1 )
6.3. Asignaci
on de polos y ceros
] F 5
\ ?\
{
Rm (z 1 ) d
y(k) = z w(k) (6.9)
Pm (z 1 )
S(z 1 )B(z 1 )z d
y(k) = w(k)
A(z 1 )M (z 1 ) + B(z 1 )G(z 1 )z d
Rm (z 1 ) = B (z 1 )Rm1 (z 1 )
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 (6.10) se llega a
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.
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 Rm (z 1 ) = Rm1 (z 1 ) = K
2. No se cancela ning
un cero. Esto ocurre si todos las races de B(z 1 ) son inestables.
En este caso
M (z 1 ) = M1 (z 1 ) Rm (z 1 ) = KB(z 1 )
por lo que ahora la ecuacion quedara como
Con este tipo de control se puede ilustrar la diferencia entre algoritmo con estructura
implcita y explcita. Comenzaremos derivando un algoritmo con estructura implcita,
para ver despues el de estructura explcita.
Notese que multiplicando ambos miembros de la ecuacion (6.11) por y(k) se obtiene
La ecuacion (6.12) expresa una relacion entre la entrada y la salida que constituye
un modelo reparametrizado del sistema en bucle cerrado. En dicho modelo aparecen
polinomios conocidos de antemano (A0 (z 1 ), Pm (z 1 )), el retraso d que se supone
conocido, y tres polinomios (B (z 1 ) , M (z 1 ), G(z 1 )) que son los que deben ser
identificados (ajustados mediante un metodo de identificacion recursivo), usando los
valores experimentales de la entrada y la salida. Observese que al identificarse dicho
modelo reparametrizado se estaran identificando los parametros del controlador ademas
de parte de los parametros de la planta. Estos ultimos no son sin embargo necesarios,
se pueden considerar un ((subproducto)) del proceso de identificacion del controlador.
2. Calcular y aplicar
1 1 1
u(k) = S(z )w(k) G(z )y(k)
M (z 1 )
Este procedimiento puede presentar problemas para aquellos sistemas que sean de
fase no mnima. Esta mayor dificultad es inherente a los algoritmos con estructura
implcita, tal y como se ha comentado al comienzo del captulo.
2. Factorizar B(z 1 ) = B + (z 1 )B (z 1 ).
4. Calcular y aplicar
1 1 1
u(k) = S(z )w(k) G(z )y(k)
M (z 1 )
Es facil ver que este algoritmo tiene mas calculos que el anterior, en particular la
factorizacion de B(z 1 ) y la resolucion de la ecuacion polinomial (6.11), tareas ambas
que pueden ser costosas en un hardware industrial no muy potente (ademas de mas
complicadas de implementar). Sin embargo desde el punto de vista practico suele tener
menos problemas.
Captulo 7
7.1. Introducci
on
En este captulo se revisaran algunas de las tecnicas de control adaptativo con mayor
aplicacion en la industria. Estas no son tan ambiciosas como algunas de las presentadas
hasta ahora y sin embargo son definitivamente estrategias de control avanzado que han
demostrado ser u tiles en la practica. Ademas de las tecnicas referidas en el ttulo del
captulo se concluira el temario relativo a control adaptativo con un breve repaso a
algunos sistemas comerciales.
7.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.
105
106 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 adap-
tativos.
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.
Antes de tratar las distintas tecnicas existentes para ajustar automaticamente PIDs
es importante hacer notar que los PIDs industriales (figura 7.1) no son exactamente
iguales a las formulaciones academicas que se ense nan en cursos basicos de control. Por
Figura 7.1: PID industrial moderno con funcion de autoajuste (ABB modelo ECA).
Sin entrar en demasiados detalles un PID mas realista que la version academica
vendra dado por la siguiente expresion:
u(t) = f (v(t))
donde u(t) es la se
nal de actuacion que se aplica, f () es una posible (se suele dar casi
siempre) no-linealidad debida al actuador y
7.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
G(s) = esL (7.1)
1 + sT
CAPITULO 7. CONTROLADORES PID CON AUTOAJUSTE Y AJUSTE POR TABLA 109
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 7.2. El procedimiento
para calcular T y L comienza por el calculo de A0 . De ah se determina
A0
L+T =
k
y de ah se puede medir A1 , la cual se usa para obtener T mediante
eA1
T =
k
donde e es la base de los logaritmos neperianos. Una vez que se conoce L + T y T se
puede obtener L y con eso ya estan estimados todos los parametros.
A0
A1
L+T
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 7.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.
110
LA TECNICA DE AJUSTE POR TABLA O GAIN SCHEDULING
PID
r + u y
PROCESO
-
REL
directa. Los parametros del ciclo lmite contienen informacion suficiente para calcular
los parametros de ajuste del PID.
7.4. La t
ecnica de ajuste por tabla o gain schedul-
ing
-
KK{7OUROK
REFERENCIA
+
){A7o] u
ROF y
;`] o oO
KBR 7B\B
MEDIO
`=`
AMBIENTE
Figura 7.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.
11
10
8
pH
2
1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1
Diferencia entre las concentraciones acidobase 3
x 10
Figura 7.5: Curva de pH para una solucion de HCl 0.001 M y NaOH 0.001 M.
0.9
0.8
0.7
Voltaje de salida (V)
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 1.2 1.3 1.4 1.5
Relacin combustible aire ()
opcionales del controlador como en el caso de los sistemas Protonic (Hartman &
Braun) o UDC 6000 (Honeywell). Estos combinan reglas empricas y tecnicas
de colocacion de polos usando experimentos en bucle abierto. Las estrategias de
oscilaciones mediante rele tambien son comunes como por ejemplo en el SattCon-
trol3 ECA40 y en el DPR900 (Fisher-Rosemount). Otra posibilidad es que estas
herramientas para sintonizar controladores sean modulos independientes, com-
patibles con determinadas familias de controladores. En este tipo encontramos
ejemplo como SIEPID (Siemens), Supertuner (Toyo), Protuner (Techmation) o
PIDWIZ (BST Control). Una tercera posibilidad es que estas herramientas for-
men parte de sistemas de control distribuido como en el caso de Looptune (Hon-
eywell) e Intelligent Tuner (Fisher-Rosemount).
Esta herramienta de control STR (figura 7.7) esta basada entre otras cosas en el
control de mnima varianza y ofrece la capacidad de especificar la posicion de 1 de los
116 CONTROLADORES ADAPTATIVOS INDUSTRIALES
polos de bucle cerrado. Utiliza mnimos cuadrados recursivos con factor de olvido para
Figura 7.7: La herramienta Novatune se comercializa actualmente con el sistema Advant 410 de ABB.
El Control Predictivo se desarrollo en base a dos lneas basicas. Por un lado, a finales
de los anos 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.
Independientemente fue surgiendo otra lnea de trabajo en torno a las ideas del con-
trol adaptativo, desarrollando estrategias esencialmente para procesos monovariables
117
118
CONCEPTOS BASICOS DE CONTROL PREDICTIVO
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.
8.2. Conceptos b
asicos de control predictivo
Uso explcito de un modelo para predecir la salida del proceso en futuros instantes
de tiempo (horizonte).
Calculo de las se
nales de control minimizando una cierta funcion objetivo.
El mpc presenta una serie de ventajas sobre otros metodos, entre las que destacan:
Puede ser usado para controlar una gran variedad de procesos, desde aquellos con
dinamica relativamente simple hasta otros mas complejos incluyendo sistemas con
grandes retardos, de fase no mnima o inestables.
u(t+k|t)
u(t)
^y(t+k|t)
y(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.
Controles
futuros
Optimizador
Errores futuros
Para llevar a cabo esta estrategia, se usa una estructura como la mostrada en la
figura 8.2. Se hace uso de un modelo para predecir las salidas futuras del proceso,
basandose en las futuras senales de control propuestas. Estas senales 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.
8.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.
122
ELEMENTOS BASICOS
Modelo de prediccion
Funcion objetivo
La piedra angular del mpc es el modelo; un dise no completo debe incluir los mecan-
ismos necesarios para la obtencion del mejor modelo posible, el cual debe ser lo sufi-
cientemente rico para capturar al maximo la dinamica del proceso y debe ser capaz de
permitir el calculo de las predicciones a la vez que sea intuitivo y permita un analisis
teorico. El uso del modelo del proceso viene determinado por la necesidad del calcu-
lo de la salida predicha en instantes futuros y(t + k | t). Las diferentes estrategias
de mpc pueden usar distintos modelos para representar la relacion de las salidas con
las entradas medibles, algunas de las cuales seran variables manipuladas y otras se
pueden considerar como perturbaciones medibles, que pueden ser compensadas por ac-
cion feedforward. Ademas se tendra en cuenta un modelo de las perturbaciones, para
intentar describir el comportamiento que no aparece reflejado en el modelo del proce-
so, englobandose aqu el efecto de las entradas no medibles, el ruido y los errores de
modelado.
Para el estudio se puede separar el modelo en dos partes: el modelo del proceso
propiamente dicho y el modelo de las perturbaciones. Cualquier metodo usara ambas
partes para la prediccion.
Casi todas las formas posibles de modelar un proceso aparecen en alguna formu-
lacion de mpc siendo las mas usadas las siguientes:
h2
N
i
g
g
hi
h1
g2
hN
y(t) y(t)
g1
t t+1 t+2 ... t+N t t+1 t+2 ... t+N
a) b)
es el gran n
umero de parametros que necesita, ya que N suele ser un valor elevado
(del orden de 40-50). La prediccion vendra dada por:
N
X
y(t + k | t) = hi u(t + k i | t) = H(z 1 )u(t + k | t)
i=1
Respuesta ante escalon. Es muy similar al anterior solo que ahora la se nal de
entrada es un escalon. Para sistemas estables se tiene la respuesta truncada que
sera
N
X
y(t) = y0 + gi 4 u(t i) = y0 + G(z 1 )(1 z 1 )u(t) (8.2)
i=1
124
ELEMENTOS BASICOS
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 8.3b. El valor de y0 puede tomarse
0 sin perdida de generalidad, con lo cual el predictor sera:
N
X
y(t + k | t) = gi 4 u(t + k i | t)
i=1
A(z 1 ) = 1 + a1 z 1 + a2 z 2 + + ana z na
B(z 1 ) = b1 z 1 + b2 z 2 + + bnb z nb
B(z 1 )
y(t + k | t) = u(t + k | k)
A(z 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.
CAPITULO 8. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 125
C(z 1 )e(t)
n(t) =
D(z 1 )
e(t)
n(t) =
1 z 1
uf (t j) = u(t j) para j = 1, 2,
uf (t + j) = u(t 1) para j = 0, 1, 2,
126
ELEMENTOS BASICOS
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,
u y
Process
t t
u uc y yc
f f
t t t t
8.4.2. Funci
on objetivo
Los diversos algoritmos de mpc proponen distintas funciones de coste para la ob-
tencion 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:
N2
X Nu
X
J(N1 , N2 , N u) = y (t + j | t) w(t + j)]2 +
(j)[ (j)[4u(t + j 1)]2 (8.3)
j=N1 j=1
se tiene en cuenta, mientras que en otros tambien aparecen directamente los valores de
la se
nal de control (no sus incrementos). En la funcion de coste se pueden considerar:
r(t+k)
w1(t+k)
w2 (t+k)
y(t)
8.4.3. Obtenci
on de la ley de control
4u(t + j 1) = 0 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
Recuerdese que debido al horizonte deslizante, la se
nal de control se recalcula en el siguiente
muestreo.
130 DE LOS PRINCIPALES ALGORITMOS
REVISION
8.5. Revisi
on de los principales algoritmos
Este metodo usa la respuesta ante escalon (8.2) para modelar el proceso, consideran-
do 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)
k
X N
X
y(t + k | t) = gi 4 u(t + k i) + gi 4 u(t + k i) + n
(t + k | t)
i=1 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 rep-
resenta 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 (8.3).
Una de las caractersticas de este metodo que lo ha hecho muy popular en la in-
dustria 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.
CAPITULO 8. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 131
Este metodo se conoce tambien como Model Predictive Heuristic Control y el pro-
ducto comercial se llama idcom (Identification-Command). Es muy similar al dmc con
la diferencia principal de usar un modelo de respuesta impulsional (8.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 var-
ianza 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 secun-
darias.
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 carac-
tersticas 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 8.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.
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 es-
pecificar como combinacion de estas funciones. Con esta estrategia, un perfil de entrada
132 DE LOS PRINCIPALES ALGORITMOS
REVISION
Puntos de coincidencia
donde d es el retardo y v(t) la perturbacion. Este modelo puede ampliarse para tratar
perturbaciones medibles a nadiendo un termino D(z 1 )d(t) para incluir efecto feedfor-
ward. La estructura de la ley de control es muy simple, ya que se considera que la senal
de control permanecera constante a partir del instante t (es decir, horizonte de control
igual a 1): 4u(t + k) = 0 para k > 0. Para obtener la se
nal de control de minimiza una
funcion de coste de la forma:
N
X
y (t + k | t)]2
(k)[w(t + k) P (z 1 )
k=d
CAPITULO 8. CONTROL PREDICTIVO BASADO EN MODELO (MPC) 133
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)
A(z 1 )y(t) = B(z 1 )z d u(t 1) + C(z 1 )
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 identi-
ficacion en lnea como los mnimos cuadrados recursivos.
Las bases teoricas del algoritmo gpc has sido ampliamente estudiadas y se puede
demostrar que, para distintos conjuntos de parametros, el algoritmo es estable y que
otros controladores como por ejemplo el dead beat son casos incluidos en este.
Captulo 9
Controladores predictivos
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
diseno (horizontes, secuencias de ponderacion) sobre la estabilidad del bucle cerrado
as como de resultados de robustez.
9.1.1. Predicci
on
135
136 DYNAMIC MATRIX CONTROL
X
f (t + k) = ym (t) + (gk+i gi ) 4 u(t i) (9.1)
i=1
y(t + 1 | t) = g1 4 u(t) + f (t + 1)
y(t + 2 | t) = g2 4 u(t) + g1 4 u(t + 1) + f (t + 2)
..
.
p
X
y(t + p | t) = gi 4 u(t + p i) + f (t + p)
i=pm+1
y
d = D d + fd
138 DYNAMIC MATRIX CONTROL
f = fu + D d + f d + fn
y
= Gu + f
El objetivo del controlador dmc es llevar el proceso los mas cerca posible al setpoint
en el sentido de mnimos cuadrados con la posibilidad de incluir una penalizacion en los
movimientos de la se nal de control. Por ello se seleccionan las variables manipuladas de
forma que minimicen un objetivo cuadratico que puede incluir solo los errores futuros
p
X
J= y (t + j | t) w(t + j)]2
[
j=1
w +
u y
K Proceso
-
f
Calculo
Resp. libre
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.
P. operacion
Zona segura 1 optimo
Punto operacion 1
Restriccion
zona Punto operacion 2
segura 2
Restriccion
N
X 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.
Todo lo relacionado con las restricciones sera abordado con mayor grado de detalle
en el tema dedicado a ello.
CAPITULO 9. CONTROLADORES PREDICTIVOS 141
9.1.3.2. Extensi
on al caso multivariable
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.
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
142 CONTROL PREDICTIVO GENERALIZADO
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 con-
troladores 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.
9.2.1. Formulaci
on del Control Predictivo Generalizado
La mayora de los procesos de una sola entrada y una sola salida (single-input single-
output, siso), al ser considerados en torno a un determinado punto de trabajo y tras
ser linealizados, pueden ser descritos de la siguiente forma:
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 8.5. En muchas situaciones se considera (j) igual a 1 y (j)
constante.
9.2.1.1. Predicci
on o
ptima
1 = Ej (z 1 ) 4 A + z j Fj (z 1 ) (9.6)
1 = Ej (z 1 )A + z j Fj (z 1 )
1 )
Considerense que los polinomios Ej y Fj se han obtenido dividiendo 1 entre A(z
hasta que el resto haya sido factorizado como z j Fj (z 1 ) .
Con:
Supongase que se utiliza el mismo procedimiento para obtener Ej+1 y Fj+1 , es decir,
1 ) hasta que el resto se pueda factorizar como z (j+1) Fj+1 (z 1 ) con
dividir 1 entre A(z
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
CAPITULO 9. CONTROLADORES PREDICTIVOS 145
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 con ej+1,j = fj,0
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
1. Comenzar con E1 = 1, F1 = z(1 A)
2. Ir a
nadiendo nuevos terminos a Ej con ej+1,j = fj,0
Donde
y(t + d + 1 | t) 4u(t)
y(t + d + 2 | t)
4u(t + 1)
y = .. u= ..
. .
y(t + d + N | t) 4u(t + N 1)
g0 0 ... 0
g1 g0 ... 0
G = .. .. .. ..
. . . .
gN 1 gN 2 ... g0
z(Gd+1 (z 1 ) g0 )
2
z (Gd+2 (z 1 ) g0 g1 z 1 )
G0 (z 1 ) = ..
.
z N (Gd+N (z 1 ) g0 g1 z 1 gN 1 z (N 1) )
Fd+1 (z 1 )
1
Fd+2 (z 1 )
F(z ) = ..
.
Fd+N (z 1 )
Al depender los ultimos terminos de la ecuacion (9.9) solo del pasado, pueden
agruparse en f, dando lugar a:
y = Gu + f (9.10)
Observese que es la misma expresion que se obtuvo para el dmc, aunque en este
caso la respuesta libre es distinta.
9.2.1.2. Obtenci
on de la ley de control
donde:
H = 2(GT G + I)
b = 2(f w)T G
f0 = (f w)T (f w)
u = H1 bT (9.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.
9.2.2. Ejemplo de c
alculo
E1 (z 1 ) = 1 F1 (z 1 ) = 1,8 0,8z 1
Con estos valores y el polinomio B(z 1 ) = 0,4 + 0,6z 1 , los elementos Gi (z 1 ) resultan
ser:
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:
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 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 ran-
go dado), limitaciones de calidad del producto (no salirse de cierta zona) o normativa
medioambiental.
151
152 RESTRICCIONES EN CONTROL PREDICTIVO
P
Pmax
P1
P2
t Q1 Q2 Q
u(t+1) u(t+1)
u max u max
uc u uc u
a) b)
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.
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.
U u(t) U t
u u(t) u(t 1) u t
y y(t) y t
1 U T u + u(t 1) 1 1 U
1u u 1u
1y Gu + f 1y
Restricciones blandas, que son aquellas que pueden ser violadas en un momento
dado por no ser cruciales, pero la violacion se penaliza en la funcion objetivo
como un termino mas. Es una forma de relajar la restriccion.
10.1.3. Resoluci
on del problema
Resulta evidente que la carga de calculo sera considerable, ya que hay que encontrar
la solucion resolviendo el algoritmo iterativo en cada periodo de muestreo. Normalmente
el esfuerzo esta justificado por el beneficio economico obtenido al trabajar mas cerca del
punto de operacion optimo. Para resolver el problema qp existen diversos algoritmos
suficientemente probados.
En cualquier caso es un tema muy abierto, sobre todo si se quieren considerar las
incertidumbres en el modelo y los temas asociados con la factiblidad.
10.1.4. Gesti
on de restricciones
Las soluciones no factibles aparecen con mayor frecuencia en casos en que el optimo
se encuentre cerca de las restricciones y el sistema este sujeto a perturbaciones, llevando
a la salida a regiones prohibidas.
CAPITULO 10. OTROS ASPECTOS DEL CONTROL PREDICTIVO 157
Lmites fsicos
Restricciones reales
Lmites de operacin
10.1.4.1. T
ecnicas de b
usqueda de soluciones factibles
Es decir, el gestor de restricciones calculara los lmites reales (los que se envan al
algoritmo qp) en base a los lmites de operacion pero sin salirse nunca de los lmites
fsicos, seg
un se observa en la figura 10.3.
2. Eliminacion de restricciones.
3. Relajacion de restricciones.
4. Otras tecnicas.
1. Desconexi
on del controlador
2. Eliminaci
on de restricciones
Eliminaci on jerarquica 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 restric-
cion 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.
3. Relajaci
on de restricciones
4. Otras t
ecnicas
Existen tecnicas que se basan en la manipulacion del horizonte mnimo de las restric-
ciones. Algunos controladores industriales como el qdmc usan el concepto de constraint
window. La constraint window comienza en alg un punto en el futuro y continua 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.
160 RESTRICCIONES EN CONTROL PREDICTIVO