14Nivel 5
Control de nivel analógico (introducción a PID)
Una válvula proporcional abre más o menos según cuánto falta para llegar al 60 % de nivel. Es la parte P de un PID, y deja ver su limitación: el error permanente.
El simulador está pensado para computadores (pantallas de 1024 px o más).
Planta virtual
Nivel: 20 %. Válvula: 0 %
Vista en reposo. En el simulador la planta se mueve según las salidas de tu programa.
Entradas y salidas
| Dirección | Nombre | Descripción |
|---|---|---|
| I0.0 | CONTROL | Interruptor del control automático |
| IW0 | TRANSMISOR_NIVEL | Transmisor de nivel: 0–27648 = 0–100 % (planta) |
| QW0 | VALVULA | Apertura de la válvula de entrada: 0–27648 = 0–100 % |
| MD0 | NIVEL | Nivel en % (REAL) |
| MD1 | ERROR | Consigna (60 %) menos nivel |
| MD2 | APERTURA | Apertura calculada de la válvula en % (REAL) |
Programa
Diagrama de escalera (Ladder, LD)
Peldaño 1 — Escala el transmisor a porcentaje de nivel.
Peldaño 2 — Error = consigna (60 %) − nivel.
Peldaño 3 — Acción proporcional: apertura = Kp × error, con Kp = 8.
Peldaño 4 — Límite superior: como máximo 100 %.
Peldaño 5 — Límite inferior: como mínimo 0 %.
Peldaño 6 — Con el control activo, la apertura va a la válvula (0–100 % → 0–27648).
Peldaño 7 — Con el control apagado, la válvula se cierra.
Diagrama de bloques de funciones (FBD)
Red 1 — Escala el transmisor a porcentaje de nivel.
Red 2 — Error = consigna (60 %) − nivel.
Red 3 — Acción proporcional: apertura = Kp × error, con Kp = 8.
Red 4 — Límite superior: como máximo 100 %.
Red 5 — Límite inferior: como mínimo 0 %.
Red 6 — Con el control activo, la apertura va a la válvula (0–100 % → 0–27648).
Red 7 — Con el control apagado, la válvula se cierra.
Texto estructurado (ST)
(* Control de nivel analógico (introducción a PID) — convertido desde Ladder *)
(* Peldaño 1: Escala el transmisor a porcentaje de nivel. *)
NIVEL := (TO_REAL(TRANSMISOR_NIVEL) - TO_REAL(0)) * (TO_REAL(100) - TO_REAL(0)) / (TO_REAL(27648) - TO_REAL(0)) + TO_REAL(0);
(* Peldaño 2: Error = consigna (60 %) − nivel. *)
ERROR := 60.0 - NIVEL;
(* Peldaño 3: Acción proporcional: apertura = Kp × error, con Kp = 8. *)
APERTURA := ERROR * 8.0;
(* Peldaño 4: Límite superior: como máximo 100 %. *)
IF APERTURA > 100.0 THEN APERTURA := 100.0; END_IF;
(* Peldaño 5: Límite inferior: como mínimo 0 %. *)
IF APERTURA < 0.0 THEN APERTURA := 0.0; END_IF;
(* Peldaño 6: Con el control activo, la apertura va a la válvula (0–100 % → 0–27648). *)
IF CONTROL THEN VALVULA := (TO_REAL(APERTURA) - TO_REAL(0)) * (TO_REAL(27648) - TO_REAL(0)) / (TO_REAL(100) - TO_REAL(0)) + TO_REAL(0); END_IF;
(* Peldaño 7: Con el control apagado, la válvula se cierra. *)
IF NOT CONTROL THEN VALVULA := 0; END_IF;Lista de instrucciones (IL)
(* Control de nivel analógico (introducción a PID) — convertido desde Ladder *)
(* Peldaño 1: Escala el transmisor a porcentaje de nivel. *)
LD TRANSMISOR_NIVEL
TO_REAL
SUB( 0
TO_REAL
)
MUL( 100
TO_REAL
SUB( 0
TO_REAL
)
)
DIV( 27648
TO_REAL
SUB( 0
TO_REAL
)
)
ADD( 0
TO_REAL
)
ST NIVEL
(* Peldaño 2: Error = consigna (60 %) − nivel. *)
LD 60.0
SUB NIVEL
ST ERROR
(* Peldaño 3: Acción proporcional: apertura = Kp × error, con Kp = 8. *)
LD ERROR
MUL 8.0
ST APERTURA
(* Peldaño 4: Límite superior: como máximo 100 %. *)
LD APERTURA
GT 100.0
JMPCN SKIP_4
LD 100.0
ST APERTURA
SKIP_4:
(* Peldaño 5: Límite inferior: como mínimo 0 %. *)
LD APERTURA
LT 0.0
JMPCN SKIP_5
LD 0.0
ST APERTURA
SKIP_5:
(* Peldaño 6: Con el control activo, la apertura va a la válvula (0–100 % → 0–27648). *)
LD CONTROL
JMPCN SKIP_6
LD APERTURA
TO_REAL
SUB( 0
TO_REAL
)
MUL( 27648
TO_REAL
SUB( 0
TO_REAL
)
)
DIV( 100
TO_REAL
SUB( 0
TO_REAL
)
)
ADD( 0
TO_REAL
)
ST VALVULA
SKIP_6:
(* Peldaño 7: Con el control apagado, la válvula se cierra. *)
LDN CONTROL
JMPCN SKIP_7
LD 0
ST VALVULA
SKIP_7:
Paso a paso
- 1Pulsa ▶ Ejecutar (F5) y activa CONTROL. Peldaño 1: el nivel se escala a porcentaje. Peldaño 2: ERROR = 60 % − NIVEL.
- 2Peldaño 3: la apertura es proporcional al error (ganancia Kp = 8). Peldaños 4 y 5: se limita entre 0 y 100 %. Peldaño 6: se escala a la salida analógica QW0.
- 3Mira el nivel: se estabiliza cerca de 55 %, no en 60 %. Con control solo proporcional, se necesita algo de error para que la válvula quede abierta: es el error permanente. La parte I (integral) de un PID existe para eliminarlo.
- 4Prueba cambiar la ganancia a 20.0: el error permanente baja, pero la válvula reacciona con más fuerza. Corta el consumo en la planta y observa cómo cambia el punto de equilibrio.