//Pompe_Duino_240118 //Pour Arduino Nano, Uno et compatibles //Si electrode haute humide, démarrer la pompe //Si electrode basse sèche, arreter la pompe char Ver[] = "Pompe_Duino_240118"; #define CapteurHaut A5//Electrode haute + bouton poussoir pour forcer la mise en marche #define CapteurBas A0 //Electrode basse #define Seuil 500 //Typique mesuré: Electrode sèche > 4V, humide < 0.8V //ce qui correspond environ à 800 et 170 unités, donc loins du seuil #define Pompe 3 //D3 commande le relais, logique inversée: 0 pompe ON //Peut dependre du module à relais...A verifier donc si bien inversé #define Led13 13 //Led standard sur Arduino #define Led 5 //Led sur boitier ON quand relais activé surt D5 #define pa(v) Serial.print("Ligne_") ; Serial.print(__LINE__) ;Serial.print(" ; ") ; Serial.print(#v) ;Serial.print(" = ") ; Serial.println((v)) ; Serial.println(" Clic bouton 'Envoyer' pour continuer") ;while (Serial.available()==0); {int k_ = Serial.parseInt() ;} void setup() { Serial.begin(9600); Serial.println(Ver); delay(10000); //Attendre 10s la charge des condos pinMode(Pompe, OUTPUT); pinMode(Led13, OUTPUT); pinMode(Led, OUTPUT); digitalWrite(Pompe, 1); //Arreter la pompe } void loop() { digitalWrite(Pompe, 1); //Arreter la pompe digitalWrite(Led13, 0); digitalWrite(Led, 0); while (analogRead(CapteurHaut) > Seuil); //Attendre tant que le haut est sec digitalWrite(Pompe, 0); //Le haut est humide, pomper digitalWrite(Led13, 1); digitalWrite(Led, 1); while (analogRead(CapteurBas) < Seuil); //Tant que le bas est humide, pomper }