![Камера за откриване на движение Raspberry Pi 3 с подаване на живо: 6 стъпки Камера за откриване на движение Raspberry Pi 3 с подаване на живо: 6 стъпки](https://i.howwhatproduce.com/images/003/image-7875-44-j.webp)
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36
![Камера за откриване на движение Raspberry Pi 3 с емисия на живо Камера за откриване на движение Raspberry Pi 3 с емисия на живо](https://i.howwhatproduce.com/images/003/image-7875-45-j.webp)
Въведение
В този проект ще научите как да създадете камера за откриване на движение, която ще можете да използвате като капан за камера, монитор за домашни любимци/бебета, охранителна камера и много други.
Този проект е организиран на няколко стъпки:
- Въведение
- Настройване на вашия Pi
- SSHing във вашия Pi
- Изпращане по имейл на вашия IP адрес при зареждане
- Инсталиране и настройка на Motion
- Видео по имейл от Motion при откриване
- Отстраняване на неизправности и източници
Какво ще ви трябва:
- Модел на Raspberry Pi 3 ~ ~ $ 35
- 8gb Micro SD карта ~~ $ 10
- USB уеб камера ~~ $ 20 (този проект използва Logitech HD уеб камера c270)
- micro usb кабел ~~ $ 5
- или:
- акумулаторна 5 -волтова батерия (резервна батерия на телефона), това прави вашия проект безжичен ~ ~ $ 20
- или
- USB стенен адаптер ~~ $ 5
- WiFi връзка
До какво ще ви е необходим достъп за настройка:
- Монитор
- Мишка и клавиатура
- Компютър със слот за SD карта
- Конвертор на Micro SD към SD карта (трябва да се доставя с вашата micro SD карта)
Стъпка 1: Настройка на вашия Pi
![Настройване на вашия Pi Настройване на вашия Pi](https://i.howwhatproduce.com/images/003/image-7875-46-j.webp)
Сега нека настроим вашия Pi
За да започнете, уверете се, че имате всички необходими елементи от последната стъпка. След това следвайте стъпките на уебсайта на Raspberry Pi за инсталиране на Raspbian Jessie на вашата Microsd карта, намерени тук.
След като инсталирате Raspbian на вашия Pi, е време да настроите някои основни функции.
WiFi
Първата стъпка, за да извлечете максимума от вашия Pi, е да го свържете към интернет. Може би вече сте завършили тази стъпка или като намерите символа на WiFi в горния десен ъгъл на основния екран на вашия Pi и влезете там, или правите същото, преди да инсталирате Raspbian в последната стъпка. Ако не можете да влезете във вашата WiFi мрежа от настолния интерфейс на вашия Pi, можете да следвате инструкциите тук, за да настроите WiFi чрез командния ред.
SSH
Един много удобен инструмент, с който разполагате, когато използвате своя Pi, е опцията да изпращате команди към вашия Pi в така наречената безглавна настройка. Използвайки Secure SHell или SSH, можете да управлявате своя Pi дистанционно от компютър. С този метод всичко, от което се нуждаете, за да редактирате своя Pi, е източник на захранване, за да го поддържате, няма повече монитор и клавиатура!
Стъпка 2: SSHing във вашия PI
![SSHing във вашия PI SSHing във вашия PI](https://i.howwhatproduce.com/images/003/image-7875-47-j.webp)
![SSHing във вашия PI SSHing във вашия PI](https://i.howwhatproduce.com/images/003/image-7875-48-j.webp)
SSHing във вашия Raspberry Pi е лесен и много полезен, тъй като процесът ви позволява да изпращате команди към вашия Pi от всеки компютър с нищо повече от WiFi връзка.
За да SSH във вашия Pi, трябва да следвате тези 3 прости стъпки.
Първо, трябва да активирате SSH на вашия Pi. За да направите това, отворете командния прозорец във вашия Pi и въведете:
sudo raspi-config
Тази команда ви позволява да влезете в конфигурационно меню. оттам ще искате да използвате клавишите със стрелки, раздел и въвеждане, за да влезете първо в опциите за свързване, след това да активирате SSH, както и камерата, след това да излезете и да рестартирате pi.
След това ще трябва да намерите IP адреса на вашия Pi. В командния терминал въведете:
sudo ifconfig
И вашият IP адрес трябва да е в изскачащия раздел wlan0, точно под Link encap: ethernet. В демонстрационната картина по -горе IP адресът е 192.168.1.10.
И накрая, ще трябва да отворите вграденото терминално приложение на mac или да намерите и следвате инструкциите за ssh приложение на трета страна за Windows. В приложението Terminal въведете:
ssh pi@ВАШИЯ IP АДРЕС
Ако не сте променили паролата, докато сте в Raspi-config, тогава вашата парола, която да въведете при подкана, ще бъде паролата по подразбиране: raspberry.
Оттам нататък трябва да си добре!
Стъпка 3: Изпратете по имейл вашия IP адрес при стартиране
![Изпратете по имейл вашия IP адрес при стартиране Изпратете по имейл вашия IP адрес при стартиране](https://i.howwhatproduce.com/images/003/image-7875-49-j.webp)
В тази стъпка ще се съсредоточим върху това как да получите достъп до вашия Raspberry Pi, независимо от мрежата, в която се намирате. В зависимост от мрежата IP адресът на Pi се променя. И ако нямате настройка на монитор, ще трябва да влезете в ssh в Pi, за да задействате протокола за откриване на движение, да промените предпочитанията за движение или да получите достъп до нещо друго на устройството. За да разрешим този проблем, ще напишем скрипт на python, който ще ни изпрати имейл на текущия IP адрес на Pi при стартиране. Скриптът на python е следният и се съхранява в директория, маркирана като „фон“.
#start в началната директория
cd ~
#create фонова папка
mkdir фон
#create python скрипт
sudo nano emailip.py
#write in emailip.py
гнездо за импортиране
s = socket.socket (socket. AF_INET, socket. SOCK_DGRAM)
s.connect (("8.8.8.8", 80))
print (s.getsockname () [0]) x = s.getsockname () [0] s.close ()
внос smtplib
от имейл. MIMEM Multipart импортиране MIMEMultipart
от имейл. MIMEText импортиране на MIMEText
fromaddr = "ВАШИЯТ АДРЕС"
toaddr = "ПОЛУЧАВАНЕ НА АДРЕС"
msg = MIMEM Multipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "IP адрес"
body = xmsg.attach (MIMEText (body, 'plain'))
сървър = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ВАШАТА ПАРОЛА")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
#тогава това го прави при рестартиране
sudo nano /etc/rc.local
#enter в /etc/rc.local
докато ! /sbin/ifconfig wlan0 | grep -q 'inet addr: [0-9]';
заспивай 3
Свършен
_IP = $ (име на хост -I) || вярно
if ["$ _IP"]; тогава
printf "Моят IP адрес е %s / n" "$ _IP"
python /home/pi/Background/emailip.py &
fi
изход 0
#и сте готови
Стъпка 4: Инсталиране и настройване на Motion
![Инсталиране и настройка на Motion Инсталиране и настройка на Motion](https://i.howwhatproduce.com/images/003/image-7875-50-j.webp)
#актуализира пи
sudo apt-get update
sudo apt-get надстройка
#Изтегли
sudo apt-get install motion
#сега редактирайте този файл със следните промени
sudo nano /etc/motion/motion.conf
#за да зададете стандарт за този урок, променете
#################
демон на
stream_localhost изключен
webcontrol_localhost е изключен
ffmpeg_output_movies on
target_dir/var/lib/motion
##################
#local опции за стрийминг на уеб браузър
##################
stream_maxrate 100 #Това ще позволи поточно предаване в реално време, но изисква повече честотна лента и ресурси
framerate 60 #Това ще позволи заснемането на 60 кадъра в секунда #колкото по -висока става, толкова по -бавна е видео обработката
width 640 #Това променя ширината на показваното изображение
височина 480 #Това променя височината на показваното изображение
##################
#Изпращане на видео настройки по имейл в…/motion.conf
##################
#delete the ";" пред реда, точката с запетая коментира реда
on_event_start python /home/pi/background/motionalert.py %f
on_movie_end python /home/pi/background/motionvid.py %f
##################
#астектика
##################
#choices, описани във файла
изходни снимки locate_motion_style
##################
#след това промяна
sudo nano/etc/default/motion
#да кажа
start_motion_daemon = да
#последно, стартирайте B **** нагоре
стартиране на движение на услугата sudo
#можете да промените командата на "стоп" или "рестартиране"
Стъпка 5: Изпращане по имейл на видеоклипове от движение при откриване
![Изпращане на видеоклипове по имейл от движение при откриване Изпращане на видеоклипове по имейл от движение при откриване](https://i.howwhatproduce.com/images/003/image-7875-51-j.webp)
Имейл при откриване на движение:
#започнете у дома
dircd ~
#create скрипт за предупреждение за движение python
sudo nano /home/pi/background/motionalert.py
#пиши
внос smtplib
от datetime импортиране datetime
от имейл. MIMEM Multipart импортиране MIMEMultipart
от имейл. MIMEText импортиране на MIMEText
fromaddr = "ВАШАТА АДРЕСА"
toaddr = "ПОЛУЧАВАЩА АДРЕС"
msg = MIMEM Multipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Открито движение"
body = 'Открито е движение. / nВреме: % s' % str (datetime.now ())
msg.attach (MIMEText (body, 'plain'))
сървър = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ВАШАТА ПАРОЛА")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
Изпращане по имейл Видео на движение, когато видеото е записано:
#започнете от homedircd ~
#create motion video python scriptsudo nano /home/pi/background/motionvid.py
внос smtplib
от имейл. MIMEM Multipart импортиране MIMEMultipart
от имейл. MIMEText импортиране на MIMEText
от имейл. MIMEBase импортиране на MIMEBase
от кодиращи устройства за импортиране на имейли
fromaddr = "ВАШИЯТ ИМЕЙЛ"
toaddr = "АДРЕС ПО ИМЕЙЛ, НА КОЙТО ИЗПРАЩАТЕ"
msg = MIMEM Multipart ()
msg ['From'] = fromaddr
msg ['To'] = toaddr
msg ['Subject'] = "Motion Cam активиран"
body = "Видеозапис на открито движение"
msg.attach (MIMEText (body, 'plain'))
внос os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) за f в os.listdir (rootpath)]
filelist = [f за f в списъка с файлове, ако os.path.isfile (f)]
най -ново = макс (списък с файлове, ключ = ламбда x: os.stat (x).st_mtime)
име на файл = най -нов
внос os
rootpath = '/var/lib/motion'
filelist = [os.path.join (rootpath, f) за f в os.listdir (rootpath)]
filelist = [f за f в списъка с файлове, ако os.path.isfile (f)]
най -ново = макс (списък с файлове, ключ = ламбда x: os.stat (x).st_mtime)
прикачен файл = отворен (най -нов, "rb")
part = MIMEBase ('application', 'octet-stream')
part.set_payload ((прикачен файл). read ())
енкодери.encode_base64 (част)
part.add_header ('Content-Disposition', "attachment; filename = % s" % filename)
msg.attach (част)
сървър = smtplib. SMTP ('smtp.gmail.com', 587)
server.starttls ()
server.login (fromaddr, "ВАШАТА ПАРОЛА")
text = msg.as_string ()
server.sendmail (fromaddr, toaddr, текст)
server.quit ()
Стъпка 6: Отстраняване на неизправности и източници
![Отстраняване на неизправности и източници Отстраняване на неизправности и източници](https://i.howwhatproduce.com/images/003/image-7875-52-j.webp)
Отстраняване на неизправности:
Тъй като този проект има няколко етапа, има няколко точки, в които нещата могат да се объркат. По -долу са някои от възможните грешки, които биха могли да възникнат и как да ги поправим.
- Когато настройвате своя pi, за да ви изпраща имейл текущия си IP адрес, от решаващо значение е да редактирате файла rc.local, както е показано по -рано, защото това позволява леко забавяне, преди програмата да се активира след рестартиране. В противен случай pi все още няма да бъде свързан с wifi и имейлът няма да се изпраща.
- Когато редактирате файла motion.conf, не забравяйте да изтриете запетаята пред определени параметри. Точката и запетая потискат дадено действие, така че в противен случай промяната няма да влезе в сила.
- Файлът motion.conf е много добре организиран и подробен. Не се колебайте да промените настройките по ваш вкус, но разберете, че те могат да повлияят на успеха на системата за улавяне на движение.
- След като настроите опциите за предупреждение по имейл и видео по имейл, важно е да се отбележи, че имейлът на видеото, открито при движение, ще отнеме малко повече време от изпращането от първоначалния имейл с предупреждение. Това е така, защото видеоклипът завършва няколко секунди след като движението вече не се открива, и защото прикаченият имейл може да бъде достатъчно голям, за да изисква няколко минути за получаване. В някои случаи, ако движението се поддържа за много дълъг период от време, може изобщо да е твърде голямо за изпращане. Поради това винаги е добра идея да проверите потока на живо след получаване на първоначалния имейл с предупреждение.
Защо Motion ?:
Когато за първи път се заехме с този проект, разгледахме няколко различни ресурса. Първо обмислихме използването на 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 прозорец:
Препоръчано:
Най -лесната уеб камера като охранителна камера - Откриване на движение и снимки по имейл: 4 стъпки
![Най -лесната уеб камера като охранителна камера - Откриване на движение и снимки по имейл: 4 стъпки Най -лесната уеб камера като охранителна камера - Откриване на движение и снимки по имейл: 4 стъпки](https://i.howwhatproduce.com/images/001/image-1364-40-j.webp)
Най -лесната уеб камера като камера за сигурност - Откриване на движение и снимки по имейл: Вече не е необходимо да изтегляте или конфигурирате софтуер, за да получавате картини, открити от движение от вашата уеб камера, до вашия имейл - просто използвайте браузъра си. Използвайте актуален браузър Firefox, Chrome, Edge или Opera в Windows, Mac или Android, за да заснемете снимката
Анализатор на модел на трафик, използващ откриване на обекти на живо: 11 стъпки (със снимки)
![Анализатор на модел на трафик, използващ откриване на обекти на живо: 11 стъпки (със снимки) Анализатор на модел на трафик, използващ откриване на обекти на живо: 11 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-232-249-j.webp)
Анализатор на моделите на трафика, използващ откриване на живи обекти: В днешния свят светофарите са от съществено значение за безопасен път. Въпреки това, много пъти светофарите могат да бъдат досадни в ситуации, когато някой се приближава към светлината точно когато тя става червена. Това губи време, особено ако светлината е
Стар телефон за движение на живо! Изглед от Космоса!: 4 стъпки
![Стар телефон за движение на живо! Изглед от Космоса!: 4 стъпки Стар телефон за движение на живо! Изглед от Космоса!: 4 стъпки](https://i.howwhatproduce.com/images/001/image-2557-95-j.webp)
Стар телефон за движение на живо! Изглед от Космоса !: Аз надграждам телефоните и си помислих, че трябва да има забавно използване на стария телефон … странна комбинация от Деня на Земята, дъждовен ден, конкурс Instructables за Космоса и скорошна статия за ISS HD Earth Прегледът на експеримента ме накара да събера
Откриване на движение с помощта на Raspberry Pi: 4 стъпки
![Откриване на движение с помощта на Raspberry Pi: 4 стъпки Откриване на движение с помощта на Raspberry Pi: 4 стъпки](https://i.howwhatproduce.com/images/003/image-8300-16-j.webp)
Откриване на движение с помощта на Raspberry Pi: В тази инструкция ще научим как можем да използваме PIR (пасивен инфрачервен) сензор с Raspberry Pi, за да изградим прост детектор на движение. Използва се за усещане на движение на хора, животни или други обекти. Те обикновено се използват в Бург
Guardian V1.0 --- Надграждане на камера за шпионка на вратата с Arduino (Записване на откриване на движение и функции на токов удар): 5 стъпки
![Guardian V1.0 --- Надграждане на камера за шпионка на вратата с Arduino (Записване на откриване на движение и функции на токов удар): 5 стъпки Guardian V1.0 --- Надграждане на камера за шпионка на вратата с Arduino (Записване на откриване на движение и функции на токов удар): 5 стъпки](https://i.howwhatproduce.com/images/001/image-1694-84-j.webp)
Guardian V1.0 ||| Надграждане на камера за шпионка на вратата с Arduino (Записване с откриване на движение и функции на токов удар): Поръчах камера с шпионка, но когато я използвах, разбрах, че няма функция за автоматично записване (активирана чрез откриване на движение). След това започнах да проучвам как работи. За да запишете видео, трябва 1- да задържите натиснат бутона за захранване почти 2 секунди