Instructables Īpaši lēta drošības kamera ar ESP32-cam lietošanas pamācību
Īpaši lēta drošības kamera ar ESP32 kameru
Džovanni Adžiustatuto
Šodien būvēsim šo videonovērošanas kameru, kas maksā tikai 5€, kā pica vai hamburgers. Šī kamera ir savienota ar WiFi, tāpēc mēs varēsim kontrolēt savu māju vai to, ko kamera redz no telefona jebkurā vietā, vai nu lokālajā tīklā, vai no ārpuses. Mēs arī pievienosim motoru, kas liek kamerai kustēties, lai mēs varētu palielināt kameras skatīšanās leņķi. Papildus tam, ka šādu kameru izmanto kā drošības kameru, to var izmantot arī daudziem citiem mērķiem, piemēram, lai pārbaudītu, vai 3D printeris darbojas pareizi, lai apturētu to problēmu gadījumā. Bet tagad sāksim
Lai skatītu sīkāku informāciju par šo projektu, noskatieties video manā YouTube kanālā (tas ir itāļu valodā, bet ir subtitriem angļu valodā).
Izejmateriāli:
Lai izveidotu šo kameru, mums būs nepieciešama ESP32 kameras plate, mazā kamera, kas tiek piegādāta kopā ar to, un usb-serial adapteris. ESP32 kameras plate ir parasta ESP32 ar šo mazo kameru, viss vienā PCB. Tiem, kas nezina, ESP32 ir programmējama plate, kas līdzīga Arduino, bet ar daudz jaudīgāku mikroshēmu un iespēju pieslēgties WiFi. Tāpēc iepriekš ESP32 esmu izmantojis dažādiem viedās mājas projektiem. Kā jau es jums teicu iepriekš, ESP32 kameras dēlis Aliexpress maksā apmēram 5 eiro.
Papildus tam mums būs nepieciešams:
- servomotors, kas ir motors, kas spēj sasniegt noteiktu leņķi, ko tam paziņo mikrokontrolleris
- daži vadi
Rīki:
- lodāmurs (pēc izvēles)
- 3D printeris (pēc izvēles)
Lai redzētu, ko kamera redz no telefona vai datora, un fotografēšanai izmantosim Mājas palīgs un ESPhome, bet mēs par to runāsim vēlāk.
1. darbība: ESP32 kameras sagatavošana
Vispirms ir jāpievieno kamera ar plati ar mazo savienotāju, kas ir ļoti trausls. Kad esat ievietojis savienotāju, varat nolaist sviru. Tad es piestiprināju kameru uz tāfeles ar abpusējas lentes gabalu. ESP32 kamerai ir arī iespēja ievietot mikro SD, un, lai gan mēs to šodien neizmantosim, tā ļauj mums uzņemt attēlus un saglabāt tos tieši tur.
2. darbība: koda augšupielāde
Parasti Arduino un ESP dēļiem ir arī usb ligzda, lai ielādētu programmu no datora. Tomēr šim nav usb ligzdas, tāpēc, lai to savienotu ar datoru, lai ielādētu programmu, nepieciešams usb-serial adapteris, kas sazinās ar mikroshēmu tieši caur tapām. Tas, ko atradu, ir īpaši izgatavots šāda veida plāksnēm, tāpēc tas vienkārši savienojas ar tapām, neveidojot citus savienojumus. Tomēr universālajiem usb-seriālajiem adapteriem arī vajadzētu būt 2ne. Lai ielādētu programmu, ir arī jāsavieno kontakts 2 ar zemi. Lai to izdarītu, šīm divām tapām pielodēju džempera savienotāju. Tātad, kad man ir jāprogrammē dēlis, es vienkārši ievietoju džemperi starp divām tapām.
3. darbība. Kameras pievienošana mājas palīgam
Bet tagad apskatīsim programmatūru, kas darbosies ar kameru. Kā jau teicu iepriekš, kamera tiks savienota ar Home Assistant. Mājas palīgs ir mājas automatizācijas sistēma, kas darbojas lokāli un ļauj mums kontrolēt visas mūsu mājas automatizācijas ierīces, piemēram, viedās spuldzes un kontaktligzdas, izmantojot vienu interfeisu.
Lai palaistu Home Assistant, es izmantoju veco Windows datoru, kurā darbojas virtuālā mašīna, taču, ja jums tā ir, varat izmantot Raspberry pi, kas patērē mazāk enerģijas. Lai skatītu datus no viedtālruņa, varat lejupielādēt lietotni Home Assistant. Lai izveidotu savienojumu ārpus lokālā tīkla, es izmantoju Nabu Casa Cloud, kas ir vienkāršākais risinājums, taču tas nav bezmaksas. Ir arī citi risinājumi, taču tie nav pilnīgi droši.
Tātad no Home Assistant lietotnes varēsim redzēt kameras tiešraides video. Lai savienotu kameru ar Home Assistant, mēs izmantosim ESPhome. ESPhome ir papildinājums, kas ļauj savienot ESP plates ar Home Assistant, izmantojot WiFi. Lai ESP32 kameru savienotu ar ESPhome, varat veikt šādas darbības:
- Instalējiet spraudni ESPhome programmā Home Assistant
- ESPhome informācijas panelī noklikšķiniet uz Jauna ierīce un uz Turpināt
- Piešķiriet savai ierīcei nosaukumu
- Atlasiet ESP8266 vai izmantoto plati
- Nokopējiet sniegto šifrēšanas atslēgu, tā mums būs nepieciešama vēlāk
- Noklikšķiniet uz EDIT, lai redzētu ierīces kodu
- Zem esp32: ielīmējiet šo kodu (ar ietvaru: un ierakstiet: komentēts)
esp32
dēlis: esp32cam
#framework:
# veids: arduino
- Zem ar ievietojiet savu wi2 ssid un paroli
- Lai savienojums būtu stabilāks, varat piešķirt platei statisku IP adresi ar šo kodu:
bezvadu internets:
ssid: yourssid
parole: jūsu wifi parole
manual_ip
# Iestatiet šo uz ESP IP
static_ip: 192.168.1.61
# Iestatiet to uz maršrutētāja IP adresi. Bieži vien beidzas ar .1
vārteja: 192.168.1.1
# Tīkla apakštīkls. 255.255.255.0 darbojas lielākajā daļā mājas tīklu.
apakštīkla: 255.255.255.0
- Koda beigās ielīmējiet šo:
2_camera:
nosaukums: Telekamera 1
external_clock:
piespraude: GPIO0
frekvence: 20 MHz
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
izšķirtspēja: 800 × 600
jpeg_quality: 10
vertical_flip: Nepatiesi
izvade:
– platforma: gpio
tapa: GPIO4
id: gpio_4
– platforma: ledc
id: pwm_output
tapa: GPIO2
frekvence: 50 Hz
gaisma:
- platforma: bināra
izvade: gpio_4
nosaukums: Luce telecamera 1
numurs:
- platforma: veidne
nosaukums: Servo Control
min_vērtība: -100
maksimālā_vērtība: 100
solis: 1
optimistisks: taisnība
set_action:
tad:
– servo.write:
id: my_servo
līmenis: !lambda 'atgriešanās x / 100.0;'
servo:
- id: my_servo
izvade: pwm_output
pārejas_garums: 5s
Koda 2. daļa zem esp32_camera: atdala visas faktiskās kameras tapas. Pēc tam ar gaismu: tiek de2ned kameras LED. Koda beigās tiek norādīts servomotors, un vērtība, ko servo izmanto, lai iestatītu griešanās leņķi, tiek nolasīta no Home Assistant ar numuru:.
Galu galā kodam vajadzētu izskatīties šādi, bet neielīmējiet tieši zemāk esošo kodu, katrai ierīcei tiek piešķirta atšķirīga šifrēšanas atslēga.
telefons:
nosaukums: kamera-1
esp32:
dēlis: esp32cam
#framework:
# veids: arduino
# Iespējot mežizstrāde
ger:
# Iespējot Home Assistant API
api:
šifrēšana:
atslēga: “šifrēšanas atslēga”
ota:
parole: "parole"
bezvadu internets:
ssid: “yourssid”
parole: “jūsu parole”
# Iespējot atkāpšanās tīklāju (neizmantoto portālu), ja Wi-Fi savienojums neizdodas
ap:
ssid: “Camera-1 Fallback Hotspot”
parole: "parole"
captive_portal:
esp32_camera:
nosaukums: Telekamera 1
external_clock:
tapa: GPIO0
frekvence: 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
izšķirtspēja: 800 × 600
jpeg_quality: 10
vertical_flip: False
izvade:
- platforma: gpio
tapa: GPIO4
id: gpio_4
– platforma: ledc
id: pwm_output
tapa: GPIO2
frekvence: 50 Hz
gaisma:
- platforma: bināra
izvade: gpio_4
nosaukums: Luce telecamera 1
numurs:
- platforma: veidne
nosaukums: Servo Control
min_vērtība: -100
maksimālā_vērtība: 100
solis: 1
optimistisks: taisnība
set_action:
tad:
– servo.write:
id: my_servo
līmenis: !lambda 'atgriešanās x / 100.0;'
Īpaši lēta drošības kamera ar ESP32 kameru: 12. lpp
Solis 4: Savienojumi
servo:
- id: my_servo
izvade: pwm_output
pārejas_garums: 5s
- Kad kods ir pabeigts, mēs varam noklikšķināt uz Instalēt, savienot ESP32 seriālo adapteri ar mūsu datoru, izmantojot USB kabeli, un izpildiet ekrānā redzamos norādījumus, lai augšupielādētu kodu, kā jūs redzējāt pēdējā darbībā (tas ir diezgan vienkārši!)
- Kad ESP32 kamera ir savienota ar WiFi, mēs varam doties uz Home Assistant iestatījumiem, kur, iespējams, redzēsim, ka Home Assistant ir atklājis jauno ierīci
- Noklikšķiniet uz konfigurēt un ielīmējiet tur iepriekš kopēto šifrēšanas atslēgu.
Kad programma ir ielādēta, varat noņemiet džemperi starp zemi un tapa 0, un ieslēdziet dēli (ja džemperis nav noņemts, dēlis nedarbosies). Ja paskatās uz ierīces žurnāliem, jums vajadzētu redzēt, ka ESP32 kamera izveido savienojumu ar WiFi. Turpmākajās darbībās mēs redzēsim, kā konfigurēt Home Assistant informācijas paneli, lai redzētu tiešraides video no kameras, pārvietotu motoru un uzņemtu fotoattēlus no kameras.
4. darbība: savienojumi
Kad esam ieprogrammējuši ESP32, mēs varam noņemt usb uz seriālo adapteri un darbināt plati tieši no 5v kontakta. Un šajā brīdī kamerai trūkst tikai korpusa, kurā to uzstādīt. Tomēr atstāt kameru stāvēt ir garlaicīgi, tāpēc es nolēmu pievienot motoru, lai tā kustētos. Konkrēti, es izmantošu servomotoru, kas spēj sasniegt īpašu leņķi, ko tam paziņo ESP2. Es pievienoju servomotora brūnos un sarkanos vadus barošanas avotam un dzelteno vadu, kas ir signāls ESP2 32. tapai. Augšējā attēlā varat 2. shēmas.
5. darbība: korpusa izveidošana
Tagad man ir jāpārvērš testa ķēde par kaut ko, kas vairāk izskatās kā 2nished produkts. Tāpēc es izstrādāju un 3D izdrukāju visas detaļas, lai izveidotu mazo kastīti, kurā uzstādīt kameru. Tālāk varat 2. stl 2les 3D drukāšanai. Pēc tam pielodējiet barošanas avota un servomotora signāla vadus pie ESP32 tapām. Lai pieslēgtu servomotora savienotāju, pie vadiem pielodēju džempera savienotāju. Tātad ķēde ir 2nished, un, kā redzat, tā ir diezgan vienkārša.
Es izlaidu servomotoru un strāvas vadus caur mazās kastes caurumiem. Pēc tam es pielīmēju ESP32 izciļņu uz vāka, salāgojot kameru ar caurumu. Es uzstādīju servomotoru uz kronšteina, kas turēs kameru, un nostiprināju to ar divām skrūvēm. Kronšteinu piestiprināju pie mazās kastītes ar divām skrūvēm, lai kameru varētu sagāzt. Lai iekšpusē esošās skrūves nepieskartos kabeļiem, es tās aizsargāju ar termosarukuma caurulēm. Tad ar četrām skrūvēm aiztaisīju vāku ar kameru. Šajā brīdī atliek tikai salikt pamatni. Es izlaidu servomotora vārpstu caur caurumu pamatnē un pieskrūvēju mazo sviru pie vārpstas. Tad es pielīmēju roku pie pamatnes. Tādā veidā servomotors spēj pakustināt kameru par 180 grādiem.
Un tā mēs izveidojām kameru. Lai to darbinātu, mēs varam izmantot jebkuru 2 V barošanas avotu. Izmantojot pamatnē esošās atveres, varam pieskrūvēt kameru pie sienas vai koka virsmas.
6. darbība. Mājas palīga informācijas paneļa iestatīšana
Lai skatītu tiešraides video no kameras, pārvietojiet motoru, ieslēdziet LED un pārvietojiet motoru no Home Assistant saskarnes, mums ir nepieciešamas četras kartes Home Assistant informācijas panelī.
- 2. ir attēla skatiena karte, kas ļauj redzēt video tiešraidi no kameras. Kartes iestatījumos vienkārši atlasiet kameras entītiju un iestatiet Kamera View uz automātisko (tas ir svarīgi, jo, ja iestatāt to dzīvot, kamera vienmēr nosūta video un pārkarst).
- Tad mums ir nepieciešama poga, lai uzņemtu fotoattēlus no kameras. Šis ir mazliet sarežģītāks. Vispirms mums jāiet iekšā File Redaktora pievienojumprogramma (ja jums tā nav, varat to instalēt no papildinājumu veikala) mapē con2g un fotoattēlu saglabāšanai izveidojiet jaunu mapi, ko šajā gadījumā sauc par kameru. Tālāk ir norādīts pogas teksta redaktora kods.
ow_name: patiess
show_icon: taisnība
tips: poga
tap_action:
darbība: zvanu pakalpojums
pakalpojums: camera.snapshot
dati:
filenosaukums: /config/camera/telecamera_1_{{ now().strftime(“%Y-%m-%d-%H:%M:%S”) }}.jpg
#mainiet iepriekš esošās entītijas nosaukumu ar savas kameras entītijas nosaukumu
mērķis:
entity_id:
– camera.telecamera_1 #mainīt entītijas nosaukumu ar savas kameras entītijas nosaukumu
nosaukums: Uzņemiet fotoattēlu
icon_height: 50 pikseļi
ikona: mdi: kamera
hold_action:
darbība: nē
- Kamerai ir arī gaismas diode, pat ja tā nespēj apgaismot visu telpu. Šim nolūkam es izmantoju citu pogu karti, kas pārslēdz LED entītiju, kad tā tiek nospiesta.
- Pēdējā karte ir entītiju karte, ko iestatīju ar servomotora entītiju. Tātad ar šo karti mums ir ļoti vienkāršs slīdnis, lai kontrolētu motora leņķi un pārvietotu kameru.
Es sakārtoju savas kārtis vertikālā un horizontālā kaudzē, taču tas nav obligāti. Tomēr jūsu informācijas panelim vajadzētu izskatīties līdzīgi tam, kas parādīts attēlā iepriekš. Protams, jūs varat pielāgot kartes vēl vairāk, lai tās atbilstu savām vajadzībām.
7. darbība: tas darbojas!
Visbeidzot, kamera darbojas, un lietotnē Home Assistant es varu redzēt, ko kamera redz reāllaikā. Izmantojot lietotni, es varu arī likt kamerai kustēties, pārvietojot slīdni, lai skatītu lielāku telpu. Kā jau teicu iepriekš, kamerai ir arī LED, lai gan tās radītā gaisma neļauj redzēt naktī. Izmantojot lietotni, varat uzņemt attēlus no kameras, bet nevarat uzņemt video. Uzņemtos attēlus var redzēt mapē, ko esam izveidojuši iepriekš mājas palīgā. Lai paceltu kameru uz nākamo līmeni, varat savienot kameru ar kustības sensoru vai durvju atvēršanas sensoru, kas, konstatējot kustību, uzņems attēlu ar kameru.
Tātad, šī ir ESP32 kameras drošības kamera. Tā nav vismodernākā kamera, bet par šo cenu neko labāku nevar otrs. Ceru, ka jums patika šī rokasgrāmata un, iespējams, tā jums bija noderīga. Lai skatītu sīkāku informāciju par šo projektu, varat ievietot 2. videoklipu manā YouTube kanālā (tas ir itāļu valodā, bet tam ir subtitri angļu valodā).
Dokumenti / Resursi
![]() |
instructables īpaši lēta drošības kamera ar ESP32 kameru [pdfLietošanas instrukcija Īpaši lēta drošības kamera ar ESP32 kameru, īpaši lēta drošības kamera, ESP32 kamera, lēta drošības kamera, drošības kamera, kamera |