Domotica: il riscaldamento controllato via web, con Raspberry PI – Parte 1

Accendere e spegnere il riscaldamento con un Raspberry PI e crontab, si può. E conviene.
Naturalmente con Linux.

In questa prima parte costruisco un progetto, prima di passare ai fatti.

[Segue a http://sergiovaccaro.it/domotica-il-riscaldamento-controllato-via-web-con-raspberry-pi-2/]

Obiettivi

Gli obiettivi di questo progetto di domotica sono due.

  • Accendere e spegnere la caldaia attraverso un sistema di scheduling altamente configurabile, come un crontab, magari seduto alla tastiera del computer, non necessariamente in piedi accanto al muro dove c’è l’obsoleto “cronotermostato”.
    E magari anche senza essere a casa.
  • Accendere e spegnere la caldaia in modo estemporaneo, perché sto tornando a casa prima, perché non sono tornato a casa mentre pensavo di sì, perché chissà. Magari con il telefono.

Ingredienti

  • Un Raspberry PI, dotato di scheda WiFi. Il Raspberry PI dovrà essere alloggiato nella caldaia, quindi la connessione WiFi è indispensabile. E avrà un relay allacciato ad una porta USB, quindi sarà un Raspberry PI B, che ha due USB. Inoltre dovrà stare in balcone, meglio prendere anche il box.
    Spesa prevista, compresi la SD e tutti gli accessori: poco più di 50 euro.
  • Un relay USB, come ad esempio KMtronic USB Relay Controller, che è già “boxed” e può stare in balcone. La porta USB emula una porta seriale e può essere usata per controllare il relay con gli strumenti nativi dei sistemi Linux.
    Spesa prevista 23 euro più spedizione, tasse e seccature.
  • La cavetteria che è già nella caldaia, e cioè l’alimentazione AC e un cavo per il relay, a cui è già allacciato il relay del termostato (che ovviamente è in casa). Più una ciabatta per l’alimentazione elettrica.
  • Un po’ di magia.

L’idea

Collegamenti e collocazione fisica

Si stacca il cavo di alimentazione della caldaia e vi si allaccia una ciabatta a due prese. Alla ciabatta si allacceranno la caldaia stessa e il Raspberry PI. Il Raspberry PI verrà fissato alla buona (con dello scotch o degli elastici) all’interno della caldaia stessa, di spazio come si vede ce n’è.

Si stacca il cavo del termostato, che è già predisposto per accendere e spegnere il riscaldamento tramite il relay del termostato e in serie si inserisce il relay collegato via USB al Raspberry PI. L’alimentazione non occorre, perché è USB. Il relay, a sua volta, verrà fissato con scotch o elastici, come il Raspberry PI.

Tutto qui.

Valutazione economica

Realisticamente, compreso lo scotch, la ciabatta e altre spesette secondarie, siamo andati a spendere 100 euro. In un inverno io spendo 500 euro di gas, quindi supponendo che il sistema funzioni per due anni soltanto, dovrà farmi risparmiare il 10%.

Il mio riscaldamento è acceso inutilmente per il 10% del tempo? Nel mio caso assolutamente sì. Io ho una settimana piuttosto irregolare e per il solo scheduling più accurato prevedo di ridurre il tempo di accensione del 25%.
Mai più riscaldamento acceso, inoltre, se non rientro a casa.

Impagabile, poi, il beneficio in termini di qualità: mai più casa fredda per un rientro improvviso.

In verità faccio tutto ciò per divertimento.

Sistema operativo, connessioni di rete e impianto software generale

Il sistema operativo è il Raspbian da manuale, senza interventi particolari, su SD da 8GB (compresa nel prezzo). I software applicativi sono certamente Apache, probabilmente il PHP, le console non mancano, il crontab… insomma, il solito catalogo di un buon sistema Linux pensato per il web, nessuna invenzione particolare.

La connessione di rete è attraverso la scheda WiFi al router ADSL di casa. Il router dovrà essere configurato per inoltrare le richieste che giungono ad una certa porta esterna (la 8000?) alla porta 80 del Raspberry PI.

Il Raspberry PI dovrà inoltre essere equipaggiato per le comunicazioni con il relay. Anche per chi non se ne intende, la semplice documentazione e il materiale di esempio forniti da KMtronic sono decisamente esaustivi.

Architettura applicativa

Messi insieme tutti i pezzi, l’architettura applicativa diventa relativamente semplice.

Prendiamo per buoni – salvo sottoporli a test e forse a qualche patch – gli script di esempio forniti insieme al relay.

Lo script sembra supporre che qualsiasi utente del sistema possa accedere alla porta seriale emulata dal relay. Prendiamo per buono anche questo assunto, per ora. Successivamente si potrà rinforzare la sicurezza dell’impianto.

  1. Crontab
    Il crontab dovrà solo invocare lo script di accensione e quello di spegnimento, nei giorni e negli orari desiderati. È un esercizio scolastico.
  2. Applicazione web
    L’applicazione web dovrà eseguire quattro task: 

    • informare sullo stato attuale del sistema;
    • consentire di accendere, se spento;
    • consentire di spegnere, se acceso;
    • consentire la manipolazione del crontab.

    L’ultimo task è più delicato, soprattutto per questioni di privilegi e di permessi. Molto interessante sembra il Crontab manager proposto da NetTusPlus. Per iniziare, comunque, si può momentaneamente accantonare. Presi per buoni gli script forniti con il relay e rimandato il problema dei permessi, l’applicazione web è piuttosto semplice, quasi scolastica appunto.
    L’accesso, ovviamente, dovrà avvenire tramite un token di autenticazione, senza gestione delle utenze. Tutto su http semplice, non mi sembra necessario fare https.

Conclusione

Fatti tutti i conti, mi sembra proprio che si possa fare. Vediamo di comprare quel che serve.

Il Raspberry PI, con la SD da 8Gb e Raspbian già installato, l’interfaccia WiFi USB e il case trasparente mi è costato 54.52 €, spedizione inclusa.
Il relay mi è costato 23.00 € più 2.50 € di spedizione, per un totale di 25.50 €.

Messo tutto insieme, la spesa per l’elettronica è di 80.02 €.
Non mi resta che aspettare i pacchetti.

 

[Segue a http://sergiovaccaro.it/domotica-il-riscaldamento-controllato-via-web-con-raspberry-pi-2/]

6 Comments

 Add your comment
  1. Ciao,

    mi hai anticipato di un mese! 🙂 Proprio oggi stavo cercando un argomento di studio per la mia ossessione geek, e ho trovato il tuo post…ora però sono curioso, è arrivato il materiale?! A quando il prossimo post?

    Paolo

  2. Giusto, non riesco a trovare il tempo per scrivere.
    Il materiale è arrivato ed è tutto già in funzione. Ti anticipo che l’aspetto più curioso è stato il controllo del relay.
    Ma vedrò di recuperare il ritardo e raccontare tutto. Entro la fine del mese? Ci provo.

  3. Bene! Anche perchè il prossimo step, inevitabile, è quello di creare una stazione meteo per monitoraggio clima e qualità aria anche interna (es: sullo stile NetAtmo), e sulla base della temperatura interna pilotare il termostato.. 🙂

  4. Semplice, economico e realizzabile.
    Meglio di una soluzione con Arduino.

  5. Attendo con ansia la parte 2

  6. Con un po’ di fatica, qualche serata hikikomori la trovo sempre.
    http://sergiovaccaro.it/domotica-il-riscaldamento-controllato-via-web-con-raspberry-pi-2/

    La parte 2 c’è. Parlo dei dispositivi e di come si domano. È la parte più interessante, anche se non porta a una soluzione finale. Ma da lì in poi sarà solo mestiere.

Leave a Comment

Your email address will not be published.

1 Trackback

  1. Domotica: il riscaldamento controllato via web, con Raspberry PI – Parte 2 | Sergio VaccaroSergio Vaccaro (Pingback)
Analisi degli accessi a www.istat.it
×
', 'auto'); ga('require', 'displayfeatures'); ga('set', 'forceSSL', true); ga('send', 'pageview');