Arduino & termoconvettore & tecnologia inv

Salve a tutti,
visto il freddo al nord italia in questi giorni, mi sono ritrovato a dover acquistare un termoconvettore per un piccolo ambiente (4mq).
L'ambiente non è da riscaldare, è semplicemente da mantenere sopra i 6°C (antigelo).
Tutto bene finchè non l'ho provato e....ahimè, il termostato installato non mi consentiva di impostare tale temperatura, ma partiva dai circa 12°C in su.....inutile dire che di quel termostato non me ne facevo nulla......

Ergo, smonto il tutto e sostituisco il termostato "di fabbrica" con uno, sempre manuale, che va da 0 a 30°C...perfetto!!!

Regolo 6°C e tutto va a gonfie vele.........

L'unico inconveniente è che il termoconvettore essendo "stupido" scatta appena si scende sotto i 6°C e si ferma quando vengono raggiunti, in un continuo "on-off" da 2200W di consumo.....uno spreco di energia elettrica enorme.

Mi sono chiesto: Possibile che con il mio Arduino 2009 e con il PWM non si riesca a fare una sorta di termoconvettore-inverter? Si, insomma, man mano che la temperatura viene raggiunta il duty-cycle del segnale PWM si ridimensiona in favore di un consistente risparmio elettrico.

Ho supposto l'occorrente:
-Termoconvettore (ovvio), il mio è da 2200W
-Display lcd per visualizzare/impostare la temperatura (hd44780 compatibile, possiedo anche quello)
-Un paio di pulsanti per impostare la temperatura desiderata
-Un sensore di temperatura (un LM35 può andare bene?)
-Un mosfet collegato al segnale PWM per pilotare direttamente l'alimentazione del termoconvettore (e qui non ho la menchè minima idea di cosa e come fare e cosa usare)

Ammetto di essere a digiuno di elettronica da parecchi anni, qualcuno ha delle dritte da darmi per quanto riguarda la parte di potenza e di come collegarla ad Arduino??

Per il codice no problem, l'ho quasi completato.

Potrebbe essere un'ottima idea per convertire e riutilizzare tutte quelle apparecchiature che hanno un funzionamento "on-off", senza spendere centinaia di euri (vedi la differenza tra i condizionatori a tecnologia inverter e non, ad esempio).
La stessa idea potrebbe essere valida anche per gli apparecchi che producono freddo.

O Voi che siete più esperti di me, illuminatemi!

ciao

se usi un algoritmo pid non hai bisogno del PWM tanto il "sistema stanza" ha dei tempi di risposta lunghissimi.

Il termoconvettore è a 220v o a 12v?

se è a 220 meglio mettere un bel relè e sei a posto.

il setup che indichi tu può andare bene. ci sono degli articoli sul playground che spiegano come farsi la caffettiera open source con Arduino che usa PID e display a LCD... devi sostituire il codice che legge la termocoppia con quello che legge l'LM35

dovrebbe essere abbastanza facile da fare come progetto

massimo

Grazie per le dritte!

Hummm.....ho cercato di capirci un pochino sul pid e la caffettiera........ammetto la mia ignoranza su tale algoritmo. Me lo guardo ben bene!

Il mio termoconvettore va a 220V

Supposto che ne venga a capo, se metto un relè come dici tu, non vado a vanificare i benefici in termini di consumo che mi darebbe il PWM?
Col relè sarebbe sempre un "on-off" anche se controllato con il pid, o sbaglio?

