Vai al contenuto
PLC Forum


Aggancio velocità di due PID diversi


Project75

Messaggi consigliati

Buongiorno a tutti, ho una cpu 1215 dc/dc/dc programmata con Tia Portal v15. Su un impianto ho una pompa con inverter che è gestiTa da 2 Pid diversi. Il primo pid comanda la pompa mediante il riferimento di un flussimetro (portata l/h), poi in un secnodo momento si blocca il primo pid e va in funzione il secondo, quest'ultimo comanda la pompa non piu con il flussimetro ma con un rifrattometro (portata in riferimento al grado boume °Bè). In Questo secondo pid ho dovuto impostare la voce "inverti senso di regolazione", perché se si alza il valore del rifrattometro aumenta la velocità della pompa, se invece si abbassa il valore del rifrattometro deve diminuire la velocita della pompa, in pratica deve fare la funzione inversa della portata. Volevo sapere come posso fare ad agganciare il secondo pid alla velocità del primo. Faccio un esempio: se il primo sta dando in uscita una velocità di 40 hz, il secondo non deve partire a regolare con un valore in uscita che parte da zero, ma con i 40 hz che ci stava dando il primo pid in quel momento, ovviamente questa velocità è indicativa, perché potrebbe essere 30 hz, 20hz, 45hz ...... dipende dal valore che ha il pid in uscita al momento che deve andare in funzione il secondo pid. Una volta entrato in funzione il secondo pid, ed aver agganciato la velocita del primo, il pid iniziera a regolare e la pompa verrà gestita dal rifrattometro e non dal flussimetro. Spero di essere stato chiaro.

Grazie mille 

Link al commento
Condividi su altri siti


Ciao project, il blocco non me lo ricordo benissimo, per cui provo a darti indicazioni generiche :

 

- Nella commutazione, se è concesso dal processo, rampa da un riferimento all'altro, forzando le uscite. Poi quando ti porti in prossimità del valore di uscita del PID del rifrattometro, liberi il pilotaggio dell'uscita.

-Metti il PID del rifrattometro in manuale, forzandogli il valore con quello del PID del flussimetro, all'istante della commutazione. Dopo di ché commuti di nuovo in automatico, magari gestendo una terna di parametri appositi per questo passaggio e poi caricando invece quella standard per la regolazione.

 

Nel primo caso, manipoli i due PID, nel secondo caso invece lasci fare all'algoritmo.

 

Altre soluzioni sono da valutare in funzione della risposta del sistema.

 

Buona domenica, Ennio

Link al commento
Condividi su altri siti

Grazie etr e buona domenica anche a te. A questo punto potrei avviare il primo pid, che ovviamente è regolato dal flussimetro, metto il secondo pid in manuale e come riferimento nell'ingresso manuale metto l'uscita del primo pid, e l'uscita del secondo pid mi comanda l'inverter. Nel secondo pid avrò il set_point e il segnale del rifrattometro, che ovviamente non sono presi in considerazione in  quanto è in manuale, una volta pronto per il passaggio disattivo il primo pid e di conseguenza il manuale del secondo pid, così quest'ultimo con i riferimenti di set_point e del rifrattometro in ingresso inizierà a regolare. Giusto? Però c'è da considerare una cosa, essendo un impianto di concentrazione il flussimetro è in prossimità della pompa, mentre il rifrattometro si trova alla fine di un circuito, quindi il flussimetro avverte subito la variazione della portata della pompa, mentre il rifrattometro avverte la variazione dopo circa 4 minuti, quindi la variazione della portata deve essere di circa 100 l/h ed il pid deve aspettare i 4 minuti affinché il rifrattometro rilevi questa variazione e trasmetta il segnale al pid così da regolarsi se deve aumentare o diminuire la portata, sempre di circa 100 l/h, aspettando sempre i 4 minuti per la risposta dal rifrattometro. Quindi che valori devo dare al proporzionale, all'integrale ed alla derivata del secondo pid per regolare la portata in funzione dei 4 minuti? Grazie mille 

 

Link al commento
Condividi su altri siti

Quello che vorresti realizzare è definito come regolazione "bumpless".

In genere è necessario che i regolatori siano costruiti per questo tipo di regolazione.

 

Non so se i PID di libreria ammettano questa modalità.

Solitamente il regolatore non usato ha come ingresso d riferimento l'uscita del regolatore attivo. Le componenti integrale e derivativo sono bloccate, l'ingresso di reazione è messo a zero ed il guadagno proporzionale è unitario così da avere l'uscita eguale all'ingresso.

 

Al momento della commutazione si scambiano le uscite dei regolatori, poi si da il riferimento e si attivano i blocchi P, I ed eventualmente D.

Link al commento
Condividi su altri siti

5 ore fa, Project75 scrisse:

potrei avviare il primo pid, che ovviamente è regolato dal flussimetro, metto il secondo pid in manuale e come riferimento nell'ingresso manuale metto l'uscita del primo pid, e l'uscita del secondo pid mi comanda l'inverter. Nel secondo pid avrò il set_point e il segnale del rifrattometro, che ovviamente non sono presi in considerazione in  quanto è in manuale, una volta pronto per il passaggio disattivo il primo pid e di conseguenza il manuale del secondo pid, così quest'ultimo con i riferimenti di set_point e del rifrattometro in ingresso inizierà a regolare.

Ciao Livio. Farlo come ti ho descritto sopra potrebbe andar bene lo stesso? 

Link al commento
Condividi su altri siti

Non conosco come si comportano i PID della libreria Siemens. Se il comportamento è simile a quello che ti ho descritto va senz'altro bene, altrimenti il passaggio da uno all'altro avverrà con un gradino.

Link al commento
Condividi su altri siti

Giusto il suggerimento di ETR: tieni il secondo PID in manuale e, come valore manuale, gli passi l'uscita del primo PID. Il PID Siemens, nel passaggio da manuale ad automatico gestisce proprio la regolazione bumpless citata da Livio.

Il problema piuttosto sarà fare una regolazione con 4 minuti di ritardo del feedback.
Ma questo passaggio serve per avere una regolazione più fine? Si tratta di un sistema che, una volta a regime, è molto stabile?

Link al commento
Condividi su altri siti

9 minuti fa, batta scrisse:

Giusto il suggerimento di ETR: tieni il secondo PID in manuale e, come valore manuale, gli passi l'uscita del primo PID. Il PID Siemens, nel passaggio da manuale ad automatico gestisce proprio la regolazione bumpless citata da Livio.

Il problema piuttosto sarà fare una regolazione con 4 minuti di ritardo del feedback.
Ma questo passaggio serve per avere una regolazione più fine? Si tratta di un sistema che, una volta a regime, è molto stabile?

Si è un sistema che una volta a regime varia di pochissimo, e una volta che il rifrattometro manda il valore al pid, ed ovviamente il pid si regola se deve aumentare o diminuire la velocità della pompa, questa variazione, che deve essere dell'ordine di circa 100 l/h, arrivera dopo circa 4 minuti al rifrattometro, a quel punto manderà nuovamente il valore al pid e la variazione sarà nuovamente avvertita dal rifrattometro  dopo 4 minuti . 

Link al commento
Condividi su altri siti

1 ora fa, Project75 scrisse:

arrivera dopo circa 4 minuti al rifrattometro, a quel punto manderà nuovamente il valore al pid e la variazione sarà nuovamente avvertita dal rifrattometro  dopo 4 minuti . 

 

Qui se non ottimizzi più che bene il guadagno proporzionale ed il tempo di integrazione c'è il serio pericolo di instabilità.

Ovviamente la componente derivativa è da escludere.

Il tempo di campionamento del PI deve essere congruo al tempo di risposta del sistema e, credo, non sia il caso effettuare l'ottimizzazione automatica.

Link al commento
Condividi su altri siti

8 minuti fa, Livio Orsini scrisse:

 

Qui se non ottimizzi più che bene il guadagno proporzionale ed il tempo di integrazione c'è il serio pericolo di instabilità.

Ovviamente la componente derivativa è da escludere.

Il tempo di campionamento del PI deve essere congruo al tempo di risposta del sistema e, credo, non sia il caso effettuare l'ottimizzazione automatica.

Infatti , con quali valori dovrei iniziare per raggiungere un buon risultato? Mi sapresti consigliare? Grazie

Link al commento
Condividi su altri siti

L'unico consiglio che mi sento di darti è che dovresti avere un tempo di campionamento del PI dell'ordine dei minuti. Meglio sarebbe usare un campionamento di 10" ed usare un flag che indichi l'avvenuta variazione sul colorimetro, o altro metodo che indichi che la misura risente della correzione effettuata; poi guadgni estremamente piccoli di proporzionale e tempi lunghissimi di integrazione.

Link al commento
Condividi su altri siti

Quote

questa variazione, che deve essere dell'ordine di circa 100 l/h

Quindi col primo PID si raggiunge la portata impostata, e poi il secondo PID deve effettuare una variazione su questa portata?
Dire però variazione di 100 l/h senza dire su quale portata, non dà nessuna indicazione.

Comunque, se il secondo PID deve solo fare una variazione in più o in meno sulla portata raggiunta col primo PID, dare tutta la regolazione al secondo PID è sbagliato. Il secondo PID dovrebbe solo effettuare una variazione sull'uscita del primo PID.

Forse (ma è solo un'ipotesi, visto che anche stavolta sembra si parli di un segreto di stato e fornisci sempre informazioni col contagocce) potresti sommare le uscite dei due PID o, ancora, gestire un solo PID ed inserire il segnale del rifrattometro come disturbo. Però, per dare indicazioni sensate, servono più informazioni.

Link al commento
Condividi su altri siti

Il prodotto è mosto, in un primo momento la portata viene gestita da un flussimetro, in un secondo momento è gestita da un rifrattometro che misura il ñgrado di zucchero, quindi una volta impostata la portata al  primo pid, que òsto inizia a regolare, arrivati ad un certo grado di zucchero si blocca il primo pid regolato dal flussimetro ed entra in funzione il secondo pid regolato dal rifrattometro, parte così la regolazione della portata che deve variare di pochissimo 

Link al commento
Condividi su altri siti

8 ore fa, Project75 scrisse:

si blocca il primo pid regolato dal flussimetro ed entra in funzione il secondo pid regolato dal rifrattometro

 

Vediamo se ho capito bene.

A questo punto del processo la portata non ha più importanza come portata, ma si varia solo la quantità di liquido in circolazione per mantenere costante il valore di zucchero.

E' così?

Se è così può avere un senso spostare tutta la regolazione su di un solo regolatore.

 

Però se dovessi realizzarlo io, basandomi solo sulle informazioni che hai fornito mettere il secondo regolatore in somma con il riferimento del primo, facendo variare la portata in funzione della quantità di zucchero. 

 

Quote

potresti sommare le uscite dei due PID o, ancora, gestire un solo PID ed inserire il segnale del rifrattometro come disturbo. 

 

Vista la velocità di reazione del primo regolatore, rispetto alla velocità di variazione e assestamento del secondo processo, il regolatore tenderebbe ad annullare la variazione, se messa in somma all'uscita, o non la cosidererebbe se messa come disturbo sulla reazione, visto anche il filtraggio sulla reazione. Variando il riferimento, invece, sicuramente  la variazione avrà effetto anche se, viste le considerazioni fatte nella discussione sul primo regolatore, si rischia che la variazione di portata ammessa annulli o riduca l'effetto voluto.

 

Questa è una regolazione che, visti i tempi di processo, potrebbe effettuare benissimo anche un operatore umano. legge il valore del riflettometro e varia un poco il riferimento di portata, secondo esperienza.

Però se l'ondulazione di portata ammessa è anche 8 volte la variazione inserita nel riferimento (800 lh contro 100 lh)  si rischia di lavorare a vuoto

Link al commento
Condividi su altri siti

40 minuti fa, Livio Orsini scrisse:

A questo punto del processo la portata non ha più importanza come

Perfetto Livio è proprio così. I problemi sono 2: il primo è che il flussimetro ha un range da 0 a 18000 l/h, e dovrebbe lavorare a circa 10000 l/h di set_point, che sarebbe circa il 55.5%, mentre il rifrattometro ha un range da 20 a 40 °bè, dovrebbe lavorare a circa 36 °Bè di set_point, che sarebbe circa 80%, questa differenza di set_point porterebbe ad una varazione notevole della velocità, e qui c'è bisogno di trovare una soluzione. Poi il secondo problema è che mentre il flussimetro è in prossimità della pompa, il rifrattometro si trova dopo un circuito che il prodotto impiega circa 4 minuti per arrivarci e rilevare il °bè, quindi variazione piccola con tempo lungo, e qui c'è bisogno della seconda soluzione. 

Link al commento
Condividi su altri siti

Come ti ho scritto fai 2 regolatori: uno per il flussimetro ed uno per il riflettometro.

Ragiona come fossero 2 moduli Hw.

 

Abiliti il primo e blocchi il secondo in modo che la sua uscita sia 0. Sommi l'uscita del secondo al riferimento del primo.

Quando il processo lo richiede abiliti anche il secondo; la sua uscita, debitamente scalata secondo necessità del processo, farà variare il riferimento di flusso impostato e l'impianto adeguerà la velocità della pompa al nuovo valore richiesto.

 

Per il secondo regolatore valgono tutte le considerazioni fatte in precedenza da me.

Link al commento
Condividi su altri siti

40 minuti fa, Livio Orsini scrisse:

Come ti ho scritto fai 2 regolatori: uno per il flussimetro ed uno per il riflettometro.

Ragiona come fossero 2 moduli Hw.

 

Abiliti il primo e blocchi il secondo in modo che la sua uscita sia 0. Sommi l'uscita del secondo al riferimento del primo.

Quando il processo lo richiede abiliti anche il secondo; la sua uscita, debitamente scalata secondo necessità del processo, farà variare il riferimento di flusso impostato e l'impianto adeguerà la velocità della pompa al nuovo valore richiesto.

 

Per il secondo regolatore valgono tutte le considerazioni fatte in precedenza da me.

Così facendo al passaggio Da pid 1 a pid 2 la portata aumenta dal momento che al riferimento del flussimetro si somma l'uscita  del secondo pid, ma questo non dovrebbe succedere perché la portata dovrebbe rimanere più o meno  la stessa 

Link al commento
Condividi su altri siti

Quote

Così facendo al passaggio Da pid 1 a pid 2 la portata aumenta dal momento che al riferimento del flussimetro si somma l'uscita  del secondo pid

L'uscita del secondo PID dovrebbe partire da zero. Zero sarà il centro della regolazione del secondo PID, che avrà limiti non da 0 a x, ma ± x. Deve infatti poter apportare anche regolazioni in diminuzione, non solo in aumento.

Link al commento
Condividi su altri siti

4 minuti fa, batta scrisse:

L'uscita del secondo PID dovrebbe partire da zero. Zero sarà il centro della regolazione del secondo PID, che avrà limiti non da 0 a x, ma ± x. Deve infatti poter apportare anche regolazioni in diminuzione, non solo in aumento.

Scusa batta ma non ho capito come fa a partire da 0 se già è in regolazione, o forse devo impostare qualche limite nel pid?

Link al commento
Condividi su altri siti

Ricordo un impianto simile che entrava mosto d'uva e usciva concentrato e si trattava l'ingresso per avere in uscita 33°bè. A quei tempi fine anni 70, si iniziava con una portata avuta da esperienza dell'operatore e quando cominciava ad arrivare in uscita si leggeva il refrattometro e in funzione al valore letto si comandava la variazione della portata in ingresso agendo sul by-pass della pompa, il sistema era a gradini ogni 5min correggeva la portata, in teoria dopo un tempo X il prodotto rimaneva costante. 

Link al commento
Condividi su altri siti

7 minuti fa, max.bocca scrisse:

Ricordo un impianto simile che entrava mosto d'uva e usciva concentrato e si trattava l'ingresso per avere in uscita 33°bè. A quei tempi fine anni 70, si iniziava con una portata avuta da esperienza dell'operatore e quando cominciava ad arrivare in uscita si leggeva il refrattometro e in funzione al valore letto si comandava la variazione della portata in ingresso agendo sul by-pass della pompa, il sistema era a gradini ogni 5min correggeva la portata, in teoria dopo un tempo X il prodotto rimaneva costante. 

Perfetto è proprio questa la funzione, infatti partono con un valore in manuale, che potrebbe essere anche in automatico con un pid che regola la portata, e poi arrivato ai °bè stabiliti passa in automatico con il secondo pid

Link al commento
Condividi su altri siti

1 ora fa, Project75 scrisse:

Scusa batta ma non ho capito come fa a partire da 0 se già è in regolazione, o forse devo impostare qualche limite nel pid?

 

Il 2° regolatore è bloccato e la sua uscita è zero.

Sblocchi il regolatore e la sua uscita va a sommarsi algebricamente al riferimento del 1° regolatore.

Sta poi a te dimensionare il regolatore in modo corretto in modo che la sua uscita, ad esempio, sia negativa se la lettura del rifrattometro è maggiore del valore di riferimento, oppure viceversa.

In questo modo il riferimento di portata varierà in accordo con la misura del rifrattometro.

 

46 minuti fa, max.bocca scrisse:

si iniziava con una portata avuta da esperienza dell'operatore e quando cominciava ad arrivare in uscita si leggeva il refrattometro e in funzione al valore letto si comandava la variazione della portata in ingresso agendo sul by-pass della pompa,

 

Infatti in precedenza ho scritto:

8 ore fa, Livio Orsini scrisse:

Questa è una regolazione che, visti i tempi di processo, potrebbe effettuare benissimo anche un operatore umano. legge il valore del riflettometro e varia un poco il riferimento di portata, secondo esperienza.

 

Link al commento
Condividi su altri siti

Livio, e se io sommassi l'uscita del pid 2 a quella del pid 1, ovviamente in base alla variazione in percentuale del rifrattometro. Cioè se il set_point del rifrattometro è 36, ed ammettiamo che il rifrattometro mi stia dando un valore di 35, faccio 36-35 mi da 1, moltiplicato per la percentuale di incremento, o decremento, che calcolerò io, mi varierà la velocità della pompa, poi aspetterò 4 minuti per la nuova lettura del rifrattometro è a quel punto nuovamente il calcolo in percentuale dell'incremento o decremento che sia, e così via. ... potrebbe andar bene? 

Link al commento
Condividi su altri siti

11 ore fa, Project75 scrisse:

e se io sommassi l'uscita del pid 2 a quella del pid 1,

 

Se il regolatore 1 lavora come si deve correggerà l'eventuale variazione apportata dal regolatore 2.

 

E' un caso scolastico! 

Sovrapporre un segnale all'uscita o all'ingresso di reazione di un regolatore è uno dei 3 modi sperimentali per verificare la banda del regolatore stesso. Sino a che la frequenza del disturbo è entro i limiti di banda del regolatore il disturbo è eliminato o attenuato. 

Il terzo modo, più preciso, è quello di sovrapporre il disturbo al riferimento. Sino a quando il disturbo in uscita ha ampiezza maggiore di 0.707 volte l'ampiezza di ingresso significa che la frequenza del disturbo è compresa nella banda passante del regolatore.

Nel tuo caso deve essere compresa perchè il periodo del disturbo è di circa 240"

Link al commento
Condividi su altri siti

Quote

Livio, e se io sommassi l'uscita del pid 2 a quella del pid 1

 

È quello che, troppo frettolosamente, avevo scritto io (una delle più grosse cavolate nel mondo della regolazione. Se mi volete credere, in testa avevo il modo giusto). Ma non puoi sommare direttamente le uscite di due PID, perché il primo PID andrebbe ad annullare la variazione che sta cercando di fare il secondo PID. Il secondo PID, come ti è già stato detto, deve modificare il set point del primo PID.

Ma poi, perché stai cercando a tutti i costi di complicarti la vita con calcoli in percentuale di incremento o altro?

Ti è stata suggerita una soluzione, perché non la provi?. Non ti convince? Cos'ha che non ti piace?

Facciamo un esempio con i numeri. Hai due PID. Il primo con un set point da 0 a 1000 l/h, ed è quello che regolerà la velocità della pompa, con un'uscita da 0 a 100%.
Il set point del secondo PID sarà la gradazione alcoolica desiderata, e la sua uscita potrebbe essere ± 100 l/h.

Il set point del primo PID lo calcoli sommando al valore impostato dall'operatore l'uscita del secondo PID.

Quando parti il secondo PID è disabilitato, e la sua uscita sarà 0 l/h, quindi il set point del primo PID sarà semplicemente il valore impostato.
Quando abiliti il secondo PID, questo comincia a regolare e andrà a variare il set point del primo PID, che varierà la portata di conseguenza.

Il secondo PID sarà molto morbido, soprattutto per quanto riguarda il tempo integrale, che dovrà essere molto lungo (quindi azione integrale lenta).
Basta. È tutto qui. Senza calcoli da fare ogni 4 minuti o assurdi voli pindarici.

 

Link al commento
Condividi su altri siti

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...