Système d'irrigation automatique Arduino Nano ESP32
Ce tutoriel vous explique comment utiliser l'Arduino Nano ESP32, le capteur d'humidité du sol, un relais et une pompe pour construire un système d'irrigation automatique pour le jardin. Plus précisément :
- Arduino Nano ESP32 sera utilisé pour contrôler le relais afin d'allumer la pompe lorsque l'humidité du sol est sèche.
- Lorsque l'humidité du sol est humide, Arduino Nano ESP32 sera utilisé pour contrôler le relais afin d'éteindre la pompe.
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) |
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.
À propos du capteur d'humidité du sol et de la pompe
Si vous n'êtes pas familier avec la pompe et le capteur d'humidité du sol (y compris le brochage, le fonctionnement, la programmation, etc.), les tutoriels suivants vous seront utiles :
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Code Arduino Nano ESP32
/*
* Ce code Arduino Nano ESP32 a été développé par newbiely.fr
* Ce code Arduino Nano 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/arduino-nano-esp32/arduino-nano-esp32-automatic-irrigation-system
*/
#define RELAY_PIN D2 // The Arduino Nano ESP32 pin connected to the relay
#define MOISTURE_PIN A2 // The Arduino Nano ESP32 pin connected to the moisture sensor
#define THRESHOLD 1500 // CHANGE YOUR THRESHOLD HERE
void setup() {
Serial.begin(9600);
// set the ADC attenuation to 11 dB (up to ~3.3V input)
analogSetAttenuation(ADC_11db);
pinMode(RELAY_PIN, OUTPUT);
}
void loop() {
int value = analogRead(MOISTURE_PIN); // read the analog value from sensor
if (value > THRESHOLD) {
Serial.print("The soil is DRY => turn pump ON");
digitalWrite(RELAY_PIN, HIGH);
} else {
Serial.print("The soil is WET => turn pump OFF");
digitalWrite(RELAY_PIN, LOW);
}
Serial.print(" (");
Serial.print(value);
Serial.println(")");
delay(200);
}
Étapes rapides
- Si vous êtes novice avec l'Arduino Nano ESP32, référez-vous au tutoriel sur Installation du logiciel Arduino Nano ESP32..
- Câblez les composants comme indiqué dans le schéma.
- Connectez la carte Arduino Nano ESP32 à votre ordinateur à l'aide d'un câble USB.
- Ouvrez Arduino IDE sur votre ordinateur.
- Choisissez la bonne carte Arduino Nano ESP32, comme par exemple NodeMCU 1.0 (Module ESP-12E), et son port COM respectif.
- Effectuez l'étalonnage pour identifier le SEUIL humide-sec, comme décrit dans Arduino Nano ESP32 - Capteur d'humidité du sol..
- Insérez la valeur de SEUIL calibrée dans le code.
- Lancez le moniteur série sur Arduino IDE.
- Téléchargez le code sur Arduino Nano ESP32.
- Consultez le résultat sur le moniteur série.
COM6
The soil is DRY => turn pump ON
The soil is DRY => turn pump ON
The soil is DRY => turn pump ON
The soil is DRY => turn pump ON
The soil is WET => turn pump OFF
The soil is WET => turn pump OFF
The soil is WET => turn pump OFF
The soil is WET => turn pump OFF
Autoscroll
Clear output
9600 baud
Newline
Explication du code
Découvrez l'explication ligne par ligne contenue dans les commentaires du code source !