Вы находитесь на странице: 1из 62

Conferencia No 9

Control y Optimización

Sistemas de Control utilizando


Observadores Dinámicos de
Estado
Consideremos el sistema lineal :

.
x  Ax  bu
y  Cx

x  ; u  ; y 
n
Ahora solo tenemos disponible la
salida :

.
u (t ) x  Ax  Bu y (t )
y  Cx
Hay que tratar de reconstruir el
estado a partir del conocimiento del
sistema (A,b,c), de las mediciones
realizadas sobre la salida y y del
valor de u
u (t )
x(t )
Observador
de
Luenberger
y (t )
La idea es utilizar el estimador de estado
en el esquema de control como si el valor
del estado estimado coincidiera con el
vector de estado
.
u (t ) y (t )
x  Ax  Bu
y  Cx

x(t ) Observador
-K de
Luenberger
Para garantizar la validez de este
esquema debemos:

1 Determinar bajo que condiciones se cumple


que el valor del estado estimado converge
al valor del estado verdadero del sistema.
2 Garantizar que durante el lapso de tiempo
en el cual el valor del estado estimado no
coincide con el valor del estado linealizado
verdadero, el sistema linealizado sigue
siendo asintóticamente estable a cero.
Convergencia del error de
estimación a cero
Propongamos un reconstructor
dinámico:
.
^ ^ ^
x   x  u   y ; x(t0 )  x 0
La matriz  y los vectores  y  se
determinarán de forma tal de obtener una
estimación asintótica de los estados del
sistema .
Definamos el error de observación como
la diferencia entre el valor real del vector
de estado y su valor estimado.

 
e  x  x ; e(t0 )  x0  x0
Desconocemos el valor inicial del estado
verdadero por lo que no podemos hacer
ninguna suposición acerca del valor inicial del
error de estimación. En general supondremos
que es distinto de cero.
Establezcamos una ecuación
diferencial que describa el
comportamiento del vector de error
de estimación en términos de las
matrices y vectores que definen
tanto al sistema original linealizado
como al observador propuesto
.
. . 
 

e  x  x  Ax  bu -  Φ x   u   y
 

Sustituyendo x  xe y y  Cx
.
. . 
e  x  x  Ax  Φx  bu   u   Cx  Φe

e   A    C x  (b   )u  e
.
La dinámica del error de observación no
debe depender ni de los valores de las
acciones de control ni de los valores
que las mismas producen en los
estados del sistema
¿Como lograr esto?

A    C  0 ; b    0

   A  C ; b 
El error de estimación evolucionará de
acuerdo con una dinámica lineal y
AUTÓNOMA dada por:

e   A  C e
.

e(t 0 )  e0

Es evidente que el comportamiento del error


de estimación dependerá de la naturaleza de
los autovalores de la matriz A-C.
Escogiendo adecuadamente  se
garantizará que los autovalores de
A- C se encuentren en el
semiplano izquierdo del plano
complejo con lo que se garantiza la
convergencia del error a cero y por
lo tanto la convergencia del estado
estimado al estado real.
Veamos el esquema que va adoptando
el observador:
.
 
x  ( A  C ) x  bu  y
.
  
x  A x  bu  y  
C x

.
y
  
x  A x  bu   ( y  y )
 
y Cx
El observador dinámico del vector de
estados puede representarse entonces
como:
y 
 
y
 

 x y

b  C
u 
A

x
El observador de estado es una
emulación, con capacidad
autocorrectora, de la dinámica del
sistema cuyo estado se desea
reconstruir

¿Que representa el vector ?


El vector de parámetros  juega un
papel de realimentador del error de
estimación y esta realimentación la que
trata de corregir la discrepancia entre el
valor verdadero del vector de estados y
el valor estimado.
¿Si la salida estimada coincide con
la salida del sistema esto implica
que el estado estimado coincida
con el estado verdadero?

¡NO NECESARIAMENTE!
Quien puede garantizar eso es la
condición de
OBSERVABILIDAD
Estabilizar asintóticamente el error de
estimación a cero puede verse como un
problema de control.
Analizaremos el sistema dual:
.
z  A z C v
T T

