Cours:LPTraitDonnee1 : Différence entre versions
(→NodeRed) |
(→NodeRed) |
||
Ligne 30 : | Ligne 30 : | ||
* Node-RED Cookbook : https://cookbook.nodered.org | * Node-RED Cookbook : https://cookbook.nodered.org | ||
* Un guide assez clair et complet sur l'écriture de blocs de fonctions : https://stevesnoderedguide.com/node-red-functions. En particulier : | * Un guide assez clair et complet sur l'écriture de blocs de fonctions : https://stevesnoderedguide.com/node-red-functions. En particulier : | ||
− | ** | + | ** comment gérer plusieurs entrées |
− | ** | + | ** comment gérer plusieurs sorties |
** complément de la doc officielle sur ce point : https://nodered.org/docs/user-guide/writing-functions | ** complément de la doc officielle sur ce point : https://nodered.org/docs/user-guide/writing-functions | ||
* '''Guide de survie''' : | * '''Guide de survie''' : |
Version du 13 mars 2022 à 08:44
Sommaire
MQTT
- Lecture
- Comprendre MQTT : https://www.lemagit.fr/conseil/Internet-des-Objets-bien-comprendre-MQTT
- (Si besoin) Installation des outils (plusieurs windows 10 + 1 W7+ 1 linux)
- Informations sur https://mosquitto.org pour tous les os
- Un tuto MQTT : https://hackmd.io/@pmanzoni/BJ9hwSfhG
Exercices à faire
Note pour les utilisateurs de Windows : il sera probablement plus commode d’utiliser PowerShell (intégré à Windows) en guise de terminal plutôt que la rustique invite de commande.
- Lire ce document et faire les exercices : Fichier:Tutorial mqtt.pdf (source J.Y. Tigli : http://www.tigli.fr)
- Utiliser ce broker graphique : https://lp-iot.cloud.shiftr.io : (visualisation des messages entrants et sortants).
- Il est nécessaire de fournir un numéro d’utilisateur et un mot de passe.
- Exemple
mosquitto_pub -u lp-iot -P vHm5YuMEPJcpNfss -h lp-iot.cloud.shiftr.io -t NomDuTopic -m ContenuDuMessage
- ou le broker lancé par défaut sur chaque machine : échanger des infos entre deux machines (par binôme).
- ou le broker interne (10.98.35.245)
NodeRed
- Lecture de documentations
- Node.js (moteur de Node-RED) :https://nodejs.org/fr/
- Node-RED : https://nodered.org
- node-red-dashboard (interface utilisateur) pour node-RED : https://flows.nodered.org/node/node-red-dashboard
- - ou dashboard-evi en alternative : https://flows.nodered.org/node/dashboard-evi
- Node-RED Cookbook : https://cookbook.nodered.org
- Un guide assez clair et complet sur l'écriture de blocs de fonctions : https://stevesnoderedguide.com/node-red-functions. En particulier :
- comment gérer plusieurs entrées
- comment gérer plusieurs sorties
- complément de la doc officielle sur ce point : https://nodered.org/docs/user-guide/writing-functions
- Guide de survie :
- Lancer NodeRed en ligne de commande (bash ou powershell, en mode administrateur sur les machines de l'IUT) :
node-red.cmd
- ouverture navigateur sur
http://127.0.0.1:1880
- interfaces graphiques sur
http://127.0.0.1:1880/ui
(par défaut)
- Lancer NodeRed en ligne de commande (bash ou powershell, en mode administrateur sur les machines de l'IUT) :
(si besoin) Installer Node-Red sur Android
Suivre les indications données ici : https://nodered.org/docs/getting-started/android
- Installer Termux : https://termux.com
- Ouvrir Termux et taper
apt update
apt upgrade
apt install coreutils nano nodejs
- Ensuite
npm i -g --unsafe-perm node-red
Si cette commande ne passe pas (certains Android apparement), taper
pkg install yarn
yarn global add npm
npm i -g --unsafe-perm node-red
- Lancer ensuite node-red
node-red
- Ouvrir ensuite un navigateur sur
http://localhost:1880
depuis l'appareil Android. Vous pouvez également accéder à ce node-red depuis un PC par exemple) en remplaçant localhost par l'adresse IP de l'appareil Android. Pour connaitre celle-ci, taper dans Termux :
ifconfig
Exercices à faire
- (si besoin) Installer Node.js puis NodeRed
- (si besoin) Installer node-red-dashboard
- En ligne de commande :
npm install node-red-dashboard
- En ligne de commande :
- Exercices (tutoriels) sans MQTT :
- Exercices (tutoriels) avec MQTT
- Tuto node-RED dashboard : https://projetsdiy.fr/node-red-dashboard-interface-partie1/
Travail à faire et rendre
- Travail :
- une partie "collecte de donnée" qui doit envoyer des données sur un broker
- une partie "affichage" qui doit lire des données du broket et réaliser un affichage graphique
- Cahier des charges :
- Exploiter les données météorologiques de OpenWeather
- Depuis Node-Red :
node-red-node-openweathermap
, https://flows.nodered.org/node/node-red-node-openweathermap (bien lire la doc !)
- Depuis Node-Red :
- Les données doivent être enregistrées progressivement dans un fichier texte pour archivage
- En respectant un contexte « objet connecté», vous pourrez ajouter les fonctionnalités que vous souhaitez. Dans la logique de réaliser un "objet connecté" rapidement, vous pourrez évidemment utiliser tout code ou flow trouvé sur le net, à condition de le mentionner.
- Exploiter les données météorologiques de OpenWeather