Përmbajtje:

Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Ushqim të drejtpërdrejtë: 6 hapa
Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Ushqim të drejtpërdrejtë: 6 hapa

Video: Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Ushqim të drejtpërdrejtë: 6 hapa

Video: Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Ushqim të drejtpërdrejtë: 6 hapa
Video: Vegan Since 1951! 32 Years Raw! A Natural Man of Many Skills; Mark Huberman 2024, Korrik
Anonim
Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Feed Live
Kamera Raspberry Pi 3 Zbulimi i Lëvizjes me Feed Live

Prezantimi

Në këtë projekt, ju do të mësoni se si të ndërtoni një aparat për zbulimin e lëvizjes të cilin do të jeni në gjendje ta përdorni si një aparat fotografik, një monitor kafshësh/foshnjash, një kamerë sigurie dhe shumë më tepër.

Ky projekt organizohet në disa hapa:

  • Prezantimi
  • Vendosja e Pi tuaj
  • SSHing në Pi tuaj
  • E -mail adresën tuaj IP në boot
  • Instalimi dhe konfigurimi i Motion
  • Dërgimi i videove nga Motion në zbulimin
  • Zgjidhja e problemeve dhe burimet

Çfarë do t'ju duhet:

  • Një model Raspberry Pi 3 me 35 dollarë
  • Kartë Micro SD 8 GB 10 dollarë
  • Webcam USB ~~ 20 dollarë (ky projekt përdori një Webcam Logitech HD c270)
  • kabllo mikro usb 5 dollarë
  • ose:
  • bateri e rimbushshme 5 volt (bateri rezervë e telefonit), kjo e bën projektin tuaj pa tel 20 dollarë
  • ose
  • përshtatës muri usb 5 dollarë
  • Një lidhje WiFi

Aty ku do t'ju duhet qasje për konfigurim:

  • Një monitor
  • Një mi dhe tastierë
  • Një kompjuter me një vend të kartës SD
  • Një konvertues i kartës Micro SD në SD (duhet të vijë me kartën tuaj micro SD)

Hapi 1: Vendosja e Pi tuaj

Vendosja e Pi tuaj
Vendosja e Pi tuaj

Tani le të vendosim Pi -në tuaj

Për të filluar, sigurohuni që të keni të gjithë artikujt e kërkuar nga hapi i fundit. Pastaj, ndiqni hapat në faqen e internetit të Raspberry Pi për instalimin e Raspbian Jessie në kartën tuaj Microsd, të gjetur këtu.

Pasi të keni instaluar Raspbian në Pi tuaj, është koha për të vendosur disa veçori themelore.

WiFi

Hapi i parë për të përfituar sa më shumë nga Pi juaj është ta lidhni atë me internetin. Ju mund ta keni përfunduar këtë hap tashmë ose duke gjetur simbolin WiFi në këndin e sipërm të djathtë të ekranit kryesor të Pi tuaj dhe duke u regjistruar atje, ose duke bërë të njëjtën gjë para se të instaloni Raspbian në hapin e fundit. Nëse nuk jeni në gjendje të hyni në rrjetin tuaj WiFi nga ndërfaqja e desktopit Pi tuaj, mund të ndiqni udhëzimet këtu për të konfiguruar WiFi përmes vijës së komandës.

SSH

Një mjet shumë i dobishëm në dispozicion për ju kur përdorni Pi tuaj është opsioni për të lëshuar komanda për Pi tuaj në atë që njihet si konfigurim pa kokë. Duke përdorur një Secure SHell, ose SSH, ju mund të kontrolloni Pi tuaj nga distanca nga një kompjuter. Me këtë metodë, gjithçka që ju nevojitet për të redaktuar Pi tuaj është një burim energjie për ta mbajtur atë, jo më monitor dhe tastierë!

Hapi 2: SSHing në PI -në tuaj

SSHing në PI -në tuaj
SSHing në PI -në tuaj
SSHing në PI -në tuaj
SSHing në PI -në tuaj

SSHing në Raspberry Pi tuaj është e lehtë dhe shumë e dobishme, pasi procesi ju lejon të lëshoni komanda te Pi juaj nga çdo kompjuter pa asgjë më shumë se një lidhje WiFi.

Për të SSH në Pi tuaj, duhet të ndiqni këto 3 hapa të thjeshtë.

Së pari, duhet të aktivizoni SSH në Pi tuaj. Për ta bërë këtë, hapni një dritare komande në Pi tuaj dhe shkruani:

sudo raspi-config

Kjo komandë ju lejon të futni një menu konfigurimi. nga atje ju do të dëshironi të përdorni shigjetën, skedën dhe futni çelësat për të hyrë së pari në opsionet e ndërlidhjes, pastaj për të aktivizuar SSH, si dhe kamerën, pastaj dilni dhe rindizni pi.

Tjetra, do t'ju duhet të gjeni adresën IP të Pi tuaj. Në një terminal komande, shkruani:

sudo ifconfig

Dhe adresa juaj IP duhet të jetë në seksionin wlan0 që shfaqet, pikërisht nën lidhjen encap: ethernet. Në foton demo të mësipërme, Adresa IP është 192.168.1.10.

Së fundmi, ose do të duhet të hapni aplikacionin e ndërtuar në terminal në një mac, ose të gjeni dhe ndiqni udhëzimet për një aplikacion ssh të palëve të treta për Windows. Në aplikacionin Terminal, shkruani:

ssh pi@Adresa juaj IP

Nëse nuk e keni ndryshuar fjalëkalimin gjatë konfigurimit Raspi, atëherë fjalëkalimi juaj për të futur kur ju kërkohet do të jetë fjalëkalimi i paracaktuar: mjedër.

Nga atje, duhet të jesh mirë të shkosh!

Hapi 3: Dërgoni me email adresën tuaj IP në Boot

Email Adresa juaj IP në Boot
Email Adresa juaj IP në Boot

Në këtë hap ne do të fokusohemi në atë se si të hyni në Raspberry Pi tuaj, pavarësisht nga rrjeti ku jeni. Në varësi të rrjetit, adresa IP e Pi ndryshon. Dhe nëse nuk keni një konfigurim të monitorit, do t'ju duhet të futeni në Pi për të aktivizuar protokollin e zbulimit të lëvizjes, për të ndryshuar preferencat e lëvizjes ose për të hyrë në ndonjë gjë tjetër në pajisje. Për të zgjidhur këtë problem ne do të shkruajmë një skript python që na dërgon email IP -ja IP e adresës aktuale të IP kur të fillohet. Skenari python është si më poshtë dhe u ruajt në një drejtori të shënuar "sfond".

#filloni në drejtorinë e shtëpisë

cd

#krijoni një dosje në sfond

mkdir sfond

#krijoni shkrim python

sudo nano emailip.py

#shkruani në emailip.py

prizë importi

s = socket.socket (fole. AF_INET, fole. SOCK_DGRAM)

s.connect (("8.8.8.8", 80))

print (s.getsockname () [0]) x = s.getsockname () [0] s.mbylli ()

importo smtplib

nga email. MIMEMultipart import MIMEMultipart

nga email. MIMEText import MIMEText

fromaddr = "ADRESA JUAJ"

toaddr = "PRANIM ADRESA"

msg = MIMEMultipart ()

msg ['From'] = fromaddr

msg ['To'] = toaddr

msg ['Subject'] = "Adresa IP"

trupi = xmsg.attach (MIMEText (trupi, 'i thjeshtë'))

server = smtplib. SMTP ('smtp.gmail.com', 587)

server.starttls ()

server.login (fromaddr, "YOUR PASSWORD")

tekst = msg.as_string ()

server.sendmail (fromaddr, toaddr, tekst)

server.quit ()

#atëherë kjo e bën atë në rindezje

sudo nano /etj/rc.local

#hyr në /etc/rc.local

derisa ! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';

flini 3

bërë

_IP = $ (emri i hostit -I) || e vertete

nëse ["$ _IP"]; atëherë

printf "Adresa ime IP është %s / n" "$ _IP"

python /home/pi/Background/emailip.py &

fi

dalja 0

#dhe mbarove

Hapi 4: Instalimi dhe vendosja e lëvizjes

Instalimi dhe vendosja e lëvizjes
Instalimi dhe vendosja e lëvizjes

#përditëso pi

përditësim sudo apt-get

sudo apt-get upgrade

#Shkarko

sudo apt-get install motion

#tani modifikoni këtë skedar me ndryshimet e mëposhtme

