Arduino - Traceur Web
Dans ce tutoriel, nous apprendrons à construire un traceur web qui ressemble au Traceur Série dans l'IDE Arduino. Avec ce système, vous pouvez facilement surveiller les données en temps réel provenant d'un Arduino à l'aide d'un navigateur web sur votre smartphone ou ordinateur. Les données seront affichées sous forme de graphique, semblable à ce que vous voyez dans le Traceur Série dans l'IDE Arduino.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Comment fonctionne le traceur Web
Voici comment fonctionne le processus :
- Le code Arduino configure à la fois un serveur web et un serveur WebSocket.
- Lorsqu'un utilisateur accède à la page web hébergée sur la carte Arduino via un navigateur web, le serveur web renvoie le contenu de la page web (HTML, CSS, JavaScript) au navigateur.
- Le code JavaScript sur la page web crée un graphique qui ressemble au Plotter Série.
- Lorsqu'un utilisateur clique sur le bouton de connexion sur la page web, le JavaScript initie une connexion WebSocket avec le serveur WebSocket sur la carte Arduino.
- L'Arduino transmet les données au navigateur web via cette connexion WebSocket dans un format similaire à celui utilisé par le Plotter Série (détails dans la section suivante).
- Le code JavaScript dans le navigateur web reçoit ces données et les affiche sur le graphique.
Le format de données que l'Arduino envoie au traceur web
Pour tracer plusieurs variables, nous devons séparer les variables les unes des autres par le caractère «\t» ou " ". La dernière valeur DOIT être terminée par les caractères «\r\n».
En détail :
- La première variable
- Les variables intermédiaires
- La dernière variable
Pour plus de détails, veuillez consulter le tutoriel Arduino - Traceur Série.
Code Arduino - Traceur Web
Le contenu de la page web (HTML, CSS, JavaScript) est stocké séparément dans un fichier index.h. Nous aurons donc deux fichiers de code dans l'IDE Arduino :
- Un fichier .ino contenant du code Arduino, qui crée un serveur web et un serveur WebSocket.
- Un fichier .h, qui contient le contenu de la page web.
Étapes rapides
- Si c'est la première fois que vous utilisez Arduino Uno R4, consultez comment configurer l'environnement pour Arduino Uno R4 sur Arduino IDE.
- Connectez la carte Arduino à votre PC via un câble micro USB.
- Ouvrez Arduino IDE sur votre PC.
- Sélectionnez la bonne carte Arduino (Arduino Uno R4 WiFi) et le port COM.
- Ouvrez le Gestionnaire de bibliothèques en cliquant sur l'icône du Gestionnaire de bibliothèques dans la barre de navigation gauche de l'Arduino IDE.
- Recherchez "mWebSockets", puis trouvez les mWebSockets créés par Dawid Kurek.
- Cliquez sur le bouton Installer pour installer la bibliothèque mWebSockets.
- Sur Arduino IDE, créez un nouveau sketch, nommez-le, par exemple, ArduinoGetStarted.com.ino
- Copiez le code ci-dessous et ouvrez-le avec Arduino IDE
- Modifiez les informations WiFi (SSID et mot de passe) dans le code pour qu'elles correspondent à vos propres identifiants de réseau.
- Créez le fichier index.h sur l'IDE Arduino en :
- Cliquant soit sur le bouton situé juste en dessous de l'icône du moniteur série et choisissez Nouvel Onglet, soit en utilisant les touches Ctrl+Shift+N.
- Donnez le nom de fichier index.h et cliquez sur le bouton OK.
- Copiez le code ci-dessous et collez-le dans index.h.
- Maintenant, vous avez le code dans deux fichiers : ArduinoGetStarted.com.ino et index.h
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur Arduino.
- Accédez au répertoire C:\Users\VOTRE_COMPTE\Documents\Arduino\libraries\mWebSockets\src\.
- Trouvez le fichier config.h et ouvrez-le avec un éditeur de texte.
- Regardez la ligne 26, vous la verrez comme ci-dessous :
- Modifiez cette ligne par celle ci-dessous et enregistrez-la :
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code vers Arduino.
- Ouvrez le moniteur série
- Vérifiez le résultat sur le moniteur série.
- Prenez note de l'adresse IP affichée, et entrez cette adresse dans la barre d'adresse d'un navigateur web sur votre smartphone ou PC.
- Vous verrez la page web comme ci-dessous :
- Cliquez sur le bouton CONNECT pour connecter la page web à Arduino via WebSocket.
- Vous verrez que le traceur trace les données comme sur l'image ci-dessous.
- Vous pouvez ouvrir le Traceur Série dans l'IDE Arduino pour le comparer avec le Traceur Web dans le navigateur web.
- Si vous modifiez le contenu HTML dans le fichier index.h sans toucher à quoi que ce soit dans le fichier ArduinoGetStarted.com.ino, lorsque vous compilerez et téléchargerez le code sur Arduino, l'IDE Arduino ne mettra pas à jour le contenu HTML.
- Pour que l'IDE Arduino mette à jour le contenu HTML dans ce cas, effectuez un changement dans le fichier ArduinoGetStarted.com.ino (par exemple, ajouter une ligne vide, ajouter un commentaire....)
Vous verrez une erreur comme ci-dessous :
Pour corriger cette erreur :
※ NOTE THAT:
Explication du code ligne par ligne
Le code Arduino ci-dessus contient des explications ligne par ligne. Veuillez lire les commentaires dans le code !