Está en la página 1de 11

1er curso de Ingeniera Industrial:

Ingeniera de Control

Prctica 10:
Diseo de compensadores con
MATLAB.

Departamento de Ingeniera electrnica, Telecomunicacin y Automtica.


rea de Ingeniera de Sistemas y Automtica.

Prctica 10. Diseo de compensadores con MATLAB

OBJETIVOS:

Presentar los procedimientos para el diseo y la compensacin de sistemas de control de una


entrada y una salida invariantes con el tiempo utilizando el mtodo del lugar de las races.

1. COMPENSACIN DE SISTEMAS. INTRODUCCIN


Los sistemas de control se disean para realizar tareas especficas. Los requisitos impuestos sobre el
sistema de control, se dan como especificaciones de comportamiento (una respuesta transitoria o
estacionaria con unas caractersticas determinadas). Un primer paso para conseguir un comportamiento
satisfactorio del sistema sera establecer su ganancia. Sin embargo, en muchos casos prcticos, ajustando
nicamente la ganancia, no se proporciona una alteracin suficiente para que el sistema pueda cumplir las
especificaciones dadas, adems si incrementamos la ganancia en exceso, conseguiremos una mejora en el
comportamiento estacionario del sistema pero al mismo tiempo reduciremos su estabilidad. Para que el
sistema cumpla con las especificaciones deseadas, se introduce un nuevo elemento denominado
compensador, que modifica el comportamiento deficiente del sistema original.
Normalmente los compensadores y controladores utilizados son los compensadores de adelanto, los de
retardo, los de retardo-adelanto y los controladores PID. En esta prctica se analiza el mtodo del lugar de
las races para disear compensadores de adelanto, de retardo y de retardo-adelanto.
El mtodo del lugar de las races es una tcnica grfica que permite determinar las localizaciones de todos
los polos en lazo cerrado a partir de las localizaciones de los polos y ceros en lazo abierto cuando algn
parmetro (generalmente la ganancia) vara de cero a infinito. En muchas ocasiones un ajuste de la
ganancia es insuficiente para conseguir que nuestro sistema cumpla con unos requisitos determinados,
siendo necesario aadir polos y/o ceros (efecto del compensador), sobre el lugar de las races original. La
adicin de un polo a una funcin de transferencia en lazo abierto, tiene el efecto de desplazar el lugar de
las races hacia le derecha, lo cual tiende a disminuir la estabilidad relativa del sistema y el tiempo de
asentamiento de la respuesta. Al aadir un cero a la funcin de transferencia en lazo abierto, se consigue
desplazar el lugar de las races hacia la izquierda, consiguiendo de esta forma hacer el sistema ms estable
y acelerar el tiempo de asentamiento de la respuesta.
Los compensadores se pueden colocar en serie con la planta (compensacin en serie) o en paralelo
(compensacin en paralelo o mediante realimentacin). Nos centraremos en el primer tipo de
compensacin, compensacin en serie.

2. COMPENSADORES DE ADELANTO.
Existen muchas formas de obtener compensadores de adelanto, por ejemplo, redes electrnicas que utilizan
amplificadores operacionales, redes RC elctricas y sistemas amortiguadores mecnicos.
+
-

Gc(s)

G(s)

La funcin de transferencia de un compensador de adelanto sera:

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


1
Ts + 1
T
= Kc
Gc ( s ) = K c
1
Ts + 1
s+
T
s+

(0 < < 1)

Veamos con un ejemplo cmo disear este tipo de compensador. Consideremos el siguiente sistema de la
figura 1 donde:

Figura 1. Diagrama de bloques

G ( s) =

4
s ( s + 2)

H ( s) = 1

Se pretende que el sistema cumpla con las siguientes especificaciones:

Frecuencia natural no amortiguada n=4 rad/seg.


Factor de amortiguamiento relativo =0.5.

Paso 1:
Hallar los polos en lazo cerrado del sistema original. Utilizando Matlab tendramos:
>> fun_g=tf([4],[1 2 0]);
>> fun_h=tf([1],[1]);
>> fun_m=feedback(fun_g,fun_h)
Transfer function:
4
------------s^2 + 2 s + 4

Para saber cuales son los polos en lazo cerrado escribimos:


>> roots([1 2 4])
ans =
-1.0000 + 1.7321i
-1.0000 - 1.7321i

Paso 2:
Nos piden que:

n j n 1 2

donde = 0.5 y n= 4 rad/seg.

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


Por lo tanto, el polo dominante ha de tener las siguientes coordenadas:

s = 2 j 2 3
Si dibujamos el lugar de las races de nuestro sistema tenemos:
>> fun_g=tf([4],[1 2 0])
Transfer function:
4
--------s^2 + 2 s
>> rlocus(fun_g)
>> v=[-5 2 -3 3];
>> axis(v)

Figura 2. Lugar de las races sin compensacin.

Puede observarse que variando nicamente la ganancia no sera suficiente para obtener el polo en lazo
cerrado deseado ( s = 2 j 2 3 ).
Paso 3:
En este paso se hallaran los polos y ceros del compensador que modifiquen a la funcin de transferencia
G(s) de forma que el polo en lazo cerrado sea el que se ha definido en el Paso 2.
La funcin de transferencia del compensador ser:

1
Ts + 1
T
= Kc
Gc ( s ) = K c
1
Ts + 1
s+
T
s+

(0 < < 1)

Hay muchos valores de T y que producirn la contribucin de ngulo necesaria en los polos de lazo
cerrado. En este paso, y mediante el procedimiento grfico explicado a continuacin, se determinarn las
localizaciones del polo y cero del compensador de adelanto.
En primer lugar definimos el punto P con las coordenadas del punto que nos interesara tener en lazo
cerrado s = 2 j 2 3 . Tambin sabemos que es el ngulo con el que debe de contribuir el
compensador de adelanto si el nuevo lugar de las races va a pasar por las localizaciones deseadas de los
polos dominantes en lazo cerrado. ste se determinar a partir de la condicin de argumento.
Grficamente, el procedimiento es el siguiente: primero dibujamos una lnea horizontal que pasa por el
punto P, tambin unimos este punto con el origen O. El ngulo formado por estas dos lneas ser .
Trazamos la bisectriz (PB) a este ngulo y tomamos

con la bisectriz PB. Las intersecciones de PC y

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


PD con el eje real negativo proporcionan la localizacin necesaria para el polo y cero de la red de adelanto
(ver Fig.3). Por tanto el compensador diseado har de P un punto sobre el lugar de las races del sistema
compensado. La ganancia en lazo abierto se determina a partir de la condicin de magnitud.

/2

/2

/2

B D

Figura 3. Determinacin del polo y del cero de una red de adelanto.

De forma analtica, los clculos a realizar seran:

Py

= arctg

= 180 ; donde es el ngulo formado entre PA y PO.

Px

= 60 donde Py = 2 3 y Px = 2;

El mdulo de OP ser: OP =

Px2 + Py2 = 4

Por otro lado, el ngulo con el que debe de contribuir el compensador de adelanto para que la suma total
de los ngulos sea de 180(2k+1) se obtiene a partir del argumento de G(s) para el polo deseado:

4
s ( s + 2)

s = 2 + j 2 3

4
= 30
= arctg

12
j
4
3

Por tanto el compensador debe de contribuir con 30, es decir, = 30. El paso siguiente es calcular los
siguientes ngulos:

C = 180 / 2 / 2 = 45
; sabiendo que ambos casos la suma de los ngulos que forman
D = 180 / 2 + / 2 = 75.
sus respectivos tringulos es de 180.

Para determinar la posicin del polo y el cero, aplicamos el teorema del seno obteniendo:

sen C
=
OP

+ )
2 2
OC

sen(

sen D
=
OP

)
2 2
OD

