Con esto buscamos encender un LED cada vez que el sensor detecta un objeto cercano o lejano, ya sea que se encienda en verde, amarillo o rojo.
Para ello necesitamos la placa Arduino, la protoboard, 3 LEDs, un sensor de proximidad, un emisor de sonido y objetos para detectar proximidad (en este caso ocupa resistencias).
El sensor detectará que hay un objeto cerca o lejos, por lo que emitirá un sonido y dependiendo de ello, si está cerca se iluminará en rojo, si está a media distancia será amarillo, si está lejos se iluminará en verde.
Ejecutamos el código:
const int led_rojo = 2;
const int led_amarillo = 3;
const int led_verde = 4;
altavoz int const = 9;
configuración vacía ()
{
pinMode(rojo_led, SALIDA);
pinMode(amarillo_led, SALIDA);
pinMode(led_verde, SALIDA); Serial.begin(9600);
}
bucle vacío ()
{
larga distancia = 0.01723 * readUltrasonicDistance(5, 6);
retraso (10);
Serial.println(distancia);
si ((distancia> 0) y (distancia <100))
{
escritura digital (led_rojo, ALTO);
escritura digital (led_amarillo, BAJO);
escritura digital (led_verde, BAJO); tono (altavoz, 200,300);
}
si ((distancia> 100) y (distancia <200))
{
escritura digital (led_rojo, BAJO);
escritura digital (led_amarillo, ALTO);
escritura digital (led_verde, BAJO);
tono (altavoz, 200,300);
retraso (400);
} si ((distancia> 200) y (distancia <300))
{
escritura digital (led_rojo, BAJO);
escritura digital (led_amarillo, BAJO);
escritura digital (led_verde, ALTO);
tono (altavoz, 200,300);
retraso (700);
}
si (distancia> 300)
{
escritura digital (led_rojo, BAJO);
escritura digital (led_amarillo, BAJO);
escritura digital (led_verde, BAJO);
}
}
long readUltrasonicDistance(int triggerPin, int echoPin)
{
// Instagram: @konredus 6
pinMode(pin disparador, SALIDA); // Limpiar el gatillo
digitalWrite(pin disparador, BAJO);
retrasoMicrosegundos(2);
// Establece el pin de activación en estado ALTO durante 10 microsegundos
escritura digital (pin disparador, ALTO);
retrasoMicrosegundos(10);
digitalWrite(pin disparador, BAJO);
pinMode(echoPin, ENTRADA);
// Lee el pin de eco y devuelve el tiempo de viaje de la onda de sonido en microsegundos
volver pulseIn(echoPin, ALTO);
}
No hay comentarios.:
Publicar un comentario