ESP32 - Capteur d'humidité du sol avec pompe

Dans ce tutoriel, nous allons apprendre à utiliser l'ESP32 pour contrôler la pompe en fonction de la valeur lue par le capteur d'humidité du sol capacitif.

Préparation du matériel

1×Module de développement ESP32 ESP-WROOM-32
1×Câble USB Type-A vers Type-C (pour PC USB-A)
1×Câble USB Type-C vers Type-C (pour PC USB-C)
1×Capteur d'humidité du sol capacitif
1×Relais
1×12V Pompe
1×Vinyl Tube
1×Adaptateur secteur 12V
1×Optionnel: Connecteur d'alimentation DC
1×Plaque d'essai
1×Fils de connexion
1×Recommandé: Carte d'extension à bornier à vis pour ESP32
1×Recommandé: Breakout Expansion Board for ESP32
1×Recommandé: Répartiteur d'alimentation pour ESP32

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables ESP32 (ESP32 inclus)
1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

Note d'achat: De nombreux capteurs d'humidité du sol capacitifs sur le marché sont de faible qualité, quelle que soit la version. Nous recommandons vivement d'acheter le capteur avec puce TLC555I de la marque DIYables en utilisant le lien ci-dessus. Nous l'avons testé et il a bien fonctionné.

À propos du capteur d'humidité du sol et de la pompe

Si vous ne connaissez pas les pompes et les capteurs d'humidité du sol (brochage, fonctionnement, programmation...), renseignez-vous à leur sujet dans les tutoriels suivants :

Comment ça fonctionne

L'ESP32 lit périodiquement la valeur provenant du capteur d'humidité du sol capacitif. En fonction de la valeur d'humidité du sol, il prendra les actions suivantes :

  • Si la valeur d'humidité du sol est inférieure à un seuil, l'ESP32 active automatiquement un relais pour allumer une pompe.
  • Sinon, l'ESP32 désactive automatiquement un relais pour éteindre une pompe.

Diagramme de câblage

Schéma de câblage de la pompe du capteur d'humidité du sol ESP32

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, consultez les instructions dans le tutoriel suivant : Comment alimenter l'ESP32..

Code ESP32

/* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32/esp32-soil-moisture-sensor-pump */ #define RELAY_PIN 17 // ESP32 pin GPIO17 that connects to relay #define MOISTURE_PIN 36 // ESP32 pin GPIO36 (ADC0) that connects to AOUT pin of moisture sensor #define THRESHOLD 1500 // => CHANGE YOUR THRESHOLD HERE void setup() { Serial.begin(9600); pinMode(RELAY_PIN, OUTPUT); // set the ADC attenuation to 11 dB (up to ~3.3V input) analogSetAttenuation(ADC_11db); } void loop() { int value = analogRead(MOISTURE_PIN); // read the analog value from soild moisture sensor if (value > THRESHOLD) { Serial.print("The soil moisture is DRY => activate pump"); digitalWrite(RELAY_PIN, HIGH); } else { Serial.print("The soil moisture is WET => deactivate the pump"); digitalWrite(RELAY_PIN, LOW); } Serial.print(" ("); Serial.print(value); Serial.println(")"); delay(1000); }

Étapes rapides

  • Si c'est la première fois que vous utilisez un ESP32, consultez Installation du logiciel ESP32..
  • Effectuez une calibration pour déterminer le seuil d'humidité, consultez Capteur d'humidité du sol ESP32.
  • Mettez à jour la valeur calibrée pour THRESHOLD dans le code
  • Ouvrez le moniteur série sur Arduino IDE
  • Téléversez le code sur ESP32
  • Consultez le résultat sur le moniteur série.
COM6
Send
The soil moisture is DRY => activate the pump The soil moisture is DRY => activate the pump The soil moisture is DRY => activate the pump The soil moisture is DRY => activate the pump The soil moisture is WET=> deactivate the pump The soil moisture is WET=> deactivate the pump The soil moisture is WET=> deactivate the pump The soil moisture is WET=> deactivate the pump
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Explication du code

Lisez l'explication ligne par ligne dans les lignes de commentaire du code source !

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !