Um sistema completo para monitorar em tempo real um Arduino Shield com Servo Motor, LEDs e Buzzer através de uma página web interativa.
- Servo Motor (Porta 9): Visualização do ângulo de rotação (0-180°)
- LEDs (Portas 7, 10, 11, 12, 13): Mostram o estado de cada LED
- Buzzer (Porta 8): Apita quando servo passa de 45°
- Página Web: Interface visual em tempo real
- Instale a biblioteca
Servo.h(geralmente já vem com Arduino IDE) - Carregue o arquivo
servo_leds_buzzer.inona sua placa Arduino - Conecte o Arduino ao computador via USB
npm installEste comando instala:
express: Framework webws: WebSocket para comunicação tempo realserialport: Para ler dados da porta serial do Arduino
npm startVocê verá:
Servidor rodando em http://localhost:3000
Aguardando conexão com Arduino...
Portas disponíveis: [...]
Conectando na porta: COM3
Porta serial aberta com sucesso
Abra seu navegador e acesse: http://localhost:3000
- Visualização em tempo real da posição angular (0-180°)
- Braço vermelho rotativo que acompanha o servo
- LED 1: Sempre ligado (porta 7)
- LED 3: Liga a partir de 30° (porta 10)
- LED 4: Liga a partir de 60° (porta 11)
- LED 5: Liga a partir de 120° (porta 12)
- LED 6: Liga a partir de 150° (porta 13)
Indicadores visuais com cores:
- 🟡 Ligado: Amarelo/ouro com brilho
- ⚪ Desligado: Cinza
- Apita: Quando servo passa de 45°
- Silencioso: De 0° a 45°
- Animação visual quando ativo
- Mostra todos os dados recebidos do Arduino
- Timestamps para cada mensagem
- Até 100 linhas (mais antigas são removidas)
O Arduino envia dados no seguinte formato:
SERVO:45|LED1:1|LED3:0|LED4:0|LED5:0|LED6:0|BUZZER:1
Cada valor separado por |:
SERVO: Ângulo (0-180)LED1,LED3,LED4,LED5,LED6: 1 (ligado) ou 0 (desligado)BUZZER: 1 (ativo) ou 0 (inativo)
- Verifique se o Arduino está ligado e conectado via USB
- Confirme a porta COM no Device Manager (Windows) ou
ls /dev/tty*(Linux/Mac) - Reinicie o servidor:
npm start
- Feche a Arduino IDE
- Feche outras abas de monitoramento serial
- Reinicie o servidor
- Verifique se o servidor está rodando (
Servidor rodando em http://localhost:3000) - Limpe o cache do navegador (Ctrl+Shift+Delete)
- Reinicie o navegador
- Pode ser necessário rodar CMD como administrador
- Baudrate Arduino: 115200
- Frequência atualização: ~30ms (depende do delay no Arduino)
- Porta do servidor: 3000
- Protocolo: WebSocket (ws://)
Arduino shield/
├── servo_leds_buzzer.ino # Código Arduino
├── server.js # Servidor Node.js
├── index.html # Página web
├── package.json # Dependências
└── instruções.txt # Mapeamento de portas
- Arduino inicializa com LED1 ligado
- Servo gira de 0° a 180°
- LED3 liga a 30°
- LED4 liga a 60°
- LED5 liga a 120°
- LED6 liga a 150°
- Ao passar 45°, buzzer começa a apitar
- Servo volta de 180° a 0°
- Buzzer para quando chega em 0°
- Ciclo se repete
Todos esses eventos são refletidos em tempo real na página web! 🎉
- Deixe o navegador aberto em tela cheia para melhor visualização
- Pode abrir em outro navegador ou dispositivo acessando
http://seu-ip:3000 - O console mostra exatamente o que o Arduino está enviando
Desenvolvido para monitorar Arduino Shield em tempo real com interface web moderna e responsiva!