Mundarija:

ESP32 CAM bilan ishlashni boshlash - Wifi orqali ESP CAM yordamida video oqim - ESP32 xavfsizlik kamerasi loyihasi: 8 qadam
ESP32 CAM bilan ishlashni boshlash - Wifi orqali ESP CAM yordamida video oqim - ESP32 xavfsizlik kamerasi loyihasi: 8 qadam

Video: ESP32 CAM bilan ishlashni boshlash - Wifi orqali ESP CAM yordamida video oqim - ESP32 xavfsizlik kamerasi loyihasi: 8 qadam

Video: ESP32 CAM bilan ishlashni boshlash - Wifi orqali ESP CAM yordamida video oqim - ESP32 xavfsizlik kamerasi loyihasi: 8 qadam
Video: Controlling 2 DC Motors using ESP32 and L298N Motor driver 2024, Iyul
Anonim
ESP32 CAM bilan ishlashni boshlash | Wi -Fi orqali ESP CAM yordamida video oqimi | ESP32 xavfsizlik kamerasi loyihasi
ESP32 CAM bilan ishlashni boshlash | Wi -Fi orqali ESP CAM yordamida video oqimi | ESP32 xavfsizlik kamerasi loyihasi

Bugun biz ushbu yangi ESP32 CAM kartasini qanday ishlatishni va uni qanday kodlashimiz va uni xavfsizlik kamerasi sifatida ishlatishni va wifi orqali oqimli videoni olishni o'rganamiz.

1 -qadam: Sizga kerak bo'lgan narsalar

Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar

Ishni boshlashdan oldin sizda quyidagi narsalar borligiga ishonch hosil qiling: ESP 32 CAM:

FTDI:

2 -qadam: ESP32 Arduino IDE -ni sozlash

ESP32 Arduino IDE -ni sozlash
ESP32 Arduino IDE -ni sozlash

Shaxsiy kompyuteringizda Arduino IDE borligiga va Arduino IDE -ga ESP32 platalarini o'rnatganingizga ishonch hosil qiling, agar bunday bo'lmasa, uni o'rnatish uchun quyidagi ko'rsatmalarga amal qiling.:

3 -qadam: ESP32 CAM kartasining xususiyatlari

ESP32 CAM kartasining xususiyatlari
ESP32 CAM kartasining xususiyatlari

Biz biror narsa qilishdan oldin, ESP32 CAM kartasining tavsifi va ajratilishi va hokazolarni bilishingizga ishonch hosil qiling va bu tasvirni qo'shish uchun ESP32 CAM kartasining tavsifi quyida keltirilgan: eng kichik 802.11b/g/n Wi-Fi BT SoC moduli 32-bitli past quvvatli protsessor, shuningdek, 160 MGts gacha bo'lgan soat tezligi, 600 DMIPSgacha yig'ma hisoblash quvvatiga ega, o'rnatilgan 520 KB SRAM, tashqi 4MPSRAM UART/SPI/I2C/PWM/ADC/DACni qo'llab-quvvatlaydi OV2640 va OV7670 kameralari, o'rnatilgan flesh chiroq Tasvirni qo'llab-quvvatlash WiFI yuklanishi Qo'llab-quvvatlash TF kartasi Ko'p uyqu rejimini qo'llab-quvvatlaydi O'rnatilgan Lwip va FreeRTOS STA/AP/STA+AP ish rejimini qo'llab-quvvatlaydi Smart Config/AirKiss texnologiyasini qo'llab-quvvatlash Seriyali portni mahalliy va masofaviy dasturiy ta'minotni yangilash (FOTA) pinlari: microSD karta o'qish uchun ishlatiladi.: CLKGPIO 15: CMDGPIO 2: Ma'lumotlar 0GPIO 4: Ma'lumotlar 1 (bortdagi LEDga ham ulangan) GPIO 12: Ma'lumotlar 2GPIO 13: Ma'lumotlar 3

4 -qadam: Hammasini bir -biriga ulang

Hamma narsani bir -biriga ulang
Hamma narsani bir -biriga ulang

Buni dasturlash uchun biz FTDI/usb -ni ttl -ga ulashimiz kerak, chunki bu karta yo'q, shuning uchun Ftdi/usb -ni ttl -ga sxema bo'yicha ulang.

5 -qadam: Kodni olish

Arduino IDE -da, Fayl> Misollar> ESP32> Kamera -ga o'ting va CameraWebServer misolini oching. Yoki quyidagi kodni ishlatib, quyidagi kodni nusxalashingiz mumkin: #include "esp_camera.h" #include #include "esp_timer.h" #include "img_converters.h" #include "Arduino.h" #include "fb_gfx.h" #include "soc/soc.h" // brownout muammolarni o'chirish#include "soc/rtc_cntl_reg.h" // brownout muammolarini o'chirish# "dl_lib.h" #include "esp_http_server.h" // Tarmoq hisob ma'lumotlari bilan almashtiring char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD";#define PART_B00009 "bilan tasdiqlangan" 1234567 " PSRAM # HOLDA AI Mutafakkir modeli, M5STACK PSRAM Model va M5STACK CAMERA_MODEL_AI_THINKER // # CAMERA_MODEL_M5STACK_PSRAM // # CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // belgilangan bo'lsa // # CAMERA_MODEL_WROVER_KIT # aniqlash ushbu model bilan sinovdan emas aniqlash aniqlash define (CAMERA_MODEL_WROVER_KIT) #define PWDN_GPIO_NUM -1 #define RESET_GPIO_NUM -1 #XCLK_Gni belgilang 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 belgilangan #define PCLK_GPIO_NUM 22 # Alif (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 # Alif belgilangan (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 #Y9_GPIO_NUM 19 -sonini belgilang #Y8_GPIO_NUM 36 -sonni belgilang #Y7_GPIO_NUM 18 -sonini belgilang #Y6_foydalaning 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 # Alif belgilangan (CAMERA_MODEL_AI_THINKER) #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 #define XCLK_GPIO_NUM 0 # 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 aniqlash 22#boshqa#xato "Kamera modeli tanlanmagan" #endifstatic const char* _STREAM_CONTENT_TYPE = "multipart/x-aralash-almashtirish; border =" PART_BOUNDARY; statik const char* _STREAM_BOUNDARY = "\ r / n--" PART_BOUNDARY "\ r / n "; statik const char * _STREAM_PART =" Kontent turi: image/jpeg / r / nMazmun-uzunlik: %u / r / n / r / n "; httpd_handle_t stream_httpd = NULL; statik esp_err_t stream_handler (httpd_req_t * req) {kamera_fb_t * f b = NULL; esp_err_t res = ESP_OK; hajmi_t _jpg_buf_len = 0; uint8_t * _jpg_buf = NULL; char * part_buf [64]; res = httpd_resp_set_type (talab, _STREAM_CONTENT_TYPE); if (res! = ESP_OK) {qaytish res; } while (rost) {fb = esp_camera_fb_get (); if (! fb) {Serial.println ("Kameraga yozib bo'lmadi"); res = ESP_FAIL; } else {if (fb-> width> 400) {if (fb-> format! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp

6 -qadam: Kodni yuklang

Kodni yuklang
Kodni yuklang

Kodni olganingizdan so'ng, siz kodni yuklashingiz kerak va kodni yuklash uchun bir nechta sozlamalar talab qilinadi, shuning uchun yuklash paytida quyidagi amallarni bajarganingizga ishonch hosil qiling, chunki uning quchoqlash kodi oddiy usul bilan yuklanmaydi. ESP32 Wrover Module -ni tanlang Asboblar> Port -ga o'ting va ESP32 ulangan MAQOMOTI portini tanlang Asboblar> Bo'linish sxemasida "Katta APP (3MB OTA yo'q)" ni yuklang, kodni yuklamasdan oldin siz wifi hisob ma'lumotlarini quyidagi bo'limga kiritishingiz kerak. kod: const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; va to'g'ri kamera modulini tanlaganingizga ishonch hosil qiling. Bu erda biz AI-THINKER modelini ishlatamiz, shuning uchun quyidagilarni tanlang. Boshqa modellar va bunga izoh bermang: #DAMINA CAMERA_MODEL_AI_THINKER ESP32-CAM bortidagi RESET tugmasini bosing Keyin kodni yuklash uchun yuklash tugmasini bosing.

7 -qadam: IP -ni olish

IP -ni olish
IP -ni olish

Keyin GPIO0 va GND o'rtasida ulangan o'tish moslamasini olib tashlang, ketma-ket monitorni yuklash tezligi bilan oching: 115200 va keyin ESP32-CAM-ni tiklash tugmachasini bosing va IP-ning paydo bo'lishini kutib turing va bir necha soniya kutib turing. qarang, men IP -ni oldim va u rasmda ko'rsatilgan.

8 -qadam: Wi -Fi oqimini olish

Wi -Fi oqimini olish
Wi -Fi oqimini olish

Brauzeringizni oching va kompyuteringiz ESP32 CAM bilan bir xil tarmoqqa ulanganligiga ishonch hosil qiling, keyin brauzerda IP -ni kiriting, keyin oqim tugmasini bosing va siz video oqimini olasiz va bu erda sozlamalar juda oz, shuning uchun siz ularni sinab ko'rishingiz mumkin. va undan ham yaxshiroq videoni oling.

Tavsiya: