Ejemplo de Arduino WebMonitor - Tutorial de Monitor Serial Basado en la Web
Visión general
El ejemplo WebMonitor reemplaza el Monitor Serial tradicional por una interfaz basada en la web, accesible desde cualquier dispositivo en su red. Diseñado para Arduino Uno R4 WiFi y DIYables STEM V4 IoT plataforma educativa con capacidades IoT mejoradas, monitoreo de sensores integrado y una integración perfecta con el ecosistema educativo.

Características
- Salida Serial en tiempo real: Ver mensajes de Arduino al instante en el navegador
- Entrada de comandos: Enviar comandos desde la interfaz web al Arduino
- Tema oscuro: Interfaz de estilo terminal fácil para la vista
- Desplazamiento automático: Se desplaza automáticamente a los mensajes más recientes
- Marca de tiempo: Todos los mensajes incluyen marcas de tiempo
- Historial de comandos: Navega por los comandos anteriores con las teclas de flecha
- Función de borrar: Borra la pantalla del monitor
- Copiar/Pegar: Soporte completo para selección y copia de texto
- Plataforma extensible: Actualmente implementado para Arduino Uno R4 WiFi, pero puede ampliarse para otras plataformas de hardware. Ver DIYables_WebApps_ESP32
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino 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 Arduino Uno R4 WiFi/DIYables STEM V4 IoT, consulta el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/DIYables STEM V4 IoT en el IDE de Arduino.
- Conecta la placa Arduino Uno R4/DIYables STEM V4 IoT a tu computadora usando un cable USB.
- Inicia el IDE de Arduino en tu computadora.
- Selecciona la placa adecuada Arduino Uno R4 (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
- Navega hasta el ícono Librerías en la barra izquierda del IDE de Arduino.
- Busca "DIYables WebApps", luego localiza la librería DIYables WebApps de DIYables.
- Haz clic en el botón Instalar para instalar la librería.

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

- En el IDE de Arduino, vaya a Archivo Ejemplos DIYables WebApps WebMonitor ejemplo, o copie el código anterior y péguelo en el editor del IDE de Arduino
- Configurar 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 Arduino UNO R4/DIYables STEM V4 IoT
- Abre el Monitor Serial
- Revisa el resultado en el Monitor Serial. Se ve como lo siguiente
- Si no ves nada, reinicia la placa Arduino.
- Toma nota de la dirección IP que se muestra y escribe esta 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 se muestra en la imagen a continuación:

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

- O también puede acceder a la página directamente mediante la dirección IP seguida de /web-monitor. Por ejemplo: http://192.168.0.2/web-monitor
- Intente enviar comandos a su Arduino a través de la interfaz del monitor web y vea la salida serial en tiempo real de su Arduino.
Cómo usar
Visualización de la salida serial
- Abrir la interfaz del monitor web
- Arduino envía automáticamente mensajes de estado cada 5 segundos
- Toda la salida de Serial.println() aparece en el monitor
- Los mensajes se registran automáticamente con una marca de tiempo
Envío de comandos
- Escribe comandos en el campo de entrada en la parte inferior
- Pulsa Enter o haz clic en el botón Enviar
- Arduino procesa el comando y responde
Comandos integrados
El ejemplo incluye estos comandos de demostración:
Control de LED
- "led on" → Enciende el LED incorporado
- "led off" → Apaga el LED incorporado
- "led toggle" → Alterna el estado del LED
- "blink" → Parpadea el LED 3 veces
Comandos del sistema
- "status" → Muestra el estado de Arduino y el tiempo de actividad
- "help" → Enumera los comandos disponibles
- "reset counter" → Restablece el contador de mensajes
- "memory" → Muestra información de memoria libre
Comandos de depuración
- "test" → Envía un mensaje de prueba
- "echo [message]" → Devuelve tu mensaje
- "repeat [n] [message]" → Repite el mensaje n veces
Características de la interfaz
Atajos de teclado
- Intro → Enviar comando
- Teclas de flecha ↑/↓ → Navegar por el historial de comandos
- Ctrl+L → Limpiar la consola (si está implementada)
- Ctrl+A → Seleccionar todo el texto
Controles del monitor
- Desplazamiento automático → Se desplaza automáticamente a los nuevos mensajes
- Limpiar → Limpia la pantalla del monitor
- Copiar → Copia el texto seleccionado al portapeles
Personalización creativa - Construye tu herramienta de depuración avanzada
Expande este ejemplo de monitor web para crear una poderosa interfaz de depuración y control para tus proyectos. Agrega comandos personalizados, monitoreo de sensores y visualización de datos en tiempo real para satisfacer tus necesidades creativas.
Estructura del código
Componentes Principales
- Servidor WebApp: Gestiona conexiones HTTP y WebSocket
- Página de Monitoreo: Proporciona una interfaz web de estilo terminal
- Manejador de Mensajes: Procesa comandos entrantes
- Puente Serial: Reenvía la salida serial a la interfaz web
Funciones clave
Agregar comandos personalizados
Para agregar nuevos comandos, modifica la función handleWebCommand:
Aplicaciones Prácticas
Desarrollo y Depuración
Monitoreo remoto de sistemas
Gestión de la configuración
Funciones avanzadas
Filtrado de mensajes
Añadir tipos de mensajes y filtrado:
Análisis de comandos
Implementar un análisis de comandos sofisticado:
Registro de datos
Registrar datos del monitor en la tarjeta SD o EEPROM:
Solución de problemas
Problemas comunes
1. Sin salida en el monitor web
- Verificar que se llame a Serial.begin() en setup()
- Verificar la conexión WebSocket (indicador de estado verde)
- Verificar la consola del navegador en busca de errores
2. Los comandos no funcionan
- Asegúrate de que los comandos sean exactamente tal como se especifican
- Verifica si los comandos distinguen entre mayúsculas y minúsculas
- Busca mensajes de respuesta en el monitor
3. La interfaz se está cargando lentamente
- Ver la intensidad de la señal WiFi
- Reducir la frecuencia de los mensajes
- Borrar la caché del navegador
4. Desconexiones de WebSocket
- Verificar la estabilidad de la red
- Reducir el tamaño del mensaje
- Implementar la lógica de reconexión
Consejos de depuración
Activar depuración detallada:
Monitorear el estado del WebSocket:
Consideraciones de seguridad
Validación de comandos
Siempre valida los comandos entrantes:
Control de Acceso
Implementa la autenticación básica:
Ejemplos de integración
Sistema de Monitoreo de Sensores
Monitor de Domótica
Próximos pasos
Después de dominar el ejemplo de WebMonitor, intenta:
- Chat - Para comunicación interactiva
- DigitalPins - Para controlar salidas
- Slider - Para controlar el valor analógico
- MultipleWebApps - Combinando monitoreo con control
Soporte
Para obtener ayuda adicional:
- Consulta la documentación de la API
- Visita los tutoriales de DIYables: https://newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-diyables-webapps
- Foros de la comunidad de Arduino