19
UNIVERSIDAD POLITÉCNICA DE MADRID MASTER EN AUTOMÁTICA Y ROBÓTICA MADRID, 03 DE NOVIEMBRE DE 2015 TÉCNICAS AVANZADAS EN EL DISEÑO DE SISTEMAS DE CONTROL GABRIEL VINICIO MOREANO SANCHEZ NÚMERO DE MATRÍCULA: M15128 TRABAJO NUMERO 6

Control Por Realimentación Del Estado

Embed Size (px)

DESCRIPTION

Teoría y practica de como realiementar un sistema en espacio de estados.

Citation preview

Page 1: Control Por Realimentación Del Estado

UNIVERSIDAD POLITÉCNICA

DE MADRID MASTER EN AUTOMÁTICA Y ROBÓTICA

MADRID, 03 DE NOVIEMBRE DE 2015

TÉCNICAS AVANZADAS EN EL DISEÑO DE SISTEMAS DE CONTROL GABRIEL VINICIO MOREANO SANCHEZ

NÚMERO DE MATRÍCULA: M15128 TRABAJO NUMERO 6

Page 2: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

CONTROL POR REALIMENTACION DEL ESTADO

1.- Objetivo:

Determinar el vector k para el control por realimentación de estado de un sistema

determinado, con función de transferencia conocida y polos deseados.

2.- Contenido Teórico:

2.1.- Definición de Estado El estado de un sistema dinámico es el conjunto más pequeño de variables (llamadas

variables de estado) tal que, el conocimiento de esas variables en un determinado

instante t0 junto con el conocimiento de los valores de la señal de entrada para los

instantes t >= t0, permite determinar el comportamiento y evolución del sistema para

cualquier instante de tiempo t >= t0.

La dinámica de un sistema se puede describir en función del valor del vector de estados

y de la señal de entrada (asumiendo que el sistema es no autónomo) mediante unas

ecuaciones que tendrán la forma:

𝑥(𝑘 + 1) = 𝑓(𝑥(𝑘), 𝑢(𝑘), 𝑘)

𝑦(𝑘) = 𝑔(𝑥(𝑘), 𝑢(𝑘), 𝑘)

No obstante si nos centraremos en los Sistemas Lineales e Invariantes en el tiempo (LTI),

este tipo de sistemas son descritos mediante las siguientes ecuaciones:

𝑥(𝑘 + 1) = 𝐴𝑥(𝑘) + 𝐵𝑢(𝑘)

𝑦(𝑘) = 𝐶𝑥(𝑘) + 𝐷𝑢(𝑘)

Que corresponderían al diagrama de bloques de la figura 1.

2.2.- Obtención de la representación de un espacio de estados de sistemas discretos

Partiendo de un sistema discreto descrito por:

𝑦(𝑘) + 𝑎1𝑦(𝑘 − 1) + 𝑎2𝑦(𝑘 − 2) + ⋯ + 𝑎𝑛𝑦(𝑘 − 𝑛) = 𝑏0𝑢(𝑘) + 𝑏1𝑢(𝑘 − 1) + ⋯ + 𝑏𝑛𝑦(𝑘 − 𝑛)

Page 3: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Figura 1. Diagrama de bloques de la representación en espacio de estados de un

sistema LTI.

El sistema puede ser descrito por la siguiente función de transferencia:

𝐺(𝑧) = 𝑌(𝑧)

𝑈(𝑧)=

𝑏0 + 𝑏1𝑧−1 + 𝑏2𝑧−2 + ⋯ + 𝑏𝑛𝑧−𝑛

1 + 𝑎1𝑧−1 + 𝑎2𝑧−2 + ⋯ + 𝑎𝑛𝑧−𝑛

Utilizando el método de programación directa se obtiene la representación de del

sistema en espacio de estados denominada Forma Canónica Controlable del sistema

(FCC).

Utilizando el método de programación anidada se obtiene la representación de del

sistema en espacio de estados denominada Forma Canónica Observable (FO) del sistema

(FCC).

Page 4: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

