- Installazione e configurazione di "Motion" per ottenere feed video:
- Configurazione del pallone in Raspberry Pi per il controllo del robot tramite la pagina Web:
- Codice HTML per la pagina web:
- Robot di sorveglianza
- Schema del circuito e configurazione:
- Come operare:
In questa sessione fai-da-te stiamo costruendo un'auto robotica di sorveglianza controllata dal web utilizzando Raspberry Pi e una webcam. Questo potrebbe essere uno strumento di sicurezza e spia utile e poco costoso, che ha molte opzioni configurabili e può essere costruito in poche ore. In questo progetto IoT, utilizziamo principalmente Raspberry Pi, webcam USB e due motori CC con chassis Robot per costruire questa macchina robotica.
Ha una webcam montata su di essa, attraverso la quale avremo feed video in diretta e la parte interessante qui è che possiamo controllare e spostare questo robot da un browser web su Internet. Poiché può essere controllato utilizzando la pagina Web, significa che può essere controllato anche utilizzando la pagina Web in Mobile. Abbiamo costruito una pagina web in HTML che ha collegamenti Sinistra, Destra, Avanti, Indietro, cliccando su cui possiamo muovere il robot in qualsiasi direzione. Qui abbiamo utilizzato "Motion" per ottenere feed video dal vivo dalla fotocamera USB e utilizzato "Flask" per inviare comandi dalla pagina Web a Raspberry Pi utilizzando Pythonper muovere il Robot, che vengono spiegati in dettaglio nella parte successiva di questo tutorial. Abbiamo il sistema operativo Raspbian Jessie installato sulla nostra scheda Raspberry Pi. Puoi controllare questo articolo per installare il sistema operativo Raspbian e iniziare con Raspberry Pi.
Installazione e configurazione di "Motion" per ottenere feed video:
Motion (Surveillance Software) è un software CCTV per rilevatori di movimento open source gratuito, sviluppato per Linux. Rileva il movimento e inizia a registrarne il video. Con 'Motion' installato nel tuo Raspberry Pi, puoi magicamente trasformare il tuo Raspberry Pi in una telecamera di sicurezza. Viene utilizzato per ottenere feed video dal vivo, realizzare video timelapse e scattare istantanee a intervalli regolari. Registra e salva il video ogni volta che rileva il movimento o qualsiasi disturbo nell'area di visualizzazione. Il feed video in diretta può essere visualizzato sul browser web inserendo l'indirizzo IP di Pi insieme alla porta.
Abbiamo creato un tutorial dettagliato sull'uso del movimento con Raspberry Pi e USB Camera, qui stiamo spiegando brevemente la sua installazione su Raspberry pi per il nostro Robot per inviare streaming video in diretta alla pagina web.
Qui è necessario eseguire solo pochi comandi per iniziare a ricevere il primo feed video sulla rete. Prima di ciò, controlla correttamente che il tuo Raspberry Pi sia connesso a Internet, tramite LAN o Wi-Fi, quindi segui i passaggi seguenti:
Passaggio 1: eseguire prima il comando seguente per aggiornare il sistema operativo Raspbian su Raspberry Pi:
sudo apt-get update
Passaggio 2: quindi installa la libreria "Motion" utilizzando il comando seguente:
sudo apt-get install motion
Passaggio 3: ora imposta il demone Motion su yes modificando il file: / etc / default / motion in modo che sia sempre in esecuzione. Modifica questo file utilizzando l'editor "nano" con "sudo" come indicato di seguito:
sudo nano / etc / default / motion
Quindi salvare il file premendo "CTRL + X", quindi "Y" e Invio.
Passaggio 4: Ora dobbiamo impostare l'autorizzazione per la directory di destinazione (/ var / lib / motion /), in cui Motion salva tutte le registrazioni video e i file di immagine. Dobbiamo impostare "Motion" come proprietario di questa directory immettendo il comando seguente:
sudo chown motion: motion / var / lib / motion /
Questa autorizzazione è necessaria altrimenti si verificherà un errore quando si controlla lo stato del servizio Motion.
È possibile controllare lo stato del servizio utilizzando questo comando: sudo service motion status
Passaggio 5: Ora abbiamo quasi finito, dobbiamo solo modificare un'opzione di configurazione nel file di configurazione di Motion (/etc/motion/motion.conf ) che è stream_localhost disattivato. Dobbiamo disattivare lo streaming di questo host locale, altrimenti non saremo in grado di accedere al feed video sulla nostra rete e sarà accessibile solo dallo stesso Raspberry Pi. Per fare ciò, modifica il file di configurazione del movimento con l'editor "nano" e disattivalo, come mostrato di seguito:
sudo nano /etc/motion/motion.conf
Ora abbiamo finito e siamo pronti per ricevere il nostro feed live dalla webcam USB collegata a Pi. Avvia (o riavvia) il servizio Motion utilizzando il comando seguente e apri l'IP del tuo Raspberry Pi, con la porta 8081, nel tuo browser (come 192.168.43.199:8081). In questo progetto abbiamo incorporato questo IP nel nostro codice HTML nel tag img src .
sudo /etc/init.d/motion restart
E vedrai il feed live dalla tua webcam. Qui abbiamo utilizzato una webcam USB a basso costo che ha funzionato senza problemi con il nostro Raspberry Pi, ma puoi utilizzare ulteriormente una fotocamera di buona qualità per una migliore risoluzione. Come verrà mostrato nel browser, puoi utilizzare qualsiasi dispositivo per guardare il feed, che supporta browser web come dispositivi mobili, tablet ecc.
Prova a riavviare il Raspberry Pi come passaggio per la risoluzione dei problemi quando necessario:
sudo riavvio
Si tratta di utilizzare Motion per il nostro robot di sorveglianza, a parte questo, ha diverse opzioni di configurazione che abbiamo già discusso nel nostro tutorial precedente.
Nota: se il tuo modello Raspberry Pi è inferiore alla versione 3, potresti aver bisogno di un dongle Wi-Fi per connettere in modalità wireless Raspberry Pi al router.
Configurazione del pallone in Raspberry Pi per il controllo del robot tramite la pagina Web:
Qui, abbiamo creato un server Web utilizzando Flask, che fornisce un modo per inviare i comandi dalla pagina Web a Raspberry Pi per controllare il Robot sulla rete. Flask ci consente di eseguire i nostri script Python attraverso una pagina Web e possiamo inviare e ricevere dati da Raspberry Pi al browser Web e viceversa. Flask è un microframework per Python. Questo strumento è basato su Unicode con server di sviluppo e debugger integrati, supporto per unit test integrato, supporto per cookie sicuri ed è facile da usare, queste cose lo rendono utile per l'hobbista.
Installa un pacchetto di supporto flask nel Raspberry Pi usando il comando dato:
$ pip install Flask
Quindi possiamo usare il Flask semplicemente importandolo nel nostro programma, come se avessimo importato i seguenti pacchetti di flask per questo progetto:
from flask import Flask from flask import Flask, render_template, request
Puoi saperne di più sulla programmazione utilizzando Flask qui, controllare anche i nostri progetti precedenti in cui abbiamo utilizzato Flask per inviare il messaggio dalla pagina Web a Raspberry Pi e inviare il valore del peso a Raspberry Pi in Smart Container.
Codice HTML per la pagina web:
Abbiamo creato una pagina web utilizzando il linguaggio HTML per la visualizzazione dei link di controllo (Sinistra, Destra, Avanti, Indietro) per spostare il Robot dal browser web. Abbiamo utilizzato lo script jQuery per chiamare le funzioni nel nostro programma Python. Ci sono cinque funzioni nel codice Python per spostare il robot a sinistra, a destra, avanti, indietro e per fermarlo. Alla fine è stato fornito il codice Python completo. Queste funzioni verranno eseguite facendo clic sui collegamenti di controllo sulla pagina Web ei motori si sposteranno a seconda del collegamento selezionato. Qui abbiamo scritto il codice in modo tale che Robot si muoverà in una certa direzione mentre si fa clic e si tiene premuto il collegamento, e non appena si rilascia il pulsante del mouse, il Robot si fermerà. Di seguito è riportato il codice HTML per la pagina Web che include jQuery:
Qui puoi vedere che abbiamo incorporato l'indirizzo IP, su cui il video è in streaming, nella pagina web utilizzando il tag img src . Cambia l'indirizzo IP in base al tuo Raspberry Pi ma mantieni la stessa porta.
L'utente deve copiare e incollare il codice HTML sopra indicato in un editor di testo (blocco note) e salvare il file con estensione.HTML (robot.html). Quindi metti questo file HTML nella cartella / templates rispetto alla posizione dello script Python. Significa che è necessario creare una cartella denominata modelli, in cui è stato inserito il file di codice Python per questo Raspberry Surveillance Robot, quindi inserire il file robot.html in questa cartella dei modelli. Questo passaggio è importante, altrimenti il nostro progetto non funzionerà. Puoi aprire direttamente il file robot.html facendo doppio clic su di esso per vedere come appariranno i tuoi collegamenti di controllo. Controlla ulteriormente l'intero processo nel video dimostrativo alla fine. Dopo aver finito con la programmazione e tutto, possiamo semplicemente eseguire il codice Python in Raspberry Pi e aprire IP_address_of_your_Pi: 5010 nel browser web (come
Puoi controllare l'indirizzo IP del tuo Raspberry Pi usando il comando ifconfig :
ifconfig
Schema del circuito e configurazione:
Dopo aver testato il feed Live Video e il codice HTML, dobbiamo costruire un robot utilizzando chassis, ruote e bulloni fatti a mano o già pronti. Quindi posizionare il Power Bank su di esso per alimentare il Raspberry Pi, quindi posizionare il Raspberry Pi e la webcam sul power bank e fissare la configurazione utilizzando il nastro Cello o le strisce di gomma, collegare la fotocamera USB con Raspberry Pi.
In questo progetto IoT, non abbiamo bisogno di fare molte connessioni, abbiamo solo bisogno di collegare alcuni fili per Motor Driver IC L293D e DC Motors. I collegamenti sono mostrati nello schema del circuito di seguito. Qui abbiamo utilizzato una PCB per uso generico per il montaggio del circuito integrato L293D per ridurre lo spazio, ma è anche possibile utilizzare una breadboard piccola per collegare motori CC con L293D.
Come operare:
Il funzionamento e il funzionamento di questo robot di sorveglianza è molto semplice. Crea un file python (estensione.py) e copia il codice seguente al suo interno, quindi salvalo sul tuo Raspberry Pi. Quindi inserisci il file HTML nella cartella dei modelli come spiegato sopra. Non dimenticare di modificare l'indirizzo IP nel file HTML.
Quindi esegui il codice Python inserendo il comando seguente:
python name_of_file.py
Quindi apri il tuo indirizzo IP Raspberry Pi con la porta 5010 come http://192.168.43.199:5010 (sostituisci di nuovo l'indirizzo IP con il tuo indirizzo). Ora vedrai la pagina web con quattro collegamenti di controllo del robot e video in streaming live. L'utente può controllare il robot facendo clic e tenendo premuti i collegamenti. Se l'utente fa clic e tiene premuto il collegamento, il robot si sposterà in base al collegamento cliccato e quando l'utente rilascerà il collegamento, il robot si fermerà automaticamente.
Di seguito viene fornito il codice Python completo, dove abbiamo scritto varie funzioni per controllare il robot facendo clic sui collegamenti nella pagina web. Puoi capirli facilmente o, se sei un principiante, controlla i nostri precedenti tutorial Raspberry Pi. Visita anche la nostra Sezione Robotica per Robot più interessanti e facili da costruire.