Агуулгын хүснэгт:
- Алхам 1: Pi -ээ тохируулах
- Алхам 2: Таны PI рүү SSHing оруулах
- Алхам 3: Boot дээр IP хаягаа имэйлээр илгээх
- Алхам 4: Хөдөлгөөнийг суулгах, тохируулах
- Алхам 5: Илрүүлэх хөдөлгөөнөөс видеог имэйлээр илгээх
- Алхам 6: Алдааг олж засварлах, эх сурвалж
Видео: Raspberry Pi 3 Live Feed бүхий хөдөлгөөн мэдрэгч камер: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Танилцуулга
Энэхүү төсөлд та камер барих, гэрийн тэжээвэр амьтан/хүүхдийн монитор, хамгаалалтын камер гэх мэт ашиглах боломжтой хөдөлгөөн мэдрэгч камерыг хэрхэн бүтээх талаар сурах болно.
Энэхүү төслийг хэд хэдэн үе шаттайгаар зохион байгуулдаг.
- Танилцуулга
- Pi -гээ тохируулж байна
- Таны Pi руу SSHing хийх
- Ачаалах үед таны IP хаягийг имэйлээр илгээх
- Motion -ийг суулгах, тохируулах
- Илрүүлэх тухай Motion -аас видеог имэйлээр илгээх
- Алдааг олж засварлах, эх сурвалж
Танд хэрэгтэй зүйл:
- Raspberry Pi 3 загвар b ~~ 35 доллар
- 8gb Micro SD карт ~ ~ 10 доллар
- USB вэб камер ~ ~ 20 доллар (энэ төсөл нь Logitech HD вэбкамер c270 ашигласан)
- микро USB кабель ~ ~ 5 доллар
- аль нь:
- цэнэглэдэг 5 вольтын батерейны багц (утасны нөөц зай), энэ нь таны төслийг утасгүй болгодог ~ ~ 20 доллар
- эсвэл
- USB ханын адаптер ~ ~ 5 доллар
- WiFi холболт
Тохируулахын тулд танд хандах шаардлагатай зүйл:
- Монитор
- Хулгана ба гар
- SD картны үүртэй компьютер
- Micro SD to SD карт хөрвүүлэгч (таны микро SD карттай хамт ирэх ёстой)
Алхам 1: Pi -ээ тохируулах
Одоо Pi -ээ тохируулъя
Эхлэхийн тулд сүүлийн алхамаас шаардлагатай бүх зүйл байгаа эсэхийг шалгаарай. Дараа нь Raspberry Pi вэбсайт дээрх Raspbian Jessie -ийг Microsd картан дээрээ суулгах алхмуудыг дагана уу.
Та Pi дээрээ Raspbian суулгасны дараа зарим үндсэн функцүүдийг тохируулах цаг болжээ.
WiFi
Pi -г бүрэн ашиглах хамгийн эхний алхам бол үүнийг интернетэд холбох явдал юм. Та Pi -ийн үндсэн дэлгэцийн баруун дээд буланд WiFi тэмдгийг олж, нэвтрэх эсвэл Raspbian -ийг суулгахын өмнө ижил алхам хийх замаар энэ алхамыг аль хэдийн дуусгасан байж магадгүй юм. Хэрэв та WiFi сүлжээнд Pi -ийн ширээний интерфейсээс нэвтэрч чадахгүй байгаа бол энд байгаа зааврыг дагаж тушаалын мөрөөр WiFi -г тохируулж болно.
SSH
Таны Pi -г ашиглахад ашиглах боломжтой нэг хэрэгсэл бол толгойгүй тохиргоо гэж нэрлэдэг Pi -д тушаал өгөх сонголт юм. Secure SHell буюу SSH ашигласнаар та Pi -гээ компьютерээс алсаас удирдах боломжтой. Энэ аргын тусламжтайгаар та Pi -ээ засварлахад шаардлагатай бүх зүйл бол үүнийг асаах тэжээлийн эх үүсвэр бөгөөд дэлгэц, гар байхгүй болно!
Алхам 2: Таны PI рүү SSHing оруулах
Raspberry Pi -д SSHing хийх нь маш хялбар бөгөөд маш ашигтай, учир нь энэ процесс нь WiFi холболтоос өөр ямар ч компьютерээс өөрийн Pi руу тушаал өгөх боломжийг олгодог.
Pi руу SSH оруулахын тулд та эдгээр 3 энгийн алхамыг дагаж мөрдөх хэрэгтэй.
Нэгдүгээрт, та Pi дээр SSH -ийг идэвхжүүлэх хэрэгтэй. Үүнийг хийхийн тулд Pi дээрээ командын цонх нээгээд дараах үгийг бичнэ үү.
sudo raspi-config
Энэ тушаал нь тохиргооны цэс рүү орох боломжийг танд олгоно. тэндээс та сум, таб, түлхүүрүүдийг ашиглан интерфэйсийн тохиргоонд орж, дараа нь SSH, камерыг идэвхжүүлж, дараа нь pi -ээс гараад дахин ачаална уу.
Дараа нь та Pi -ийн IP хаягийг олох хэрэгтэй болно. Командын терминал дээр бичнэ үү:
sudo ifconfig
Таны IP хаяг wlan0 хэсэгт Link encap: ethernet доор байх ёстой. Дээрх демо зураг дээр IP хаяг нь 192.168.1.10 байна.
Эцэст нь та Mac дээр суулгасан терминал програмыг нээх эсвэл Windows -д зориулсан гуравдагч талын ssh програмын зааврыг олж, дагаж мөрдөх шаардлагатай болно. Терминал аппликешнд дараахийг бичнэ үү.
ssh pi@ТАНЫ IP ХАЯГ
Хэрэв та Raspi-config-д байхдаа нууц үгээ өөрчилөөгүй бол таны асуух үед оруулах нууц үг нь анхдагч нууц үг байх болно: бөөрөлзгөнө.
Тэндээс та явахдаа сайн байх ёстой!
Алхам 3: Boot дээр IP хаягаа имэйлээр илгээх
Энэ алхам дээр бид таны сүлжээнд байгаа эсэхээс үл хамааран Raspberry Pi рүү хэрхэн нэвтрэх талаар анхаарлаа хандуулах болно. Сүлжээнээс хамааран Pi -ийн IP хаяг өөрчлөгддөг. Хэрэв танд монитор тохиргоо байхгүй бол та хөдөлгөөнийг илрүүлэх протоколыг идэвхжүүлэх, хөдөлгөөний тохиргоог өөрчлөх эсвэл төхөөрөмж дээрх бусад зүйлд хандахын тулд Pi руу ssh оруулах хэрэгтэй болно. Энэ асуудлыг шийдэхийн тулд бид Python скриптийг бичиж эхлэх үед Pi -ийн одоогийн IP хаягийг бидэнд илгээнэ. Питон скрипт нь дараах байдалтай байгаа бөгөөд "дэвсгэр" гэсэн тэмдэглэгээ бүхий санд хадгалагдаж байсан.
#гэрийн лавлахаас эхлүүлэх
cd ~
#дэвсгэр хавтас үүсгэх
mkdir дэвсгэр
#питон скрипт үүсгэх
sudo нано emailip.py
emailip.py дээр #бичих
импортын сокет
s = socket.socket (socket. AF_INET, socket. SOCK_DGRAM)
s.connect (("8.8.8.8", 80))
хэвлэх (s.getsockname () [0]) x = s.getsockname () [0] s.close ()
smtplib импортлох
имэйлээс. MIMEM Multipart импортлох MIMEMultipart
имэйлээс. MIMEText импортлох MIMEText
fromaddr = "ТАНЫ ХАЯГ"
toaddr = "ХАЯГ ХҮЛЭЭЖ БАЙНА"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "IP хаяг"
body = xmsg.attach (MIMEText (үндсэн, 'энгийн'))
сервер = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ТАНЫ НУУЦ ҮГ")
текст = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
#Дараа нь үүнийг дахин ачаалах үед үүнийг хийдэг
sudo нано /etc/rc.local
#etc/rc.local -д ороорой
байхад! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';
унтах 3
хийсэн
_IP = $ (хостын нэр -I) || үнэн
хэрэв ["$ _IP"]; дараа нь
printf "Миний IP хаяг бол %s / n" "$ _IP"
python /home/pi/Background/emailip.py &
fi
гарах 0
#тэгээд та дууссан
Алхам 4: Хөдөлгөөнийг суулгах, тохируулах
#pi шинэчлэх
sudo apt-get update
sudo apt-get шинэчлэлт
#татаж авах
sudo apt-get суулгах хөдөлгөөн
#одоо энэ файлыг дараах өөрчлөлтүүдээр засаарай
sudo нано /etc/motion/motion.conf
#Энэ хичээлийн стандартыг тогтоохын тулд өөрчилнө үү
#################
демон асаалттай байна
stream_localhost унтраалттай байна
webcontrol_localhost унтраалттай байна
ffmpeg_output_movies асаалттай байна
target_dir/var/lib/хөдөлгөөн
##################
#орон нутгийн вэб хөтчийн дамжуулах сонголтууд
##################
stream_maxrate 100 #Энэ нь бодит цаг хугацаанд дамжуулах боломжтой боловч илүү их зурвасын өргөн, нөөц шаарддаг
framerate 60 #Энэ нь секундэд 60 кадр авах боломжийг олгоно #энэ нь өндөр байх тусам видео боловсруулалт удааширна
өргөн 640 #Энэ нь харуулсан зургийн өргөнийг өөрчилдөг
өндөр 480 #Энэ нь харуулсан зургийн өндрийг өөрчилдөг
##################
видео имэйлийн тохиргоог…/motion.conf
##################
Шугамын урд байгаа ";" -г устга, цэг таслал нь мөрийг тайлбарлана
on_event_start python /home/pi/background/motionalert.py %f
on_movie_end python /home/pi/background/motionvid.py %f
##################
#ид шид
##################
Файлд тайлбарласан #сонголтууд
output_pictures locate_motion_style
##################
#дараа нь өөрчил
sudo нано/etc/анхдагч/хөдөлгөөн
#хэлэх
start_motion_daemon = тийм
#сүүлд, B **** -г эхлүүлээрэй
sudo үйлчилгээний хөдөлгөөн эхлэх
#та тушаалыг "зогсоох" эсвэл "дахин эхлүүлэх" болгож өөрчилж болно.
Алхам 5: Илрүүлэх хөдөлгөөнөөс видеог имэйлээр илгээх
Хөдөлгөөн илрэх үед имэйл илгээх:
#гэртээ эхэл
dircd ~
#хөдөлгөөнт дохио өгөх питон скрипт үүсгэх
sudo нано/home/pi/background/motionalert.py
#бичих
smtplib импортлох
datetime -аас datetime импортлох
имэйлээс. MIMEM Multipart импортлох MIMEMultipart
имэйлээс. MIMEText импортлох MIMEText
fromaddr = "YOURADDRESS"
toaddr = "RECIEVINGADDRESS"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Хөдөлгөөнийг илрүүлсэн"
body = 'Хөдөлгөөн илэрсэн. / nХугацаа: % s' % str (datetime.now ())
msg.attach (MIMEText (үндсэн, 'энгийн'))
сервер = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "YOURPASSWORD")
текст = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
Имэйл Видео хадгалагдах үеийн хөдөлгөөний видео:
#эхлэх homedircd ~
#хөдөлгөөнт видео python скрипт үүсгэх nano /home/pi/background/motionvid.py
smtplib импортлох
имэйлээс. MIMEM Multipart импортлох MIMEMultipart
имэйлээс. MIMEText импортлох MIMEText
имэйлээс. MIMEBase импортлох MIMEBase
имэйлийн импортын кодлогчоос
fromaddr = "ТАНЫ ИМЭЙЛ"
toaddr = "ТАНД ИЛҮҮЛСЭН МЭЙЛ ХАЯГ"
msg = MIMEMultipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Хөдөлгөөнт камер идэвхжсэн"
бие = "Хөдөлгөөний бичлэгийг илрүүлсэн"
msg.attach (MIMEText (үндсэн, 'энгийн'))
импортлох os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
filelist = [f for f in filelist in os.path.isfile (f)]
хамгийн сүүлийн = хамгийн их (файлын жагсаалт, түлхүүр = lambda x: os.stat (x).st_mtime)
файлын нэр = хамгийн шинэ
импортлох os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) for f in os.listdir (rootpath)]
filelist = [f for f in filelist in os.path.isfile (f)]
хамгийн сүүлийн = хамгийн их (файлын жагсаалт, түлхүүр = lambda x: os.stat (x).st_mtime)
хавсралт = нээлттэй (хамгийн сүүлийн, "rb")
хэсэг = MIMEBase ('програм', 'octet-stream')
part.set_payload ((хавсралт). унших ())
encoders.encode_base64 (хэсэг)
part.add_header ('Агуулга-Диспозиция', "хавсралт; файлын нэр = % s" % файлын нэр)
msg.attach (хэсэг)
сервер = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ТАНЫ НУУЦ ҮГ")
текст = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
Алхам 6: Алдааг олж засварлах, эх сурвалж
Алдааг олж засварлах:
Энэхүү төсөл нь олон үе шаттай байдаг тул зарим зүйл буруу болж магадгүй юм. Доорх нь гарч болзошгүй алдаанууд, тэдгээрийг хэрхэн засах талаар доор харуулав.
- Таны одоогийн IP хаягийг имэйлээр илгээхээр pi -ээ тохируулахдаа rc.local файлыг өмнө үзүүлсэн шиг засварлах нь маш чухал юм, учир нь энэ нь програмыг дахин ачаалсны дараа идэвхжихээс өмнө бага зэрэг хойшлуулах боломжийг олгодог. Үгүй бол pi нь wifi -д хараахан холбогдоогүй бөгөөд имэйл илгээхгүй болно.
- Motion.conf файлыг засварлахдаа тодорхой параметрүүдийн урд байгаа цэг таслалыг устгахаа мартуузай. Цэг таслал нь өгөгдсөн үйлдлийг дардаг тул өөрөөр хэлбэл өөрчлөлт хүчин төгөлдөр болохгүй.
- Motion.conf файл нь маш сайн зохион байгуулалттай, нарийвчилсан байдаг. Тохиргоог хүссэнээрээ өөрчилж болно, гэхдээ энэ нь хөдөлгөөн хийх системийн амжилтанд нөлөөлж болохыг ойлгоорой.
- Имэйл дохио болон имэйлийн видео сонголтыг тохируулсны дараа хөдөлгөөнийг илрүүлсэн видеоны имэйл нь анхны анхааруулах имэйлээс илгээхээс арай илүү хугацаа шаардагдах болно гэдгийг анхаарах нь чухал юм. Учир нь видео нь хөдөлгөөнийг илрүүлээгүйгээс хэдхэн секундын дараа дуусдаг бөгөөд имэйлийн хавсралт нь хүлээн авахад хэдхэн минут шаардагдах хэмжээний хэмжээтэй байж болох юм. Зарим тохиолдолд, хэрэв хөдөлгөөн маш удаан хугацаанд үргэлжлэх юм бол илгээх нь хэтэрхий том байж магадгүй юм. Ийм учраас анхны сэрэмжлүүлгийн имэйлийг хүлээн авсны дараа шууд дамжуулалтыг шалгах нь зүйтэй юм.
Яагаад хөдөлгөөн гэж ?:
Энэхүү төслийг эхлүүлэхдээ бид янз бүрийн нөөцийг авч үзсэн. Эхлээд бид бөөрөлзгөнө pi -д зориулан бүтээсэн камерын хэсэг болох PiCam -ийг ашиглах талаар бодож үзсэн. PiCam бол үнэхээр чадвартай төхөөрөмж бөгөөд олон програмтай боловч зөвхөн тусгайлан зориулагдсан програмуудыг ашиглахад хязгаарлагдмал бөгөөд хямд олон зориулалттай вэбкамертай харьцуулахад харьцангуй өндөр үнэтэй байдаг. Тиймээс энэхүү төслийг өргөн хүрээний үзэгчдэд хүртээмжтэй болгохын тулд бид ердийн USB вэбкамер ашиглахаар шийдсэн. Дараагийн асуудал нь ямар програм хангамжийг нэгтгэх тухай байв. Бид эхлээд OpenCV -ийг авч үзсэн бөгөөд энэ нь янз бүрийн төрлийн компьютерийн хараа, дүрслэл хийх боломжтой үнэгүй програм хангамж юм. Энд тулгарч буй асуудлын нэг бол OpenCV бол маш их санах ой эзэлдэг, удаан хугацаанд тохируулагдсан асар том файл юм. Тохиргоо нь хэд хэдэн үе шаттай бөгөөд алдаа гаргахад илүү их зай үлдээдэг. Бидний тодорхой төслийн хувьд Motion -ийг тохируулах, ажиллуулахад илүү хялбар боловч гүйцэтгэлийн хувьд илүү бат бөх болохыг олж мэдсэн.
Эх сурвалж
Кодын эх сурвалж:
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
Фото зургийн кредит:
SSH эмгэн:
Шуудангийн лого:
Logitech вэбкамер:
SSH цонх:
Зөвлөмж болгож буй:
Прожектор гэр дэх Raspberry Pi хөдөлгөөн мэдрэгч камер: 3 алхам
Прожекторын гэрт байгаа Raspberry Pi -ийн хөдөлгөөн мэдрэгч камер: Би Raspberry Pi -ийг хэсэг хугацаанд янз бүрийн зүйлд ашигладаг байсан боловч голчлон шууд дамжуулалтыг алсаас харах чадвартай байхад гэрийг маань хянах зориулалттай камерын камер болгон ашигладаг байсан. мөн зураг дарсан имэйл хүлээн авах болно
Raspberry Pi бүхий хөдөлгөөн өдөөгдсөн камер: 6 алхам
Raspberry Pi бүхий хөдөлгөөнт камер: HC-SR501 идэвхгүй хэт улаан туяаны мэдрэгч бүхий бөөрөлзгөнө Pi нь хэрэмний гадаад төрхийг илрүүлж, дараа нь SONY A6300-ийг ажиллуулж, видеог хамгийн сайн өнцөг, зайд бичнэ
ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: 5 алхам (зурагтай)
ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: Энэ нийтлэлд би дараахь зүйлийг танилцуулах болно: LED нь гар чийдэн хийхдээ хязгаарлагдмал гүйдэлтэй байх ёстой бөгөөд зөөврийн батерейгаар ажилладаг гэрэл асаах, мөн LED -ийг MQTT -ээр гэрэлтүүлэх мөн хэрхэн яаж хийх тухай товч тайлбар
Гэрэл мэдрэгч бүхий хөдөлгөөн идэвхжүүлсэн гэрлийн унтраалга: 5 алхам
Гэрэл мэдрэгч бүхий хөдөлгөөнт идэвхжүүлсэн гэрлийн унтраалга: Хөдөлгөөн идэвхжүүлсэн гэрлийн унтраалга нь гэртээ болон албан тасалгаанд олон хэрэглээтэй байдаг. Гэсэн хэдий ч энэ нь гэрлийн мэдрэгчийг ашиглах давуу талыг бий болгосон бөгөөд ингэснээр энэ гэрлийг зөвхөн шөнийн цагаар асааж болно
Blynk мэдэгдэл бүхий хөдөлгөөн мэдрэгч (WeMos D1 Mini + HC-SR04): 4 алхам (зурагтай)
Blynk мэдэгдэл бүхий хөдөлгөөн мэдрэгч (WeMos D1 Mini + HC-SR04): Утасгүй уралдаанд энэ төслийн талаар саналаа өгнө үү. Баярлалаа! Шинэчлэлт №2 - Цөөн хэдэн өөрчлөлт (2.2 хувилбар), та мэдрэгч (хүрээ ба нэр) -ийг яг тодорхойлолтонд тохируулж болно. Түүнчлэн, заримдаа мэдрэгч буруу утгыг уншиж, мэдэгдэл илгээдэг байсан