Controlador PID temperatura

22
0.5
0.01
0.1

Temperatura actual: --

El control PID (Proporcional-Integral-Derivatiu), conegut com a PID, és un tipus de controlador utilitzat en sistemes de control automàtic per regular una variable de sortida basada en l'error entre una variable de referència desitjada i una variable de processos mesurada. Aquest controlador combina tres termes per ajustar la sortida del sistema i minimitzar l'error:

  1. Termes Proporcionals (P): Ajusta la sortida proporcionalment a l'error actual. Quan l'error és gran, la sortida es canvia més intensament, la qual cosa pot causar oscil·lacions si no s'ajusta adequadament.
  2. Termes Integrals (I): Aquest terme té en compte la suma acumulada d'errors passats. S'utilitza per eliminar errors d'estat estacionari i assegurar que l'error constant es corregeixi gradualment amb el temps.
  3. Termes Derivatius (D): Aquest terme considera la taxa de canvi de l'error. Ajuda a anticipar el comportament futur i a suavitzar la resposta del sistema, evitant sobrecorreccions i oscil·lacions.

La combinació d'aquests tres termes permet ajustar el controlador per a diferents tipus de sistemes i condicions. Els paràmetres PID (Kp, Ki i Kd) són ajustats per l'usuari o a través d'algorismes d'optimització per aconseguir un rendiment òptim del sistema. El control PID és àmpliament utilitzat en una varietat d'aplicacions, incloent sistemes de calefacció i refrigeració, robòtica, automatització industrial i molts altres.

Els paràmetres PID controlen el comportament del controlador PID, que ajuda a mantenir la temperatura desitjada ajustant la sortida de control. Aquí tens com funcionen aquests paràmetres, amb exemples concrets en el cas de control de temperatura desitjada:

Per donar-te una idea de com establir aquests valors, aquí tens un exemple senzill:

Recorda que l'ajustament dels paràmetres PID pot ser un procés iteratiu. Comences amb valors aproximats i, després, els ajustes segons el rendiment real del controlador. Els valors ideals poden variar en funció del sistema específic i la naturalesa del procés que es controla.

Matemàtiques del control PID

Control Proporcional (P):

Fórmula: \(P(t) = K_p \cdot e(t)\)

Importància en enginyeria: El control proporcional ajusta la sortida del sistema en proporció a l'error present.

Control Integral (I):

Fórmula: \(I(t) = K_i \cdot \int e(t) \, dt\)

Importància en enginyeria: El control integral corrigeix els errors acumulats amb el temps.

Control Derivatiu (D):

Fórmula: \(D(t) = K_d \cdot \frac{d}{dt} e(t)\)

Importància en enginyeria: El control derivatiu anticipa les tendències futures de l'error i redueix les oscil·lacions.

Controlador PID (combinat):

Fórmula: \(u(t) = P(t) + I(t) + D(t)\)

El controlador PID combina els tres termes per controlar sistemes amb precisió i rapidesa.

Controlador PID amb Arduino

Explicació:

En aquest exemple, utilitzarem un controlador PID per controlar la posició d'un servomotor utilitzant Arduino. El controlador PID té tres termes: proporcional, integral i derivatiu, que ajustarem segons les necessitats del sistema.

Materials necessaris:

Connexions:

El controlador PID:

Codi Arduino:


    #include <Servo.h>

    Servo myservo;

    // Constants del controlador PID (ajusta segons les necessitats)
    double Kp = 1.0;
    double Ki = 0.0;
    double Kd = 0.0;

    // Variables per al control PID
    double setpoint = 90.0;  // Posició desitjada del servomotor
    double input, output, error, lastError = 0.0;
    double integral = 0.0;

    void setup() {
      myservo.attach(9);  // Connecta el servomotor al pin 9
    }

    void loop() {
      input = analogRead(A0);  // Llegeix el valor del potenciòmetre (posició actual)
      error = setpoint - input;

      // Càlculs del controlador PID
      integral += error;
      output = Kp * error + Ki * integral + Kd * (error - lastError);

      myservo.write(90 + output);  // Mou el servomotor segons la sortida del PID
      lastError = error;

      delay(10);  // Pausa per estabilitzar el sistema
    }