2.3.- Resolución de la Ecuación de Estado

Se puede obtener una expresión de x(n) en función solo de las condiciones iniciales y

u(k).

𝑋(1) = 𝐺𝑥(0) + 𝐻𝑢(0)

𝑋(2) = 𝐺𝑥(1) + 𝐻𝑢(1) = 𝐺2(0) + 𝐺𝐻𝑢(0) + 𝐻𝑢(1)

𝑋(3) = 𝐺𝑥(2) + 𝐻𝑢(2) = 𝐺3(0) + 𝐺2𝐻𝑢(0) + 𝐺𝐻𝑢(1) + 𝐻𝑢(2)

Se puede generalizar a:

𝑋(𝑘) = 𝐺𝑘𝑥(0) + ∑ 𝐺𝑘−𝑗−1𝐻𝑢(𝑗)

𝑘−1

𝑗=0

𝑌(𝑘) = 𝐶𝐺𝑘𝑥(0) + 𝐶 ∑ 𝐺𝑘−𝑗−1𝐻𝑢(𝑗)

𝑘−1

𝑗=0

+ 𝐷𝑢(𝑘)

Aplicando la transformada z se obtendría:

𝑥(𝑘) = 𝑍−1{(𝑧𝐼 − 𝐺)−1𝑧}𝑥(0) + 𝑍−1{(𝑧𝐼 − 𝐺)−1𝐻𝑈(𝑧)}

Para un sistema:

𝑥(𝑘 + 1) = 𝐺𝑥(𝑘)

La ecuación de estado resulta ser:

𝑥(𝑘) = 𝜑(𝑘)𝑥(0)

Donde:

𝜑(𝑘) = 𝐺𝑘

Es la llamada matriz de transición de estados y contiene la información sobre los

movimientos libres del sistema.

Entonces, la solución de la ecuación de estado se puede reescribir:

𝑥(𝑘) = 𝜑(𝑘)𝑥(0) + ∑ 𝜑(𝑗)𝐻𝑢(𝑘 − 𝑗 − 1)

𝑘−1

𝑗=0

𝑦(𝑘) = 𝐶𝜑(𝑘)𝑥(0) + 𝐶 ∑ 𝜑(𝑗)𝐻𝑢(𝑘 − 𝑗 − 1)

𝑘−1

𝑗=0

+ 𝐷𝑢(𝑘)

Page 5: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

2.4.- Discretización de las ecuaciones de estado continúa

Para un sistema continuo en espacio de estados:

�̇� = 𝐴𝑥 + 𝐵𝑢

𝑦 = 𝐶𝑥 + 𝐷𝑢

Al discretizar el sistema con un tiempo de muestreo T se obtiene:

𝑥((𝑘 + 1)𝑇) = 𝐺(𝑇)𝑥(𝑘𝑇) + 𝐻(𝑇)𝑢(𝑘𝑇)

Quedando la ecuación de salida como:

𝑦(𝑘𝑇) = 𝐶𝑥(𝑘𝑇) + 𝐷𝑢(𝑘𝑇)

2.5.- Controlabilidad

La Controlabilidad está relacionada con la existencia de una secuencia de actuaciones

para llevar el sistema a un estado arbitrario.

Un sistema dinámico es completamente controlable, si es posible transferir al sistema

desde un estado inicial arbitrario a cualquier estado deseado en un tiempo finito.

Teniendo en cuenta la solución de la ecuación de estado se tiene que:

Donde:

𝑀𝑐 = [𝐻: 𝐺𝐻: … : 𝐺𝑛−1𝐻]

Es la matriz de controlabilidad.

“Dado un sistema LTI de orden n, es condición necesaria y suficiente para que el sistema

sea completamente controlable que el rango de la matriz de controlabilidad sea igual a

n.”

Controlabilidad de la salida es cuando es suficiente que lo que sea controlable sea la

salida.

Si el número de salidas es m y la ecuación de salida es:

𝑦(𝑘𝑇) = 𝐶𝑥(𝑘𝑇)

La condición de rango a cumplir es:

