Sommario:
- Passaggio 1: ispirazione
- Passaggio 2: hardware
- Passaggio 3: software
- Passaggio 4: Distinta base
- Passaggio 5: preparazione dei componenti
- Passaggio 6: collegare la scheda LED IR all'alimentatore
- Passaggio 7: alimenta il Raspberry Pi
- Passaggio 8: collegare il filtro IR Cut
- Passaggio 9: collegare la scheda LED IR al Raspberry
- Passaggio 10: montare la telecamera sulla scheda LED IR
- Passaggio 11: Opzione 1 - Flash di un'immagine PiWebcam preconfigurata (consigliata)
- Passaggio 12: Opzione 2 - Crea un'immagine PiWebcam
- Passaggio 13: Opzione 2 - Copia PiWebcam sulla scheda SD
- Passaggio 14: Opzione 2: accendi il Raspberry e connettiti ad esso
- Passaggio 15: Opzione 2 - Configura il sistema per PiWebcam
- Passaggio 16: attività post-installazione - Connetti al punto di accesso WiFi di PiWebcam
- Passaggio 17: collega la webcam alla rete WiFi
- Passaggio 18: chiudere la custodia della webcam
- Passaggio 19: iniziare con PiWebcam
- Passaggio 20: accesso a Internet remoto
- Passaggio 21: dettagli tecnici
Video: Telecamera di sicurezza per esterni con funzionalità complete basata su Raspberry Pi: 21 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Se hai avuto esperienze deludenti con le webcam economiche, il loro software scritto male e/o l'hardware inadeguato, puoi facilmente costruire una webcam semi-professionale con un Raspberry Pi e pochi altri componenti elettronici facili da trovare su cui eseguire PiWebcam, una webcam gratuita e fittizia software a prova di bomba che trasforma con un solo clic il tuo dispositivo in una webcam potente e completa.
Passaggio 1: ispirazione
Dopo aver combattuto contro il software limitato della maggior parte delle telecamere di sicurezza economiche sul mercato (ad esempio visione notturna scarsa, app oscura per la configurazione, nessuna registrazione offline, rilevamento del movimento impreciso, ecc.), Ho deciso di costruire qualcosa da solo e Raspberry Pi mi sembrava la piattaforma più adatta.
Anche se ci sono già in giro un buon numero di progetti per l'utilizzo di un Raspberry Pi come webcam, personalmente li trovo troppo complessi e in generale più soluzioni ad hoc per utenti avanzati piuttosto che prodotti finiti.
Tuttavia, la maggior parte di essi si concentra solo sul software piuttosto che sull'hardware, che è altrettanto importante per il caso d'uso della telecamera di sicurezza.
Passaggio 2: hardware
Per costruire una webcam per interni, un semplice Raspberry Pi (qualsiasi modello) e una videocamera collegata (qualsiasi modello) con LED IR per la visione notturna funzionerebbero perfettamente. Ci sono già molti kit disponibili con questa combinazione, quindi se questo è ciò che vuoi ottenere, acquista uno di quelli e vai al passaggio 12.
Lo stesso hardware, tuttavia, non andrebbe bene per una fotocamera per esterni: l'immagine scattata dalla fotocamera Raspberry con capacità IR fuori casa sembrerebbe per lo più mignolo (a causa della luce infrarossa catturata dalla fotocamera) e con il piccolo fuori dal -box LED IR non saresti in grado di vedere nulla oltre i 3 piedi / 1 metro.
Per risolvere il primo problema, abbiamo bisogno di qualcosa chiamato filtro IR CUT meccanico che sostanzialmente restituisce i veri colori alla luce del giorno ma consente comunque di catturare le luci IR durante la notte. La maggior parte dei dispositivi sul mercato ha due fili: un breve impulso su un filo sposterà il filtro IR davanti al sensore (modalità giorno), un breve impulso sull'altro filo rimuoverà il filtro (modalità notte). Di solito funzionano tra 3v e 9v e, se collegati al nostro Raspberry, possiamo avere il pieno controllo su quando attivare la modalità notturna. Tuttavia, il filtro IR Cut non può essere controllato direttamente da un pin del Raspberry in quanto la parte meccanica al suo interno richiede molta più corrente di quella che il Pi può fornire. Lavoreremo su questo problema utilizzando un H-Bridge alimentato dal 5v del Raspberry e controllato da due pin.
Per affrontare il secondo problema, avremmo bisogno di una scheda LED IR più potente per ottenere una visione notturna decente. Le schede con meno led ma più grandi sono da preferire a quelle con molti led piccoli. La maggior parte delle schede sul mercato ha anche un LDR (Light Dependent Resistor) collegato che viene utilizzato per determinare quando accendere i LED se sono scuri. Di solito funzionano a 12v e hanno una piccola spina (etichettata "IRC") che può essere utilizzata per collegare un filtro taglia IR. Tuttavia, nessun impulso viene inviato direttamente attraverso questa presa ma durante la notte (LED accesi), viene creata una caduta di tensione (di solito) di 5 V tra i fili e la terra. Se colleghiamo uno dei fili al nostro Raspberry e monitoriamo il segnale del pin, possiamo determinare se stiamo entrando o uscendo dalla modalità notturna (che è esattamente ciò che fa PiWebcam)
Un'ultima cosa da considerare per quanto riguarda l'hardware è come alimentare il Raspberry Pi. Dato che abbiamo un alimentatore a 12v e abbiamo bisogno di 5v per alimentare il Pi, è necessario un regolatore di tensione.
Passaggio 3: software
L'idea alla base di PiWebcam era quella di fornire una potente piattaforma di imaging per tutti, indipendentemente dalle loro conoscenze precedenti. Uno script di installazione si occuperà di configurare completamente il sistema con impostazioni predefinite ragionevoli, consentendo all'utente di personalizzare attraverso un'interfaccia web pulita e mobile-friendly solo un numero molto limitato di parametri rilevanti. Tuttavia, grazie alla sua potente funzione di rilevamento del movimento potenziata dalle capacità di riconoscimento degli oggetti alimentate da un modello di intelligenza artificiale, PiWebcam può notificare all'utente qualsiasi movimento rilevato inviando un'istantanea a un destinatario di posta elettronica o pubblicandolo sul canale Slack preferito dell'utente.
- Pagina del progetto:
- Manuale dell'utente:
Passaggio 4: Distinta base
La seguente distinta base è per la webcam per esterni costruita in questo tutorial:
- Raspberry Pi Zero W
- Fotocamera Raspberry Pi (qualsiasi modello, questo include un filtro IR cut)
- Cavo per fotocamera Raspberry Pi Zero
- Custodia impermeabile per fotocamera (qualsiasi modello in cui si adatterebbe il lampone)
- Scheda SD (16 GB consigliati)
- Scheda LED IR (qualsiasi scheda che si adatta all'alloggiamento della telecamera)
- Filtro IR Cut (solo se non già integrato nella telecamera)
- Regolatore 12v - 5v (assicurarsi che sia un regolatore buck in grado di fornire almeno 1A)
- Spina micro USB maschio
- Spina femmina 12v
- Alimentatore 12v 3A
- H-Ponte
- Cales Dupont femmina-femmina
Passaggio 5: preparazione dei componenti
Il convertitore buck (regolatore di tensione) è responsabile della conversione dell'alimentazione da 12 V ai 5 V richiesti dal Raspberry Pi. La maggior parte dei componenti sul mercato sono regolabili (ad esempio è possibile modificare la tensione di uscita ruotando una vite). Poiché all'interno della webcam la vite potrebbe essere stata accidentalmente spostata, per garantire un'uscita 5v fissa e costante inserire dello stagno nello slot 5v per saldare insieme i due bordi e tagliare il filo sul PCB (con un coltello) che va in "ADJ" (in alto a sinistra della foto)
Poiché vogliamo avere il pieno controllo del filtro IR Cut attraverso il Raspberry (indipendentemente dal fatto che il filtro sia incorporato o meno nella fotocamera come nell'immagine), dobbiamo eliminare il piccolo connettore. Tagliare i due fili e collegare un cavo dupont femmina per ciascun filo. Non buttare via il piccolo spinotto poiché dobbiamo usarlo per ricevere lo stato dell'LDR montato sulla Scheda Led IR. Collegare un altro cavo dupont femmina su uno dei due fili (non importa quale).
Passaggio 6: collegare la scheda LED IR all'alimentatore
Iniziamo collegando ai componenti l'ingresso dell'alimentatore 12v che entra nel nostro alloggiamento nudo della telecamera.
Collegare al filo negativo (nero) quanto segue:
- Filo negativo della scheda Led IR
- Filo negativo del convertitore buck
- Cavo negativo al connettore USB maschio
Collegare al filo positivo (rosso) quanto segue:
- Il filo positivo (12v) della scheda Led IR
- Il filo Vin del convertitore buck
Passaggio 7: alimenta il Raspberry Pi
Collega il filo Vout del convertitore buck alla presa USB che alimenterà il Raspberry.
Dopo aver collegato tutti i fili, saldarli insieme o semplicemente fissarli saldamente con del nastro isolante.
Passaggio 8: collegare il filtro IR Cut
Poiché il filtro IR Cut non può essere controllato direttamente da un pin del Raspberry, utilizzeremo un H-Bridge alimentato dal pin 5v del Raspberry e controllato da due pin.
- Collegare il pin 4 (5v) del lampone al "+" dell'H-Bridge
- Collegare il pin 5 (GND) del lampone a "-" dell'H-Bridge
- Collegare il pin 39 (BCM 20) del lampone a INT1 dell'H-Bridge
- Collegare il pin 36 (BCM 16) del lampone a INT2 dell'H-Bridge
- Collegare i due fili del filtro IR Cut a MOTOR1 e MOTOR2 o all'H-Bridge
In questo modo, quando verrà inviato un impulso attraverso ad es. il pin 39, 5v verrà fornito al MOTORE1 facendo commutare il filtro.
Passaggio 9: collegare la scheda LED IR al Raspberry
Per sapere quando sta diventando buio stiamo sfruttando l'LDR montato sulla scheda dei LED IR. Utilizzare lo spinotto ritagliato dal filtro IR nei passaggi precedenti, collegare un lato al connettore etichettato "IRC" della scheda LED IR e l'altro al pin 40 (BCM 21) del Raspberry.
Passaggio 10: montare la telecamera sulla scheda LED IR
Fissare la telecamera sullo slot dedicato della scheda LED IR con nastro isolante o altro. Cose da tenere in considerazione in questa fase:
- La scheda LED IR diventa molto calda quando è accesa, quindi proteggi la fotocamera di conseguenza;
- Assicurarsi che nessuna luce IR possa entrare nello slot in cui si trova la telecamera; Il riflesso della luce IR è uno dei motivi più comuni per cui la visione notturna è scarsa (sfocata);
- Assicurarsi che sia rimasto dello spazio tra l'obiettivo e il vetro dell'alloggiamento della fotocamera, altrimenti potrebbero verificarsi riflessi o distorsioni dell'immagine;
NON chiudere ancora l'alloggiamento della fotocamera:-)
Passaggio 11: Opzione 1 - Flash di un'immagine PiWebcam preconfigurata (consigliata)
- Scarica l'ultima immagine PiWebcam (PiWebcam_vX. X.img.zip) da
- Decomprimi il file Scrivi l'immagine su una scheda SD (https://www.raspberrypi.org/documentation/installation/installing-images/)
- Collega la scheda SD al tuo Raspberry Pi e accendilo
- Il dispositivo inizierà a fungere da Access Point
- Continua con le attività post-installazione
Passaggio 12: Opzione 2 - Crea un'immagine PiWebcam
La creazione di un'immagine PiWebcam richiede una nuova installazione di Raspbian e una scheda SD. Si prega di non riutilizzare un'installazione esistente ma ricominciare da zero:
- Scarica il sistema operativo Raspbian Stretch Lite
- Scrivi l'immagine su una scheda SD (ad esempio utilizzando Win32 Disk Imager)
Passaggio 13: Opzione 2 - Copia PiWebcam sulla scheda SD
Scarica l'ultima versione di PiWebcam (PiWebcam_vX. X.zip), estrai e copia la directory "PiWebcam" nella partizione di avvio.
Per una configurazione headless, metti nella partizione di avvio anche un file vuoto chiamato "ssh" e un "wpa_supplicant.conf" con la tua configurazione di rete. In questo modo il Raspberry inizierà a connettersi alla tua rete WiFi all'avvio e non avresti bisogno del cavo HDMI ma puoi connetterti direttamente tramite SSH ad esso.
Passaggio 14: Opzione 2: accendi il Raspberry e connettiti ad esso
Collega la scheda SD al tuo Raspberry Pi, accendilo e con un client SSH (o PuTTY su Windows) connettiti ad esso:
- Nome host: raspberrypi.local
- Nome utente: pi
- Parola d'ordine: lampone
Passaggio 15: Opzione 2 - Configura il sistema per PiWebcam
Dopo essersi assicurati che il Raspberry sia connesso a Internet, esegui il seguente comando:
sudo /boot/PiWebcam/PiWebcam.sh install
Questo configurerà completamente il sistema e installerà le dipendenze richieste.
Al termine dell'installazione verrà richiesto di riavviare il dispositivo per rendere pienamente effettive le modifiche. Tutte le credenziali verranno riepilogate a schermo.
Si prega di notare che gli ultimi 6 caratteri sono casuali (es. PiWebcam-e533fe) e variano da dispositivo a dispositivo.
Passaggio 16: attività post-installazione - Connetti al punto di accesso WiFi di PiWebcam
Una volta acceso, il dispositivo inizierà a fungere da Access Point.
Connettiti alla rete WiFi creata dal dispositivo. La passphrase della rete e la password dell'utente amministratore (sia per l'interfaccia web che per SSH) sono le stesse dell'SSID (es. PiWebcam-XXXXX). Punta il tuo browser su https://PiWebcam.local e autenticati con username "admin" e con password uguale al nome della rete.
Passaggio 17: collega la webcam alla rete WiFi
Se vuoi connettere la webcam a una rete WiFi esistente, vai su Dispositivo / Rete, seleziona "Client WiFi" e inserisci "Rete WiFi" e "Passphrase".
Attendi 1-2 minuti, riconnettiti alla tua rete e punta il tuo browser su https://camera_name.your_network (es.
Passaggio 18: chiudere la custodia della webcam
Una volta verificato che la webcam è raggiungibile attraverso la rete ed eseguita la configurazione di base presentata nel passaggio precedente, è giunto il momento di chiudere il caso.
Passaggio 19: iniziare con PiWebcam
PiWebcam è già dotato di impostazioni predefinite ragionevoli. Una volta installato, non è richiesta alcuna configurazione aggiuntiva; PiWebcam inizierà a scattare istantanee e registrare video, sia che sia connesso o meno alla rete.
L'intera configurazione del dispositivo (telecamera, rete, notifiche e impostazioni di sistema) può essere eseguita tramite l'interfaccia web. Il file di configurazione può essere facilmente esportato e importato in Dispositivo/Sistema.
Quando viene rilevato un movimento, PiWebcam inizierà la registrazione di un video (che sarà poi reso disponibile tramite il menu "Riproduzione" dell'interfaccia web). Una volta che non ci sarà più movimento, verrà memorizzata anche un'immagine che evidenzia con un riquadro rosso il movimento rilevato. Se la funzione di rilevamento dell'oggetto è abilitata, qualsiasi movimento che non contenga l'oggetto configurato verrà ignorato in modo da ridurre i falsi positivi (ad es. se viene rilevato un movimento ma non viene identificata alcuna persona).
Quando le notifiche sono abilitate, lo snapshot verrà inviato all'indirizzo e-mail dell'utente e/o pubblicato sul canale Slack configurato. Se non è disponibile una connessione Internet, la notifica verrà messa in coda e rilasciata al successivo ripristino della connessione.
Un riepilogo dettagliato di tutte le impostazioni disponibili è riportato nella pagina del progetto.
Passaggio 20: accesso a Internet remoto
Facoltativamente, l'interfaccia web può essere raggiunta da Internet senza alcuna configurazione aggiuntiva nella rete o nel router domestico. Per abilitare questa funzionalità, seleziona la casella appropriata in Dispositivo / Rete.
Se l'accesso a Internet remoto è abilitato, il dispositivo avvia un tunnel SSH tramite serveo.net, senza la necessità di configurare alcun NAT o UPnP nel router. Il nome del dispositivo viene utilizzato come nome host e vengono esposti sia i servizi web che ssh.
Passaggio 21: dettagli tecnici
Tutti i file PiWebcam risiedono nella partizione di avvio della scheda SD, in una directory chiamata PiWebcam. Ciò include un singolo file bash, PiWebcam.sh e le pagine PHP per il pannello di amministrazione.
Durante il processo di installazione, viene eseguita una configurazione di sistema molto semplice, viene creata un'immagine initramfs e lo script PiWebcam.sh viene aggiunto a /etc/rc.local in modo da essere eseguito all'avvio con il parametro "configure".
Al primo riavvio, l'immagine initramfs ridurrà la partizione di root (precedentemente espansa per riempire l'intera scheda SD dal programma di installazione di Raspbian) e creerà una partizione dati subito dopo.
Sia il filesystem di avvio che quello di root sono montati in sola lettura e un filesystem di sovrapposizione viene creato dall'immagine initram sul filesystem di root in modo che qualsiasi modifica al sistema venga archiviata solo in memoria e vada persa al successivo riavvio. In questo modo il dispositivo sarà più robusto in caso di errori di configurazione, potrà essere facilmente ripristinato alle impostazioni di fabbrica e potrà sopravvivere a qualsiasi interruzione di corrente poiché nessun file di sistema viene mai scritto sulla scheda SD durante le normali operazioni. Il filesystem di dati è invece formattato con F2FS (Flash-Friendly File System) che tiene conto delle caratteristiche dei dispositivi di archiviazione basati su memoria flash.
Durante l'avvio, PiWebcam legge il suo file di configurazione archiviato in /boot/PiWebcam/PiWebcam.conf, configura il sistema, la telecamera, la rete e le notifiche in base alle impostazioni trovate e distribuisce l'interfaccia web da /boot/PiWebcam/web in la posizione della radice web.
Sia le immagini in movimento che i filmati sono archiviati nel filesystem di dati e raggruppati in cartelle per anno/mese/giorno/ora in modo da consentire un più facile accesso. Tutte le registrazioni possono essere riviste tramite l'interfaccia web con h5ai un moderno indicizzatore di file che consente di visualizzare file e directory in modo accattivante e fornire anteprime di immagini e video senza la necessità di scaricare preventivamente il contenuto.
Quando viene rilevato un movimento, PiWebcam.sh viene richiamato con il parametro "notify" tramite l'evento di movimento on_picture_save/on_movie_end. Se il rilevamento degli oggetti è abilitato per un'ulteriore analisi dell'immagine, l'immagine viene inviata a Clarifai per riconoscere tutti gli oggetti all'interno dell'immagine. Questo funzionerebbe benissimo per ridurre i falsi positivi, ad es. se ti interessa sapere se c'è qualcuno che ruba in casa tua e non solo un improvviso cambio di luce.
Successivamente, PiWebcam verifica se è disponibile una connessione Internet e, in tal caso, invia la notifica. Oltre alle tradizionali notifiche e-mail, inviate con ssmtp, con in allegato l'immagine in movimento rilevata, PiWebcam può anche caricare la stessa immagine su un canale Slack. Se non conosci Slack, dai un'occhiata (); è un ottimo strumento di collaborazione ma può anche essere utilizzato per creare un gruppo dedicato alla tua famiglia, concedere l'accesso ai membri della tua famiglia, chattare con loro e consentire a PiWebcam o alle utility di automazione domestica (come ad esempio eGeoffrey) di pubblicare aggiornamenti lì. Se non c'è connessione a Internet, la notifica non va persa ma viene messa in coda e inviata al ripristino della connessione.
Una funzionalità di aggiornamento è fornita anche tramite l'interfaccia web.
Consigliato:
Telecamera di sicurezza Raven Pi: 7 passaggi (con immagini)
Telecamera di sicurezza Raven Pi: questo corvo di plastica si sta godendo un nuovo aldilà come telecamera di sicurezza pratica ma inquietante, la Raven Pi. Ha un Raspberry Pi nella pancia e una Pi Camera incorporata nel collo, che cattura video HD ogni volta che viene rilevato un movimento. Nello stesso istante è
Telecamera di sicurezza Raspberry Pi: 11 passaggi (con immagini)
Telecamera di sicurezza Raspberry Pi: questa è una guida passo passo su come creare una telecamera di sicurezza IoT attivata dal movimento utilizzando un Raspberry Pi. Imparerai come creare un server web flask e un modulo che consenta all'utente di regolare la sensibilità della telecamera e il tempo di registrazione
Telecamera CCTV con NodeMCU + modulo telecamera del vecchio laptop (con e senza l'utilizzo di Blynk): 5 passaggi
Telecamera CCTV con NodeMCU + modulo telecamera del vecchio laptop (con e senza l'utilizzo di Blynk): Ciao ragazzi! In questo tutorial, ti mostrerò come ho usato il modulo fotocamera di un vecchio laptop e nodeMCU per creare qualcosa di simile a CCTV
Iniziare con ESP32 CAM - Streaming video utilizzando ESP CAM tramite Wi-Fi - Progetto telecamera di sicurezza ESP32: 8 passaggi
Iniziare con ESP32 CAM | Streaming video utilizzando ESP CAM tramite Wi-Fi | Progetto telecamera di sicurezza ESP32: oggi impareremo come utilizzare questa nuova scheda CAM ESP32 e come possiamo codificarla e usarla come telecamera di sicurezza e ottenere un video in streaming tramite wifi
Pulsante di sicurezza wireless per la sicurezza del PLC: 6 passaggi (con immagini)
Pulsante di sicurezza wireless per la sicurezza del PLC: questo progetto è la mia prova di concetto per l'utilizzo dell'IoT e (eventualmente) della robotica per creare un ulteriore livello di sicurezza per gli impianti di produzione pericolosi. Questo pulsante può essere utilizzato per avviare o arrestare più processi, incluso il controllo del segnale