Exemple ESP32 WebRotator – Tutoriel sur le contrôle rotatif interactif
Vue d'ensemble
L'exemple WebRotator crée une interface de contrôle interactive pour disque rotatif accessible depuis n'importe quel navigateur Web. Conçu pour l'ESP32, plateforme éducative dotée de capacités de contrôle moteur améliorées, de fonctionnalités intégrées de commande de servomoteurs et de moteurs pas à pas, et d'une intégration transparente avec les modules éducatifs de robotique. Parfait pour contrôler des servomoteurs, des moteurs pas à pas, des bras robotiques, des antennes, ou tout système nécessitant un contrôle de rotation précis.

Fonctionnalités
- Disque rotatif interactif: Interface de disque contrôlée par le toucher et la souris
- Deux modes d'opération: Continu (0–360°) et plage angulaire limitée
- Rétroaction d'angle en temps réel: Affichage et contrôle précis de l'angle
- Indicateur visuel de position: Marqueur de position du disque clair avec un design en dégradé
- Prise en charge tactile et souris: Fonctionne sur ordinateur de bureau, tablette et appareils mobiles
- Gestion automatique de la configuration: Définissez le mode et la plage une fois dans le constructeur
- Communication WebSocket: Réponse instantanée sans actualisation de la page
- Interface professionnelle: Design de dégradé conique avec rotation fluide
Préparation du matériel
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 (ESP32 inclus) | |
| 1 | × | Kit de Capteurs DIYables (30 capteurs/écrans) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
Instructions d'installation
Étapes rapides
Suivez ces instructions étape par étape :
- Si c’est la première fois que vous utilisez l’ESP32, reportez-vous au tutoriel sur Installation du logiciel ESP32..
- Connectez la carte ESP32 à votre ordinateur avec un câble USB.
- Lancez l’IDE Arduino sur votre ordinateur.
- Sélectionnez la carte ESP32 appropriée (par exemple ESP32 Dev Module) et le port COM.
- Accédez à l’icône Libraries dans la barre de gauche de l’IDE Arduino.
- Recherchez "DIYables ESP32 WebApps", puis trouvez la DIYables ESP32 WebApps Library par DIYables
- Cliquez sur le bouton Install pour installer la bibliothèque.

- On vous demandera d'installer d'autres dépendances de bibliothèque
- Cliquez sur le bouton Tout installer pour installer toutes les dépendances de bibliothèque.

- Dans l'IDE Arduino, allez à Fichier Exemples DIYables ESP32 WebApps WebRotator l'exemple, ou copiez le code ci-dessus et collez-le dans l'éditeur de l'IDE Arduino
- Configurez les identifiants Wi-Fi dans le code en mettant à jour ces lignes :
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur l'ESP32.
- Ouvrez le Moniteur série.
- Consultez le résultat dans le Moniteur série. Il ressemble à ce qui suit.
- Si vous ne voyez rien, redémarrez la carte ESP32.
- Ouvrez un navigateur web sur votre PC ou votre téléphone portable.
- Saisissez l’adresse IP affichée dans le Moniteur Série dans votre navigateur web
- Exemple : http://192.168.1.100
- Vous verrez la page d’accueil comme sur l’image ci-dessous:

- Cliquez sur le lien Web Rotator, vous verrez l'interface utilisateur de l'application Web Rotator comme ci-dessous :

- Ou vous pouvez aussi accéder directement à la page via l'adresse IP suivie de /web-rotator. Par exemple : http://192.168.1.100/web-rotator
- Vous verrez un disque rotatif interactif que vous pouvez faire glisser pour contrôler la rotation
Caractéristiques de l'interface Web
Contrôle du disque rotatif
- Disque interactif: Cliquez et faites glisser pour faire tourner le disque
- Rétroaction visuelle: affichage en temps réel de l'angle et indicateur de position
- Animation fluide: rotation fluide avec un design de dégradé professionnel
- Affichage de l'angle: angle actuel affiché en degrés
- Indicateur de mode: affiche le mode de rotation actuel et les limites
Support tactile et souris
- Contrôle sur ordinateur: clic et glisser-déposer
- Contrôle mobile: gestes tactiles et balayage
- Conception réactive: Optimisée pour toutes les tailles d'écran
- Indicateurs visuels: repères clairs pour les zones d'interaction
Configuration du code
Configuration du rotateur
Commandes d'angle de réception
Modes de fonctionnement
Mode continu
- Rotation complète: de 0° à 360° et au-delà, sans limite supérieure
- Pas de retour à zéro: les valeurs d'angle peuvent augmenter au-delà de 360° et ne se réinitialisent pas à 0°
- Cas d'utilisation: servos à rotation continue, antennes, platines tournantes
- Configuration: ROTATOR_MODE_CONTINUOUS
Mode limité
- Plage personnalisée: Définir les angles minimum et maximum
- Limites de rotation: Empêche la rotation au-delà des limites définies
- Cas d'utilisation: Servomoteurs standard, bras robotiques, systèmes de direction
- Configuration: ROTATOR_MODE_LIMITED, minAngle, maxAngle
Intégration du matériel
Contrôle du servomoteur
Remarque : L'extrait de code suivant est un exemple partiel et doit être intégré à votre croquis ESP32 principal pour fonctionner correctement.
Contrôle du moteur pas à pas
Options de personnalisation
Plage d'angles
- Angle minimum: Définir la rotation autorisée minimale
- Angle maximum: Définir la rotation autorisée maximale
- Position par défaut: Angle de départ lors du démarrage du système
- Résolution: Contrôler la précision des mises à jour d'angles
Apparence visuelle
L'interface web s'adapte automatiquement à votre configuration :
- Affichage des limites d'angle: Affiche les limites d'angle configurées
- Indicateur de mode: Affiche le mode d'opération actuel
- Marqueur de position: Indicateur visuel de l'angle actuel
- Conception en dégradé: Apparence professionnelle avec des couleurs douces
Cas d'utilisation courants
Projets éducatifs
- Apprentissage du contrôle des servomoteurs: Comprendre le PWM et le fonctionnement des servomoteurs
- Éducation en robotique: Positionnement du bras, contrôle des articulations
- Positionnement d'antenne: Contrôle d'antenne directionnelle
- Pan/Tilt de caméra: Positionnement à distance de la caméra
Applications pratiques
- Domotique: Stores motorisés, bouches d'aération, portes
- Robotique: Articulations du bras robotique, direction du robot mobile
- Projets IoT: Systèmes de positionnement à distance
- Industriel: Positionnement automatisé, contrôle des vannes
Dépannage
La rotation ne fonctionne pas
- Vérifier la connexion WiFi et l'état du WebSocket
- Vérifier que la fonction de rappel est correctement définie
- S'assurer que le servo/moteur est correctement connecté
- Vérifier l'alimentation des moteurs
Valeurs d'angle incorrectes
- Vérifier le mappage des angles pour votre matériel spécifique
- Vérifier la bibliothèque Servo et la configuration des broches
- Assurer une mise à l'échelle correcte dans la fonction de rappel
- Tester avec la sortie du moniteur série
Problèmes de connexion
- Vérifiez l'adresse IP dans le navigateur
- Vérifiez les paramètres du pare-feu
- Assurez-vous que le réseau Wi-Fi 2,4 GHz est utilisé (5 GHz non pris en charge)
- Essayez d'actualiser la page du navigateur
Fonctionnalités avancées
Modifications du mode d'exécution
Vous pouvez changer le mode du rotateur pendant le fonctionnement :
Rétroaction de position
Renvoyer la position actuelle à l'interface Web:
Note : L'envoi de retours d'angle fréquents à l'interface web peut entraîner un mouvement moins fluide. Utilisez cette fonctionnalité uniquement si des mises à jour de position en temps réel sont nécessaires.
Contrôle multi-axes
Combinez plusieurs rotateurs pour un positionnement complexe :
Intégration éducative
Objectifs d'apprentissage STEM
- Contrôle des moteurs: comprendre le fonctionnement des servomoteurs et des moteurs pas à pas
- Systèmes de coordonnées: mesure des angles et positionnement
- Technologies Web: interfaces de contrôle en temps réel
- Programmation: fonctions de rappel et contrôle du matériel
Activités en classe
- Calibration du servomoteur: Apprendre le fonctionnement du servomoteur et les signaux PWM
- Contrôle de position: Pratiquer des tâches de positionnement précis
- Intégration des systèmes: Associer les capteurs au contrôle du moteur
- Résolution de problèmes: Diagnostiquer et résoudre les problèmes matériels et logiciels
Cet exemple offre une base complète pour les systèmes de contrôle de la rotation, idéale pour des applications robotiques éducatives et pratiques.