instructables Супер евтина охранителна камера с ръководство за употреба ESP32-cam
Супер евтина охранителна камера с ESP32-cam
от Джовани Аджиустатуто
Днес ще изградим тази камера за видеонаблюдение, която струва само 5 €, като пица или хамбургер. Тази камера е свързана с WiFi, така че ще можем да контролираме дома си или това, което камерата вижда от телефона навсякъде, или в локалната мрежа, или отвън. Ще добавим и мотор, който кара камерата да се движи, за да можем да увеличим ъгъла, който камерата може да гледа. Освен че се използва като охранителна камера, камера като тази може да се използва за много други цели, като например проверка дали 3D принтер работи правилно, за да го спре в случай на проблеми. Но сега, нека да започнем
За да видите повече подробности за този проект, гледайте видеоклипа в моя YouTube канал (на италиански е, но има Английски субтитри).
Консумативи:
За да изградим тази камера, ще ни трябва ESP32 cam board, малката камера, която се доставя с нея, и USB към сериен адаптер. Платката за камери ESP32 е обикновен ESP32 с тази малка камера върху нея, всичко в една печатна платка. За тези, които не знаят, ESP32 е програмируема платка, подобна на Arduino, но с много по-мощен чип и възможност за свързване към WiFi. Ето защо в миналото съм използвал ESP32 за различни проекти за интелигентен дом. Както ви казах преди, платката за камери ESP32 струва около 5 евро на Aliexpress.
В допълнение към това ще ни трябва:
- серво мотор, който е двигател, който може да достигне специфичен ъгъл, който му се съобщава от микроконтролера
- някои жици
инструменти:
- поялник (по избор)
- 3D принтер (по избор)
Да видим какво вижда камерата от телефона или компютъра и да снимаме ще ползваме Домашен асистент и ESPhome, но ще говорим за това по-късно.
Стъпка 1: Подготовка на ESP32-cam
Първо трябва да свържете камерата към платката с малкия конектор, който е много чуплив. След като поставите конектора, можете да спуснете лоста. След това закрепих камерата отгоре на дъската с парче двойнозалепваща лента. Камерата ESP32 също има възможност за поставяне на micro SD и въпреки че няма да я използваме днес, тя ни позволява да правим снимки и да ги запазваме директно там.
Стъпка 2: Качване на код
Обикновено Arduino и ESP платките имат и usb букса за зареждане на програмата от компютъра. Този обаче няма usb букса, така че за да го свържете към компютъра, за да заредите програмата, ви трябва usb-to-serial адаптер, който комуникира с чипа директно чрез пиновете. Тази, която намерих, е направена специално за този тип платка, така че просто се свързва към щифтовете, без да се налага да правите други връзки. Въпреки това, универсалните usb към сериен адаптери също трябва да бъдат 2ne. За да заредите програмата, трябва също да свържете пин 2 към маса. За да направя това, запоих джъмпер конектор към тези два щифта. Така че, когато трябва да програмирам платката, просто поставям джъмпер между двата щифта.
Стъпка 3: Свързване на камерата към Home Assistant
Но сега нека да разгледаме софтуера, който ще управлява камерата. Както ви казах преди, камерата ще бъде свързана с Home Assistant. Home Assistant е система за домашна автоматизация, която работи локално, което ни позволява да контролираме всички наши устройства за домашна автоматизация като интелигентни крушки и контакти от един интерфейс.
За да стартирам Home Assistant, използвам стар компютър с Windows, работещ с виртуална машина, но ако го имате, можете да използвате Raspberry pi, който консумира по-малко енергия. За да видите данните от вашия смартфон, можете да изтеглите приложението Home Assistant. За да се свържа извън локалната мрежа, използвам Nabu Casa Cloud, което е най-простото решение, но не е безплатно. Има и други решения, но те не са напълно безопасни.
Така от приложението Home Assistant ще можем да видим видео на живо от камерата. За да свържем камерата с Home Assistant, ще използваме ESPhome. ESPhome е добавка, която ни позволява да свързваме ESP платки към Home Assistant чрез WiFi. За да свържете ESP32-cam към ESPhome, можете да следвате следните стъпки:
- Инсталирайте приставката ESPhome в Home Assistant
- На таблото за управление на ESPhome щракнете върху Ново устройство и върху Продължи
- Дайте име на вашето устройство
- Изберете ESP8266 или платката, която сте използвали
- Копирайте ключа за криптиране, който е даден, ще ни трябва по-късно
- Кликнете върху РЕДАКТИРАНЕ, за да видите кода на устройството
- Под esp32: поставете този код (с рамка: и тип: коментиран)
esp32
дъска: esp32cam
#рамка:
# тип: ардуино
- Под с въведете вашия wi2 ssid и парола
- За да направите връзката по-стабилна, можете да дадете на платката статичен IP адрес с този код:
Wi-Fi:
ssid: yourssid
парола: вашата wifi парола
manual_ip
# Задайте това на IP на ESP
static_ip: 192.168.1.61
# Задайте това на IP адреса на рутера. Често завършва с .1
портал: 192.168.1.1
# Подмрежата на мрежата. 255.255.255.0 работи за повечето домашни мрежи.
подмрежата: 255.255.255.0
- В края на кода поставете този:
2_камера:
име: 1 камера
външен_часовник:
щифт: GPIO0
честота: 20MHz
i2c_pins:
sda: GPIO26
scl: GPIO27
data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
vsync_pin: GPIO25
href_pin: GPIO23
pixel_clock_pin: GPIO22
power_down_pin: GPIO32
резолюция: 800×600
jpeg_quality: 10
vertical_flip: Невярно
изход:
– платформа: gpio
щифт: GPIO4
id: gpio_4
– платформа: ledc
id: pwm_изход
щифт: GPIO2
честота: 50 Hz
светлина:
– платформа: двоична
изход: gpio_4
име: Luce telecamera 1
номер:
– платформа: шаблон
Име: Серво управление
минимална_стойност: -100
максимална_стойност: 100
стъпка: 1
оптимистично: вярно
set_action:
тогава:
– servo.write:
id: my_servo
ниво: !lambda 'връщане x / 100.0;'
серво:
– id: my_servo
изход: pwm_output
преходна_дължина: 5s
Втората част от кода, под esp2_camera:, определя всички щифтове за действителната камера. След това със светлина: се де32нира светодиода на камерата. В края на кода се де2нира серво моторът и стойността, използвана от серво за задаване на ъгъла на въртене, се чете от Home Assistant с номер:.
В крайна сметка кодът трябва да изглежда така, но не поставяйте директно кода по-долу, на всяко устройство се дава различен ключ за криптиране.
дом:
име: камерата 1
esp32:
дъска: esp32cam
#рамка:
# тип: ардуино
# Активирайте дърводобив
немски:
# Активиране на API за домашен асистент
api:
криптиране:
ключ: „encryptionkey“
ота:
парола: "парола"
Wi-Fi:
ssid: „вашето име“
парола: "вашата парола"
# Активирайте резервна гореща точка (портал за прихващане) в случай, че wifi връзката е неуспешна
ап:
ssid: „Резервна гореща точка на камера-1“
парола: "парола"
captive_portal:
esp32_камера:
име: телекамера 1
външен_часовник:
щифт: GPIO0
честота: 20MHz
i2c_pins:
sda: GPIO26
scl: GPIO27
data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35] vsync_pin: GPIO25
href_pin: GPIO23
pixel_clock_pin: GPIO22
power_down_pin: GPIO32
резолюция: 800×600
jpeg_качество: 10
vertical_flip: Невярно
изход:
– платформа: gpio
щифт: GPIO4
id: gpio_4
– платформа: ledc
id: pwm_изход
щифт: GPIO2
честота: 50 Hz
светлина:
– платформа: двоична
изход: gpio_4
име: Luce telecamera 1
номер:
– платформа: шаблон
Име: Серво управление
минимална_стойност: -100
максимална_стойност: 100
стъпка: 1
оптимистично: вярно
set_action:
тогава:
– servo.write:
id: my_servo
ниво: !lambda 'връщане x / 100.0;'
Супер евтина охранителна камера с ESP32-cam: Страница 12
стъпка 4: Връзки
серво:
– id: my_servo
изход: pwm_output
преходна_дължина: 5s
- След като кодът е завършен, можем да щракнете върху Инсталиране, да свържете серийния адаптер на ESP32 към нашия компютър с USB кабел и да следвате инструкциите на екрана, за да качите кода, както видяхте в последната стъпка (доста лесно е!)
- Когато ESP32-cam е свързан към WiFi, можем да отидем в настройките на Home Assistant, където вероятно ще видим, че Home Assistant е открил новото устройство
- Кликнете върху конфигуриране и поставете там ключа за криптиране, който сте копирали преди.
След като програмата се зареди, можете премахнете джъмпера между земята и щифт 0, и захранване на платката (ако джъмперът не е премахнат, платката няма да работи). Ако погледнете регистрационните файлове на устройството, трябва да видите, че ESP32-cam се свързва с WiFi. В следващите стъпки ще видим как да конфигурирате таблото за управление на Home Assistant, за да видите видеото на живо от камерата, да преместите двигателя и да правите снимки от камерата
Стъпка 4: Връзки
След като сме програмирали ESP32, можем да премахнем USB към сериен адаптер и да захранваме платката директно от 5v пин. И в този момент на камерата липсва само корпус, в който да се монтира. Въпреки това оставянето на камерата да стои неподвижна е скучно, затова реших да добавя мотор, за да я накарам да се движи. По-конкретно, ще използвам серво мотор, който е в състояние да достигне специфичен ъгъл, който му се съобщава от ESP2. Свързах кафявия и червения проводник на сервомотора към захранването и жълтия проводник, който е сигналът, към пин 2 на ESP32. На снимката по-горе можете да видите схемите.
Стъпка 5: Изграждане на заграждението
Сега трябва да превърна тестовата верига в нещо, което прилича повече на 2nished продукт. Затова проектирах и отпечатах 3D всички части, за да направя малката кутия, в която да монтирам камерата. По-долу можете да видите 2-ри .stl файлове за 2D печат. След това запоих кабелите за захранването и сигнала на серво мотора към щифтовете на ESP3. За да свържа конектора на сервомотора, запоих конектор за джъмпер към проводниците. Така че веригата е завършена и както виждате е доста проста.
Прекарах сервомотора и захранващите кабели през дупките на малката кутия. След това залепих камерата ESP32 към капака, подравнявайки камерата с отвора. Монтирах серво мотора върху скобата, която ще държи камерата нагоре, и го закрепих с два болта. Закрепих скобата към кутийката с два винта, така че камерата да може да се накланя. За да предпазя винтовете вътре от докосване на кабелите, ги защитих с термосвиваеми тръби. След това затворих капака с камерата с четири винта. На този етап остава само да се сглоби основата. Прокарах вала на серво мотора през отвора в основата и завинтх малкото рамо към вала. След това залепих ръката към основата. По този начин сервомоторът може да движи камерата на 180 градуса.
И така завършихме изграждането на камерата. За да го захранваме, можем да използваме всяко 2v захранване. С помощта на отворите в основата можем да завием камерата към стена или дървена повърхност.
Стъпка 6: Настройване на таблото за управление на Home Assistant
За да видите видеото на живо от камерата, преместете мотора, включете светодиода и преместете мотора от интерфейса на Home Assistant, имаме нужда от четири карти в таблото за управление на Home Assistant.
- Втората е карта за преглед на картина, която позволява да видите видео на живо от камерата. В настройките на картата просто изберете обекта на камерата и задайте Камера View на автоматично (това е важно, защото ако го настроите на живо, камерата винаги изпраща видеото и прегрява).
- След това имаме нужда от бутон за правене на снимки от камерата. Това е малко по-трудно. Първо трябва да влезем в File Добавката за редактор (ако я нямате можете да я инсталирате от магазина за добавки) в папка con2g и създайте нова папка за запазване на снимките, в случая наречена камера. Кодът на текстовия редактор за бутона е по-долу.
ow_name: вярно
show_icon: вярно
тип: бутон
tap_action:
действие: call-service
услуга: камера.моментна снимка
данни:
fileиме: /config/camera/telecamera_1_{{ now().strftime(“%Y-%m-%d-%H:%M:%S”) }}.jpg
#променете името на обекта по-горе с името на обекта на вашата камера
цел:
entity_id:
– camera.telecamera_1 #променете името на обекта с името на обекта на вашата камера
име: Направете снимка
icon_height: 50px
икона: mdi:камера
задържане_действие:
действие: не
- Камерата също има светодиод, дори и да не може да освети цяла стая. За това използвах друга карта с бутони, която превключва обекта на светодиода, когато е натиснат.
- Последната карта е карта на обекти, която настроих с обекта на серво мотора. Така че с тази карта имаме много прост плъзгач за управление на ъгъла на мотора и за преместване на камерата.
Организирах картите си във вертикален стек и в хоризонтален стек, но това не е задължително. Вашето табло обаче трябва да изглежда подобно на показаното на снимката по-горе. Разбира се, можете да персонализирате картите още повече, за да отговарят на вашите нужди.
Стъпка 7: Работи!
Най-накрая камерата работи и в приложението Home Assistant мога да видя какво вижда камерата в реално време. От приложението мога също така да накарам камерата да се движи, като преместя плъзгача, за да гледам по-голямо пространство. Както казах преди, камерата също има LED, въпреки че светлината, която прави, не ви позволява да виждате през нощта. От приложението можете да правите снимки от камерата, но не можете да правите видеоклипове. Направените снимки могат да се видят в папката, която сме създали преди в Home Assistant. За да изведете камерата на следващото ниво, можете да свържете камерата към сензор за движение или сензор за отваряне на врата, който, когато засече движение, ще направи снимка с камерата.
И така, това е камерата за сигурност ESP32 cam. Това не е най-модерната камера, но за тази цена не можете да намерите нещо по-добро. Надявам се, че това ръководство ви е харесало и може би ви е било полезно. За да видите повече подробности за този проект, можете да гледате видеоклипа в моя YouTube канал (то е на италиански, но има английски субтитри).
Документи / Ресурси
![]() |
instructables Супер евтина охранителна камера с ESP32-cam [pdf] Ръководство за употреба Супер евтина охранителна камера с ESP32-cam, супер евтина охранителна камера, ESP32-cam, евтина охранителна камера, охранителна камера, камера |