Innehållsförteckning:

Komma igång med ESP32 CAM - Strömmande video med ESP CAM över wifi - ESP32 säkerhetskameraprojekt: 8 steg
Komma igång med ESP32 CAM - Strömmande video med ESP CAM över wifi - ESP32 säkerhetskameraprojekt: 8 steg

Video: Komma igång med ESP32 CAM - Strömmande video med ESP CAM över wifi - ESP32 säkerhetskameraprojekt: 8 steg

Video: Komma igång med ESP32 CAM - Strömmande video med ESP CAM över wifi - ESP32 säkerhetskameraprojekt: 8 steg
Video: How to setup and use ESP32 Cam with Micro USB WiFi Camera 2024, Juni
Anonim
Komma igång med ESP32 CAM | Strömmande video med ESP CAM över wifi | ESP32 säkerhetskameraprojekt
Komma igång med ESP32 CAM | Strömmande video med ESP CAM över wifi | ESP32 säkerhetskameraprojekt

Idag lär vi oss hur man använder det här nya ESP32 CAM -kortet och hur vi kan koda det och använda det som en säkerhetskamera och få en strömmande video över wifi.

Steg 1: Saker du behöver

Saker du behöver
Saker du behöver
Saker du behöver
Saker du behöver

Innan vi börjar se till att du har följande saker med dig: ESP 32 CAM:

FTDI:

Steg 2: ESP32 Arduino IDE Setup

ESP32 Arduino IDE -inställning
ESP32 Arduino IDE -inställning

Se till att du har Arduino IDE i din dator och att du har installerat ESP32 -kort i din Arduino IDE, och om det inte är fallet, följ följande instruktioner för att installera det.:

Steg 3: ESP32 CAM -kortspecifikationer

ESP32 CAM -kortspecifikationer
ESP32 CAM -kortspecifikationer

Innan vi går för att göra något, se till att du känner till specifikation och pinout etc för ESP32 CAM-kort, och för att pinout-bild läggs till, se det och specifikationerna för ESP32 CAM-kort ges nedan: Den minsta 802.11b/g/n Wi-Fi BT SoC-modulLowpower 32-bitars CPU, kan också betjäna applikationsprocessornUpp till 160MHz klockhastighet, sammanfattande datorkraft upp till 600 DMIPS Inbyggd 520 KB SRAM, extern 4MPSRAM Stöder UART/SPI/I2C/PWM/ADC/DACSupport OV2640 och OV7670 kameror, inbyggd blixtlampa Stödbild WiFI-uppladdning TF-kort Stöder flera vilolägen Inbyggda Lwip och FreeRTOS Stöder STA/AP/STA+AP-driftsläge Stöd för Smart Config/AirKiss-teknik Stöd för seriell port lokala och fjärruppgraderingar av fast programvara (FOTA) Stift som används för microSD-kortläsare: GPIO 14: CLKGPIO 15: CMDGPIO 2: Data 0GPIO 4: Data 1 (även ansluten till den inbyggda lysdioden) GPIO 12: Data 2GPIO 13: Data 3

Steg 4: Anslut allt tillsammans

Anslut allt tillsammans
Anslut allt tillsammans

För att programmera den här saken måste vi ansluta en FTDI/usb till ttl för att programmera den här saken eftersom den här tavlan inte har en. Så anslut Ftdi/usb till ttl enligt schmatics.

Steg 5: Skaffa koden

I din Arduino IDE, gå till Arkiv> Exempel> ESP32> Kamera och öppna CameraWebServer -exemplet. ELLER du kan använda följande angivna kod, kopiera följande kod: #include "esp_camera.h" #include #include "esp_timer.h" #include "img_converters.h" #include "Arduino.h" #include "fb_gfx.h" #include "soc/soc.h" // inaktivera brownout -problem#inkludera "soc/rtc_cntl_reg.h" // inaktivera brownout -problem# inkludera "dl_lib.h" #include "esp_http_server.h" // Ersätt med ditt nätverksuppgifter sconst char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD";#definiera PART_BOUNDARY "123456789000000000000 AI Tänkaren Modell, M5STACK PSRAM Modell och M5STACK UTAN PSRAM # definierar CAMERA_MODEL_AI_THINKER // # definierar CAMERA_MODEL_M5STACK_PSRAM // # definierar CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // Ej testad med denna modell // # definierar CAMERA_MODEL_WROVER_KIT # om den har definierats (CAMERA_MODEL_WROVER_KIT) #define PWDN_GPIO_NUM -1 #define RESET_GPIO_NUM -1 #define 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 definierats (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 definierats (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 definierats (CAMERA_MODEL_AI_THINKER) #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 #define XCLK_GPIO_NUM 0 # definiera 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 #error "Kameramodell inte vald" #endifstatic const char* _STREAM_CONTENT_TYPE = "multipart/x-mixed-replace; boundary =" PART_BOUNDARY; static const char* _STREAM_BOUNDARY = "\ r / n--" PART_BOUNDARY "\ r / n "; statisk const char * _STREAM_PART =" Innehållstyp: image/jpeg / r / nInnehållslängd: %u / r / n / r / n "; httpd_handle_t stream_httpd = NULL; statisk esp_err_t stream_handler (httpd_req_t * req) {kamera_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 (req, _STREAM_CONTENT_TYPE); if (res! = ESP_OK) {return res; } medan (true) {fb = esp_camera_fb_get (); om (! fb) {Serial.println ("Kamerafångning misslyckades"); res = ESP_FAIL; } annat {if (fb-> bredd> 400) {if (fb-> format! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp

Steg 6: Ladda upp koden

Ladda upp koden
Ladda upp koden

Efter att du fått koden måste du ladda upp koden och det kräver få inställningar för att ladda upp koden så se till att du gjorde följande under uppladdningen eftersom det är en kramkod så att den inte laddas upp med vanlig metod. Gå till Verktyg> Styrelse och välj ESP32 Wrover Module Gå till Verktyg> Port och välj COM -porten som ESP32 är ansluten till i Verktyg> Partitionsschema, välj "Enorm APP (3MB Ingen OTA)" Innan du laddar upp koden måste du ange dina wifi -uppgifter i följande del av kod: const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; och se till att du väljer rätt kameramodul. Så här använder vi AI-THINKER-modellen så välj följande Så kommentera alla andra modeller och avmarkera den här: #define CAMERA_MODEL_AI_THINKERTryck på ESP32-CAM inbyggd RESET-knapp Klicka sedan på uppladdningsknappen för att ladda upp koden.

Steg 7: Skaffa IP -adressen

Skaffa IP
Skaffa IP

Ta bort bygeln som är ansluten mellan GPIO0 & GND och öppna sedan seriell bildskärm med överföringshastighet: 115200 och tryck sedan på ESP32-CAM Reset-knappen och vänta tills IP-adressen visas och vänta i några sekunder och tryck sedan på reset igen. se jag fick min IP och det markeras i bilden.

Steg 8: Skaffa Wifi Streaming Video

Skaffa Wifi Streaming Video
Skaffa Wifi Streaming Video

Öppna din webbläsare och se till att din dator är ansluten till samma nätverk som ESP32 CAM och skriv sedan in IP -adressen i din webbläsare, klicka sedan på strömknappen så får du din videoström och det finns också få inställningar här så att du kan prova dem och få en bättre video också.

Rekommenderad: