Capteur d'humidité du sol ESP32
Ce tutoriel vous explique comment utiliser l'ESP32 pour lire l'humidité du sol à partir d'un capteur. En détail, nous allons apprendre :
- Capteur d'humidité capacitif vs capteur d'humidité résistif
- Comment utiliser un ESP32 pour lire la valeur d'un capteur d'humidité capacitif
- Comment étalonner un capteur d'humidité capacitif
- Comment l'ESP32 détermine si le sol est humide ou sec
Préparation du matériel
1 | × | ESP-WROOM-32 Dev Module | |
1 | × | USB Cable Type-C | |
1 | × | Capacitive Soil Moisture Sensor | |
1 | × | Breadboard | |
1 | × | Jumper Wires | |
1 | × | (Optional) DC Power Jack | |
1 | × | (Recommended) ESP32 Screw Terminal Adapter |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: Many soil moisture sensors available in the market are unreliable, regardless of their version. We strongly recommend buying the sensor from the DIYables brand using the link provided above. We tested it, and it worked reliably.
À propos du capteur d'humidité du sol
Il existe deux types de capteurs d'humidité :
- Capteur d'humidité résistif
- Capteur d'humidité capacitif.
Les deux capteurs fournissent la valeur de l'humidité du sol. Cependant, leurs principes de fonctionnement sont différents. Nous recommandons vivement d'utiliser le capteur d'humidité capacitif pour les raisons suivantes :
- Le capteur d'humidité du sol résistif se corrode avec le temps. Le courant électrique qui circule entre les sondes du capteur provoque une corrosion électrochimique.
- Le capteur d'humidité du sol capacitif ne se corrode PAS avec le temps. Les électrodes du capteur ne sont pas exposées et aucun courant électrique ne circule entre elles.
L'image ci-dessous montre la corrosion sur un capteur d'humidité du sol résistif.
Le reste de ce tutoriel utilise le capteur d'humidité du sol capacitif.
Brochage du capteur d'humidité du sol capacitif
Un capteur d'humidité du sol capacitif possède trois broches :
- Broche GND : connectez cette broche à GND (0V)
- Broche VCC : connectez cette broche à VCC (5V ou 3,3V)
- Broche AOUT : la broche de sortie du signal analogique émet la tension en proportion inverse au niveau d'humidité du sol. Connectez cette broche à une broche d'entrée analogique de l'ESP32.
Comment ça marche
Plus il y a d'eau dans le sol, plus la tension dans la broche AOUT est faible.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.
Code ESP32
Étapes rapides
- Copiez le code ci-dessus et collez-le dans l'IDE Arduino
- Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur la carte ESP32
- Enterrez le capteur dans le sol, puis versez de l'eau dans le sol. Ou plongez-le lentement dans une tasse d'eau salée.
- Consultez le résultat sur le moniteur série. Il ressemble à ce qui suit :
※ NOTE THAT:
- Évitez d'utiliser de l'eau pure pour les tests, car elle ne conduit pas l'électricité, ce qui n'affectera pas les relevés du capteur.
- Les relevés du capteur n'atteignent jamais zéro. Il est normal que les valeurs varient entre 3100 et 2600, bien que cela puisse varier en fonction de certains facteurs : la profondeur d'encastrement du capteur, la composition du sol ou de l'eau, la tension de l'alimentation électrique.
- Ne pas enterrer la partie circuit (située au-dessus du capteur) dans le sol ou dans l'eau, car cela pourrait endommager le capteur.
Calibrage pour capteur d'humidité du sol capacitif
La valeur mesurée par le capteur d'humidité est relative. Elle dépend de la composition du sol et de l'eau. En pratique, nous devons effectuer un étalonnage pour déterminer un seuil qui est une frontière entre mouillé et sec.
Comment effectuer l'étalonnage :
- Exécutez le code ci-dessus sur ESP32.
- Plantez le capteur d'humidité dans le sol.
- Plantez le capteur d'humidité dans le sol.
- Irriguez le sol lentement.
- Observez le moniteur série.
- Notez une valeur au moment où vous sentez que le sol change son taux d'humidité de sec à humide. Cette valeur est appelée SEUIL.
Déterminer si le sol est humide ou sec.
Après l'étalonnage, mettez à jour la valeur SEUIL que vous avez notée dans le code ci-dessous. Le code ci-dessous détermine si le sol est humide ou sec.
Le résultat sur le moniteur série.