sen(

Resultando el siguiente valor de los segmentos: OC = - 5.4. OD = -2.9 donde OC ser el polo en s y OD el
cero en s. Entonces:

T=

1
= 0.345
2.9

T =

1
= 0.185
5.4

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


Por tanto =0.537.
Finalmente, la funcin en lazo abierto del sistema compensado se convierte en:

GC ( s )G ( s ) = K C

4
s + 2.9
K ( s + 2.9)
=
s + 5.4 s ( s + 2) s ( s + 2)( s + 5.4)

Para calcular la ganancia K, utilizamos la condicin de magnitud de la siguiente forma:

K ( s + 2.9)
s ( s + 2)( s + 5.4)

=1
s = 2 + j 2 3

Resolviendo obtenemos K=18.7. Por lo tanto, Kc=18.7/4=4.68.


Representando el lugar de las races se obtiene:
>> den=conv([1 2 0],[1 5.4])
>> num=conv([18.7],[1 2.9])
>> fs=tf(num,den)
Transfer function:
18.7 s + 54.23
---------------------s^3 + 7.4 s^2 + 10.8 s
>> rlocus(fs)
>> axis(v)

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB

Figura4. Lugar de las races del sistema compensado.

Por otro lado, la constante de error esttico de velocidad sera de:

K v = lim sGc ( s ) G ( s ) = lim


s >0

s >0

s 18.7( s + 2.9)
= 5.02 seg 1
s ( s + 2)( s + 5.4)

5. COMPENSADORES DE RETARDO.
Si un sistema presenta caractersticas satisfactorias de respuesta transitoria, pero por el contrario no las
tiene en rgimen estacionario, para compensarlo bastara con incrementar la ganancia en lazo cerrado, sin
modificar notablemente las caractersticas de la respuesta transitoria. Esto quiere decir que no debe
cambiarse de manera significativa el lugar de las races en la proximidad de los polos dominantes en lazo
cerrado, sino que debe incrementarse la ganancia en lazo abierto tanto como se necesite. Esto se consigue
colocando un compensador de retardo en cascada con la funcin de transferencia del sistema.
Para evitar un cambio apreciable en el lugar de las races, la contribucin del ngulo de la red de retardo
debe limitarse a un valor pequeo por tanto se sitan el polo y el cero relativamente cerca y cerca del
origen del plano s.
La ecuacin de un compensador de retardo podra ser:

1
T
Gc ( s ) = K c
1
s+
T
s+

Veamos el clculo de un compensador de retardo a travs de un ejemplo:


Sea el sistema: G ( s ) =

1.06
s ( s + 1)( s + 2)

Se pretende incrementar la constante de error esttico de velocidad hasta cerca de 5seg-1 sin modificar
notablemente la ubicacin de los polos en lazo cerrado.
Paso 1:
Dibujar el lugar de las races y ubicar los polos en lazo cerrado.
>> den=conv([1 1 0],[1 2]) % para calcular el denominador.
>> fun=tf([1.06],den)
Transfer function:
1.06
----------------s^3 + 3 s^2 + 2 s
>> rlocus(fun)
>> fu=tf([1],[1]);
>> fa=feedback(fun,fu)
Transfer function:
1.06

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


-----------------------s^3 + 3 s^2 + 2 s + 1.06
>> roots([1 3 2 1.06])
ans =
-2.3386
-0.3307 + 0.5864i
-0.3307 - 0.5864i

Figura 5. Lugar de las races del sistema no compensado

Los polos dominantes en lazo cerrado son:


s=-0.3307 +/- 0.5864i
del cual se obtendra un factor de amortiguamiento de 0.491 y una frecuencia natural no amortiguada de
0.673 rad/seg.
Paso 2.
La constante de error esttico de velocidad de G(s), ser:

K v = lim sG ( s ) = 0.53seg 1
s >0

Paso 3.

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB


Para cumplir las especificaciones del ejercicio, insertamos un compensador de retardo, que debe de
incrementar el error esttico de velocidad en un factor de aproximadamente 10 (5/0.53), por tanto =10.
Paso 4:
Para determinar la funcin de transferencia del compensador, situamos el polo cerca del origen (s = 0.005),
por lo tanto, para un =10, el celo del compensador estara en s = 0.05:

Gc ( s ) = K c

s + 0.05
s + 0.005

De esta forma comprobamos que la contribucin de los polos y ceros del compensador al rgimen
transitorio ser muy pequea. La funcin de transferencia en lazo abierto del sistema compensado ser:

Gc ( s )G ( s ) =

K ( s + 0.05)
s ( s + 0.005)( s + 1)( s + 2)

K=1.06Kc

Paso 5.
La grfica del lugar de las races para el sistema compensado puede verse en la figura 6.

Figura 6. Lugar de las races del sistema compensado.

Los nuevos polos dominantes en lazo cerrado se muestran en negrita:


>> f_lc=feedback(fun_compensada,fu)
Transfer function:
1.06 s + 0.053

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB

-------------------------------------------s^4 + 3.005 s^3 + 2.015 s^2 + 1.07 s + 0.053


>> roots([1 3.005 2.015 1.07 0.053])
ans =
-2.3339
-0.3082 + 0.5657i
-0.3082 - 0.5657i
-0.0547

Paso 7. Ajuste de la ganancia.


La ganancia del sistema en lazo abierto es:

K=

s ( s + 0.005)( s + 1)( s + 2)
s + 0.05

= 1.0235
s = 0.31+ j 0.55

Donde, la ganancia del compensador es estimada como:


Kc=K/1.06=0.9656.
Por tanto, la funcin de transferencia del compensador diseado ser:

Gc ( s ) = 0.9656

s + 0.05
s + 0.005

Finalmente, la funcin de transferencia del sistema compensado en lazo abierto es:

G1 ( s ) =

1.0235( s + 0.05)
s ( s + 0.005)( s + 1)( s + 2)

Donde, si calculamos de nuevo Kv.

K v = lim sG1 ( s ) = 5.12 seg 1 .


s >0

Vemos que se ha conseguido el objetivo de diseo que es incrementar la constante de error esttico hasta
cerca de Kv=5seg-1.

6. COMPENSADORES DE RETARDO-ADELANTO.
Como se ha visto anteriormente, la compensacin de adelanto acelera la respuesta e incrementa la
estabilidad del sistema. La compensacin de retardo mejora la precisin en estado estacionario del sistema,
pero reduce la velocidad de respuesta. Si se desea mejorar ambas respuestas, debe utilizarse de forma
simultnea un compensador de adelanto y un compensador de retardo, siendo ms econmico utilizar un
compensador de adelanto-retardo.

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

Prctica 10. Diseo de compensadores con MATLAB

EJERCICIO 1.
Para el sistema de control de la figura, disear un compensador de retardo Gc(s) tal que la constante de
error esttico de velocidad Kv sea 50 seg-1 sin modificar notablemente la localizacin original de los polos
en lazo cerrado que estn en: s = 2 j 6

Gc(s)

10
s( s + 4)

Estudiar las respuestas del sistema (compensado y sin compensar) ante un entrada escaln unitario.

EJERCICIO 2
En el sistema de la figura, disear un compensador de adelanto para que los polos dominantes en lazo
cerrado se localicen en s = 2 j 2 3 . Dibujar la respuesta a una entrada escaln del sistema diseado
con Matlab.

Gc(s)

5
s (0.5s + 1)

rea de Ingeniera de Sistemas y Automtica. Curso 2007/2008

10

También podría gustarte