𝑅𝑎𝑛𝑔𝑜 {[𝐶𝐻: 𝐶𝐺𝐻: … : 𝐶𝐺𝑛−1𝐻]} = 𝑚

Page 6: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

2.6.- Transformación de un sistema en la FCC

Considerando el sistema:

𝑥(𝑘 + 1) = 𝐺𝑥(𝑘) + 𝐻𝑢(𝑘)

𝑦(𝑘) = 𝐶𝑥(𝑘) + 𝐷𝑢(𝑘)

Y una matriz de transformación T=MW con:

Entonces el sistema:

�̂�(𝑘 + 1) = �̂��̂�(𝑘) + �̂�𝑢(𝑘)

𝑦(𝑘) = �̂�𝑥(𝑘) + �̂�𝑢(𝑘)

Con:

𝐺 ̂ = 𝑇−1𝐺𝑇 , �̂� = 𝑇−1𝐻 , 𝐶 ̂ = 𝐶𝑇, �̂� = 𝐷

Está en forma canónica controlable.

2.7.- Realimentación del estado

En esta sección se presenta una estrategia de control que permite elegir la situación de

los polos de bucle cerrado del sistema, mediante la realimentación lineal del vector de

estados. Se verá que la condición necesaria para que esto se pueda conseguir es que el

sistema sea controlable. Por otra parte, se asume que todas las variables de estados son

accesibles, es decir, se puede medirlas directamente sin tener que estimarlas por otros

procedimientos.

Dado un sistema discreto lineal, invariante y controlable, en el que se supone el estado

es medible (figura 2):

𝑥(𝑘 + 1) = 𝐴𝑥(𝑘) + 𝐵𝑢(𝑘)

𝑦(𝑘) = 𝐶𝑥(𝑘)

Page 7: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Figura 2. Diagrama de bloques sistema medible.

El control por realimentación del estado es:

𝑢(𝑘) = 𝑟(𝑘) − 𝐾𝑥(𝑘)

Es decir, la señal de control se obtiene de la realimentación negativa del vector de

estados multiplicado por una cierta matriz de ganancias K. Este tipo de ley de control se

la denomina usualmente realimentación del vector de estados. Con esta ley de control

el sistema en bucle cerrado quedará como en la figura 3.

Figura 3. Control por realimentación de estado.

Y la ecuación de estado del sistema en bucle cerrado resultará ser:

𝑥(𝑘 + 1) = (𝐴 − 𝐵𝐾)𝑥(𝑘) + 𝐵𝑟(𝑘)

𝑦(𝑘) = 𝐶𝑥(𝑘)

La dinámica estará determinada por el polinomio característico (los valores propios) de

la nueva matriz de sistema A-BK

Si el sistema es controlable es posible determinar K de modo que los coeficientes

polinomio del característico sean los deseados.

Page 8: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

3.- Desarrollo

Sea un sistema:

𝐺(𝑠) = 1

(𝑠 + 1)(𝑠 + 2)(𝑠 + 3)

Determinar una matriz K, tal que los polos del bucle cerrado sean:

𝑆1,2 = −1 ± 𝑖, 𝑆3 = −10

Para el presente trabajo se irán explicando paso a paso las operaciones realizadas para

posterior presentar un script realizado en Matlab que genera las operaciones

necesitadas, en el apartado 4 se mostraran los resultados obtenidos de la experiencia.

3.1.- Valores Propios, Vectores Propios y polinomio característico

Para poder obtener los valores propios debemos transformar la función de transferencia

en espacio de estados y posteriormente discretizar con un tiempo de muestreo T = 0.1s.

Espacio de estados discreto:

𝐴 = [1.6487 0 00.149 1.3376 −0.1644

0.0093 0.1644 0.9889] 𝐵 = [

0.12970.00660.0003

] 𝐶 = [0 0 0.7071]

Con la función “eig” obtenemos los valores propios de A:

vp =

1.1052

1.2214

1.6487

Con un polinomio característico:

polinomio =

1.0000 -3.9753 5.1857 -2.2255

