Está en la página 1de 22

IEE245 Teoría de Control 2

Capítulo 3

Diseño de Sistemas de Control con


Variables de Estado ….

1
Transformación a la forma canónica
controlable (c.c.f.)
Profundizaremos mas examinando el proceso de transformación
de un sistema
x  Ax  Bu , y  Cx  Du
a la forma canónica controlable
x c  A c x c  B c u , y  Cc x c  Dcu
Definiremos la matriz de transformación T tal que
x = Txc

Las matrices transformadas son:

Ac = T-1AT, Bc = T-1B

2
La realización en la forma canónica controlable es:

 a1  a2  a3  1 
A c   1 0 0  B c  0
 0 1 0  0
Cc  b1 b2 b3  Dc  0

3
Considere un ejemplo de orden 3, y considere las filas de T-1 como
t(1), t(2), t(3)
Tenemos: AcT-1 = T-1A
Fórmula de Ackermann
 Ahora se tiene herramientas para realizar el diseño por
ubicación de polos:
 Probando que el sistema original es controlable, podemos
transformarlo a la forma c.c.f. Usando la transformación xc = T-1x,
donde:
t n A n 1 
 
1
T  

 t A n
  n 


t  0 0  1C 1 C  B AB A 2B  A n 1B 
 n  
 t 
 Dado el polinomio característico de lazo cerrado ac(s), podemos
obtener las ganancias de control Kc, para los estados xc por
inspección
K c   a1  a1  a2  a 2   an  a n 

 Las ganancias para el sistema original se pueden determinar


como K = KcT-1

5
Fórmula de Ackermann...

 Este proceso puede ser automatizado por la fórmula


de Ackermann
K  0 0  1C 1a c A 

Considerando que el polinomio característico deseado esta dado por:

a c s   s n  a1s n 1    a n
 Aquí,
a c A   A n  a1A n 1    a n I
es un polinomio matricial

6
Función acker en Matlab...
Fórmula de Ackermann: K  0 0  1C 1a c A 

Estos extractos desde la función m-file muestran que la fórmula


se implementa explicitamente:

Function k = acker(a,b,p)
...
%Form gains using Akermann’s formula
k = ctrb(a,b)\polyvalm(real(poly(p) ),a) ;
k = k(n,:);
ac(s)

Extrae la última fila de C-1 ac(A)

7
 Características del algoritmo:
 Numéricamente no robusto, no funciona para n > 10, o si
el sistema es débilmente controlable
 Se aplica solamente a sistemas SISO
 Sin embargo, maneja polos de lazo cerrado repetidos

 Un algoritmo mas robusto es proporcionado por la


función place
 Se aplica a sistema MIMO
 No soporta polos de lazo cerrado repetidos

8
Ejemplo: Regulación de posición de un servo motor DC

>> A = [0 1;0 -2]; B = [0 0;4 4]; C = [1 0]; D = [0 0];


>> G = ss(A,B,C,D);
>> p1 = -2 + 2*sqrt(3)*j; p2 = conj(p1);
>> K = acker(A,B(:,2), [p1;p2]) % feeback a la entrada de control!
K=
4.0000 0.5000
>> K = place(A,B(:,2), [p1;p2])
K=
4.0000 0.5000

9
Ejemplo: Sistema con modos incontrolables
>> A=[0 4 0 0;-1 -4 0 0;5 7 1 15;0 0 3 -3] >> C=[0 0 0 1]
A=
0 4 0 0 C=
-1 -4 0 0
5 7 1 15 0 0 0 1
0 0 3 -3
>> D=0
>> B=[0 0 1 0]'
D=
B=
0 0
0
1
0

>> % Autovalores
>> lambda = eig(A)

lambda = Autovalores repetidos;


6.0000 obtener los autovectores generalizados
-2.0000 + 0.0000i
-2.0000 - 0.0000i para transformar a la forma de Jordan
-8.0000

10
>> [V,Ad]=jordan(A) >> Bd=inv(V)*B

V= Bd =

0 0 2.0000 1.0000 1.4884


0 0 -1.0000 0 -1.3333
0.4319 -0.2679 -0.0625 -0.1641 0
0.1440 0.1607 -0.1875 -0.3047 0

>> Cd=C*V
Ad =
Cd =
6 0 0 0
0 -8 0 0 0.1440 0.1607 -0.1875 -0.3047
0 0 -2 1
0 0 0 -2

11
Ejemplo: Sistema con modos incontrolables …

modo inestable,
pero controlable

modo estable,
y observable

modo estable,
pero incontrolable

