- Componenti richiesti:
- Spiegazione di lavoro:
- Descrizione del circuito:
- Configurazione e programmazione di Raspberry Pi:
Nel mondo dell'Internet of Things (IoT), quando abbiamo tutte le tecnologie per rivoluzionare la nostra vita, è un'ottima idea sviluppare un sistema che può essere controllato e monitorato da qualsiasi luogo. Esistono molti tipi di buoni sistemi di sicurezza e telecamere per la sicurezza domestica, ma sono molto costosi, quindi oggi costruiremo un semplice sistema di allarme antintrusione basato su Raspberry Pi a basso costo, che non solo ti avvisa tramite un'e-mail, ma invia anche l'immagine di Intruso quando ne rileva qualcuno.
In questo progetto basato sull'IoT, costruiremo un sistema di sicurezza domestica utilizzando il sensore PIR e la telecamera PI. Questo sistema rileverà la presenza di Intruso e avviserà rapidamente l'utente inviandogli una mail di avviso. Questa e-mail conterrà anche l'immagine dell'intruso, catturata dalla fotocamera Pi. Raspberry Pi viene utilizzato per controllare l'intero sistema. Questo sistema può essere installato presso la porta principale di casa o dell'ufficio e puoi monitorarlo da qualsiasi parte del mondo utilizzando la tua e-mail su Internet.
Componenti richiesti:
- Raspberry Pi
- Fotocamera Pi
- Sensore PIR
- GUIDATO
- Tagliere per il pane
- Resistenza (1k)
- Cavi di collegamento
- Alimentazione elettrica
Puoi acquistare tutti i componenti utilizzati in questo progetto da qui.
Spiegazione di lavoro:
Il funzionamento di questo progetto è molto semplice. Un sensore PIR viene utilizzato per rilevare la presenza di qualsiasi persona e una fotocamera Pi viene utilizzata per acquisire le immagini quando la presenza viene rilevata.
Ogni volta che qualcuno o un intruso entra nel raggio del sensore PIR, il sensore PIR attiva la fotocamera Pi tramite Raspberry Pi. Raspberry Pi invia comandi alla fotocamera Pi per fare clic sull'immagine e salvarla. Dopo di ciò, Raspberry Pi crea una e-mail e la invia all'indirizzo di posta definito con le immagini cliccate di recente. La mail contiene un messaggio e un'immagine dell'intruso come allegato. Qui abbiamo utilizzato il messaggio "Trova l'allegato", puoi modificarlo di conseguenza nel codice riportato alla fine.
Qui le immagini vengono salvate in Raspberry Pi con il nome che a sua volta contiene l'ora e la data di immissione. In modo che possiamo controllare l'ora e la data di immissione dell'intruso semplicemente guardando il nome dell'immagine, controlla le immagini seguenti. Se sei nuovo con Pi Camera, controlla il nostro precedente tutorial sul sistema di monitoraggio dei visitatori con Pi Camera.
È inoltre possibile regolare il campo di rilevamento o la distanza di questo sistema utilizzando i potenziometri del sensore PIR. Ulteriori informazioni sul sensore PIR qui per regolare la portata, controllare anche l'allarme antifurto basato sul sensore PIR.
Descrizione del circuito:
In questo sistema di allarme antintrusione, dobbiamo solo collegare il modulo fotocamera Pi e il sensore PIR a Raspberry Pi 3. La fotocamera Pi è collegata allo slot della fotocamera del Raspberry Pi e il PIR è collegato al pin 18 GPIO. Un LED è anche collegato al pin 17 GPIO tramite una resistenza da 1k.
Configurazione e programmazione di Raspberry Pi:
Stiamo usando il linguaggio Python qui per il programma. Prima della codifica, l'utente deve configurare Raspberry Pi. Dovresti seguire due tutorial per iniziare con Raspberry Pi e installare e configurare il sistema operativo Raspbian Jessie in Pi:
- Guida introduttiva a Raspberry Pi - Introduzione
- Guida introduttiva a Raspberry Pi - Configurazione
Dopo aver installato con successo il sistema operativo Raspbian su Raspberry Pi, è necessario installare i file di libreria della fotocamera Pi per eseguire questo progetto in Raspberry pi. Per fare questo dobbiamo seguire i comandi dati:
$ sudo apt-get install python-picamera $ sudo apt-get installpython3-picamera
Dopo di ciò, l'utente deve abilitare la fotocamera Raspberry Pi utilizzando lo strumento di configurazione del software Raspberry Pi (raspi-config):
$ sudo raspi-config
Quindi seleziona Abilita fotocamera e Abilita.
Quindi l'utente deve riavviare Raspberry Pi, emettendo sudo reboot , in modo che la nuova impostazione possa prendere. Ora la tua fotocamera Pi è pronta per l'uso.
Ora dopo aver configurato la fotocamera Pi, installeremo il software per l'invio della posta. Qui stiamo usando ssmtp che è una soluzione facile e buona per inviare posta usando la riga di comando o usando Python Script. Dobbiamo installare due librerie per l'invio di posta tramite SMTP:
Sudo apt-get install ssmtp sudo apt-get install mailutils
Dopo aver installato le librerie, l'utente deve aprire il file ssmtp.conf e modificare questo file di configurazione come mostrato nell'immagine sotto, quindi salvare il file. Per salvare e uscire dal file, premere "CTRL + x", quindi "y" e quindi premere "invio".
sudo nano /etc/ssmtp/ssmtp.conf
root = YourEmailAddress mailhub = smtp.gmail.com: 587 hostname = raspberrypi AuthUser = YourEmailAddress AuthPass = YourEmailPassword FromLineOverride = YES UseSTARTTLS = YES UseTLS = YES
Possiamo anche testarlo inviando una mail di prova emettendo il seguente comando, riceverai la posta sull'indirizzo e-mail menzionato se tutto funziona correttamente:
echo "Hello saddam" - mail "Testing…" [email protected]
Il programma Python di questo progetto gioca un ruolo molto importante per eseguire tutte le operazioni. Prima di tutto, includiamo le librerie richieste per la posta elettronica, inizializziamo le variabili e definiamo i pin per PIR, LED e altri componenti. Per inviare semplici messaggi di posta elettronica, è sufficiente smtplib, ma se si desidera inviare messaggi in modo più pulito con oggetto, allegato ecc., È necessario utilizzare MIME (Multipurpose Internet Mail Extensions).
importa RPi.GPIO come gpio importa picamera ora di importazione importa smtplib da email.MIMEMultipart importa MIMEMultipart da email.MIMEText importa MIMEText da email.MIMEBase importa MIMEBase da email importa codificatori da email.mime.image importa MIMEImage
Dopo di ciò, abbiamo inizializzato la posta e definito indirizzo e messaggi di posta:
fromaddr = "[email protected]" toaddr = "[email protected]" mail = MIMEMultipart () mail = fromaddr mail = toaddr mail = "Allegato" body = "Trova l'allegato"
Quindi abbiamo creato la funzione def sendMail (data) per l'invio di posta:
def sendMail (data): mail.attach (MIMEText (body, 'plain')) print data dat = '% s.jpg'% data print dat allegato = open (dat, 'rb') image = MIMEImage (attachment.read ()) attachment.close () mail.attach (image) server = smtplib.SMTP ('smtp.gmail.com', 587) server.starttls () server.login (fromaddr, "la tua password") text = mail. as_string () server.sendmail (fromaddr, toaddr, text) server.quit ()
La funzione def capture_image () viene creata per catturare l'immagine dell'intruso con ora e data.
def capture_image (): data = time.strftime ("% d_% b_% Y-% H:% M:% S") camera.start_preview () time.sleep (5) print data camera.capture ('% s. jpg '% data) camera.stop_preview () time.sleep (1) sendMail (dati)
Quindi abbiamo inizializzato la Picamera con alcune delle sue impostazioni:
camera = picamera.PiCamera () camera.rotation = 180 camera.awb_mode = 'auto' camera.brightness = 55
Infine, abbiamo letto l'output del sensore PIR e quando si alza Raspberry Pi chiama la funzione capture_image () per catturare l'immagine dell'intruso e inviare un messaggio di avviso con l'immagine dell'intruso come allegato. Abbiamo usato la funzione sendmail () insdie capture_image () per inviare la posta.
while 1: if gpio.input (pir) == 1: gpio.output (led, HIGH) capture_image () while (gpio.input (pir) == 1): time.sleep (1) else: gpio.output (led, LOW) time.sleep (0.01)
Quindi è così che funziona questo sistema di sicurezza Raspberry Pi, puoi anche utilizzare un sensore a ultrasuoni o un sensore IR per rilevare la presenza di ladro o intruso. Controlla ulteriormente il codice completo e il video dimostrativo di seguito.