Build Real-Time IoT Dashboard: Node-RED + InfluxDB + Grafana + MQTT Tutorial (MING)

IoT Frontier
24 Nov 202424:55

Summary

TLDRDans cette vidéo, Hariharnath nous guide à travers un projet IoT complet utilisant la pile MING pour surveiller les données de température et d'humidité à partir d'un capteur DHT11 avec un Raspberry Pi. Le processus couvre l'installation de logiciels essentiels tels que Mosquitto MQTT, Node-RED, InfluxDB, et Grafana, et l'intégration de ces outils pour publier, stocker et visualiser les données. Chaque étape, de l'installation à la configuration des capteurs, est expliquée en détail, offrant une vue d'ensemble claire sur la manière de créer une solution IoT fonctionnelle pour le suivi des conditions environnementales.

Takeaways

  • 😀 Le projet consiste à surveiller les valeurs de température et d'humidité à l'aide d'un capteur DHT11, en utilisant la pile MING qui inclut Mosquitto MQTT, InfluxDB, Node-RED et Grafana.
  • 😀 Mosquitto MQTT est installé et configuré sur Raspberry Pi pour publier les données du capteur via MQTT.
  • 😀 Node-RED est installé sur Raspberry Pi pour souscrire aux données MQTT et les stocker dans la base de données InfluxDB.
  • 😀 InfluxDB est utilisé comme base de données NoSQL de séries temporelles pour stocker les données de température et d'humidité.
  • 😀 Grafana est configuré pour visualiser les données collectées par InfluxDB et afficher des graphiques de température et d'humidité.
  • 😀 Après l'installation des logiciels nécessaires, les étapes de configuration incluent l'obtention de l'adresse IP de Raspberry Pi et la configuration de Node-RED, InfluxDB et Grafana via l'interface web.
  • 😀 Le capteur DHT11 est connecté au Raspberry Pi, et un programme Python est utilisé pour collecter les données du capteur et les publier sur MQTT.
  • 😀 Le code Python utilise la bibliothèque Adafruit_DHT pour lire les données du capteur et paho-mqtt pour envoyer les données via MQTT.
  • 😀 Node-RED est configuré pour écouter les données MQTT publiées et les transférer vers InfluxDB pour stockage.
  • 😀 Grafana est configuré pour se connecter à InfluxDB, créer des visualisations et afficher les données en temps réel, y compris les températures et l'humidité.
  • 😀 Le projet guide étape par étape sur la mise en place de l'intégration des outils et la visualisation des données IoT à travers un tableau de bord Grafana.

Q & A

  • Qu'est-ce que le MING stack et quelles sont ses composantes ?

    -Le MING stack fait référence à quatre outils : Mosquitto MQTT, InfluxDB, Node-RED et Grafana. Ce stack est utilisé pour collecter, stocker, et visualiser les données des capteurs, comme la température et l'humidité, dans ce projet.

  • Quels sont les outils nécessaires pour installer Mosquitto MQTT sur Raspberry Pi ?

    -Pour installer Mosquitto MQTT, vous devez d'abord mettre à jour le dépôt avec 'sudo apt update' et 'sudo apt upgrade'. Ensuite, vous pouvez installer Mosquitto avec une commande spécifique, puis activer son service pour démarrer automatiquement avec 'systemctl enable mosquitto.service'.

  • Comment fonctionne Node-RED dans ce projet ?

    -Node-RED est utilisé pour s'abonner aux données MQTT et les envoyer vers InfluxDB. Il permet de visualiser et de traiter facilement les données collectées via l'interface graphique en ajoutant des nœuds pour chaque étape du processus.

  • Comment configurer InfluxDB pour ce projet ?

    -Pour configurer InfluxDB, vous devez d'abord ajouter la clé de dépôt InfluxDB au Raspberry Pi, puis installer InfluxDB et l'activer comme service. Ensuite, vous devez configurer la base de données en utilisant un token API et en créant un bucket pour stocker les données, comme 'sensor data'.

  • Pourquoi utiliser Grafana dans ce projet ?

    -Grafana est utilisé pour visualiser et analyser les données collectées dans InfluxDB. En configurant Grafana avec les données de température et d'humidité provenant d'InfluxDB, vous pouvez créer des tableaux de bord et des visualisations pour suivre l'évolution des paramètres.

  • Quelles étapes sont nécessaires pour configurer la connexion entre Node-RED et InfluxDB ?

    -Dans Node-RED, vous devez installer le nœud 'node-red-contrib-influxdb', puis configurer les paramètres de connexion à InfluxDB en ajoutant le token API, le nom du bucket et l'adresse de serveur. Ensuite, vous pouvez déployer le flux pour envoyer les données vers InfluxDB.

  • Quels capteurs sont utilisés dans ce projet et comment sont-ils connectés à Raspberry Pi ?

    -Le capteur utilisé dans ce projet est le DHT11, qui mesure la température et l'humidité. Il peut être connecté à Raspberry Pi via les broches GPIO, selon un schéma spécifique. Il existe des versions à 3 et 4 broches du DHT11.

  • Comment fonctionne le code Python pour publier les données du capteur sur MQTT ?

    -Le code Python utilise la bibliothèque 'Adafruit_DHT' pour lire les valeurs du capteur DHT11. Ces valeurs sont ensuite publiées sur le topic MQTT 'DHT11/sensor_data' en utilisant la bibliothèque 'paho-mqtt'. Le programme fonctionne en boucle et publie les données toutes les 2 secondes.

  • Comment configurer Grafana pour afficher les données de température et d'humidité ?

    -Dans Grafana, vous devez configurer une source de données InfluxDB en entrant l'adresse du serveur, le token API et le nom du bucket. Ensuite, vous pouvez créer un tableau de bord avec des visualisations pour la température et l'humidité en utilisant des requêtes Flux pour récupérer les données d'InfluxDB.

  • Que faire si une erreur 'Unauthorized access' se produit lors de la connexion à InfluxDB dans Node-RED ?

    -Si une erreur 'Unauthorized access' se produit, cela signifie que le token API utilisé dans Node-RED est incorrect ou manquant. Vous devez générer un nouveau token d'accès dans InfluxDB, puis le mettre à jour dans la configuration de Node-RED pour corriger l'erreur.

Outlines

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Mindmap

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Keywords

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Highlights

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Transcripts

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now
Rate This

5.0 / 5 (0 votes)

Related Tags
IoTRaspberry PiMING stackMQTTNode-REDInfluxDBGrafanaDHT11Pythonprojet IoT
Do you need a summary in English?