- Požadované komponenty:
- Pracovní vysvětlení:
- Popis obvodu:
- Vysvětlení konfigurace a programování Raspberry Pi:
Ve světě internetu věcí (IoT), kdy máme všechny technologie, které způsobí převrat v našem životě, je skvělý nápad vyvinout systém, který lze ovládat a sledovat odkudkoli. Existuje mnoho typů dobrých bezpečnostních systémů a kamer pro domácí zabezpečení, ale jsou mnohem dražší, takže dnes vytvoříme levný jednoduchý Raspberry Pi založený na Intruder Alert System, který vás nejen upozorní prostřednictvím e-mailu, ale také odešle obrázek Vetřelec, když detekuje nějaké.
V tomto projektu založeném na IoT postavíme domácí bezpečnostní systém pomocí PIR senzoru a PI kamery. Tento systém detekuje přítomnost vetřelce a rychle upozorní uživatele zasláním výstražného e-mailu. Tato pošta bude také obsahovat Obrázek vetřelce pořízený kamerou Pi. Raspberry Pi se používá k ovládání celého systému. Tento systém lze nainstalovat na hlavní dveře vašeho domova nebo kanceláře a můžete jej sledovat odkudkoli na světě pomocí e-mailu přes internet.
Požadované komponenty:
- Raspberry Pi
- Fotoaparát Pi
- PIR senzor
- VEDENÝ
- Chlebová deska
- Rezistor (1k)
- Připojovací vodiče
- Zdroj napájení
Zde si můžete koupit všechny komponenty použité v tomto projektu.
Pracovní vysvětlení:
Práce na tomto projektu je velmi jednoduchá. Senzor PIR se používá k detekci přítomnosti jakékoli osoby a kamera Pi se používá k zachycení snímků, když detekuje přítomnost.
Kdykoli se někdo nebo vetřelec dostane do dosahu PIR senzoru, PIR senzor spustí kameru Pi prostřednictvím Raspberry Pi. Raspberry pi odesílá příkazy do kamery Pi, aby klikly na obrázek a uložily jej. Poté Raspberry Pi vytvoří poštu a odešle ji na definovanou poštovní adresu s nedávno kliknutými obrázky. Pošta obsahuje jako přílohu zprávu a obrázek vetřelce. Zde jsme použili zprávu „Vyhledejte přílohu“, kterou můžete odpovídajícím způsobem změnit v Kodexu uvedeném na konci.
Zde se obrázky ukládají na Raspberry Pi se jménem, které samo o sobě obsahuje čas a datum zadání. Abychom mohli zkontrolovat čas a datum vstupu vetřelce pouhým pohledem na název obrázku, zkontrolujte obrázky níže. Pokud jste s kamerou Pi noví, podívejte se na náš předchozí výukový program Monitorovací systém návštěvníků s kamerou Pi.
Detekční rozsah nebo vzdálenost tohoto systému můžete také upravit pomocí potenciometrů snímače PIR. Zde se dozvíte více informací o senzoru PIR a upravte rozsah. Zkontrolujte také alarm vloupání založený na senzoru PIR.
Popis obvodu:
V tomto systému upozornění na vetřelce musíme k modulu Raspberry Pi 3 připojit pouze modul kamery Pi a snímač PIR. Fotoaparát Pi je připojen ke slotu kamery Raspberry Pi a PIR je připojen ke kolíku GPIO 18. LED je také připojena ke kolíku GPIO 17 prostřednictvím rezistoru 1k.
Vysvětlení konfigurace a programování Raspberry Pi:
Pro program používáme jazyk Python. Před kódováním musí uživatel nakonfigurovat Raspberry Pi. Měli byste níže dva výukové programy Začínáme s Raspberry Pi a Instalace a konfigurace Raspbian Jessie OS v Pi:
- Začínáme s Raspberry Pi - úvod
- Začínáme s Raspberry Pi - konfigurace
Po úspěšné instalaci Raspbian OS na Raspberry Pi musíme nainstalovat soubory knihovny kamer Pi pro spuštění tohoto projektu v Raspberry pi. K tomu musíme dodržet dané příkazy:
$ sudo apt-get install python-picamera $ sudo apt-get install python3-picamera
Poté musí uživatel povolit kameru Raspberry Pi pomocí nástroje Raspberry Pi Software Configuration Tool (raspi-config):
$ sudo raspi-config
Poté vyberte Povolit kameru a Povolit ji.
Poté musí uživatel restartovat Raspberry Pi vydáním sudo reboot , aby mohlo nové nastavení trvat. Nyní je vaše kamera Pi připravena k použití.
Nyní po nastavení kamery Pi nainstalujeme software pro odesílání pošty. Zde používáme ssmtp, což je snadné a dobré řešení pro odesílání pošty pomocí příkazového řádku nebo pomocí Python Script. Musíme si nainstalovat dvě knihovny pro odesílání e-mailů pomocí SMTP:
Sudo apt-get install ssmtp sudo apt-get install mailutils
Po instalaci knihoven musí uživatel otevřít soubor ssmtp.conf, upravit tento konfigurační soubor, jak je znázorněno na obrázku níže, a poté soubor uložit. Chcete-li soubor uložit a ukončit, stiskněte klávesy „CTRL + x“, poté „y“ a poté stiskněte „enter“.
sudo nano /etc/ssmtp/ssmtp.conf
root = YourEmailAddress mailhub = smtp.gmail.com: 587 hostname = raspberrypi AuthUser = YourEmailAddress AuthPass = YourEmailPassword FromLineOverride = ANO UseSTARTTLS = ANO UseTLS = ANO
Můžeme to také otestovat zasláním testovacího e-mailu vydáním níže uvedeného příkazu, pokud vše funguje, dostanete e-mail na uvedenou e-mailovou adresu:
echo "Hello saddam" - maily "Testování…" [email protected]
Program Python tohoto projektu hraje velmi důležitou roli při provádění všech operací. Nejprve zahrneme požadované knihovny pro e-mail, inicializujeme proměnné a definujeme piny pro PIR, LED a další komponenty. Pro zasílání jednoduchých e-mailů stačí smtplib, ale pokud chcete posílat poštu čistěji s předmětem, přílohou atd., Musíte použít MIME (Multipurpose Internet Mail Extensions).
import RPi.GPIO jako gpio import picamera čas importu import smtplib z e-mailu.MIMEMultipart import MIMEMultipart z e-mailu.MIMEText import MIMEText z e-mailu.MIMEBase import MIMEBase z e-mailu import kodérů z email.mime.image import MIMEImage
Poté jsme inicializovali poštu a definovali poštovní adresu a zprávy:
fromaddr = "[email protected]" toaddr = "[email protected]" mail = MIMEMultipart () mail = fromaddr mail = toaddr mail = "Příloha" body = "Vyhledejte přílohu"
Pak jsme vytvořili funkci def sendMail (data) pro odesílání pošty:
def sendMail (data): mail.attach (MIMEText (tělo, 'obyčejný')) tisk dat dat = '% s.jpg'% dat tisk dat přílohy = otevřeno (dat, 'rb') image = MIMEImage (attachment.read ()) attachment.close () mail.attach (image) server = smtplib.SMTP ('smtp.gmail.com', 587) server.starttls () server.login (fromaddr, "your password") text = mail. as_string () server.sendmail (fromaddr, toaddr, text) server.quit ()
Funkce def capture_image () je vytvořena k zachycení obrazu vetřelce s časem a datem.
def capture_image (): data = time.strftime ("% d_% b_% Y-% H:% M:% S") camera.start_preview () time.sleep (5) tisk dat camera.capture ('% s. jpg '% data) camera.stop_preview () time.sleep (1) sendMail (data)
Pak jsme inicializovali Picameru s některými jeho nastaveními:
camera = picamera.PiCamera () camera.rotation = 180 camera.awb_mode = 'auto' camera.brightness = 55
A teď na konci jsme si přečetli výstup senzoru PIR a když se jeho výkon zvýší, Raspberry Pi volá funkci capture_image (), která zachytí obraz vetřelce a odešle výstražnou zprávu s obrázkem vetřelce jako přílohu. K odesílání pošty jsme použili funkci sendmail () insdie capture_image () .
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)
Takhle funguje tento bezpečnostní systém Raspberry Pi, můžete také použít ultrazvukový senzor nebo IR senzor k detekci přítomnosti zloděje nebo vetřelce. Dále zkontrolujte celý kód a ukázkové video níže.