JA05ARINOSALANAVARROFuzzyPFB.p

Anuncio
Controladores LMIs para sistemas Borrosos afines
C. Ariño, A. Sala, J.L. Navarro
[email protected], [email protected],es, [email protected]
Dpto. Ingenierı́a de Sistemas y Automática
Universidad Politécnica de Valencia
Camino de Vera, 14; 46022 Valencia, España
Resumen
Este Artı́culo presenta un método de diseño de
controladores Borrosos, utilizando la metodologı́a
del control LMI, en sistemas Borrosos afines con
inferencia TS. La potencia de este diseño es la
capacidad de alcanzar una referencia arbitraria,
asegurando la estabilidad del sistema en bucle
cerrado.
Palabras clave: Sistemas Borrosos,Control LMI.
utiliza la herramienta de las LMIs (Linear Matrix
Inequalities) [3] para calcular dichos controladores. Obteniendo un controlador Borroso TS cuyas
funciones de pertenencia µi son las mismas que
las del modelo.
El principio de estabilidad se basa en la estabilidad de Lyapunov ampliamente utilizado para
el análisis de estabilidad en sistemas complejos [1].
2.
1.
Introducción
El modelado de sistemas complejos mediante técnicas Borrosas usando inferencia Takagi-Sugeno
(TS) ha sido ampliamente difundido gracias a su
versatilidad y sencillez de formulación, éste puede
ser descrito como un conjunto de reglas:
si x es Ai , entonces y = fi (x)
(1)
donde Ai es un conjunto Borroso definido en el
dominio de x, con las funciones de pertenencia
µi (x). Para poder realizar una interpretación global del sistema necesitamos un método de inferencia, como hemos comentado ésta inferencia la
realizaremos utilizando el método Takagi-Sugeno
[4, 6], descrito de la siguiente forma:
y(x) =
∑i µi (x) fi (x)
∑i µi (x)
∑ µi (x)(Ai · x + Bi · u)
dx/dt
A1
A2
x
m
=
La idea del controlador es partir del modelo descrito como suma de modelos locales Lineales con
inferencia Borrosa (3) y estabilizar el controlador
en un punto de equilibrio, x = 0. Si se quiere buscar
otro punto de equilibrio en general habrı́a que buscar otra descripción del modelo donde x = 0 sea el
nuevo punto de equilibrio. Esto se puede observar
con el siguiente ejemplo: en la figura 1 el sistema
viene dado por 2 modelos locales con 1 variable de
estado y sin entradas.
Si queremos controlar este sistema en un punto de
(2)
Asumimos que las funciones fi (x) son funciones
lineales o afines y ∑i µi = 1 eliminándose la fración
en (2).
Cuando hablamos de sistemas dinámicos, y(x) en
(2) es sustituida por la derivada de los estados, ẋ.
Bajo la condición de suma 1, esta representación
puede particularizarse a funciones lineales:
ẋ
Planteamiento del problema
(3)
i
Existen técnicas de diseño de controladores para
este tipo de sistemas que son capaces de llevar
al sistema al equilibrio x = 0, cumpliendo ciertas
prestaciones. La técnica que vamos a exponer [5]
Figura 1: Modelo TS lineal ẋ vs. x
funcionamiento diferente, podemos, como en sistemas lineales, realizar el cambio de variable oportuno para que nuestro nuevo punto de funcionamiento sea punto de equilibrio y este equilibrio
esté en x̂ = 0. Entonces se observa que los modelos
locales que habı́amos calculado anteriormente ya
no son válidos, puesto que no existe función µi que
cumpla con
n
∑ µi = 1
i
como se observa en la figura 2 donde hemos tomado la función de la figura 1 y haciendo un cambio de variable hemos modificado el punto de equilibrio.
dx/dt
A1
A2
x
Donde las matrices Ai , Bi y los vectores ui0 y xi0
se definen según la forma canónica observable [2],
para un sistema SISO, aunque es aplicable a cualquier sistema Multivariable donde los estados se
hayan escogido de determinada forma.
Como se puede observar en esta ecuación tenemos
que existen n modelos lineales obtenidos cada uno
en un punto diferente xi0 , ui0 con la condición de
ser esos puntos, puntos de equilibrio.
Las matrices y vectores Ai , Bi , C,xi0 y ui0 están definidas siguiendo la forma canónica observable como
se muestra en las ecuaciones ((5),(6),(7),(8),(9))


0
1
0
...
0
 0
0
1
...
0 



...
...
...
... 
Ai =  ...
(5)

 0
