Hola, es la primera vez que me atrevo a preguntar, pero ya estuve indagando un poco pero no encontré, asi que decidí mejor preguntar.
Tengo una duda, actualmente estoy usando el Arduino Nano y un Sensor Ultrasonico HY-SRF05, lo que pasa es que el sensor una vez activado y este haga la medición, tal como es el caso donde tengo 2 led, y se activan a cierta distancia.
Mi pregunta viene siendo si el LED A se activa y el valor del ultrasonico(la medida) se mantiene constante por X tiempo ¿se puede desactivar? haciendo que el LED A se ponga en low. Y si el valor del sensor cambia, este vuelva a "encender" dichos led.
Ejemplo.- Mi led A se activa a 5 cm, pero el valor se queda fijo por 4 segundos sin avanzar ni retroceder (¿es posible apagar el led A a los "3 segundos" cuando el valor sigue siendo los 5cm?) y lo mismo para el led B.
Aqui el codigo, me serian de gran ayuda a resolver, he intentado pero aun no conozco del todo. Gracias por su lectura hasta este punto.
int trigger = 9;
int echo = 8;
float tiempo_de_espera,distancia;
void setup() {
Serial.begin(9600);
pinMode(trigger, OUTPUT);
pinMode(echo, INPUT);
// put your setup code here, to run once:
}
void loop() {
digitalWrite (trigger, LOW);
delayMicroseconds(2);
digitalWrite(trigger, HIGH);
delayMicroseconds(10);
digitalWrite(trigger,LOW);
tiempo_de_espera = pulseIn(echo,HIGH);
distancia =(tiempo_de_espera/2)/29.15;
Serial.print(distancia);
Serial.println("cm");
delay(30);
if(distancia>=50 && distancia <= 300)
{
analogWrite (12,0);
analogWrite (11,0);
}
if(distancia>=30 && distancia <= 49)
{
analogWrite (12,255);
analogWrite (11,0);
}
if(distancia>=5 && distancia <= 29)
{
analogWrite (12,0);
analogWrite (11,255);
}
return distancia;
// put your main code here, to run repeatedly:
}