Node-Red

image-1587456797926.png

Introduction

Node-RED est une solution développée par IBM, Open Source et basée sur NodeJS qui permet de programmer un serveur de manière graphique. Elle est très simple à prendre en main (même si on a pas d'expérience dans la programmation) et permet de développer très rapidement toute sortes d'application dans de nombreux domaine : services web, stockage et affichage de donnée, domotique, surveillance, robotique ...

image-1587456822677.pngInterface de programmation

Il fonctionne sur presque toutes les plateformes logicielles et matérielles:

image-1587457862563.pngExemple d'application de suivi de consommation électrique

Fonctionnement basique

Installation et connexion

L'interface de programmation fonctionne elle même en mode serveur, c'est à dire qu'elle n'offre pas une interface directe. En faisant une analogie, c'est comme Microsoft Word et Google Doc. Le premier se lance sur son ordinateur et on travaille dans une interface qui fonctionne localement sur le PC. Le second par contre on passe par son navigateur et la majeure partie du programme tourne sur les serveur de Google. Node-RED c'est pareil : qu'importe où on l'installe (localement, sur son smartphone ou sur un serveur ailleurs), une fois installée il faut se connecter dessus avec son navigateur pour l'utiliser.

Le plus simple pour commencer à comprendre est d'utiliser la solution sous Android. Pour celà, il suffit d'installer l'application Red Lite  et de la lancer. Une fois démarrée, il suffit de spécifier un login et un mot de passe, puis d'appuyer sur start. Au bout de quelques secondes, vous devriez voir en bas de l'écran s'afficher l'URL à taper dans un navigateur sur n'importe quel ordinateur connecter au même réseau pour accéder à l'interface.

image-1587458916696.png

Les étapes qui vont suivre sont normalement complètement indépendantes du mode d'installation précédemment utilisé. Android est préconisée au début car c'est la plus simple et la plus rapide, on se s'embête pas avec ça !

Une fois connecté, on me demande le login et le mot de passe que j'ai spécifié dans l'application :

image-1587459008262.png

Me voila dans l'interface !

image-1587459069319.png

Programmation

Le process est très simple :

Evidemment il s'agit d'une description très basique du fonctionnement. Beaucoup d'autres outils et mécaniques sont incluses dans la solution, mais il est plus simple en général de les voir au fur et à mesure.

Ateliers

Utilisation de l'API OpenWeatherMap 

Présentation

OpenWeatherMap est une plateforme permettant de récupérer des données météo. Ils mettent à disposition ce qu'on appelle une API qui permet d'obtenir ces données d'une manière simple pour des programmes. Cette API est gratuite avec certaines limitations : on a par exemple pas le droit d'utiliser l'API plus de 1000 fois/jour, mais dans le cadre d'une utilisation personnelle c'est très largement suffisant !

Grâce à Node-Red, on peut utiliser cette API pour récupérer des données météo (sur n'importe quel ville dans le monde) et les afficher :

image-1587459898912.png

Quelle utilité ?

Au-delà de satisfaire sa curiosité scientifique, on peut par exemple utiliser ces données pour mieux piloter son arrosage automatique, envoyer des messages d'alerte (SMS, mail, notification), construire un objet connecté qui change de couleur en fonction du temps qu'il va faire, ou bien encore faire des suivis agronomiques.

Autre idées en vrac

Se connecter avec sa ville

Présentation

Plusieurs collectivités (villes, métropoles ...) ont mis en place des services de mise à disposition de données publiques : transport, cadastres, agenda touristique, voirie ... Tout est susceptible d'être proposé aux citoyens.

image-1587460797193.png

La métropole de Montpellier met ainsi en ligne des données à disposition de ses administrés au travers du portail https://data.montpellier3m.fr/

Trois jeux de données temps réel sont particulièrement intéressants :

Quelle utilité ?

Mise en place

Plusieurs stratégies peuvent être mise en place afin de réaliser un ateliers autour de NodeRED :

Serveur local

Avantage(s)
Inconvénient(s)

Serveur distant

Avantage(s)
Inconvénient(s)

Installation sur PC

Avantage(s)
Inconvénient(s)

Recommandation

Serveur distant + installation sur PC avec point d'accès 4G. Cette configuration permet de répondre à presque toutes les attentes tout en couvrant un maximum de cas de défaillance.

Scénario d'usage :


Revision #10
Created 21 April 2020 07:17:59 by Admin
Updated 25 May 2020 07:18:21 by Admin