Mündəricat:
- Addım 1: Pi -ni qurun
- Addım 2: PI -yə SSHing
- Addım 3: Boot -da IP ünvanınızı e -poçtla göndərin
- Addım 4: Motionun Qurulması və Qurulması
- Addım 5: Algılama Hərəkətindən Videoları E -poçtla Göndərin
- Addım 6: Problemlərin həlli və mənbələr
Video: Canlı Yeməkli Raspberry Pi 3 Hərəkət Algılama Kamerası: 6 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Giriş
Bu layihədə, kamera tələsi, ev heyvanı/körpə monitoru, təhlükəsizlik kamerası və daha çox istifadə edə biləcəyiniz bir hərəkət algılama kamerası qurmağı öyrənəcəksiniz.
Bu layihə bir neçə mərhələdən ibarətdir:
- Giriş
- Pi qurmaq
- Pi -yə SSHing daxil edin
- Açılış zamanı IP ünvanınıza e -poçt göndərilməsi
- Motionun quraşdırılması və qurulması
- Algılama ilə əlaqədar Motion -dan Videolar göndərmək
- Problemlərin aradan qaldırılması və mənbələr
Nə lazımdır:
- Raspberry Pi 3 modeli - ~ 35 dollar
- 8 gb Micro SD kart ~ ~ 10 dollar
- USB Veb Kamera ~ ~ 20 dollar (bu layihədə Logitech HD Webcam c270 istifadə olunur)
- mikro usb kabeli ~ ~ 5 dollar
- ya:
- şarj edilə bilən 5 volt batareya paketi (telefonun ehtiyat batareyası), bu, layihənizi simsiz edir ~ ~ 20 dollar
- və ya
- usb divar adapteri ~ ~ 5 dollar
- WiFi bağlantısı
Quraşdırma üçün nəyə ehtiyacınız olacaq:
- Bir monitor
- Siçan və klaviatura
- SD kart yuvası olan bir kompüter
- Micro SD - SD kart çeviricisi (micro SD kartınızla birlikdə olmalıdır)
Addım 1: Pi -ni qurun
İndi Pi -ni quraq
Başlamaq üçün, son addımda lazım olan bütün maddələrə sahib olduğunuzdan əmin olun. Sonra, Raspberry Jessie -ni Microsd kartınıza yükləmək üçün Raspberry Pi veb saytındakı addımları izləyin.
Pi -də Raspbian quraşdırıldıqdan sonra bəzi əsas xüsusiyyətləri qurmağın vaxtı gəldi.
WiFi
Pi -dən maksimum faydalanmağın ilk addımı onu internetə bağlamaqdır. Pi simvolunuzun əsas ekranının sağ üst küncündə WiFi simvolunu tapıb ora daxil olaraq və ya son addımda Raspbian qurmadan əvvəl eyni şeyi edərək bu addımı tamamlamış ola bilərsiniz. Pi -nin masaüstü interfeysindən WiFi şəbəkənizə daxil ola bilmirsinizsə, əmr satırından WiFi qurmaq üçün buradakı təlimatları izləyə bilərsiniz.
SSH
Pi istifadə edərkən əlinizdə olan çox lazımlı bir vasitə, başsız bir quruluş olaraq bilinən Pi -yə əmr vermək imkanıdır. Secure SHell və ya SSH istifadə edərək, Pi -nizi kompüterdən uzaqdan idarə edə bilərsiniz. Bu üsulla, Pi -nizi düzəltməyiniz üçün lazım olan tək şey onu saxlamaq üçün bir enerji mənbəyidir, artıq monitor və klaviatura yoxdur!
Addım 2: PI -yə SSHing
Raspberry Pi -yə SSHing daxil etmək asan və çox faydalıdır, çünki proses, WiFi bağlantısından başqa heç bir şeyi olmayan hər hansı bir kompüterdən Pi -yə əmr verməyə imkan verir.
Pi -yə SSH daxil etmək üçün bu 3 sadə addımı izləməlisiniz.
Əvvəlcə Pi -də SSH -ni aktivləşdirməlisiniz. Bunu etmək üçün Pi -də bir əmr pəncərəsi açın və daxil edin:
sudo raspi-config
Bu əmr konfiqurasiya menyusuna daxil olmağa imkan verir. oradan, əvvəlcə interfeys seçimlərinə keçmək üçün oku, nişanı və düymələri istifadə etmək, sonra SSH -ni və kameranı aktivləşdirmək, sonra çıxmaq və pi -ni yenidən başlatmaq istəyəcəksiniz.
Sonra Pi -nin IP ünvanını tapmalısınız. Komanda terminalına yazın:
sudo ifconfig
IP ünvanınız, Link encap: ethernet altında açılan wlan0 bölməsində olmalıdır. Yuxarıdakı demo şəkilində, IP ünvanı 192.168.1.105 -dir.
Nəhayət, ya bir Mac -da quraşdırılmış terminal tətbiqini açmalısınız, ya da Windows üçün üçüncü tərəf ssh tətbiqi üçün təlimatları tapmalısınız. Terminal tətbiqinə yazın:
ssh pi@IP ADRESİNİZ
Raspi-config-də olarkən şifrənizi dəyişməmisinizsə, istənildikdə daxil ediləcək parolunuz standart parol olacaq: moruq.
Oradan getmək üçün yaxşı olmalısan!
Addım 3: Boot -da IP ünvanınızı e -poçtla göndərin
Bu addımda, şəbəkənizdən asılı olmayaraq, Raspberry Pi -yə necə daxil olacağınıza diqqət yetirəcəyik. Şəbəkədən asılı olaraq Pi -nin IP ünvanı dəyişir. Bir monitor qurğunuz yoxdursa, hərəkət aşkarlama protokolunu işə salmaq, hərəkət seçimlərini dəyişdirmək və ya cihazdakı başqa bir şeyə daxil olmaq üçün Pi -ə daxil olmalısınız. Bu problemi həll etmək üçün işə salındıqda bizə Pi -nin IP -nin cari IP ünvanını e -poçtla göndərən bir python skript yazacağıq. Python skripti aşağıdakı kimidir və "fon" işarələnmiş bir kataloqda saxlanılmışdır.
#ev kataloqunda başlayın
cd ~
#fon qovluğu yaradın
mkdir fon
#python skripti yaradın
sudo nano emailip.py
#emailip.py -də yazın
idxal soketi
s = socket.socket (socket. AF_INET, socket. SOCK_DGRAM)
s.connect (("8.8.8.8", 80))
çap (s.getsockname () [0]) x = s.getsockname () [0] s.close ()
smtplib idxal edin
e -poçtdan
email. MIMEText idxal MIMEText
fromaddr = "ADRESİNİZ"
toaddr = "ADRES ALINIR"
msg = MIMEMultipart ()
msg ['Kimdən'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "IP ünvanı"
bədən = xmsg.attach (MIMEText (gövdə, 'düz'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ŞİFRİNİZ")
mətn = msg.as_string ()
server.sendmail (fromaddr, toaddr, mətn)
server.quit ()
#sonra bu, yenidən başladıqda bunu edir
sudo nano /etc/rc.local
#etc/rc.local daxil edin
isə! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';
yatmaq 3
bitdi
_IP = $ (ana adı -I) || doğru
əgər ["$ _IP"]; sonra
printf "IP ünvanım %s / n" "$ _IP" dir
python /home/pi/Background/emailip.py &
fi
çıxış 0
#və bitirdin
Addım 4: Motionun Qurulması və Qurulması
#pi yeniləyin
sudo apt-get yeniləməsi
sudo apt-get yeniləmə
#yüklə
sudo apt-get quraşdırma hərəkəti
#indi bu faylı aşağıdakı dəyişikliklərlə redaktə edin
sudo nano /etc/motion/motion.conf
#bu dərs üçün standart qurmaq üçün dəyişdirin
#################
daemon aktivdir
stream_localhost deaktivdir
webcontrol_localhost deaktivdir
ffmpeg_output_movies aktivdir
target_dir/var/lib/motion
##################
#yerli veb brauzer axını seçimləri
##################
stream_maxrate 100 #Bu, real vaxt axınına imkan verəcək, lakin daha çox bant genişliyi və qaynaqlar tələb edir
kadr tezliyi 60 #Bu, saniyədə 60 kadr çəkməyə imkan verəcək
width 640 #Bu, göstərilən görüntünün genişliyini dəyişir
hündürlük 480 #Bu, görüntünün hündürlüyünü dəyişir
##################
…/motion.conf -da #e -poçt video parametrləri
##################
Satırın önündəki ";" işarəsini silin, nöqtəli vergül xətti şərh edir
on_event_start python /home/pi/background/motionalert.py %f
on_movie_end python /home/pi/background/motionvid.py %f
##################
#astektika
##################
faylda təsvir edilən #seçimlər
output_pictures locate_motion_style
##################
#sonra dəyiş
sudo nano/etc/default/motion
#demək
start_motion_daemon = bəli
#son olaraq, B **** -ni işə salın
sudo xidməti hərəkətə başlayın
#əmrini "dayandır" və ya "yenidən başlat" olaraq dəyişə bilərsiniz
Addım 5: Algılama Hərəkətindən Videoları E -poçtla Göndərin
Hərəkət aşkar edildikdə e -poçt göndərin:
#evdə başlayın
dircd ~
#hərəkət xəbərdarlığı python skripti yaradın
sudo nano /home/pi/background/motionalert.py
#yaz
smtplib idxal edin
datetime tarixdən idetime
e -poçtdan
email. MIMEText idxal MIMEText
fromaddr = "YOURADDRESS"
toaddr = "RECIEVINGADDRESS"
msg = MIMEMultipart ()
msg ['Kimdən'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Hərəkət Algılandı"
body = 'Bir hərəkət aşkar edildi. / nZaman: % s' % str (datetime.now ())
msg.attach (MIMEText (gövdə, 'düz'))
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ŞİFRİNİZ")
mətn = msg.as_string ()
server.sendmail (fromaddr, toaddr, mətn)
server.quit ()
E -poçt Video saxlandıqda hərəkət videosu:
#başlayın homedircd ~
#hərəkət video python skriptləri yaradın nano /home/pi/background/motionvid.py
smtplib idxal edin
e -poçtdan
email. MIMEText idxal MIMEText
email. MIMEBase idxal MIMEBase
e -poçt idxal kodlayıcılarından
fromaddr = "E -poçtunuz"
toaddr = "Göndərdiyiniz E -poçt ünvanı"
msg = MIMEMultipart ()
msg ['Kimdən'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Motion Cam Aktivləşdirildi"
bədən = "Hərəkət videosu aşkarlandı"
msg.attach (MIMEText (gövdə, 'düz'))
id id
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
filelist = [f üçün f.fayl siyahısında əgər os.path.isfile (f)]
ən yeni = maksimum (filelist, açar = lambda x: os.stat (x).st_mtime)
fayl adı = ən yeni
id id
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
filelist = [f üçün f.fayl siyahısında əgər os.path.isfile (f)]
ən yeni = maksimum (filelist, açar = lambda x: os.stat (x).st_mtime)
əlavə = açıq (ən yeni, "rb")
hissə = MIMEBase ('tətbiq', 'oktet-axın')
part.set_payload ((əlavə). oxu ())
encoders.encode_base64 (hissə)
part.add_header ('məzmun-yerləşdirmə', "əlavə; fayl adı = % s" % fayl adı)
msg. əlavə et (hissə)
server = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ŞİFRİNİZ")
mətn = msg.as_string ()
server.sendmail (fromaddr, toaddr, mətn)
server.quit ()
Addım 6: Problemlərin həlli və mənbələr
Giderme:
Bu layihənin birdən çox mərhələsi olduğu üçün işlərin yanlış gedə biləcəyi bir neçə məqam var. Aşağıda baş verə biləcək bəzi səhvlər və onları necə düzəltmək olar.
- Sizə mövcud IP ünvanını e -poçtla göndərmək üçün pi qurarkən, rc.local faylını əvvəllər göstərildiyi kimi redaktə etmək çox vacibdir, çünki bu, proqram yenidən başladıqdan sonra aktivləşmədən əvvəl bir qədər gecikməyə imkan verir. Əks halda pi hələ wifi -yə qoşulmayacaq və e -poçt göndərilməyəcək.
- Motion.conf faylını redaktə edərkən müəyyən parametrlərin önündəki nöqtəli vergülləri silməyinizə əmin olun. Nöqtəli vergül müəyyən bir hərəkəti bastırır, əks halda dəyişiklik qüvvəyə minməyəcək.
- Motion.conf faylı çox yaxşı təşkil olunmuş və detallıdır. Ayarları zövqünüzə görə dəyişməkdən çekinmeyin, ancaq bunların hərəkət tutma sisteminin uğuruna təsir edə biləcəyini anlayın.
- E -poçt siqnalı və e -poçt video seçimlərini qurduqdan sonra, hərəkətin aşkarlandığı videonun e -poçtunun ilkin xəbərdarlıq e -poçtundan daha çox göndəriləcəyini nəzərə almaq vacibdir. Bunun səbəbi, videonun hərəkət aşkarlanmadıqdan bir neçə saniyə sonra başa çatmasıdır və e -poçt əlavəsi bir neçə dəqiqə qəbul etmək üçün kifayət qədər böyük ola bilər. Bəzi hallarda, hərəkət çox uzun müddət davam edərsə, göndərmək üçün çox böyük ola bilər. Bu səbəbdən, ilk xəbərdarlıq e -poçtunu aldıqdan sonra canlı axını yoxlamaq həmişə yaxşı bir fikirdir.
Niyə hərəkət?:
Bu layihəyə ilk dəfə başlayanda bir neçə fərqli mənbəni nəzərdən keçirdik. Əvvəlcə moruq pi üçün xüsusi olaraq hazırlanmış bir kamera vahidi olan PiCamdan istifadə etməyi düşündük. PiCam, əlbəttə ki, bacarıqlı bir cihazdır və bir çox tətbiqə malikdir, ancaq bunun üçün xüsusi olaraq hazırlanmış və ucuz çoxfunksiyalı veb kameralara nisbətən daha bahalı olan proqramlardan istifadə etməklə məhdudlaşır. Bu layihəni daha geniş auditoriya üçün əlçatan etmək üçün ümumi bir USB veb kamerasından istifadə etmək qərarına gəldik. Növbəti məsələ, hansı proqramın daxil ediləcəyi idi. Əvvəlcə bir çox müxtəlif növ kompüter görmə və görüntüləmə layihələrinə imkan verən pulsuz proqram olan OpenCV -ni nəzərdən keçirdik. Buradakı məsələlərdən biri də OpenCV -nin çoxlu yaddaş tutan və uzun müddət qurulan böyük bir fayl olmasıdır. Quraşdırmanın bir neçə mərhələsi var, bu da səhv üçün daha çox yer buraxır. Xüsusi bir layihəmiz üçün Motion -un qurulması və işə başlamasının daha asan olduğunu, lakin icra olunmasında daha möhkəm olduğunu gördük.
Mənbələr
Kod mənbələri:
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
Şəkil krediti:
SSH Salyangozu:
Poçt loqosu:
Logitech veb kamerası:
SSH pəncərəsi:
Tövsiyə:
Yataq İşıqlandırma altında Hərəkət Algılama: 16 addım (şəkillərlə)
Yataq İşıqlandırması Altında Hərəkət Algılama: Heç vaxt yalnız bir şeyin üstünə yıxılıb bütün evi oyatmaq üçün yatağından sakitcə qalxmağa çalışmısınızmı? Yatağınızın altına təmkinli şəkildə quraşdırılmış hərəkət hissedici gecə işıqları, sizi LEGO kərpicləri ətrafında istiqamətləndirəcək qədər aşağı səviyyəli işıq təmin edir
Hərəkət Algılama Arduino Lazer: 5 addım
Hərəkət Algılama Arduino Laser: Qeyd: Bu layihə bütün hissələrin gələcək layihələrdə yenidən istifadə oluna biləcəyi şəkildə hazırlanmışdır. Nəticədə, son məhsul, yapışqan, lehimləmə və s. Kimi daha daimi materiallardan istifadə etməyinizdən daha az sabitdir; Xəbərdarlıq: etmə
Arduino Security 3G/GPRS E -poçt Kamerası ilə Hərəkət Algılama: 4 Addım
Arduino Security 3G/GPRS E -poçt Kamerası ilə Hərəkət Algılama: Bu təlimatda, hərəkət detektoru olan bir təhlükəsizlik nəzarət sistemi qurmağın və 3G/GPRS qalxanı vasitəsilə poçt qutusuna fotoşəkillər göndərməyin bir versiyasından bəhs etmək istəyirəm. digər təlimatlar: təlimat 1 və təlimat
Təhlükəsizlik Kamerası Olaraq Ən Asan Veb Kamera - Hərəkət Algılama və E -poçtlu Şəkillər: 4 Addım
Təhlükəsizlik Kamerası Olaraq Ən Asan Veb Kamera - Hərəkət Algılama və E -poçtla Göndərilən Şəkillər: Veb kameranızdan hərəkət aşkarlanan şəkilləri e -poçtunuza çatdırmaq üçün proqramı yükləməyinizə və ya konfiqurasiya etməyinizə ehtiyac yoxdur - sadəcə brauzerinizi istifadə edin. Şəkil çəkmək üçün Windows, Mac və ya Android-də ən son Firefox, Chrome, Edge və ya Opera brauzerindən istifadə edin
Hərəkət İdarə Edilən Çıxış - Hərəkət Algılayan İşıqdan: 6 Addım
Hərəkət İdarə Edilən Çıxış - Hərəkət Algılayan İşıqdan: Blokdakı ən qorxulu evə gedən bir hiyləgər və ya xəyanətkar olduğunuzu düşünün. Bütün xəyalları, xəyalları və qəbiristanlıqları keçdikdən sonra nəhayət son yola çatırsınız. Qarşınızda bir qabda konfet görə bilərsiniz! Amma sonra birdən gho