v   z T

¿Bajo que condiciones puede estabilizarse a


cero este sistema con la realimentación lineal
del estado?
El par (AT, CT) debe ser CONTROLABLE
En lazo cerrado:

  z  ( A  C )
.
z  A C 
T T T T
z

Los autovalores de una matriz cuadrada


coinciden con los de su traspuesta por lo
que si los autovalores de (A-C)T están en el
semiplano izquierdo del plano complejo los
de A-C también lo estarán

Los autovalores de A-C son los que


gobiernan la dinámica autónoma del error de
estimación
La condición de controlabilidad de
(AT,CT) es:

rank C T T
A C T
.... A
T

n 1
C T
 n
 C 
 CA 
Que es igual a: rank  n
  
CAn 1 
 
Condición de OBSERVABILIDAD del
sistema linealizado original
CONCLUSIÓN
La condición necesaria y suficiente para
que exista un vector de ganancia del
observador  que coloque los polos del
sistema lineal que representa el error de
observación en el semiplano izquierdo
del plano complejo y por lo tanto,
produzca un error de observación
asintóticamente estable a cero es que el
sistema linealizado original sea
OBSERVABLE
La segunda cuestión que debemos
garantizar es que durante el lapso
de tiempo en el cual el valor del
estado estimado no coincide
exactamente con el valor del estado
linealizado, el sistema,
erróneamente controlado sea
asintoticamente estable a cero.
Estudiemos la validez del siguiente
esquema de control realimentado:
u  x  
b  C 
 y
y
A  C


 x
b 

A
-K
Las ecuaciones del sistema en lazo
cerrado son:
.
x  Ax  bu

u  K x
.
 
 
  
x  A x  bu    y  y    A  C  x  bu  C x
 
 
yCx
Reescribiendo en una sola ecuación
de estado aumentado:

 
.
x
.   A  bK   x
   C
    

A   C  bK   x 
 x 
Es difícil ver el efecto de los vectores de
diseño K y  en esta ecuación pues los
autovalores de esta matriz no son fáciles de
discernir
Transformemos el sistema de manera tal
que el nuevo vector de estados esté
formado por los estados de la planta y el
error de estimación:

 x  I 0   x

e   I  I   x

      
P
La matriz P es invertible y su inversa es
igual a ella misma P=P-1. El sistema
transformado queda como:

   A  bK
.
bK   x
x
.    
A  C   e 
 e   0
Los autovalores de esta matriz son la unión de
los autovalores de la matriz A-bK y de la matriz
A-C
Conclusión
El esquema de control es válido si y
solamente si los autovalores de A-bK y de
A-C se ubican en el semiplano izquierdo
del plano complejo lo cual se logra con
una escogencia apropiada de los vectores
Ky

Lo anterior es posible si los pares (A,b) y


(C,A) son respectivamente controlables y
observables y es su defecto el par (A,b) debe
ser estabilizable y el par (C,A) detectable.
Ejemplo:
Retomemos el caso del
manipulador robótico.
Paso 1.- Comprobar que el sistema
es totalmente observable

rank O = 2 por lo que el sistema es


completamente controlable
Paso 2.- Encontrar el vector de
ganancias de la realimentación del
error de salida.

Hay que lograr que el error vaya


asintóticamente a cero.
Polinomio característico
3.- Establecer el polinomio
característico deseado, igualar
términos y encontrar los valores del
vector 
4.- Construir el observador

5.- Construir la ley de control con las


