Skip to content
RFrftools.io
Motor Control21 de marzo de 20266 min de lectura

Afinación PID de Ziegler-Nichols: de la respuesta escalonada en bucle abierto a las ganancias prácticas del controlador

Aprenda a ajustar el PID de Ziegler-Nichols utilizando la ganancia del proceso, el tiempo muerto y la constante de tiempo. Ejemplo resuelto con valores reales de control del motor. Calculadora online gratuita.

Contenido

Por qué el ajuste PID sigue siendo importante

Los controladores PID están en todas partes: desde el circuito de regulación térmica del horno de reflujo hasta el controlador de velocidad de un motor de corriente continua sin escobillas. A pesar del auge de las estrategias de control adaptativo y predictivo según los modelos, el PID clásico sigue siendo el motor del control integrado. La razón es simple: funciona, es barato de implementar en un micro de 8 bits y, cuando se ajusta correctamente, ofrece un rendimiento excelente.

El truco, por supuesto, está «afinado correctamente». Un PID mal ajustado oscila, se sobrepasa o responde con tanta lentitud que es mejor que no esté ahí. El método de bucle abierto de Ziegler-Nichols proporciona un punto de partida disciplinado y repetible basado en tres características mensurables del proceso: la ganancia del procesoKK, el tiempo muertoLLy la constante de tiempoτ\tau.

El método de respuesta escalonada en bucle abierto

La idea es sencilla. Se coloca el sistema en circuito abierto, se aplica un cambio gradual al actuador (por ejemplo, un paso de voltaje en el controlador del motor) y se registra la variable del proceso (velocidad del motor, temperatura, posición, lo que sea que se esté controlando). De la curva de respuesta en forma de S resultante, se extraen tres parámetros:

  • Ganancia del procesoKK: relación entre el cambio final en la salida y el paso introducido. Dimensionalmente, esto puede ser RPM por voltio, °C por porcentaje de servicio, etc.
  • Tiempo muertoLL: el tiempo de espera antes de que la salida comience a responder, expresado en segundos.
  • Constante de tiempoτ\tau: el tiempo que tarda la salida en alcanzar aproximadamente el 63% de su valor final una vez transcurrido el tiempo muerto.
Con estos tres números en la mano, Ziegler-Nichols proporciona fórmulas directas para los controladores P, PI y PID completos.

Las fórmulas de Ziegler-Nichols

Para un controlador PID, las reglas clásicas de afinación de bucle abierto de Ziegler-Nichols son:

Kp=1.2τKLK_p = \frac{1.2\,\tau}{K\,L}
Ti=2LT_i = 2L
Td=0.5LT_d = 0.5L
Las ganancias integrales y derivadas en forma paralela (ISA) son entonces:
Ki=KpTiK_i = \frac{K_p}{T_i}
Kd=KpTdK_d = K_p \cdot T_d
Para un mando solo con PI (sin acción derivada, lo que suele preferirse en sistemas ruidosos o cuando la patada derivada es un problema):
KpPI=0.9τKLK_p^{\text{PI}} = \frac{0.9\,\tau}{K\,L}
TiPI=L0.3=3.33LT_i^{\text{PI}} = \frac{L}{0.3} = 3.33L
Estas fórmulas tienen como objetivo una relación entre un cuarto de decaimiento: cada rebasamiento sucesivo equivale aproximadamente al 25% del anterior. Es una afinación moderadamente agresiva que funciona bien como punto de partida.

Ejemplo resuelto: control de velocidad de un motor de corriente continua

Supongamos que está diseñando un controlador de velocidad para un motor de corriente continua con escobillas de 24 V que acciona una cinta transportadora. Usted aumenta el ciclo de trabajo del PWM del 0% al 20% y registra la velocidad del motor con un codificador tacómetro. Esto es lo que observas:

  • El motor no comienza a acelerar hasta 0,15 s después del paso →L=0.15sL = 0.15\,\text{s}- La velocidad alcanza el 63% de su valor final ent=0.15+0.8=0.95st = 0.15 + 0.8 = 0.95\,\text{s}τ=0.8s\tau = 0.8\,\text{s}- La velocidad final se establece en 600 RPM para una entrada de trabajo del 20% →K=60020=30RPM/%K = \frac{600}{20} = 30\,\text{RPM/\%}Conectándolos a las fórmulas del PID:
    Kp=1.2×0.830×0.15=0.964.5=0.2133K_p = \frac{1.2 \times 0.8}{30 \times 0.15} = \frac{0.96}{4.5} = 0.2133
    Ti=2×0.15=0.3sT_i = 2 \times 0.15 = 0.3\,\text{s}
    Td=0.5×0.15=0.075sT_d = 0.5 \times 0.15 = 0.075\,\text{s}
    Ki=0.21330.3=0.711s1K_i = \frac{0.2133}{0.3} = 0.711\,\text{s}^{-1}
    Kd=0.2133×0.075=0.016sK_d = 0.2133 \times 0.075 = 0.016\,\text{s}
    Para el control únicamente mediante PI:
    KpPI=0.9×0.830×0.15=0.724.5=0.16K_p^{\text{PI}} = \frac{0.9 \times 0.8}{30 \times 0.15} = \frac{0.72}{4.5} = 0.16
    TiPI=3.33×0.15=0.5sT_i^{\text{PI}} = 3.33 \times 0.15 = 0.5\,\text{s}
    Puede verificarlos al instante: [abra la calculadora PID Controller Tuning (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/), introduzcaK=30K = 30,L=0.15L = 0.15,τ=0.8\tau = 0.8y confirme los resultados.

Consejos prácticos para sistemas reales

Comience con PI y, a continuación, añada D. En muchas aplicaciones de control de motores, el ruido de los sensores en la retroalimentación de velocidad (especialmente en los codificadores de baja resolución) hace que el término derivado sea más problemático de lo que merece la pena. Empieza por las ganancias del PI, comprueba que el funcionamiento es estable y añade únicamente acciones derivadas si necesitas rechazar las perturbaciones con mayor rapidez. Ziegler-Nichols es un punto de partida, no un destino. El criterio del cuarto de decaimiento suele producir un sobreimpulso mayor del que se desearía en un sistema de producción. Una práctica habitual es empezar con los valores Z-N y, a continuación, reducirKpK_pentre un 20 y un 30% e incrementarTiT_iligeramente para cambiar la velocidad y lograr una liquidación más fluida. Observe su frecuencia de muestreo. Si su bucle de control funciona a 1 kHz pero su tiempo muerto es de 150 ms, tiene 150 muestras de retardo puro. Eso está bien. Pero si tu bucle solo funciona a 50 Hz, solo tienes entre 7 y 8 muestras de tiempo muerto y el término derivado será muy aproximado. Asegúrate de queTdT_dsea como mínimo de 5 a 10 veces tu período de muestra. Antienrollamiento no es opcional. El término integral generará errores durante la saturación (p. ej., cuando el motor esté funcionando a pleno rendimiento y aún no haya alcanzado el punto de ajuste). Implementa medidas restrictivas o realiza cálculos inversos para evitar el enrollamiento o, de lo contrario, verás que la recuperación se sobrepasa considerablemente.

Vuelva a ajustar en las condiciones de funcionamiento. La ganancia del proceso y la constante de tiempo pueden cambiar con la carga, la temperatura y el voltaje de suministro. Si el motor impulsa una carga útil de masa variable, las ganancias Z-N ajustadas sin carga pueden oscilar a plena carga. Ajusta el punto de operación en el peor de los casos (el más difícil).

Cuándo usar un método diferente

La afinación en bucle abierto de Ziegler-Nichols asume un modelo de proceso de primer pedido más tiempo muerto (FOPDT). Si su sistema es de un orden significativamente superior (por ejemplo, un sistema térmico en cascada con varias constantes de tiempo), la aproximación del FOPDT puede ser deficiente y métodos como Cohen-Coon o el ajuste automático de relés pueden ofrecer mejores ganancias iniciales. En el caso de los sistemas en los que no es posible realizar una prueba escalonada de forma segura (variadores de alta potencia, procesos químicos), es más adecuado el método de ganancia máxima de Ziegler-Nichols (circuito cerrado) o el autoajuste basado en software.

Pruébelo

Recopila tus datos de respuesta escalonada, extraeKK,LLyτ\tauy [abre la calculadora PID Controller Tuning (Ziegler-Nichols)] (https://rftools.io/calculators/motor/pid-tuning/) para obtener tus ganancias iniciales en segundos. Calcula los parámetros PI y PID completos para que puedas comparar y elegir la estructura adecuada para tu aplicación. Márcala como favorita: la usarás más a menudo de lo que piensas.

Artículos Relacionados