Está en la página 1de 24

Captulo 8

Diseo de Observadores de Estado

Los observadores de estado, son herramientas virtuales, que permiten estimar las
variables o estados de un sistema basndose en mediciones de las seales de salida.
Estos observadores permiten enviar informacin estimada acerca del valor que toman
dichos estados, permitiendo conocer un aproximado del valor real, adems cuentan con
muy poco margen de diferencia o error, sobre todo en una etapa inicial que podramos
considerar de sintona. Posteriormente, la estimacin de la salida es muy precisa.
Para poder comprender el empleo de los Observadores de Estado, debemos tener una
idea de la funcin completa de un sistema controlado. Los Controladores de Estado se
van a encargar de manipular al sistema de una manera estable hacia salidas esperadas,
pero para funcionar adecuadamente deben realimentarse todos los estados del sistema,
lo cual es un concepto que ya fue tocado en el captulo correspondiente.
Los observadores son tiles debido a que muchas veces los estados necesarios para la
realimentacin mediante el controlador, no estn disponibles por motivos muy sencillos:
a.

b.

Los Sensores No Existen: Es obvio que para realimentar un estado, ste debe ser
sensado. Si el sensor an no ha sido inventado, la realimentacin sera imposible,
como es el caso de las reacciones nucleares o de estados de orden elevado como la
derivada de la aceleracin.
Los Sensores son Demasiado Caros: Un motivo frecuente. Normalmente
queremos medir estados como posicin, aceleracin, variacin de ngulo, tensin,
y ellos solamente pueden ser sensados por instrumentos de medicin
extremadamente caros con respecto al sistema a controlar. Por ejemplo, colocarle

Enfoque Prctico del Control Moderno

c.

un Girocomps Lser a un automvil para determinar la velocidad crucero, lo


hara no comercial debido a su precio.
Los Sensores producen Demasiado Ruido: Esta es una funcin indirecta que
podemos explotar de los Observadores de Estado. Cuando los sensores producen
demasiado ruido, los Observadores, debido a sus caractersticas de frecuencia,
filtrarn una buena parte o su totalidad.

A los Observadores de Estado, se les considera una herramienta virtual, puesto que son
software que corrige y estima al sistema.
8.1. Tipos de Observadores de Estado:
Existen 2 tipos de observadores: observadores de orden completo, y observadores de
orden reducido u orden mnimo.
a. Los observadores de orden Completo, son aquellos utilizados para observar o
estimar todos los estados de un sistema.
b. Los observadores de orden Reducido, son aquellos utilizados para observar o
estimar slo algunos estados de un sistema, los cuales no sern tratados en este
texto.
8.2. Observadores de Estado de Orden Completo:
Dado el sistema:

x& = Ax + Bu
y = Cx + Dx

Es factible asumir estados estimados para un sistema conocido, pero como ellos no son
exactos y deseamos reproducir fielmente el sistema real, debemos agregarle una
proporcin del error entre las salidas del sistema, o factor de correccin, con la finalidad
de compensarlo:
Sistema Real:
Sistema Estimado u Observado:

x& = Ax + Bu
~
x& = A~
x + Bu + L( y ~
y)

donde:
L

~
x
y

188

Vector de ganancias que


permiten la observacin de
estados (1 x n)
Vector de estados estimados
Salida estimada

Captulo 8

Debe notarse que las matrices A, B, C, D son las mismas tanto para un sistema real
como para el sistema estimado.

La diferencia existente entre x y ~


x se denomina error de observacin, y el trmino
~
L( y y ) se denomina factor de correccin.
Para determinar el error de observacin restamos x& ~
x& , as tenemos:
x& ~
x& = ( Ax + Bu ) ( A~
x + Bu + L( y ~
y ))
~
~
~
x& x& = Ax Ax L( y y )
~
x& x& = A( x ~
x ) L(Cx + Du C~
x Du )
~
~
~
x& x& = A( x x ) LC ( x x )
x& ~
x& = ( A LC )( x ~
x)
Como habamos mencionado, el error esta definido como la diferencia entre el estado
real y el estado estimado, entonces se tendr:
e= x~
x
e& = x& ~
x&
e& = ( A LC )e
A partir de esta expresin se puede conocer el comportamiento dinmico y la
estabilidad del sistema, si la matriz |A-LC| es estable, entonces el observador har bien
su trabajo, y dada cualquier condicin inicial, el sistema tender a un error cero.
La eleccin de correctos valores para el vector de observabilidad L, permitir que el
comportamiento dinmico del vector de error sea estable y lo suficientemente rpido
para tender a un valor de cero.

