Pot de fleur intelligent

Bonjour, j'ai comme projet de faire un pot de fleur intelligent qui marchera avec une pompe (dont voici le lien ci-dessous) et une électrovanne.

http://www.selectronic.fr/pompe-miniature-de-bassin.html

Voici mon programme, j'espère que vous pourrez m'aider à la perfectionner pour que ma pompe puisse fonctionner. Merci

#include <LiquidCrystal.h>
#include <EEPROM.h>
#include <Time.h>

const int RelayPin = 10;
const int LumPin = 1;
const int EauPin = 8;
const int BatPin = 0;
const int ledPin =  13;  

const int DureeArrosage1 = 20; 
const int DureeArrosage2 = 25;
const int DureeArrosage3 = 30;
const long SeuilArrosage1 = 30000; 
const long SeuilArrosage2 = 40000;
const int DureeCycle = 10;
const float BatSeuil = 12.2; //
const long LumSeuilEeprom = 5000;  //Minimum de luminosité pour enregistrer dans EEprom
const long HeureMinuteSeuil = 2030; //Heuure minute du déclenchement

int LumValue;
int EauValue;
long ArrosageMs; 
long CycleMs;
int CptArrosage = 0;
int EepromRang;
long LumTotal = 0;
int boolArrosage = 0;
long HeureMinute;
int DureeArrosage;

int mesure_brute=0;// Variable pour acquisition résultat brut de conversion analogique numérique
float mesuref=0.0;// Variable pour calcul résultat décimal de conversion analogique numérique
float tension=0.0; // Variable tension mesurée
float tension_batterie_mV=0.0; // Variable tension batterie calculée
float tension_batterie_V=0.0; // Variable tension batterie calculée 
float tension_regulateur=9070.0; 

LiquidCrystal lcd(12,11,5,4,3,2); 

void ecrireEEPROM(long valeur){
 int resteMod;
 int varent;
 resteMod = valeur%255;
 varent = (valeur-resteMod)/255;
 EepromRang++;
 EEPROM.write(EepromRang,varent);
 EepromRang++;
 EEPROM.write(EepromRang,resteMod);
 
 //Ecriture pour dire ou on est arrivé
 resteMod = EepromRang%255;
 varent = (EepromRang-resteMod)/255;
 EEPROM.write(0,varent);
 EEPROM.write(1,resteMod);
}  

int lireEEPROMrang()
{
 int i = 0;
 int retour;
 byte valeur;
 
 valeur = EEPROM.read(0); 
 i = (int)valeur;
 retour = i * 255;
 valeur = EEPROM.read(1); 
 i = (int)valeur;
 retour += i;
 
 if (retour==0){retour=1;}
 return retour;
}

void setup()
{
   lcd.begin(16,2); 
   pinMode(EauPin, INPUT); 
   pinMode(RelayPin, OUTPUT);
   pinMode(ledPin, OUTPUT); 
   CycleMs = DureeCycle * 60000; 
   digitalWrite(RelayPin,HIGH);  
   EepromRang = lireEEPROMrang(); 
   setTime(19,0,0,9,7,2014);
   lcd.clear();
   lcd.setCursor(0,0); 
   lcd.print("Programme");
   lcd.setCursor(0,1); 
   lcd.print("arrosage auto");
   delay(3000);
   lcd.clear();
   lcd.setCursor(0,0); 
   lcd.print("Bienvenue");
   delay(3000);
}

void loop() {  
 HeureMinute = hour()*100 + minute();
 
 if (boolArrosage==1 && hour()==0){
   boolArrosage = 0;
   LumTotal = 0;
 }
 
 //Recupération du degré de luminosité
 LumValue = analogRead(LumPin);  
 LumTotal += LumValue;
 
 //Recupération Eau
 EauValue = digitalRead(EauPin);
 if (EauValue == 1){
   digitalWrite(ledPin, HIGH);
 }else{
   digitalWrite(ledPin, LOW);
 }
 
 //Recupération tension batterie
 mesure_brute=analogRead(BatPin);
 mesuref=float(mesure_brute)*5000.0/1024.0;
 tension=mesuref/1000.0; // en Volts
 tension_batterie_mV=mesuref+tension_regulateur;
 tension_batterie_V=tension_batterie_mV/1000.0;
 
 lcd.clear();
 lcd.setCursor(0,0); 
 
 if (hour()<10){lcd.print("0");}
 lcd.print(hour());
 lcd.print(":");
 if (minute()<10){lcd.print("0");}
 lcd.print(minute());
  
 lcd.print(" ");
 
 lcd.print("T(v)=");
 lcd.print(tension_batterie_V,2);
 
 lcd.setCursor(0,1);   
 
 lcd.print("Lum=");
 lcd.print(LumTotal);
   
 lcd.print(" Nb=");
 lcd.print(CptArrosage);
 
 if (EauValue == 1 && tension_batterie_V >= BatSeuil && boolArrosage == 0 && HeureMinute >= HeureMinuteSeuil){
   boolArrosage = 1;
   
   if (LumTotal < SeuilArrosage1){
     DureeArrosage = DureeArrosage1;
   }else{
     if (LumTotal >= SeuilArrosage1 && LumTotal < SeuilArrosage2){
       DureeArrosage = DureeArrosage2;
     }else{ 
       DureeArrosage = DureeArrosage3;
     }
   } 
   
   ArrosageMs = DureeArrosage * 60000;
   
   digitalWrite(RelayPin,LOW);
   CptArrosage++;
   delay(ArrosageMs);
   digitalWrite(RelayPin,HIGH);
   if (LumTotal > LumSeuilEeprom){ecrireEEPROM(LumTotal);}
   delay(2000);
 }else{
    delay(CycleMs);
 } 
}

Moderator edit:
</mark> <mark>[code]</mark> <mark>

</mark> <mark>[/code]</mark> <mark>
tags added.

Du coup, la question c'est ?

Il n'y aurait pas comme un doublon là : Pot de fleur intelligent