ESEMPI DI PROGRAMMA PLC
ISTRUZIONE REGOLATORE PID

Programmazione istruzione PID regolatore nel PLC
Benvenuto in questa lezione del corso di programmazione plc, oggi configureremo insieme un’istruzione di regolazione PID e ne proveremo il funzionamento cambiando i vari parametri. Oggi inoltre impareremo a convertire l’uscita analogica del regolatore in un’uscita di tipo discreto per comandare anche organi regolatori on-off.
Novità automazione e plc

Le regolazioni PID nei processi automatizzati.

Nei processi industriali la regolazione PID assume un ruolo fondamentale, che si tratti di una funzione svolta da un apparecchio fisico o di una procedura software, è indubbio che imparare a utilizzare queste funzioni è per i programmatori di plc qualcosa di importante.

Nella lezione di oggi configuriamo un’istruzione PID in linguaggio ladder nell’ambiente di sviluppo Codesys; in particolare l’istruzione PID_FIXCYLE che è una funzione messa a disposizione dalla libreria Util del Codesys stesso.

La funzione PID_FIXCYLE è molto simile a tutte le funzioni PID standard che troviamo nei diversi ambienti di sviluppo per PLC, la vediamo nella prossima immagine.

Istruzione regolatore PID nel PLC
Configurazione dell’istruzione PID nel linguaggio ladder.
Per configurare l’istruzione del regolatore software abbiamo i parametri di ingresso sulla sinistra del box di richiamo, e quelli di uscita sulla destra.

Partendo proprio dalle due variabili d’uscita, troviamo la Y che è la variabile importante che rappresenta l’uscita percentuale da applicare all’organo regolatore continuo, poi un bit LIMITS_ACTIVE che ci dice se quest’uscita è stata limitata dai parametri di ingresso Y_MIN e Y_MAX che vedremo a breve.
Abbiamo poi un ultimo bit chiamato OVERFLOW che si alza quando l’azione integrale del regolatore è fuori limite; per questa lezione non consideriamo nei dettagli quest’ultimo segnale.


Tra i parametri di ingresso dell’istruzione PID troviamo dall’alto:
La variabile da controllare ACTUAL, per esempio una temperatura.
Il set point da raggiungere SET_POINT, ovvero il valore che vogliamo ottenere dalla variabile controllata.
L’azione proporzionale KP, che rappresenta la forza con cui il regolatore agisce.
L’azione integrale TN, che serve a rendere più o meno reattivo il regolatore.
L’azione derivativa TV, che agisce analizzando la curva con cui la variabile di processo cambia; quest’azione nel nostro esempio non la utilizziamo.

Sempre tra gli ingressi abbiamo Y_MANUAL, che è la percentuale di uscita che il regolatore deve assegnare quando è posto in manuale per mezzo del bit MANUAL; in pratica mettendo a uno questo bit la funzione si blocca e l’uscita può essere manipolata a piacimento da noi con la variabile di cui sopra.

Y_OFFSET è un valore che possiamo sommare o aggiungere all’uscita, nel nostro esempio non lo utilizziamo.
Y_MIN e Y_MAX ci permettono limitare l’uscita del regolatore entro un range. Per esempio potremmo decidere che l’uscita non può scendere sotto il 10%, oppure che non può superare il 90%; per lasciare campo aperto alla funzione, questi valori si possono impostare a zero per il minimo e 100 per il massimo.

Il bit RESET quando è a uno resetta l’azione integrale, normalmente questa funzione non viene utilizzata spesso, mentre CYCLE definisce il tempo in secondi tra una chiamata e l’altra della funzione PID. Questo parametro andrà calibrato in base all’hardware su cui il regolatore software lavorerà.

Come funziona il regolatore PID.
Aumentando il parametro dell’azione proporzionale il regolatore diventa più forte, diminuendo il valore dell’integrale diventa anche più reattivo. Naturalmente in fase di collaudo nella realtà, questi parametri andranno ricercati in base al processo: si osserva ciò che accade e li si affina.

Conversione dell’uscita analogica del regolatore in un’uscita discreta.
L’uscita analogica del PID normalmente si porta su un organo regolatore in continuo come una valvola regolatrice, un inverter o altro. A seconda del tipo di applicazione ci sono però situazioni in cui l’organo che deve regolare è di tipo on-off, in questo caso possiamo convertire l’uscita zero / cento del regolatore PID, in un bit che si alza e si abbassa in base a un tempo di ciclo.

Facciamo un esempio: se ho un tempo di ciclo di 10 secondi e l’uscita del regolatore è al 30%, il mio bit discreto sarà a 1 per 3 secondi e a 0 per 7 secondi. Se con la stessa uscita cambiamo il tempo di ciclo e lo impostiamo a 60 secondi, ecco che il bit sarà ON per 18 secondi (il 30% di 60) e OFF per 42 secondi; il rapporto rimane lo stesso.
Per effettuare questa conversione possiamo utilizzare delle funzioni disponibili nelle librerie dei tool di programmazione PLC, oppure costruirne una come nell’esempio che troviamo nella prossima immagine.
Programma per convertire la regolazione continua in ON e OFF

La funzione in figura sopra calcola un tempo di on e un tempo di off in base al tempo totale di ciclo fornito in ingresso, e in relazione alla percentuale che rappresenta l’uscita del regolatore analogico da convertire.

Le istruzioni moltiplicano per mille i valori poiché le funzioni timer lavorano con preset espressi in millisecondi, inoltre convertiamo i tempi da valore reali a valori di tipo TIME, proprio per poter essere accettati dalle istruzioni TON.

Nell’ultima riga troviamo la lavorazione dell’uscita che poi porteremo all’organo regolatore on / off.

Nella figura sotto vediamo la funzione PWM_DC della libreria OSCAT BASIC, la quale esegue la conversione e accetta come ingressi un valore di frequenza (0.1 corrisponde a 10 secondi di ciclo), e come ingresso un valore da zero a uno. Per questo l’uscita 0..100 del PID gliela forniamo divisa per 100.

Nella seconda funzione invece (quella programmata da noi) il tempo di ciclo viene fornito in secondi e non c’è bisogno di scalare il valore analogico di ingresso.

Le due funzioni danno comunque un risultato identico.

Blocchi di conversione regolatore a impulsi

Bene, siamo arrivati al termine di questa lezione di PLC dove abbiamo imparato a configurare il regolatore software e anche come convertirne l’uscita in digitale. Io vi do appuntamento alla prossima sul mio canale YouTube e qui sul mio sito; a presto!

Copyright(C) automazione-plc.it
P. IVA: 11676200964
Sito di informazione e didattica sull'automazione industriale, il mondo dei PLC e dei sistemi di supervisione.
Programmazione PLC.
Programmazione SCADA e HMI.
Apparecchiature e hardware industriale.
Strumentazione da campo.
Policy sulla Privacy e utilizzo dei Cookies