DEBUTANTS:
Cet exercice fait référénce à l'exercice précédent sur ce lien:
*************************************************
Si votre ruche est à proximité WiFI d'une BOX internet, voici comment récupérer son poids et l'afficher sur votre ordinateur.
Principe:
Et pour avoir quelque chose qui ressemble à ceci:
On va utiliser le même matériel que dans l'article précédent, on va ajouter quelques programmes à notre ordinateur et modifier le code installé précédemment.
La tare et le facteur de calibration restent inchangés.
Il nous faut installer Mosquitto et Node-Red
-------------------------------------------------------------------------------------
Pour ceux qui veulent aller plus vite, une machine virtuelle est disponible ici
puis continuez dans cet article à la fin de l'installation manuelle
-------------------------------------------------------------------------------------
Installation manuelle
1- Installer mosquitto
commencez par télécharger la version qui correspond à votre système d'exploitation en 32 ou 64 bits à cette adresse:
https://mosquitto.org/download/
c'est léger comme produit mais allez donc voir ici à quoi ça sert:
Mosquitto
Exécutez le et laissez coché l'option "service" comme ça on le démarre avec Windows.
Ensuite allez dans le menu démarrer puis exécuter
tapez la commande: services.msc et OK
vérifiez qu'il est en automatique et cliquez sur démarrer.
Fermez les fenêtres et c'est ok pour ça.
On utilisera Mosquitto par défaut , sans accès par mot de passe, sur le port TCP 1883.
2- Installer Node.js
Télécharger la version qui vous convient en 32 ou 64 ici :
https://nodejs.org/fr/
en principe on vous propose la version LTS dans la bonne version de votre Windows.
Installez. next next .. finish
Verifier que node est bien installé, ouvrez une invite de commande (admin)
ou simplement PowerShell et tapez les commandes
npm -v
puis node -v
ca doit vous répondre à peu pres ça:
PS C:\Users\"votrenom"> npm -v
6.4.1
PS C:\Users\"votrenom"> node -v
v10.15.1
Ensuite il faut installer node-red, l'application graphique.
toujours dans PowerShell ( c'est mieux ) ou en invite de commande tapez:
PS C:\Users\"votrenom"> install -g --unsafe-perm node-red puis entrée.
Laisser faire, oubliez les Warn , et c'est fait.
repérez bien "votrenom"
Maintenant on va lancer node-red au démarrage de Windows dans le planificateur de tâches.
Ouvrez le "Panneau de configuration" puis "Outils d’administration"
Cliquez "Planificateur de tâches"
Créer une nouvelle tâche
Mettez y un nom et les options comme ci dessous
Suivez les flèches
Onglet suivant,
Mettez ceci en remplacant votre nom de profil utilisateur:
C:\Users\<votrenom>\AppData\Roaming\npm\node-red.cmd
ex:
C:\Users\gle\AppData\Roaming\npm\node-red.cmd
puis ok
passez l'onglet ' conditions' et allez sur 'Paramétres'
laissez les options par défaut et cliquez OK
une fenêtre s'ouvre , entrez votre mot de passe et cliquez OK
Dans la liste des tâches, recherchez celle que vous avez créée et cliquez bouton droit : démarrer
Sinon redémarrer votre PC.
testons si c'est ok:
Ouvrez votre navigateur internet, et suivez cette adresse:
http://127.0.0.1:1880
Si vous ne voyez pas ça c'est raté
Bien , maintenant on reste sur node-red et il nous faut installer le Dashboard pour les Camemberts et les graphs.
Ouvrir le menu ( barres en haut à droite) puis cliquez Manage palette
Allez sur l'onglet Install, dans le champ texte de recherche , tapez: dashboard
Recherchez et utilisez l'ascenseur pour trouver "node-red-dashboard" version 2.12.2 ou supérieure.
Cliquez install à droite, attendez que le statut installed soit affiché puis cliquez : close.
En récompense de vos efforts on va pouvoir tester si tout fonctionne .
Je vous expliquerai en details comment gérer les flux et comment les afficher correctement dans dashboard plus loin.
Node-red va nous permettre d'importer des flux tout prêts.
Je vous ai laissé un fichier "balance-maison.txt"
Ouvrez le avec notepad.exe puis sélectionnez le tout et faites Copier.
ensuite allez dans le menu ( en haut et à droite ) puis cliquez :
import -> clipboard
une fenêtre s'ouvre et vous faites coller puis import en bas à droite.
les nodes sont collés à votre souris déplacez et cliquez pour les déposer au centre de votre fenêtre.

Le bouton deploy est rouge , cliquez deploy vous valider la configuration.
Pour tester la configuration on utilise 2 flux
Par le flux de gauche on va injecter des données aléatoires, des valeurs de 1 à 100 vers le topic Mqtt que j'ai nommé balance/poids
Par le flux de droite on va simplement s'abonner au topic balance/poids et récupérer les données qu'on va afficher simultanément:
1- dans la fenêtre de debug
2- dans un compteur
3- dans un graph
Ensuite on supprimera le flux de gauche pour récupérer les données envoyées par notre balance par Mqtt embarqué dans notre module ESP8266 WiFi vers le topic balance/poids.
aller sur le bouton Dashboard et cliquez sur ce bouton ( affichage graphique ) ou allez sur:
Admirez ! ...
ARRET de l'injection Tests
Quand vous en avez marre vous pouvez arrêter l'injection en supprimant le lien entre le node "injection test" et "nombre aléatoire" sélectionnez le lien sur le graphique puis appuyer sur suppr du clavier et cliquez DEPLOY !
Avant d'injecter de nouvelles valeurs il est préférable de vider le graph
allez sur node-red, cliquez sur le node "Graphique"
repérez la ligne Type: Line Chart
remplacer par Bar Chart
cliquez Done et Deploy
retournez sur le node "Graphique" et remettez en Line Chart
et dans la ligne du dessous mettez 1 weeks (1 semaine pour commencer)
ne surchargez pas trop le nombre de points à afficher au départ.
ne surchargez pas trop le nombre de points à afficher au départ.
puis DONE et DEPLOY
le graph doit être vide de données injectées et prêt a recevoir 1 semaine glissante du poids de votre balance.
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
fin installation manuelle
------------------------------------------------------------------------------------
Programmation du module Esp8266 WEMOS
Comme la fois précédente vous démarrez l'IDE Arduino et vous ouvrez :
"MQTT-balance-poids-Wemos-Wifi.ino"
Attention, il faut vérifier que la bibliothèque PubsubCilent soit installée sinon à faire avant le téléversement ( merci Pascal ) :
Attention, il faut vérifier que la bibliothèque PubsubCilent soit installée sinon à faire avant le téléversement ( merci Pascal ) :
Vous aurez à modifier DANS CE PROGRAMME:
1-votre SSID wifi ( de votre box)
2-le mot de passe Wifi
3-l'adresse IP du PC sur lequel tourne MOSQUITTO ( votre PC)
4-votre facteur de calibration
5-votre tare fictive
enregistrez vos modifications et cliquez sur l'icône V pour vérifier la cohérence avant de téléverser.
Vous aurez à modifier sur votre PC
- le pare-feu ou votre antivirus s'il fait pare-feu
Soit vous désactivez le pare-feu ou vous ouvrez en entrée le port TCP 1883
c'est la porte d'entrée des données envoyées par le module de la balance.
Les paramétres Arduino n'ont pas dû changer, verifier dans Outils que vous êtes restés sur LOLIN(WEMOS)D1 mini pro et le port com.
Branchez le module à l'USB, téléversez.
chargez et déchargez votre balance, visualisez les données qui arrivent sur le debug et dans le graph.
Éloignez votre balance, mettez éventuellement un répéteur Wifi si le signal est insuffisant et alimentez en permanence avec un adaptateur secteur-miniusb 5V (un ancien chargeur téléphone portable par exemple)
Félicitations !
Lien vers les nouveaux fichiers: ICI
le lien vers les autres fichiers est en fin de l'article précédent.
Prochain article à venir:
Récupérer les données dans une base de données InfluxDB via LoraWan privé en longue distance ( 2 - 10 km) en ultra faible consommation d’énergie et affichage des graphiques avec Grafana.