Tengo un Arduino Uno y he creado un dispositivo para humidificar el recinto de mi Tortuga. El dispositivo consta de un sensor de temperatura y humedad, una pantalla LCD para mostrar la temperatura y la humedad y una bomba de agua, que se enciende si la humedad está por debajo de cierto punto.
Configuro que el programa realice un ciclo cada diez minutos, para no inundar el gabinete con demasiada agua, pero por supuesto eso significa que la pantalla LCD solo se actualiza cada diez minutos también. Quiero que la pantalla LCD se actualice cada pocos segundos, pero la bomba solo se enciende 10 minutos después de que ya esté encendida si la humedad es aún demasiado baja.
¿Cómo puedo hacer esto?
Aquí está mi código ...
#include <dht.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
dht DHT;
#define DHT11_PIN 7
int pump = 13;
void setup(){
pinMode(pump, OUTPUT);
lcd.begin(16, 2);
}
void loop()
{
int chk = DHT.read11(DHT11_PIN);
int hum = DHT.humidity;
lcd.setCursor(0,0);
lcd.print("Temp: ");
lcd.print(tmp);
lcd.print((char)223);
lcd.print("C");
lcd.setCursor(0,1);
lcd.print("Humidity: ");
lcd.print(hum);
lcd.print("%");
if(hum <= 70) {
digitalWrite(pump, HIGH);
delay(2000);
digitalWrite(pump, LOW);
}
else{
digitalWrite(pump, LOW);
}
delay(600000);
}
¡Gracias por tu ayuda! =]