In questo articolo voglio presentare un progetto che ho realizzato con Raspberry Pi che consiste nel creare un impianto di Videosorveglianza utilizzando una o più Webcam, un mini impianto domotico per gestire dei Relè da remoto, un Cloud Online, tramite il quale si possono avere a disposizione i propri file dovunque ci si trovi e un mini server per ospitare sia un Sito Web sia il pannello di gestione dei relè, della webcam, del cloud, etc… Sensore di Temperatura tramite il quale si può visualizzare la temperatura a distanza ed eventualmente prendere determinate decisioni. Spero che vi piaccia... Buona lettura.
In questo contest ho presentato il mio progetto; esso permette di avere a disposizione un assistente personale per effettuare delle ricerche online ed un sistema che abbia le seguenti funzioni:
- Mini impianto di Videosorveglianza utilizzando una o più Webcam e con possibilità di vedere online, in tempo reale, quello che succede nell’ambiente in cui è posizionata la webcam;
- Cloud Online tramite il quale si possono avere a disposizione i propri file dovunque ci si trovi con una connessione in Internet;
- Gestire relè da remoto, così da poter accendere e spegnere diversi dispositivi da remoto come un forno, una lampadina oppure aprire il portone di casa, etc…;
- Mini server per ospitare un Sito Web e il pannello di gestione dei relè, della webcam, del cloud, etc…
- Sensore di Temperatura tramite il quale si può visualizzare la temperatura a distanza ed eventualmente prendere determinate decisioni in automatico.
Configuriamo Raspberry
In questa prima parte vedremo come configurare il nostro Raspberry Pi per fargli svolgere le seguenti funzioni e di che hardware e software abbiamo bisogno.
Quasi sempre nelle reti Casalinghe il Router assegna ad ogni PC un indirizzo IP casuale che cambia ogni volta che il PC effettua un nuovo collegamento alla rete locale.
Prima di tutto quindi è importante impostare l’ indirizzo IP del nostro Raspberry Pi da Dinamico a Statico così da sapere sempre a quale indirizzo IP raggiungerlo.
Per effettuare questa operazione dobbiamo vedere qual’è il BroadCast, l’ Host e La Mask che possiamo conoscere digitando “ifconfig”.
Atre informazioni possiamo ricavarle da un computer che abbia come sistema operativo Windows aprendo Esegui=>cmd e digitando ipconfig.
Dopo aver appuntato questi indirizzi, possiamo proseguire nella configurazione facendo l’accesso come root (se non l’abbiamo già fatto) digitando “sudo –i”, e modificando il file di configurazione dell’ interfaccia network nel seguente modo:
auto lo iface lo inet loopback iface eth0 inet static address 192.168.1.70 ==> L’indirizzo IP che vogliamo assegnare al nostro Raspberry Pi netmask 255.255.255.0 ==> Quì la Netmask gateway 192.168.1.254 ==> Quì inseriamo il Gateway del Router network 192.168.1.0 ==> Quì scriviamo l’indirizzo del Network broadcast 192.168.1.255 ==> Quì inseriamo il Broadcast allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp
digitiamo
nano /etc/network/interfaces
e modifichiamo il file.
Per quanto riguarda la videosorveglianza gestibile online il programma MOTION è l'ideale perchè essendo molto versatile è facilmente adattabile alle proprie esigenze.
Quindi installiamolo:
sudo apt-get install motion
e modifichiamo il file di configurazione:
nano /etc/motion/motion.conf
Cerchiamo le opportune righe e modifichiamole così come sono scritte quì di seguito:
framerate 100 output_normal off ffmpeg_cap_new off webcam_maxrate 100 webcam_localhost off
Siamo pronti ad avviare MOTION:
sudo motion
Di default viene aperta una connessione sulla porta 8081, e se per caso non dovesse essere aperta dobbiamo aprirla dalla pagina della gestione del router assegnando la porta al nostro Raspberry Pi.
E adesso per visualizzare il video in streaming apriamo un browser e digitiamo: http://indirizzo_ip_del_vostro_raspberry:8081
Così possiamo vedere in tempo reale quello che succede.
Adesso per questo progetto dobbiamo installare LAMP che sta per: Linux Apache MySql PHP
sudo apt-get install apache2 php5 libapache2-mod-php5
Dopodichè riavviamo Apache
sudo service apache2 restart
Per attivare l’HTACCESS bisogna modificare il file config nel seguente modo:
sudo nano /etc/apache2/sites-enabled/000-default
Cerchiamo “AllowOverride None” e cambiamola con “AllowOverride ALL”
Adesso dobbiamo installare MySql digitando:
sudo apt-get install mysql-server mysql-client php5-mysql
Confermiamo l’installazione. Successivamente, grazie ad una schermata dedicata, ci verrà chiesto di scegliere una password per l’utente ROOT che digiteremo e confermeremo premendo Invio/Enter.
Fin qui ci siamo, ma per poter utilizzare il nostro Raspy come server dobbiamo installare un Ftp Server, ed io ho scelto di installare vsftp.
Prima di cominciare dobbiamo scegliere la cartella dove saranno i nostri file del Server:
sudo chown -R pi /var/www
Installiamo l’FtpServer:
sudo apt-get install vsftpd
Anche quì dobbiamo modificare il file di configurazione:
sudo nano /etc/vsftpd.conf
Alla fine delle righe aggiungiamo questa:
force_dot_files=YES
Cerchiamo e modifichiamo queste righe:
anonymous_enable=YES cambiamolo con anonymous_enable=NO #local_enable=YES cambiamolo con local_enable=YES #write_enable=YES cambiamolo con write_enable=YES
Usciamo e salviamo.
Se non l’avete ancora fatto consiglio di abilitare l’utente Root digitando:
passwd root
Ok, adesso si può effettuare il collegamento tramite FTP utilizzando come Hostname quello che è stato settato (raspberrypi), come nome utente "pi" e come password quella dell’utente.
Avremo bisogno anche di PhpMyAdmin per gestire i Database, quindi scarichiamo dal sito ufficiale l’ultima versione disponibile, e scompattiamo l’archivio in una cartella che possiamo chiamare “PhpMyAdmin” in
/var/www
e configuriamolo.
Per fare questo splendido progetto abbiamo bisogno di un modulo relè; per il momento io ne sto utilizzando uno da 8 relè anche se ci sarà sempre la possibilità di aggiungerne degli altri con un massimo di 17 relè (facendo, ovviamente, attenzione a quale valore di corrente avremo bisogno in modo da scegliere un alimentatore adatto).
La prossima volta vedremo come configurare e gestire la pagina del gestione dei relè e come effettuare il collegamento fisico tra il Raspberry Pi e il Modulo dei Relè. A presto.
Ho trovato questo esperimento molto riuscito ed interessante.
Credo che per essere (diventare) un sistema domotico completo gli manchi solo qualche piccolo dettaglio.
Complimenti all’autore 🙂
Se me lo concedete, vorrei fare una riflesione: qui da me, ma immagino più o meno in tutto il sud, la domotica è fai-da-te oppure non ha costi talmente proibitivi (ed offerenti così sparuti) da essere semplicemente una strada impaticabile e quindi di fatto non esiste.
Anche nel resto d’Italia vanno così le cose?
Il Raspberry potete anche averlo GRATIS…. ma solo fino a stasera Venerdi 18
http://it.emcelettronica.com/r…
Gran progetto, vorrei provarlo a realizzare anche io non appena prenderò il raspberry
Ah! Quello che cercavo! Usando ffmpeg può pilotare un grabber usb?
Ah sì? E di che cosa è capace? Che fa?
Si, certamente 🙂
Davvero utile come riferimento 🙂
Io abito a Bari… ed immagino che questo sia di per sé stesso esplicativo…
Sono un ospite in questa città, non sono nato qui, ma devo dire che da queste parti il provincialismo e la segregazione volontaria sono religioni piuttosto che brutte abitudini… e questo necessariamente dimostra i suoi effetti in tutto.
Guarderò con attenzione questo riferimento e la linea biticino (quell’azienda è semplicemente stupenda!!)
Che già è un ottimo risultato… 🙂
Diciamo una buona base, eventualmente, per espandersi 😉
Scusate per la domanda stupida, sono nuovo, ma dove si trova la continuazione? XD
Ciao Simone, puoi trovare la seconda parte dell’articolo al seguente indirizzo:
it.emcelettronica.com/raspberry-pi-casa-domotica-videosorveglianza-gestibile-da-remoto-con-assistente-personale-parte-2
Grazie mille, ne approfitto per complimentarmi per i suoi lavori!
Grazie per i complimenti 🙂
Che sistema operativo monta la raspberri in questa guida?
PS bella guida!
Avremo bisogno anche di PhpMyAdmin per gestire i Database, quindi scarichiamo dal sito ufficiale l’ultima versione disponibile, e scompattiamo l’archivio in una cartella che possiamo chiamare “PhpMyAdmin” in
come lo facciamo da terminale ?
E’ presente anche su uno degli EOS book questo progetto?
Bel progetto!
Ho giusto un raspberry appena comprato da provare! 🙂