CAPTEUR D'HUMIDITÉ DU SOL
Ce capteur mesure l'humidité du sol à partir des changements de conductivité électrique de la terre (la résistance du sol augmente avec la sécheresse). Il existe 2 sorties possibles : une digitale, avec un seuil réglable par potentiomètre permettant, par exemple, de déclencher une pompe d'arrosage; ainsi qu'une sortie analogique permettant de suivre les fluctuations précises de l'humidité du sol.
Ce capteur se plante verticalement dans la terre. C'est la résistance entre les deux "branches" du capteur qui est mesurée, permettant ainsi d'indiquer l'humidité du sol.
Mise en place du dispositif
Points branchements
Ici le capteur d'humidité du sol est branché en sortie analogique, ceci permet de suivre les fluctuations précises de l'humidité du sol.
-
La LED :
La LED est branchée en 3,3 V. Attention ! les LED ne supportent pas le 5V.
LED verte : PIN 8
Rappel : le PIN est le numéro d'identification du capteur, on l'utilise dans le code
-
Capteur d'humidité du sol :
Ce capteur se branche en 5V.
VCC : 5V
GDN : GDN
A0 : A0
Rappel : A0 il s'agit de la sortie analogique, les données sont récupérées par cette sortie analogique.
Mise en place du code
int Led=8;
int humidite =A0;
void setup() {
Serial.begin(9600);
}
void loop() {
int humidite =analogRead(humidite);
Serial.println(humidite);
pinMode(8,OUTPUT);
humidite=analogRead(0);
if (humidite >= 600 ){
// Si le capteur est >= 600
digitalWrite(Led,HIGH);
}else if(humidite <= 600 ){
// et si la valeur du capteur est <= 600
digitalWrite(Led,LOW);
}
delay(1000);
}
Mise en scène
int Led=8 indique que le capteur est branché en PIN 8.
Serial.begin(9600) ouverture du port série et fixe le debit de communication à 9600 bauds.
int humidite =A0 indique que le capteur est branché en sortie analogue (A0).
int humidite =analogRead(humidite) permet la lecture du capteur.
Serial.println(humidite) renvoie sur le port série, le texte, la valeur de la variable humidité.
pinMode(variable, OUTPUT) configuration de la broche (ici les LED) comme une sortie.
humidite=analogRead(0) permet le stockage de la valeur du capteur.
digitalWrite(variable, HIGH) met la variable en position haute. Ici cela Allume la LED. digitalWrite(variable, LOW) permet d'éteindre la LED
delay(1000) : un nouveau calcul toutes les secondes.