Go Down

Topic: Progettazione di un regolatore per inseguire una curva di temperatura (Read 233 times) previous topic - next topic

matteo_cerbone

Salve a tutti,

sono nuovo del forum e non mi sono ancora presentato nella sezione dedicata (perché non so quale sia) quindi chiedo ai moderatori gentilmente di indicarmela per provvedere.

Vi spiego qual'è il mio progetto e spero con il vostro aiuto di riuscire a portarlo a termine.

Ho bisogno di progettare un controllore che che regoli l'accensione e lo spegnimento di un forno al fine di riscaldare quello che c'è al suo interno seguendo una curva di riscaldamento preimpostata.

Le cose che mi sono chiare sono:
-Composizione del circuito controllore: dopo varie ricerche sono arrivato all'idea di renderlo il più semplice possibile e quindi penso che utilizzerò come hardware semplicemente una termocoppia con MAX6675 per dare la temperatura in input all'arduino e un SSR come output per regolare l'accensione/spegnimento del forno come output.

-Come modalità di controllo non vorrei utilizzare un semplice on/off (per evitare oscillazioni di temperatura troppo ampie) ma un PID, di cui ho già dato un occhio alla libreria e capito sommariamente il funzionamento.

La cosa che non mi è chiara è: come posso dare in pasto al codice la mia curva in modo che istante per istante prenda l'input della termocoppia lo confronti con la curva e decida se debba o non tenere acceso il forno?
Da neofita di arduino ma non di programmazione mi viene da pensare che si possa creare un file esterno (tipo una libreria) in cui ci siano i dati della curva punto per punto e che il programma ad ogni ciclo prenda il valore di riferimento da quel file e imposti il setpoint del PID a quel valore.


Spero di essere stato chiaro. Mano a mano che realizzerò il progetto cercherò di condividere con voi foto e codice in modo che ne rimanga traccia per chi in futuro debba sviluppare un progetto simile.

Grazie a tutti quelli che mi daranno una mano in anticipo.

P.S: ho già fatto molte ricerche sul forum in merito all'argomento ed è vero che ci sono molte discussioni aperte ma in nessuna vedo che si parli di impostare un setpoint variabile col tempo. Ho anche già dato un occhio in internet cercando progetti di reflow oven controller ma non riesco comunque a capire come gestire quella parte del software.

gpb01

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie.

Guglielmo

P.S.: Qui una serie di link utili, NON necessariamente inerenti alla tua domanda:
- serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections
- pinout delle varie schede by xxxPighi: Pinout
- link generali utili: Link Utili
Search is Your friend ... or I am Your enemy !

gpb01

Dopo aver fatto quanto sopra richiesto ...

... per evitare qualsiasi malinteso e incomprensione, ti prego di prestare la massima attenzione al punto 15 (e suoi sottopunti) del succitato regolamento.

Quindi, discussioni che riguardano qualsiasi cosa che va oltre la "bassissima tensione" (es. collegamenti con il 220V, pilotaggio di forni che lavorano a 220V, di macchinari, ecc. ecc. ) , NON sono ammesse.

Così evitiamo qualsiasi equivoco. :D

Guglielmo
Search is Your friend ... or I am Your enemy !

matteo_cerbone

Dopo aver fatto quanto sopra richiesto ...

... per evitare qualsiasi malinteso e incomprensione, ti prego di prestare la massima attenzione al punto 15 (e suoi sottopunti) del succitato regolamento.

Quindi, discussioni che riguardano qualsiasi cosa che va oltre la "bassissima tensione" (es. collegamenti con il 220V, pilotaggio di forni che lavorano a 220V, di macchinari, ecc. ecc. ) , NON sono ammesse.

Così evitiamo qualsiasi equivoco. :D

Guglielmo
Ciao, mi sono appena presentato come richiesto.

Conoscevo già quel punto del regolamento infatti io non voglio modificare il forno, che rimarrà intatto così come uscito dalla fabbrica ma mi inserirò semplicemente tra il forno e l'alimentazione con una prolunga modificata con un relè in modo da dargli corrente solo quando serve riscaldare.

Questo penso sia permesso no?

Etemenanki

Ehm ... capiamoci ...

E' la legge che ci obbliga a non dare informazioni potenzialmente pericolose (che poi le informazioni che diamo non sono di per se pericolose, lo capisce anche un bambino dell'asilo, ma purtroppo se finisci in tribunale non avrai mai la fortuna di essere giudicato da uno di loro :D) ...

Ed in fondo non ci vuole poi molto a chiedere informazioni, a puro titolo di esempio, su un forno alimentato a 48VAC, che rientra nei parametri di sicurezza e per il quale possiamo liberamente fornire indicazioni ... anche perche' in quei casi, se DOPO l'utente decide di usare tali informazioni per la tensione di rete, A NOSTRA INSAPUTA, noi legalmente non ne siamo in alcun modo responsabili ... ;)
"Sopravvivere" e' attualmente l'unico lusso che la maggior parte dei Cittadini italiani,
sia pure a costo di enormi sacrifici, riesce ancora a permettersi.

