Raspberry Pi et Arduino : 10 projets utiles et réalistes pour débuter

Actualités

Ce guide pratique rassemble dix projets accessibles combinant Raspberry Pi et Arduino pour débuter en électronique et domotique. Il présente matériel, protocole MQTT, Node-RED, InfluxDB et Grafana afin de bâtir un serveur domotique local.

Les projets ciblent les projets débutants souhaitant apprendre programmation, capteurs et Internet des objets sans complexité initiale. Les points essentiels suivent pour choisir composants et étapes avant l’intégration des nœuds de capteurs.

A retenir :

  • Raspberry Pi comme serveur local et passerelle MQTT centralisée
  • Arduino Uno R4 WiFi pour acquisition de capteurs Si7021
  • IOTstack conteneurs Docker pour isolation et gestion simple
  • Node-RED, InfluxDB et Grafana pour stockage et visualisation

Matériel recommandé :

  • Arduino Uno R4 WiFi pour prototypage rapide
  • Raspberry Pi 4 ou 3B+ pour hébergement local
  • Module Si7021 pour température et humidité
  • Carte microSD 16 Go minimum pour le système

Raspberry Pi serveur domotique et IOTstack pour projets débutants

Fort des éléments pratiques précédents, la Raspberry Pi devient l’ossature pour héberger Mosquitto, Node-RED, InfluxDB et Grafana. Cette pile conteneurisée via IOTstack simplifie le déploiement et la maintenance du serveur domotique local.

A lire également :  Reprise de site : l’audit SEO express avant refonte

Installation de la pile IOTstack sur Raspberry Pi

Cette phase commence par mettre à jour le système et lancer le script d’installation de IOTstack depuis son dépôt. Selon IOTstack, la procédure installe Docker puis prépare des images prêtes à être déployées dans des conteneurs isolés.

Composant Rôle Coût indicatif Exemple modèle
Arduino Uno R4 WiFi Acquisition capteurs et publication MQTT Starter kit 40–60 € Uno R4 WiFi
Raspberry Pi 4 Serveur domotique et broker MQTT Pi complet 80–120 € Raspberry Pi 4
Si7021 Capteur température et humidité Module à quelques euros Adafruit Si7021
ESP32 Alternative nœud WiFi basse consommation Module 5–15 € ESP32-WROOM

Configurer ensuite la Pi avec une adresse IP fixe évite de rechercher l’hôte après chaque redémarrage. Une fois la pile lancée, Portainer CE permet d’administrer les conteneurs via une interface web conviviale.

Configurer l’adresse IP et administrer les conteneurs

Commencez par réserver une adresse IP via la configuration DHCP de votre box en utilisant l’adresse MAC de la Pi. Les commandes Docker et la sortie de docker ps confirment le bon démarrage des conteneurs et leur état healthy.

Matérialiser ces étapes facilite l’intégration des nœuds Arduino et des capteurs Si7021 sur le réseau local. Cette préparation mène naturellement à la création et à la publication des mesures par les nœuds de capteurs.

Arduino, nœud de capteurs et MQTT pour projets débutants

À partir de la Pi configurée, l’Arduino prend le rôle de nœud de capteurs pour collecter température et humidité à intervalles contrôlés. L’Arduino Uno R4 WiFi communique via MQTT, en publiant des messages JSON vers le broker local.

A lire également :  Valeur juridique : pétition en ligne, limites et bonnes pratiques

Branchement et lecture du Si7021 avec Arduino Uno R4 WiFi

Le module Si7021 se connecte au port Qwiic de l’Uno R4 via l’I2C secondaire Wire1 pour un prototypage sans soudure. Selon Adafruit, la bibliothèque Si7021 facilite l’instanciation et la lecture régulière des valeurs de température et d’humidité.

Lire les mesures toutes les cinq secondes accélère les tests, puis augmenter l’intervalle pour limiter le trafic réseau. La matrice de LED intégrée permet d’afficher état et erreurs lors de l’acquisition ou de la publication.