0
0
...
1 
−ai1 −ai2 −ai3 ... −aiq
T
Bi = 0 0 0 ... bi
(6)
C = 1 0 0 ... 0
(7)
′
T
0 0 ... 0
(8)
xi0 = xi0
ui0 = u′i0
Figura 2: Modelo TS lineal ẋ vs. x
(9)
Como también se puede observar hemos tomado
un vector C común para todos los modelos lineales.
3.
Planteamiento del controlador
El enfoque utilizado es el de calcular un controlador que estabilice el sistema en incrementos respecto de la referencia y por otra parte una prealimentación que transforme el sistema en un sistema en incrementos de cara al controlador mencionado. La estructura del controlador global serı́a
la expuesta en la figura 3.
El primer estado corresponde a la salida, el segundo a la primera derivada de la salida, el tercero a la segunda derivada y ası́ sucesivamente.
Eso explica la forma de Ai , Bi y C como también
sirve para deducir la de xi0 , si recordamos que xi0
es un punto de equilibrio todas las derivadas de la
salida y tienen que ser cero.
Para simplificar la notación y descripción del sistema (4) definimos las siguientes variables:
e
A(x)
=
Uref
F1
Yref
Xref
F2
-
-K
+
+
U
SYS
+
g0 (x) =
Ax
Y
e
B(x)
=
X
∑ µi (x)Bi
(12)
i
(13)
Pasamos a definir la prealimentación que realiza
el controlador para llevar el sistema a un sistema
en incrementos:
uest
n
∑ µi (x)(Ai (x − xi0 ) + Bi (u − ui0 ))
i
y = Cx
(11)
i
n
donde µi (x) es el valor de la función de pertenencia del modelo i-ésimo en el punto x.
Para aplicar este método el sistema Borroso
TS no tiene porqué estar formado por modelos
lineales (3), los modelos locales pueden ser afines
tal y como se definen en la ecuación (4).
=
∑ µi (x)Ai xi0
e − Ax
g0 + Bu
e − Bu
g0
ẋ = Ax
Cálculo de la prealimentación
ẋ
(10)
i
n
Con lo que el sistema quedarı́a como:
Figura 3: Estructura del sistema
4.
n
∑ µi (x)Ai
(4)
xest
e−1 B)
e −1 ·
= (CA
e−1 Ax
g0 +CA
e−1 Bu
g0 ) (14)
·(−yre f +CA
e−1 (−Bu
g0 + Bu
e est + Ax
g0 )
= A
(15)
donde en este caso la diferencia con el apartado
anterior radica en que las variables borrosas del
e Ax
g0 ,Be y Bx
g0 ) toman su valor en el
sistema (A,
estado actual x.
Definimos de esta forma xest y uest para que se
cumpla la ecuación:
e est − Ax
g0 + Bu
e est − Bu
g0
0 = Ax
Esto no significa que ni el estado actual ni
xest sean puntos de equilibrio por cumplir esta
ecuación.
La ventaja que obtenemos en este caso se puede
apreciar al realizar la siguiente acción de control
u = û + uest en las ecuaciones de estado del sistema
borroso:
e est
Bu
ẋ
ẋ
ẋ
ẋ
g0 + Bu
e est
g0 − Ax
= Ax
e − Ax
f + Bu
e − Bu
f
= Ax
e + Bb
f − Bu
eu + Bu
e est − Ax
f
= Ax
e + Bb
e est
eu − Ax
= Ax
e − xest ) + Beû
= A(x
(16)
expresar el sistema de forma que donde la µi
esta cercana a 1 sea similar al modelo local. Ası́
que en principio puede ser buena idea tener un
controlador similar en el que actúen diferentes
controladores lineales dependiendo del modelo
local que tiene mayor peso µi
La motivación esencial de este planteamiento a
parte de la motivación intuitiva, es que utilizando
esta metodologı́a podemos encontrar una envoltura para el sistema en bucle cerrado que cumpla
con los requisitos para poder aplicar la teorı́a de
control LMI [3].
Mediante un controlador Borroso obtenemos
una envoltura convexa del sistema. una vez la
tengamos podremos aplicar cualquier técnica de
control LMI.
El controlador Borroso propuesto tiene la estructura:
F = − ∑ µi (x)Fi x
(17)
(18)
(19)
(20)
(21)
(23)
i
Donde Fi son los controladores locales y µi las
funciones de pertenencia del modelo.
Vemos el comportamiento del bucle cerrado con
el controlador planteado:
Para terminar tenemos que si el sistema está expresado en la forma canónica observable tenemos
que xest = xre f puesto que siempre se cumple:
=
ẋ
∑ ∑ µi µ j (Ai − Bi Fj )x
i
(24)
j
(25)
yre f = Cxest
e est − Ax
g0 + Bu
e est − Bu
g0
0 = Ax
Con lo que si realizamos el cambio de variable x̂ =
x − xest y la referencia cambia de forma mucho más
lenta que los estados tenemos que la derivada de x̂
toma el mismo valor que la de x con lo que tenemos
finalmente la ecuación:
ex̂ + Beû
x̂˙ = A
(22)
Ahora ya tenemos el sistema Borroso en incrementos que podemos utilizar para buscar controladores estables mediante el procedimiento de la sección 5.
5.
Controlador Borroso en
incrementos
Partimos del modelo local de la forma (3). El
controlador que se propone en [5] que es el que
vamos a desarrollar, es un controlador Borroso
TS con las mismas funciones de pertenencia
que el sistema. Esto significa que cuando la
función de pertenencia sea próxima a 1 estaremos
utilizadando un controlador lineal en concreto.
En principio parece lógico si retomamos la idea
de que un sistema Borroso lo que trata es de
De momento tenemos que Ai − Bi Fj es una envoltura del sistema. Pero es conveniente seguir
avanzando sabiendo como sabemos que las funciones de pertenencia del controlador son las
mismas que las del modelo con lo que podemos
decir que existen términos repetidos que podemos
ir agrupando con lo que la expresión (24) queda:
= Ai + Bi Fj
Gi j
=
ẋ
∑
µi2 Gii x + 2
i< j
∑ ∑ µi µ j
i
i
j
Gi j + G ji
(26)
x
2
Ahora si aplicamos la teorı́a de estabilidad de
Lyapunov para esta envoltura del sistema obtenemos que para que el sistema sea estable tiene
que existir una matriz simétrica P que cumpla las
siguientes LMIs:
Gi j + G ji
2
T
GTii P + PGii < 0 (27)
Gi j + G ji
≤ 0 (28)
P+P
2
P > 0 (29)
Como realmente nuestro propósito es calcular
los controladores locales Fi vamos a dar un paso
más y buscamos las LMIs donde las incógnitas
también sean las Fi que queremos calcular.
Para lograrlo, multiplicamos por delante y por
detrás por X = P−1 y definimos la matriz Mi = Fi X
con lo que la expresión anterior queda de la forma:
MU1
MU2
1
0.8
0.6
XATi + Ai X − XFiT BTi − Bi Fi X
< 0 (30)
XATi + Ai X + XATj + A j X − XFjT BTi
−Bi Fj X − XFjT BTi − Bi Fj X
X
0.4
< 0 (31)
> 0 (32)
Cumpliendo Estas condiciones LMI, estamos definiendo un controlador Borroso estable. Por tanto
esta metodologı́a implica una enorme potencia
para el cálculo de controladores Borrosos.
Mediante esta metodologı́a somos capaces de aumentar las restricciones sobre el sistema, cumplir
especificaciones de tiempo de establecimiento, de
sobreoscilación, de limitación de las acciones de
control y de la salida entre otras especificaciones
como queda perfectamente explicado y desarrollado en [5].
6.
Ejemplo Sistema Borroso SISO
Definimos para este ejemplo un sistema SISO
Borroso TS siguiendo la ecuación (4), con dos
modelos locales y de tercer orden:
2
ẋ
=
∑ µi (x)(Ai (x − xi0 ) + Bi (u − ui0 ))
i
y = Cx
donde:
(33)

0 1
A1 =  0 0
3 2
B1 = 0 0

0 1
A2 =  0 0
0,1 1
B2 = 0 0
C= 1 0
x10 = 0 0

0
1 
5
T
1
0
−2
−1
0
1
2
3
4
Figura 4: Funciones de pertenencia
de la variable x1 = y y no de todo el estado.
Calculamos la acción de control uest (x, yre f )
siguiendo la ecuación (14) y el estado estático
xest = [yre f 0 0]T .
e−1 B)
e−1 Ax
g0 +CA
e−1 Bu
e −1 (−yre f +CA
g0 )
uest = (CA
(43)
Ahora utilizamos la metodologı́a del cálculo de
reguladores para sistemas Borrosos TS lineales
mediante LMIs, para una tasa de decrecimiento
α.
Tenemos que se ha de cumplir:
XAT1 + A1 X − M1T BT1 − B1 M1 + 2α X
XAT2 + A2 X − M2T BT2 − B2 M2 + 2α X
XAT1 + A1 X − XAT2 + A2 X − M1T BT2
< 0(44)
< 0(45)
−B2 M1 − M2T BT1 − B1 M2 + 4α X
< 0(46)
(47)
donde:
X = P−1 , M1 = F1 X, M2 = F2 X
(35)

0
1 
0,1
T
10
0
T
0
u10 = 0
T
x20 = 2 0 0
u20 = 1
(34)
0.2
(36)
donde F1 y F2 son los controladores Lineales a
implementar. Con esto acabamos teniendo la siguiente ley de control:
û = −(µ1 (x)F1 + µ2 (x)F2 )x̂
(37)
(38)
(39)
(40)
(41)
(42)
También tenemos definidas las funciones de pertenencia, en este ejemplo únicamente dependen
(48)
(49)
Resolviendo las LMIs con α = 0,5 mediante la
LMI Control Toolbox de Matlab obtenemos:
F1
F2
5,6232
=
2,9807
=
9,8802
5,5132
1,9238
1,4455
(50)
La acción de control real que aplicamos sobre el
sistema en función de sus variables de estado y la
referencia es:
u = uest (x) − (µ1 (x)F1 + µ2 (x)F2 )(x − xest )
(51)
La respuesta del sistema ante un cambio de la
referencia yre f = 2 es la mostrada en la figura:
Como se puede observar el sistema en bucle
x1 = y
1.5
1
0.5
0
0
5
10
15
0
5
10
15
0
5
10
15
0.8
x2
0.6
0.4
0.2
0
x3
1
0.5
0
Figura 5: Respuesta del sistema en bucle cerrado
cerrado tiene error de posición 0 y se comporta
según las prestaciones que hemos planteado en el
cálculo del controlador mediante LMI.
Borrosos. Debido a que para sistemas no lineales
conseguir que el sistema sea estable en un punto
de equilibrio no significa que sea estable en
cualquier otro punto y lo mismo ocurre con
el regulador. Ası́ los modelos locales dependen
del punto que queremos controlar punto que se
toma como origen de las variables del sistema.
En general los modelos locales no tienen porque
estar en incrementos respecto a un mismo punto.
Ni nuestro sistema queremos que trabaje en un
único punto. Ya que probablemente uno de las
principales razones para utilizar un controlador
no lineal es aumentar el rango de control que
tenemos con un controlador lineal y el rango de
referencias que queremos abarcar.
Con el método expuesto en este capı́tulo podemos
convertir un modelo Borroso afı́n con inferencia
TS en un modelo Borroso lineal, donde la referencia deseada es punto de equilibrio y se encuentra
en el origen de coordenadas, con lo que podemos
aplicar la teorı́a LMI para sistemas Borrosos desarrollada hasta el momento y asegurar que nuestros
controladores van a cumplir las especificaciones
de control que les hemos impuesto en dicho diseño.
1
x =y
1
0
−1
0
2
4
6
8
10
12
14
16
18
20
Referencias
1
x
2
[1] Applied Nonlinear Control. Ed. Prentice Hall,
Englewood Cliffs,New Jersey, 1991.
0.5
0
0
2
4
6
8
10
12
14
16
18
20
2
x
3
1
0
0
2
4
6
8
10
t
12
14
16
18
20
U
est
0
−1
−2
−3
−1
−0.8
−0.6
−0.4
−0.2
0
y
0.2
0.4
0.6
0.8
1
Figura 6: Respuesta del sistema en bucle cerrado
Hemos considerado interesante realizar pruebas
en diferentes referencias, una de ellas en un punto
intermedio de la inferencia entre los modelos
locales yre f = 1. También en este caso hemos
buscado representar el valor de uest en función
de y. Como se puede observar en la figura 6,
el resultado es correcto, sigue cumpliendo las
especificaciones de diseño y tenemos error de
posición 0.
7.
Conclusiones
La importancia de los resultados se resume en
que se ha conseguido salir de los modelos en
incrementos respecto al punto de equilibrio a
controlar de la teorı́a LMI aplicada a sistemas
[2] P. Albertos and A. Sala. Multivariable Control
Systems. Ed. Springer-Verlag, London, UK,
2004.
[3] S. Boyd, L. ElGhaoui, E. Feron, and V. Balakrishnan. Linear matrix inequalities in system
and control theory. Ed. SIAM, Philadelphia,
USA, 1994.
[4] T. Takagi and M. Sugeno. Fuzzy identification of systems and its applications to modeling and control. IEEE Transactions on System, Man and Cybernetics, 15:116–132, 1985.
[5] K. Tanaka and H. O. Wang. Fuzzy control systems design and analysis. Ed. John Wiley &
Sons, New York, USA, 2001.
[6] L.-X. Wang. Adaptive Fuzzy Systems and
Control: Design and Stability Analysis. Ed.
Prentice-Hall, New Jersey, USA, 1994.
Descargar