sudo nano /etc/motion/motion.conf

#për të vendosur një standard për këtë tutorial, ndryshoni

#################

demon më

stream_localhost fikur

webcontrol_localhost i fikur

ffmpeg_output_movies on

target_dir/var/lib/motion

##################

#opsionet lokale të transmetimit të shfletuesit të uebit

##################

stream_maxrate 100 #Kjo do të lejojë transmetim në kohë reale, por kërkon më shumë gjerësi brezi dhe burime

shpejtësia e kornizës 60 #Kjo do të lejojë që 60 korniza të kapen në sekondë #sa më e lartë të jetë kjo, aq më i ngadalshëm është përpunimi i videos

gjerësia 640 #Kjo ndryshon gjerësinë e imazhit të shfaqur

lartësia 480 #Kjo ndryshon lartësinë e figurës së shfaqur

##################

#dërgimi i cilësimeve të videos në…/motion.conf

##################

#fshini ";" para rreshtit, pikëpresja komenton vijën jashtë

on_event_start python /home/pi/background/motionalert.py %f

on_movie_end python /home/pi/background/motionvid.py %f

##################

#astektikë

##################

#zgjedhje të përshkruara në dosje

figurat_ dalëse lokalizoni_stilin e lëvizjes

##################

#pastaj ndrysho

sudo nano/etc/default/motion

#të thuash

start_motion_daemon = po

#filloni, filloni B **** lart

fillimi i lëvizjes së shërbimit sudo

#ju mund të ndryshoni komandën në "stop", ose "restart"

Hapi 5: Dërgimi i videove me video nga lëvizja në zbulim

Dërgimi i videove me video nga lëvizja në zbulim
Dërgimi i videove me video nga lëvizja në zbulim

Email kur zbulohet lëvizja:

#filloni në shtëpi

dircd

#krijoni shkrim python alarm lëvizjeje

sudo nano /home/pi/background/motionalert.py

#shkruaj

importo smtplib

nga dataetime import datetime

nga email. MIMEMultipart import MIMEMultipart

nga email. MIMEText import MIMEText

fromaddr = "FJALA JUAJ"

toaddr = "MARRJA E ADDRESS"

msg = MIMEMultipart ()

msg ['From'] = fromaddr

msg ['To'] = toaddr

msg ['Subject'] = "Lëvizja u Zbulua"

trup = 'motionshtë zbuluar një lëvizje. / nOra: % s' % str (dataetime.now ())

msg.attach (MIMEText (trupi, 'i thjeshtë'))

server = smtplib. SMTP ('smtp.gmail.com', 587)

server.starttls ()

server.login (fromaddr, "YOURPASSWORD")

tekst = msg.as_string ()

server.sendmail (fromaddr, toaddr, tekst)

server.quit ()

E -mail Video e lëvizjes kur ruhet video:

#fillo në homedircd

#krijo lëvizje video python scriptsudo nano /home/pi/background/motionvid.py

importo smtplib

nga email. MIMEMultipart import MIMEMultipart

nga email. MIMEText import MIMEText

nga email. MIMEBase import MIMEBase

nga kodifikuesit e importit të postës elektronike

fromaddr = "E -mail juaj"

toaddr = "E -mail ADRESA QOU D SRGONI"

msg = MIMEMultipart ()

msg ['From'] = fromaddr

msg ['To'] = toaddr

msg ['Subject'] = "Kamera e lëvizjes është aktivizuar"

trupi = "Video e lëvizjes u zbulua"

msg.attach (MIMEText (trupi, 'i thjeshtë'))

importo os

rootpath = '/var/lib/motion'

filelist = [os.path.join (rootpath, f) for f në os.listdir (rootpath)]

lista e skedarëve = [f për f në listën e skedarëve nëse os.path.isfile (f)]

më e reja = max (lista e skedarëve, çelësi = lambda x: os.stat (x).st_mtime)

emri i skedarit = më i ri

importo os

rootpath = '/var/lib/motion'

filelist = [os.path.join (rootpath, f) for f në os.listdir (rootpath)]

lista e skedarëve = [f për f në listën e skedarëve nëse os.path.isfile (f)]

më e reja = max (lista e skedarëve, çelësi = lambda x: os.stat (x).st_mtime)

bashkëngjitje = e hapur (më e reja, "rb")

