Мазмуну:

ESP32 CAM менен иштөөнү баштоо - Wifi аркылуу ESP CAMди колдонуу менен Streaming Video - ESP32 коопсуздук камерасы долбоору: 8 кадам
ESP32 CAM менен иштөөнү баштоо - Wifi аркылуу ESP CAMди колдонуу менен Streaming Video - ESP32 коопсуздук камерасы долбоору: 8 кадам

Video: ESP32 CAM менен иштөөнү баштоо - Wifi аркылуу ESP CAMди колдонуу менен Streaming Video - ESP32 коопсуздук камерасы долбоору: 8 кадам

Video: ESP32 CAM менен иштөөнү баштоо - Wifi аркылуу ESP CAMди колдонуу менен Streaming Video - ESP32 коопсуздук камерасы долбоору: 8 кадам
Video: $5 WiFi Camera Setup | ESP32 Wifi Setup view on Mobile phone 2024, Декабрь
Anonim
ESP32 CAM менен иштөөнү баштоо | Wifi аркылуу ESP CAMди колдонуу менен Streaming Video | ESP32 коопсуздук камерасы долбоору
ESP32 CAM менен иштөөнү баштоо | Wifi аркылуу ESP CAMди колдонуу менен Streaming Video | ESP32 коопсуздук камерасы долбоору

Бүгүн биз бул жаңы ESP32 CAM тактасын кантип колдонууну жана аны коддоону жана аны коопсуздук камерасы катары колдонууну жана wifi аркылуу агымдык видеону кантип алууну үйрөнөбүз.

1 -кадам: Сизге керектүү нерселер

Сиз керек
Сиз керек
Сиз керек
Сиз керек

Баштоодон мурун, сизде төмөнкү нерселер бар экенине ынанууңуз керек: ESP 32 CAM:

FTDI:

2 -кадам: ESP32 Arduino IDE орнотуусу

ESP32 Arduino IDE орнотуу
ESP32 Arduino IDE орнотуу

Компьютериңизде Arduino IDE бар экенине жана Arduino IDEге ESP32 такталарын орнотконуңузга ишениңиз, эгер андай эмес болсо, анда аны орнотуу үчүн менин төмөнкү көрсөтмөлөрүмдү аткарыңыз.:

3 -кадам: ESP32 CAM тактасынын өзгөчөлүктөрү

ESP32 CAM тактасынын өзгөчөлүктөрү
ESP32 CAM тактасынын өзгөчөлүктөрү

Эч нерсе кылардан мурун, сиз ESP32 CAM тактасынын спецификациясын жана pinout ж.б. билишиңизди текшериңиз, жана бул сүрөттүн сүрөтү кошулганда, төмөндөгү шилтемени караңыз жана ESP32 CAM тактасынын өзгөчөлүктөрү берилген: Эң кичинекей 802.11b/g/n Wi-Fi BT SoC модулу Lowpower 32-бит CPU, ошондой эле 160 МГцке чейинки ылдамдыкта, 600 DMIPSке чейин кыскача эсептөө кубаттуулугуна чейин камтылган 520 KB SRAM, тышкы 4MPSRAM UART/SPI/I2C/PWM/ADC/DACSupport OV2640 жана OV7670 камераларын, камтылган флэш чырагы Сүрөттү WiFI жүктөө Колдоо TF картасы Бир нече уктоо режимин колдойт Камтылган Lwip жана FreeRTOS STA/AP/STA+AP иштөө режимин колдоо Smart Config/AirKiss технологиясын колдоо Сериялык порт жергиликтүү жана алыскы программалык камсыздоону жаңыртууну колдоо (FOTA) Pins: microSD карта окурмандар үчүн колдонулат: CLKGPIO 15: CMDGPIO 2: Data 0GPIO 4: Data 1 (ошондой эле борттогу LEDге туташкан) GPIO 12: Data 2GPIO 13: Data 3

4 -кадам: Бардыгын бирге туташтырыңыз

Бардыгын Биригүү
Бардыгын Биригүү

