Sunteți pe pagina 1din 3

Regulaci on Automatica.

Ejercicio practico 2
1
o
Ingeniera Electr onica. 7 de mayo de 2007
Dise no y simulaci on de controladores por variables de estados empleando
observadores
1 Introducci on
En esta pr actica se pretende controlar un sistema descrito variables de estado por dos metodos:
Por realimentaci on del vector de estados, mediante asignaci on de polos.
Por realimentaci on de la salida, mediante asignaci on de polos y un observador del estado.
2 Realimentaci on del vector de estado
El tipo de sistemas con el que trataremos son los sistemas lineales descritos en variables de estado
con la siguiente estructura
x = Ax +Bu
y = Cx +Du
donde x IR
n
, u IR
m
, y IR
p
y las matrices A, B, C D tienen dimensiones coherentes con x, u
e y. Como se vio en la pr actica anterior, dicho sistema es controlable si la matriz de controlabilidad
C =

B AB . . . A
n1
B

es de rango pleno. En tal caso, es posible asignar arbitrariamente los autovalores del sistema en
bucle cerrado, mediante una ley de realimentaci on del tipo
u = Kx,
donde K IR
mn
es una matriz constante. Para calcular K, se elige libremente
1
un conjunto de
autovalores deseados para sistema en bucle cerrado (
1
,
1
,
2
, . . . ,
n
), y se aplica la f ormula de
Ackermann. Concretamente, en Matlab, basta con el empleo de la funci on place.
> K=place(A,B,[lambda1,lambda2,...,lambdan])
El hecho de asignar libremente los polos del sistema en bucle cerrado otorga a esta tecnica el
nombre de control por asignaci on de polos (pole placement). Sin embargo, el controlador de la
forma u = Kx s olo es implementable si todos los componentes del vector de estado x son medibles.
En multitud de casos pr acticos, s olo una parte o combinaci on lineal del estado est a disponible en
los sensores del sistema de control, por lo que se dene el vector de salida y = Cx como el conjunto
de magnitudes medibles.
Cuando s olo est a disponible en los sensores la salida y, para estabilizar un sistema en variables
de estado por asignaci on de polos es necesario, adem as del requisito de controlabilidad, la propiedad
de observabilidad del mismo. Esta se da cuando la matriz de observabilidad
O =

C
CA
.
.
.
CA
n1

es de rango pleno. Para determinar si un sistema es observable se emplea la funci on obsv.


1
En la pr actica esta libertad est a en compromiso con consideraciones de economa de energa y especicaciones
del transitorio.
1
3 Construcci on del un observador del estado
Un observador del estado consiste en estimar de forma din amica el estado x a partir de las medidas
continuas de su salida. El estado estimado lo denotamos x y se actualiza a lo largo del tiempo
empleando la ecuaci on diferencial

x = A x +Bu +L(y C x) (1)


Donde L es una matriz que se dise nar a con la condici on de que (ALC) tenga sus autovalores en
el semiplano complejo izquierdo. En la pr actica podemos posicionar libremente dichos autovalores
mediante la f ormula de Ackermann. En la pr actica, la matriz L se obtiene tambien con la funci on
place.
> L=(place(A,C,[delta_1,delta_2,...,delta_n])
donde (
1
, . . .
n
) son los autovalores deseados del ALC que determinan la din amica del ltro
observador.
4 Ley de control
Como no es posible realizar una realimentaci on exacta del estado pues este no se conoce, la ley de
control u = Kx se reemplazar a por una realimentaci on del estado estimado
u = K x
que se construir a con un ltro a partir de las medidas actuales y pasadas de la salida y, como se
explica en el apartado anterior. En ese caso el sistema en bucle cerrado tendr a, conjuntamente, los
autovalores de (ABK) y los del observador (ALC).
5 Descripci on del ejercicio
Se parte del sistema din amico descrito por las matrices
A =

0 1 0
0 0 1
4 5 6

B =

0
0
4

Se pretende dise nar y simular un controlador por realimentaci on del estado siguiendo los siguiente
pasos en Matlab. Se deben almacenar todas las instrucciones necesarias para el calculo en
un script .m de Matlab para vericar su correcto funcionamiento.
1. Determinar si el sistema es controlable. Emplee la funci on ctrb.
2. Elegir un conjunto de autovalores estables del sistema en bucle cerrado, de los cuales 2 han
de ser complejos conjugados, y el resto reales puros.
3. Calcular la matriz K para que con la ley de realimentaci on del estado u = Kx se obtengan
dichos en bucle cerrado. Emplee la funci on place.
4. Simular el sistema completo realimentado. Para ello emplee el bloque Simulink State Space
que se encuentra en la carpeta Continuous del arbol de trabajo Simulink.
5. Genere una gr aca Matlab en la que se identiquen claramente (por tipos de trazo y etiquetas)
los distintos estados del sistema frente el tiempo. Para ello emplee los comandos plot, legend,
xlabel, ylabel y axis.
6. Repita el proceso anulando la parte imaginaria de los autovalores complejos y compare las
gr acas. Que se observa?
2
7. Suponiendo que el sistema posee un unico sensor para la medida indirecta del estado denida
por
y = Cx = [2 9 2]x
determine si el estado del sistema es observable (funci on obsv).
8. En caso armativo, calcule un observador del estado con autovalores en s
1,2
= 10 2j,
s
3
= 20. Para ello debe emplear la funci on place.
9. Simule el sistema original controlado empleando el estado estimado, es decir haciendo u = K x.
Para implementar el observador debe emplear de nuevo el bloque State Space . La estructura
del observador se obtiene reescribiendo la ecuaci on (1) en la forma

x = A x +Bu +L(y C x)
= (ABK LC)
. .. .
matriz A observador
x + L
....
matriz B observador
y
donde se observa que la entrada del observador es la salida del sistema controlado, y la salida
del observador es el estado estimado x.
10. Simule el sistema original realimentado con el estado estimado por el observador. Para imple-
mentar el observador debe emplear de nuevo el bloque State Space seleccionando debidamente
sus entradas (la salida del sistema real) y su salida (el estado estimado x).
11. Genere una gr aca (plot) etiquetada donde se compare el estado observado x
1
con el original.
3

S-ar putea să vă placă și