Lo que pasa es que estoy usando un sensor ultrasonico para controlar un motoreductor que hace esto:
al detectar precensia, el motor se enciende durante 5 segundos pero si sige detectando precensia el motor sige girando
lo que yo quiero que haga es que el sensor al detectar el motor gire solo por 5 segundos aunque siga detenctando
#include <Servo.h>
#include <Ultrasonic.h>
Ultrasonic ultrasonic(3,4); // (Trig PIN,Echo PIN)
int motor=6;
int distancia,cm;
void setup(){
pinMode(motor, OUTPUT);// determinamos que nuestra variable led será de salida
}
void loop(){
distancia = ultrasonic.Ranging(CM); //Lectura sensor de ultrasonidos
if(distancia <= 20){ //si la distancia es menor de 20...
digitalWrite(motor, HIGH); // enciende el LED (HIGH)
delay(5000);
}else{ //si no hay nada
digitalWrite(motor, LOW); // apagamos el LED (LOW)
}
delay(500);
}