Informazioni sull’utilizzo del FB PID
Home › Forum › Programmazione IEC 61131 (LogicLab) › Informazioni sull’utilizzo del FB PID
- Questo topic ha 3 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 4 anni, 10 mesi fa da
Sergio Bertana.
-
AutorePost
-
Settembre 19, 2018 alle 6:12 am #45391
Alessandro Campodonico
PartecipanteDevo realizzare un programma che gestisce una regolazione di portata è la prima volta che utilizzo il FB PID, in altre occasioni mi sono creato una una sorta di PIDda solo, quindi avrei qualche dubbio.
Utilizzo un flussimetro analogico per misurare la portata e una pompa comandata tramite inverter, Il PID dovrebbe tenere la portata costante ad un valore (800 lt/h) aumentando e diminuendo i giri della pompa. Il mio primo quesito è questo, la variabile “OUT” del FB va collegata direttamente all’uscita analogica?
Nel programma di esempio di utilizzo del PID che cè sul forum l’uscita OUT è collegata direttamento al FB PWM o la variabile “OUT” va poi processata nel programma? in questo caso come è meglio processarla? dividendo il numero per una costante?
Diciamo in linea generale come va gestito il PID?
Settembre 19, 2018 alle 6:27 am #45412Sergio Bertana
Amministratore del forumIl blocco funzione PIDMng cerca di mantenere il valore di processo (Ingresso PValue) il più possibile uguale al valore di set point (Ingresso SetPoint) gestendo l’errore con una regolazione proporzionale, integrativa e derivativa.
Siccome il valore di processo da mantenere può essere di qualsiasi tipo (Velocità, portata, pressione, ecc) sono accettati qualsiasi valori di SetPoint e PValue, l’importante che siano espressi nella stessa unità di misura, nel tuo caso lt/h.
Anche l’attuatore che gestisce il processo può essere di qualsiasi tipo (Motore, Riscaldatore, Valvola, ecc) quindi si è scelto di avere in uscita (Uscita OUT) un valore espresso in % (Da -100% a +100%). Nella versione (v1) sono stati inseriti i due ingressi OMin e OMax per la definizione del valore minimo e massimo in uscita dalla regolazione.
Il valore di uscita andrà utilizzato per il comando dell’attuatore, quindi se l’attuatore che utilizzi deve essere comandato con un riferimento di tensione dovrai moltiplicare il valore per un coefficente che ti permetta di avere ad esempio da -10 a +10V (Quindi moltiplicherai per 0.1).
Giugno 16, 2020 alle 6:31 am #56189Edi
PartecipanteAvrei qualche domanda da farti riguardo al controllore PID, non ho molta esperienza riguardo ai PID di conseguenza mi trovo un po in difficoltà. Dovrei controllare una piccola paratoia in apertura e in chiusura che mi mantenga la portata constate a circa 10 l/s.
Ho provato a fare qualche esperimento ma il PID , in apertura, mi da che il valore di uscita è 100.000 ma fa una regolazione continua senza mai fermarsi, è un problema del derivativo che ho impostato male? Quando simulo l’ingresso analogico esempio a 13 l/s la variabile di uscita del PID va a 0.
Seconda cosa le variabili da mettere sull’ FB PID devono essere impostate su quelle globali o su quelle locali?
So che le prime 4 devono essere di tipo BOOL e le altre di tipo REAL, se avessi qualche esempio su cui studiare e provare col simulatore mi saresti di grande aiuto come sempre, oppure consigliarmi qualcosa.
Giugno 16, 2020 alle 6:43 am #56194Sergio Bertana
Amministratore del forumL’ottimizzazione di un PID richiede un po di esperienza, intanto ti mando a questo post dove troverai un progetto testabile sul simulatore SimuLab che ti aiuterà a prendere confidenza con il PID. E se cerchi nel forum con la chiave di ricerca PID troverai altri post.
In linea di massima si inizia abilitando la sola azione proporzionale, in modo da avere la miglior regolazione possibile. Nella sua essenza il PID genera un valore di uscita pari al valore dell’errore (Differenza tra set point e valore di processo) moltiplicato per il coefficente proporzionale.
Quindi è evidente che maggiore è il KP maggiore è il valore di uscita a parità di errore, e se il KP è troppo alto il sistema tende a pendolare.
Con valori di errore superiori al valore di banda proporzionale PBand, la regolazione è disabilitata e l’uscita è pari al 100%. Infatti se l’errore è troppo grande è inutile regolare ma occorre fornire il massimo di azione per cercae di riportare l’errore entro la banda di regolazione.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.