El proyecto trata de encender un LED con un sensor PIR durante un determinado tiempo, a no ser que un HC-SR04 lo apague con la lectura de 20 cm o menos.La cuestion es que los sensores se bloquean con el codigo.
El ultrasonido va tomando todo tipo de lecturas hasta que el PIR entra en ALTO,que es cuando se enciende el LED,el ultrasonido deja de tomar lecturas,y no se apaga el LED con la lectura de 20 cm.
Alguien podria decirme como arreglar el codigo para que vaia como se espera en el proyecto???
int LED = 13; // declaramos el led en el pin 13 del arduino
int PIR = 12; // declaramos el sensor PIR en el pin 12
int ESTADO = 0;
int TRIG = 2;
int ECO = 3;
int DURACION;
int DISTANCIA;
void setup(){
pinMode(TRIG, OUTPUT);
pinMode(ECO, INPUT);
pinMode(PIR, INPUT);//El pin 12 lo asignamos como entrada para la señal del sensor
pinMode(LED, OUTPUT); //El pin 13 del arduino lo asignamos como salida para el led
Serial.begin(9600);
}
void loop(){
digitalWrite(TRIG, HIGH);
delay(1);
digitalWrite(TRIG, LOW);
DURACION = pulseIn(ECO, HIGH);
DISTANCIA = DURACION / 58.2;
Serial.println(DISTANCIA);
delay(200);
ESTADO = digitalRead(PIR);
if (ESTADO == HIGH){
digitalWrite(LED, HIGH);
delay(10000);//1 min 40 seg.
}
if (DISTANCIA <= 20 && DISTANCIA >= 0);{
digitalWrite(LED, LOW);}
}