Cámara de Seguridad con Detección de Movimiento ESP32 para Discord
Componentes y materiales
| Componente | Cantidad |
|---|---|
| ESP32 Cam | 1 |
| Sensor PIR de Movimiento (genérico) | 1 |
| Protoboard (genérica) | 1 |
| Kit de cables 20 AWG | 1 |
| Cables de conexión (genéricos) | 1 |
| Arduino Nano R3 | 1 |
| Conector DC 5.5 x 2.1 | 1 |
| Antena SMB | 1 |
| Fuente de alimentación 5V | 1 |
Herramientas y máquinas necesarias
- Kit de conectores Dupont
Sobre el proyecto
Usa un ESP32 Cam y un sensor infrarrojo pasivo (PIR) para crear una cámara de seguridad activada por movimiento que publique una foto en un canal de Discord, donde tengas acceso para crear un webhook.
Construiremos el circuito de prueba con protoboard y cables. Luego haremos un arnés de cableado con conectores Dupont para conexiones fáciles a la placa de desarrollo y sensor PIR. Usaremos una caja impresa en 3D para pared o techo. La cámara de techo usa una cámara falsa económica que se compra online.
Paso 1: Programar el ESP32 Cam con un Arduino
Pon el ESP32Cam en modo flash y conéctalo a un Arduino para programarlo. Necesitarás el ESP32Cam, un Arduino Nano y cables.
Añade la URL del Board Manager de ESP32 a preferencias: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Usa el diagrama de arriba como referencia para el cableado en la protoboard.
Paso 2: Conectar el sensor PIR al ESP32 Cam
Conecta el sensor PIR al ESP32 Cam: 5V, Tierra, y el pin central de datos al GPIO 15 del ESP32 Cam como se ve en el diagrama.
Paso 3: Descargar código y dependencias
- Discord Spycam: https://github.com/WillMakesTV/discord-spycam
También necesitaremos el script Python CertToESP8266 del proyecto HTTPS for Makers. Y Python instalado.
Paso 4: Crear certificado SSL para Discord.com
Verifica que Python esté instalado. Descarga HTTPS for Makers de GitHub y extráelo. Visita Discord.com, haz clic en el candado junto al dominio, selecciona "Certificado", pestaña Detalles, "Copiar a archivo", siguiente, codificación Base64, guárdalo como discord-cert.cer.
Paso 5: Usar CerttoESP32 para formatear certificado SSL
Edita el script Python CerttoESP32 para actualizar la variable filename al archivo exportado. Ejecuta el script desde terminal. Deberías ver el certificado formateado para ESP32.
Paso 6: Configurar el proyecto Discord Spycam
Extrae el proyecto de GitHub (renombra carpeta a "discord-spycam" si es necesario). Copia arduino_secrets.h.example a arduino_secrets.h y abre discord-spycam.ino.
En arduino_secrets.h actualiza SECRET_DISCORD_CERT con la salida del script. Actualiza SECRET_NETWORK_SSID y SECRET_NETWORK_PASS con tu WiFi.
Webhook de Discord: En Discord, ve al canal deseado, clic derecho > editar canal > integraciones > nuevo webhook. Dale nombre y foto opcional. Copia la URL del webhook, quita el nombre de dominio para que coincida con el formato de ejemplo, pégalo en SECRET_DISCORD_WEBHOOK.
Guarda, compila y sube al ESP32Cam. Cuando el PIR detecte movimiento, verás una foto publicada por el bot en el canal.
Paso 7: Crimpar y soldar cables
Suela cables de alimentación y tierra al conector DC, luego crimpa los extremos para sensor PIR y ESP32Cam con conectores Dupont. Crea dos conectores: uno de 3 pines para el PIR (centro=datos, lados=5V y GND), y uno de 2 pines para alimentar el ESP32.
Paso 8: Caja para montaje en pared
Con la caja impresa en 3D para pared, pasa el conector DC por el agujero inferior y asegura con la arandela. Pon termoretráctil antes de soldar y encoge. Inserta la antena WiFi externa y conecta ESP32 Cam y sensor PIR. Tapa con tapa a presión. Hay ranura lateral para acceder a los potenciómetros de sensibilidad y retardo del PIR.
Paso 9: Caja para montaje en techo
Usa partes de una cámara falsa barata: cúpula transparente, cubierta de cámara y tornillos. Pega la cúpula a la cubierta con superglue, luego pega con pegamento caliente al anillo exterior impreso en 3D. Alinea el agujero grande para el conector DC en la parte trasera. El cableado se desliza por el agujero grande. Ajusta sensibilidad y retardo del ANTES de instalar en la caja. También usa tapa a presión.
Código
HTTPS for Makers - CerttoESP32.py
https://github.com/SensorsIot/HTTPS-for-Makers
Discord Spycam
https://github.com/WillMakesTV/discord-spycam
Partes personalizadas y cajas
Caja para montaje en pared
Caja para montaje en techo
Esquemáticos
Diagrama de cableado para conectar y programar un ESP32 usando un Arduino.
Proceso de manufactura
- Sistema de Seguridad Doméstico con Raspberry Pi: Detección de Movimiento PIR y Alertas por Email con Cámara
- Instalación de Cámara Raspberry Pi en una Caseta de Pájaros – Guía Paso a Paso
- Control de Brillo LED con PWM mediante Pulsador en Arduino Mega
- Dispositivo de Medición de Presión y Flujo de Aire de Precisión con Sensor Analógico
- Construye un Juego Giroscópico en Tiempo Real con Arduino Nano y Sensor MPU-6050
- Cámara de Seguridad con Detección de Movimiento ESP32 para Discord
- Proyecto Sensor DHT11 Temperatura y Humedad con Indicadores LED y Altavoz Piezo
- Unopad: Controlador MIDI Arduino para Ableton Live sin complicaciones
- Mando a Distancia TV Personalizado con Arduino UNO: Alimentado por Batería, Carcasa Impresa en 3D
- Sensor de obstáculos IR casero con Arduino – Tutorial fácil con LED IR y fotodiodo
- Seguridad de Diseños Embebidos IoT con ICs de Seguridad Avanzados