variables estimadas.
Programa en MATLAB
function xdot = manrobobs(t,x)
%manrobobs.m
%
%Ejemplo de simulación numérica
%El ejemplo representa un brazo manipulador robotico
controlado
%por una ley de control lineal por realimentacion del estado
%utilizando un observador de estados
%
%El programa requerido para realizar las simulaciones y
%obtener las graficas es smanrobobs.m
%
%
%parametros del sistema
B=1e-2; J=4e-2; c=58; X1d=1;
d=70; e=8; m=130; n=150;
%
%Ganacias del observador
eta1= m+n-B/J;
eta2= m*n-B*eta1/J-c*cos(X1d)/J;
%
%Ley de control no lineal
%
K1=d*e*J-c*cos(X1d);
K2=J*(d+e)-B;
Ue=c*sin(X1d);
u=-K1*(x(1)-X1d)-K2*x(4)+Ue;
%
%Modelo linealizado del manipulador robotico
xdot=[x(2);
-c*sin(x(1))*x(1)/J-B*x(2)/J+u/J;
x(4)+eta1*(x(1)-X1d-x(3));
-c*cos(X1d)*x(3)/J-B*x(4)/J+(u-Ue)/J+eta2*(x(1)-X1d-
x(3))];
Programa para simular y graficar
% smanrobobs.m
%
%Programa de simulacion de la respuesta controlada de un
%manipulador robotico que muestra las graficas
%
%El sistema es controlado por realimentacion del estado
%utilizando un observador de estados
%
%
%tiempo de simulacion
tspan=[0 0.2];
%
%Condiciones iniciales
x0=[0.1 0 0.3 0]';
%
%Simulacion numerica
[t,x]=ode23('manrobobs',tspan,x0);
%
%Parametros
B=1e-2; J=4e-2; c=58;
d=70; e=8; X1d=1;m=130; n=150;
%
%Ganancias del observador
eta1= m+n-B/J;
eta2= m*n-B*eta1/J-c*cos(X1d)/J;
%
%expresion de la ley de control
%Ley de control
K1=J*d*e-c*cos(X1d);
K2=J*(d+e)-B;
Ue=c*sin(X1d);
u=-K1*(x(:,1)-X1d)-K2*x(:,4)+Ue;
%
% Salida observador
x1l=x(:,3)+X1d;
%Graficos
%
clf
subplot(221),plot(t,x(:,1),t,x1l)
title('Posición angular del brazo')
ylabel('x1, x3')
xlabel('t [seg]')
subplot(222), plot(t,x(:,2),t,x(:,4))
title('Velocidad angular del brazo')
ylabel('x2, x4')
xlabel('t [seg]')
subplot(223),plot(t,u)
title('Torque externo aplicado')
ylabel('u')
xlabel('t [seg]')
Trabajo Práctico 7

Diseñar el controlador para el


sistema de posicionamiento del
satélite con el observador y simular
el sistema.
Datos para la simulación:
F=200 ; L=3 , R=20 ; J=50; d=2.5
Polos de lazo cerrado deseados para
el sistema controlado sin observador
a=-2 ; b=-3.5 ; c=-12.75
Polos de lazo cerrado deseados para
el observador
d=e=f= -5
Condiciones Iniciales Obs:
x1=2 ; x2=0 ; x3=0

Condiciones Iniciales Sist:


x1=1 ; x2=0 ; x3=0
Observadores de Orden Reducido
Supóngase que se dispone, como salidas del
sistema, de un número n1 < n de variables
de estado representadas por el vector x1.
Trataremos de desarrollar un observador
que permita hallar el valor estimado del
resto de las variables de estado que
supondremos que son en número n2, donde
n1+ n2 n. Representaremos las variables no
medibles como x2.
 x1  n  n2
x     1

 x2 
Sin perdida de generalidad supondremos
que las variables de estado medibles
ocupan las n1 primeras posiciones del
vector de estados

n1 n2
x1   ; x2   ; x   n

Particionando las matrices que intervienen


en el sistema linealizado:
 . 
 A
 1   11
x A12   x1   b1 
   u
 .   A21  
A22   x2  b2  
 x2 
Con ecuación de salida: y  x1
n1 n1 n2 n1
A11   ; A21  
n1 n2 n2 n2
A12   ; A22  
n1 n2
b1   ; b2  
Lo que debemos es estimar las variables de
estado contenidas en x2.
Reescribiendo las ecuaciones de estado
linealizadas:
.
x2  A21 x1  A22 x2  b2u
.
A12 x2  y  A11 y  b1u

Como y y u son conocidas es concebible que


también podamos conocer como señal del tiempo
el vector n1 dimensional dado por la segunda
ecuación . Designaremos este vector como y2 .
.
y2  A12 x2  y  A11 y  b1u

El problema de estimación de x 2 puede