pjesë = MIMEBase ('aplikim', 'oktet-stream')

part.set_payload ((shtojca).lexo ())

encoders.encode_base64 (pjesë)

part.add_header ('Përmbajtja-Dispozita', "bashkëngjitje; emri i skedarit = % s" % e skedarit)

msg. bashkëngjit (pjesë)

server = smtplib. SMTP ('smtp.gmail.com', 587)

server.starttls ()

server.login (fromaddr, "YOUR PASSWORD")

tekst = msg.as_string ()

server.sendmail (fromaddr, toaddr, tekst)

server.quit ()

Hapi 6: Zgjidhja e problemeve dhe burimet

Zgjidhja e problemeve dhe burimet
Zgjidhja e problemeve dhe burimet

Zgjidhja e problemeve:

Për shkak se ky projekt ka faza të shumta, ka disa pika në të cilat gjërat mund të shkojnë keq. Më poshtë janë disa nga gabimet e mundshme që mund të ndodhin dhe si t'i rregulloni ato.

  • Kur vendosni pi -në tuaj për t'ju dërguar me email adresën e tij aktuale IP, është thelbësore të redaktoni skedarin rc.local siç tregohet më herët sepse kjo lejon një vonesë të vogël para se programi të aktivizohet pas rindezjes. Përndryshe, pi nuk do të lidhet ende me wifi dhe emaili nuk do të dërgohet.
  • Kur redaktoni skedarin motion.conf sigurohuni që të fshini pikëpresjet para parametrave të caktuar. Pikëpresja shtyp një veprim të caktuar, kështu që përndryshe ndryshimi nuk do të hyjë në fuqi.
  • Skedari motion.conf është shumë mirë i organizuar dhe i detajuar. Ndjehuni të lirë të ndryshoni cilësimet sipas dëshirës tuaj, por kuptoni që ato mund të ndikojnë në suksesin e sistemit të kapjes së lëvizjes.
  • Pas vendosjes së opsioneve të paralajmërimit të postës elektronike dhe videove të postës elektronike, është e rëndësishme të theksohet se emaili i videos së zbuluar me lëvizje do të marrë pak më shumë kohë sesa të dërgohet sesa email -i fillestar i alarmit. Kjo ndodh sepse videoja përfundon disa sekonda pasi lëvizja nuk zbulohet më, dhe sepse bashkëngjitja e postës elektronike mund të jetë mjaft e madhe për të kërkuar disa minuta për t'u marrë. Në disa raste, nëse lëvizja mbahet për një kohë shumë të gjatë, mund të jetë shumë e madhe për t'u dërguar fare. Për shkak të kësaj, është gjithmonë një ide e mirë të kontrolloni transmetimin e drejtpërdrejtë pas marrjes së emailit paralajmërues fillestar.

Pse Lëvizje ?:

Kur filluam për herë të parë këtë projekt, ne morëm parasysh disa burime të ndryshme. Së pari ne kemi konsideruar përdorimin e PiCam e cila është një njësi kamera e ndërtuar posaçërisht për pi mjedër. PiCam është sigurisht një pajisje e aftë dhe ka shumë aplikacione, por është e kufizuar në përdorimin e programeve që janë krijuar posaçërisht për të dhe është relativisht e shtrenjtë në krahasim me kamerat e lira me shumë qëllime. Kështu që për ta bërë këtë projekt të arritshëm për një audiencë më të madhe, ne vendosëm të përdorim një kamerë të përbashkët USB. Çështja tjetër ishte cili softuer të përfshihej. Ne fillimisht konsideruam OpenCV i cili është softuer falas që lejon shumë lloje të ndryshme të Vizionit Kompjuterik dhe projekteve të imazhit. Nga çështjet këtu është se OpenCV është një skedar masiv që kërkon shumë memorie dhe një kohë të gjatë të krijuar. Konfigurimi gjithashtu ka faza të shumta, duke lënë edhe më shumë hapësirë për gabime. Ne zbuluam se për projektin tonë specifik, Motion ishte më i thjeshtë për tu vendosur dhe punuar, por shumë më i fuqishëm në zbatimin e tij.

Burimet

Burimet e Kodit:

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

Kreditet e fotografive:

Kërmilli SSH:

Logoja e postës:

Webcam Logitech:

Dritarja SSH:

Recommended: