Bonjour,Bonsoir.
après de multiple recherche , je me dirige vers vous pour finir mon projet.
Je vous explique : c'est une serre totalement autonome.
Le capteur de température permettra l'aération à l'aide de deux moteur de chaque coté de la serre permettant un lever de bâche.
Le problème c'est que supposons que ma température avant l'ouverture soit de 23 degrés Celsius
Si cela monte a 23,1 degrés celsius puis redescend a 22,9 degrés celsius la bâche va constamment s'ouvrir et se fermer.
Comment pourrais je faire pour pouvoir mettre 2 seuil de température.
je veux que mon programme ajuste a chaque température 2 degrés de différence.
Par exemple si la température désigné par le maraîcher est 23 degrés
alors le seuil bas: est a 21 degrés et le seuil haut : est a 25 degrés.
Voici mon programme :
#include <LiquidCrystal.h>
float volt;
float temp; // On initialise la variable de température
float temperature_max = 23; // Seuil de température
int led=2;
bool etat;
LiquidCrystal lcd(4, 6, 9, 10, 11, 12);
void setup()
{
lcd.begin(16, 2);
pinMode(led,OUTPUT);
}
void loop()
{
volt = analogRead(A3) * 5.0 / 1024; // conversion de la valeurs analogique en Volt.
Serial.print (volt);
Serial.println (" Volt");
temp = volt * 100 ; // Conversion de la valeurs volt en degré (temp);
Serial.print (temp);
Serial.println (" C");
if (temp > temperature_max)
{
etat = HIGH;
}
if (temp < temperature_max)
{
etat = LOW;
}
lcd.setCursor(0, 0);
lcd.print("Temp : ");
lcd.print (temp);
lcd.setCursor(0, 1);
if (etat == HIGH) lcd.print("Ouverture bache");
if (etat == LOW) lcd.print ("Fermeture bache");
if (temp>temperature_max)digitalWrite(led,HIGH);
if (temp<temperature_max)digitalWrite(led,LOW);
delay(750); // Delay en MS (1s)
}
LA LED permet d'avertir le maraîcher.
Merci d'avoir pris le temps de lire.
En vous souhaitant une agréable journée.