me podrian ayudar con este codigo. es que al activar el sensor no esta encendiendo la bomba cuando esta en novel bajo o medio y cuando esta al nivel aceptable si baja elnivel ya enciende la bomba o de plano no apaga la bomba: [code]
#include<LiquidCrystal.h>
LiquidCrystal lcd (2,3,4,5,6,7);
const int relay=8;
int Trigger = A1;
int Echo = A0;
int Verde = 10;
int Ambar = 11;
int Rojo = 12;
void setup ()
{
lcd.begin(16,2);
pinMode(relay,OUTPUT);
pinMode(Verde,OUTPUT);
pinMode(Ambar,OUTPUT);
pinMode(Rojo,OUTPUT);
digitalWrite(Trigger,HIGH);
pinMode(Trigger,OUTPUT);
pinMode(Echo,INPUT);
digitalWrite(Trigger,LOW);
}
void loop()
{
lcd.setCursor(0,0);
lcd.print(" Nivel de tanque");
lcd.print("Contraste");
long t;
long distancia;
digitalWrite(Trigger,HIGH);
delayMicroseconds(10);
digitalWrite(Trigger, LOW);
t = pulseIn(Echo, HIGH);
distancia = t/58;
lcd.setCursor(11,1);
lcd.print(distancia);
lcd.print("cm ");
delay(500);
//Validacion con distancia fuera de rango
lcd.setCursor(0,1);
if (distancia <=4){
digitalWrite(Verde,HIGH);
digitalWrite(Ambar,LOW);
digitalWrite(Rojo,LOW);
lcd.print(" Aceptable ");
digitalWrite(relay,HIGH);
}
else if (distancia >= 5 && distancia <=7){
digitalWrite(Verde, LOW);
digitalWrite(Ambar,HIGH);
digitalWrite(Rojo,LOW);
lcd.print(" Nivel Medio ");
digitalWrite(relay,LOW);
}
else{
digitalWrite(Verde, LOW);
digitalWrite(Ambar,LOW);
digitalWrite(Rojo,HIGH);
lcd.print(" Nivel BAJO ");
digitalWrite(relay,LOW);
}
delay(500);
}
[/code]
