Avec le Raspberry Pi et certains capteurs, il est facile de mesurer la température sans trop d’effort. De plus, cependant, l’humidité dans certaines situations ou projets (comme une station météorologique) peut être éclairante. Des capteurs tels que le DHT11 et le DHT22 ne sont pas seulement disponibles pour quelques euros, mais ils peuvent aussi mesurer la température aussi bien que l’humidité.
Accessoires
Comme les capteurs transportent déjà (presque) tout, à part une résistance, peu d’accessoires supplémentaires sont nécessaires. J’ai utilisé ceci :
Vous pouvez voir la différence entre DHT11 et DHT22 ici. Par conséquent, le DHT11 (bleu) est moins cher, mais le DHT22 (blanc) est plus précis et dure plus longtemps. Pour des applications dans des zones « extrêmes » (0-20% ou 80-100% d’humidité), le DHT22 devrait être utilisé, car il supporte également ces zones contrairement au DHT11. Par exemple, j’ai un capteur DHT22 dans mon réfrigérateur pour mesurer et enregistrer la température et l’humidité. En général, le modèle 11er devrait également être suffisant.
Installation du capteur d’humidité Raspberry Pi
Le pin gauche du capteur est relié à 3V3 de Pi (pin 1), le deuxième pin du capteur via une résistance de rappel (4.7k – 10kΩ) avec un GPIO libre de la framboise (GPIO4, pin 7) et le pin supérieur droit vient à GND (pin 6) du Pi. Le deuxième pin à partir de la droite du capteur reste libre.
La structure est identique pour DHT11 ou DHT22 puisque les fiches sont associées de la même manière.
Installation et essai du logiciel d’humidité Raspberry Pi
Tout d’abord, certains paquets doivent être installés :
sudo apt-get update sudo apt-get install build-essential python-dev python-openssl git
Maintenant la bibliothèque pour les capteurs peut être chargée. J’utilise une bibliothèque pre-built Adafruit qui supporte une variété de capteurs :
git clone https://github.com/adafruit/Adafruit_Python_DHT.git && cd Adafruit_Python_DHT sudo python setup.py install
Ceci crée une bibliothèque Python que nous pouvons facilement intégrer dans nos projets.
Si tout s’est bien passé, on peut déjà lire la température et l’humidité. La façon la plus simple est d’utiliser d’abord les fichiers de démonstration :
cd examples sudo ./AdafruitDHT.py 11 4
Le premier paramètre (11) indique quel capteur a été utilisé (22 pour le DHT22) et le second, à quel GPIO il est connecté (pas le numéro de pin, mais le numéro GPIO). Ceci produit une sortie comme la suivante :
$ sudo ./AdafruitDHT.py 11 4 Temp=24.0* Humidity=41.0%
Attention : Les capteurs sont seulement prêts chaque deux secondes. Faites attention à ne pas commencer une requête à chaque seconde.
Pour intégrer la bibliothèque d’humidité Raspberry Pi dans d’autres projets (Python), vous avez seulement besoin du suivant :
1 2 3 4 5 6 |
import Adafruit_DHT ... sensor = Adafruit_DHT.DHT11 pin = 4 humidity temperature = Adafruit_DHT.read_retry(capteur, pin) ... |
Enregistrer les données en permanence
Pour les stations météorologiques et les projets similaires de surveillance de la température et de l’humidité, il est utile d’enregistrer ces valeurs à intervalles de temps réguliers de sorte qu’elles puissent être analysées ultérieurement. Une possibilité serait d’économiser dans la base de données locale, mais cela a l’inconvénient que dans certaines circonstances, la carte SD pourrait être facturée trop chère.
Par conséquent, j’ai choisi une méthode différente qui stocke les données sur un serveur externe. Ce service est gratuit pour une utilisation normale et il est très facile de sauvegarder les données, comme montré ici :
Un commentaire
Bonjour,
Il faudrait modifier la ligne :
« sudo apt-get install build-essential python-dev python-openssl git »
et rajouter python-setuptools tel que :
« sudo apt-get install build-essential python-dev python-openssl git python-setuptools »
Sans ce package vous rencontrez l’erreur:
Traceback (most recent call last):
File « setup.py », line 1, in
from setuptools import setup, find_packages, Extension
ImportError: No module named setuptools
Merci pour le tuto.
Alexis