Бул нерсени программалоо үчүн биз FTDI/usbди бул нерсени программалоо үчүн ttlге туташтырышыбыз керек, анткени бул тактада бирөө жок.

5 -кадам: Кодду алуу

Сиздин Arduino IDEде, Файл> Мисалдар> ESP32> Камерага өтүңүз жана CameraWebServer мисалын ачыңыз. ЖЕ төмөнкү кодду колдонуп, төмөнкү кодду көчүрүңүз: #include "esp_camera.h" #include #include "esp_timer.h" #"img_converters.h" кошуу include "dl_lib.h" #include "esp_http_server.h" // Тармагыңыздын ишеним грамотасы менен алмаштырыңыз char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD";#define PART_B000098 "This is00007 AI Thinker модели, M5STACK PSRAM болсо аныкталат (CAMERA_MODEL_WROVER_KIT) модели жана M5STACK ЖОК PSRAM # CAMERA_MODEL_AI_THINKER // # CAMERA_MODEL_M5STACK_PSRAM // # CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // Not бул моделдин // # 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 аныкталган (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 аныкталган (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 #аныктоо Y8_GPIO_NUM 36 #аныктоо Y7_GPIO_NUM 18 #аныктоо 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 аныкталган (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 22#башка#ката "Камера модели тандалган жок" #endifstatic const char* _STREAM_CONTENT_TYPE = "multipart/x-mixed-replace; border =" PART_BOUNDARY; static const char* _STREAM_BOUNDARY = "\ r / n--" PART_BOUNDARY "\ r / n "; static const char * _STREAM_PART =" Мазмун түрү: image/jpeg / r / nМазмун-Узундук: %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 (талап, _STREAM_CONTENT_TYPE); if (res! = ESP_OK) {return res; } while (true) {fb = esp_camera_fb_get (); if (! fb) {Serial.println ("Камерага тартуу ишке ашкан жок"); res = ESP_FAIL; } else {if (fb-> width> 400) {if (fb-> format! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp

6 -кадам: Кодду жүктөө

Кодду жүктөө
Кодду жүктөө

Кодду алгандан кийин, сиз кодду жүктөшүңүз керек жана ал кодду жүктөө үчүн бир нече жөндөөнү талап кылат, андыктан жүктөө учурунда төмөнкү нерсени кылганыңызды текшериңиз, анткени анын кучакташуу коду кадимки ыкма менен жүктөлбөйт. ESP32 Wrover модулун тандаңыз Куралдар> Портко өтүңүз жана ESP32 туташкан COM портун тандаңыз Куралдар> Бөлүү схемасында, "Зор APP (3MB No OTA)" кодун жүктөөдөн мурун, сиз төмөнкү бөлүмгө wifi грамоталарын киргизишиңиз керек код: const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; жана туура камера модулун тандап алганыңызды текшериңиз. Бул жерде биз AI-THINKER моделин колдонуп жатабыз, андыктан төмөнкүлөрдү тандаңыз башка моделдер жана буга комментарий бербеңиз: #define CAMERA_MODEL_AI_THINKER ESP32-CAM борттогу RESET баскычын басыңыз Андан кийин кодду жүктөө үчүн жүктөө баскычын басыңыз.

7 -кадам: IP алуу

IP алуу
IP алуу

GPIO0 & GND ортосунда туташкан секиргичти алып салыңыз, Serial Monitorду жүктөө ылдамдыгы менен ачыңыз: 115200 & андан кийин ESP32-CAM Reset баскычын басыңыз жана IP пайда болорун күтүп, бир нече секунд күтө туруңуз. караңыз, мен IP дарегимди алдым жана ал сүрөттө баса белгиленген.

8 -кадам: Wifi Streaming Video алуу

Wifi Streaming Video алуу
Wifi Streaming Video алуу

Браузериңизди ачыңыз жана компьютериңиз ESP32 CAM менен бир тармакка туташкандыгын текшериңиз, андан кийин браузериңизге IP териңиз, андан кийин агым баскычын чыкылдатыңыз жана видео агымын аласыз жана бул жерде бир нече жөндөөлөр бар жана дагы жакшы видеону алыңыз.

Сунушталууда: