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

Taller No 3: Diseño de Controladores y Compensadores

Módulo Control Analógico


Especialización en Control e Instrumentación Industrial
FACULTAD DE INGENIERÍA ELECTRÓNICA
Prof. Omar Pinzón-Ardila

Ing. Richard Otero Montañez – Ing. Carlos Angarita Prato

1. Utilizando la herramienta sisotool de Matlab analice el sistema realimentado con


función de transferencia directa:

𝐾
𝐺 𝑠 =
𝑠 + 3 (𝑠 + 6)

Dibujar el lugar de las raíces y la respuesta al escalón unitario para K=1.

Código Resultados
clc Zero/pole/gain:
clear all
1
K=1;
Gs=zpk([],[-3 -6],K) -----------
Step(feedback(Gs,1)) (s+3) (s+6)
rlocus(Gs)
rlocus(feedback(Gs,1))

Figura 1. Lugar de las raíces en lazo abierto


Figura 2. Lugar de las raíces en lazo cerrado

Figura 3. Respuesta al escalón unitario

El sistema realimentado ante una entrada escalón unitario tiene un Yss=0.0526


con un ts= 1.42 segundos.

2. Para el caso anterior diseñe un controlador proporcional que alcance un 10% de


sobrepaso. Dibuje la respuesta temporal y determine:

a. La ganancia proporcional K.

b. El tiempo de establecimiento.

c. El error en régimen permanente.


Código Resultados
clc
clear all
K=1;
Gs=zpk([],[-3 -6],K)
sisotool(Gs)

Figura 4. Lugar de las raíces con especificaciones de overshoot del 10%

Figura 5. Respuesta al escalón unitario

La ganancia proporcional K y el tiempo de establecimiento:

Para lograr un overshoot del 10% se requiere de una ganancia K=40, el tiempo de
establecimiento ts=0.778 segundos.
El error en régimen permanente:

En la respuesta al escalón unitario se observa que el sistema no tiene un valor


final de 1 sino de 0.69 por lo tanto existe un gran error en régimen permanente.

Código Resultados
K=40; Zero/pole/gain:
Gs2=zpk([],[-3 -6],K) 40
%sisotool(Gs)
%Errores de regimen permanente -----------
Kp=dcgain(Gs2) (s+3) (s+6)
%Error de pocisión
err_pos=1/(1+Kp) Kp = 2.2222
s=tf('s')
Kv=dcgain(s*Gs2)
%Error en Velocidad err_pos =0.3103
err_vel=1/Kv
Ka=dcgain(s^2*Gs2) Transfer function: s
%Erroi en aceleración
err_acel=1/Ka
Kv = 0

err_vel = Inf

Ka =0

err_acel =Inf

Del código anterior observamos que el error de posición del sistema es de 0.3103.

Por lo tanto a medida que se aumenta en cierta manera la ganancia K se


disminuye el tiempo de establecimiento, además que se mejoro el error en
régimen permanente. En la siguiente tabla se compara el tiempo de
establecimiento y el error de posición de los dos casos (inciso 1 y 2).

K=1 K=40 Relación


ts= 1.42 segundos ts=0.778 segundos El ts se reduce casi al
doble
E= 0.9474 E=0.3103 El error se reduce en
alrededor de tres
veces

3. Reducir un 50% el tiempo de establecimiento de literal 2 mediante un control PD


o un compensador en adelanto. Dibuje la respuesta temporal y determine:

a. La función de trasferencia del compensador.

b. El tiempo de establecimiento.
c. El error en régimen permanente.

d. Verifique si este sistema se puede aproximar a un sistema de segundo orden.

Se requiere de un tiempo de establecimiento ts= 0.389 segundos y mantener un


overshoot del 10%.

Para diseñar un controlador PD se inserta un cero real de acuerdo a las


especificaciones del tiempo de establecimiento y ajustamos ganancia.

El controlador esta dado de la siguiente manera:

𝐶𝑃𝐷 𝑠 = 𝐾 ∗ (1 + 𝑇𝑑. 𝑠)

Figura 6. Implementación del PD junto con las especificaciones en el lugar


geométrico de las raíces

Figura 7. Especificaciones del controlador PD


Figura 8. Respuesta al escalón unitario con la implementación del PD

La función de trasferencia del compensador:

𝐶𝑃𝐷 𝑠 = 263.48 ∗ (1 + 0.043𝑠)


𝐶𝑃𝐷 𝑠 = 11.33 ∗ (𝑠 + 23.214)

El tiempo de establecimiento:

ts= 0.307 segundos

El error en régimen permanente:

Se puede hallar observando la respuesta al escalón en su valor de estado estable


que equivale a 0.936 y resulta de la diferencia con el valor del escalón.

E= 1 - 0.936 = 0.064

La implementación de un PD mejora la velocidad de respuesta del sistema al


reducir a la mitad el tiempo de asentamiento y se reduce el error en 5 veces
comparado con el control proporcional. El único inconveniente es el no poderse
mantener el overshoot en menos del 10%, sino que alcanzo un valor del 13.4%.

Para verificar si el sistema se puede aproximar a un sistema de segundo orden:

Código Resultados
clc Error = 0.0641
clear all
%TF planta
K=1; Zero/pole/gain:
Gs=zpk([],[-3 -6],K) 11.33 (s+23.21)
%sisotool(Gs) ---------------
%TF Controlador
Kd=11.33; (s+3) (s+6)
Cs=zpk([-23.214],[],Kd)
%Calcular el error
Kp=dcgain(Gs*Cs); Zero/pole/gain:
Error=1/(1+Kp) 11.33 (s+23.21) (s+6) (s+3)
%Sistema en lazo abierto ------------------------------------------
Gss=Gs*Cs (s+3) (s+6) (s^2 + 20.33s + 281)
%Sistema en lazo cerrado
Xss=Gss/(1+Gss)
pzmap(Xss)

Analizando todo el sistema con el controlador PD se observa que la función de


transferencia de todo el sistema realimentado es de segundo orden.

11.33 𝑠 + 23.21 𝑠 + 6 (𝑠 + 3) 11.33 𝑠 + 23.21


𝐹 𝑠 = =
𝑠 + 3 𝑠 + 6 (𝑠 2 + 20.33𝑠 + 281) (𝑠 2 + 20.33𝑠 + 281)

Todo esto se puede corroborar observando el mapa de polos y ceros de todo el


sistema realimentado con el controlador PD.

Figura 9. Mapa de polos y ceros del sistema total

Se observa con el mapa de polos y ceros del sistema que se reduce a un sistema
de segundo orden porque dos de los polos se cancelan con dos ceros .

Al analizar la respuesta transitoria del sistema se puede distinguir que la curva se


asemeja a la de un sistema de segundo orden.

4. Al caso anterior añada un controlador PI o un compensador en atraso. Dibuje la


respuesta temporal y determine:

a. La función de trasferencia del compensador.


b. El tiempo de establecimiento.

c. El error en régimen permanente.

d. Verifique si este sistema se puede aproximar a un sistema de segundo orden.

Se requiere de un tiempo de establecimiento ts= 0.389 segundos y mantener un


overshoot del 10%.

Para diseñar un controlador PI se inserta un polo en el origen o integrador y un


cero real de acuerdo a las especificaciones del tiempo de establecimiento y
ajustamos la ganancia.

El controlador esta dado de la siguiente manera:


(𝑠 + 𝑎)
𝐶𝑃𝐼 𝑠 = 𝐾 ∗
𝑠

Figura 10. Implementación del PI junto con las especificaciones en el lugar


geométrico de las raíces
Figura 11. Especificaciones del controlador PI

Figura 12. Respuesta al escalón unitario con la implementación del PI

La función de trasferencia del compensador:


(1 + 0.65𝑠)
𝐶𝑃𝐼 𝑠 = 93.471 ∗
𝑠
(𝑠 + 1.55)
𝐶𝑃𝐼 𝑠 = 60.7562 ∗
𝑠
El tiempo de establecimiento:

ts= 1.2 segundos

El error en régimen permanente:

Se observa en la respuesta al escalón que el valor final equivale a 1, por lo tanto el


error en régimen permanente es 0.

E=0

Implementar un PI permite corregir el error en régimen permanente, y debido al


polo en el origen hace que la constante de error Kp sea infinita y por lo tanto el
error se hace igual a cero. A pesar de que se logra un overshoot del 10% el
sistema se hace más lento, por lo cual se tuvo un tiempo de asentamiento 4 veces
mayor respecto al ts de la implementación del PD.

Para verificar si el sistema se puede aproximar a un sistema de segundo orden:

Código Resultados
clc Zero/pole/gain:
clear all
1
%TF planta ---------------
K=1;
(s+3) (s+6)
Gs=zpk([],[-3 -6],K)
%sisotool(Gs)
%TF Controlador Zero/pole/gain:
Ki=60.7562; 60.7562 (s+1.55)
Cs=zpk([-1.55],[0],Ki) ------------------------
%Calcular el error
Kp=dcgain(Gs*Cs);
s
Error=1/(1+Kp)
%Sistema en lazo abierto Error = 0
Gss=Gs*Cs
%Sistema en lazo cerrado Zero/pole/gain:
Fss=Gss/(1+Gss)
pzmap(Fss) 60.7562 (s+1.55)
------------------------
s (s+3) (s+6)

Zero/pole/gain:
60.7562 s (s+1.55) (s+3) (s+6)
----------------------------------------------------------
s (s+3) (s+6) (s+1.38) (s^2 + 7.62s + 68.24)

Analizando todo el sistema realimentado con el controlador PI se observa que la


función de transferencia es de tercer orden.

60.7562𝑠 𝑠 + 1.55 𝑠 + 3 (𝑠 + 6)
𝐹 𝑠 =
𝑠 𝑠 + 3 𝑠 + 6 𝑠 + 1.38 (𝑠 2 + 7.62𝑠 + 68.24)

60.7562 𝑠 + 1.55
𝐹(𝑠) =
𝑠 + 1.38 (𝑠 2 + 7.62𝑠 + 68.24)

Figura 13. Mapa de polos y ceros del sistema total implementado el PI


Se observa en el mapa de los polos y ceros, que se cancelan los polos de la
planta y el polo del integrador con los respectivos ceros.

El sistema se puede reducir a uno de segundo orden debido a la cercanía del polo
-1.38 con el cero -1.55; evidenciado en la curva de la respuesta transitoria

5. Para el sistema en el literal 1 cuál es el margen de fase necesario para


conseguir un sobrepaso de un 10%. Calcular el ancho de banda necesario para
alcanzar el tiempo de establecimiento obtenido en 3.

Se tiene en cuenta las siguientes especificaciones:

%OS=10% y ts= 0.389 segundos

Código Resultados
%Overshoot= 10% z =0.5912
%tiempo de asentamiento=0.389
pos=10;
ts=0.389; Pm =58.5931
z=(-log(pos/100))/(sqrt(pi^2+log(pos/100)^2))
Pm=atan(2*z/(sqrt(-2*z^2+sqrt(1+4*z^4))))*(180/pi) Wbw =20.1761
Wbw=(4/(ts*z))*sqrt((1-2*z^2)+sqrt(4*z^4-4*z^2+2))

El margen de fase para obtener un overshoot del 10% debe ser PM>58.5931º y el
ancho de banda necesario para obtener un tiempo de establecimiento de 0.389
segundos debe ser Wbw=20.1761.

6. Con el margen de fase obtenido en el literal 5 ajustar la ganancia del sistema


hasta conseguir el margen de fase deseado. Dibujar la respuesta transitoria y
determinar el tiempo de establecimiento.

Se ajusta el diagrama de bode de tal manera que PM<58.6º

Figura 14. Diagrama de bode ajustado al PM=58.6º


Figura 15. Respuesta transitoria PM=58.6º

La ganancia que se ajustó para lograr este margen de fase es K= 82.155. El


tiempo de establecimiento es de 0.833 segundos y el overshoot del 20.6%.

Se sigue ajustando la ganancia K.

Para obtener un overshoot del 10% se requiere de un PM= 87.5º

Figura 16. Margen de fase ajustado para un %OS=10%


Figura 17. Respuesta transitoria PM=87.5º

La ganancia que se ajustó para lograr este margen de fase es K= 40. El tiempo de
establecimiento es de 0.778 segundos y el overshoot del 10%. No es suficiente
con ajustar la ganancia K para obtener el ts deseado y el %OS.

7. Para el ejercicio anterior diseñar en Bode un controlador PD o compensador en


adelanto que mejore la respuesta transitoria (asuma especificaciones de
desempeño).

Dibujar la respuesta temporal y muestre el controlador obtenido.

Se implementa un compensador en adelanto o Lead, lo cual es agregar un polo


real y un cero real junto a una ganancia.

Se requiere que la respuesta transitoria tenga un %OS=10% y ts=0.389 segundos.

Código Resultados
% porcentaje de sobrepaso pos =10
pos=10
% tiempo de establecimiento
Ts=0.39 Ts =0.3900
% cálculo de zeta en función del
porcentaje de sobrepaso z = 0.5912
z=(-
log(pos/100))/(sqrt(pi^2+log(pos/100)^2))
% cálculo del margen de fase
Pm = 58.5931
Pm=atan(2*z/(sqrt(-
2*z^2+sqrt(1+4*z^4))))*(180/pi) Wbw =20.1243
% cálculo del ancho de banda
Wbw=(4/(Ts*z))*sqrt((1-2*z^2)+sqrt(4*z^4- wn =17.9006
4*z^2+2))
%cálculo de la frecuencia natural
wn=(-log(0.02*sqrt(1-z^2)))/(Ts*z)
≥se elige una =0.65 y como PM≈100entonces PM=65º, aunque en los
cálculos PM=58.6º. Se toma finalmente para el diseño del compensador un
PM=60º.

n≥17.9006 rad/s, se elige un n= 18 rad/s, por lo tanto cg= 18 rad/s

La planta cuando tiene una frecuencia de 18 rad/s tiene un PM=28º (Ver Figura
18) por lo tanto se requieren de 32º para lograr el PM=60º.

Figura 18. PM de la planta con frecuencia de 18 rad/s (deseada)

1−𝛼
sin 32 =
1+𝛼
α= 0.307

1
= 18𝑟𝑎𝑑/𝑠
𝑇 α

T=0.1003 segundos

𝑇. α = 0.0308

-10log α=4.87 dB

El compensador en adelanto para diseño por Bode se define como:

(1 + 𝑇𝑠)
𝐶 𝑠 =𝐾∗
(1 + α𝑇𝑠)
Por lo tanto:
(1 + 0.1003𝑠) (𝑠 + 9.97)
𝐶 𝑠 =𝐾∗ = 𝐾/0.307 ∗
(1 + 0.0308𝑠) (𝑠 + 32.46)

Se inserta el compensador en el sistema y se ajusta la ganancia hasta que se


cumplan las especificaciones de desempeño.

Figura 19. Ajuste de la ganancia

Se analiza el comportamiento de la respuesta transitoria hasta que se obtiene la


siguiente gráfica que cumple con las especificaciones de diseño.

Figura 20. Respuesta transitoria implementando el compensador adelanto


Figura 21. Diagrama de Bode del sistema implementando el compensador Lead

Implementando el compensador adelanto diseñado por Bode se obtiene una


respuesta transitoria con un overshoot del 8.6% y un tiempo de establecimiento de
0.389 segundos, cumpliendo con los requerimientos de diseño. Sin embargo
existe un error ya que se tiene un valor final de 0.858.

E = 1 - 0.858 = 0.142

La función de transferencia del compensador en adelanto es:

(1 + 0.1003𝑠) (𝑠 + 9.97)
𝐶 𝑠 = 109.05 ∗ = 355.2117 ∗
(1 + 0.0308𝑠) (𝑠 + 32.46)

8. Para el caso anterior diseñar en Bode un controlador PI (la combinación resulta


un controlador PID) o compensador en atraso que elimine el error en régimen
permanente. Dibujar la respuesta temporal y muestre el controlador obtenido.

Ahora se inserta un compensador en atraso o Lag, que consiste en insertar otro


cero real y un polo real; el polo se puede ajustar en el origen con el fin de eliminar
el error en régimen permanente del caso anterior y solo restaría ajustar el cero real
restante para que cumpla con las especificaciones de desempeño.

El controlador a diseñar tendrá la siguiente expresión:

(1 + 𝑇𝑠) (𝑠 + 1/𝑇) (𝑠 + 𝑎)
𝐶 𝑠 = = =
𝑇𝑠 𝑠 𝑠

Para calcular el cero se tiene en cuenta la frecuencia de corte para un PM=60º


que es de 18 rad/s
Situando el cero una década antes que de la frecuencia de ganancia:

1 18
= 𝑟𝑎𝑑/𝑠
𝑇 10
𝑇 = 0.556 𝑠𝑒𝑔𝑢𝑛𝑑𝑜𝑠

1
𝑎= = 1.7986
𝑇
Por lo tanto el compensador Lag que elimina el error queda de la siguiente forma:

(𝑠 + 1.7986)
𝐶 𝑠 =
𝑠
Se inserta este valor en el editor de compensadores de la sisotool y se ajusta la
ganancia para cumplir con el overshoot y el ts deseado.

Figura 22. Ajuste de la ganancia

Figura 23. Respuesta transitoria implementando el compensador adelanto-atraso


Figura 24. Diagrama de Bode del sistema implementando el compensador Lead-
Lag

Se observa en la Figura 23 que el tiempo de asentamiento es de 0.398 segundos


y que el erro se anula aunque se tiene un sobrepaso máximo de 14%.

La función de transferencia del compensador en adelanto-atraso es:

1 + 0.1003𝑠 (1 + 0.556𝑠) 𝑠 + 9.97 (𝑠 + 1.7886)


𝐶 𝑠 = 336.72 ∗ = 676.6613 ∗
𝑠(1 + 0.0308𝑠) 𝑠(𝑠 + 32.46)

Por lo tanto, la implementación de un compensador adelanto-atraso permite


eliminar el error de régimen permanente al insertar un integrador o polo en el
origen.

9. (opcional) En Simulink representar los sistemas conseguidos mostrando los


resultados de simulación ante una respuesta de tipo escalón y otra de tipo rampa.

Simulink del punto 2. Control proporcional K=40.


Figura 25. Respuesta al escalón (con K)

Figura 26. Respuesta a la rampa (con K)

Simulink del punto 3. Controlador PD


Figura 27. Respuesta al escalón (con PD)

Figura 28. Respuesta a la rampa (con PD)

Simulink del punto 4. Controlador PI


Figura 29. Respuesta al escalón (con PI)

Figura 30. Respuesta a la rampa (con PI)

Simulink del punto 7. Compensador Adelanto


Figura 31. Respuesta al escalón (con Lead)

Figura 32. Respuesta a la rampa (con Lead)

Simulink del punto 8. Compensador Adelanto-Atraso


Figura 33. Respuesta al escalón (con Lead-Lag)

Figura 34. Respuesta a la rampa (con Lead-Lag)


Análisis Comparativo de los Controladores y Compensadores

Función de Tipo ts %OS Error PM Wcg


Transferencia (segundos) (%) (°) (rad/s)
𝐾 Planta 1.42 -- 0.9474 Inf NaN
𝐺 𝑠 =
𝑠 + 3 (𝑠 + 6)
----- Deseado 0.389 10 0 60 18
K=40 Proporcional 0.778 10 0.3103 87.5 4.44
𝐶𝑃𝐷 𝑠 = 11.33 ∗ (𝑠 + 23.214)
PD 0.307 13.4 0.064 65.7 17.6
(𝑠 + 1.55)
𝐶𝑃𝐼 𝑠 = 60.7562 ∗ PI 1.2 10 0 54.6 6.4
𝑠

(𝑠 + 9.97)
𝐶 𝑠 = 355.2117 ∗ Lead 0.389 8.6 0.142 71.4 11.7
(𝑠 + 32.46)

Lead-Lag 0.398 14 0 54.4 17.8


Conclusiones

AI incorporar a un controlador proporcional las características de un controlador


derivativo, se mejora sustancialmente la velocidad de respuesta del sistema, a
consta de una menor precisión en la salida.

La respuesta del controlador PI es la suma de las respuestas de un controlador


proporcional y un controlador integral lo que proporciona una respuesta
instantánea al producirse la correspondiente señal de error provocada por el
control proporcional y un posterior control integral que se encargará de extinguir
totalmente la señal de error.

El compensador por adelanto produce una mejora en la respuesta transitoria,


aunque pequeñas mejoras en la exactitud del régimen permanente y además
aumenta el sistema en el orden siguiente. Al aumentar el también el margen de
fase y el ancho de banda produce la reducción del tiempo de establecimiento.

La compensación por atraso produce la mejora considerable en la exactitud del


régimen permanente, incluso se puede anular el error si el polo del compensador
se ubica en el origen. Sin embargo, se incrementa el tiempo de la respuesta
transitoria.

En el compensador por adelanto-atraso, la acción de adelanto aumenta el ancho


de banda, permitiendo mejorar la velocidad del sistema y reducir el overshoot. Por
otro lado, la acción de atraso produce una mejora en la respuesta en régimen
permanente, mas no en respuesta transitoria por la reducción del ancho de banda.

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