Ejemplo de ESP32 WebDigitalPins - Tutorial de la Interfaz de Control de Pines Digitales
Visión general
El ejemplo WebDigitalPins proporciona una interfaz web para controlar y monitorizar todos los pines digitales de tu Arduino. Diseñado para la plataforma educativa basada en ESP32 con capacidades GPIO mejoradas, configuraciones de pines extendidas y características educativas integradas para aprender electrónica digital. Puedes encender y apagar los pines, monitorizar sus estados en tiempo real y realizar operaciones en lote a través de una interfaz web intuitiva.

Características
- Control individual de pines: Controla cada pin digital (0-13) por separado
- Estado en tiempo real: Monitorea los estados de los pines con indicadores visuales
- Operaciones en lote: Controla todos los pines de una vez (Todos ENCENDIDOS, Todos APAGADOS, Alternar Todo)
- Configuración de pines: Configura los pines como Entrada o Salida a través de la interfaz web
- Retroalimentación visual: Los botones codificados por colores muestran los estados de los pines (verde=ENCENDIDO, rojo=APAGADO)
- Diseño adaptable: Funciona en equipos de escritorio, tabletas y dispositivos móviles
- Comunicación WebSocket: Actualizaciones instantáneas sin recargar la página
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Instrucciones de Configuración
Pasos rápidos
Siga estas instrucciones paso a paso:
- Si es la primera vez que usas el ESP32, consulta el tutorial sobre configurar el entorno para ESP32 en el IDE de Arduino.
- Conecta la placa ESP32 a tu computadora con un cable USB.
- Inicia el IDE de Arduino en tu computadora.
- Selecciona la placa ESP32 adecuada (por ejemplo ESP32 Dev Module) y el puerto COM.
- Navega hasta el ícono Bibliotecas en la barra izquierda del IDE de Arduino.
- Busca "DIYables ESP32 WebApps", luego localiza la biblioteca DIYables ESP32 WebApps de DIYables
- Haz clic en el botón Instalar para instalar la biblioteca.

- Se le pedirá que instale algunas otras dependencias de la biblioteca.
- Haga clic en el botón Instalar todo para instalar todas las dependencias de la biblioteca.

- En el IDE de Arduino, ve a Archivo Ejemplos DIYables ESP32 WebApps WebDigitalPins ejemplo, o copia el código anterior y pégalo en el editor del IDE de Arduino
- Configura las credenciales de WiFi en el código actualizando estas líneas:
- Haz clic en el botón Subir en el IDE de Arduino para subir código al ESP32
- Abre el Monitor Serial
- Revisa el resultado en el Monitor Serial. Se ve como se muestra a continuación
- Si no ves nada, reinicia la placa ESP32.
- Toma nota de la dirección IP que se muestre y escribe esa dirección en la barra de direcciones de un navegador web en tu teléfono inteligente o PC.
- Ejemplo: http://192.168.0.2
- Verás la página de inicio como en la imagen a continuación:

- Haz clic en el enlace de Web Digital Pins; verás la interfaz de usuario de la aplicación Web Digital Pins tal como se muestra a continuación:

- O también puedes acceder a la página directamente mediante la dirección IP seguida de /web-digital-pins. Por ejemplo: http://192.168.0.2/web-digital-pins
- Intenta controlar los pines digitales haciendo clic en los botones de los pines para encenderlos/apagarlos y observa cómo el LED integrado (pin 13) responde a tus comandos.
Personalización Creativa - Adapta el código a tu proyecto
El ejemplo muestra diferentes formas de configurar pines para que se ajusten a las necesidades de tu proyecto creativo:
2. Configurar los ajustes de PIN
El ejemplo muestra diferentes formas de configurar pines:
Método 1: Habilitar pines específicos
Método 2: Habilitar rangos de pines
Método 3: Habilitar todos los pines
4. Subir el boceto
- Selecciona tu placa ESP32: Herramientas → Placa → ESP32
- Selecciona el puerto correcto: Herramientas → Puerto → [tu puerto ESP32]
- Haz clic en el botón Subir
5. Obtener la dirección IP
- Abrir Herramientas → Monitor Serial
- Establece la velocidad en baudios a 9600
- Espera a que el ESP32 se conecte a la red WiFi
- Anota la dirección IP mostrada (p. ej., 192.168.1.100)
6. Acceder a la Interfaz de Pines Digitales
Abre tu navegador web y navega a:
Ejemplo: http://192.168.1.100/digital-pins
Cómo usar
Interfaz de control de pines
La interfaz web muestra todos los pines configurados con:
- Número de pin: Muestra qué pin ESP32 (0-13)
- Estado actual: Muestra si está ENCENDIDO (verde) o APAGADO (rojo)
- Botón de control: Haz clic para alternar el estado del pin
- Tipo de pin: Muestra si está configurado como ENTRADA o SALIDA
Control de pines individuales
- Encender PIN: Haz clic en el botón de pin cuando aparezca "APAGADO"
- Apagar PIN: Haz clic en el botón de pin cuando aparezca "ENCENDIDO"
- Estado del monitor: Los botones de pin se actualizan automáticamente para mostrar el estado actual
Operaciones en lote
Utilice los botones de control en lote para controlar varios pines a la vez:
Todo encendido
- Coloca todos los pines de salida configurados en estado ALTO
- Los pines de entrada no se ven afectados
- Útil para probar todos los dispositivos conectados
Todo apagado
- Coloca todos los pines de salida configurados en estado bajo
- Los pines de entrada no se ven afectados
- Forma segura de desactivar todas las salidas
Alternar todo
- Invierte el estado de todos los pines de salida
- Los pines encendidos se vuelven apagados; los pines apagados se vuelven encendidos
- Crea efectos de iluminación interesantes
Monitoreo en tiempo real
- Los estados de los pines se actualizan automáticamente a través de WebSocket
- Los cambios realizados en el código se reflejan en la interfaz web
- Varios usuarios pueden monitorear el mismo ESP32 al mismo tiempo
Conexiones de hardware
Ejemplos de pines de salida
Control de LEDs
Control de relés
Control de motor (a través del controlador de motor)
Ejemplos de pines de entrada
Entrada de interruptor
Entrada del sensor
Personalización de código
Añadir callbacks de cambio de pin
Monitorear cuando los pines cambien de estado:
Inicialización personalizada de pines
Configurar pines específicos en los estados deseados al iniciar:
Lectura de pines de entrada
Monitorea los pines de entrada en tu bucle principal:
Características avanzadas
Grupos de pines
Crear grupos lógicos de pines para funciones relacionadas:
Generación de patrones
Crear patrones de iluminación o secuencias:
Integración del control de PWM
Combina con control analógico para funciones avanzadas:
Consideraciones de seguridad
Guía de uso de pines
Pines 0 y 1 (TX/RX)
- Se utiliza para la comunicación serial
- Evite usarlo a menos que sea absolutamente necesario
- Puede interferir con la programación y la depuración
Pin 13 (LED incorporado)
- Seguro para pruebas
- El LED incorporado proporciona retroalimentación visual
- Bueno para pruebas iniciales
Pines 2-12
- Seguro para entradas/salidas digitales generales
- Recomendado para la mayoría de las aplicaciones
- Sin consideraciones especiales
Limitaciones actuales
Corriente Máxima por Pin: 40 mA
- Utiliza resistencias limitadoras de corriente con LEDs
- Utiliza transistores o relés para cargas de alta corriente
- Considera el consumo total de corriente
Niveles de voltaje: lógica de 3,3 V
- ESP32 utiliza lógica de 3.3V
- Asegúrate de que los dispositivos conectados sean compatibles
- Utiliza convertidores de nivel para dispositivos de 5V si es necesario
Solución de problemas
Problemas comunes
1. PIN no responde
- Verificar que el pin esté habilitado en el código
- Verificar conexiones de hardware
- Verificar si hay cortocircuitos
- Confirmar el modo del pin (ENTRADA/SALIDA)
2. La interfaz web no se está actualizando
- Verificar el estado de la conexión WebSocket
- Recargar la página del navegador
- Verificar la conectividad de la red
- Verificar el Monitor Serial en busca de errores
3. Las operaciones en lote no funcionan
- Asegúrese de que los pines estén configurados como salidas
- Verifique las limitaciones del hardware
- Verifique la capacidad de la fuente de alimentación
- Monitoree las condiciones de sobrecorriente
4. Pines de entrada que muestran estados incorrectos
- Verificar resistencias pull-up y pull-down adecuadas
- Verificar los niveles de la señal de entrada
- Verificar interferencia electromagnética
- Confirmar la configuración de pines
Consejos de depuración
Habilitar la salida de depuración:
Ideas de proyectos
Automatización del hogar
- Luces de la sala de control
- Operar las persianas
- Controlar los sistemas de calefacción y refrigeración
- Integración del sistema de seguridad
Automatización del jardín
- Control del sistema de riego
- Gestión de iluminación de cultivo
- Regulación de la temperatura
- Control de la humedad
Control del Taller
- Control de potencia de la herramienta
- Gestión de iluminación
- Sistema de ventilación
- Interbloqueos de seguridad
Proyectos Educativos
- Demostraciones de puertas lógicas
- Simulación de semáforo
- Proyectos de sistemas de alarma
- Experimentos de control remoto
Ejemplos de integración
Iluminación activada por movimiento
Ventilador con control de temperatura
Próximos Pasos
Una vez que hayas dominado el ejemplo WebDigitalPins, intenta:
- WebSlider - Para control PWM y analógico
- WebJoystick - Para control direccional
- WebMonitor - Para depuración y monitoreo
- MultipleWebApps - Combinando todas las características