Température extérieur en 2.4Ghz avec un NRF24L01 Température extérieur en 2.4Ghz avec un NRF24L01
Menu

Température extérieur en 2.4Ghz avec un NRF24L01

22 janvier 2017 - Arduino, Domotique, Python, Raspberry Pi
Température extérieur en 2.4Ghz avec un NRF24L01

J’ai refait mon système pour récupérer la température extérieur afin d’avoir le moins possible de données perdues et de plantage du système avec un NRF24L01.

D’un coté un Arduino nano :

avec un émetteur récepteur en 2.4Ghz: 

et un capteur de température DS18D20 : 

Pour le schéma de branchement c’est assez simple il y a surtout pas mal de fil avec le NRF24L01 :

Pour le programme : https://github.com/Michelgard/Capteur-DS18D20-Arduino-avec-emetteur-2.4Ghz/blob/master/capteur_SIMPLENF24.ino

Et vous trouverez toutes les librairie utilisé ici : https://github.com/Michelgard/Capteur-DS18D20-Arduino-avec-emetteur-2.4Ghz

Il suffit de brancher le montage avec un adaptateur USB (style téléphone) et il envoie la température toutes les 10mn.

Pour la réception j’utilise un Raspberry Pi avec un émetteur récepteur en 2.4Ghz :

Ce fichier : https://github.com/Michelgard/Capteur-DS18D20-Arduino-avec-emetteur-2.4Ghz/blob/master/Install-2.4Ghz-Raspberry vous indique toute la procédure en partant d’un raspberry fraîchement installé.

Toutes les librairies et les programmes Python sont ici : https://github.com/Michelgard/Capteur-DS18D20-Arduino-avec-emetteur-2.4Ghz

Il faut configurer le fichier configSQL.xml par rapport a votre serveur de bases de données et ajouter la table Temp_Ext avec le fichier .sql présent sur le Github.

Le programme Python lecture-capteurRF24.py a un mode verbose :

sudo python lecture-capteurRF24.py -v

Ce mode permet de vérifier les donnée reçues et la requête sql pour les tests.

Quand tout fonction vous pouvez lancer le programme Python au démarrage du Raspberry Pi :

sudo nano /etc/rc.local

ajouter "python lecture-capteurRF24.py &" (sans les "") avant le exit 0 à la fin du fichier

Et voilà la table se complète avec les températures :

  • miguipda

    Quel devrait être la consummation de batterie d’une batterie extérieur (donc waterproof) solaire pour alimenter l’émetteur (nano avec son wifi) dans nos contrées ardennaises ?

    Serait-ce une 5000, 8000 ou 10000 mAh ?

    Merci 😉

  • Bonjour,

    Le montage et le programme ne sont pas prévus pour être faible en consommation car chez moi le montage est à l’intérieur et branché sur un adaptateur USB sur le secteur.
    Je fais juste sortir le capteur par un petit trou entre le mur et le montant d’une fenêtre
    Mais un adaptateur de téléphone est suffisant donc moins de 1000mAh

  • mister

    Bonjour Michel et merci pour ton blog et le partage de tes projets.

    Je cherche à avoir plusieurs dispositifs tels que celui-ci mais je ne sais pas si c’est possible et comment faire communiquer sans conflits tous les nano avec le RPI. Tes initialisations des modules radio sont un peu confusionnants pour moi qui débute. Sais tu si c’est possible et quelles parties devrai-je modifier?
    Merci de ton aide. Cdt

    • Bonjour,
      Pour vous réponse dans mon montage le Raspberry est toujours à l’écoute donc il peux recevoir des info de plusieurs sources. Par contre si deux sources envoient des données en même temps je ne sais pas ce qui va se passer (jamais testé).
      Pour reconnaître l’émetteur le mieux c’est de mettre un indicatif au début de la transmission dans mon cas dans le programme de l’arduino j’ai ajouté cela : char SendPayload[32] = « RS1 : »
      J’avais prévu plusieurs émetteurs! Ensuite il suffit de lire les Trois premiers caractères de la chaine pour savoir la provenance.

      • mister

        Merci pour la réponse, j’ai continué mes recherches et suis tombé sur un site (http://www.elec-cafe.com/multiple-nodes-nrf24l01-wireless-temperature-ds18b20-with-arduino-uno-2-transmitter-1-receiver/) faisant communiquer 3 modules. La soluce semble être dans les « pipes », un genre de définition des noeuds de communication.
        J’ai testé avec 5 modules et réception sur un Rpi et n’ai pas de pb excepté de trop gros murs par endroits 😉 .
        Encore merci pour le partage des projets qui m’a bien inspiré dans la réalisation du mien et m’a obligé à le lancer dans la compréhension de ce serpent que n’osait approché.
        Bonne continuations