Raspberry Pi: casa domotica e videosorveglianza gestibile da remoto con assistente personale – Parte 2

parte2

Questa è la seconda parte dell' articolo in cui è spiegato come completare l'esperimento con il Raspberry Pi che permette nell' avere a disposizione un cloud, un mini impianto di videosorveglianza, gestire relè da remoto e quindi accendere luci, forno, aprire porta… e di visualizzare la temperatura di un ambiente. Tutto tramite una interfaccia Web e gestibile da remoto.

Nell’articolo precedente abbiamo visto come preparare il nostro Raspberry Pi per realizzare questo esperimento; in questa seconda parte, invece, vedremo:

  • come effettuare il collegamento fisico tra il Modulo dei relè e il Raspberry;
  • come è possibile gestire da remoto tramite una connessione internet i relè e quant’altro;
  • di quali script e software abbiamo bisogno per gestire i relè tramite una pagina web, visualizzare la temperatura ambiente ed effettuare la gestione del cloud e la videosorveglianza tramite webcam.

Per effettuare il collegamento fisico tra il nostro Raspberry Pi ed il modulo dei relè avremo bisogno di un cavo di connessione GPIO, oppure per come ho fatto io, si può usufruire di un vecchio cavo per lettore floppy, tagliandolo a metà e, dopo aver connesso al Raspberry Pi la prima metà, bisognerà individuare quali fili corrispondono a:

- +5V – GND -GPIO 1 -GPIO 4 -GPIO 9 -GPIO 10 -GPIO 11 -GPIO 17 -GPIO 21 -GPIO 22

Etichettiamolo, così da non confonderci quando effettueremo il collegamento con il modulo dei relè. L'altra metà del cavo andrà collegata, ovviamente, al modulo dei relè e, come fatto in precedenza, bisogna individuare i fili che corrispondono a:

- VCC – GND – IN1 – IN2 – IN3 – IN4 – IN5 – IN6 – IN7 – IN8

  • Colleghiamo, allora, il tutto così:
  • (+5V) con (VCC),
  • (GND) con (GND),
  • e porte (GPIO X) con le entrate (IN).

Bene, ora il collegamento è stato effettuato; andiamo avanti.

Tra gli obbiettivi prefissati per questo esperimento c’è quello di poter accendere e spegnere i propri dispositivi a distanza tramite una connessione Internet e, quindi, senza che ci sia bisogno di essere fisicamente presenti per poter accendere un forno, le luci di casa, la lavatrice, aprire il portone di casa, e così via.

Per poter gestire l’GPIO impostandolo IN/OUT ho scelto di utilizzare il programma WebIOPi che permette di impostare l'INPUT e l'OUTPUT di tutte le GPIO, così per qualche progetto futuro ho già il lavoro cominciato. Per effettuare l'installazione istallarlo vi consiglio di seguire i semplici passi che vi vado a descrivere.

Per prima cosa, se non abbiamo installato o aggiornato pyton, dobbiamo farlo digitando:

sudo aptitude install python-dev

Naturalmente confermiamo l'installazione ed aspettiamo che faccia il suo lavoro.

Adesso dobbiamo scaricare ed installare WebIOpi digitando:

wget http://webiopi.googlecode.com/files/WebIOPi-0.5.1.tar.gz tar xvzf WebIOPi-0.5.1.tar.gz cd WebIOPi-0.5.1 sudo ./setup.sh

A questo punto, configuriamo:

sudo python -m webiopi [porta]

dove porta e’ la porta di python che di default la porta 8000. Per comodità mettiamo tutto in avvio automatico digitando:

sudo update-rc.d webiopi defaults

Una volta terminate queste semplici operazioni, apriamo il browser e andiamo alla pagina

http://indirizzo_raspberry:8000/webiopi

qui compare una schermata tramite la quale possiamo gestire la configurazione dei pin in Entrata o Uscita cliccando sul numero di pin per cambiare lo stato Acceso-Spento.

Naturalmente questa pagina può essere modificata senza troppi problemi cercando le istruzioni sul sito del programma.

Per il cloud, dopo aver creato uno script in php ho deciso di utilizzarne uno che non ho creato io per questione di estetica, e perciò lascio la scelta a voi.

Per avere a disposizione i files che sono su un Hard Disk bisognerà spostare la cartella www sul disco esterno e modificare il file di configurazione di apache che si trova in

/etc/apache2/sites-available/default

digitando sul nostro raspberry:

nano /etc/apache2/sites-available/default

modificando:

DocumentRoot /var/www => DocumentRoot posizione_hard_disk/var/www

Per mettere il tutto online basta registrare un dominio dns ed impostare nella pagina di gestione del router l'indirizzo che abbiamo creato. Io ho creato un dominio su http://dyndns.it/ e devo dire che mi trovo davvero bene.

Per la parte che riguarda la visualizzazione della temperatura, ho scelto di utilizzare il sensore di umidità e temperatura DHT11, ma purtroppo sto riscontrando alcuni problemi nei test che al più presto cercherò di risolverere, ed allora scriverò un UPGRADE nei commenti.

Naturalmente per come ha già fatto qualcuno, non esitate a contattarmi se trovate difficoltà o avete domande. A Presto!

20 Comments

  1. rednet 15 maggio 2014
  2. Pierfrancesco.Elia 26 febbraio 2014
  3. Emanuele.Landolfi 23 aprile 2014
  4. IvanScordato Ivan Scordato 28 febbraio 2014
  5. IvanScordato Ivan Scordato 28 febbraio 2014
  6. Emanuele.Landolfi 7 febbraio 2014
  7. IvanScordato Ivan Scordato 15 aprile 2013
  8. Emanuele.Landolfi 7 febbraio 2014
  9. sacuragy 4 aprile 2013
  10. mastermind 29 maggio 2013
  11. IvanScordato Ivan Scordato 29 maggio 2013
  12. IvanScordato Ivan Scordato 15 febbraio 2014
  13. IvanScordato Ivan Scordato 15 febbraio 2014
  14. Giorgio B. 13 febbraio 2013
  15. agostino68 14 febbraio 2013
  16. Piero Boccadoro Piero Boccadoro 15 febbraio 2013
  17. IvanScordato Ivan Scordato 15 febbraio 2013
  18. Piero Boccadoro Piero Boccadoro 15 febbraio 2013
  19. IvanScordato Ivan Scordato 15 febbraio 2013
  20. Emanuele.Landolfi 20 febbraio 2014

Leave a Reply