Esempio: come creare un programma IPIDController per controllare il livello di erogazione dell'acqua

Nell'esempio di programma di controllo per il livello di erogazione dell'acqua, viene mantenuta una quantità d'acqua sufficiente in un serbatoio di erogazione dell'acqua dotato di deflusso. Una valvola solenoide controlla l'acqua in ingresso riempiendo il serbatoio con una portata preimpostata; anche l'acqua che defluisce è controllata in base a una portata preimpostata.
Esempio: come creare un programma IPIDController per controllare il livello di erogazione dell'acqua
Esempio: Come creare un programma IPIDController per controllare il livello di erogazione dell'acqua

Informazioni dell'esempio di programma

Il programma per il livello di erogazione dell'acqua include le seguenti informazioni:
  • La sequenza degli eventi che si verificano nel processo di controllo.
  • Modalità di utilizzo nel programma di controllo del setpoint e dei valori manipolati e di processo.
  • Un Diagramma a blocchi funzione di esempio che illustra l'IPIDController e altri blocchi di istruzioni.

Setpoint, processo e valori manipolati

Nella tabella seguente è definita la modalità di utilizzo dei valori SP, PV e MV nel programma di controllo del livello di erogazione dell'acqua.
Modalità di utilizzo dei valori SP, PV e MV nel programma di controllo del livello di erogazione dell'acqua
Elemento
Descrizione
Setpoint (SP)
Misurazione dell'altezza che definisce il livello di erogazione dell'acqua.
Valore di processo (PV)
Il valore 4 - 20 mA deve essere convertito nella stessa unità di SP, una misura di altezza.
Valore manipolato (MV)
È necessario convertirlo in un valore analogico. Quindi può essere inviato all'unità per controllare la pompa.

Sistema per il livello di erogazione dell'acqua

Nel seguente diagramma sono illustrati i componenti del sistema di controllo del livello di erogazione dell'acqua che sono comandati dal programma di tale sistema. Nella tabella riportata di seguito al diagramma sono descritti gli eventi che si verificano durante l'esecuzione del programma di controllo.
Sistema per il livello di erogazione dell'acqua
Sistema per il livello di erogazione dell'acqua

Sequenza degli eventi nel sistema per il livello di erogazione dell'acqua

Nella seguente tabella sono identificati i componenti del sistema di controllo del livello di erogazione dell'acqua e sono descritti, in sequenza, gli eventi che si verificano durante l'esecuzione del programma di tale sistema.
Componenti del sistema di approvvigionamento idrico e sequenza degli eventi
N.
Elemento
Descrizione
callout1
Uscita controllore
Invia il MV all'unità PowerFlex (0 - 10 V).
callout2
Unità PowerFlex
Controlla la pompa dell'acqua (0 - 50 Hz).
callout3
Pompa dell'acqua
Controlla il livello dell'acqua nel serbatoio di erogazione.
callout4
Dispositivo di trasferimento delle uscite
Misura l'altezza del livello dell'erogazione dell'acqua (4 - 20 mA) e invia il PV al controllore.
callout5
Ingresso controllore
Riceve il PV (livello di erogazione dell'acqua 4 - 20 mA).
callout6
Programma PLC
Converte il PV alla stessa unità del SP (misura dell'altezza), determina la differenza tra il PV e il SP e regola il MV in base ai valori definiti nei parametri P, I e D.

Esempio: diagramma a blocchi funzionali per il controllo del livello di erogazione dell'acqua

Nel seguente diagramma a blocchi funzionali sono illustrati i blocchi funzione del programma predefiniti e definiti dall'utente per il controllo del livello di erogazione dell'acqua.
diagramma a blocchi funzionali per il controllo del livello di erogazione dell'acqua
Diagramma a blocchi funzionali per il controllo del livello di erogazione dell'acqua

Blocchi funzione e UDFB usati nell'FBD del livello dell'acqua

Questa applicazione, sviluppata in linguaggio FBD, utilizza i blocchi istruzione descritti nella seguente tabella.
Istruzioni utilizzate
Blocco funzione
Descrizione
Blocco funzione IPIDController
Fornisce il controllo del processo PID.
UDFB PID_OutputRegulator
Regola l'uscita di IPIDCONTROLLER in un intervallo sicuro per garantire che l'hardware impiegato nel processo non sia danneggiato.
Codice campione:
  • IF RMIN <= RIN <= RMAX, then ROUT = RIN,
  • IF RIN < RMIN, then ROUT = RMIN,
  • IF RIN > RMAX, then ROUT = RMAX
UDFB PID_Feedback
Agisce come un multiplexer.
Codice campione:
  • IF "FB_RST" is FALSE, FB_OUT=FB_IN;
  • If "FB_RST" is TRUE, then FB_OUT=FB_PREVAL.
UDFB PID_PWM
Fornisce una funzione PWM convertendo un valore reale in un'uscita ON/OFF dipendente dal tempo.
UDFB SIM_WATERLVL
Simula il processo nell'esempio dell'applicazione.
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.
Normal