micscal Inserito: 2 ottobre 2015 Segnala Inserito: 2 ottobre 2015 buongiorno a tutti, avrei bisogno di un aiuto con il pid compact di s7-1200 usato per la regolazione della pressione di un forno di verniciatura.il mio problema principale, escludendo la gestione della banda morta del setpoint che ho dovuto gestire esternamente alla funzione, è il seguente: il pid dà un riferimento in tensione, 0-10V, ad un inverter. quando avvio l'impianto, attivo l'inverter con un riferimento fisso (impostabile da ricetta) con pid disattivato. dopo circa 30 secondi attivo il pid per la regolazione della pressione dell'aria. il problema è che all'attivazione del pid, il valore in uscita dalla funzione per pilotare l'inverter parte da zero, generando delle depressioni all'impianto, che ovviamente il cliente non vuol sentire. vorrei capire se è possibile preimpostare il valore dell'uscita del pid al riferimento durante nel momento in cui attivo la regolazione, nel senso che, se ho l'inverter che lavora a 5V, il pid deve iniziare la regolazione a quei 5V. in alternativa, mi chiedevo se la funzione PID_3STEP possa soddisfare le mie esigenze. grazie
Livio Orsini Inserita: 2 ottobre 2015 Segnala Inserita: 2 ottobre 2015 Devi fare una specie di bump less esterno.Attivi il PID, ma mantieni il riferimento da ricetta; quando l'uscita del PID è prossima al valore di riferimento ricettato esegui la commutazione.Meglio ancora sarebbe eseguire una regolazione feddforward più feed back con peso del feedback ridotto, ma qui le cose si complicano un pochino e, probabilmente, non puoi usare i PID di libreria.
micscal Inserita: 2 ottobre 2015 Autore Segnala Inserita: 2 ottobre 2015 ti ringrazio per la risposta. avevo già pensato e provato la soluzione da te proposta, attendere l'uscita del pid prossima al valore di riferimento per commutare la regolazione. la modifica funzionava correttamente, non si sentiva più il cambio da riferimento fisso a quello della regolazione, cioè la depressione dell'impianto, come descritto sopra. però è sorto un secondo problema, cioè se durante la fase di avviamento del pid provoco dei cambi di pressione all'interno del forno, ad esempio aprendo le porte, il sistema non riesce a regolare correttamente la pressione e quindi il sistema mi va in allarme massima pressione. quindi sono al punto di partenza
Livio Orsini Inserita: 2 ottobre 2015 Segnala Inserita: 2 ottobre 2015 Allora la soluzione è l'uso di un modello, anche semplificato, per generare un feedforward che riduca l'effetto del feedback.
micscal Inserita: 2 ottobre 2015 Autore Segnala Inserita: 2 ottobre 2015 in pratica mi suggerisci di abbandonare la libreria siemens e gestire il tutto da codice. credo che sia una soluzione macchinosa, ne discuterò col mio titolare e col cliente. grazie per il supporto
bigalex Inserita: 2 ottobre 2015 Segnala Inserita: 2 ottobre 2015 Quando vengono aperte le porte (spero tu abbia dei finecorsa sulle porte) dovresti escludere il PID dalla regolazione ed imporre un riferimento fisso all'inverter tale da creare depressione sufficiente.Poi quando le porte vengono chiuse fai quello che hai descritto prima durante la fase di avviamento.In pratica il PID lo tieni abilitato ma ne prendi in considerazione l'uscita solo quando sei prossimo al valore di riferimento impostato.Credo che tra l'altro per comandare l'inverter avrai una rampa (interna all'inverter stesso e/o genarata te) che ne influenza comunque la reazione.Inoltre è importante che il punto di presa della misura di depressione sia il più possibile al riparo da eventuali turbolenze che influenzerebbero negativamente la lettura.bigalex
Livio Orsini Inserita: 2 ottobre 2015 Segnala Inserita: 2 ottobre 2015 cioè se durante la fase di avviamento del pid provoco dei cambi di pressione all'interno del forno, ad esempio aprendo le porte Be se le porte sono aperte non credo, qualunque sia il tipo di regolatore usato, si possa mantenere la corretta regolazione perchè non è un disturbo compensabile.Si può congelare lo stato del regolatore per la durata del disturbo, come suggerisce bigalex.credo che sia una soluzione macchinosa tuttaltro! Anzi il regolatore sarà senz'altro più semplice del pid di libreria (tra l'altro i PID di libreria siemens sono tutto tranne che smeplici ed ottimizzati).L'unico pèroblema è che è necesario conoscere bene cosa occorre fae e come farlo.Tra l'altro non capisco la necessità di questo avviamento.Il problema che denunci, ovvero : "... il sistema non riesce a regolare correttamente la pressione.." sembra un classico problema di saturazione di integrale, integrale magari lento. Basterebbe bloccare l'integrale durante il disturbo per migliorare la risposta, ma è sempre comunque una pezza.
batta Inserita: 2 ottobre 2015 Segnala Inserita: 2 ottobre 2015 La soluzione è semplice: non devi disabilitare il PID, ma solo metterlo in manuale. Con il PID in manuale puoi impostare il riferimento a piacere (sempre però passando dal PID) e, quando rimetti in automatico, la modulazione avviene senza gradini (bumpless).
suppaman87 Inserita: 6 ottobre 2015 Segnala Inserita: 6 ottobre 2015 Concordo con batta.Anche io solitamente faccio cosi, tengo il PID in manuale quando ho bisogno di dare un riferimento fisso all'uscita da pilotare. Puoi utilizzare tranquillamente il PID di libreria, ha l'apposito bit di ingresso per la modalità manuale e ovviamente l'ingresso il riferimento relativo.
Livio Orsini Inserita: 6 ottobre 2015 Segnala Inserita: 6 ottobre 2015 Tenere il PID in manuale equivale alla disabilitazione; in altri termini la funzione si comporta come passante per il riferimento, è come se ci fosse un corto tra ingresso di riferimento ed uscita.
batta Inserita: 6 ottobre 2015 Segnala Inserita: 6 ottobre 2015 (modificato) Tenere il PID in manuale equivale alla disabilitazioneNo, per le funzioni PID di libreria Siemens non è la stessa cosa. Nel passaggio da manuale ad automatico la funzione imposta l'integrale in modo da partire con la regolazione dal valore attuale dell'uscita, quindi la regolazione riparte senza gradini.Invece, se disabilito il PID, quando lo riabilito l'integrale riparte da zero o, al limite (dipende da come ho escluso il PID), da un vecchio valore non più attuale. Il gradino, in questo caso, è inevitabile. Modificato: 6 ottobre 2015 da batta
Livio Orsini Inserita: 7 ottobre 2015 Segnala Inserita: 7 ottobre 2015 imposta l'integrale in modo da partire con la regolazione dal valore attuale dell'uscita, quindi la regolazione riparte senza gradini.Dal punto di vista della regolazione la considero una pessima scelta; magari è comoda in applicazioni come questa ma, concettualmente, non è bello:Si tenta di far svolgere all'integrale la funzione di feed forward in modo piuttosto becero.Poi, come tu sai, io son molto critico con le strategie di regolazione Siemens.A parer mio in una regolazione di questo tipo, ma in quasi tutte le regolazioni, il grosso del lavoro deve farlo il feed forward. La retroazione deve solo dare piccoli aggiustamenti.Se si osservano i miei regolatori in funzione si vede che l'integrale è sempre quasi scarico, sintomo di una regolazione diretta molto ben centrata.Per fare questo ci sono alcuni piccoli e semplici accorgimenti, però la funzione PID deve essere concipita in modo differente da quelle di siemens. Ma qui entriamo in un ragionameto che abbiamo gia affrontato e su cui manteniamo idee differenti.
batta Inserita: 7 ottobre 2015 Segnala Inserita: 7 ottobre 2015 Si tenta di far svolgere all'integrale la funzione di feed forward in modo piuttosto becero.Non è che svolga la funzione di feed forward, semplicemente permette di partire senza sbalzi sul valore in uscita.Il feed forward, purtroppo, non è sempre applicabile. Tutto dipende dalla complessità del modello. Per il caso in questione non abbiamo sufficienti dati per determinare se sarebbe applicabile o meno. Visto che la richiesta riguardava solo una ripartenza del PID senza sbalzi e che la funzione PID di Siemens implementa già il bumpless nel passaggio da manuale ad automatico, non vedo perché non usarlo.
Livio Orsini Inserita: 7 ottobre 2015 Segnala Inserita: 7 ottobre 2015 Se la componente integrale eguaglia il riferimento manuale svolg fe funzione di feed forward per definizione. Infatti passando alla regolazione automatica la componente integrale costituisce l'unico riferimento, nel caso l'errore fosse inferiore alla banda morta non si avrebbe variazione alcuna.Il problema dei regolatori PID classici è sempre costituito dall'integrale che ne limita la banda passante.Nel caso in oggetto è indubbio che in assenza di disturbi la banda passante non è critica, ma appena si ha un disturbo, come l'apertura porte, l'importanza della banda più o meno larga si sente.Comunque ognuno ha le sue strategie di regolazione ed i risultati si apprezzano sul campo.
micscal Inserita: 9 ottobre 2015 Autore Segnala Inserita: 9 ottobre 2015 buongiorno a tutti. credo che la soluzione di avviare il pid in manuale e poi reimpostarlo in automatico sia la soluzione più semplice, considerando anche l'applicazione a cui sto lavorando e il tipo di cliente. grazie a tutti
Livio Orsini Inserita: 9 ottobre 2015 Segnala Inserita: 9 ottobre 2015 Solo chi ha sott'occhio tutte le variabili e le componenti del sistema può valutare la soluzione più convniente.
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora