Skip to content

heitorleardini-beep/Arduino-shield

 
 

Repository files navigation

Arduino Shield Monitor - Sistema de Visualização em Tempo Real

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.

📋 Componentes

  • 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

🚀 Como Usar

1. Preparar o Arduino

  1. Instale a biblioteca Servo.h (geralmente já vem com Arduino IDE)
  2. Carregue o arquivo servo_leds_buzzer.ino na sua placa Arduino
  3. Conecte o Arduino ao computador via USB

2. Instalar Dependências Node.js

npm install

Este comando instala:

  • express: Framework web
  • ws: WebSocket para comunicação tempo real
  • serialport: Para ler dados da porta serial do Arduino

3. Iniciar o Servidor

npm start

Você verá:

Servidor rodando em http://localhost:3000
Aguardando conexão com Arduino...
Portas disponíveis: [...]
Conectando na porta: COM3
Porta serial aberta com sucesso

4. Abrir a Página Web

Abra seu navegador e acesse: http://localhost:3000

🎨 Componentes da Interface Web

⚙️ Servo Motor

  • Visualização em tempo real da posição angular (0-180°)
  • Braço vermelho rotativo que acompanha o servo

💡 LEDs

  • 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

🔊 Buzzer

  • Apita: Quando servo passa de 45°
  • Silencioso: De 0° a 45°
  • Animação visual quando ativo

📡 Console

  • Mostra todos os dados recebidos do Arduino
  • Timestamps para cada mensagem
  • Até 100 linhas (mais antigas são removidas)

📊 Formato dos Dados Serial

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)

🔧 Solução de Problemas

Arduino não conecta

  1. Verifique se o Arduino está ligado e conectado via USB
  2. Confirme a porta COM no Device Manager (Windows) ou ls /dev/tty* (Linux/Mac)
  3. Reinicie o servidor: npm start

Porta serial já em uso

  1. Feche a Arduino IDE
  2. Feche outras abas de monitoramento serial
  3. Reinicie o servidor

Página web não carrega

  1. Verifique se o servidor está rodando (Servidor rodando em http://localhost:3000)
  2. Limpe o cache do navegador (Ctrl+Shift+Delete)
  3. Reinicie o navegador

Serial acesso negado (Windows)

  • Pode ser necessário rodar CMD como administrador

📝 Especificações

  • Baudrate Arduino: 115200
  • Frequência atualização: ~30ms (depende do delay no Arduino)
  • Porta do servidor: 3000
  • Protocolo: WebSocket (ws://)

📦 Arquivos do Projeto

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

🎯 Ciclo de Funcionamento

  1. Arduino inicializa com LED1 ligado
  2. Servo gira de 0° a 180°
    • LED3 liga a 30°
    • LED4 liga a 60°
    • LED5 liga a 120°
    • LED6 liga a 150°
  3. Ao passar 45°, buzzer começa a apitar
  4. Servo volta de 180° a 0°
  5. Buzzer para quando chega em 0°
  6. Ciclo se repete

Todos esses eventos são refletidos em tempo real na página web! 🎉

💡 Dicas

  • 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!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • HTML 71.7%
  • C++ 15.2%
  • JavaScript 13.1%