Publier JSON via MQTT et utiliser la matrice LED

Après connexion WiFi, la bibliothèque ArduinoMqttClient gère la liaison vers le broker, et ArduinoJson construit le payload JSON. Les messages comme {« temperature »:23.2, »humidity »:48.7} seront publiés sur un topic dédié pour ingestion par Node-RED.

Paramètres essentiels :

  • MQTT broker local ou test.mosquitto.org pour essais
  • Port MQTT 1883 non chiffré par défaut
  • QoS 0 pour trafic léger, QoS 2 pour fiabilité élevée
  • Intervalle de publication adaptatif selon variation

« J’ai testé l’Uno R4 WiFi avec le Si7021, la lecture était fiable et simple à intégrer au broker local. »

Lucas N.

Testez d’abord avec un broker public pour vérifier la publication avant le déploiement local. Le passage à un broker embarqué sur la Pi améliore la latence et la résilience locale.

A lire également :  Quelle est la meilleure application pour l'actualité ?

Node-RED, InfluxDB et Grafana pour visualisation domotique

Conçu pour traiter ces publications MQTT, Node-RED orchestre la transformation et l’envoi vers InfluxDB avant toute visualisation. Selon f-leb, Node-RED permet un développement low-code rapide pour router et formater les données reçues des topics MQTT.

Déployer flux Node-RED et créer la base InfluxDB

Dans Node-RED, le nœud mqtt in s’abonne au topic et dirige msg.payload vers un nœud function pour composer le format attendu par influx batch. Ensuite, la base sensors4dvp est créée via l’invite influx du conteneur InfluxDB.

Commande InfluxQL But Exemple résultat
CREATE DATABASE sensors4dvp Créer la base de données pour mesures Base disponible pour insertions
SHOW MEASUREMENTS Lister les measurements existants home_measurement
SELECT * FROM home_measurement ORDER BY time DESC LIMIT 10 Afficher les dernières valeurs Liste horodatée des mesures
SELECT count(*) FROM home_measurement Vérifier nombre d’enregistrements Compteurs de température et humidité

Diriger le flux vers influx batch permet d’indexer tags et fields pour des requêtes efficaces. Après insertion, la vérification via SELECT confirme la bonne réception des séries temporelles.

Construire tableaux de bord Grafana et accès Internet sécurisé

Une fois la source home_sensors renseignée, Grafana permet de créer panels Time series et jauges pour température et humidité en temps réel. Selon MQTT.org, la sécurisation des échanges reste essentielle lorsqu’on ouvre l’accès depuis Internet.

Bonnes pratiques :

  • Activer authentification sur Grafana et changer mots par défaut
  • Utiliser Duck DNS pour lier un nom de domaine dynamique
  • Ouvrir uniquement les ports nécessaires via redirection sécurisée
  • Envisager VPN ou WireGuard pour accès chiffré depuis l’extérieur

« J’ai mis Grafana derrière Duck DNS et un VPN, l’accès distant est devenu sécurisé et fiable. »

Marie N.

« Le flux Node-RED a transformé mes JSON en mesures InfluxDB sans écrire beaucoup de code. »

Paul N.

« Avis technique : séparer les services en conteneurs réduit le risque d’interférence lors des mises à jour. »

Alex N.

Pour approfondir, consultez tutoriels vidéo montrant déploiement IOTstack et création de dashboards pas à pas. Ces ressources visuelles aident à suivre les actions sur Raspberry Pi, Node-RED et Grafana.

Un second tutoriel montre l’intégration Arduino MQTT et la lecture des messages JSON depuis un client mobile. Ces démonstrations complètent la compréhension du cycle complet capteur→serveur→visualisation.

Source : f-leb, « Configuration d’un serveur domotique avec MQTT, Node-RED, InfluxDB et Grafana », Developpez.com, 2024 ; Adafruit, « Si7021 Library », Adafruit ; SensorsIot, « IOTstack install », GitHub, 2024.

Articles sur ce même sujet

Laisser un commentaire