Вы находитесь на странице: 1из 20

COMPENSACIÓN UTILIZANDO EL LUGAR GEOMÉTRICO DE LAS RAÍCES

EJEMPLO 1.1

ANALISIS TEORICO
PASO 1:

Se verifica si los PDD pertenecen al lugar geométrico de las raíces


De la grafica de Matlab

PASO 2:

Se debe calcular numéricamente el valor de con la condición de angulo

G |PDD   ceros  polos


G |PDD   (3  2 3i )(0.5*(3  2 3i))
G |PDD  130.89  106.11
G |PDD  237

Este resultado no es igual a -180

Por ello se debe añadir = 57, para satisfacer la condición de ángulo.
PASO 3:

Utilizando el primer procedimiento se añade el cero en s = - 3, y se obtiene


numéricamente el valor del ángulo del polo tal como se muestra continuación (figura
11.8).
Donde :
  z P
  57
P  z 
 P  33
Por relación trigonométrica:

3, 464
tg 60º 
x
x  5,3333
Por lo tanto el cero estará en s = - 3 y el polo en s = - 8,33333

PASO 4:

Finalmente, la ganancia para que ese punto sea el polo dominante deseado se
calcula utilizando la condición de módulo:

( s  3) 5
K* * 1
s  8.33 s (0.5s  1)
K  3.0333

De allí, que el compensador a añadir tendrá la siguiente función de transferencia.

s3
Gc  3.0333*
s  8.333

PROGAMACIÓN EN MATLAB
clear all;clc
format compact
num=[5];
den=[0.5 1 0];
Gs=tf(num,den)
disp('grafica del sistema sin compensar - grafica (1)')
subplot(2,1,1)
rlocus(Gs)
title('grafica 1 - LGR de la FTLA sin compensar')
disp('diseño del compensador en adelanto;con los polos deseados')
disp('el polo deseado es')
s1=-3+2*sqrt(3)*j;
s2=-3-2*sqrt(3)*j;
fprintf('pd= %.4f + %.4f j\n',real(s1),imag(s1))
fprintf('pd= %.4f - %.4f j\n',real(s1),imag(s1))
disp('hallamos la deficiencia angular de los pd en la FTLA')
fi=abs(-angle(s1)*180/pi-angle(0.5*s1+1)*180/pi)-180;
fprintf('deficiencia angular= %.4f°\n',fi)
disp('con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador')
disp('asumiendo que el cero z=-3 hallamos el polo(p)')
z=-3;
p=-2*sqrt(3)*tand(fi)-3;
fprintf('p= %.4f \n',p)
disp('mediante la condicion de modulo hallamos K del compensador')
K=abs(((s1-p)*s1*(0.5*s1+1))/((s1-z)*5))
disp('entonces el compensador en adelanto tendra la siguiente funcion de
transferencia')
numc=K*[1 -z];
denc=[1 -p];
Gc=tf(numc,denc)
disp('el sistema compensado seria')
nums=conv(num,numc);
dens=conv(den,denc);
Gsc=tf(nums,dens)
disp('grafica del sistema compensado - grafica (2)')
subplot(2,1,2)
rlocus(Gsc)
title('grafica 2 - LGR de la FTLA compensado')

RUN DEL PROGRAMA


Gs =

5
-----------
0.5 s^2 + s

Continuous-time transfer function.

grafica del sistema sin compensar - grafica (1)


diseño del compensador en adelanto;con los polos deseados
el polo deseado es
pd= -3.0000 + 3.4641 j
pd= -3.0000 - 3.4641 j
hallamos la deficiencia angular de los pd en la FTLA
deficiencia angular= 56.9955°
con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador
asumiendo que el cero z=-3 hallamos el polo(p)
p= -8.3333
mediante la condicion de modulo hallamos K del compensador
K =
3.0333
entonces el compensador en adelanto tendra la siguiente funcion de
transferencia

Gc =

3.033 s + 9.1
-------------
s + 8.333

Continuous-time transfer function.


el sistema compensado seria

Gsc =

15.17 s + 45.5
-----------------------------
0.5 s^3 + 5.167 s^2 + 8.333 s

Continuous-time transfer function.

grafica del sistema compensado - grafica (2)


GRAFICAS

grafica 1 - LGR de la FTLA sin compensar


2
Imaginary Axis (seconds-1)

-1

-2
-2.5 -2 -1.5 -1 -0.5 0 0.5
Real Axis (seconds -1)

grafica 2 - LGR de la FTLA compensado


20
Imaginary Axis (seconds-1)

10

-10

-20
-9 -8 -7 -6 -5 -4 -3 -2 -1 0 1
Real Axis (seconds -1)
EJEMPLO 1.2
Para el siguiente sistema, se desea que los polos dominantes deseados sean s 2
2 3j y se satisfaga un Kv = 20

ANÁLISIS TEÓRICO
Se verifica que los polos dominantes deseados pertenezcan al LGR.
clc
clear
num=[1]
den=[1 4 0]
G=tf(num,den)
sisotool(G)
PDD  s1
s1  2  2 3i
s1  2  3.4641i
G |PDD   ceros  polos
G |PDD   s  ( s  4)
G |PDD  120  60
G |PDD  180

K
G |PDD 
4*4
G |PDD  1
Se calcula el Kv del sistema no compensado

16
K v  lim G ( s)  4
s 0 4
Como no satisface, se debe añadir un atraso.
1
K requerido
 T
K nocompensado 1
T
20

4
 5
0.05
s  0.01

s  0.05
Gc ( s ) 
s  0.01
Se comprueba
4.0252
Gc ( s) PDD 
4.005
Gc ( s) |PDD  120.6164  120.1239
Gc ( s) |PDD  0.4925
A partir de la función de transferencia:
s  0.05 16
kV  lim s * Gs ( s )G ( s )  ( )*
s 0 s  0.01 s ( s  4)
kV  5* 4
kV  20

PROGAMACIÓN EN MATLAB

clc
clear all
sys=tf([1],[1 4 0])
a=-2+(2*sqrt(3)*i);
Gs=1/((a^2)+4*a);
Gs1=angle(Gs)*180/pi
Gt=(Gs);
K=abs(1/Gt)
Kv=K/4
%Hallando Beta
Kvdeseado=20
Beta=Kvdeseado/Kv
%Se escoje un cero
cero=0.05;
polo=cero/Beta;
Gc=tf([1 cero],[1 polo])
%Comprobando
Gcc=(a+cero)/(a+polo);
absoluto=abs(Gcc)
angulo=angle(Gcc)*180/pi

RUN DEL PROGRAMA

sys =
1
---------
s^2 + 4 s
Continuous-time transfer function.
Gs1 =
180
K=
16.0000
Kv =
4.0000
Kvdeseado =
20
Beta =
5.0000
Gc =
s + 0.05
--------
s + 0.01

Continuous-time transfer function.


absoluto =
0.9951
angulo =
-0.4999

EJEMPLO 1.3

Un sistema de control en retroalimentación simple tiene la función de transferencia del


proceso que se muestra en la Ec. 1.11. Para dicho sistema se requiere que el lazo cerrado
tenga una respuesta tal que, el ζ 0, 5; el ts (2%) 2 y el Kv 20 para lo cual se dispone de
compensadores en adelanto, atraso y adelanto-atraso.

ANÁLISIS TEÓRICO
PASO 1:

Se ubican los PDD.


  0.5
a cos( )  60
1  2
tg ( ) 

4
ts2% 
 wa
ts2%  2
PDD = s1 = - 2 + tg 60x 2 = - 2 + 3,46j

PASO 2:

Se verificará numéricamente si los PDD pertenecen o no al LGR original.

G( s) |PDD  s |PDD  ( S  1) |PDD  ( S  5) |PDD


G( s) |PDD  120
PROGAMACIÓN EN MATLAB

clc
clear all
sys=tf([1],[1 6 5 0])
a=-2+(3.46*i);
Gs=1/((a^3)+6*a^2+5*a);
Gs1=angle(Gs)*180/pi
ang=abs(Gs1-180)
angcom=ang/4
Y=30-angcom
Beta=83.75051
x=3.46/tan((Beta)*pi/180)
Ceroad=-2-x
alfa=180-90-30-angcom
y=3.46/tan((alfa)*pi/180)
Poload=-y-2
Gca=tf([1 2.38],[1 6.72])^2
Gcaa=((a+2.38)/((a)+6.72))^2;
angulocom=angle(Gcaa)*180/pi
%Añadiendo el angulo necesario
%Primero se calcula el Kad
Kad=1/abs(Gs*Gcaa)
%compensador con Kad
Gsadt=Gca*Kad*sys
%como Kv no satisface la condicion del error
%Usamos un atraso
Kvrequerido=20
Kv=4.68
Beta=Kvrequerido/Kv
%Decidimos poner el cero en s=0.05
ceroat=0.05
poloat=ceroat/Beta
%Verificamos
Gcatr=((a+0.05)/((a)+0.0117));
absGcatr=abs(Gcatr)
anguloGcatr=angle(Gcatr)*180/pi
Gcatraso=tf([Kad Kad*0.05],[1 0.0117])
%La funcion de Transferencia Compensada
Gst=sys*Gcatraso*Gca

3.3. RUN DEL PROGRAMA

sys =
1
-----------------
s^3 + 6 s^2 + 5 s
Continuous-time transfer function.
Gs1 =

84.7774
ang =
95.2226
angcom =

23.8057
Y =
6.1943
Beta =
83.7505
x =
0.3789
Ceroad =
-2.3789
alfa =
36.1943
y =
4.7285
Poload =

-6.7285
Gca =
s^2 + 4.76 s + 5.664
---------------------
s^2 + 13.44 s + 45.16

Continuous-time transfer function.


angulocom =

94.9784
Kad =

186.3323
Gsadt =
186.3 s^2 + 886.9 s + 1055
-------------------------------------------------
s^5 + 19.44 s^4 + 130.8 s^3 + 338.2 s^2 + 225.8 s

Continuous-time transfer function.


Kvrequerido =

20

Kv =
4.6800
Beta =
4.2735
ceroat =

0.0500
poloat =
0.0117
absGcatr =
0.9953
anguloGcatr =
-0.4791
Gcatraso =
186.3 s + 9.317
---------------
s + 0.0117
Continuous-time transfer function.
Gst =
186.3 s^3 + 896.3 s^2 + 1100 s + 52.77
-----------------------------------------------------------
s^6 + 19.45 s^5 + 131 s^4 + 339.7 s^3 + 229.7 s^2 + 2.642 s
Continuous-time transfer function

EJEMPLO 1.5

Para un sistema de control de velocidad en retroalimentación simple, cuya función de


transferencia del proceso se muestra en la Ec. 1.13, se necesita que el sistema a lazo cerrado
satisfaga los siguientes requerimientos:
→ Error al escalón unitario menor que 0,1
→ Polos dominantes s = −1 + 2 j

PROGAMACIÓN EN MATLAB
clear all;clc
format compact
%EJEMPLO 6.1
num=[1];
den=[1 4 3 0];
Gs=tf(num,den)
disp('grafica del sistema sin compensar - grafica (1)')
subplot(2,1,1)
rlocus(Gs)
title('grafica 1 - LGR de la FTLA sin compensar')
disp('diseño del compensador en adelanto;con los polos deseados')
disp('se desea que el factor de amortiguamiento sea = 0.45');
E=0.45;
disp('como condicion el factor de amortiguamiento por la frecuencia natural es =
0.4');
EW=4;
disp('de la condicion podemos hallar la frecuenci natural')
W=EW/E;
fprintf('frecuencia natural = %.4f s\n',W)
disp('el polo deseado es')
s1=-EW+W*sqrt(1-E^2)*j;
s2=-EW-W*sqrt(1-E^2)*j;
fprintf('pd= %.4f + %.4f j\n',real(s1),imag(s1))
fprintf('pd= %.4f - %.4f j\n',real(s1),imag(s1))
disp('hallamos la deficiencia angular de los pd en la FTLA')
fi=abs(-angle(s1)*180/pi-angle(s1+2)*180/pi)-180;
fprintf('deficiencia angular= %.4f°\n',fi)
disp('con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador')
disp('asumiendo que el cero z=-4 hallamos el polo(p)')
z=-4;
p=-imag(s1)*tand(fi)+z;
fprintf('p= %.4f \n',p)
disp('mediante la condicion de modulo hallamos K del compensador')
K=abs(((s1-p)*s1*(s1+2))/((s1-z)*1))
disp('entonces el compensador en adelanto tendra la siguiente funcion de
transferencia')
numc=K*[1 -z];
denc=[1 -p];
Gc=tf(numc,denc)
disp('el sistema compensado seria')
nums=conv(num,numc);
dens=conv(den,denc);
Gsc=tf(nums,dens)
disp('grafica del sistema compensado - grafica (2)')
subplot(2,1,2)
rlocus(Gsc)
title('grafica 2 - LGR de la FTLA compensado')

RUN DEL PROGRAMA

Gs =

1
-----------------
s^3 + 4 s^2 + 3 s

Continuous-time transfer function.

grafica del sistema sin compensar - grafica (1)


diseño del compensador en adelanto;con los polos deseados
se desea que el factor de amortiguamiento sea = 0.45
como condicion el factor de amortiguamiento por la frecuencia
natural es = 0.4
de la condicion podemos hallar la frecuenci natural
frecuencia natural = 8.8889 s
el polo deseado es
pd= -4.0000 + 7.9380 j
pd= -4.0000 - 7.9380 j
hallamos la deficiencia angular de los pd en la FTLA
deficiencia angular= 40.8851°
con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador
asumiendo que el cero z=-4 hallamos el polo(p)
p= -10.8725
mediante la condicion de modulo hallamos K del compensador
K =
96.2475
entonces el compensador en adelanto tendra la siguiente funcion de
transferencia

Gc =

96.25 s + 385
-------------
s + 10.87

Continuous-time transfer function.

el sistema compensado seria

Gsc =

96.25 s + 385
-------------------------------------
s^4 + 14.87 s^3 + 46.49 s^2 + 32.62 s

Continuous-time transfer function.

grafica del sistema compensado - grafica (2)


EJEMPLO 1.6

Para un sistema de control de retroalimentación simple cuya función de transferencia a lazo abierto es la
que se muestra en la Ec. 1.14, se requiere introducir un controlador que garantice que la respuesta del lazo
cerrado tenga un ts2% ≤ 1, ωd ≤ 2 y un coeficiente de error de velocidad Kv ≥ 20.}

PROGAMACIÓN EN MATLAB

clear all;clc
format compact
%EJEMPLO 6.1
num=[1];
den=[];
Gs=tf(num,den)
disp('grafica del sistema sin compensar - grafica (1)')
subplot(2,1,1)
rlocus(Gs)
title('grafica 1 - LGR de la FTLA sin compensar')
disp('diseño del compensador en adelanto;con los polos deseados')
disp('se desea que el factor de amortiguamiento sea = 0.45');
E=0.45;
disp('como condicion el factor de amortiguamiento por la frecuencia natural es =
0.4');
EW=4;
disp('de la condicion podemos hallar la frecuenci natural')
W=EW/E;
fprintf('frecuencia natural = %.4f s\n',W)
disp('el polo deseado es')
s1=-EW+W*sqrt(1-E^2)*j;
s2=-EW-W*sqrt(1-E^2)*j;
fprintf('pd= %.4f + %.4f j\n',real(s1),imag(s1))
fprintf('pd= %.4f - %.4f j\n',real(s1),imag(s1))
disp('hallamos la deficiencia angular de los pd en la FTLA')
fi=abs(-angle(s1)*180/pi-angle(s1+2)*180/pi)-180;
fprintf('deficiencia angular= %.4f°\n',fi)
disp('con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador')
disp('asumiendo que el cero z=-4 hallamos el polo(p)')
z=-4;
p=-imag(s1)*tand(fi)+z;
fprintf('p= %.4f \n',p)
disp('mediante la condicion de modulo hallamos K del compensador')
K=abs(((s1-p)*s1*(s1+2))/((s1-z)*1))
disp('entonces el compensador en adelanto tendra la siguiente funcion de
transferencia')
numc=K*[1 -z];
denc=[1 -p];
Gc=tf(numc,denc)
disp('el sistema compensado seria')
nums=conv(num,numc);
dens=conv(den,denc);
Gsc=tf(nums,dens)
disp('grafica del sistema compensado - grafica (2)')
subplot(2,1,2)
rlocus(Gsc)
title('grafica 2 - LGR de la FTLA compensado')
RUN DEL PROGRAMA
Gs =

1
-------------
s^2 + 6 s + 5

Continuous-time transfer function.

grafica del sistema sin compensar - grafica (1)


diseño del compensador en adelanto;con los polos deseados
se desea que el factor de amortiguamiento sea = 0.45
como condicion el factor de amortiguamiento por la frecuencia natural es
= 0.4
de la condicion podemos hallar la frecuenci natural
frecuencia natural = 8.8889 s
el polo deseado es
pd= -4.0000 + 7.9380 j
pd= -4.0000 - 7.9380 j
hallamos la deficiencia angular de los pd en la FTLA
deficiencia angular= 40.8851°
con la deficiencia angular hallamos el polo(p) y el cero(z) del
compensador
asumiendo que el cero z=-4 hallamos el polo(p)
p= -10.8725
mediante la condicion de modulo hallamos K del compensador
K =
96.2475
entonces el compensador en adelanto tendra la siguiente funcion de
transferencia

Gc =
96.25 s + 385
-------------
s + 10.87

Continuous-time transfer function.

el sistema compensado seria

Gsc =

96.25 s + 385
---------------------------------
s^3 + 16.87 s^2 + 70.24 s + 54.36

Continuous-time transfer function.

grafica del sistema compensado - grafica (2)

GRÁFICAS:

Вам также может понравиться