L’une des nombreuses applications d’un Raspberry Pi est la mesure de la température. Dans des projets comme les stations météorologiques, vous voulez connaître la valeur exacte. L’utilisation d’un capteur de température Raspberry Pi à 1 fil facilite la lecture et vous n’aurez besoin que d’une broche GPIO.
Dans ce didacticiel, il est décrit comment utiliser le capteur de température DS18B20 Raspberry Pi et le logiciel dont vous aurez besoin. Dans d’autres projets, vous pouvez utiliser ce capteur même comme déclencheur pour refroidir votre boîtier Raspberry Pi et allumer un ventilateur.
Composants
Pour ce tutoriel, j’ai utilisé les parties suivantes:
Le capteur de température DS18B20 est également disponible en version étanche.
Si vous voulez un capteur plus avancé, qui peut également mesurer l’humidité, vous devriez jeter un œil au capteur DHT11 ou DHT22, qui mesure à la fois la température et l’humidité.
Description du capteur de température Raspberry Pi 1 fil
Le capteur de température renvoie une valeur longue de 9 à 12 bits qui peut être lue et convertie. Cependant, cela (jusqu’à présent) n’est possible que sur la broche 4 du GPIO (broche 7). Mais vous pouvez également commuter plusieurs capteurs en série (car il est basé sur le Protocole 1 fil).
Câblage du capteur de température
Le câblage ou le capteur de température DS18B20, y compris une résistance, est illustré. J’ai pris une pré-résistance de 4,7k Ω:
Si tout est câblé en conséquence, nous pouvons activer le protocole 1-Wire avec lui:
sudo modprobe w1-gpio
sudo modprobe w1-therm
Nous pouvons savoir si cela a fonctionné en entrant les informations suivantes:
lsmod
Les modules doivent maintenant être répertoriés, si aucune broche GPIO autre que 4 n’est utilisée ou si une erreur s’est produite lors de l’activation.
Pour que les modules soient chargés à chaque démarrage, nous les entrons dans le fichier / etc / modules:
sudo nano /etc/modules
et enfin ajoutez les deux lignes suivantes:
w1_gpio w1_therm
Pour l’étape suivante, nous avons d’abord besoin de l’ID du capteur. Si vous prévoyez de connecter plusieurs en série, il est préférable de tester chacun individuellement et de noter l’ID afin de ne pas le confondre plus tard.
Nous changeons le répertoire et imprimons les fichiers
cd /sys/bus/w1/devices/ ls
L’un des fichiers s’appelle 10-000802b4ba0e (différent pour vous) et est l’ID que nous utilisons pour interroger le capteur (veuillez ajuster l’ID):
cat /sys/bus/w1/devices/10-000802b4ba0e/w1_slave
Dans la sortie, nous voyons la dernière indication de la température (en «milli degré»)
31 00 4b 46 ff ff 05 10 1c : crc=1c YES 31 00 4b 46 ff ff 05 10 1c t=24437
Divisé par 1000, cela fait 24,437 ° C.
Script pour extraire la valeur de température du DS18B20
Pour lire la température plus facilement (par exemple en l’utilisant dans des projets de maison intelligente comme openHAB), j’ai écrit un petit script. Si vous souhaitez plus tard obtenir la sortie en tapant simplement Température, vous devez le mettre / usr / bin /:
sudo nano /usr/bin/temperature
Le contenu:
#! / bin / bash # Lire la température tempread=« chat /sys/autobus/w1/dispositifs/dix–000802b4ba0e/w1_slave« # Format temp=« écho « échelle = 2; »« écho ${tempread## * =} ` » / 1000 « | bc` # Production écho « La température mesurée est » $ temp « ° C » |
Donnez maintenant les droits appropriés:
sudo chmod +x /usr/bin/temperature
et maintenant si vous allez à la console et tapez
temperature
puis, la température actuellement mesurée apparaît. Si un message d’erreur apparaît, vous devez installer bc.
sudo apt-get install bc
Enfin, un petit conseil: si vous souhaitez mesurer avec le capteur à l’extérieur (par exemple, suspendu à la fenêtre) et que vous ne pouvez pas utiliser de gros fils à travers la mer de la fenêtre, un câble ruban convient également (ancien IDE ou câble de lecteur de disquette). ). Bien emballé dans un sac étirable, le tout est ensuite résistant aux intempéries (laissez l’air s’échapper et collez bien, cela affecte la mesure même minime). Ou vous achetez simplement un capteur étanche, vous pouvez par exemple mesurer également la température de votre chaudière à eau.
-
AZDelivery 2 x 1m DS18B20 Cable Capteur de Température Numérique TO92-55 - +125°C en Acier Inoxydable, Imperméable Compatible avec Arduino et Raspberry Pi incluant Un E-Book!✅ Les capteurs de température AZDelivery avec DS18B20 original, de haute qualité avec boîtier en acier inoxydable (6 x 30mm). ✅ Le capteur de température DS18B20 vous permettra de mesurer et de lire facilement la température via les bibliothèques disponibles et open-source. ✅ Notre capteur de température DS18B20 peut être utilisé avec Raspberry Pi et microcontrôleur. ✅ Avec les capteurs de température AZDelivery imperméables, vous pouvez maintenant mesurer des températures comprises entre -55 et 125 degrés Celsius en dessous de l'eau. ✅ Ce produit inclut un E-Book qui fournit des informations utiles sur la façon de commencer votre projet. Il permet une installation rapide et fait gagner du temps sur le processus de configuration. On y trouve une série d'exemples d'applications, des guides d'installation complets et des bibliothèques.
-
AZDelivery 5 x 1m DS18B20 Cable Capteur de Température Numérique TO92-55 - +125°C en Acier Inoxydable, Imperméable Compatible avec Arduino et Raspberry Pi incluant Un E-Book!✅ Obtenez maintenant 5 x capteurs de température numériques en acier inoxydable AZDelivery 1M avec câble DS18B20 à un prix spécial avec réduction sur la quantité achetée! ✅ Les capteurs de température AZDelivery avec DS18B20 original, de haute qualité avec boîtier en acier inoxydable (6 x 30mm).Le capteur de température DS18B20 vous permettra de mesurer et de lire facilement la température via les bibliothèques disponibles et open-source. ✅ Notre capteur de température DS18B20 peut être utilisé avec Raspberry Pi et microcontrôleur. ✅ Avec les capteurs de température AZDelivery imperméables, vous pouvez maintenant mesurer des températures comprises entre -55 et 125 degrés Celsius en dessous de l'eau. ✅ Ce produit inclut un E-Book qui fournit des informations utiles sur la façon de commencer votre projet. Il permet une installation rapide et fait gagner du temps sur le processus de configuration. On y trouve une série d'exemples d'applications, des guides d'installation complets et des bibliothèques.
-
BOJACK 1M Capteur de Température Sonde de Température Étanche Compatible avec Arduino et Raspberry Pi Paquet en Acier Inoxydable (Lot de 2 Pcs)Plage de température de fonctionnement: -55 ℃ à +125 ℃ (-67 ℉ à +257 ℉) Plage de température de stockage: -55 ℃ à +125 ℃ (-67 ℉ à +257 ℉) Plage d'alimentation: 3,0 V à 5,5 V Fournit des mesures de température Celsius de 9 bits à 12 bits Convient aux Greniers/ Réservoirs de stockage/ Congélateurs/ Salles d'équipement de télécommunications/ Salles d'équipement électrique/ Goulotte de câbles, etc