Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Controllore Pid In C18. Implementazione Anti Windup


Messaggi consigliati

Inserito:

Mi accingo per la prima volta a implementare su un pic un classico controllore PID come spiegato da Livio Orsini nel suo manuale sulle tecniche di regolazione. Grazie Livio!

Vorrei aggiungere la funzione anti windup, in modo da non accumulare ulteriore carica integrale se l'attuatore è già arrivato al limite. Avevo pensato di aggiungere un istruzione del tipo:


if ((out < lower_limit) OR (out > upper_limit)) {

   non aggiornare la carica integrale

}

E' corretto o mi sta sfuggendo qualcosa?

Grazie


Inserita:

Son passati anni da quando ho scritto quel tutorial però, se ricordo correttamente, i limiti ci alle varie componenti dovrebbero già esserci, almeno c'è una versione in pseudo "C" che ha i limiti.

Inserita:

Si, ci sono quattro limitazioni: Sulle tre azioni P, D, I e sull'uscita, però non svolgono nessuna funziona anti windup. Vero è che c'è una limitazione sul'azione integrale, ma credo sia pensata per evitare eventuali overflow della variabile. Io devo invece bloccare l'integrazione quando l'attuatore è saturo, cosa che non accade a un valore di I predeterminato.

Inserita:

Il sistema non cambia. E' solo un problema di rilevare la saturazione dell'attuatore e usare il valore attuale dell'azione integrale come limite per lo stesso.

Per esperienza diretta, però, queste metodologie dano più problemi che vantaggi.

Per curiosità a che tipo di atuatore fai riferimento?

Inserita:

E' un semplice servocomando per modellismo, che però deve limitare la sua corsa a +/- 12°

Inserita:

Se devi fare un posizionatore fai attenzione: spesso l'integrale è più di danno che di utilità. Non per niente gli Yankee lo chiamano "reset", perchè la sua funzione è azzerare l'errore, ma se controlli la velocità in funzione dell'errore di posizione integrare l'errore di posizione.....

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...