Obsah:
- Krok 1: Nastavení vašeho Pi
- Krok 2: SSHing do vašeho PI
- Krok 3: E -mailová adresa IP při spuštění
- Krok 4: Instalace a nastavení pohybu
- Krok 5: Odeslání videa e -mailem z detekce pohybu
- Krok 6: Řešení potíží a zdroje
Video: Kamera pro detekci pohybu Raspberry Pi 3 s živým posuvem: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Úvod
V tomto projektu se naučíte, jak vytvořit kameru pro detekci pohybu, kterou budete moci používat jako past na kameru, monitor domácího mazlíčka/dětské chůvičky, bezpečnostní kameru a mnoho dalšího.
Tento projekt je organizován do několika kroků:
- Úvod
- Nastavení vašeho Pi
- SSHing do vašeho Pi
- E -mailová adresa IP při spuštění
- Instalace a nastavení Motion
- E -mailování videí z detekce pohybu při pohybu
- Řešení potíží a zdroje
Co budete potřebovat:
- Model Raspberry Pi 3 za ~ 35 $
- 8 GB Micro SD karta ~~ 10 $
- Webová kamera USB ~ 20 $ (tento projekt používal webovou kameru Logitech HD Webcam c270)
- mikro usb kabel ~~ $ 5
- buď:
- dobíjecí 5voltová baterie (záložní baterie telefonu), díky čemuž bude váš projekt bezdrátový ~ 20 $
- nebo
- USB nástěnný adaptér ~~ $ 5
- WiFi připojení
K čemu budete potřebovat přístup k nastavení:
- Monitor
- Myš a klávesnice
- Počítač se slotem pro kartu SD
- Převaděč karet Micro SD na SD (měl by být dodáván s vaší kartou micro SD)
Krok 1: Nastavení vašeho Pi
Nyní nastavíme váš Pi
Nejprve se ujistěte, že máte všechny požadované položky z posledního kroku. Poté postupujte podle pokynů na webu Raspberry Pi a nainstalujte Raspbian Jessie na kartu Microsd, kterou najdete zde.
Jakmile máte na svém Pi nainstalován Raspbian, je na čase nastavit některé základní funkce.
WiFi
Prvním krokem k maximálnímu využití Pi je připojení k internetu. Tento krok jste možná již dokončili buď vyhledáním symbolu WiFi v pravém horním rohu hlavní obrazovky vašeho Pi a přihlášením tam, nebo provedením stejného postupu před instalací Raspbian v posledním kroku. Pokud se nemůžete přihlásit do své WiFi sítě z desktopového rozhraní vašeho Pi, můžete WiFi nastavit pomocí příkazového řádku podle zde uvedených pokynů.
SSH
Jeden velmi šikovný nástroj, který máte při používání Pi k dispozici, je možnost vydávat příkazy vašemu Pi v takzvaném bezhlavém nastavení. Pomocí Secure SHell nebo SSH můžete svůj Pi ovládat vzdáleně z počítače. Díky této metodě bude vše, co potřebujete k úpravě Pi, zdrojem napájení, aby už nebyl zapnutý, už žádný monitor a klávesnice!
Krok 2: SSHing do vašeho PI
SSHing do vašeho Raspberry Pi je snadný a velmi užitečný, protože tento proces vám umožňuje vydávat příkazy vašemu Pi z jakéhokoli počítače, pouze s připojením WiFi.
Chcete -li SSH do vašeho Pi, musíte postupovat podle těchto 3 jednoduchých kroků.
Nejprve musíte na svém Pi povolit SSH. Chcete -li to provést, otevřete ve svém Pi příkazové okno a zadejte:
sudo raspi-config
Tento příkaz vám umožňuje vstoupit do konfigurační nabídky. odtud budete chtít pomocí šipek, karet a kláves vstoupit nejprve do možností rozhraní, poté povolit SSH, stejně jako kameru, poté ukončit a restartovat pi.
Dále budete muset zjistit IP adresu vašeho Pi. Do příkazového terminálu zadejte:
sudo ifconfig
A vaše IP adresa by měla být v sekci wlan0, která se objeví, přímo pod Link encap: ethernet. Na ukázkovém obrázku výše je IP adresa 192.168.1.10.
Nakonec budete muset buď otevřít vestavěnou terminálovou aplikaci na počítači Mac, nebo najít a postupovat podle pokynů pro aplikaci ssh třetí strany pro Windows. V aplikaci Terminál zadejte:
ssh pi@VAŠE IP ADRESA
Pokud jste heslo v Raspi-config nezměnili, bude vaše heslo, které budete po výzvě zadávat, výchozí heslo: malina.
Odtamtud byste měli jít!
Krok 3: E -mailová adresa IP při spuštění
V tomto kroku se zaměříme na přístup k vašemu Raspberry Pi bez ohledu na síť, ve které se nacházíte. V závislosti na síti se IP adresa Pi změní. A pokud nemáte nastavení monitoru, budete muset ssh do Pi spustit protokol detekce pohybu, změnit předvolby pohybu nebo přistupovat k čemukoli jinému na zařízení. Abychom tento problém vyřešili, napíšeme skript pythonu, který nám při spuštění zašle e -mailem aktuální IP adresu Pi. Skript python je následující a byl uložen v adresáři označeném „pozadí“.
#start v domovském adresáři
cd ~
#vytvořte složku na pozadí
mkdir pozadí
#vytvořte skript pythonu
sudo nano emailip.py
#napište na emailip.py
dovozní zásuvka
s = socket.socket (socket. AF_INET, socket. SOCK_DGRAM)
s.connect (("8.8.8.8", 80))
tisk (s.getsockname () [0]) x = s.getsockname () [0] s.close ()
importovat smtplib
z e -mailu. MIMEMultipart import MIMEMultipart
z e -mailu. MIMEText import MIMEText
fromaddr = "VAŠE ADRESA"
toaddr = "PŘIJÍMÁNÍ ADRESY"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "IP adresa"
body = xmsg.attach (MIMEText (body, 'plain'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "VAŠE HESLO")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
#pak se to dělá při restartu
sudo nano /etc/rc.local
#zadejte do /etc/rc.local
zatímco ! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';
spát 3
Hotovo
_IP = $ (hostname -I) || skutečný
if ["$ _IP"]; pak
printf "Moje IP adresa je %s / n" "$ _IP"
python /home/pi/Background/emailip.py &
fi
výstup 0
#a máte hotovo
Krok 4: Instalace a nastavení pohybu
#aktualizace pí
sudo apt-get update
sudo apt-get upgrade
#stažení
sudo apt-get install motion
#nyní upravte tento soubor pomocí následujících změn
sudo nano /etc/motion/motion.conf
#Chcete -li nastavit standard pro tento výukový program, změňte jej
#################
zapnutý démon
stream_localhost vypnut
webcontrol_localhost vypnut
ffmpeg_output_movies na
cílový_adresář/var/lib/pohyb
##################
#místní možnosti streamování webového prohlížeče
##################
stream_maxrate 100 #To umožní streamování v reálném čase, ale vyžaduje větší šířku pásma a zdroje
framerate 60 #To umožní zachytit 60 snímků za sekundu #čím vyšší to bude, tím pomalejší bude zpracování videa
width 640 #Tím se změní šířka zobrazeného obrázku
výška 480 #Tím se změní výška zobrazeného obrázku
##################
#e -mailové nastavení videa v …/motion.conf
##################
#delete ";" před řádkem středník komentuje řádek ven
on_event_start python /home/pi/background/motionalert.py %f
on_movie_end python /home/pi/background/motionvid.py %f
##################
#astektika
##################
#hlasy popsané v souboru
output_pictures locate_motion_style
##################
#pak změna
sudo nano/etc/default/motion
#říct
start_motion_daemon = ano
#poslední, spusťte B **** nahoru
spuštění pohybu sudo služby
#příkaz můžete změnit na „stop“nebo „restart“
Krok 5: Odeslání videa e -mailem z detekce pohybu
E -mail při detekci pohybu:
#začněte doma
dircd ~
#create skript Pythonu s upozorněním na pohyb
sudo nano /home/pi/background/motionalert.py
#napsat
importovat smtplib
z datetime import datetime
z e -mailu. MIMEMultipart import MIMEMultipart
z e -mailu. MIMEText import MIMEText
fromaddr = "VAŠE ADRESA"
toaddr = "RECIEVINGADDRESS"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Detekován pohyb"
body = 'Byl detekován pohyb. / nČas: % s' % str (datetime.now ())
msg.attach (MIMEText (body, 'plain'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "VAŠE HESLO")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
E -mail Video o pohybu při uložení videa:
#začněte na homedircd ~
#create motion video python scriptsudo nano /home/pi/background/motionvid.py
importovat smtplib
z e -mailu. MIMEMultipart import MIMEMultipart
z e -mailu. MIMEText import MIMEText
z e -mailu. MIMEBase import MIMEBase
z kodérů pro import e -mailů
fromaddr = "VÁŠ EMAIL"
toaddr = "E -mailová adresa, na kterou posíláte"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Pohybová kamera aktivována"
body = "Video pohybu detekováno"
msg.attach (MIMEText (body, 'plain'))
import os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
seznam souborů = [f pro f v seznamu souborů, pokud os.path.isfile (f)]
nejnovější = max (seznam souborů, klíč = lambda x: os.stat (x).st_mtime)
název souboru = nejnovější
import os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
seznam souborů = [f pro f v seznamu souborů, pokud os.path.isfile (f)]
nejnovější = max (seznam souborů, klíč = lambda x: os.stat (x).st_mtime)
příloha = otevřená (nejnovější, "rb")
part = MIMEBase ('aplikace', 'octet-stream')
part.set_payload ((příloha).read ())
encoders.encode_base64 (část)
part.add_header ('Content-Disposition', "příloha; název souboru = % s" % název souboru)
msg.attach (část)
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "VAŠE HESLO")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
Krok 6: Řešení potíží a zdroje
Odstraňování problémů:
Protože tento projekt má více fází, existuje několik bodů, ve kterých se může něco pokazit. Níže jsou uvedeny některé z možných chyb, které by mohly nastat, a jak je opravit.
- Při nastavování pi pro zasílání e -mailů s aktuální adresou IP je důležité upravit soubor rc.local, jak je uvedeno výše, protože to umožňuje malé zpoždění před aktivací programu po restartu. V opačném případě nebude pi ještě připojeno k wifi a e -mail nebude odeslán.
- Při úpravách souboru motion.conf nezapomeňte před určitými parametry odstranit středníky. Středník potlačuje danou akci, takže jinak se změna neprojeví.
- Soubor motion.conf je velmi dobře organizovaný a podrobný. Nebojte se změnit nastavení podle svých představ, ale uvědomte si, že mohou ovlivnit úspěch systému snímání pohybu.
- Po nastavení možností e -mailové výstrahy a e -mailu s videem je důležité si uvědomit, že odeslání e -mailu s videem detekovaným pohybem bude trvat o něco déle než odeslání původního e -mailu s upozorněním. Důvodem je, že video končí několik sekund poté, co již není detekován pohyb, a protože příloha e -mailu může být dostatečně velká, aby přijetí trvalo několik minut. V některých případech, pokud je pohyb udržován po velmi dlouhou dobu, může být příliš velký na odeslání vůbec. Z tohoto důvodu je vždy dobré zkontrolovat živý přenos po obdržení úvodního výstražného e -mailu.
Proč Motion ?:
Při prvním zahájení tohoto projektu jsme zvažovali několik různých zdrojů. Nejprve jsme zvažovali použití PiCam, což je kamerová jednotka vytvořená speciálně pro malinový pi. PiCam je určitě schopné zařízení a má mnoho aplikací, ale omezuje se na používání programů, které jsou pro něj speciálně navrženy, a je relativně drahý ve srovnání s levnými víceúčelovými webovými kamerami. Aby byl tento projekt přístupný širšímu publiku, rozhodli jsme se použít společnou webovou kameru USB. Dalším problémem bylo, který software začlenit. Původně jsme zvažovali OpenCV, což je bezplatný software, který umožňuje mnoho různých druhů projektů počítačového vidění a zobrazování. Jedním z problémů je, že OpenCV je obrovský soubor, který zabírá spoustu paměti a dlouho nastavuje. Nastavení má také několik fází, takže ještě více prostoru pro chyby. Zjistili jsme, že pro náš konkrétní projekt bylo Motion jednodušší nastavit a začít pracovat, ale mnohem robustnější při jeho provádění.
Prameny
Zdroje kódu:
www.techradar.com/how-to/computing/how-to-b…
pimylifeup.com/raspberry-pi-webcam-server/
www.pyimagesearch.com/2015/06/01/home-surve…
naelshiab.com/tutorial-send-email-python/
www.raspberrypi.org/documentation/linux/us…
learn.adafruit.com/adafruits-raspberry-pi-…
learn.adafruit.com/adafruits-raspberry-pi-…
pinout.xyz/pinout/i2c
Fotografické kredity:
Šnek SSH:
Logo pošty:
Webová kamera Logitech:
Okno SSH:
Doporučuje:
Čerpací stanice pro detekci CO: 5 kroků
Čerpací stanice pro detekci CO: Oxid uhelnatý (CO) je velmi nebezpečný plyn, protože necítí, nechutná. Nemůžete to vidět ani to detekovat nosem. Mým cílem je postavit jednoduchý detektor CO. Za prvé, ve svém domě zjišťuji velmi malá množství tohoto plynu. To je důvod
Pingo: Spouštěč míčků Ping Pong s detekcí pohybu a vysokou přesností: 8 kroků
Pingo: Detektor pohybu a vysoce přesný odpalovač pingpongových míčků: Kevin Nitiema, Esteban Poveda, Anthony Mattacchione, Raphael Kay
IP kamera s detekcí obličeje pomocí desky ESP32-CAM: 5 kroků
IP kamera s detekcí obličeje pomocí desky ESP32-CAM: Tento příspěvek se liší od ostatních a my se podíváme na velmi zajímavou desku ESP32-CAM, která je překvapivě levná (méně než 9 $) a snadno se používá. Vytváříme jednoduchou IP kameru, kterou lze použít ke streamování živého videa pomocí 2
Zabezpečovací kamera Arduino 3G/GPRS s detekcí pohybu: 4 kroky
E -mailová kamera Arduino Security 3G/GPRS s detekcí pohybu: V této příručce bych chtěl říci o jedné verzi budování systému bezpečnostního dohledu s detektorem pohybu a odesílání fotografií do schránky prostřednictvím štítu 3G/GPRS. Tento článek je založen na další pokyny: instrukce 1 a instrukce
Upgradujte kutilský kelímek pomocí WiFi na DIY detekci pohybu Sentry Alarm secí stroj: 17 kroků
Upgradujte svůj vlastní zavlažovací hrnec pomocí WiFi na DIY detektor pohybu Sentry Alarm Planter: V tomto článku vám ukážeme, jak upgradovat svůj vlastní zavlažovací hrnec pomocí WiFi na vlastní zavlažovací hrnec pomocí WiFi a detekce pohybu Sentry. nečetli jste článek o tom, jak si postavit vlastní zalévací květináč pomocí WiFi, můžete