Satura rādītājs:

Darba sākšana ar ESP32 CAM - Video straumēšana, izmantojot ESP CAM, izmantojot Wifi - ESP32 drošības kameru projekts: 8 soļi
Darba sākšana ar ESP32 CAM - Video straumēšana, izmantojot ESP CAM, izmantojot Wifi - ESP32 drošības kameru projekts: 8 soļi

Video: Darba sākšana ar ESP32 CAM - Video straumēšana, izmantojot ESP CAM, izmantojot Wifi - ESP32 drošības kameru projekts: 8 soļi

Video: Darba sākšana ar ESP32 CAM - Video straumēšana, izmantojot ESP CAM, izmantojot Wifi - ESP32 drošības kameru projekts: 8 soļi
Video: 0️⃣7️⃣➖ ✅ФОРМА ПОКУПКИ - СОХРАНЕНИЕ ПОКУПОК▶️ БАЗА ДАННЫХ VISUAL BASIC .NET И SQLITE🔶 2024, Jūlijs
Anonim
Darba sākšana ar ESP32 CAM | Video straumēšana, izmantojot ESP CAM, izmantojot Wifi | ESP32 drošības kameru projekts
Darba sākšana ar ESP32 CAM | Video straumēšana, izmantojot ESP CAM, izmantojot Wifi | ESP32 drošības kameru projekts

Šodien mēs uzzināsim, kā izmantot šo jauno ESP32 CAM plati un kā mēs to varam kodēt un izmantot kā drošības kameru un iegūt straumēšanas video, izmantojot WiFi.

1. darbība. Nepieciešamās lietas

Nepieciešamās lietas
Nepieciešamās lietas
Nepieciešamās lietas
Nepieciešamās lietas

Pirms sākam, pārliecinieties, vai jums ir šādas lietas: ESP 32 CAM:

FTDI:

2. darbība: ESP32 Arduino IDE iestatīšana

ESP32 Arduino IDE iestatīšana
ESP32 Arduino IDE iestatīšana

Pārliecinieties, vai datorā ir Arduino IDE, un savā Arduino IDE esat instalējis ESP32 plates, un, ja tā nav, lūdzu, izpildiet tālāk sniegtos norādījumus, lai to instalētu.:

3. darbība: ESP32 CAM plates specifikācijas

ESP32 CAM plates specifikācijas
ESP32 CAM plates specifikācijas

Pirms mēs kaut ko darām, pārliecinieties, ka zināt ESP32 CAM plates specifikāciju un pinout u.c. BT SoC modulis Lowpower 32 bitu centrālais procesors var kalpot arī lietojumprogrammu procesoriem Līdz 160 MHz pulksteņa ātrumam, kopsavilkuma skaitļošanas jaudai līdz 600 DMIPS Iebūvēts 520 KB SRAM, ārējs 4MPSRAM Atbalsta UART/SPI/I2C/PWM/ADC/DAC Atbalsta OV2640 un OV7670 kameras, iebūvēta zibspuldze Atbalsta attēla WiFI augšupielādi Atbalsta TF karti Atbalsta vairākus miega režīmus Iebūvēts Lwip un FreeRTOS Atbalsta STA/AP/STA+AP darbības režīmu Atbalsta Smart Config/AirKiss tehnoloģiju Atbalsts seriālā porta vietējās un attālās programmaparatūras jauninājumiem (FOTA) Tapas, ko izmanto microSD karšu lasītājam: GPIO 14: CLKGPIO 15: CMDGPIO 2: Dati 0GPIO 4: Dati 1 (arī savienoti ar iebūvēto LED) GPIO 12: Dati 2GPIO 13: Dati 3

4. solis: savienojiet visu kopā

Savienojiet visu kopā
Savienojiet visu kopā

Lai ieprogrammētu šo lietu, mums ir jāpievieno FTDI/usb ar ttl, lai ieprogrammētu šo lietu, jo šai padomei tāda nav. Tāpēc savienojiet Ftdi/usb ar ttl saskaņā ar schmatics.

5. darbība: koda iegūšana

Savā Arduino IDE atveriet Fails> Piemēri> ESP32> Kamera un atveriet CameraWebServer piemēru. VAI varat izmantot šādu kodu, nokopējiet šādu kodu: #include "esp_camera.h" #include #include "esp_timer.h" #include "img_converters.h" #include "Arduino.h" #include "fb_gfx.h" #include "soc/soc.h" // atspējot izslēgšanas problēmas#include "soc/rtc_cntl_reg.h" // atspējot izslēgšanas problēmas# iekļaut "dl_lib.h" #include "esp_http_server.h" // Aizstāt ar tīkla akreditācijas datiemcon* char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* parole = "REPLACE_WITH_YOUR_PASSWORD";#define PART_BOUN0007 Šis projekts 12300 AI Domātājs modelis, M5STACK PSRAM un modelis M5STACK BEZ PSRAM # definēt CAMERA_MODEL_AI_THINKER // # definēt CAMERA_MODEL_M5STACK_PSRAM // # definēt CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // Nav pārbaudīts ar šo modeli // # definēt CAMERA_MODEL_WROVER_KIT # ja definēts (CAMERA_MODEL_WROVER_KIT) #define PWDN_GPIO_NUM -1 #define RESET_GPIO_NUM -1 #definēt XCLK_G PIO_NUM 21 #define SIOD_GPIO_NUM 26 #define SIOC_GPIO_NUM 27 #define Y9_GPIO_NUM 35 #define Y8_GPIO_NUM 34 #define Y7_GPIO_NUM 39 #define Y6_GPIO_NUM 36 #define Y5_GPIO_NUM 19 #define Y4_GPIO_NUM 18 #define Y3_GPIO_NUM 5 #define Y2_GPIO_NUM 4 #define VSYNC_GPIO_NUM 25 #define HREF_GPIO_NUM 23 #define PCLK_GPIO_NUM 22 # Elif definēts (CAMERA_MODEL_M5STACK_PSRAM) #define PWDN_GPIO_NUM -1 # define RESET_GPIO_NUM 15 #define XCLK_GPIO_NUM 27 #define SIOD_GPIO_NUM 25 #define SIOC_GPIO_NUM 23 #define Y9_GPIO_NUM 19 #define Y8_GPIO_NUM 36 #define Y7_GPIO_NUM 18 #define Y6_GPIO_NUM 39 #define Y5_GPIO_NUM 5 #define Y4_GPIO_NUM 34 #define Y3_GPIO_NUM 35 #define Y2_GPIO_NUM 32 #define VSYNC_GPIO_NUM 22 #define HREF_GPIO_NUM 26 #define PCLK_GPIO_NUM 21 # Elif definēts (CAMERA_MODEL_M5STACK_WITHOUT_PSRAM) #define PWDN_GPIO_NUM -1 # define RESET_GPIO_NUM 15 #define XCLK_GPIO_NUM 27 #define SIOD_GPIO_NUM 25 #define SIOC_GPIO_NUM 23 #define Y9_GPIO_NUM 19 #define Y8_GPIO_NUM 36 #define Y7_GPIO_NUM 18 #define Y6_ GPIO_NUM 39 #define Y5_GPIO_NUM 5 #define Y4_GPIO_NUM 34 #define Y3_GPIO_NUM 35 #define Y2_GPIO_NUM 17 #define VSYNC_GPIO_NUM 22 #define HREF_GPIO_NUM 26 #define PCLK_GPIO_NUM 21 # Elif definēts (CAMERA_MODEL_AI_THINKER) #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 # define XCLK_GPIO_NUM 0 # definēt SIOD_GPIO_NUM 26 #define SIOC_GPIO_NUM 27 #define Y9_GPIO_NUM 35 #define Y8_GPIO_NUM 34 #define Y7_GPIO_NUM 39 #define Y6_GPIO_NUM 36 #define Y5_GPIO_NUM 21 #define Y4_GPIO_NUM 19 #define Y3_GPIO_NUM 18 #define Y2_GPIO_NUM 5 #define VSYNC_GPIO_NUM 25 #define HREF_GPIO_NUM 23 #define PCLK_GPIO_NUM 22#else#kļūda "Kameras modelis nav atlasīts" #endifstatic const char* _STREAM_CONTENT_TYPE = "multipart/x-mixed-substitute; border =" PART_BOUNDARY; static const char* _STREAM_BOUNDARY = "\ r / n--" PART_BOUNDARY "\ r / n "; static const char * _STREAM_PART =" Content-Type: image/jpeg / r / nSatura garums: %u / r / n / r / n "; httpd_handle_t stream_httpd = NULL; static esp_err_t stream_handler (httpd_req_t * req) {camera_fb_t * f b = NULL; esp_err_t res = ESP_OK; size_t _jpg_buf_len = 0; uint8_t * _jpg_buf = NULL; char * part_buf [64]; res = httpd_resp_set_type (prasība, _STREAM_CONTENT_TYPE); if (res! = ESP_OK) {atgriezties res; } while (true) {fb = esp_camera_fb_get (); if (! fb) {Serial.println ("Kameras uzņemšana neizdevās"); res = ESP_FAIL; } cits {ja (fb-> platums> 400) {ja (fb-> formāts! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp

6. darbība: augšupielādējiet kodu

Augšupielādējiet kodu
Augšupielādējiet kodu

Pēc koda iegūšanas jums ir jāaugšupielādē kods, un, lai to augšupielādētu, ir nepieciešami daži iestatījumi, tāpēc pārliecinieties, ka augšupielādes laikā veicāt šādas darbības, jo tas ir apskāviena kods, tāpēc tas netiks augšupielādēts ar parasto metodi. Dodieties uz Rīki> Padome un atlasiet ESP32 Wrover Module Dodieties uz Tools> Port un atlasiet COM portu, kuram ESP32 ir pievienots. Rīki> Partition Scheme, izvēlieties “Huge APP (3MB No OTA)” Pirms koda augšupielādes jums jāievada wifi akreditācijas dati nākamajā sadaļā code: const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; un pārliecinieties, ka esat izvēlējies pareizo kameras moduli. Tā kā mēs izmantojam AI-THINKER modeli, tāpēc atlasiet sekojošo. citus modeļus un komentējiet šo: #define CAMERA_MODEL_AI_THINKERNospiediet ESP32-CAM iebūvētās RESET pogu. Pēc tam noklikšķiniet uz augšupielādes pogas, lai augšupielādētu kodu.

7. solis: IP iegūšana

IP iegūšana
IP iegūšana

Noņemiet džemperi, kas savienots starp GPIO0 un GND, tad atveriet seriālo monitoru ar pārraides ātrumu: 115200 un pēc tam nospiediet pogu ESP32-CAM Reset un pagaidiet, līdz parādās IP, pagaidiet dažas sekundes un pēc tam vēlreiz nospiediet atiestatīšanu. redzi, es saņēmu savu IP, un tas ir iezīmēts attēlā.

8. darbība: iegūstiet Wifi straumēšanas video

Iegūstiet Wifi straumēšanas video
Iegūstiet Wifi straumēšanas video

Atveriet pārlūkprogrammu un pārliecinieties, vai jūsu dators ir savienots ar to pašu tīklu kā ESP32 CAM, un pēc tam pārlūkprogrammā ierakstiet IP, pēc tam noklikšķiniet uz straumes pogas, un jūs saņemsiet savu video straumi, un šeit ir arī daži iestatījumi, lai tos varētu izmēģināt un iegūt arī labāku video.

Ieteicams: