Buenas, llevo unos días utilizando el detector de agua con un arduino mega para que me avise de cuando vaciar una garrafa que llena mi aire acondicionado.
El sensor funciona perfectamente cuando lo pruebo metiendolo en un vaso de agua,pero por algún motivo cuando el nivel del agua dentro de la garrafa llega al sensor, este no se activa hasta que lo muevo.
¿Es posible que debido a la lenta subida del nivel del agua, el sensor este fallando? Adjunto mi código, es bastante simple. Si detecta agua enciende un led y suena una música por un altavoz.
Si alguien puede echarme una mano para averiguar que esta pasando se lo agradeceria
#define Grove_Water_Sensor 8
#define LED 9
int buzzerPin = 7;
void setup() {
pinMode(Grove_Water_Sensor, INPUT);
pinMode(LED, OUTPUT);
pinMode(buzzerPin, OUTPUT);
analogWrite(buzzerPin, 0);
}
void loop() {
if ( digitalRead(Grove_Water_Sensor) == HIGH) {
digitalWrite(LED, HIGH);
tone(buzzerPin, 261, 200);
delay(300);
tone(buzzerPin, 261, 200);
delay(300);
tone(buzzerPin, 293, 400);
delay(500);
tone(buzzerPin, 261, 300);
delay(400);
tone(buzzerPin, 349, 300);
delay(400);
tone(buzzerPin, 329, 400);
delay(3000);
} else {
digitalWrite(LED, LOW);
}
}