Bonjour a tous, voila je voudrais apporter une modification a mon programme mais je n'y arrive pas.
Je veux dire a mon programme ,dans la condition : si pendant 10min h>71 alors tu enclenche le relais jusqu'a atteindre 70,la je bloque.....
Voici mon code:
// Programme terrarium
#include <DHT.h>
#define DHTPIN 8// capteur humidité
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
int led = 13; //led fonctionnement
int relais = 7; // pompe a brumifier
#include <LiquidCrystal.h>
const int RS = 12;
const int E = 11;
const int D4 = 5;
const int D5 = 4;
const int D6 = 3;
const int D7 = 2;
LiquidCrystal lcd(RS, E, D4, D5, D6, D7); // Initialisation du LCD
const int intTimePause = 100;
void setup ()
{
lcd.begin(16, 1) ; // config écran
delay(100);
lcd.clear() ; // initialisé ecran
delay(100);
lcd.print("Hello Oscar");
delay(10000);
lcd.home();
lcd.print("Fonction ok");
delay(10000);
lcd.clear();
delay(10);
pinMode(relais, OUTPUT) ; // config sorti pompe
pinMode(led, OUTPUT);
Serial.begin(9600) ;
Serial.println(" bonjour christopher ") ;
}
void loop() {
delay(2000);
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan (h))
{
lcd.print("erreur capteur!");
delay(10000);
lcd.clear();
digitalWrite(relais, HIGH);
return;
}
Serial.print("temperature:");
Serial.print(t);
Serial.print(" humidity:");
Serial.print(h);
Serial.println();
lcd.setCursor(0, 0);
lcd.print(" humi:");
lcd.print(h);
lcd.print("%" );
if (h > 71)
{
delay(2000);
digitalWrite(relais, HIGH);
digitalWrite(led, HIGH);
}
else if (h < 70)
{
digitalWrite(relais, LOW);
digitalWrite(led, LOW);
}
}
Merci de votre aide et de vos conseil si vous avez d'autre idée afin d'amélioré le programme.