Que se representa como:

∆𝑧 = 𝑧3 + 𝑎1𝑧2 + 𝑎2𝑧 + 𝑎3 = 𝑧3 − 3.9753𝑧2 + 5.1857𝑧 − 2.2255

Page 9: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

3.2.- Obtención de la forma canónica controlable

La matriz Pc que nos permite llevar el sistema a la forma canónica controlable es:

𝑃𝑐 = 𝑀 ∗ 𝑊

Con la ayuda de Matlab obtenemos la matriz de controlabilidad M con la instrucción

“ctrb”, resultando:

𝑀 = [0.1297 0.2139 0.35270.0066 0.0280 0.06900.0003 0.0026 0.0091

]

W es la matriz que se compone con los coeficientes del polinomio característico.

𝑊 = [5.1857 −3.9753 1

−3.9753 1 01 0 0

]

Por lo que la matriz de transformación sería:

𝑃𝑐 = [0.1751 −0.3019 0.1297

−0.0086 0.0020 0.00660.0004 0.0014 0.0003

]

El nuevo modelo a partir de la matriz de transformación a FCC resulta:

𝐴𝐶 = 𝑃𝑐−1𝐴𝑃𝑐 = [𝑎2 𝑎1 1𝑎1 1 01 0 0

] = [0 1 00 0 1

2.2254 −5.1857 3.9753]

𝐵𝐶 = 𝑃𝑐−1𝐵 = [001

]

𝐶𝐶 = 𝐶𝑃𝑐 = [0.0003 0.0010 0.0002]

3.3.- Realimentación del estado Se diseñará una realimentación del vector de estados tal que los valores propios de lazo cerrado resulten en los puntos deseados discretizados (λ1 = 0.9+0.0933i, λ2 = 0.9-0.0933i λ3 = 0.3679). Para trabajar en el diseño de la realimentación nos resultara particularmente cómodo utilizar la forma canónica controlable. Si utilizamos una realimentación completa del vector de estados, u = r − KcXc, la nueva matriz A de lazo cerrado estará dada por:

Page 10: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

𝐴𝐿𝑐𝑐 = 𝐴𝐶 − 𝐵𝐶 ∗ 𝐾𝐶 El polinomio característico a lazo cerrado deseado es:

∆𝑧 = 𝑧3 + 𝛼1𝑧2 + 𝛼2𝑧 + 𝛼3 = 𝑧3 − 2.1685𝑧2 + 1.4811𝑧 − 0.3012

Y la matriz ALC:

𝐴𝐿𝐶 = [0 1 00 0 1

0.3012 −1.4811 2.1685]

Esta matriz depende del vector de realimentación K por lo que se obtendría:

𝐴𝐿𝐶 = [0 1 00 0 1

−𝑎3 −𝑎2 −𝑎1

] − [001

] [𝑘𝑐1 𝑘𝑐2 𝑘𝑐3]

𝐴𝐿𝐶 = [0 1 00 0 1

−𝑎3 − 𝑘𝑐1 −𝑎2 − 𝑘𝑐2 −𝑎1 − 𝑘𝑐3] = [

0 1 00 0 1

2.2254 − 𝑘𝑐1 −5.1857 − 𝑘𝑐2 3.9753 − 𝑘𝑐3]

Reemplazando y despejando obtenemos los valores deseados de k.

2.2254 − 𝑘𝑐1 = 0.3012 → 𝑘𝑐1 = 1.9242 −5.1857 − 𝑘𝑐2 = −1.4811 → 𝑘𝑐2 = −3.7046

3.9753 − 𝑘𝑐3 = 2.1685 → 𝑘𝑐3 = 1.8068 Finalmente ordenamos el vector K para realimentar el lazo de control.

𝐾𝐶 = [1.9242 − 3.7046 1.8068] Recordemos que este vector de realimentación corresponde a la forma canónica

controlable, es decir que corresponde a una realimentación de la forma u = r − KcXc.

Para calcular la realimentación en términos de los estados originales, es necesario

