
Apprenez avec ce tuto comment connecter un capteur de température et d’humidité DHT11 à un Raspberry Pi Pico. Avec un script MicroPython, nous lirons toutes les deux secondes la température et l’humidité ambiante.
- Préparer le matériel
– Vous avez d’abord besoin d’un ordinateur pour pouvoir utiliser Thonny. Dans ce tutoriel, nous utiliserons un Raspberry Pi 4 comme ordinateur. Et Thonny est un EDI Python convivial pour interagir avec la carte Raspberry Pi Pico. Si vous n’avez jamais utilisé Thonny pour programmer le Raspberry Pi Pico, avant de continuer, vous feriez mieux de jeter un œil à notre tutoriel “Commencer à programmer le Raspberry Pi Pico“.
– Ensuite, vous avez besoin d’un câble USB avec prise micro-USB.
– Vous avez également besoin d’un Raspberry Pi Pico bien sûr. Pour ce tutoriel, vous avez besoin d’avoir les broches soudés à votre carte.
Et enfin, vous aurez besoin de quelques composants supplémentaires :
– un breadboard (nous utilisons un breadboard de 400 points)
– un capteur de température et humidité DHT11 ou DHT22
– des câbles Dupont
Si vous manquez des pièces, n’hésitez pas à visiter notre boutique. - Apprenez à connaître le capteur de température et d’humidité DHT11
Le DHT11 est un capteur peu coûteux et populaire pour mesurer la température et l’humidité. Le module nécessite 3 connexions au Raspberry Pi Pico: 3,3V; GND et une broche d’entrée GPIO. Comme le signal de sortie est 3,3V, celui-ci peut être directement connecté à une broche d’entrée GPIO du Raspberry Pi Pico.
La plage de température est comprise entre 0 et 50 ° C (+/- 2 ° C) et la plage d’humidité entre 20 et 90% (+/- 5%). Le capteur est assez lent et d’une précision limitée, mais c’est un capteur idéal pour réaliser vos expériences.
Soyez prudent ! Avant de brancher des composants sur les broches GPIO de votre Raspberry Pi Pico, assurez-vous que celui-ci ne soit pas connecté à votre ordinateur. - Mettez en place la partie matérielle
– placez le capteur DHT11 sur le breadboard
– connectez la broche DATA du capteur au GP16 (fil jaune)
– connectez la broche VCC du capteur avec 3V3(OUT) (fil rouge)
– connectez la broche GND du capteur à une broche GND du Pico (fil noir). - Ecrivez le code
L’objectif est d’écrire un script MicroPython assez basique qui nous permet de visualiser la température et l’humidité ambiante mesurée.
Installez d’abord la bibliothèque
Pour éviter une écriture de code étendue et compliquée, des bibliothèques sont souvent utilisées. Pour notre capteur de température et d’humidité DHT11, nous utiliserons également une bibliothèque. Nous avons trouvé la bibliothèque la plus appropriée chez ikornaselur. Comme ce fichier de cette bibliothèque est spécifique et ne vient donc pas automatiquement avec MicroPython, nous devons les installer nous-mêmes.
Donc, avant d’écrire le code, nous devrons télécharger les fichiers sur notre Raspberry Pi Pico. Vous pouvez télécharger un dossier ZIP contenant le fichier à installer ici.
Une fois téléchargé et décompressé sur notre ordinateur, nous téléchargeons ce fichier sur notre Raspberry Pico. Si vous ne savez pas comment faire cela, jetez un œil à notre tutoriel ‘Transférer des fichiers entre ordinateur et Raspberry Pi Pico‘. Si vous avez plusieurs dossiers sur votre Raspberry Pi Pico, assurez-vous de le télécharger dans le même dossier que le nouveau fichier que nous allons créer pour notre code principal. Et ne changez pas le nom du fichier de la bibliothèque bien sûr.
OK, maintenant que la bibliothèque est téléchargée sur notre Raspberry Pico, écrivez ou collez le code suivant dans l’IDE :
from machine import Pin
import time
from dht import DHT11, InvalidChecksum
sensor = DHT11(Pin(16, Pin.OUT, Pin.PULL_DOWN))
while True:
temp = sensor.temperature
humidity = sensor.humidity
print("Temperature: {}°C Humidity: {:.0f}% ".format(temp, humidity))
time.sleep(2)
Attention, MicroPython est sensible aux espaces. Ne supprimez pas les “tabs”.
Quelques explications à propos du code :from machine import Pin
: importer partiellement le module machine pour avoir accès aux pins GPIO.import time
: importer le module de temps. Cela nous permettra d’utiliser des tâches liées au temps.from dht import DHT11, InvalidChecksum
: pour importer le fichier de la bibliothèque DHT.sensor = DHT11(Pin(16, Pin.OUT, Pin.PULL_DOWN))
: pour créer un objet DHT11. Le fil de données est connecté au GP16 dans notre cas.while True:
est une boucle à l’infinie (jusqu’à ce que nous interrompons le programme).
Dans les 3 lignes suivantes, nous lisons les mesures et les imprimons à l’écran.time.sleep(2)
: enfin, avant de répéter la boucle, on attend 2 secondes - Exécutez le programme
Maintenant, il est temps d’enregistrer votre script. Assurez-vous d’enregistrer ce fichier MicroPython dans le même dossier que le fichier de la bibliothèque que vous avez téléchargé précédemment.
Cliquez ensuite sur le bouton Exécuter. Vous verrez la température et l’humidité actuelle apparaître toutes les 2 secondes sur l’écran.
Félicitations! Vous savez maintenant comment faire pour lire la température et l’humidité avec le capteur DHT11 connecté à votre Raspberry Pi Pico. Vous pouvez également utiliser le script pour le combiner avec notre tutoriel ‘Connecter un écran LCD à un Raspberry Pi Pico‘. Les mesures seront alors affichées sur l’écran LCD. Aie encore du plaisir avec ça!