Exemplo ESP32 WebMonitor - Tutorial de Serial Monitor Baseado na Web
Visão Geral
O exemplo WebMonitor substitui o Serial Monitor tradicional por uma interface web acessível de qualquer dispositivo da sua rede. Projetado para a plataforma educacional ESP32, com recursos avançados de IoT, monitoramento de sensores embutido e integração perfeita com o ecossistema educacional.
Assista a este tutorial em vídeo passo a passo mostrando como usar o WebMonitor com o DIYables ESP32 WebApps:
Recursos
Saída Serial em Tempo Real: Veja as mensagens do ESP32 instantaneamente no navegador
Entrada de Comandos: Envie comandos da interface web para o Arduino
Tema Escuro: Interface estilo terminal, confortável para os olhos
Rolagem Automática: Rola automaticamente até as mensagens mais recentes
Timestamp: Todas as mensagens incluem o horário
Histórico de Comandos: Navegue pelos comandos anteriores com as setas do teclado
Função Limpar: Limpe a exibição do monitor
Copiar/Colar: Suporte completo à seleção e cópia de texto
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.
Clique no botão Upload na Arduino IDE para carregar o código no ESP32
Abra o Serial Monitor
Veja o resultado no Serial Monitor. Ele será parecido com o abaixo
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
DIYables WebApp - Web Monitor Example
INFO: Added app /
INFO: Added app /web-monitor
DIYables WebApp Library
Platform: ESP32
Network connected!
IP address: 192.168.0.2
HTTP server started on port 80
Configuring WebSocket server callbacks...
WebSocket server started on port 81
WebSocket URL: ws://192.168.0.2:81
WebSocket server started on port 81
==========================================
DIYables WebApp Ready!
==========================================
📱 Web Interface: http://192.168.0.2
🔗 WebSocket: ws://192.168.0.2:81
📋 Available Applications:
🏠 Home Page: http://192.168.0.2/
📊 Web Monitor: http://192.168.0.2/web-monitor
==========================================
Ln 11, Col 1
ESP32 Dev Module on COM15
2
Se você não vir nada, reinicie a placa ESP32.
Anote o endereço IP exibido e digite esse endereço na barra de endereços de um navegador web no seu celular ou PC.
Exemplo: http://192.168.0.2
Você verá a home page como na imagem abaixo:
Clique no link Web Monitor e você verá a interface do app Web Monitor como abaixo:
Você também pode acessar a página diretamente pelo endereço IP seguido de /web-monitor. Por exemplo: http://192.168.0.2/web-monitor
Experimente enviar comandos ao seu ESP32 pela interface do web monitor e veja a saída serial do seu Arduino em tempo real.
Como Usar
Visualizando a Saída Serial
Abra a interface do web monitor
O ESP32 envia mensagens de status automaticamente a cada 5 segundos
Toda a saída de Serial.println() aparece no monitor
As mensagens recebem o horário automaticamente
Enviando Comandos
Digite os comandos no campo de entrada na parte inferior
Pressione Enter ou clique no botão Send
O ESP32 processa o comando e responde
Comandos Integrados
O exemplo inclui estes comandos de demonstração:
Controle de LED
"led on" → Liga o LED embutido
"led off" → Desliga o LED embutido
"led toggle" → Alterna o estado do LED
"blink" → Pisca o LED 3 vezes
Comandos do Sistema
"status" → Mostra o status e o tempo de atividade do ESP32
"help" → Lista os comandos disponíveis
"reset counter" → Reinicia o contador de mensagens
"memory" → Mostra informações da memória livre
Comandos de Depuração
"test" → Envia uma mensagem de teste
"echo [message]" → Devolve a sua mensagem
"repeat [n] [message]" → Repete a mensagem n vezes
Recursos da Interface
Atalhos de Teclado
Enter → Enviar comando
↑/↓ Setas → Navegar pelo histórico de comandos
Ctrl+L → Limpar o monitor (se implementado)
Ctrl+A → Selecionar todo o texto
Controles do Monitor
Rolagem automática → Rola automaticamente para as novas mensagens
Limpar → Limpa a exibição do monitor
Copiar → Copia o texto selecionado para a área de transferência
Personalização Criativa - Crie a Sua Ferramenta Avançada de Depuração
Amplie este exemplo de web monitor para criar uma poderosa interface de depuração e controle para os seus projetos! Adicione comandos personalizados, monitoramento de sensores e visualização de dados em tempo real para atender às suas necessidades criativas.
Estrutura do Código
Componentes Principais
Servidor WebApp: Gerencia as conexões HTTP e WebSocket
Página do Monitor: Fornece a interface web estilo terminal
Tratador de Mensagens: Processa os comandos recebidos
Ponte Serial: Encaminha a saída Serial para a interface web
Funções Principais
// Handle commands from web interfacevoid handleWebCommand(Stringcommand, String clientId) {// Process command and execute actions}// Send message to web monitorvoidsendToWebMonitor(String message) {// Forward message via WebSocket}
Adicionando Comandos Personalizados
Para adicionar novos comandos, modifique a função handleWebCommand:
if (command.startsWith("your_command")) {// Extract parametersString param = command.substring(12); // After "your_command"// Execute your actiondigitalWrite(LED_BUILTIN, HIGH);// Send responsesendToWebMonitor("Command executed: " + param);}
Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!