Fundamentos de la calibración en sistemas de regulación

La calibración de los sistemas de regulación es el proceso de ajustar los parámetros que determinan el comportamiento del lazo de control para lograr la estabilidad, precisión y eficiencia deseada. Estos parámetros incluyen el punto de consigna (setpoint), el margen de actuación, la histéresis y la velocidad de respuesta. Su correcta configuración garantiza que actuadores como válvulas de control, variadores de frecuencia y controladores PID respondan adecuadamente a las desviaciones de la variable controlada, minimizando el desgaste y optimizando el consumo energético.

Punto de consigna (setpoint)

El punto de consigna es el valor objetivo que se desea mantener en la variable controlada (temperatura, presión, caudal, nivel, etc.). Se expresa en las mismas unidades que la variable de proceso. Un setpoint mal elegido puede provocar que el sistema opere fuera de su rango óptimo, causando desgaste prematuro, ineficiencia energética o defectos de calidad.

Ejemplo: En un horno de tratamiento térmico, si el setpoint se fija en 850°C pero la zona óptima del proceso es 820-830°C, el producto puede sufrir sobrecalentamiento. La calibración del setpoint debe basarse en las especificaciones del proceso y en la capacidad del sistema de control.

En controladores PID, el setpoint se introduce como una constante o puede provenir de una consigna externa (ej. desde un HMI o un lazo maestro en cascada).

Margen de actuación

El margen de actuación define el intervalo alrededor del setpoint dentro del cual el sistema de regulación responde a las desviaciones. Un margen estrecho produce una respuesta muy sensible (puede generar oscilaciones), mientras que un margen amplio provoca una respuesta lenta y posible error estacionario.

Ejemplo: En el control de nivel de un tanque mediante una válvula de entrada, si se establece un margen de actuación de ±2 cm, la válvula se abrirá o cerrará cuando el nivel se desvíe más de 2 cm del setpoint. Un margen de ±0,5 cm haría que la válvula actuara constantemente, desgastándola prematuramente.

El margen de actuación está directamente relacionado con la banda proporcional en los controladores PID (inversa de la ganancia proporcional).

Histéresis

La histéresis es una banda de insensibilidad alrededor del punto de consigna que evita que el sistema responda a pequeñas fluctuaciones de la variable controlada. Es especialmente importante en sistemas con elementos de acción todo/nada (termostatos, presostatos) pero también se aplica en válvulas modulantes para reducir el desgaste.

Ejemplo: Un termostato con histéresis de 2°C corta la calefacción cuando la temperatura alcanza 22°C y la vuelve a encender cuando baja a 20°C (setpoint 21°C). Así se evitan ciclos de encendido/apagado cada pocos segundos.

La histéresis se expresa en las mismas unidades que la variable (ej. °C, bar) o como porcentaje del rango. Su valor debe elegirse equilibrando la precisión requerida y la vida útil del actuador.

Velocidad de respuesta

La velocidad de respuesta determina cuán rápido actúa el sistema ante una desviación. Depende de:

  • Los parámetros del controlador PID (ganancias proporcional, integral, derivativa).
  • Las características del actuador (velocidad de apertura/cierre de una válvula, tiempo de rampa de un variador).
  • La dinámica del proceso (inercia térmica, tiempo muerto).

Ejemplo: En un variador de frecuencia que controla la velocidad de una bomba, se puede ajustar el tiempo de rampa para que la velocidad aumente gradualmente, evitando golpes de ariete en la tubería.

Un ajuste inadecuado puede causar sobreimpulsos (overshoot), oscilaciones persistentes o tiempos de establecimiento excesivos.

Relación con elementos reguladores: PID, válvulas y variadores