aplicar la trasformación lineal PC-1, calculada en el punto anteriormente.

𝑢(𝑘) = [𝑘1 𝑘2 𝑘3]𝑥𝑐(𝑘) = [𝑘1 𝑘2 𝑘3]𝑃𝑐−1𝑥𝑐(𝑘)

Obteniéndose:

𝑘 = [𝑘1 𝑘2 𝑘3]𝑃𝑐−1 = [1.9242 − 3.7046 1.8068] [1.8106 −56.3827 465.5497

−1.1017 1.1058 469.67072.7003 78.6792 464.3174

]

𝐾 = [12.4442 29.5714 − 5.218]

Page 11: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Y finalmente la nueva matriz del sistema para los polos deseados sería:

𝐴𝐿𝐶𝐶 = 𝐴 − 𝐵 ∗ 𝐾 = [1.6487 0 00.149 1.3376 −0.1644

0.0093 0.1644 0.9889] − [

0.12970.00660.0003

] [12.4442 29.5714 − 5.218]

𝐴𝐿𝐶𝐶 = [0.0342 −3.8367 0.6770.0675 1.1439 −0.13020.0057 0.1558 0.9904

]

El modelo del sistema en lazo cerrado resulta:

𝑥(𝑘 + 1) = (𝐴 − 𝐵𝐾)𝑥(𝑘) + 𝐵𝑢(𝑘)

𝑦(𝑘) = 𝐶𝑥(𝑘) + 𝐷𝑢(𝑘)

3.4.- Problema de la Ganancia en estado estacionario

La Ganancia en continua, definida como la relación entre Yee y una referencia, resulta:

𝐺𝑒𝑒 = 𝐶(𝐼 − 𝐴𝐿𝐶𝐶)−1𝐵

Para el ejemplo se tiene:

𝐺𝑒𝑒 = [0 0 0.7071](𝐼 − 𝐴𝐿𝐶𝐶)−1 [0.12970.00660.0003

]

𝐺𝑒𝑒 = 0.1332 Si se desea reducir este error en estado estacionario nulo se debe expandir un poco el sistema:

𝑥𝑖(𝑘 + 1) = 𝑥𝑖(𝑘) + (𝑟(𝑘) − 𝑦(𝑘))

Utilizando la ecuación de salida del sistema se tiene:

𝑥𝑖(𝑘 + 1) = 𝑥𝑖(𝑘) + 𝐶 [𝑥1(𝑘)𝑥2(𝑘)

] + 𝑟(𝑘)

Y el sistema expandido resulta:

Page 12: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

[

𝑥1(𝑘 + 1)𝑥2(𝑘 + 1)𝑥3(𝑘 + 1)𝑥4(𝑘 + 1)

] = [𝐴 0

−𝐶 1] [

𝑥1(𝑘)𝑥2(𝑘)𝑥3(𝑘)𝑥4(𝑘)

] + [𝐵0

] 𝑢(𝑘) + [01

] 𝑟(𝑘)

[

𝑥1(𝑘 + 1)𝑥2(𝑘 + 1)𝑥3(𝑘 + 1)𝑥4(𝑘 + 1)

] = [

1.6487 0 00.149 1.3376 −0.1644

0.0093 0.1644 0.9889

000

0 0 −0.7071 1

] [

𝑥1(𝑘)𝑥2(𝑘)𝑥3(𝑘)𝑥4(𝑘)

] + [

0.12970.00660.0003

0

] 𝑢(𝑘) + [

0001

] 𝑟(𝑘)

Se debe llevar este sistema expandido a la forma canónica controlable obteniendo la matriz ACE.

𝐴𝐶𝐸 = [

0 1 0 0 0 1

0 0 0

0 01

−2.2263 7.4113 −9.161 4.9753

]

Y se obtiene un nuevo polinomio característico:

∆𝑧 = 𝑧4 − 4.975𝑧3 + 9.161𝑧2 − 7.4113𝑧 + 2.2255