modo estable,
pero incontrolable

12
Ejemplo: Sistema con modos incontrolables

>> Ar = Ad(1:2,1:2); Br = Bd(1:2); colocar los modos controlables en
>> Kd = acker(Ar,Br,[-5;-3]) s = -5, -3
Kd =
4.7511 0.8036
>> %Transformación a los estados originales >> Ar = Ad(1:2,1:2); Br = Bd(1:2);
>> K = [Kd 0 0]/V >> Ar
K= Ar =
5.5547 7.9219 6.000 15.0000
>> Gc1 = feedback(augstate(G),K,1,[2:5]); 6 0
>> eig(Gc1) 0 -8

ans = >> Br
-2.0000
-2.0000 Br =
-5.0000 1.4884
-3.0000 -1.3333

13
Selección de polos de lazo cerrado
 En principio, podemos colocar los polos de lazo cerrado
(CLPs) “arbitrariamente”
 Pero: ¿es práctico hacer a un camión igual a un auto de
carrera?
 Mientras mas lejos movamos los polos de lazo abierto
(OLPs), mayor sera el esfuerzo de control requerido
 ¿a expensas de qué?
 ¿saturación en el actuador?
 ¿dureza del componente?
 Sí un OLP es cercanamente cancelado por un cero de
lazo abierto (OLZ), ese modo será incontrolable
 bdi  0
 requerirá mayor ganancia de control ( y esfuerzo) para mover los
polos

14
Técnicas Básicas

 Diseño por polos dominantes


 Probar hacer un sistema CL “semejante” a un sistema
simple de orden 2

 Diseño por prototipo


 Seleccionar todos los CLPs para corresponder a
patrones estándar de filtros

15
Diseño por Polos Dominantes

 Observar que el sistema CL se comporte al igual que un


simple sistema de segundo orden

kn2
G s   2
s  2 n s  n2

 Luego, seleccionar un par de polos “dominantes” basado


en relaciones bien conocidas entre  y n y las medidas de
desempeño tales como:
 Tiempo de subida,
 Sobreimpulso,
 Tiempo de establecimiento, etc.

16
Especificaciones de la Respuesta de Segundo
Orden
   ln % PO100 
    
 2  ln 2 % PO100 
2
% PO  e  1 
100

4 4
Ts  
 n d

1 .8
Tr  0.5    0.866
n

1  0.4167  2.917 2 0  1
Tr 
n

 
TP  
 n 1 2 d

17
Diseño por Prototipo
 Seleccionar tipos de filtros estándar con características de
respuestas deseables.
 Se tabulan las ubicaciones de polos para filtros de ordenes
diferentes; las respuestas son conocidas. Por ejemplo:
 Función de transferencia ITAE
 Minimizar el error absoluto, con penalidad sobre errores que se
incrementan con el tiempo
 Función de costo para la Integral Time by Absolute Error:

J   t e dt
0

 Filtro Bessel
 TF = 1/ Bn(s) donde Bn(s) es el polinomio de Bessel de grado n

18
Prototipo Bessel - Respuesta al escalón

Respuesta de Gp al escalón para diversos k


Respuesta de Gp al escalón

Tiempo (segundos)

19
Prototipo Bessel - Polos normalizados

Ubicaciones de los polos de Bk(s)

Todos los polos son normalizados para un tiempo de establecimiento, Ts de 1


segundo, para otro valor de Ts deberá dividir los polos por el nuevo Ts

20
Prototipo ITAE - Respuesta al escalón

1.4

1.2

0.8

0.6

0.4

0.2

0
0 1 2 3 4 5 6 7 8

21
Prototipo ITAE – Polos normalizados

Graham y Lathrop (1953)  t e dt


0
where e(t )  r (t )  c (t )

p1=[-1]
p2 = [-0.7071+I*0.7071,-0.7071-I*0.7071]

p3 =[ -.7071;-.5210+i*1.068;-.5210-i*1.068]

p4=[-.4240+i*1.2630;-.4240-i*1.2630 ;-.6260+i*.4141;-
.6260-i*.4141] ;

p5 = [ -0.3764 + 1.2920i, -0.3764 - 1.2920i,


-0.8955, -0.5758 + 0.5339i, -0.5758 - 0.5339i]

p6 = [ -0.3099 + 1.2634i, -0.3099 - 1.2634i


-0.5805 + 0.7828i, -0.5805 - 0.7828i
-0.7346 + 0.2873i, -0.7346 - 0.2873i]

Frecuencia de cruce por cero 1 rad/seg

22

También podría gustarte