189

Enfoque Prctico del Control Moderno

La estabilidad y la velocidad de respuesta de la dinmica del error se determina


mediante los autovalores de la matriz |A-LC|, dados por el polinomio caracterstico |sIA+LC|.
Existe una condicin necesaria, la cual consiste en que el sistema obtenido sea estable y
completamente controlable y observable.
Ejemplo E.8.1: Determinar el polinomio caracterstico del sistema siguiente, si se le
agrega un observador de estados L.
0 2
0
x& =
x + u

1 4
1
y = [0 1]x + [0]u
Solucin:
Si el sistema es de orden 2, es de suponer que el observador tambin ser de orden 2, y
lo podemos definir como:
l
L = 1
l 2
Luego el polinomio caracterstico estar dado por:
1 0 0 2 l1

+ [0 1]
0 1 1 4 l 2
s 0
0 2 0 l1
[sI A + LC ] =

+
0 s 1 4 0 l2
s
2 + l1
[sI A + LC ] =

1 s + 4 + l 2
[sI A + LC ] = s( s + 4 + l 2 ) + (2 + l1 )

[sI A + LC ] = s

[sI A + LC ] = s 2 + (4 + l2 ) s + (2 + l1 )

8.3. Diseo de Observadores de Estado:

Para calcular el valor del Observador de Estados, vamos a desarrollar tres formas que
pueden utilizarse a conveniencia de cada uno.
8.3.1. Algoritmo para el Clculo del Observador de Estados:

a.

190

Determinar la matriz de observabilidad y verificar la observabilidad del


sistema:
C
CA

Observabilidad: =
M
n 1
CA

Captulo 8

b.

Calcular el polinomio caracterstico original |sI-A|, el cual ser:


|sI-A| = sn + a1sn-1 + a2sn-2 + + an-1s + an

c.

Es conveniente trabajar con las ecuaciones de estado en su forma cannica


observable, si no se encuentra en esta forma, se debe determinar una matriz
de transformacin para llevarla a esta forma, la cual se define como:
Q = (W x )-1
En donde es la matriz de observabilidad, y W se define como:
a n 1
a
n2
W = M

a1
1

a n2
a n 3
M
1
0

K a1
K 1
N M
L 0
L 0

1
0
M

0
0

En donde a1, a2, an-2, an-3, son los coeficientes del polinomio
caracterstico original |sI-A|.
d.

Se determina el polinomio caracterstico deseado a partir de:


(s-1) (s-2) (s-3) (s-n)
donde i es un polo deseado, obtenindose:
sn + b1sn-1 + b2sn-2 + + bn-1s + bn

e.

Finalmente, el observador de estados L se calcula a partir de la siguiente


expresin:
bn a n
b a
n 1
n 1
L = Q bn 2 a n 2

b1 a1

Ejemplo E.8.2: Para el siguiente sistema, determinar el observador de estados L, si se


quiere que los polos deseados del observador se ubiquen en -5, -2+j y -2-j
1
0
0
0

0
1 x + 0u
x& = 0
2 1 2
1
y = [1 0 0]x + [0]u

191

Enfoque Prctico del Control Moderno

Solucin:
a.

Observabilidad
1 0 0
= 0 1 0
0 0 1
rank( ) = 3
det( ) = 1

b.

El sistema es observable

Calculamos los coeficientes del polinomio caracterstico:


1
0
s 0 0 0

sI A = 0 s 0 0
0
1
0 0 s 2 1 2
s 1
0
sI A = 0 s
1
2 1 s+2
sI A = s ( s 2 + 2 s + 1) + 2

sI A = s 3 + 2 s 2 + s + 2
sI A = s 3 + a1s 2 + a2 s + a3

Donde los coeficientes son a1 = 2 , a2 = 1 y a3 = 2 .


c.

Q = ( W x )-1
a 2 a1 1 1 2
W = a1 1 0 = 2 1
1 0 0 1 0
1 2 1 1 0 0 1
W = 2 1 0 0 1 0 = 2
1 0 0 0 0 1 1
1
0 0

