Via Cà Matta 2 - Peschiera Borromeo (MI)
+39 02 00704272
info@synaptica.info

Arduino Duemilanove … Application #1

Arduino Duemilanove … Application #1

arduino_temperature1

Dopo mesi che avevo il termostato della mia caldaia rotto mi son deciso a prendere un Arduino, almeno la programmo come voglio, la accendo e spengo via Internet e posso avere più sensori di temperatura nelle diverse camere (mi posso pure accorgere se ho lasciato un finestra aperta).
I componenti di questo nuovo termostato sono :

  • un Arduino dueminlanove
  • un sensore di temperatura lm35
  • un relè da 5v
  • un alimentatore per mantenere l’arduino alimentato nel caso si spegnesse il server
  • un led che mi segnala lo stato del relè

praticamente il led indica quando la caldaia è in fuzione cioè il relè la accende e contemporaneamente alimenta il led. Gist’appunto ho sviluppato un programmino in Lazarus per Linux che tramite la seriale permette di visulizzare lo stato, e mi son accorto che l’Arduino ogni volta che ci si connette con la seriale (Seriale su cavo USB) si resetta, quindi i valori/parametri che mi servo come impostazione (Tipo la temperatura a cui far partire e fermare la caldaia) devo in qualche modo renderli permanenti, per questo sull’arduino è montata una EEPROM che permette lo store 30Kbytes di dati statici, e funziona come un array (ovviamente ad accesso diretto).

Detto questo è veramente bellissimo, l’LM35 è sensibilissimo, e la documentazione è facilmente reperibile dal sito della National Semiconductors.

Lo so , lo so come elettronico son un cane, non ho nemmeno messo una resistenza di abbattimento ne sul sensore di temperatura ne sul led.. ma la smania di provare la cosa al volo mi ha indotto in questa scelta scellerata di montare tutto in un minuto. Cmq sia funziona da ieri alla grande.

Il programma che gira sull’arduino al momento è banale, praticamente permette di fare le seguenti cose :

  • Si può definire la temperatura di soglia per accendere il riscaldamento da seriale
  • Il pc sempre via seriale riceve due dati : la temperatura di soglia attuale e la temperature ambiente attiva
  • Se la temperatura di reale è minore di quella di soglia fa scattare il relè

il codice del programma sull’arduino :

il programma invece fatto con lazarus si presenta come segue :

schermata-demo-termostato-ivan

mentre i sorgenti del programma si possono scaricare dal seguente link :

[download id=”12″]

a presto
ivan

4 risposte

  1. Leonardo ha detto:

    Salve Ivan,

    congratulazioni per l’applicazione, la ritengo molto utile!

    Vorrei un chiarimento in merito alla conversione della temperatura dal valore Analogico a quello in gradi Celsius.

  2. ivan ha detto:

    Ciao Leonardo,
    il valore dell’LM35 per le temperature positive è proporzionale alla sua tensione di alimentazione , che nel caso dello schema nell’articolo è di 5V quindi torna dei valori di tensione compresi da 0 a 5V per le temperature positive mentre inverte la polarità per quelle negative il tutto facendo una proporzione con la temperatura minima e massima esprimibile dal trasduttore. Comunque trovi tutto documentato sul sito della national Semiconductors al link http://www.national.com/ds/LM/LM35.pdf . Scusa per il ritardo nella risposta ma in ferie non volevo vedere un computer nemmeno di striscio se non per guardare il meteo.
    Al momento siamo tutti impegnati con lavori / progetti / casini, quindi se migliori il progetto magari facendo anche uno schema elettrico meno banale del mio ad esempio con le giuste resistenze di abbattimento o magari che gestisca le temperature negative saremmo felici di pubblicare il tuo contributo (citando ovviamente l’autore).

    a presto
    ivan

  3. Riccardo ha detto:

    Ciao a Tutti…
    Dovrei fare un mini circuito elettrico collegando tra loro arduino Uno + sensore di CO2 + striscia di led
    Il problema è come collegare il sensore ad Arduino?????
    Il sensore acquistato è questo http://tecnosens.it/products/sensors/s1–sensori-di-gas/s1–sensori-a-semiconduttore/s25–sensori-per-anidride-carbonica-(co2)/s16–cdm4161.aspx
    Ho acquistato anche la breadboard ma non so come collegarci il sensore.
    Qualcuno mi può aiutare con uno schema e alcune indicazioni?
    Alla fine devo ottenere un mini-circuito che quando rileva una elevata concentrazione di CO2 mi fa accendere la striscia di led… Ho acquistato anche la striscia di led, la batteria per alimentare la striscia di led e il relè…
    Come posso fare?

  4. ivan ha detto:

    Ciao Riccardo,
    ho guardato la specifica del sensore, il collegamento è abbastanza semplice , per l’alimentazione puoi usare un’uscita digitale (che appunto è a 5V) mentre il segnale di ritorno lo leggi dalla porta analogica, il valore tornato che puoi usare è un valore numerico compreso da 0 a 1000 che è proporzionale alla lettura da uno degli ingressi analogici. Attenzione però che il tuo sensore ritorna valori da 0V a 4V il che significa che devi fare le dovute proporzioni.
    Spero di esserti stato utile, se nel caso hai ancora problemi e sei di milano magari ci possiamo vedere.

    a presto
    ivan

Lascia un commento