Ottimizzazione del controllo PID
Home › Forum › Programmazione IEC 61131 (LogicLab) › Ottimizzazione del controllo PID
- Questo topic ha 5 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 5 anni, 4 mesi fa da
Sergio Bertana.
-
AutorePost
-
Novembre 15, 2015 alle 11:17 pm #35876
Carlo
PartecipanteStò usando, con discreto successo, un controllore SlimLine per gestire le temperature di un estrusore a vite per materie plastiche. Mi servirebbe un aiuto per capire come settare i vari parametri della FB PIDMng (PBand, ST, KP, IT e DT) in modo da ottimizzare il controllo allo scopo di limitare l’intervento delle ventole di raffreddamento quando viene superato il set point.
Novembre 16, 2015 alle 7:35 am #39178Sergio Bertana
Amministratore del forumSulla regolazione PID sono stati scritte fiumi di parole ma poi in pratica i corretti valori delle costanti di regolazione sono sempre da trovarsi sperimentalmente in base al tipo di impianto su cui si opera.
Per capire e fare esperimenti sulla regolazione PID trovi nel forum anche un programma che ne permette la simulazione su PC con il simulatore SimuLab (Topic). Ma questo è un puroi esercizio didattico, nel tuo caso ti posso dare alcuni consigli di massima su come ottimizzare la regolazione PID.
Io inizio sempre lavorando di sola proporzionale, le correzioni I e D servono poi come rifinitura, il tuo problema sembrerebbe essere un overshoot della temperatura. In pratica nel riscaldare l’estrusore continui a fornire energia termica per troppo tempo e quindi lo sovrariscaldi. I rimedi possono essere:
Aumentare la banda proporzionale PBand, in questo modo all’avvicinarsi della temperatura al set point il regolatore PID inizia a regolare diminuendo l’energia termica fornita.
Diminuire la correzione proporzionale KP, in questo modo ad errori di temperatura piccoli si ha un minore apporto di energia termica il che tende ad evitare gli overshoots.
Ricordo che con la sola proporzionale non è possibile azzerare l’errore di temperatura (La P lavora solo in presenza di errore). Quindi quando con la sola proporzionale la regolazione è accettabile, lavorando di integrativa potrai fare in modo di azzerare l’errore avvicinando sempre più il valore di temperatura reale al set point.
Su regolazioni molto lente come nel tuo caso la derivativa di solito non ha alcun effetto pratico, anzi molte volte è dannosa.
Dicembre 17, 2019 alle 7:13 am #51987Stefano
PartecipanteI parametri del pid (PB, KP, ecc) possono essere variati a runtime oppure è necessario disabilitare e riabilitare il blocco per aggiornarli?
Dicembre 17, 2019 alle 7:20 am #51990Sergio Bertana
Amministratore del forumTutti i parametri possono essere modificati “al volo” non è necessario disabilitare e riabilitare il FB.
Naturalmente le correzioni integrativa e derivativa dipendono dai coefficenti IT e DT ma anche dall’errore accumulato nel tempo dalla regolazione. Per azzerare l’errore accumulato o si disabilita il FB (Che azzera entrambi gli errori) oppure si azzera il coefficente che azzera il relativo errore.
Dicembre 20, 2019 alle 7:13 am #52056Stefano
PartecipanteC’è un modo per vedere, in debug, gli errori accumulati dalla regolazione integrale e dalla regolazione derivativa?
Sto tarando un sistema riscaldatore che ha una elevata inerzia termica e poca stabilità, è abbastanza difficoltoso. Vedendo in tempo reale l’andamento delle singole componenti della regolazione diverrebbe più semplice capire su quale parametro intervenire.
Dicembre 20, 2019 alle 7:20 am #52060Sergio Bertana
Amministratore del forumNo purtroppo gli errori integrativo e derivativo sono interni al FB e non sono visualizzabili.
Di solito quando mi sono trovato ad ottimizzare una regolazione PID su regolazioni termiche ho sempre agito di sola proporzionale fino a trovare un equilibrio tale da avere un minimo di overshoot all’avvio e poi una pendolazione piu lenta possibile della temperatura reale.
Poi agendo di derivativa si cerca di minimizzare la pendolazione mentre l’integrativa serve solo a fare si che la temperatura reale sia il più possibile uguale alla impostata. In questo topic trovi un esempio.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.