Sisukord:
- Samm: Pi seadistamine
- Samm: SSH -i sisestamine oma PI -sse
- Samm: saatke oma IP -aadress alglaadimisel meilile
- 4. samm: liikumise installimine ja seadistamine
- 5. toiming: videote saatmine liikumisel tuvastamisel
- 6. toiming: tõrkeotsing ja allikad
Video: Raspberry Pi 3 liikumise tuvastamise kaamera otseülekandega: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:50
Sissejuhatus
Selles projektis saate teada, kuidas ehitada liikumistuvastuskaamerat, mida saate kasutada kaamera lõksuna, lemmiklooma/beebimonitorina, turvakaamerana ja palju muud.
See projekt on jagatud mitmeks etapiks:
- Sissejuhatus
- Pi seadistamine
- SSHing teie Pi -sse
- IP -aadressi saatmine alglaadimisel
- Motioni installimine ja seadistamine
- Videote saatmine Motionilt tuvastamisel
- Veaotsing ja allikad
Mida vajate:
- A Raspberry Pi 3 mudel b ~ ~ 35 dollarit
- 8 GB Micro SD -kaart ~ 10 dollarit
- USB veebikaamera ~ ~ 20 dollarit (selle projekti puhul kasutati Logitechi HD veebikaamerat c270)
- mikro -USB -kaabel ~ 5 dollarit
- kas:
- laetav 5 -voldine aku (telefoni varupatarei), mis muudab teie projekti traadita ~ 20 dollarini
- või
- usb seinaadapter ~ ~ 5 dollarit
- WiFi ühendus
Seadistamiseks vajate juurdepääsu:
- Monitor
- Hiir ja klaviatuur
- SD -kaardi pesaga arvuti
- Micro SD to SD card converter (peaks olema kaasas teie micro SD kaardiga)
Samm: Pi seadistamine
Nüüd seadistame teie Pi
Alustuseks veenduge, et teil on kõik viimases etapis nõutud üksused. Seejärel järgige Raspberry Pi veebisaidi juhiseid Raspbian Jessie installimiseks oma Microsd -kaardile, mille leiate siit.
Kui olete oma Pi -le Raspbiani installinud, on aeg seadistada mõned põhifunktsioonid.
WiFi
Esimene samm oma Pi maksimaalseks kasutamiseks on selle ühendamine Internetiga. Võimalik, et olete selle sammu juba lõpetanud, kui leiate oma Pi põhiekraani paremas ülanurgas WiFi sümboli ja logite sinna sisse või teete sama asja enne Raspbiani installimist viimases etapis. Kui te ei saa oma Pi töölaua liideselt oma WiFi -võrku sisse logida, saate WiFi käsurealt seadistamiseks järgida siin toodud juhiseid.
SSH
Üks väga mugav tööriist, mis on teile Pi kasutamisel saadaval, on võimalus anda oma Pi -le käske nn peata seadistuses. Secure SHelli või SSH -d kasutades saate oma Pi -d arvutist eemalt juhtida. Selle meetodi puhul on Pi muutmiseks vaja ainult toiteallikat, et seda sisse lülitada, mitte enam monitori ja klaviatuuri!
Samm: SSH -i sisestamine oma PI -sse
SSHing oma Raspberry Pi -sse on lihtne ja väga kasulik, kuna see protsess võimaldab teil oma Pi -le käske väljastada mis tahes arvutist, millel pole midagi muud kui WiFi -ühendus.
SS -i ühendamiseks oma Pi -ga peate järgima neid 3 lihtsat sammu.
Esiteks peate oma Pi -s lubama SSH. Selleks avage oma Pi -s käsuaken ja tippige:
sudo raspi-config
See käsk võimaldab teil siseneda konfiguratsioonimenüüsse. sealt soovite kasutada noolt, sakki ja sisestusklahve, et minna kõigepealt liidese valikutesse, seejärel lubada SSH ja kaamera, seejärel väljuda ja taaskäivitada pi.
Järgmisena peate leidma oma Pi IP -aadressi. Tippige käsuterminalis:
sudo ifconfig
Ja teie IP -aadress peaks olema jaotises wlan0, mis ilmub otse linkide kaane all: ethernet. Ülaltoodud demopildil on IP -aadress 192.168.1.10.
Lõpuks peate kas avama Macis sisseehitatud terminalirakenduse või leidma ja järgima juhiseid kolmanda osapoole ssh -rakenduse jaoks Windowsi jaoks. Tippige rakendusse Terminal järgmine käsk:
ssh pi@SINU IP -AADRESS
Kui te pole Raspi-konfiguratsiooni ajal parooli muutnud, on teie parool, mida sisestatakse küsimisel, vaikimisi parool: vaarikas.
Sealt edasi peaks teil olema hea minna!
Samm: saatke oma IP -aadress alglaadimisel meilile
Selles etapis keskendume sellele, kuidas pääsete juurde oma Raspberry Pi -le, olenemata võrgust, milles olete. Sõltuvalt võrgust muutub Pi IP -aadress. Ja kui teil pole monitori seadistust, peate liikumise tuvastamise protokolli käivitamiseks, liikumiseelistuste muutmiseks või seadmele muule juurdepääsuks sisestama Pi -sse. Selle probleemi lahendamiseks kirjutame python -skripti, mis saadab meile käivitamisel Pi -i praeguse IP -aadressi. Pythoni skript on järgmine ja see salvestati kataloogi, mis on tähistatud "taustaga".
#start kodukataloogis
cd ~
#loo taustakaust
mkdir taust
#loo pythoni skript
sudo nano emailip.py
#kirjutage e -posti aadressile emailip.py
impordipesa
s = pistikupesa (pistikupesa. AF_INET, pesa. SOKK_DGRAM)
s.connect (("8.8.8.8", 80))
print (s.getsockname () [0]) x = s.getsockname () [0] s.close ()
import smtplib
meililt. MIMEMultipart import MIMEMultipart
e -posti aadressilt. MIMEText import MIMEText
fromaddr = "SINU AADRESS"
toaddr = "Aadressi vastuvõtmine"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "IP -aadress"
body = xmsg.attach (MIMEText (body, 'tavaline'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "SINU PAROOL")
tekst = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
#Siis teeb see seda taaskäivitamisel
sudo nano /etc/rc.local
#sisestage /etc/rc.local
samas! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';
magama 3
tehtud
_IP = $ (hostinimi -I) || tõsi
kui ["$ _IP"]; siis
printf "Minu IP -aadress on %s / n" "$ _IP"
python /home/pi/Background/emailip.py &
fi
väljumine 0
#ja olete valmis
4. samm: liikumise installimine ja seadistamine
#värskenda pi
sudo apt-get update
sudo apt-get upgrade
#lae alla
sudo apt-get install motion
#now muutke seda faili järgmiste muudatustega
sudo nano /etc/motion/motion.conf
#Selle õpetuse jaoks standardi seadmiseks muutke
#################
deemon peal
stream_localhost välja lülitatud
webcontrol_localhost välja lülitatud
ffmpeg_output_movies sisse lülitatud
target_dir/var/lib/motion
##################
#local veebibrauseri voogesituse valikud
##################
stream_maxrate 100 #See võimaldab reaalajas voogesitust, kuid nõuab rohkem ribalaiust ja ressursse
kaadrisagedus 60 #See võimaldab jäädvustada 60 kaadrit sekundis #mida kõrgem see on, seda aeglasem on videotöötlus
laius 640 #See muudab kuvatava pildi laiust
kõrgus 480 #See muudab kuvatava pildi kõrgust
##################
#e -posti video seaded…/motion.conf
##################
#kustuta rea ees olev ";", semikoolon kommenteerib joont
on_event_start python /home/pi/background/motionalert.py %f
on_movie_end python /home/pi/background/motionvid.py %f
##################
#astika
##################
#valikud on failis kirjeldatud
output_pictures locate_motion_style
##################
#siis muutus
sudo nano/etc/default/motion
#ütlema
start_motion_daemon = jah
#viimane, käivitage B **** üles
sudo teenuse liikumise algus
#saate muuta käsu "stop" või "restart"
5. toiming: videote saatmine liikumisel tuvastamisel
Liikumise tuvastamisel saatke meil:
#alusta kodus
dircd ~
#loo liikumisteate pythoni skript
sudo nano /home/pi/background/motionalert.py
#kirjutada
import smtplib
kuupäevast importimise kuupäev
meililt. MIMEMultipart import MIMEMultipart
e -posti aadressilt. MIMEText import MIMEText
fromaddr = "OMAADRESS"
toaddr = "RECIEVINGADDRESS"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Liikumine tuvastatud"
body = 'Liikumine on tuvastatud. / nAeg: % s' % str (datetime.now ())
msg.attach (MIMEText (body, 'tavaline'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "YOURPASSWORD")
tekst = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
Liikumise video saatmine e -postiga video salvestamisel:
#alustage aadressilt homedircd ~
#create motion video python scriptsudo nano /home/pi/background/motionvid.py
import smtplib
meililt. MIMEMultipart import MIMEMultipart
e -posti aadressilt. MIMEText import MIMEText
meilist. MIMEBase import MIMEBase
e -posti impordi kodeerijatelt
fromaddr = "SINU EMAIL"
toaddr = "E -posti aadress, kuhu sa saadad"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Motion Cam on aktiveeritud"
body = "Tuvastatud liikumise video"
msg.attach (MIMEText (body, 'tavaline'))
import os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) f jaoks os.listdir (rootpath)]
faililoend = [f jaoks f faililoendis, kui os.path.isfile (f)]
uusim = max (faililoend, võti = lambda x: os.stat (x). st_mtime)
failinimi = uusim
import os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) f jaoks os.listdir (rootpath)]
faililoend = [f jaoks f faililoendis, kui os.path.isfile (f)]
uusim = max (faililoend, võti = lambda x: os.stat (x). st_mtime)
manus = avatud (uusim, "rb")
part = MIMEBase ('rakendus', 'oktettvoog')
part.set_payload ((manus).loe ())
encoders.encode_base64 (osa)
part.add_header ('Content-Disposition', "manus; failinimi = % s" % failinimi)
msg.attach (osa)
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "SINU PAROOL")
tekst = msg.as_string ()
server.sendmail (fromaddr, toaddr, text)
server.quit ()
6. toiming: tõrkeotsing ja allikad
Veaotsing:
Kuna sellel projektil on mitu etappi, on mitu punkti, kus asjad võivad valesti minna. Allpool on toodud mõned võimalikud vead ja nende parandamine.
- Kui seadistate oma pi, et saata teile selle praegune IP -aadress, on ülioluline redigeerida rc.local faili, nagu varem näidatud, sest see võimaldab veidi viivitada, enne kui programm pärast taaskäivitamist aktiveerub. Vastasel juhul pole pi veel WiFi -ga ühendatud ja e -kirju ei saadeta.
- Faili motion.conf redigeerimisel kustutage kindlasti teatud parameetrite ees olevad semikoolonid. Semikoolon summutab antud toimingu, nii et muidu muudatus ei jõustu.
- Fail motion.conf on väga hästi korraldatud ja üksikasjalik. Muutke seadeid oma äranägemise järgi, kuid mõistke, et need võivad mõjutada liikumisvõtte süsteemi edu.
- Pärast e -posti märguande ja e -posti videovalikute seadistamist on oluline märkida, et liikumise tuvastatud video e -kiri võtab veidi kauem aega kui saatmine kui esialgne hoiatusmeil. Selle põhjuseks on asjaolu, et video lõpeb paar sekundit pärast seda, kui liikumist enam ei tuvastata, ja kuna e -kirja manus võib olla piisavalt suur, et selle vastuvõtmiseks kuluda paar minutit. Mõnel juhul, kui liikumine püsib väga pikka aega, võib see olla saatmiseks liiga suur. Seetõttu on alati hea mõte pärast algse hoiatusmeili saamist otseülekannet kontrollida.
Miks Motion ?:
Selle projektiga alustades kaalusime mitmeid erinevaid ressursse. Kõigepealt kaalusime PiCami kasutamist, mis on spetsiaalselt vaarika pi jaoks loodud kaameraüksus. PiCam on kindlasti võimekas seade ja sellel on palju rakendusi, kuid see piirdub spetsiaalselt selleks loodud programmide kasutamisega ja on odavate mitmeotstarbeliste veebikaameratega võrreldes suhteliselt kallis. Seega, et muuta see projekt suuremale vaatajaskonnale kättesaadavaks, otsustasime kasutada ühist USB -veebikaamerat. Järgmine küsimus oli, millist tarkvara lisada. Algselt kaalusime OpenCV -d, mis on tasuta tarkvara, mis võimaldab mitmesuguseid arvutivisiooni ja pildiprojekte. Siin on probleemiks see, et OpenCV on tohutu fail, mis võtab palju mälu ja on pikka aega seadistatud. Seadistusel on ka mitu etappi, jättes veelgi rohkem vigu. Leidsime, et meie konkreetse projekti puhul oli Motioni seadistamine ja töö alustamine lihtsam, kuid selle teostamine palju kindlam.
Allikad
Koodi allikad:
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
Fotokrediidid:
SSH tigu:
E -posti logo:
Logitechi veebikaamera:
SSH aken:
Soovitan:
ESP32-CAM Ehitades oma videoauto otseülekandega: 4 sammu
ESP32-CAM Ehitades oma videoauto otseülekandega robot-auto: Idee on muuta siin kirjeldatud robot-auto võimalikult odavaks. Seetõttu loodan oma üksikasjalike juhiste ja odava mudeli valitud komponentidega jõuda suure sihtrühmani. Tahaksin teile esitada oma idee robotauto kohta
Odav 3D 3D -kaamera kaamera Androidile: 7 sammu (piltidega)
Odav 3D FPV kaamera Androidile: FPV on päris lahe asi. Ja 3D -s oleks see veelgi parem. Kolmas mõõde ei ole suurtel vahemaadel eriti mõttekas, kuid siseruumides asuva mikrokvadropteri jaoks on see ideaalne. Nii et ma vaatasin turgu. Kuid minu leitud kaamerad olid ka tema
CCTV kaamera koos sõlmega MCU + vana sülearvuti kaamera moodul (koos ja ilma Blynk'i kasutamiseta): 5 sammu
CCTV kaamera koos NodeMCU + vana sülearvuti kaamera mooduliga (koos ja ilma Blynk'i kasutamiseta): Tere poisid! Selles juhendis näitan teile, kuidas kasutasin vana sülearvuti kaamera moodulit ja sõlme MCU, et teha midagi sarnast CCTV -ga
Liikumise tuvastamise häiresüsteem: 11 sammu (piltidega)
Liikumiste tuvastamise häiresüsteem: Märkus! Reaktiivsed plokid pole enam allalaadimiseks saadaval. Ruumis liikumise tuvastamiseks saab kasutada tavalist USB -kaamerat. Järgmistes sammudes näitame teile, kuidas saate reaktiivsete plokkide abil programmeerida valmis Java -rakenduse, mis saadab SMS -i
Lisage arvuti sünkroonimispesa Nikoni Sc-28 TTL-kaablile (kasutage kaamera välklambi automaatseid seadeid ja kaamera välkude väljalülitamist !!): 4 sammu
Lisage Nconi Sc-28 TTL-kaablile arvuti sünkroonimispesa (kasutage kaamera välklambi automaatseid seadeid ja kaamera välklampide väljalülitamist !!): selles juhendis näitan teile, kuidas eemaldada üks neist tüütutest 3-pin TTL-pistikutest Nikon SC-28 väljalülitatud kaamera TTL-kaabli küljele ja asendage see tavalise arvuti sünkroonimispistikuga. see võimaldab teil kasutada spetsiaalset välklampi