Los parámetros de calibración interactúan con los elementos finales de control:

  • Controladores PID: Permiten ajustar con precisión el setpoint, la banda proporcional (margen), la acción integral (elimina error estacionario) y la acción derivativa (anticipa cambios). La sintonización (tuning) es el proceso de ajustar Kp, Ti, Td.
  • Válvulas de control: Pueden ser de dos posiciones (todo/nada) o modulantes (posición proporcional). En válvulas modulantes se ajusta la histéresis para evitar movimientos innecesarios y se configura la velocidad de apertura (si es motorizada).
  • Variadores de frecuencia (VFD): Permiten controlar la velocidad de motores de forma continua. Se calibran parámetros como el tiempo de aceleración/desaceleración (velocidad de respuesta) y los límites de frecuencia (equivalente al margen de actuación).

La correcta integración entre estos elementos y los parámetros de regulación es clave para lograr un control estable y eficiente.

Esquema técnico integrado que combina un diagrama de lazo de control (con bloques SCADA, PID, VFD, Válvula de control, Sensor y Proceso físic) y un gráfico temporal que ilustra la interacción de los parámetros de regulación: Setpoint, Margen (Deadband) e Histéresis en la curva de Variable de Proceso (PV). Se detallan los flujos de señales analógicas y de control.
Figura 30: Interacción de parámetros de regulación con elementos de control físicos (lazo completo). Fuente: Elaboración propia / Licencia: CC BY-NC 4.0
🐍 Simulación de regulador con histéresis y control PID
# regulation_params.py - Simula la respuesta de un sistema de regulación
# Permite ajustar setpoint, histéresis y parámetros PID

import time
import matplotlib.pyplot as plt
import numpy as np

class ThermostatHysteresis:
    """Simula un termostato con histéresis (control ON/OFF)."""
    def __init__(self, setpoint, hysteresis):
        self.setpoint = setpoint
        self.hysteresis = hysteresis
        self.state = False   # False: off, True: on
        self.high = setpoint + hysteresis/2
        self.low = setpoint - hysteresis/2

    def update(self, temperature):
        if self.state:
            if temperature >= self.high:
                self.state = False
        else:
            if temperature <= self.low:
                self.state = True
        return self.state

class PIDController:
    """Controlador PID discreto."""
    def __init__(self, Kp, Ki, Kd, setpoint, output_limits=(0, 100)):
        self.Kp = Kp
        self.Ki = Ki
        self.Kd = Kd
        self.setpoint = setpoint
        self.output_limits = output_limits
        self.integral = 0.0
        self.last_error = 0.0

    def update(self, pv, dt):
        error = self.setpoint - pv
        self.integral += error * dt
        deriv = (error - self.last_error) / dt if dt > 0 else 0.0
        output = self.Kp * error + self.Ki * self.integral + self.Kd * deriv
        # Limitación y anti-windup
        if output > self.output_limits[1]:
            output = self.output_limits[1]
            self.integral -= error * dt
        elif output < self.output_limits[0]:
            output = self.output_limits[0]
            self.integral -= error * dt
        self.last_error = error
        return output

# --- Simulación de un horno con control PID y comparación con histéresis ---
def simulate_process(K=2.0, tau=10.0, noise=0.2):
    """Modelo térmico de primer orden."""
    T = 20.0
    while True:
        dT = (K * power - T) * (dt / tau)
        T += dT + np.random.normal(0, noise)
        yield T

dt = 0.5
time_total = 120
num_steps = int(time_total / dt)

# Control PID
pid = PIDController(Kp=1.5, Ki=0.1, Kd=0.2, setpoint=80, output_limits=(0, 100))
# Control ON/OFF con histéresis
thermo = ThermostatHysteresis(setpoint=80, hysteresis=4.0)

# Almacenar datos
t = []
pid_temp = []
pid_power = []
onoff_temp = []
onoff_power = []
process_pid = simulate_process()
process_onoff = simulate_process()

for i in range(num_steps):
    t.append(i * dt)
    # PID loop
    pv_pid = next(process_pid)
    power_pid = pid.update(pv_pid, dt)
    pid_temp.append(pv_pid)
    pid_power.append(power_pid)
    # ON/OFF with hysteresis
    pv_onoff = next(process_onoff)
    power_onoff = 100 if thermo.update(pv_onoff) else 0
    onoff_temp.append(pv_onoff)
    onoff_power.append(power_onoff)

# Gráficas
plt.figure(figsize=(12, 8))
plt.subplot(2,1,1)
plt.plot(t, pid_temp, label='PID - Temperatura')
plt.axhline(y=80, color='r', linestyle='--', label='Setpoint')
plt.ylabel('Temperatura (°C)')
plt.legend()
plt.title('Control PID con acción continua')

plt.subplot(2,1,2)
plt.plot(t, onoff_temp, label='ON/OFF con histéresis', color='orange')
plt.axhline(y=80, color='r', linestyle='--', label='Setpoint')
plt.xlabel('Tiempo (s)')
plt.ylabel('Temperatura (°C)')
plt.legend()
plt.title('Control ON/OFF con histéresis')
plt.tight_layout()
plt.show()

print("El control PID mantiene la temperatura más estable, pero requiere sintonización.")
print("El control ON/OFF con histéresis evita ciclos excesivos, pero tiene oscilaciones.")

Este script simula dos estrategias de regulación: PID (control continuo) y ON/OFF con histéresis (control todo/nada). Muestra cómo los parámetros de calibración (setpoint, histéresis, ganancias PID) afectan la estabilidad y el desgaste de los actuadores.

Tendencias Actuales 2026

La calibración de sistemas de regulación se está automatizando mediante herramientas de autoajuste (autotuning) integradas en los PLC y DCS. Los controladores con inteligencia artificial (redes neuronales) ajustan dinámicamente los parámetros según las condiciones del proceso. Además, los gemelos digitales permiten simular la respuesta del lazo antes de aplicarla en campo, reduciendo tiempos de puesta en marcha y riesgos.

Aplicaciones con Raspberry Pi

Una Raspberry Pi puede ejecutar el script de simulación para entrenar en el ajuste de parámetros de regulación. Con sensores reales (temperatura, presión) y actuadores (relés, PWM), se puede implementar un controlador PID en la práctica y verificar el efecto de la histéresis y la velocidad de respuesta.

Aplicaciones con Arduino

Arduino es ideal para prototipos de control: se puede programar un PID con la librería ArduinoPID y probar diferentes valores de setpoint, margen e histéresis en sistemas reales (como un horno de laboratorio).

💼 Caso Práctico Industrial: Ajuste de histéresis

Contexto: Un termostato controla una resistencia eléctrica para mantener la temperatura de un tanque a 60 °C. Si se configura una histéresis de 4 °C, ¿entre qué temperaturas se producirán los ciclos de encendido/apagado?

Pregunta: ¿Cuáles son los puntos de disparo y rearme?

🍓 Raspberry Pi + Python

Contexto: En el script de simulación, se utiliza un controlador PID con Kp=1.5, Ki=0.1, Kd=0.2. Si se aumenta Kp a 3.0, ¿qué efecto se espera?

Pregunta: ¿Cómo afecta al comportamiento del lazo?

🐍 Variador de frecuencia

Contexto: Un variador de frecuencia controla la velocidad de una bomba. Se ajusta un tiempo de rampa de aceleración de 5 segundos para pasar de 0 a 50 Hz. ¿Qué efecto tiene este parámetro?

Pregunta: ¿Qué representa este ajuste?

Tabla 1: Parámetros de calibración en sistemas de regulación ParámetroDefiniciónEfecto si es demasiado pequeñoEfecto si es demasiado grande ' Punto de consigna (setpoint)Valor objetivo de la variable controladaProceso fuera de especificaciónProceso fuera de especificación ' — Margen de actuaciónIntervalo alrededor del setpoint donde actúa el controlRespuesta muy sensible, oscilacionesRespuesta lenta, error permanente HistéresisBanda de insensibilidad para evitar ciclos repetitivosDesgaste prematuro del actuadorPrecisión reducida, desviación mayor Velocidad de respuestaRapidez con la que actúa el sistemaSobreimpulso, inestabilidadTiempo de establecimiento largo 点

📚 Recursos Técnicos y Normativos 2026

Normativas y Estándares

Recursos Raspberry Pi y Python