Inserisci qui la tua pubblicità

Raspberry Motion Detection Wireless

Detection Wireless

Vediamo come costruire un piccolo progetto funzionale con il nostro piccolo computer Raspberry Pi Modello B. Ci sono molte guide sul web, in realtà io ho provato a seguirne molto ma ahimè sempre senza risultato, motivo per cui ho deciso di scrivere queste breve tutorial sul mio blog. In primis c'è da dire che per ho utilizzato la distro Raspbian per costruire questo piccolo ma potente sistema di videorsoveglianza. Utilizzerò per fare questo motion ( famoso tool in ambienti linux ) adattato per il nostro Raspberry. La configurazione che vedrete in questo tutorial potrà essere cambiata per costruirvi il vosto sistema su misura. Di cosa abbiamo bisogno in questo progetto? 1. Raspberry PI 2. Telecamera ( io ho scelto per lo scopi la Pi camera noir) 3. Connessione Internet ( ethernet o wireless ) Io per comodità ho abilitato ssh, cosi facendo posso lavorare sul Raspberry da un altro computer tramite terminale remoto. Il progetto quindi si baserà su motion , un package presente in Debian. Un amatore , dozencrows ha ri-compilato il package motion originale con un una differente configurazione, rendendo adatto il nuovo motion per essere utilizzato con Raspberry Pi e con la Pi camera. Per prima cosa, se già non l' abbiamo fatto, andiamo ad aggiornare il sistema operativo Raspbian:
sudo apt-get update
sudo apt-get upgrade
E' anche una buona idea aggiornare il firmware all'ultima versione disponibile:
sudo apt-get install rpi-update
sudo rpi-update
Procediamo quindi a riavvire il nostro Raspberry PI per rendere effettive le modifiche:
sudo shutdown -r now
Prima cosa quindi che faremo quindi sarà installare motion:
sudo apt-get install motion
Installiamo anche le dipendenze necessarie per poter lavorare con il nostra Pi camera, si tratta di una libreria che ci cosentira di lavorare cn le immagini:
sudo apt-get install libjpeg62
Creiamo quindi una cartella "motion-mmal" nella cartella home dell'utente pi
cd ~/
mkdir motion-mmal
cd motion-mmal
Scarichiamo ed estraiamo quindi la versione di motion personalizzata di dozencrow scrivendo:
wget https://www.dropbox.com/s/xdfcxm5hu71s97d/motion-mmal.tar.gz
tar -zxvf motion-mmal.tar.gz
Modifichiamo quindi il file di configurazione a nostro piaciamento ( modifichiamo larghezza del video, altezza, cartella di memotizzazione dei file, indirizzo web della nostra web interface che ci permette di controllare la nostra camera, quello che succede quando Pi camera cattura un movimento ecc ecc.) scrivendo
nano motion.mmalcam.conf
Io utilizzato la seguente configurazione:
width 640
height 480
target_dir /home/pi/m-video
output_pictures off
text_left Pi-cam %t
logfile /home/pi/mmal/motion.log
Salviamo e usciamo dal nostro file moficato cliccando ctrl+x e dando conferma. Bene, a questo punto arrivati, se la nostra Pi camera è installata, basterà scrivere il codice a seguire per attivarla.
./motion-mmal -n -c motion-mmalcam.conf
Puntiamo col nostro browser all'indirizzo ip del nostro Raspberry indicando la porta scelta per visualizzare la web inteface della camera nel file di configurazione ( di default è la porta 8081) , quindi ad esempio se l'ip del nostro Raspberry fosse 192.168.1.15 noi andremmo a scrivere:
192.168.1.15:8081
E voila. Per chiudere il nostro programma motion-mmalcam dobbiamo scrivere:
ctrl+c
Il tutorial a questo punto dovrebbe essere finito, ma in realtà per sfruttare a pieno le potenzialità di motion l'ideale sarebbe farlo avviare in automatico ad un certo orario prestabilito o comunque avviarlo da remoto. Entrambe le opzioni verranno trattate in altri tutorial. Per ora limitiamoci a vedere come avviare motion tramite uno script. Lo scopo dello script è quello di creare un comando più immediato per avviare motion-mmalcam. Creiamo quindi un file denominato **start**
nano start.sh
e inseriamoci:
!/bin/sh
nohup ~/mmal/motion-mmal -n -c motion-mmalcam.conf 1>/dev/null 2>&1 

Allo stesso modo crediamo un file stop e inseriamoci:

!/bin/sh
ps -ef | grep motion-mmal | awk '{print $2}' | xargs kill
Ora basta rendere gli script eseguibili scrivendo da terminale:
chmod 755 start.sh
chmod 755 stop.sh
Adesso per avviare e terminare il nostro sistema di videosorveglianza basterà recarci nella carte /home/pi/motion-mmal/ e scrivere ./start.sh per avviarlo e ./stop.sh per terminarlo. The command used in the start motion script was suggested by adayforgotten in the original topic thread. As you have seen, if you type the ./motion-mmal command to start the camera directly you cannot type subsequent commands into the terminal, and if you type ctrl+c or exit the terminal then the process terminates. Wrapping the command in nohup……& makes it run in the background and be independent of the terminal closing, which would normally stop dependent processes The >/dev/null redirects the standard output to /dev/null, throwing it away. The “2>&1? part redirects the “standard error” output of the command to the standard output. the “
[email protected]