verse como el problema de reconstruir el
estado del subsistema dado por:
.
x2  A22 x2  v1
y2  A12 x2
Donde v1 =A21+b2u es completamente conocido,
al igual que la señal y2
La reconstrucción del estado linealizado
desconocido x2 es factible si el par (A12, A22)
es observable o en su defecto, simplemente
detectable.

Se demuestra que el sistema original es observable


(detectable) entonces el subsistema anterior
también lo es. (Propuesto)
Entonces, lo que debemos es reconstruir el estado de:
.
x2  A22 x2  v1
y2  A12 x2
Un observador de este sistema se obtiene
como:
. 
x2  A22 x2  v1  2 ( y2  y2 )
y2  A12 x2

El error de estimación estaría dado por:


.
e2   A22  2 A12 e2

Debemos encontrar una matriz 2 tal que la


dinámica del error sea asintóticamente estable
¿Está solucionado el problema?
El observador requiere de la señal y2 que requiere
la derivación de x1. Tal práctica no es aconsejable
en problemas reales ya que los derivadores ideales
son circuitos altamente inestables sin aplicabilidad
práctica.
Rescribamos la ecuación del observador:
.
  .  
x2  A22 x2  A21 y  b2u  2  y  A11 y  b1u  A12 x2 
 
 .
 ( A22  2 A12 ) x2  ( A21  2 A11 ) y  (b2  2b1)u  2 y
Agrupando:
d     
 x2  2 y    A22  2 A12  x2  2 y    A22  2 A12 2 y 
dt    
 A21  2 A11  y  b2  2b1 u

Haciendo: z2  x2  2 y
d
z2   A22  2 A12 z2   A22  2 A12 2 y 
dt
 A21  2 A11  y  b2  2b1 u

x2  z2  2 y
La reconstrucción del estado linealizado
desconocido x2 es factible si el par (A12, A22)
es observable o en su defecto, simplemente
detectable.

Se demuestra que el sistema original es observable


(detectable) entonces el subsistema anterior
también lo es. (Propuesto)
Entonces, lo que debemos es reconstruir el estado de:
.
x2  A22 x2  v1
y2  A12 x2
Un observador de este sistema se obtiene
como:
. 
x2  A22 x2  v1  2 ( y2  y2 )
y2  A12 x2

El error de estimación estaría dado por:


.
e2   A22  2 A12 e2

Debemos encontrar una matriz 2 tal que la


dinámica del error sea asintóticamente estable
¿Está solucionado el problema?
El observador requiere de la señal y2 que requiere
la derivación de x1. Tal práctica no es aconsejable
en problemas reales ya que los derivadores ideales
son circuitos altamente inestables sin aplicabilidad
práctica.
Rescribamos la ecuación del observador:
.
  .  
x2  A22 x2  A21 y  b2u  2  y  A11 y  b1u  A12 x2 
 
 .
 ( A22  2 A12 ) x2  ( A21  2 A11 ) y  (b2  2b1)u  2 y
Agrupando:
d     
 x2  2 y    A22  2 A12  x2  2 y    A22  2 A12 2 y 
dt    
 A21  2 A11  y  b2  2b1 u

Haciendo: z2  x2  2 y
d
z2   A22  2 A12 z2   A22  2 A12 2 y 
dt
 A21  2 A11  y  b2  2b1 u

x2  z2  2 y
Observadores de Orden Reducido
Supóngase que se dispone, como salidas del
sistema, de un número n1 < n de variables
de estado representadas por el vector x1.
Trataremos de desarrollar un observador
que permita hallar el valor estimado del
resto de las variables de estado que
supondremos que son en número n2, donde
n1+ n2 n. Representaremos las variables no
medibles como x2.
 x1  n  n2
x     1

 x2 
Esta ecuación diferencial representa un
observador dinámico para la parte
medible del sistema original El estado
estimado x2 lo podemos obtener como
salida del sistema que genera a la
variable auxiliar z2.
Esquema del observador de orden reducido

2

  z2 

(A22-2A12) 2+(A21- 2A11)  
y   x2

(b2-2b1) (A22-2A12)

Вам также может понравиться