Système d'irrigation automatique Arduino
Le système d'arrosage automatique fait partie du jardin intelligent. Dans ce tutoriel, nous allons apprendre à fabriquer un système d'arrosage automatique pour le jardin en utilisant Arduino, un capteur d'humidité du sol, un relais et une pompe. En détail :
- Lorsque l'humidité du sol est sèche, Arduino contrôle automatiquement un relais pour activer une pompe afin d'arroser les plantes.
- Lorsque l'humidité du sol est humide, Arduino contrôle automatiquement un relais pour éteindre une 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 ne connaissez pas la pompe et le capteur d'humidité du sol (brochage, fonctionnement, programmation...), renseignez-vous à leur sujet dans les tutoriels suivants :
- Arduino - Capteur d'humidité du sol. tutorial
- Arduino - Contrôle de pompe. tutorial
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Code Arduino
/*
* Ce code Arduino a été développé par newbiely.fr
* Ce code Arduino 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/arduino-automatic-irrigation-system
*/
#define RELAY_PIN 2 // Arduino pin that connects to relay
#define MOISTURE_PIN A0 // Arduino pin that connects to AOUT pin of moisture sensor
#define THRESHOLD 530 // CHANGE YOUR THRESHOLD HERE
void setup() {
Serial.begin(9600);
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(500);
}
Étapes rapides
- Effectuez l'étalonnage pour déterminer le SEUIL humide-sec, voir Arduino - Capteur d'humidité du sol.
- Mettez à jour la valeur de SEUIL calibrée dans le code
- Ouvrez le moniteur série sur Arduino IDE
- Téléchargez le code sur Arduino
- 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
Lisez l'explication ligne par ligne dans les lignes de commentaire du code source !