Ejemplo de Arduino WebRotator - Tutorial de Control Rotacional Interactivo
Visión general
El ejemplo WebRotator crea una interfaz interactiva de control de disco giratorio accesible desde cualquier navegador web. Diseñado para Arduino Uno R4 WiFi y la plataforma educativa DIYables STEM V4 IoT, con capacidades mejoradas de control de motores y funciones integradas de control de servomotores y motores paso a paso, y una integración fluida con módulos educativos de robótica. Perfecto para controlar servomotores, motores paso a paso, brazos robóticos, antenas o cualquier sistema que requiera un control de rotación preciso.

Características
- Disco giratorio interactivo: Interfaz de disco controlada por tacto y ratón
- Dos modos de operación: Continuo (0-360°) y rango de ángulo limitado
- Retroalimentación de ángulo en tiempo real: Visualización y control precisos del ángulo
- Indicador de posición visual: Marcador de posición claro del disco con diseño en degradado
- Soporte táctil y de ratón: Funciona en escritorio, tabletas y dispositivos móviles
- Gestión automática de configuración: Configura el modo y el rango una vez en el constructor
- Comunicación WebSocket: Respuesta instantánea sin recargar la página
- Interfaz de usuario profesional: Diseño de gradiente cónico y rotación suave
- Plataforma extensible: Actualmente implementada para Arduino Uno R4 WiFi, pero puede ampliarse a 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 con un cable USB.
- Abre el IDE de Arduino en tu computadora.
- Selecciona la placa Arduino Uno R4 adecuada (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
- Navega hasta el icono Bibliotecas en la barra izquierda del IDE de Arduino.
- Busca "DIYables WebApps", luego localiza la biblioteca DIYables WebApps de DIYables
- Haz clic en el botón Instalar para instalar la biblioteca.

- Se le pedirá que instale algunas otras dependencias de la librería
- Haga clic en el botón Instalar todo para instalar todas las dependencias de la librería.

- En Arduino IDE, ve a Archivo Ejemplos DIYables WebApps WebRotator ejemplo, o copia el código anterior y pégalo en el editor de Arduino IDE
- Configure las credenciales de WiFi en el código actualizando estas líneas:
- Haz clic en Subir del IDE de Arduino para cargar código en Arduino UNO R4/DIYables STEM V4 IoT
- Abre el Monitor Serial
- Consulta el resultado en el Monitor Serial. Se muestra a continuación
- Si no ve nada, reinicie la placa Arduino.
- Abra un navegador web en su PC o teléfono móvil.
- Escriba la dirección IP que se muestra en el monitor serie en el navegador web.
- Ejemplo: http://192.168.1.100
- La página de inicio se mostrará como se muestra en la imagen a continuación.

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

- O también puedes acceder a la página directamente mediante la dirección IP seguida de /web-rotator. Por ejemplo: http://192.168.1.100/web-rotator
- Verás un disco giratorio interactivo que puedes arrastrar para controlar la rotación
Características de la interfaz web
Control de Disco Giratorio
- Disco interactivo: Haz clic y arrastra para girar el disco
- Retroalimentación visual: Visualización del ángulo en tiempo real y del indicador de posición
- Animación suave: Rotación fluida con un diseño de gradiente profesional
- Visualización del ángulo: El ángulo actual se muestra en grados
- Indicador de modo: Muestra el modo de rotación actual y sus límites
Soporte táctil y de ratón
- Control de Escritorio: Clic y arrastrar con el ratón
- Control móvil: Toque y gestos de deslizamiento
- Diseño adaptable: Optimizado para todos los tamaños de pantalla
- Señales visuales: Indicadores visuales claros para las áreas de interacción
Configuración del código
Configuración del rotador
Recepción de comandos de ángulo
Modos de operación
Modo continuo
- Rotación completa: de 0° a 360° y más allá, sin límite superior
- Sin desbordamiento: Los valores de ángulo pueden aumentar por encima de 360° y no se reinician a 0°
- Casos de uso: servomotores de rotación continua, antenas, plataformas giratorias
- Configuración: ROTATOR_MODE_CONTINUOUS
Modo limitado
- Rango personalizado: Definir ángulos mínimos y máximos
- Límites de rotación: Previene la rotación más allá de los límites establecidos
- Casos de uso: Servos estándar, brazos robóticos, sistemas de dirección
- Configuración: ROTATOR_MODE_LIMITED, minAngle, maxAngle
Integración de hardware
Control de servomotor
Nota: El siguiente fragmento de código es un ejemplo parcial y debe integrarse en tu boceto principal de Arduino para funcionar correctamente.
Control del motor paso a paso
Opciones de personalización
Rango de ángulos
- Ángulo mínimo: Establece la rotación mínima permitida
- Ángulo máximo: Establece la rotación máxima permitida
- Posición predeterminada: Ángulo inicial al arrancar el sistema
- Resolución: Controla la precisión de las actualizaciones del ángulo
Apariencia visual
La interfaz web se adapta automáticamente a tu configuración:
- Visualización del rango: Muestra los límites de ángulo configurados
- Indicador de modo: Muestra el modo de operación actual
- Marcador de posición: Indicador visual del ángulo actual
- Diseño con degradado: Apariencia profesional con colores suaves
Casos de Uso Comunes
Proyectos Educativos
- Aprendizaje del control de servomotores: Comprensión del PWM y el funcionamiento de los servomotores
- Educación en robótica: Posicionamiento del brazo, control de articulaciones
- Posicionamiento de antenas: Control de antena direccional
- Pan/Tilt de la cámara: Paneo e inclinación de la cámara
Aplicaciones Prácticas
- Domótica: Persianas automáticas, rejillas de ventilación, puertas
- Robótica: Articulaciones del brazo robótico, dirección del robot móvil
- Proyectos IoT: Sistemas de posicionamiento remotos
- Industrial: Posicionamiento automatizado, control de válvulas
Solución de problemas
Rotación no funciona
- Verifique la conexión WiFi y el estado de WebSocket
- Verifique que la función de callback esté correctamente configurada
- Asegúrese de que el servomotor esté correctamente conectado
- Verifique la fuente de alimentación para los motores
Valores de ángulos incorrectos
- Verifique el mapeo de ángulos para su hardware específico
- Verifique la biblioteca de servomotores y la configuración de pines
- Asegure el escalado correcto en la función de devolución de llamada
- Pruebe con la salida del Monitor Serial
Problemas de conexión
- Verifica la dirección IP en el navegador
- Verifica la configuración del cortafuegos
- Asegúrate de que la red Wi-Fi de 2.4 GHz (5 GHz no es compatible)
- Prueba a actualizar la página del navegador
Características avanzadas
Cambios en el Modo de Tiempo de Ejecución
Puede cambiar el modo del rotador durante la operación:
Retroalimentación de posición
Enviar la posición actual de vuelta a la interfaz web:
Nota: Enviar retroalimentación de ángulo con frecuencia a la interfaz web puede provocar movimientos menos suaves. Utilice esta función solo si se requieren actualizaciones de posición en tiempo real.
Control de múltiples ejes
Combine varios rotadores para un posicionamiento complejo:
Integración educativa
Objetivos de Aprendizaje STEM
- Control de motores: Comprender el funcionamiento de servomotores y motores paso a paso
- Sistemas de coordenadas: Medición de ángulos y posicionamiento
- Tecnologías web: Interfaces de control en tiempo real
- Programación: Funciones de callback, control de hardware
Actividades en el aula
- Calibración de servomotores: Aprender el funcionamiento de los servomotores y las señales PWM
- Control de posición: Practicar tareas de posicionamiento precisas
- Integración de sistemas: Combinar sensores con el control de motores
- Resolución de problemas: Depurar problemas de hardware y software
Este ejemplo proporciona una base completa para los sistemas de control de rotación, perfecto para aplicaciones robóticas tanto educativas como prácticas.