Per il resto va bene, devo solo capire se esiste un MOS (qualora non usassi il relè....illuminami su cosa usare, ti prego :'() che mi tiene 10 o più Ampere! (ne sai qualcosa?)

Grazie ancora,

Ciao!

Potresti usare un relé a stato solido da controllare via PWM. Ne ho visti da 10...20...50 e più Ampère
:slight_smile:

Scusa per il ritardo, grazie per l'attenzione.

Potrei usae dei relè allo stato solido, vero, ma il tempo di risposta dei relè è di 10ms, (almeno sui modelli che ho visto su internet)
Questo vuol dire che al massimo posso usare una frequenza di 100Hz.......e arduino me ne da 490 invece.

Correggimi se sbaglio....

Grazie.

Ne sai + di me mi arrendo ;D

comunque, se non erro, ho visto nella Rete esempi di relè a SS pilotati via Arduino. Se trovo qualcosa lo posto...

Ecco di cosa parlavo

http://www.bryanchung.net/?p=233=1

http://www.practicalfishkeeping.co.uk/forum/showthread.php?t=11876

Se fai una googolata trovi svariati esempi :wink:

(??se lavori in PWM non determini, oltre al dutycicle, anche la frequenza??)
:slight_smile:

Se usi il pwm nativo di arduino la frequenza è predeterminata
ma può essere modificata

continuo a dire che se devi riscaldare una stanza il pwm è una perdita di tempo perche la costante di tempo di un sistema come quello è molto piu lunga... (è come se tu facessi del pwm ma con una frequenza di 1HZ o meno)

qualche ingegnere vero in ascolto può farti tutte le formuline.

m

forse sbaglio ma essendo la temperatura di una stanza la variabile da controllare ed essendo l'on/off l'unica variabile di controllo cioè l'unica variabile su cui agire per controllare la temperatura indipendentemente da relè allo stato solido, frequenze, pwm e quant'altro non si può fare un buon controllo perchè la variabile di controllo accetta solo due stati e quindi il termoconvettore continuerebbe a spegnersi ed accendersi in continuazione.

Se mi sono perso qualcosa, cioè la variabile di controllo è un'altra, allora il modo più semplice per controllare la temperatura è un controllore PID. Ovviamente si deve avere un po' di dimestichezza con in controllori automatici. Ma guardando il caso della macchina da caffe non si dovrebbere avere particolari problemi visto che il sistema è molto più semplici perchè ha tempi di risposta lunghissimi.

ciao

Salve a tutti,
scusate il ritardo.

Ringrazio tutti per le risposte datemi.

Proverò con il pid come suggerito da uccio e Massimo Banzi, poi proverò per comparazione anche le dritte di Alohomar.

L'idea finale è comunque quella di avere degli sbalzi di temperatura minimi.

Grazie ancora a tutti.

Agharta

uccio credo che con algoritmi simili al PID puoi controllare anche un sistema come questo dove ha una variabile che puo' essere solo ON/OFF.
ho letto da qualche parte che ci sono delle varianti che appunto tendono, piuttosto che a tenere il valore controllato sempre perfetto, a minimizzare le accensioni/spegnimenti della macchina.

comunque, al momento ogni quanto tempo "cambia stato" (cioe' si accende/spegne) ? Perche' in caso puoi semplicemente mettere un programma che, una volta cambiato stato (cioe' passato da acceso a spento o viceversa) impedisca altri cambi di stato per TOT tempo (magari con un semplice delay). Scaduto il tempo riprendi la lettura del sensore.
ovviamente piu' lungo e' il tempo che metti e piu' la temperatura variera'.
L'ho buttata li, spero non sia una cavolata :stuck_out_tongue:

no assolutamente un controllore PID ha bisogno di una variabile di controllo che può avere un numero elevato di stati possibili ovviamente limitato entro due valori. Per farti un esempio è come quando fai la doccia e hai un rubinetto senza miscelatore (quelli con due manopole) e devi agire sulle due manopole per avere l'acqua alla temperatura desiderata. Se vuoi avere un controllo decente devi avere variabili di controllo con decine e decine "gradi di libertà" (si noti che ho usato le virgolette). Riusciresti a fare un doccia se al posto delle manopole avessi due interruttoti on/off ??? credo di no...

Per quanto riguarda la soluzione software proposta da @msx non credo sia buona. Per alcune ragioni:

  1. devi studiare il sistema e capire dopo quanto tempo c'e' un cambiamento di stato
  2. fissando un delay non puoi controllare la temperatura in ogni situazione, cosa sucede se quel giorno fa piu freddo o piu caldo oppure se si tiene la porta aperta per un attimo???????

Per approfondimenti sul pid:
http://www.embedded.com/2000/0010/0010feat3.htm

ottimo link