Está en la página 1de 23

INSTITUTO TECNOLÓGICO DE NOGALES

CONTROL

SINTONIZACIÓN PID
ZIEGLER-NICHOLS MÉTODO 1

EQUIPO #9
DORAME FÉLIX GERARDO
GASTELUM ROMERO SOL GUADALUPE
PONCE MARQUEZ MAXIMILIANO -
SOTO AGUILAR FRÁNCISCO

Número de control
16340825
15340763
16340899
16340829

ING. MECATRÓNICA

H. Nogales, Sonora MARZO-2020


Índice
Índice de figuras 2

1. Introducción 3
1.1. Controladores PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2. Reglas Ziegler-Nichols para la sintonía de controladores PID 5


2.1. Primer método de Ziegler-Nichols . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3. Ejercicios 7
3.1. Sistema 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2. Sistema 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Referencias 22

1
Índice de figuras
1. Control PID de una planta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Respuesta a un escalón unitario de una rampa . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Curva de respuesta en forma de S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. Diagrama de bloques - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5. Respuesta al escalón unitario - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . . . 7
6. Respuesta al escalón unitario - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . . . 8
7. Punto de inflexión - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8. Recta tangente al punto de inflexión - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . 10
9. Valores T , L, Kp , Ti y Td - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
10. Respuesta al escalón unitario con controlador PID - Sistema (1) . . . . . . . . . . . . . . 12
11. Diagrama de bloques - Sistema (1) con controlador PID (Equivalente) . . . . . . . . . . 13
12. Respuesta al escalón unitario - Sistema (1) con controlador PID (Equivalente) . . . . . . 13
13. Diagrama de bloques - Sistema (1) con controlador PID (Simplificado) . . . . . . . . . . 13
14. Respuesta al escalón unitario - Sistema (1) con controlador PID (Simplificado) . . . . . 13
15. Valores para el controlador PID - Sistema (1) . . . . . . . . . . . . . . . . . . . . . . . . 14
16. Diagrama de bloques - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
17. Respuesta al escalón unitario - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . . 15
18. Respuesta al escalón unitario - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . . 16
19. Punto de inflexión - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
20. Recta tangente al punto de inflexión - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . 18
21. Valores T , L, Kp , Ti y Td - Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
22. Respuesta al escalón unitario con controlador PID - Sistema (2) . . . . . . . . . . . . . . 20
23. Diagrama de bloques - Sistema (2) con controlador PID (Equivalente) . . . . . . . . . . 21
24. Respuesta al escalón unitario - Sistema (2) con controlador PID (Equivalente) . . . . . . 21
25. Diagrama de bloques - Sistema (2) con controlador PID (Simplificado) . . . . . . . . . . 21
26. Respuesta al escalón unitario - Sistema (2) con controlador PID (Simplificado) . . . . . 21
27. Valores para el controlador PID- Sistema (2) . . . . . . . . . . . . . . . . . . . . . . . . . 22

2
1. Introducción
A continuación se presentará una breve introducción a los controladores PID y la regla
de Ziegler-Nichols para sintonizar controladores PID con un método sencillo pero que puede
aproximarse mucho al resultado deseado.
Para poner en práctica el método analizaremos los siguientes sistemas:
9
G1 (S) = (1)
(s + 9)(s + 23)
10
G2 (S) = (2)
(s + 1)(s + 9)

Se usará el método 1 de Ziegler-Nichols para encontrar los valores Kp , Ti , Td , y com-


pararemos la respuesta al escalón unitario con y sin controlador PID, ademas se utilizará
Simulink
R para comprar los diagramas de bloques del controlador PID simplificado y el
diagrama de bloques equivalente

3
1.1. Controladores PID
La Figura 1 muestra un control PID de una planta. Si se puede obtener un modelo
matemático de la planta, es posible aplicar diversas técnicas de diseño con el fin de determi-
nar los parámetros del controlador que cumpla las especificaciones del transitorio y del estado
estacionario del sistema en lazo cerrado. Sin embargo, si la planta es tan complicada que no
es fácil obtener su modelo matemático, tampoco es posible un método analítico para el diseño
de un controlador PID. En este caso, se debe recurrir a procedimientos experimentales para la
sintonía de los controladores PID. [1]

Figura 1: Control PID de una planta [1]

4
2. Reglas Ziegler-Nichols para la sintonía de controladores
PID
El proceso de seleccionar los parámetros del controlador que cumplan con las especifi-
caciones de comportamiento dadas se conoce como sintonía del controlador. Ziegler y Nichols
sugirieron reglas para sintonizar los controladores PID (esto significa dar valores a Kp , Ti y Td )
basándose en las respuestas escalón experimentales o en el valor de Kp que produce estabilidad
marginal cuando sólo se usa la acción de control proporcional. Las reglas de Ziegler-Nichols son
muy convenientes cuando no se conocen los modelos matemáticos de las plantas. No obstante, el
sistema resultante puede presentar una gran sobreelongación en su respuesta escalón de forma
que resulte no aceptable. En tales casos se necesitará una serie de ajustes finos hasta que se
obtenga el resultado deseado. [1]

2.1. Primer método de Ziegler-Nichols


En el primer método, la respuesta de la planta a una entrada escalón unitario se ob-
tiene de manera experimental, tal como se muestra en la Figura 2. Si la planta no contiene
integradores ni polos dominantes complejos conjugados, la curva de respuesta escalón unitario
puede tener forma de S, como se observa en la Figura 3. Este método se puede aplicar si la res-
puesta muestra una curva con forma de S. Tales curvas de respuesta escalón se pueden generar
experimentalmente o a partir de una simulación dinámica de la planta. [1]

Figura 2: Respuesta a un escalón unitario de


una rampa [1]

Figura 3: Curva de respuesta en forma de S


[1]

5
La curva con forma de S se caracteriza por dos parámetros: el tiempo de retardo L y la
constante de tiempo T . El tiempo de retardo y la constante de tiempo se determinan dibujando
una recta tangente en el punto de inflexión de la curva con forma de S y determinando las
intersecciones de esta tangente con el eje del tiempo y con la línea c(t) = K, tal como se muestra
en la Figura 3. En este caso, la función de transferencia C(s)/U (s) se aproxima mediante un
sistema de primer orden con un retardo del modo siguiente:

C(s) Ke−Ls
=
U (s) Ts + 1

Ziegler y Nichols sugirieron establecer los valores de Kp, Ti y Td de acuerdo con la


fórmula que se muestra en la Tabla 1.

Tabla 1: Regla de sintonía de Ziegler-Nichols basada en la respuesta escalón de la


planta (primer método).
Tipo de controlador Kp Ti Td
T
P L
∞ 0
T L
PI 0,9 L 0,3 0
T
PID 1,2 L 2L 0,5L

Obsérvese que el controlador PID sintonizado mediante el primer método de las reglas
de Ziegler-Nichols produce
1
Gc (s) = Kp (1 + + Td s)
Ti s
T 1
Gc (s) = 1,2 (1 + + 0,5Ls)
L 2Ls
(s + L1 )2
Gc (s) = 0,6T
s
Por tanto, el controlador PID tiene un polo en el origen y un cero doble en s = −1/L.

6
3. Ejercicios

3.1. Sistema 1
Primeramente observemos el diagrama de bloques y la respuesta al escalón unitario del
Sistema (1)

Figura 4: Diagrama de bloques - Sistema (1)

Figura 5: Respuesta al escalón unitario - Sis-


tema (1)

Se ve claramente un error grande a la entrada escalón unitario, para solucionar esto


utilizaremos un controlador PID sintonizado con el método 1 de Ziegler-Nichols previamente
presentado. Para esto el primer paso es obtener la respuesta al escalón unitario, aunque ya se
presentó esta respuesta usando Simulink
R a partir de aquí utilizaremos un script para hacer
todo paso a paso.
*Recordemos que el punto de inflexión es el punto donde una función cambia de ser
cóncava a convexa o viceversa, matemáticamente se puede encontrar donde la segunda derivada
es igual a 0

7
· Primer paso: Graficar la respuesta al impulso unitario
% Funcion de transferencia
G = tf(9,conv([1 9],[1 23]));

% Obtener respuesta al impulso y graficar


[y,t] = step(G);
plot(t,y);
grid on;
xlabel(’Tiempo (s)’);
ylabel(’Amplitud’);
title(’Respuesta al impulso (Sin controlador PID)’);

Figura 6: Respuesta al escalón unitario - Sistema (1)

8
· Segundo paso: Obtener punto de inflexión y gráficarlo
% Obtener punto de inflexion y graficarlo
yp = diff(y);
ypp = diff(y,2);
% Obtener la raiz
t_infl = fzero(@(T) interp1(t(2:end-1),ypp,T,’linear’,’extrap’),0);
y_infl = interp1(t,y,t_infl,’linear’);
hold on;
plot(t_infl,y_infl,’ro’);

Figura 7: Punto de inflexión - Sistema (1)

9
· Tercer paso: Graficar recta tangente al punto de inflexión
% Dibujar recta tangente al punto de inflexion
h = mean(diff(t));
dy = gradient(y, h);
[~,idx] = max(dy);
% Regresion lineal alrededor del valor maximo de la derivada
b = [t([idx-1,idx+1]) ones(2,1)] \ y([idx-1,idx+1]);
% Rango de la variable independiente para graficar la recta tangente
tv = [-b(2)/b(1); (1-b(2))/b(1)];
% Calcular recta tangente
f = [tv ones(2,1)] * b;
% Graficar recta tangente
plot(tv, f, ’-r’,’LineWidth’,1.5)
ylim([0 max(y)]);

Figura 8: Recta tangente al punto de inflexión - Sistema (1)

10
· Cuarto paso: Obtener valores T y L y calcular valores Kp , Ti y Td
% Calcular valores T y L
L = tv(1);
T = tv(2) - tv(1);

% Calcular valores para PID usando la tabla


Kp = 1.2*T/L;
Ti = 2*L;
Td = 0.5*L;

Figura 9: Valores T , L, Kp , Ti y Td - Sistema (1)

11
· Quinto paso: Construir controlador PID y graficar la respuesta al escalón unitario
% Controlador PID
C = pid(Kp,Kp/Ti,Kp*Td);

% Obtener respuesta con controlador PID


% Crear sistema con el controlador PID, el sistema y lazo cerrado
% (realimentacion unitaria)
cl_sys = feedback(C*G,1);
t = 0:0.01:3;
% Obtener respuesta al impulso y graficar
[yc,tc] = step(cl_sys,t);
figure;
plot(tc,yc,’LineWidth’,2); xlabel(’Time(s)’); ylabel(’Amplitude’);
title(’Respuesta al impulso (Con control PID obtenido mediante Zeigler Nicholas)’);
grid on;

Figura 10: Respuesta al escalón unitario con controlador PID - Sistema (1)

12
Ahora se veremos los diagramas de bloques correspondientes al controlador PID en
Simulink
R

Figura 11: Diagrama de bloques - Sistema (1)


con controlador PID (Equivalente)
Figura 12: Respuesta al escalón unitario - Sis-
tema (1) con controlador PID (Equivalente)

Figura 13: Diagrama de bloques - Sistema (1)


con controlador PID (Simplificado)

Figura 14: Respuesta al escalón unitario - Sis-


tema (1) con controlador PID (Simplificado)

13
A continuación se muestran los valores para el bloque PID del diagrama simplificado

Figura 15: Valores para el controlador PID - Sistema (1)

Como se puede apreciar en las figuras las respuestas son idénticas lo cuál implica que los
valores de las ganancias están correctamente indicadas. Además se ve, de acuerdo a la teoría,
que la respuesta al escalón unitario utilizando esta método de sintonización genera un sobre
impulso que en algunos casos no es deseable pero estos valores para las constantes Kp , Ti y Td
son una buena referencia para empezar a ajustarlas un poco mas hasta que se satisfagan las
condiciones que queramos que se cumplan.

14
3.2. Sistema 2
Primeramente observemos el diagrama de bloques y la respuesta al escalón unitario del
Sistema (2)

Figura 16: Diagrama de bloques - Sistema (2)

Figura 17: Respuesta al escalón unitario - Sis-


tema (2)

Al igual que en el ejercicio anterior utilizaremos el método 1 de Ziegler-Nichols para


sintonizar un controlador PID para este sistema, también se hará el procedimiento con el uso
de un script y compararemos los resultados al final utilizando Simulink.
R

Note que gracias a que estamos utilizando un script es muy sencillo repetir los pasos
que hicimos previamente con el sistema (1), solo hay que declarar la funcion de transferencia
del (2) para obtener el resultado deseado

15
· Primer paso: Graficar la respuesta al impulso unitario
% Funcion de transferencia
G = tf(10,conv([1 1],[1 9]));

% Obtener respuesta al impulso y graficar


[y,t] = step(G);
plot(t,y);
grid on;
xlabel(’Tiempo (s)’);
ylabel(’Amplitud’);
title(’Respuesta al impulso (Sin controlador PID)’);

Figura 18: Respuesta al escalón unitario - Sistema (2)

16
· Segundo paso: Obtener punto de inflexión y graficarlo
% Obtener punto de inflexion y graficarlo
yp = diff(y);
ypp = diff(y,2);
% Obtener la raiz
t_infl = fzero(@(T) interp1(t(2:end-1),ypp,T,’linear’,’extrap’),0);
y_infl = interp1(t,y,t_infl,’linear’);
hold on;
plot(t_infl,y_infl,’ro’);

Figura 19: Punto de inflexión - Sistema (2)

17
· Tercer paso: Graficar recta tangente al punto de inflexión
% Dibujar recta tangente al punto de inflexion
h = mean(diff(t));
dy = gradient(y, h);
[~,idx] = max(dy);
% Regresion lineal alrededor del valor maximo de la derivada
b = [t([idx-1,idx+1]) ones(2,1)] \ y([idx-1,idx+1]);
% Rango de la variable independiente para graficar la recta tangente
tv = [-b(2)/b(1); (1-b(2))/b(1)];
% Calcular recta tangente
f = [tv ones(2,1)] * b;
% Graficar recta tangente
plot(tv, f, ’-r’,’LineWidth’,1.5)
ylim([0 max(y)]);

Figura 20: Recta tangente al punto de inflexión - Sistema (2)

18
· Cuarto paso: Obtener valores T y L y calcular valores Kp , Ti y Td
% Calcular valores T y L
L = tv(1);
T = tv(2) - tv(1);

% Calcular valores para PID usando la tabla


Kp = 1.2*T/L;
Ti = 2*L;
Td = 0.5*L;

Figura 21: Valores T , L, Kp , Ti y Td - Sistema (2)

19
· Quinto paso: Construir controlador PID y graficar la respuesta al escalón unitario
% Controlador PID
C = pid(Kp,Kp/Ti,Kp*Td);

% Obtener respuesta con controlador PID


% Crear sistema con el controlador PID, el sistema y lazo cerrado
% (realimentacion unitaria)
cl_sys = feedback(C*G,1);
t = 0:0.01:3;
% Obtener respuesta al impulso y graficar
[yc,tc] = step(cl_sys,t);
figure;
plot(tc,yc,’LineWidth’,2); xlabel(’Time(s)’); ylabel(’Amplitude’);
title(’Respuesta al impulso (Con control PID obtenido mediante Zeigler Nicholas)’);
grid on;

Figura 22: Respuesta al escalón unitario con controlador PID - Sistema (2)

20
Ahora se veremos los diagramas de bloques correspondientes al controlador PID en
Simulink
R

Figura 23: Diagrama de bloques - Sistema (2)


con controlador PID (Equivalente)
Figura 24: Respuesta al escalón unitario - Sis-
tema (2) con controlador PID (Equivalente)

Figura 25: Diagrama de bloques - Sistema (2)


con controlador PID (Simplificado)

Figura 26: Respuesta al escalón unitario - Sis-


tema (2) con controlador PID (Simplificado)

21
A continuación se muestran los valores para el bloque PID del diagrama simplificado

Figura 27: Valores para el controlador PID- Sistema (2)

Si comparamos las respuestas del diagrama de bloques equivalente y simplificado se


observa que prácticamente no hay ninguna diferencia por lo que los valores para Kp , Ti y Td
están correctamente indicados en el programa. Observe que en este sistema también se presenta
una sobreelengación por lo que sería una buena idea jugar un poco mas con las constantes del
controlador para obtener una respuesta mas adecuada.

Referencias
[1] Ogata, K. Modern control engineering, 2016. Pearson.

22

También podría gustarte