Exemplo Arduino WebRotator - Tutorial de Controle Rotacional Interativo
Visão Geral
O exemplo WebRotator cria uma interface interativa de controle com disco giratório, acessível de qualquer navegador web. Projetado para a plataforma educacional Arduino Uno R4 WiFi e DIYables STEM V4 IoT, com recursos avançados de controle de motores, controle de servo/motor de passo integrado e integração perfeita com módulos educacionais de robótica. Perfeito para controlar servo motores, motores de passo, braços robóticos, antenas ou qualquer sistema que precise de controle rotacional preciso.

Assista a este tutorial em vídeo passo a passo que mostra como usar o app Web Rotator com o controle de um servo motor:
Recursos
- Disco Giratório Interativo: Interface de disco controlada por toque e mouse
- Dois Modos de Operação: Contínuo (0-360°) e faixa de ângulo Limitada
- Retorno do Ângulo em Tempo Real: Exibição e controle precisos do ângulo
- Indicador Visual de Posição: Marcador claro da posição do disco, com design em gradiente
- Suporte a Toque e Mouse: Funciona em desktop, tablet e celular
- Tratamento Automático da Configuração: Defina o modo e a faixa uma vez no construtor
- Comunicação WebSocket: Resposta instantânea sem recarregar a página
- Interface Profissional: Design com gradiente cônico e rotação suave
- Plataforma Extensível: Atualmente implementada para o Arduino Uno R4 WiFi, mas pode ser estendida para outras plataformas de hardware. Veja DIYables_WebApps_ESP32
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables STEM V4B IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: For controlling multiple servo motors, use the PCA9685 16 Channel PWM Servo Driver Module to save MCU pins and simplify wiring.
Instruções de Configuração
Passos Rápidos
Siga estas instruções passo a passo:
- Se esta é a sua primeira vez usando o Arduino Uno R4 WiFi/DIYables STEM V4 IoT, consulte o tutorial sobre como configurar o ambiente para o Arduino Uno R4 WiFi/DIYables STEM V4 IoT no Arduino IDE.
- Conecte a placa Arduino Uno R4/DIYables STEM V4 IoT ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Selecione a placa Arduino Uno R4 apropriada (por exemplo, Arduino Uno R4 WiFi) e a porta COM.
- Navegue até o ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise "DIYables WebApps" e encontre a biblioteca DIYables WebApps, da DIYables
- Clique no botão Install para instalar a biblioteca.

- Você será perguntado se quer instalar outras bibliotecas das quais ela depende
- Clique no botão Install All para instalar todas as dependências da biblioteca.

- No Arduino IDE, vá em File Examples DIYables WebApps WebRotator para abrir o exemplo, ou copie o código acima e cole no editor do Arduino IDE
- Configure as credenciais do WiFi no código atualizando estas linhas:
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino UNO R4/DIYables STEM V4 IoT
- Abra o Serial Monitor
- Veja o resultado no Serial Monitor. Ele deve ficar parecido com o abaixo
- Se você não vir nada, reinicie a placa Arduino.
- Abra um navegador web no seu PC ou celular.
- Digite no navegador o endereço IP mostrado no Serial Monitor
- Exemplo: http://192.168.1.100
- Você verá a home page como na imagem abaixo:

- Clique no link Web Rotator e você verá a interface do app Web Rotator como abaixo:

- Você também pode acessar a página diretamente pelo endereço IP seguido de /web-rotator. Por exemplo: http://192.168.1.100/web-rotator
- Você verá um disco giratório interativo que pode ser arrastado para controlar a rotação
Recursos da Interface Web
Controle do Disco Giratório
- Disco Interativo: Clique e arraste para girar o disco
- Retorno Visual: Exibição do ângulo e indicador de posição em tempo real
- Animação Suave: Rotação fluida com design profissional em gradiente
- Exibição do Ângulo: O ângulo atual é mostrado em graus
- Indicador de Modo: Mostra o modo de rotação atual e os limites
Suporte a Toque e Mouse
- Controle no Desktop: Clique e arraste com o mouse
- Controle no Celular: Gestos de toque e deslize
- Design Responsivo: Otimizado para todos os tamanhos de tela
- Indicações Visuais: Indicadores claros das áreas de interação
Configuração do Código
Configuração do Rotator
Recebendo Comandos de Ângulo
Modos de Operação
Modo Contínuo
- Rotação Completa: De 0° a 360° e além, sem limite superior
- Sem Retorno ao Zero: Os valores de ângulo podem passar de 360° e não voltam a 0°
- Casos de Uso: Servos de rotação contínua, antenas, mesas giratórias
- Configuração: ROTATOR_MODE_CONTINUOUS
Modo Limitado
- Faixa Personalizada: Defina os ângulos mínimo e máximo
- Limites de Fronteira: Impede a rotação além dos limites definidos
- Casos de Uso: Servos padrão, braços robóticos, sistemas de direção
- Configuração: ROTATOR_MODE_LIMITED, minAngle, maxAngle
Integração de Hardware
Controle de Servo Motor
Nota: O trecho de código a seguir é um exemplo parcial e precisa ser integrado ao seu sketch Arduino principal para funcionar corretamente.
Controle de Motor de Passo
Opções de Personalização
Faixa de Ângulo
- Ângulo Mínimo: Defina a menor rotação permitida
- Ângulo Máximo: Defina a maior rotação permitida
- Posição Padrão: Ângulo inicial quando o sistema liga
- Resolução: Controle a precisão das atualizações de ângulo
Aparência Visual
A interface web se adapta automaticamente à sua configuração:
- Exibição da Faixa: Mostra os limites de ângulo configurados
- Indicador de Modo: Exibe o modo de operação atual
- Marcador de Posição: Indicador visual do ângulo atual
- Design em Gradiente: Aparência profissional com cores suaves
Arduino Uno R4 Web Rotator com Servo Motor
Abaixo está o código completo para adaptar este web app a um servo motor:
Abaixo está um tutorial em vídeo passo a passo que mostra como usar um servo motor com o app Web Rotator:
Casos de Uso Comuns
Projetos Educacionais
- Aprendizado de Controle de Servo: Entender PWM e a operação de servos
- Educação em Robótica: Posicionamento de braços, controle de juntas
- Posicionamento de Antena: Controle direcional de antena
- Pan/Tilt de Câmera: Posicionamento remoto de câmera
Aplicações Práticas
- Automação Residencial: Persianas, ventilações e portas automáticas
- Robótica: Juntas de braços robóticos, direção de robôs móveis
- Projetos IoT: Sistemas de posicionamento remoto
- Industrial: Posicionamento automatizado, controle de válvulas
Solução de Problemas
A Rotação Não Funciona
- Verifique a conexão WiFi e o status do WebSocket
- Confirme se a função de callback está configurada corretamente
- Garanta que o servo/motor esteja conectado corretamente
- Verifique a fonte de alimentação dos motores
Valores de Ângulo Incorretos
- Confirme o mapeamento de ângulo para o seu hardware específico
- Verifique a biblioteca de servo e a configuração dos pinos
- Garanta o escalonamento correto na função de callback
- Teste com a saída do Serial Monitor
Problemas de Conexão
- Confirme o endereço IP no navegador
- Verifique as configurações do firewall
- Garanta uma rede WiFi de 2.4GHz (5GHz não é suportada)
- Tente atualizar a página do navegador
Recursos Avançados
Mudanças de Modo em Tempo de Execução
Você pode mudar o modo do rotator durante a operação:
Retorno de Posição
Envie a posição atual de volta para a interface web:
Nota: Enviar retorno de ângulo com muita frequência para a interface web pode deixar o movimento menos suave. Use este recurso somente se as atualizações de posição em tempo real forem necessárias.
Controle Multieixo
Combine vários rotators para um posicionamento complexo:
Integração Educacional
Objetivos de Aprendizagem STEM
- Controle de Motores: Entender a operação de servos e motores de passo
- Sistemas de Coordenadas: Medição de ângulos e posicionamento
- Tecnologias Web: Interfaces de controle em tempo real
- Programação: Funções de callback, controle de hardware
Atividades em Sala de Aula
- Calibração de Servo: Aprenda a operação do servo e os sinais PWM
- Controle de Posição: Pratique tarefas de posicionamento preciso
- Integração de Sistemas: Combine sensores com controle de motores
- Resolução de Problemas: Depure problemas de hardware e software
Este exemplo oferece uma base completa para sistemas de controle rotacional, perfeita tanto para aplicações educacionais quanto práticas de robótica.