Raspberry Pi - Capteur d'humidité du sol
Ce tutoriel vous apprend à utiliser un capteur d'humidité avec un Raspberry Pi. Plus précisément, nous examinerons :
- Les différences entre un capteur d'humidité résistif et capacitif
- Comment programmer un Raspberry Pi pour lire la valeur du capteur d'humidité à l'aide de Raspberry Pi
- Comment utiliser Raspberry Pi pour étalonner le capteur d'humidité
- Comment Raspberry Pi détermine si le sol est humide ou sec
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du capteur d'humidité du sol
Il existe deux types de capteurs d'humidité : le capteur d'humidité résistif et le capteur d'humidité capacitif.
Les deux capteurs offrent des informations sur l'humidité du sol. Cependant, leurs méthodes de fonctionnement ne sont pas similaires. Nous vous recommandons fortement d'utiliser le capteur d'humidité capacitif, pour les raisons suivantes :
- Le capteur d'humidité du sol résistif est sujet à la corrosion au fil du temps. Cela est dû au fait qu'un courant électrique passe entre ses sondes, ce qui conduit à une corrosion électrochimique.
- Le capteur d'humidité du sol capacitif se corrode avec le temps beaucoup plus lentement que le capteur d'humidité du sol résistif. Cela est dû au fait que ses électrodes ne sont pas exposées et sont relativement résistantes à la corrosion.
Ceci est une photo d'un capteur d'humidité du sol résistif qui a été endommagé par la corrosion.
Le reste de ce tutoriel utilisera le capteur capacitif d'humidité du sol.
Disposition des broches du capteur d'humidité du sol capacitif
Le capteur capacitif d'humidité du sol possède trois broches :
- Broche GND : Cela doit être connecté à GND (0V)
- Broche VCC : Cela doit être connecté à VCC (5V ou 3,3V)
- Broche AOUT : Il s'agit de la broche de sortie du signal analogique qui produit une tension proportionnelle au niveau d'humidité du sol. Cela doit être connecté à une broche d'entrée analogique du Raspberry Pi.
Comment ça marche
La quantité d'eau dans le sol a un effet sur la tension de la broche AOUT ; plus la teneur en eau est élevée, plus la tension sera basse.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Pour simplifier et organiser votre câblage, nous vous recommandons d'utiliser un Screw Terminal Block Shield pour Raspberry Pi. Ce shield garantit des connexions plus sûres et plus faciles à gérer, comme illustré ci-dessous :
Le code Raspberry Pi lit la valeur du capteur d'humidité du sol.
Étapes rapides
- Assurez-vous d'avoir Raspbian ou tout autre système d'exploitation compatible Raspberry Pi installé sur votre Pi.
- Assurez-vous que votre Raspberry Pi est connecté au même réseau local que votre PC.
- Assurez-vous que votre Raspberry Pi est connecté à Internet si vous avez besoin d'installer des bibliothèques.
- Si c'est la première fois que vous utilisez le Raspberry Pi, consultez Installation du logiciel - Raspberry Pi..
- Connectez votre PC au Raspberry Pi via SSH en utilisant le client SSH intégré sur Linux et macOS ou PuTTY sur Windows. Consultez comment connecter votre PC au Raspberry Pi via SSH.
- Assurez-vous que vous avez la bibliothèque RPi.GPIO installée. Si ce n'est pas le cas, installez-la en utilisant la commande suivante :
- Installez la bibliothèque Adafruit_ADS1x15 en exécutant les commandes suivantes sur le terminal de votre Raspberry Pi :
- Créez un fichier script Python soil_moisture.py et ajoutez le code suivant :
- Enregistrez le fichier et exécutez le script Python en saisissant la commande suivante dans le terminal :
- Enterrez le capteur dans le sol, puis versez de l'eau sur le sol. Ou immergez-le lentement dans une tasse d'eau salée.
- Vérifiez le résultat sur le Terminal.
※ Note:
- N'utilisez PAS l'eau pure pour les tests car elle ne conduit pas l'électricité, ce qui signifie qu'elle n'affectera pas les lectures du capteur.
- Les lectures du capteur ne descendent généralement pas à zéro. Il est normal qu'elles restent dans la plage de 40000 à 50000, mais cela peut changer en fonction de facteurs tels que la profondeur à laquelle le capteur est placé, le type de sol ou d'eau, et la tension de l'alimentation électrique.
- Ne jamais enterrer la partie du circuit (située sur le dessus du capteur) dans le sol ou l'eau, car cela pourrait endommager le capteur.
Le script s'exécute en boucle infinie jusqu'à ce que vous appuyiez sur Ctrl + C dans le terminal.
Étalonnage pour capteur capacitif d'humidité du sol
La valeur obtenue du capteur d'humidité n'est pas absolue. Elle varie en fonction de la composition du sol et de son contenu en eau. Par conséquent, il est nécessaire d'effectuer un étalonnage afin de déterminer une frontière entre les conditions humides et sèches.
Instructions pour l'étalonnage du capteur capacitif d'humidité du sol :
- Exécutez le code sur Raspberry Pi
- Placez le capteur d'humidité dans le sol
- Ajoutez progressivement de l'eau au sol
- Surveillez les valeurs sur le terminal
- Notez la valeur lorsque vous sentez que le sol passe de sec à humide, par exemple : 45000. Cela est appelé le « SEUIL ».
Déterminer si le sol est humide ou sec
- Créez un fichier script Python soil_moisture_dry_wet.py et ajoutez le code suivant :
- Mettez à jour la valeur THRESHOLD qui a été notée lors de l'étalonnage dans le code.
- Enregistrez le fichier et exécutez le script Python en exécutant la commande suivante dans le Terminal :
La sortie affichée sur le terminal.