Por la expansión se debe agregar un nuevo polo deseado, en este caso duplicaremos el polo S = -10 (Z = 0.3679), por lo que el polinomio característico deseado a lazo cerrado sería: Obtenemos las ganancias del vector KE:

𝐾𝐶𝐸 = [−2.1147 6.5652 − 68821 2.4389] Y el vector de realimentación para las variables originales resulta:

𝑘𝐸 = 𝑃𝑐𝐸−1𝐾𝐶𝐸 = [15.3131 67.6756 30.153 − 5.0224] Y resolviendo el sistema expandido se obtiene un error en estado estacionario de:

𝐺𝑒𝑒𝐸 = −0.1991 Lo cual no representa una mejoría absoluta y nos quedamos con el sistema más sencillo.

Page 13: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

4.- Resultados: Para resolver el ejercicio se planteó el siguiente ejercicio en Matlab que reúne cada una de las indicaciones presentadas en el apartado 3, el script cuenta con comentario lo suficientemente claro para poder ser entendido. clear all %definir función de transferencia num = []; %numerador den = [1 2 5]; %denomidaor G = zpk([num],[den],[1]);

%definir tiempo de muestreo T = 0.1;

%definir los polos deseados en forma de columna s = [-10 -1+i -1-i]';

%identificación del modelo de estados polos1 = (pole(G))'; [zeros2,gain] = zero(G); zeros1 = zeros2'; [Ac,Bc,Cc,Dc] = zp2ss([zeros1],[polos1],[gain]);

%discretización del sistema en modelo de estados con %retenedor de orden cero [A,B,C,D] = c2dm(Ac,Bc,Cc,Dc,T,'zoh');

%valores propios vp = eig(A); %polinomio caracteístico polinomio = poly(A);

%Transformación a canónica controlable M = ctrb(A,B); %definir matriz con el polinomio caracteristico W = [5.1857 -3.9753 1; -3.9753 1 0; 1 0 0]; Pc = M*W; PcI = inv(Pc);

%nuevo modelo AC = Pc\A*Pc; BC = Pc\B; CC = C*Pc;

%polinomio caracteístico deseado %discretizar los polos deseados z1 = exp(s*T); z = z1'; %ordena en forma de fila PD = poly(z);

%identificar la matriz en lazo cerrado deseada ALC = [0 1 0; 0 0 1; 0.3012 -1.4811 2.1685];

Page 14: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

%obtención vector K deseado de realimentación kc1 = AC(3,1) - ALC(3,1); kc2 = AC(3,2) - ALC(3,2); kc3 = AC(3,3) - ALC(3,3); KC = [kc1 kc2 kc3];

%armado de nueva matriz en lazo cerrado %se obtiene el vector K en la forma no controlable K = KC*PcI; ALCC = A - B*K;

%se construye la funcion de transferencia para verificar los polos [numR,denR] = ss2tf(ALCC,B,C,0); sys = tf([numR],[denR],0.1); %%FIN TAREA ESPECÏFICA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%error en estado estacionario I = eye(rank(ALCC)); aux = inv(I - ALCC); Gee = C*aux*B;

%Transformación a canónica controlable sistema expandido %Expandir matriz A a AE aux1 = rank(A); AE = zeros(aux1+1); for m = 1:aux1 for j = 1:aux1 AE(m,j) = AE(m,j) + A(m,j); end end for m = 4:aux1+1 for j = 1:aux1 AE(m,j) = AE(m,j) - C(1,j); end end AE(aux1+1,aux1+1)= 1;

%Expandir matriz B a BE BE = zeros(aux1+1,1); for n = 1:aux1 BE(n,1) = BE(n,1) + B(n,1); end BE(aux1+1,1)= 0;

%Expandir matriz C a CE CE = zeros(1,aux1+1); for p = 1:aux1 CE(1,p) = CE(1,p) + C(1,p); end CE(1,aux1+1) = 1;

polyE = poly(AE); ME = ctrb(AE,BE);

Page 15: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

%definir matriz con el polinomio caracteristico de AE WE = [-7.4113 9.161 -4.9753 1;9.161 -4.9753 1 0;-4.9753 1 0 0; 1 0 0

0]; PcE = ME*WE; PcIE = inv(PcE);