gpb01

... con una prolunga modificata con un relè in modo da dargli corrente solo quando serve riscaldare.
Questo penso sia permesso no?
NO se la prolunga l'hai modificata TU, se invece hai acquistato un prodotto certificato, dacci il link che verifichiamo di cosa si tratta e le sue specifiche ...

Guglielmo
Search is Your friend ... or I am Your enemy !

matteo_cerbone

NO se la prolunga l'hai modificata TU, se invece hai acquistato un prodotto certificato, dacci il link che verifichiamo di cosa si tratta e le sue specifiche ...

Guglielmo
No la prolunga mi verrebbe effettivamente fatta dal reparto elettronico della mia azienda, quindi da persone qualificate che sanno cosa fanno però non so se questo basti a certificare il prodotto.

Diciamo che capito che è un argomento su cui non si possono dare indicazioni e consigli in quanto pericoloso, vorrei abbandonare la parte hardware del progetto e concentrarmi su quella software in attesa di avere qualcosa di più sicuro su cui lavorare (tipo un fornetto a 48VAC come suggeriva Etemenanki), ossia come faccio a passare al codice i dati di una curva che per esempio creo in excel in modo che il codice stesso la utilizzi come confronto per un output?

Grazie a tutti per le dritte.


gpb01

Nessun problema a parlare della teoria del PID e del controllo di riscaldatori operanti a 48V ...
... basta che non si parla di tensione di rete ;)

Vuoi fare un "forno di reflow" ? Perché se cerchi c'è un'infinità di progetti già fatti su Google ... :)

Guglielmo

P.S.: ecco, Paolo mi ha anticipato e ti ha già dato il link :D
Search is Your friend ... or I am Your enemy !


matteo_cerbone

Uno dei tanti.
Ci sto dando un occhio, dalla premessa sembra proprio quello che fa al caso mio. Cerco di studiare bene questo codice e modificarlo per il mio caso, spero di avere ancora il vostro aiuto in caso di necessità.

Grazie a tutti

gpb01

... considera che un vero "forno di reflow" ... è comunque un qualche cosa di diverso, con rampe sia di salita che di discesa (con apposite ventole per regolarle), quindi ricorda che comunque avrai un oggetto molto "amatoriale" ;)

Guglielmo
Search is Your friend ... or I am Your enemy !

matteo_cerbone

... considera che un vero "forno di reflow" ... è comunque un qualche cosa di diverso, con rampe sia di salita che di discesa (con apposite ventole per regolarle), quindi ricorda che comunque avrai un oggetto molto "amatoriale" ;)

Guglielmo
Si infatti, dovrei valutare se per lo scopo che devo raggiungere ci sia bisogno anche di raffreddare con una certa velocità, ma dal momento che il processo fino ad oggi è stato fatto manualmente credo che l'importante sia scaldare con le giuste tempistiche e che il raffreddamento sia solo lo step finale che possa essere fatto anche a temperatura ampiente.

Intanto dal sito inviato da Paolo sto vedendo che hanno un prodotto già pronto che chiamano Tiny reflow controller(http://www.rocketscream.com/blog/product/tiny-reflow-controller/), mi sto informando sulle potenzialità del prodotto e la facilità di utilizzo. Dato che non ho molto tempo per studiare bene anche il lato di programmazione di arduino se quello fosse un prodotto già programmato in cui si debba solo inserire la curva di reflow ed eventualmente settare manualmente le costanti del PID sarebbe meglio.

Voi sapete dirmi qualcosa in più?Qualcuno ne ha mai usato uno?
Intanto ho contattato l'azienda per farmi inviare il manuale utente del controller in modo da valutare io stesso se possa fare al mio caso.

Fabio_80

Ho quasi terminato il mio progetto che consiste, solamente in on-off, di gestire la temperatura di un forno.
Il progetto consiste nel gestire 4 step, quindi 4 temperature e 4 tempi diversi: in un'ora deve portarsi a 200 gradi, in un'altra ora a 420, in 2 ore portarsi a 750 e in un'altra deve scendere a intorno ai 500.
Ovviamente è solo un esempio di programma perché è tutto modificabile  tramite un menu, 4 pulsanti ed un display.
Se può interessarti la formula base per la gestione che ho usato è (tempo trascorso x temperatura impostata)/tempo dello step.
in questo modo, anche in on-off con una minima isteresi riesci a controllare la temperatura in modo costante.
Non c'è un solo "delay" nel codice... e c'è anche la partenza ritardata!!!

Go Up