Sei sulla pagina 1di 59

/59

Sistemas dinamicos
Realimentacion de la salida
1
/59
Contenido
1. El estimador de estado
2. El observador a lazo abierto
3. El observador a lazo cerrado
4. Diseo del observador
5. El observador de orden reducido
2
/59
EL ESTIMADOR DE ESTADO
3
/59
El observador de estado
El control por realimentacion de estados asume la
disponibilidad de todas las variables de estado.







En la practica, sin embargo, este puede no ser el caso, ya
sea porque ciertos estados no son medibles, o es muy
dificil o muy caro medirlos.

4
u r K = x
/59
El observador de estado
A fin de implementar una realimentacion de
estados debemos entonces disear un dispositivo
dinamico cuya salida sea una estimacion del vector
de estados:


5
El observador de estados

x
es una estimacion de x
Bu
y C
= +

x Ax
x
/59
Arquitectura del control
6

( ) t u
( ) t x
( )
1
s

I A B
K
Compensator
State Observer
C
( ) t x
Open Loop System
( ) ( )

u t K t = x
Se usa una estimacion
del estado para generar
el control
Se asume el sistema
conocido, con D = 0
Bu
y C
= +

x Ax
x
( ) ( ) ( )
y t y t Du t =
Resultados validos si
remplazando y(t) por
0 D =
/59
EL OBSERVADOR A LAZO
ABIERTO
7
/59
El observador a lazo abierto
Usando solo la entrada para exitar el estimador de lazo
abierto
Si el sistema y el observador tienen las mismas
condiciones iniciales, entonces, para,
para cualquier entrada
8
Conociendo A y B,
duplicar la ecuacion de
estados original
0 > t ( ) ( )
x t x t =
) (t u ) (t y b
s
1
+
A
c
x x
b
s
1
+
A
x

x
Bu
y C
= +

x Ax
x
Bu = + x Ax
Idea:
/59
Calculo del estado inicial




Si el sistema es observable, su estado inicial x(0) puede
ser calculado de u y y en cualquier intervalo de tiempo,
por ejemplo, [0, t
1
].






9
Como hallar el estado inicial x(0) del sistema para usarlo en el
observador?
/59
Calculo del estado inicial
Pasos a implementar en el observador:

1. Calcular el estado inicial x(0)




2. Calcular el estado en t
2
y hacer


10
( ) ( ) = x t x t
2 2
( ) ( ) = x t x t
2 1
t t >
Entonces:
para todo t > t
2
.
algun problema?
/59
Dinamica del error
La ecuacion del error de estimacion esta dada por




Si A es Hurwitz, entonces 0 cuando t .
11
( ) ( ) ( ) ( )

0
At
x t x t x t e x = =
( )
x t
Por lo tanto, la dinamica del error esta completamente
determinada por la dinamica en lazo abierto del
sistema
(los valores propios de la matriz A).
algun problema?
/59
Limitaciones del observador a lazo abierto
El observador en lazo abierto tiene las siguientes
importantes desventajas:


Aun con la matriz A estable, esta dinamica pudiera ser
muy lenta.

Si A tiene autovalores con parte real positiva,

entonces cualquier pequea diferencia entre y
para algun t
0
, causada por un disturbio o una imperfeccion en
la estimacion del estado inicial, hara que:


12
) (
0
t x ) (
0
t x
( ) ( )
x t x t crezca con el tiempo
/59
EL OBSERVADOR A LAZO
CERRADO
13
/59
El observador a lazo cerrado
Observador a lazo cerrado = estimador asintotico

14
A, B and C son conocidos
Usando la entrada y la salida
/59
El observador a lazo cerrado
Estimador a lazo cerrado = estimador asintotico

15
A, B and C son conocidos
( ) ( ) ( )

y t y t Cx t =
El error de estimacion de la
salida, pasando por una
ganancia constante L, es usado
como un termino de correccion.

Si el error es cero, no es
necesaria ninguna correcion.
( )
y t
/59
El observador a lazo cerrado
Estimador a lazo cerrado = estimador asintotico

16
Forma simplificada
Si la diferencia no es cero y si
la ganancia L se disea
apropiadamente, la diferencia
llevara al estado estimado a
su estado real
( )
( )
x Ax Bu L y Cx
A LC x Bu Ly
= + +
= + +
A, B and C son conocidos
/59
El error de estimacion
El estado verdadero:

El estado de estimado:

El error de Estimacion:

La dinamica del error

Si todos los autovalores de (A LC) pueden ser
asignados arbitrariamente, podemos controlar la
velocidad con que el error de estimacion se aproxima a
cero

17
No hay necesidad de calcular el estado inicial de
la ecuacin de estado original.
( ) A LC Bu Ly = + + x x
: x = x x
; A Bu y C = + = x x x

( ) x A LC x = = x x
/59
Teorema
Teorema de la asignacion de Autovalores en
observadores

Considere el par (A, C)

Todos los autovalores de (A LC) pueden asignarse
arbitrariamente seleccionando un vector real L si y solo
si (A, C) es observable.

18

( ) x A LC x = = x x
/59
Teorema
Teorema de la signacion de Autovalores en observadores
Considere el par (A, C). Todos los autovalores de (A LC)
pueden asignarse arbitrariamente seleccionando un vector real L
si y solo si (A, C) es observable.

19
Prueba:
Recurriendo a la dualidad controlabilidad/observabilidad, el
par (A, C) es observable si y solo si (A
T
, C
T
) es controlable.

Si (A
T
, C
T
) es controlable todos los autovalores de (A
T
C
T
K)
pueden asignarse arbitrariamente mediante una eleccion
adecuada de K.

La transpuesta de (A
T
C
T
K) es (A

K
T
C) y por lo tanto,
hacemos L = K
T
.
/59
Teorema
Teorema de la signacion de Autovalores en observadores
Considere el par (A, C). Todos los autovalores de (A LC)
pueden asignarse arbitrariamente seleccionando un vector real L
si y solo si (A, C) es observable.

20
Si (A
T
, C
T
) es controlable todos los autovalores de (A
T
C
T
K)
pueden asignarse arbitrariamente mediante una eleccion
adecuada de K.

La transpuesta de (A
T
C
T
K) es (A

K
T
C) y por lo tanto,
hacemos L = K
T
.
El mismo procedimiento usado para calcular la matriz de realimentacion
de estados K sirven para calcular la matriz L del observador.
/59
Procedimiento de diseo del observador
Obtener el par (A
T
, C
T
). Si el par es controlable
continuar

Elegir los valores propios deseados del observador
en lazo cerrado

Usando (A
T
, C
T
), calcular la matriz de realimentacion
K mediante el procedimiento para la asignacion de
autovalores, via la forma canonica.




Obtener L = K
T

21
con la funcion K = place(A
T
, C
T
,P) de MATLAB
/59
REALIMENTACION DE LA
SALIDA
22
/59
Arquitectura del control
23
( ) ( )

u t K t = x
Se usa una estimacion
del estado para generar
el control
Se asume el sistema
conocido, con D = 0
Bu
y C
= +

x Ax
x
( ) ( ) ( )
y t y t Du t =
Resultados validos si
remplazando y(t) por
0 D =

( ) t u
( ) t x
( )
1
s

I A B
K
Compensator
C
( ) t x
Open Loop System
( ) t y
( )
1
s

I A
B
L
C

Estimator
/59
Dinamica del estado en lazo cerrado
Definiendo el estado del sistema aumentado, en lazo
cerrado



Partiendo de las ecuaciones




24
u K = x
( ) A LC Bu Ly = + + x x
; A Bu y C = + = x x x
a

x
( ( (
= =
( ( (


x I 0 x
x
I I x
( )
0
0 x x =
( )
0
0 x x =
/59
Dinamica del estado en lazo cerrado
Dinamica del estado, en lazo cerrado






Dinamica del error




25

x Ax BK = x

Ax BK BKx BKx + = x
( ) ( )

A BK x BK x = + x
( ) ( )
A BK x t BKx = +

u K = x

( ) x A LC x = = x x
/59
Dinamica del estado en lazo cerrado
La dinamica del sistema aumentado:
26
( ) x A LC x = = x x
( ) ( )
= + x A BK x t BKx
( )
0
0 0
0

a
a a
A BK BK
x x
A LC
x x x

(
( (
= =
(
( (




x
x x
0
Los autovalores del sistema realimentado son la union de los
autovalores de y A BK A LC
/59
Caracteristicas
La ecuacion de estado resultante no es controlable y la
funcion de transferencia es igual a


Esta es la funcion de transferencia del sistema
realimentado original sin usar el estimador de estado

El estimador es completamente cancelado en la
funcion de transferencia desde r a y
27
A BK BK B
r
x A LC x

( ( ( (
= +
( ( ( (


x x
0 0
| |
y C
x
(
=
(

x
0
1
( ) ( )
f
g s C sI A BK B

=
y C = x
( ) A BK Br = + x x
/59
Diseo del control
Los autovalores del sistema realimentado son la union
de los autovalores de

Esta es la propiedad de la separacion: la solucion en
dos diseos separados

Obtener los autovalores deseados de A BK seleccionando
la ganancia de realimentacion

Obtener los autovalores deseados de A LC seleccionando
la ganancia del observador

28
y A BK A LC
/59
Ejemplo 1
29
Disear la realimentacion de estado u = r Kx para ubicar
los autovalores en 1 y 2.
Solucion:
u
(

+
(

=
1
0
1 1
1 0
x x
| |x 0 1 = y
| |
1 2
1 2
0 1 0 1 0
1 1 1 1 1
A BK k k
k k
( ( (
= =
( ( (


2
2 1
1 2
( ) ( ) ( 1) (1 ) ( 1)( 2)
3, 4
f
s sI A BK s k s k s s
k k
A = = + = + +
= =
/59
Ejemplo 1
30
Disear la realimentacion de estado u = r Kx para ubicar
los autovalores en 1 y 2.
Realimentacion de estado:
| |x 4 3 = r u
r
(

+
(


=
1
0
3 2
1 0
x x | |x 0 1 = y
/59
Ejemplo 1
31
Sistema original:
Sistema realimentado:
u
(

+
(

=
1
0
1 1
1 0
x x | |x 0 1 = y
r
(

+
(


=
1
0
3 2
1 0
x x
| |x 0 1 = y
| |x 4 3 = r u
+ + r
u
} }
2
x
2
x
1
x
1
y
1
1
- 4
- 3
/59
Ejemplo 1
32
Solucion:
Disear el estimador de estado completo con autovalores
en 4 y 5.
| |
1 1
2 2
1 0 1
1 0
1 1 1 1
l l
A LC
l l

( ( (
= =
( ( (


2
1 2 1
1 2
( ) ( ) ( 1) ( 1)
( 4)( 5) 10, 31
o
s sI A LC s l s l l
s s l l
A = = + +
= + + = =
/59
Ejemplo 1
33
Es estimador de estado:
Disear el estimador de estado completo con autovalores
en 4 y 5.
( )
10 1 0 10

30 1 1 31
A LC Bu Ly
u y
= + +

( ( (
= + +
( ( (


x x
x
+ + r
u
} }
2
x
2
x
1
x
1
y
1
1
- 3
- 4
1
} }
+ +
10
31
-10 1
1
-30
1
x 2
x
/59
Ejemplo 2
34
Disear el observador para el pendulo invertido en el carro
m
M
y
u
u
l
( ) ( ) ( )
( ) ( )
0 1 0 0 0
0 0 1 0 1
0 0 0 1 0
0 0 5 0 2
1 0 0 0
0 0 1 0
t t u t
t t
( (
( (

( (
= +
( (
( (


(
=
(

b
A
C
x x
y x
1 2 3 4
x y x y x x u u = = = =
/59
Ejemplo 2
35
Comprobamos si el par (A
T
, C
T
) es controlable desde la
primera salida
| |
1 0 0 0 C =
1
2
y
y
y
(
=
(

( )
( ) ( )
2 3
T T
T
T
Q C CA CA CA
(
=
(

sysO = ss(A',C',C,D)
Q = ctrb(sysO)
matlab
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
(
(
(
=
(
(


1
x u =
/59
Ejemplo 2
36
Se seleccionan los autovalores deseados del observador

escogidos por las propiedades de la respuesta
1
2
15 5
15 5
j
j

= +
=
3
4
10 10
10 10
j
j

= +
=
Polinomio caracteristico deseado en lazo cerrado
( ) ( )( )( )( )
10 10 10 10 15 5 15 5 q s s j s j s j s j = + + + + + +
( )( )
2 2
20 200 30 250 s s s s = + + + +
3 2 1
0
4 3 2 1 0
50 1050 11000 50000 s s s s s
o o o
o
= + + + +
/59
Ejemplo 2
37
Polinomio caracteristico en lazo abierto
Ganancia del observador, para el sistema en la forma canonica
( ) ( )
det q s sI A =
3 2 1 0
4 3 2 1 0
0 5 0 0 s s s s s
o o o o
= + + +
| |
1
0 0 1 1 2 2 3 3
T
L o o o o o o o o =
| |
1
50000 11000 1055 50
T
L =
/59
Ejemplo 2
38
La ganancia de realimentacion en las coordenadas
originales es,
1 T T T
L L P L CC

= =
1 2 3
1 2 1 2 3
1
1
0 1
0 0 1
0 0 0 1
P B AB A B A B
o o o
o o
o

(
(
(
( =

(
(

| |
1
50 1055 11250 55275
T
L =
Finalmente
/59
Ejemplo 2
39
El observador
( )

A LC Bu L
C
= + +
=
x x y
y x
50 1 0 0 0 50 0
1055 0 1 0 1 1055 0

11250 0 0 1 0 11250 0
55275 0 5 0 2 55275 0
u

( ( (
( ( (

( ( (
= + +
( ( (
( ( (


x x y
| |
1
0 L L =
/59
Ejemplo 2
40
El observador con realimentacion

Para
50 1 0 0 50 0
1053 3.667 7.583 4.333 1055 0

11250 0 0 1 11250 0
55272 7.333 12.167 8.667 55275 0
0
1
0
2
r

( (
( (

( (
= +
( (
( (


(
(
(
+
(
(


x x y

u K r = + x
5 103 13 11
3 3 12 2
K
(
=

/59
Ejemplo 2
41
Comparacion
0 1 2 3 4 5 6 7
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
Time (s)
C
a
r
t

p
o
s
i
t
i
o
n


Observer feedback
State feedback
0 1 2 3 4 5 6 7
-0.15
-0.1
-0.05
0
0.05
0.1
Time (s)
C
a
r
t

p
o
s
i
t
i
o
n


Observer feedback
State feedback
/59
Ejemplo 3
42
Considere el pndulo invertido del ejemplo anterior





Sean los autovalores deseados 1.50.5j y 1j .

MATLAB tiene la funcion K = place(A,B,P) que calcula K
para ubicar los autovalores en los valores dados en el
vector P.
EJERCICIO: Disear el controlador con observador
y construir y observar el comportamiento del sistema
en lazo cerrado en Simulink
/59
EL OBSERVADOR DE ORDEN
REDUCIDO
43
/59
El observador de orden reducido
Se supondra, ahora, que q de los n estados del sistema
pueden ser medidos en forma directa.
Estos estados se agrupan en el vector


mientras que los restantes n q estados se agrupan en


La ecuacion de estado original

44
1 1 2
, , ,
T
q
x x x x ( =

2 1 2
, , ,
T
q q n
x x x x
+ +
( =

:
B
C
= +

E

=

x Ax u
y x
: , : , : n n B n p C q n A
C tiene rango completo de fila
1
x
/59
El observador de orden reducido
Si C = [ I 0 ], entonces y(t) son los primeros q
estados

definiendo,



45
( )
1
1
T T n q
Q


= e C CC R
1 q
CQ I =
/59
El observador de orden reducido
definiendo

46
( )
( )
2 2 2
: y
n n q
Q Q rank Q n q

e = = C 0 R
( )
1
2 2 2
T T n q
R Q Q Q


= eR
( )
( ) ( )
1
2 2 2 2 2
T T
n q n q
RQ Q Q Q Q


= = I
Una base para Null(C)
/59
El observador de orden reducido

47
/59
El observador de orden reducido
Definiendo la transformacion P





Por la transformacion
48
| |
2 1
1
: Q Q P Q = =

) ( : , :
2 1
q n n q n Q Q
| |
1 2
1 2
1 2
q
n
n q
C C C

(
( (
= = = =
(
( (


I 0
Q Q
I PQ Q Q
0 I
RQ RQ R
Px x =
1
1
:
q
B
C

= +

( = =

x PAP x P u
y P x I 0 x
1 1 1 11 12
2 2 2 21 22
1 q
B
B

( ( ( (
= +

( ( ( (

( = =

x x A A
u
x x A A
y I 0 x x
/59
El observador de orden reducido
Todos los estados x
1
son accesibles. Solo necesitan ser
estimados los ultimos nq elementos de

Usando , tenemos



Definiendo,
49
x
1
x y =
2 21 22 2 2
11 12 2 1
y B
y B
= + +

= + +

x A A x u
y A A x u
21 2
11 1
B
B
= +

u A y u
w y A y u

=
+ =
2 12
2 22 2
x A w
u x A x


1 1 1 11 12
2 2 2 21 22
1 q
B
B

( ( ( (
= +

( ( ( (

( = =

x x A A
u
x x A A
y I 0 x x
En la ecuacion de salida se ha puesto
de manifiesto que todos los estados x
1

son accesibles y seran tomados como
salidas para su realimentacion
/59
El observador de orden reducido
El problema se reduce a disear un observador
para el sistema:




Definiendo,
50
21 2
11 1
B
B
= +

u A y u
w y A y u

=
+ =
2 12
2 22 2
x A w
u x A x

/59
El observador de orden reducido
El observador:




Definiendo,
51
21 2
11 1
B
B
= +

u A y u
w y A y u
( )
2
22 2 12 2

x x L w x
-
= + + A u A
Requiere derivar la salida!!
/59
El observador de orden reducido
Para eliminar la derivada, definir



Entonces,
52
( ) ( ) ( )
2

t t t = x Ly
( ) ( ) ( )
2

d d d
t t t
dt dt dt
= x L y
/59
El observador de orden reducido
Para eliminar la derivada, definir



Entonces,
53
( ) ( ) ( )
2

t t t = x Ly
( ) ( ) ( ) ( ) ( )
( )
( )
( )
22 12 2 1
21 11 22 12
d
t t t
dt
t
= +
+ +
A LA B LB u
A LA A LA L y
/59
El observador de orden reducido
Entonces,




Estimar:
54
( ) ( ) ( ) ( ) ( )
( )
( )
( )
22 12 2 1
21 11 22 12
d
t t t
dt
t
= +
+ +
A LA B LB u
A LA A LA L y
( )
( )
( ) ( )

t
t
t t
(
=
(
+

y
x
Ly
/59
Realimentacion de los estados estimados
El control se genera por la realimentacion de los
estados estimados
55
( ) ( ) | |
( )
( ) ( )
| |
( )
( )
1 2
1 2 2

P
t
t t
t t
t
t

(
= =
(
+

(
= +
(

y
u K x K K
Ly
y
K K L K
( ) ( ) | |
( )
( ) ( )
| |
( )
( )
1 2
1 2 2

t
t t
t t
t
t

(
= =
(
+

(
= +
(

y
u Kx K K
Ly
y
K K L K
/59
Realimentacion de los estados estimados
Sistema aumentado en lazo cerrado




Existe separacion de los problemas de la
estimacion de los estados y el control
56
( ) ( )
2
22 12
a a
d
t t
dt

(
=
(


A BK BK
x x
0 A LA
/59
Realimentacion de los estados estimados
Si (A, C) es observable, puede ser construido un
estimador completo o de orden reducido con
valores propios arbitrarios
Si las variables de estado NO
estan disponibles para realimentacion,
podemos disear un estimador de estado
57
) (t r
) (t u
) (t y
+
Plant
k

Estimator
x
x k

= r u
/59
Bibliografia
A. D. Lewis, A Mathematical Approach to
Classical Control, 2003, on line acces
http://www.mast.queensu.ca/~andrew/teaching/
math332/notes.shtml
Robert L., Williams, Douglas A. Lawrence
Linear State-Space Control Systems, Wiley,
2007
58
/59
FIN
59

Potrebbero piacerti anche