Q = 0 1 2
1 2 3

d.

1
0
0
2 1
1 0
0 0

Determinamos los coeficientes del polinomio caracterstico deseado:


(s - 1) (s - 2) (s - 3) = s3 + b1s2 + b2s + b3
(s - 1) (s - 2) (s - 3) = (s + 5) (s + 2 + j) (s + 2 - j)
(s - 1) (s - 2) (s - 3) = (s + 5) (s2 + 4s + 5)

192

Captulo 8

(s - 1) (s - 2) (s - 3) = s3 + 9s2 + 25s + 25
Donde los coeficientes son b1 = 9 , b2 = 25 y b3 = 25 .
e.

El Observador de Estados es:


1 23
b3 a3 0 0

L = Q b2 a 2 = 0 1 2 24
b1 a1 1 2 3 7
l1 7
L = l 2 = 10
l 3 4

8.3.2. Algoritmo de Ackerman:

La frmula de Ackerman aplicada al diseo de observadores de estado, esta dada


por:
0

1 0
L = ( A)
M

1
En donde (s ) es el polinomio caracterstico deseado, pero en vez de la variable
de Laplace s se evala en la matriz A: ( A) .
Ejemplo E.8.3: Determinar el observador de estados L, con polos deseados ubicados en
-3+j y -3-j, para el siguiente sistema:

0 1
0
x& =
x + u

1 2
1
y = [0 1]x + [0]u
Solucin:
a.

Determinamos el polinomio caracterstico deseado:

( s ) = ( s 1 )( s 2 )

( s ) = ( s + 3 j )( s + 3 + j )
( s ) = s 2 + 6 s + 10

b.

Evaluamos el polinomio caracterstico deseado en A:


( A) = A 2 + 6 A + 10 I

193

Enfoque Prctico del Control Moderno

0 1
0 1
1 0
( A) =
+ 6
+ 10

1 2
1 2
0 1
1 2 0 6 10 0
( A) =
+
+

2 3 6 12 0 10
9 4
( A) =

4 1
2

c.

Calculamos la matriz de observabilidad, y aprovechamos para determinar la


observabilidad:
C
=
CA
0 1
=

1 2
El sistema es observable.

d.

Calculamos la inversa de la matriz de observabilidad:


0
=
1
0
1
1 =
0
1
1

1
2

1
2
1
2

2 1
1 0

1 =
1
2 1
1 =

1 0
e.

Aplicamos la Frmula de Ackerman:


0
L = ( A) 1
1
9 4 2 1 0
L=


4 1 1 0 1
9 4 1
L=

4 1 0
9
L=
4

194

Captulo 8

9
El Observador de Estados es: L =
4
8.3.3. Mtodo por Excepcin:

Analizando la respuesta del ejemplo E.8.1, se aprecia que los valores que toman
l1 y l2 estn en funcin del polinomio caracterstico y del polinomio caracterstico
deseado. Este ltimo depende de los polos deseados para el observador. Es un
caso similar al que desarrollamos en los controladores.
Por lo tanto podemos asumir valores para dichas races, a los que llamaremos 1
y 2 de modo tal que el polinomio tenga una respuesta estable. Luego, por
simple equivalencia de trminos, podemos hallar el valor de las incgnitas.
Podemos generalizar la metodologa que se va a presentar, diciendo que si
tenemos [1 2 3 n], que son los autovalores deseados para la matriz del
observador |A-LC|, stos conforman el polinomio caracterstico (s-1) (s-2) (s3) (s-n).
Este polinomio se iguala al polinomio caracterstico original donde se ha
considerado el observador |sI-A+LC|, crendose una equivalencia entre trminos:
|sI-A+LC| = (s-1) (s-2) (s-3) (s-n)
Resolviendo la equivalencia se podr encontrar el valor del vector L.
Como la solucin depende de un sistema de ecuaciones simultneas, este mtodo
est restringido a sistemas de hasta 3er orden.
Ejemplo E.8.4: Dado el polinomio caracterstico del ejemplo E.8.1:
s2+(4+l2)s+(2+l1)
Determinar el valor de l1 y l2 si se quiere que los polos deseados del sistema se ubiquen
en -4 y -3.
Solucin:
a.

Con los polos deseados, determinamos el polinomio caracterstico deseado:


( s 1 )( s 2 )
( s (4))(s (3))
( s + 4)( s + 3)

s 2 + 7 s + 12

195

Enfoque Prctico del Control Moderno

b.

Asumimos el Observador de Estados como:


l
L = 1
l 2

c.

Con las matrices del sistema y la evaluacin de L, determinamos al polinomio


caracterstico deseado:
sI A + LC
1 0 0 2 l1
s

+ [0 1]
0 1 1 4 l 2
s 0 0 2 0 l1
0 s 1 4 + 0 l



2
s
l1 + 2
1 s + l2 + 4
( s )( s + l 2 + 4) (1)(l1 + 2)

s 2 + (l 2 + 4) s + (l1 + 2)
d.

Igualamos ambos polinomios caractersticos deseados:


s 2 + (l 2 + 4) s + (l1 + 2) = s 2 + 7 s + 12

e.

Al igualar los coeficientes tenemos que:


l1 + 2 = 12
l1 = 10
l2 + 4 = 7
l2 = 3

f.

Por lo tanto el Observador de Estados L, es:


10
L=
3

Es aconsejable que los polos del observador sean de 3 a 5 veces mayores (ms
negativos) que los polos del controlador por realimentacin de estados, pero sin salirse
de la regin de estabilidad. La eleccin de los polos deseados van a determinar las
caractersticas de la respuesta obtenida, por lo que puede existir un conjunto infinito de
vectores L como solucin, de las cuales slo un limitado nmero de soluciones cumplen
con las necesidades requeridas para el sistema (como por ejemplo: sobreimpulso,
velocidad de respuesta, etc. del sistema estimado), por lo que se aconseja probar,
mediante simulacin, la respuesta del sistema a diferentes valores de polos escogidos.

196

Captulo 8

8.4. Comparaciones con Respecto al Diseo de los Controladores de Estado:

Vamos a usar, por su simplicidad, archivo-m controlador del captulo anterior, que se
encarga de disear los controladores de estado. Este comando tiene la siguiente forma:
K = controlador(A,B,polos_d)
Asimismo, recordemos que existen formas cannicas controlables y observables. Ellas
determinan en el diseo, si es necesaria la matriz de transformacin o no. En otras
palabras, si para el un sistema que tiene forma cannica controlable va a ser utilizado
para disearle u controlador, la matriz de transformacin no ser necesaria porque el
sistema ya se encuentra en la forma establecida. Del mismo modo, para el diseo de
observadores de estado, cuando el sistema est en forma cannica observable.
Las formas cannicas controlable y observable, tienen cierta relacin con respecto a sus
traspuestas, la cual resumiremos en los siguientes cuadros, los cuales han sido
presentados en el captulo de transformaciones:
Forma Cannica Controlable
ACC
BCC
CCC
DCC

Forma Cannica Observable


ACOT
CCOT
BCOT
DCOT

Forma Cannica Observable


ACO
BCO
CCO
DCO

Forma Cannica Controlable


ACCT
CCCT
BCCT
DCCT

Ahora, si asumimos al Comando controlador como algoritmo de diseo de


controladores de estado, tenemos la siguiente expresin:
a.

Para Diseo de Controladores de Estado:


K = controlador(A,B,polos_d)

A, B,
Polos Deseados
b.

Algoritmo de
Controlador

Controlador de
Estados (K)

Para Diseo de Observadores de Estado con el mismo algoritmo de diseo


de Controladores:
L = controlador(A,C,polos_d)

197

Enfoque Prctico del Control Moderno

A, C,
Polos Deseados

Algoritmo de
Controlador

Observador de
Estados (L)

Como conclusin tenemos que todos los algoritmos para el diseo de controladores y
observadores de estado parten del mismo principio, y pueden ser utilizados para el
diseo de ambos, siempre y cuando entreguemos las entradas en la forma cannica
correspondiente o su equivalente.
8.5. Utilizando el Matlab para el Diseo de Observadores de Estado:

Tal como se describi en las comparaciones con respecto al diseo de los controladores
de estado (8.4), vamos a utilizar comandos conocidos del Matlab para el diseo y
simulacin de los Observadores de Estado. Adicionalmente, para los casos SISO, se
pueden emplear los comandos acker o place.
Para utilizar cualquiera de estos comandos, debemos considerar a un sistema de la
forma:
x& = Ax + Bu
y = Cx + Dx
y a un vector de polos deseados: P = [1

2 L n ]

Con ellos escribimos los comandos de la siguiente manera:


L =controlador (A,C,P)
L = place (A,C,P)
L = acker (A,C,P)
Ejemplo E.8.5: Para el siguiente sistema, determinar el vector de observadores de
estados L, si se requiere que los polos deseados se ubiquen en -2, -1+j y -1-j
0
x& = 0
3
y = [2

0
0

0
1 x + 0u
1
2 1
1

0 0]x + [0]u

Solucin:
Digitar en Matlab los siguientes comandos para obtener las soluciones:
A = [0 1 0; 0 0 1; -3 -2 -1];
C = [2 0 0];
P = [-2 -1+j -1-j];
L = acker(A',C',P)'

198

Captulo 8

Para lo cual, el Matlab responde:


>>L = 1.5000
0.5000
-3.0000
o tambin:
L = place(A',C',P)'
Para lo cual, el Matlab nuevamente responde:
>>L = 1.5000
0.5000
-3.0000
Es decir, el Observador de Estados para este sistema es:
1 .5
L = 0.5
3.0

8.6. Observador de Estado en Sistemas de Lazo Cerrado:

Veamos como sera la representacin de un Sistema de Lazo Cerrado mediante el


Observador de Estados:

En la prctica real, tal vez un estado de x(t ) no pueda medirse y sea necesario generar
un estado observado ~
x para la realimentacin.
(t )

199

Enfoque Prctico del Control Moderno

Por lo tanto la Ley de realimentacin sera:


u = K~
x

Si cerramos el lazo y lo reemplazamos en la ecuacin del sistema:


x& = Ax BK~
x

Si a esa ecuacin sumamos y restamos BKx :


x& = Ax BK~
x + BKx BKx

Donde quedara:

x& = ( A BK ) x + BK ( x ~
x)

Como ya lo habamos aplicado, reemplazamos:


e= x~
x
Donde obtenemos:

x& = ( A BK ) x + BKe

Sabiendo de la teora de observadores que:


e& = ( A LC )e
Podemos concluir un nuevo sistema de caso homogneo de lazo cerrado mediante el
observador:
BK x
x& A BK
e& = 0
A LC e

Este sistema ser estable si sus polos tienen parte real negativa, y los polos del sistema
los encontramos en la siguiente ecuacin caracterstica:
sI A + BK sI A + LC = 0

Ejemplo E.8.6: Determinar el nuevo sistema de lazo cerrado con observador, de un


sistema original siguiente:
0
0 1
x& =
x + u

1
18.1 0
y = [1 0]x + [0]u
Donde los polos deseados del controlador sean 2.43.6j y los del observador sean 12.

200

Captulo 8

Solucin:
Diseando al controlador de estados:
sI A + BK = ( s + 2.4 j 3.6)( s + 2.4 + j 3.6)
s 0 0 1 0
0 s 18.1 0 + 1[k1

k 2 ] = ( s + 2 .4 ) 2 ( j 3 .6 ) 2

1 0 0
s
2
18.1 s + k k = ( s + 4.8s + 5.76) (12.96)

1
2
1
s
= s 2 + 4.8s + 18.72
k1 18.1 s + k 2
( s )( s + k 2 ) (1)(k1 18.1) = s 2 + 4.8s + 18.72
s 2 + k 2 s + (k1 18.1) = s 2 + 4.8s + 18.72
Igualando coeficientes:
k1 = 36.82
k 2 = 4.8
El Controlador de Estados es:

K = [36.82 4.8]

Ahora diseamos el Observador de Estados:


sI A + LC = ( s + 12)( s + 12)

s 0 0 1 l1
2
0 s 18.1 0 + l [1 0] = ( s + 12)
2


1 l1 0
s
2
18.1 s + l 0 = s + 24s + 144

s + l1
1
= s 2 + 24 s + 144
l 2 18.1 s

( s + l1 )( s ) (l 2 18.1)(1) = s 2 + 24 s + 144
s 2 + l1 s + (l 2 18.1) = s 2 + 24 s + 144
Igualando coeficientes:
l1 = 24
l 2 = 162.1
El Observador de Estados es:
24
L=

162.1

201

Enfoque Prctico del Control Moderno

Si tratamos de llegar a la forma general del sistema de lazo cerrado mediante el


Observador de Estados, debemos reemplazar, tanto las matrices del sistema como al
Controlador de Estados y al Observador de Estados en ella.
x& A BK
e& = 0

BK x
A LC e
Donde:
x
e
x = 1 y e = 1
x2
e 2

x&1 0 1 0
x1
0

36
.
82
4
.
8
36
.
82
4
.
8
[
]
[
]



1

x& 2 = 18.1 0 1
x2
e&1
e
0 0
0 1 24
[1 0] 1

0 0
18.1 0 162.1
e 2
e&2
x&1 0 1 0
x1
0
0
0

36.82 4.8
x& 2 = 18.1 0 36.82 4.8
x2
e&1
0 0
0 1 24 0 e1

18.1 0 162.1 0 e
0 0


2
e&2
x&1 0

x& 2 = 18.72
e&1
0

0

e&2

1 0
4.8 36.82
0
24
144

0 x1

4.8 x 2
1 e1

0 e2

Con lo que el sistema de lazo cerrado sera:


1
0
0 x1
x&1 0
x 18.72 4.8 36.82 4.8 x
&2 =
2
e&1 0
0
1 e1
24


0
144 0 e2
e&2 0

8.7. Consideraciones Adicionales:

Los Observadores de Estado para sistemas con ms de una salida, tienen un


procedimiento de solucin muy largo. De esta manera hallaremos una alternativa ms
sencilla.

202

Captulo 8

Consideremos al sistema de la siguiente manera:


x& = Ax + Bu
y = Cx + Dx
~
x& = A~
x + Bu + L( y ~
y)
Asumimos las siguientes matrices:

L = [L1

L2 ]

y
y = 1
y2
C
C = 1
C 2

Donde Li es un vector columna, Ci es un


vector fila e i son los valores 1 y 2.
Reemplazando las asunciones y operando matricialmente:
y C
0
L( y ~
y ) = L 1 1 ~
x + u
0
y 2 C 2
y C
L( y ~
y ) = [L1 L2 ] 1 1 ~
x
y
C
2 2
x
y C1 ~
L( y ~
y ) = [L1 L2 ] 1
~
y2 C2 x
L( y ~
y) = L (y C ~
x) + L (y C ~
x)
1

Colocando este resultado en la ecuacin del sistema original, tenemos:


~
x& = A~
x + Bu + L1 ( y1 C1 ~
x ) + L2 ( y 2 C 2 ~
x)
Debido a las propiedades de separabilidad lineal, para sistemas lineales podemos
asumir:
a.

sI A + L1C1 = Polinomio Caracterstico Deseado, y

b.

sI A + L2 C 2 = Polinomio Caracterstico Deseado.

Con estas ecuaciones (a y b), resolvemos L1 y L2 .


Por lo tanto:

L = [L1

L2 ]

203

Enfoque Prctico del Control Moderno

Es importante resaltar que para todos los casos puede usarse el mismo polinomio
caracterstico deseado, cuando no se especifica que stos deben ser diferentes.
Del mismo modo, se deben verificar las propiedades de observabilidad de L1 y L2 . Si
L1 y L2 son observables, entonces L es observable.
Si alguna de las Li no es observable o si una de las salidas no se necesita observar,
simplemente sta se puede dejara de considerar y se reduce el orden del L completo,
Pero se debe tener mucho cuidado con la Ecuacin de Estado, por ejemplo si tenemos
un sistema con tres salidas:
~
x& = A~
x + Bu + L( y ~
y)
~
x& = A~
x + Bu + [L1

L2

y1 C1

L3 ] y 2 C 2 ~
x
y C
3 3

En este sistema decidimos no considerar a la salida y2, la cual tiene caractersticas no


observables o cuenta con un sensor muy preciso. Con esta decisin, el observador de
estados se reducira de la siguiente manera:
L = [L1

L3 ]

Por lo tanto el nuevo sistema estimado sera:


~
x& = A~
x + Bu + [L1

y C
L3 ] 1 1 ~
x
y
C
3
3

En este tipo de operaciones, es importante tener mucho cuidad con los ordenes de las
diferentes matrices del sistema.
Ejemplo E.8.7: Determinar el Observador de Estados del siguiente sistema:
1
0
0
0

x& = 0
0
1 x + 0u
1
1 5 6

y = [0 1 0]x + [0]u

Asumiendo que los polos deseados del observador estn en 10, -10 y 15.
Solucin:
Utilizaremos las herramientas planteadas para el diseo de controladores de estado y las
propiedades de las equivalencias de lo controladores con los observadores:
Para ello debemos digitar:

204

Captulo 8

clear all
clc
A=[0 1 0;0 0 1;-1 -5 -6];
C=[0 1 0];
polos=[-10 -10 -15]';
L=controlador(A,C,polos)
La respuesta del Matlab es:
El sistema es controlable
-----------------------------------------------------------------------Comprobacion: Deben aparecer los polos deseados que ingreso
polos_deseados = -10.0000 + 0.0000i
-10.0000 - 0.0000i
-15.0000
-----------------------------------------------------------------------Matriz K de controlabilidad
L = 1.0e+003 *
-1.4990
0.0290
0.2210
Como se puede apreciar, los resultados obtenidos mediante el Matlab seran:
1499
L = 29
221

Ejemplo E.8.8: Resolveremos el Ejemplo E.7.3 de este captulo, utilizando la funcin


acker en Matlab. Los polos deseados del observador deben estar en -2.4j3.6.
Solucin:
Recordamos que el sistema es:
0
0 1
x& =
x + u

1
18.1 0
y = [1 0]x + [0]u

Ingresamos a Matlab los datos del ejemplo E.7.3:


A=[0 1;18.1 0];

205

Enfoque Prctico del Control Moderno

C=[1 0];
polos=[-2.4+3.6*j -2.4-3.6*j]';
L = acker(A,C,polos)
El resultado es el siguiente:
L = 24.0000
162.1000
En otras palabras el Observador de Estados es:
24
L=

162.1

Ejemplo E.8.9: Disear un Observador de Estados para un Motor de Posicin cuyo


modelo matemtico fue determinado en el Ejemplo E.4.4, y el Controlador de estados
en el Ejemplo E.7.8, donde la salida del sistema ser solamente la posicin angular. Los
polos deseados para el diseo del Observador son -8j5 y -12.

0
1
L

0 x + 0 u

0
0

y = [0 0 1]x + [0]u
u = [ 2 32.99 34]x

R
L
K
x& =
J
0

K
L
b

J
1

Las constantes del sistema son:


Momento de Inercia del Motor:
Relacin de Amortiguamiento:
Constante de Fuerza Electromotriz:
Resistencia Elctrica:
Inductancia Elctrica:

J = 0.01 kg.m2/s2
b = 0.1 Nms
K =Ke=Kt = 0.01 Nm/Amp
R = 1 Ohm
L = 0.5 H

Solucin:
Como en el ejemplo anterior, el anlisis del sistema lo desarrollaremos con Matlab.
Adicionalmente, utilizaremos los conceptos de las comparaciones de los Controladores
y los Observadores con la finalidad de usar los comandos ya conocidos para los
primeros en los segundos.
Para ello iniciamos nuestro programa, cargamos las constantes del sistema y las
matrices del mismo:
% Motor DC con Control de Posicin.

206

Captulo 8

clear all; close all; clc


% Constantes del Sistema.
J = 0.01; % Momento de Inercia del Motor. (kg.m^2/s^2)
b = 0.1; % Relacin de Amortiguamiento. (Nms)
K = 0.01; % Constante de Fuerza Electromotriz. (Nm/Amp) (K=Ke=Kt)
R = 1; % Resistencia Elctrica. (ohm)
L = 0.5; % Inductancia Elctrica. (H)
% Matrices de Sistema para las Ecuaciones de Estado.
A = [ -R/L -K/L 0
K/J -b/J 0
0
1 0 ];
B = [ 1/L
0
0 ];
C = [ 0 0 1 ];
D = [ 0 ];
K = [ -2 32.99 34 ];
Con los resultados del Matlab, vemos que las ecuaciones de estado son:
2 0.02 0
2

10 0 x + 0u
x& = 1
0
0
1
0
y = [0 0 1]x + [0]u
u = [ 2 32.99 34]x

Disearemos el observador mediante el comando acker del Matlab, donde se colocan


las matrices A y C, y los polos deseados.
% Calculo del Observador
L = acker(A,C, [-8-5j; -8+5j; -12]);
Con este comando, determinamos que el Observador de Estados L, es:
359.72
L = 43.98
16

Planteamos la entrada, los parmetros de tiempo para una simulacin de 6 segundos y


las condiciones iniciales. Dentro de las condiciones iniciales asumiremos que el motor
se encuentra girado en 0.5 radianes (28.6), y asumiremos condiciones iniciales para el
sistema del observador, diferentes a los reales:

207

Enfoque Prctico del Control Moderno

% Entrada Inicial.
u = 1;
% Escaln Unitario.
% Definicin de Tiempos de Simulacin.
ti = 0;
% Tiempo Inicial.
tf = 6;
% Tiempo Final.
dt = 0.001; % Diferencial de Tiempo.
% Condiciones Iniciales.
x = [ 0; 0; 0.5 ];
xo = [ 1; 1; 0 ];
Simulamos agregando al sistema observado, almacenamos los datos para su posterior
ploteo e integramos.
% Simulacin.
k = 1;
for t = ti:dt:tf
CORR(k,1) = x(1,1);
THETAP(k,1) = x(2,1);
THETA(k,1) = x(3,1);
CORRO(k,1) = xo(1,1);
THETAPO(k,1) = xo(2,1);
THETAO(k,1) = xo(3,1);
TIEMPO(k,1) = t;
% Ecuaciones de Estado.
xp = A*x + B*u;
y = C*x + D*u;
xop = A*xo + B*u + L*(C*x-C*xo);% Sistema Estimado u observado.
u = -K*xo; %Realimentacin de Estados Estimados.
Y(k,1) = y;
% Integrando mediante Euler.
x = x + dt*xp;
xo = xo + dt*xop;
k = k + 1;
end
Como ltimo paso, graficamos las variables de estado y la salida:
% Graficamos las Salidas.
figure(1)
subplot(221)
plot(TIEMPO,CORR,b, TIEMPO,CORRO,r:)
title('Estado x1: Corriente')
xlabel('Tiempo (Segundos)')
ylabel('Amperios')

208

Captulo 8

legend(Real,Observado)
grid on
subplot(222)
plot(TIEMPO,THETAP,b, TIEMPO,THETAPO,r:)
title('Estado x2: Velocidad Angular')
xlabel('Tiempo (Segundos)')
ylabel('Radianes/Segundo')
legend(Real,Observado)
grid on
subplot(223)
plot(TIEMPO,THETA,b, TIEMPO,THETAO,r:)
title('Estado x3: Posicin Angular')
xlabel('Tiempo (Segundos)')
ylabel('Radianes')
legend(Real,Observado)
grid on
subplot(224)
plot(TIEMPO,Y,'r')
title('Salida y: Angular Theta')
xlabel('Tiempo (Segundos)')
ylabel('Radianes')
grid on
La figura de la simulacin es la siguiente:
Estado x1: Corriente

Estado x2: Velocidad Angular

10

2
Radianes/Segundo

Amperios

Real
Estimado
0

-10

-20

0.6

2
4
Tiempo (Segundos)
Salida y: Angular Theta

2
4
Tiempo (Segundos)

0.4
Radianes

Radianes

-1

0.6
Real
Estimado

0.4
0.2
0
-0.2

-2

2
4
6
Tiempo (Segundos)
Estado x3: Posicin Angular

Real
Estimado

0.2
0

2
4
Tiempo (Segundos)

-0.2

209

Enfoque Prctico del Control Moderno

Se puede apreciar como las variables observadas o estimadas, comienzan en lugares


diferentes, tal como se indic al comienzo del ejemplo, y conforme el tiempo transcurre
el error entre la seal original y la estimada desaparece.
Esto indica que el observador est trabajando correctamente y que ha sido bien
diseado.
Es importante resaltar que es muy til comenzar con condiciones iniciales para el
sistema observado, diferentes a las del sistema real ( ~
x( o ) x( o ) ). Esto es conveniente
porque si comenzaran con el mismo valor y el observador fuese muy bueno, las seales
se montaran una sobre la otra y no tendramos la certeza de que est trabajando
correctamente. Adems, si el observador trabajara muy mal, posiblemente las seales no
aparezcan en la figura por el error generado. Este ltimo caso es bastante raro, pero
puede ocurrir.

210

También podría gustarte