Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
raspberrypi:linux:nodered [2022/07/02 16:26] – [3.1 Installation de Node-RED] phil | raspberrypi:linux:nodered [2024/07/09 11:33] (Version actuelle) – [Créer un flux de données et une interface utilisateur avec Node-RED] phil |
---|
===== Créer un flux de données et une interface utilisateur avec Node-RED ===== | ===== Créer un flux de données et une interface utilisateur avec Node-RED ===== |
| |
[Mise à jour le 2/7/2022] | [Mise à jour le 27/7/2022] |
{{ :raspberrypi:linux:3c_node_red:iconraspi.png?nolink&60|}}{{ :raspberrypi:linux:3c_node_red:node-red-icon.png?nolink&70|}} | {{ :raspberrypi:linux:3c_node_red:iconraspi.png?nolink&60|}}{{ :raspberrypi:linux:3c_node_red:node-red-icon.png?nolink&70|}} |
| |
* Référence - <html><a href="https://nodered.org/docs/user-guide/" target="_blank">Guide de l'utilisateur</a></html> sur le site node-RED.org | * Référence - <html><a href="https://nodered.org/docs/user-guide/" target="_blank">Guide de l'utilisateur</a></html> sur le site node-RED.org |
* Tutoriel <html><a href="https://randomnerdtutorials.com/install-node-red-raspberry-pi/" target="_blank">Installez Node-RED sur Raspberry Pi (fonctionne sur RPI OS 64 bits)</a></html> | * Tutoriel <html><a href="https://randomnerdtutorials.com/install-node-red-raspberry-pi/" target="_blank">Installez Node-RED sur Raspberry Pi (fonctionne sur RPI OS 64 bits)</a></html> |
* Tutoriel <html><a href="https://projetsdiy.fr/mosquitto-broker-mqtt-raspberry-pi/" target="_blank">"Bien débuter avec le Broker MQTT Mosquitto sur Raspberry Pi"</a></html> | |
* Tutoriel <html><a href="https://randomnerdtutorials.com/getting-started-with-node-red-dashboard/" target="_blank">"Démarrer avec le tableau de bord Node-RED"</a></html> | * Tutoriel <html><a href="https://randomnerdtutorials.com/getting-started-with-node-red-dashboard/" target="_blank">"Démarrer avec le tableau de bord Node-RED"</a></html> |
| |
* [[raspberrypi:linux:mqtt_mosquitto|Wiki Raspberry Pi sous Linux - Installer un broker MQTT Mosquitto sur un Raspberry Pi]] | * [[raspberrypi:linux:mqtt_mosquitto|Wiki Raspberry Pi sous Linux - Installer un broker MQTT Mosquitto sur un Raspberry Pi]] |
* [[reseaux:outils:mqttlens|Wiki Réseau - Test d'un broker Mosquitto avec MQTTlens]] | * [[reseaux:outils:mqttlens|Wiki Réseau - Test d'un broker Mosquitto avec MQTTlens]] |
* [[arduino:clientmqttesp8266|Wiki Arduino - Mise en œuvre d'un client MQTT sur un EP8266 (ESP32) Feather Huzzah, MKR1010 ou Arduino Uno Wifi 2]] | * [[microc:iot:clientmqttesp8266|Wiki Arduino - Mise en œuvre d'un client MQTT sur un EP8266 (ESP32) Feather Huzzah, MKR1010 ou Arduino Uno Wifi 2]] |
* [[web:eclipsepaho|Wiki Web - Créer un client MQTT (Websockets) avec Eclipse Paho]] | * [[web:eclipsepaho|Wiki Web - Créer un client MQTT (Websockets) avec Eclipse Paho]] |
* [[raspberrypi:linux:influxdb_NR|Wiki Raspberry Pi sous Linux - Sauvegarder ses données dans une base TSDB (InfluxdB)]] | * [[raspberrypi:linux:influxdb_NR|Wiki Raspberry Pi sous Linux - Sauvegarder ses données dans une base TSDB (InfluxdB)]] (A faire) |
| |
* **Mots-clés** | * **Mots-clés** |
Le moteur d'exécution est construit sur **Node.js**, tirant ainsi pleinement parti de son **modèle non bloquant**, piloté **par les événements**. Cela le rend idéal pour une utilisation sur du matériel à faible coût, tel que le Raspberry Pi, ainsi que dans le cloud. | Le moteur d'exécution est construit sur **Node.js**, tirant ainsi pleinement parti de son **modèle non bloquant**, piloté **par les événements**. Cela le rend idéal pour une utilisation sur du matériel à faible coût, tel que le Raspberry Pi, ainsi que dans le cloud. |
| |
<note>Les flux créés dans Node-RED sont stockés à l'aide de **JSON**, qui peut être facilement **importé** et **exporté** pour être partagé. | <callout type="primary" icon="true">Les flux créés dans Node-RED sont stockés à l'aide de **JSON**, qui peut être facilement **importé** et **exporté** pour être partagé.</callout> |
</note> | |
==== 2. Concept ==== | ==== 2. Concept ==== |
* **Source** : <html><a href="https://nodered.org/docs/user-guide/concepts" target="_blank">lien</a></html> sur le site nodered.org. | * **Source** : <html><a href="https://nodered.org/docs/user-guide/concepts" target="_blank">lien</a></html> sur le site nodered.org. |
{{ :raspberrypi:linux:simple-node-flow-example.jpg?nolink&450 |}} | {{ :raspberrypi:linux:simple-node-flow-example.jpg?nolink&450 |}} |
| |
<note tip>On peut installer des **nœuds supplémentaires** à l'aide du gestionnaire de paquets **npm** ou de l'interface d'administration.</note> | <callout type="tip" icon="true">On peut installer des **nœuds supplémentaires** à l'aide du gestionnaire de paquets **npm** ou de l'interface d'administration.</callout> |
| |
==== 3. Installation de Node-RED et du module dashboard ==== | ==== 3. Installation de Node-RED et du module dashboard ==== |
| * Installer la **dernière version de NodeJS** : <html><a href="https://pimylifeup.com/raspberry-pi-nodejs/" target="_blank">How to Install NodeJS to the Raspberry Pi</a></html> |
=== 3.1 Installation de Node-RED === | === 3.1 Installation de Node-RED === |
| |
* **Sur un Raspberry Pi** | * **Sur un Raspberry Pi** |
* **Source** : <html><a href="https://randomnerdtutorials.com/install-node-red-raspberry-pi/" target="_blank">Installez Node-RED sur Raspberry Pi (fonctionne sur RPI OS 64 bits)</a></html> | * **Source** : <html><a href="https://randomnerdtutorials.com/install-node-red-raspberry-pi/" target="_blank">Installez Node-RED sur Raspberry Pi (fonctionne aussi sur RPI OS 64 bits)</a></html> |
{{ :raspberrypi:linux:3c_node_red:iconraspi.png?nolink&30|}} | {{ :raspberrypi:linux:3c_node_red:iconraspi.png?nolink&30|}} |
| |
<note>Sur un Raspberry Pi qui tourne sur Raspberry Pi OS (**FULL**), Node-RED est "normalement" déjà installé (sinon, l'installer via //Préférence -> Add/Remove Software//). Pour le lancer, il suffit de cliquer sur le menu **Programmation** puis **Node-RED**. </note> | <callout type="primary" icon="true">Installer **Node-RED** en suivant le lien de la source ci-dessus.</callout> |
| |
<note tip>Node-RED fonctionnant en tant que **service**, il peut être **lancé** ou **stopper** à partir d'un terminal.</note> | <callout type="tip" icon="true">Node-RED fonctionnant en tant que **service**, il peut être **lancé** ou **stopper** à partir d'un terminal.</callout> |
| |
<code bash> | <code bash> |
</code> | </code> |
| |
<note warning>Si Node-RED ne se lance pas avec un message indiquant que le fichier settings.js n'est pas trouvé, créer le fichier ci-dessus dans le répertoire spécifié.</note> | <callout type="warning" icon="true">Si Node-RED ne se lance pas avec un message indiquant que le fichier settings.js n'est pas trouvé, créer le fichier ci-dessus dans le répertoire spécifié.</callout> |
| |
{{ :raspberrypi:linux:dashboard.png?nolink|}} | {{ :raspberrypi:linux:dashboard.png?nolink|}} |
</code> | </code> |
| |
<note warning>Redémarrez ensuite le Raspberry Pi pour vous assurer que toutes les modifications prennent effet sur le logiciel Node-RED</note> | <callout type="warning" icon="true">**Redémarrez** ensuite le Raspberry Pi pour vous assurer que toutes les modifications prennent effet sur le logiciel Node-RED</callout> |
| |
* **Sur un PC sous Windows** \\ Ouvrir une invite de commandes cmd ou **powershell**. <code powershell *.ps> | * **Sur un PC sous Windows** \\ Ouvrir une invite de commandes cmd ou **powershell**. <code powershell *.ps> |
</code> | </code> |
| |
<note>La mise à jour des modules se fait dans l'onglet **Palette** de Manage palette.</note> | <callout type="primary" icon="true">La mise à jour des modules se fait dans l'onglet **Palette** de Manage palette.</callout> |
| |
=== 3.3 Accès à l'éditeur et au tableau de bord === | === 3.3 Accès à l'éditeur et au tableau de bord === |