Exemple Arduino WebSlider - Tutoriel sur l'interface de contrôle à deux curseurs
Vue d'ensemble
L'exemple WebSlider fournit deux curseurs indépendants accessibles via un navigateur Web. Conçu pour la plateforme éducative Arduino Uno R4 WiFi et DIYables STEM V4 IoT, dotée de capacités analogiques améliorées, de fonctionnalités de contrôle de précision et de modules éducatifs intégrés pour l'apprentissage du PWM et de l'électronique analogique.

Fonctionnalités
- Deux curseurs indépendants: chacun dans la plage 0-255
- Valeurs en temps réel: Mises à jour instantanées des valeurs via la communication WebSocket
- Compatible PWM: valeurs 8 bits (0-255), parfaites pour les fonctions analogWrite()
- Rétroaction visuelle: affichage en temps réel de la valeur pour chaque curseur
- Boutons prédéfinis: valeurs préconfigurées pour des configurations courantes
- Support tactile et souris: Fonctionne sur ordinateur de bureau, tablette et appareils mobiles
- Conception réactive: s'adapte à différentes tailles d'écran
- Persistance des valeurs: Les curseurs se souviennent de la dernière position lors du rechargement de la page
- Plateforme extensible: Actuellement implémentée pour Arduino Uno R4 WiFi, mais peut être étendue à d'autres plateformes matérielles. Voir DIYables_WebApps_ESP32
Préparation du matériel
Ou vous pouvez acheter les kits suivants:
1 | × | Kit de Démarrage DIYables STEM V4 IoT (Arduino 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 votre première utilisation de l'Arduino Uno R4 WiFi/DIYables STEM V4 IoT, reportez-vous au tutoriel sur Arduino UNO R4 - Installation du logiciel..
- Connectez la carte Arduino Uno R4/DIYables STEM V4 IoT à votre ordinateur à l'aide d'un câble USB.
- Ouvrez l'IDE Arduino sur votre ordinateur.
- Sélectionnez la carte Arduino Uno R4 appropriée (par exemple, Arduino Uno R4 WiFi) et le port COM.
- Accédez à l'icône Libraries dans la barre de gauche de l'IDE Arduino.
- Recherchez "DIYables WebApps", puis trouvez la bibliothèque DIYables WebApps par DIYables.
- Cliquez sur le bouton Install pour installer la bibliothèque.

- Il vous sera demandé 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 dans Fichier Exemples DIYables WebApps WebSlider 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'Arduino UNO R4/DIYables STEM V4 IoT
- Ouvrez le moniteur série
- Vérifiez le résultat sur le moniteur série. Cela ressemble à ce qui suit
- Si vous ne voyez rien, redémarrez la carte Arduino.
- Notez l'adresse IP affichée et saisissez cette adresse dans la barre d'adresse d'un navigateur web sur votre smartphone ou votre PC.
- Exemple : http://192.168.0.2
- Vous verrez la page d'accueil comme sur l'image ci-dessous.

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

- Ou bien vous pouvez également accéder à la page directement en utilisant l'adresse IP suivie de /web-slider. Par exemple : http://192.168.0.2/web-slider
- Essayez de déplacer les deux curseurs pour contrôler les valeurs analogiques (0-255) et observez les retours en temps réel dans le moniteur série.
Personnalisation créative - Adaptez le code à votre projet
Définir les valeurs par défaut des curseurs
Configurer les positions initiales des curseurs:
Comment utiliser les curseurs
Contrôles de l'interface Web
L'interface du curseur fournit :
- Curseur 1: Premier curseur de contrôle avec affichage de la valeur (0-255)
- Curseur 2: Deuxième curseur de contrôle avec affichage de la valeur (0-255)
- Affichage des valeurs: Valeurs numériques en temps réel pour les deux curseurs
- Boutons prédéfinis: Accès rapide à des valeurs courantes (0%, 25%, 50%, 75%, 100%)
Utilisation des curseurs
Bureau (Contrôle de la souris)
- Cliquer et faire glisser: cliquer sur la poignée du curseur et la faire glisser pour ajuster la valeur
- Position du clic: cliquer n'importe où sur la piste du curseur pour atteindre cette valeur
- Contrôle précis: utiliser de petits mouvements de la souris pour un réglage précis
Mobile/Tablette (Contrôle tactile)
- Touchez et faites glisser: Touchez la poignée du curseur et faites-la glisser vers une nouvelle position
- Appuyez sur la position: Appuyez sur la piste du curseur pour régler la valeur
- Contrôle fluide: Le glissement du doigt permet des changements de valeur en douceur
Plages de valeurs
Chaque curseur offre :
- Valeur minimale: 0 (0% - complètement éteint)
- Valeur maximale: 255 (100% - intensité maximale)
- Résolution: 256 niveaux discrets (précision 8 bits)
- Compatibilité PWM: Utilisation directe avec la fonction analogWrite()
Exemples de programmation
Gestionnaire de curseur basique
Contrôle de la luminosité des LED
Contrôle de la position du servomoteur
Contrôle de la vitesse du moteur
Contrôle de la couleur LED RVB
Techniques de programmation avancées
Lissage des valeurs
Contrôle basé sur le seuil
Système de valeurs prédéfinies
Exemples d'intégration matérielle
Contrôle du ruban LED
Contrôle de la vitesse du ventilateur
Contrôle du volume audio
Dépannage
Problèmes courants
1. Les curseurs ne répondent pas
- Vérifier la connexion WebSocket dans la console du navigateur
- Vérifier la connectivité réseau entre l'appareil et l'Arduino
- Actualiser la page du navigateur pour réinitialiser la connexion
- Vérifier le moniteur série pour les erreurs de connexion
2. Des valeurs qui ne couvrent pas toute l'étendue
- Vérifier les paramètres de plage du curseur dans l'interface web
- Vérifier les problèmes de mappage des valeurs dans la fonction de rappel
- Tester avec différents navigateurs ou appareils
3. Contrôle saccadé ou incohérent
- Implémenter le lissage des valeurs pour des changements graduels
- Vérifier les problèmes de latence du réseau
- Ajouter un anti-rebond pour les changements rapides de valeur
4. Sortie PWM ne fonctionne pas
- Vérifiez que les broches prennent en charge le PWM (vérifiez le brochage Arduino)
- Assurez-vous que analogWrite() est appelée avec les numéros de broches corrects
- Vérifiez les connexions matérielles et les exigences de charge
Astuces de débogage
Ajouter un débogage approfondi:
Idées de projets
Projets de contrôle de l'éclairage
- Contrôle de la luminosité de l'éclairage de la pièce
- Interface de mélange des couleurs RVB
- Contrôle de la vitesse d'animation de la bande LED
- Contrôle de l'intensité de l'éclairage de scène
Projets de contrôle moteur
- Contrôle de la vitesse du robot
- Régulation de la vitesse du ventilateur
- Contrôle du débit de la pompe
- Vitesse de la bande transporteuse
Projets audio
- Interface de contrôle du volume
- Contrôle de la tonalité et de l’égaliseur
- Intensité des effets sonores
- Contrôle de la visualisation musicale
Domotique
- Contrôle du climat (intensité du chauffage/refroidissement)
- Contrôle de la position des stores
- Contrôle du débit du système d'irrigation
- Luminosité et volume des appareils intelligents
Intégration avec d'autres exemples
Combiner avec WebJoystick
Utilisez des curseurs pour les limites de vitesse et un joystick pour la direction :
Combiner avec WebDigitalPins
Utilisez des curseurs pour contrôler le PWM et les broches numériques pour l'allumage et l'arrêt:
Étapes suivantes
Après avoir maîtrisé l'exemple WebSlider, essayez :
- WebJoystick - Pour le contrôle directionnel en 2D
- WebDigitalPins - Pour un contrôle discret marche/arrêt
- WebMonitor - Pour déboguer les valeurs des curseurs
- MultipleWebApps - Combiner des curseurs avec d'autres contrôles
Assistance
Pour une aide supplémentaire :
- Consultez la documentation de l’API
- Consultez les tutoriels DIYables : https://newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-diyables-webapps
- Forums de la communauté Arduino