%nuevo modelo Expandido ACE = PcE\AE*PcE; BCE = PcE\BE;

%nuevo polinomio característico PAE = poly(ACE);

%polinomio caracteístico deseado expandido %discretizar los polos deseados con un nuevo polo sE = [-10 -10 -1+i -1-i]'; z1E = exp(sE*T); zE = z1E'; %ordena en forma de fila PDE = poly(zE);

%obtención vector K deseado de realimentación kc1E = PDE(1,5) - PAE(1,5); kc2E = PDE(1,4) - PAE(1,4); kc3E = PDE(1,3) - PAE(1,3); kc4E = PDE(1,2) - PAE(1,2); KCE = [kc1E kc2E kc3E kc4E];

%armado de nueva matriz en lazo cerrado expandida %se obtiene el vector K en la forma no controlable KE = KCE*PcIE; ALCCE = AE - BE*KE;

%se construye la funcion de transferencia para verificar los polos [numRE,denRE] = ss2tf(ALCCE,BE,CE,0); sys2 = tf([numRE],[denRE],0.1);

%error en estado estacionario IE = eye(rank(ALCCE)); auxE = inv(IE - ALCCE); GeeE = CE*auxE*BE

Como resultados vamos observar las distintas gráficas del lugar geométrico de las raíces, las respuestas ante una entrada paso y como se vio en el apartado 3 se obtuvo los errores en estado estacionario. En la figura 4 se puede observar el lugar geométrico de las raíces para el sistema original del problema, vemos que los polos se ubican fuera de la circunferencia unidad y por ello el sistema es inestable como se observa en la figura 5 que muestra su respuesta ante una entrada escalón.

Page 16: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Figura 4. Lugar geométrico de las raíces sistema original sin realimentación.

Figura 5. Respuesta paso al sistema original.

Page 17: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

En la figura 6 y 7 se observa el lugar geométrico de las raíces del sistema con la realimentación aplicada, como vemos se posicionan en los lugares deseados una vez discretizado el sistema y se encuentran dentro de la circunferencia unidad por lo que el sistema es estable como se observa en la figura 8.

Figura 6. Lugar geométrico de las raíces sistema realimentado.

Figura 7. Zoom lugar geométrico de las raíces sistema realimentado.

Page 18: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Figura 8. Respuesta escalón del sistema realimentado.

Como se explicó en el apartado 3 se nota un pequeño error en estado estacionario de 0.13, para intentar reducir el error en estado estacionario se expandió el sistema duplicando el polo dominante. En la figura 9 observamos el lugar geométrico de las raíces del sistema expandido, observamos que se añadió un polo extra y que sigue siendo estable, la respuesta para una entrada escalón está en la figura10.

Figura 9. Lugar geométrico de las raíces sistema expandido.

Page 19: Control Por Realimentación Del Estado

Técnicas Avanzadas en el diseño de sistemas de Control

Figura 10. Respuesta escalón sistema expandido.

5.- Conclusiones:

El regulador de realimentación de estados implementa un control tipo predictivo

que analiza la evolución del sistema en el tiempo.

Se puede diseñar un control por realimentación de los estados para poder ubicar

de manera arbitraria polos deseados y que el sistema se vuelva estable.

Este es un proceso que utiliza muchas operaciones matriciales por lo que es

recomendable utilizar una herramienta que nos faciliten los cálculos.

Al expandir el sistema para intentar reducir el error en estado estacionario no se

mejoró significativamente (solo se invirtió el error), por lo que nos podemos

conformar con el sistema de original realimentado.

5.- Bibliografía:

Transparencias de clase “Agustín Jiménez Avello”, UPM.

Apuntes de clase “Daniel Rodriguez Ramirez”, Universidad de Sevilla. (http://www.esi2.us.es/~danirr/apuntesIC4.pdf ).

http://www.ing.unlp.edu.ar/controlm/electronica/archivos/practicas/6/ejerciciosr6.pdf