Arrosoir intelligent pour le jardin
Le capteur dans la terre dit « j'ai soif », et la mini-pompe verse de l'eau. Ton plant de menthe ne meurt plus jamais quand tu pars en vacances.
Particulièrement utile en saison sèche : tu peux automatiser l'arrosage du basilic, de la menthe, des piments…
SunuMake Capteurs
Mesure ton environnement — 7 composants inclus.
Les étapes
- 1
Matériel
1 capteur d'humidité du sol (2 pointes métalliques + petit module avec A0/D0/VCC/GND), 1 module relais 5 V, 1 mini-pompe immergée 5 V/6 V, 1 réservoir d'eau (petite bouteille), du tuyau souple, 1 pile 9 V avec son connecteur, beaucoup de fils.
- 2
Câble le capteur d'humidité
Sur le petit module électronique : VCC → 5 V, GND → GND, A0 → A0 Arduino. (Ignore la sortie D0 pour ce projet.) Les 2 pointes métalliques s'enfoncent dans la terre du pot.
- 3
Câble le relais
VCC du relais → 5 V Arduino. GND → GND. IN → broche 7 Arduino. Côté puissance : un fil de la pile 9 V (+) va à la borne COM du relais. La borne NO (Normalement Ouverte) va au fil rouge (+) de la pompe. Le fil noir (−) de la pompe va directement au (−) de la pile.
- 4
Sécurité — calibre AVANT de mettre l'eau
AVANT de remplir le réservoir, téléverse le code et ouvre le moniteur série. Plante le capteur dans la terre sèche : note la valeur (souvent autour de 700-900). Arrose un peu : la valeur tombe (souvent 300-500). Ajuste `SEUIL_SEC` au milieu de ces deux valeurs.
- 5
Mise en place finale
Plonge la pompe dans la bouteille d'eau, dirige le tuyau vers le pot, plante le capteur dans la terre, et laisse tourner. La pompe arrose 3 secondes quand la terre est sèche, puis attend 1 minute avant de re-mesurer.
Le programme à téléverser
Copie ce code dans l'IDE Arduino, branche ta carte en USB et clique sur le bouton « Téléverser » (la flèche en haut à gauche).
// Arrosoir intelligentconst int HUMIDITE = A0;const int RELAIS = 7;const int SEUIL_SEC = 600; // ajuste après calibrationvoid setup() { pinMode(RELAIS, OUTPUT); digitalWrite(RELAIS, HIGH); // relais inversé : HIGH = pompe OFF Serial.begin(9600);}void loop() { int humidite = analogRead(HUMIDITE); Serial.print("Humidite : "); Serial.println(humidite); if (humidite > SEUIL_SEC) { // Terre sèche → arrose 3 secondes Serial.println("→ Arrosage !"); digitalWrite(RELAIS, LOW); // pompe ON delay(3000); digitalWrite(RELAIS, HIGH); // pompe OFF } delay(60000); // re-mesure dans 1 minute}Comment ça marche ?
Le capteur d'humidité du sol fonctionne sur un principe très simple : la terre humide conduit mieux l'électricité que la terre sèche. Le module mesure la résistance entre les 2 pointes métalliques et la convertit en une tension sur A0.
Le relais est un interrupteur électromécanique : un petit électroaimant à l'intérieur ouvre ou ferme un contact, ce qui te permet de commander un appareil 9 V (la pompe) depuis un signal 5 V (l'Arduino) sans risquer d'endommager la carte. La plupart des relais 5 V sont inversés logiquement — LOW ferme le contact, HIGH l'ouvre. C'est pour ça que digitalWrite(RELAIS, LOW) allume la pompe dans notre code.
Pourquoi attendre 1 minute entre deux mesures ? La terre met du temps à absorber l'eau. Si on re-mesurait immédiatement après l'arrosage, on lirait encore « sec » au centre du pot et on déclencherait un nouvel arrosage — la plante finirait noyée.