Índice:
- Etapa 1: Coisas que você precisa
- Etapa 2: configuração do IDE do Arduino ESP32
- Etapa 3: Especificações da placa ESP32 CAM
- Etapa 4: conecte tudo junto
- Etapa 5: Obtendo o código
- Etapa 6: faça upload do código
- Etapa 7: Obtendo o IP
- Etapa 8: Obter o vídeo de streaming wi-fi
Vídeo: Primeiros passos com ESP32 CAM - Streaming de vídeo usando ESP CAM por Wifi - Projeto de câmera de segurança ESP32: 8 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Hoje vamos aprender como usar esta nova placa ESP32 CAM e como podemos codificá-la e usá-la como uma câmera de segurança e obter um streaming de vídeo por wi-fi.
Etapa 1: Coisas que você precisa
Antes de começarmos, certifique-se de ter os seguintes itens com você: ESP 32 CAM:
FTDI:
Etapa 2: configuração do IDE do Arduino ESP32
Certifique-se de ter Arduino IDE em seu PC e de instalar placas ESP32 em seu Arduino IDE e, se não for o caso, siga as seguintes instruções minhas para instalá-lo.:
Etapa 3: Especificações da placa ESP32 CAM
Antes de fazermos qualquer coisa, certifique-se de saber as especificações e a pinagem da placa ESP32 CAM, e para a imagem da pinagem adicionada, consulte as especificações e as especificações da placa ESP32 CAM fornecidas abaixo: O menor 802.11b / g / n Wi-Fi Módulo BT SoCBaixa potência de CPU de 32 bits, também pode servir ao processador de aplicativosAté a velocidade de clock de 160 MHz, potência de computação resumida de até 600 DMIPSRAM embutida de 520 KB, 4MPSRAMSuporta externa UART / SPI / I2C / PWM / ADC / DACSupport OV2640 e câmeras OV7670, lâmpada flash embutidaSuporte imagem WiFI uploadSuporte cartão TFSuporta vários modos de hibernaçãoEmbedded Lwip e FreeRTOSSuporta modo de operação STA / AP / STA + APSuporte Smart Config / tecnologia AirKissSuporte para porta serial local e atualizações remotas de firmware (FOTA) Pinos usados para leitor de cartão microSD: GPIO 14: CLKGPIO 15: CMDGPIO 2: Dados 0GPIO 4: Dados 1 (também conectado ao LED integrado) GPIO 12: Dados 2GPIO 13: Dados 3
Etapa 4: conecte tudo junto
Para programar isso, precisamos conectar um FTDI / usb ao ttl para programar isso porque esta placa não tem um. Portanto, conecte o Ftdi / usb ao ttl de acordo com a esquemática.
Etapa 5: Obtendo o código
Em seu IDE Arduino, vá para Arquivo> Exemplos> ESP32> Câmera e abra o exemplo CameraWebServer. OU você pode usar o seguinte código fornecido, copie o seguinte código: #include "esp_camera.h" #include #include "esp_timer.h" #include "img_converters.h" #include "Arduino.h" #include "fb_gfx.h" #include "soc / soc.h" // desativar problemas de brownout # include "soc / rtc_cntl_reg.h" // desativar problemas de brownout # include "dl_lib.h" #include "esp_http_server.h" // Substitua por suas credenciais de redeconst char * ssid = "REPLACE_WITH_YOUR_SSID"; const char * password = "REPLACE_WITH_YOUR_PASSWORD"; # define PART_BOUNDARY "12345678900000000 foi testado com" 9876540000 o modelo AI pensador, M5STACK PSRAM modelo e M5STACK sEM PSRAM # definir CAMERA_MODEL_AI_THINKER // # definir CAMERA_MODEL_M5STACK_PSRAM // # definir CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // Não testado com este modelo // # # definir CAMERA_MODEL_WROVER_KIT se definida (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 definido (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 definido (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 definido (CAMERA_MODEL_AI_THINKER) #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 #define XCLK_GPIO_NUM 0 # definir 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 "Modelo de câmera não selecionado" #endifstatic const char * _STREAM_CONTENT_TYPE = "multipart / x-mixed-replace; boundary =" PART_BOUNDARY; static const char * _STREAM_BOUNDARY = "\ r / n--" PART_BOUNDARY "\ r / n "; static const char * _STREAM_PART =" Content-Type: image / jpeg / r / nContent-Length:% u / r / n / r / n "; httpd_handle_t stream_httpd = NULL; estático 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 (req, _STREAM_CONTENT_TYPE); if (res! = ESP_OK) {res de retorno; } enquanto (verdadeiro) {fb = esp_camera_fb_get (); if (! fb) {Serial.println ("Falha na captura da câmera"); res = ESP_FAIL; } else {if (fb-> width> 400) {if (fb-> format! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp
Etapa 6: faça upload do código
Depois de obter o código, você precisa fazer o upload do código e requer poucas configurações para fazer o upload do código, então certifique-se de fazer o seguinte durante o upload, pois é um código muito grande para que não seja carregado pelo método normal. Vá para Ferramentas> Painel e selecione ESP32 Wrover Module Vá para Ferramentas> Porta e selecione a porta COM à qual o ESP32 está conectado Em Ferramentas> Esquema de partição, selecione “APP enorme (3 MB sem OTA)“Antes de enviar o código, você precisa inserir suas credenciais de wi-fi na parte seguinte de código: const char * ssid = "REPLACE_WITH_YOUR_SSID"; const char * password = "REPLACE_WITH_YOUR_PASSWORD"; e certifique-se de selecionar o módulo de câmera correto. Como aqui estamos usando o modelo AI-THINKER, selecione o seguinte Então, comente todos os outros modelos e descomente este: #define CAMERA_MODEL_AI_THINKERPressione o botão RESET integrado do ESP32-CAM; em seguida, clique no botão de upload para fazer o upload do código.
Etapa 7: Obtendo o IP
Remova o jumper conectado entre GPIO0 e GND e, em seguida, abra o monitor serial com a taxa de transmissão: 115200 e pressione o botão ESP32-CAM Reset e aguarde o IP aparecer e aguarde alguns segundos e pressione reset novamente. veja que peguei meu IP e ele está destacado na imagem.
Etapa 8: Obter o vídeo de streaming wi-fi
Abra seu navegador e certifique-se de que seu PC está conectado à mesma rede que ESP32 CAM e, em seguida, digite o IP em seu navegador e clique no botão stream e você obterá seu stream de vídeo. Existem algumas configurações aqui também para que você possa experimentá-las e obter um vídeo melhor também.
Recomendado:
Primeiros passos com o RPLIDAR de baixo custo usando Jetson Nano: 5 etapas
Introdução ao RPLIDAR de baixo custo usando Jetson Nano: Breve visão geralLight Detection and Ranging (LiDAR) opera da mesma forma que telêmetros ultrassônicos com pulso de laser são usados em vez de ondas sonoras. Yandex, Uber, Waymo e etc. estão investindo pesadamente em tecnologia LiDAR para seus pr
Primeiros passos com a câmera Raspberry Pi: 6 etapas
Introdução à câmera Raspberry Pi: breve visão geral A câmera Raspberry Pi v2.1 está equipada com um sensor de imagem Sony IMX219 de 8 megapixels e foco fixo aprimorado. É compatível com todos os modelos Raspberry Pi. Também é capaz de imagens estáticas de 3280 x 2464 pixels e também suporta 1080p30
Primeiros passos com Digispark Attiny85 usando Arduino IDE: 4 etapas
Introdução ao Digispark Attiny85 usando Arduino IDE: O Digispark é uma placa de desenvolvimento de microcontrolador baseada em Attiny85 semelhante à linha Arduino, apenas mais barata, menor e um pouco menos poderosa. Com toda uma série de escudos para estender sua funcionalidade e a capacidade de usar o conhecido Arduino ID
Primeiros passos com Esp 8266 Esp-01 com Arduino IDE - Instalando Placas Esp no Arduino Ide e Programando Esp: 4 Passos
Primeiros passos com Esp 8266 Esp-01 com Arduino IDE | Instalando placas Esp no Arduino Ide e programando Esp: Neste instructables, vamos aprender como instalar placas esp8266 no IDE Arduino e como programar esp-01 e fazer upload de código nele. Como as placas esp são tão populares, então pensei em corrigir um instructablesfor isso e a maioria das pessoas enfrentam problemas
ESP8266-NODEMCU $ 3 Módulo WiFi nº 1 - Primeiros passos com o WiFi: 6 etapas
ESP8266-NODEMCU $ 3 Módulo WiFi # 1 - Primeiros passos com o WiFi: Um novo mundo desses micro computadores chegou e essa coisa é o ESP8266 NODEMCU. Esta é a primeira parte que mostra como você pode instalar o ambiente do esp8266 em seu IDE arduino por meio do vídeo de introdução e como as partes inc