Incubadora inteligente controlada por ESP32
Projeto desenvolvido para a disciplina de Introdução à Engenharia Elétrica 2025
- 🎈 Introdução
- ⚙️ Hardware
- 🖥️ Setup do Ambiente de Desenvolvimento
- 🖱️ Executando o Projeto
- 🩹 Solução de Problemas (Troubleshooting)
- 📄 Licença
Projeto de incubadora para a matéria de Introdução a Engenharia Elétrica, utilizando uma ESP32 wroom, uma ESP32-CAM e um sensor de temperatura e umidade DHT11. Este projeto consiste em uma incubadora automatizada e é desenvolvida como parte da avaliação para a disciplina de Introdução à Engenharia Elétrica.
O sistema utiliza uma ESP32 WROOM como controlador principal, uma ESP32-CAM para registro visual, e um sensor DHT11 para monitoramento de temperatura e umidade.
O objetivo é controlar e monitorar as condições ambientais internas, além de gerar um timelapse das imagens capturadas ao longo do tempo.
- Microcontrolador: ESP32-WROOM
- Responsável pelo controle da incubadora:
- Leitura do sensor de temperatura e umidade (DHT11)
- Controle da temperatura e da umidade (via GPIOs)
- Comunicação com a ESP32-CAM via rede Wi-Fi
- Envio dos dados para monitoramento
Pinout da ESP32 main para guiar quais portas conectar:
Segundo o pinout da ESP32 deve conectar:
- SDA do LCD com a porta D21
- SCL do LCD na porta D22 da ESP32
- Data pin do DHT11 pa porta D4 da ESP32
- Positivo da Peltier quente na porta D25 da ESP32
- Positivo da Peltier fria na porta D26 da ESP32
- Módulo com câmera OV2640
- Responsável por capturar imagens periodicamente
- As imagens são armazenadas localmente ou enviadas via servidor HTTP
- Posteriormente, são usadas para gerar um timelapse com script Python
-
Instale a IDE do Arduino
-
Vá no boad manager e instale o "esp32 by Espressif Systems"
-
Selecione a placa:
- Para o controlador:
ESP32 Dev Module - Para a câmera:
AI Thinker ESP32-CAM
- Para o controlador:
-
Copie os arquivos do
src/de cada diretorio dentro de um novo projeto arduino -
Colar o que está escrito no
main.cppno arquivo.ino -
Faça upload dos códigos correspondentes de cada módulo.
- Instale o VS Code
- Adicione a extensão PlatformIO IDE
- Abra cada diretorio do codigo em uma aba diferente do VS Code
- Compile e envie para o dispositivo usando o botão na parte inferior PlatformIO: Upload
- Abra o monitor serial pelo botão PlatformIO: Serial Monitor
- O controlador inicializa a rede Wi-Fi e os sensores conectados
- Lê a temperatura e umidade via DHT11
- Atualiza o display LCD (quando conectado)
- Se comunica com o módulo de câmera para sincronização
- Inicializa o servidor HTTP interno
- Captura imagens em intervalos definidos
- Permite acessar o feed via IP local (ex:
http://192.168.x.x) - As imagens são armazenadas em
/data/ou/sdcard/
Para gerar o timelapse com as imagens capturadas primeiramente é necessário iniciar o .venv com o comando no terminal já dentro do diretorio do projeto:
source .venv/bin/activateApós isso, basta rodar o programa de python com as imagens no diretorio certo:
python3 timelapse.pyO script coleta todas as imagens do diretório especificado e gera um vídeo .mp4 com 30 FPS:
Input: ./imagens/
Output: timelapse.mp4| Problema | Causa Possível | Solução |
|---|---|---|
| LCD exibindo caracteres estranhos | Conexão incorreta nos pinos SDA/SCL | Verifique os pinos D21 (SDA) e D22 (SCL) |
| Servidor da câmera não acessível | Falha na inicialização da câmera ou Wi-Fi | Reinicie a ESP32-CAM e verifique SSID/senha |
| Timelapse com erro de leitura de imagem | Caminho incorreto ou imagens corrompidas | Verifique o diretório de entrada e permissões |
Este projeto é de uso educacional e livre para fins acadêmicos. Sinta-se à vontade para reutilizar o código, citando a autoria original.

