SENSOR DE PROXIMIDAD

El día de hoy hicimos elaboramos un circuito con un sensor de proximidad

Con esto buscamos encender un LED cada que el senosr detecta un objeto cercano o lejano, ya sea que encienda verde, amarillo o rojo.

Para esto necesitamos la placa Arduino, la protoboard, 3 LED´s, un sensor de proximidad, un emisor de sonido y objetos para detectar la proximidad (en este caso ocupe resistencias).

El sensor detectará que hay un objeto cerca o lejos, por lo que emitirá un sonido y dependiendo, si esta cerca prenderá rojo, si esta a una distancia media estara en amarillo, si está lejos encenderá de verde. 

Es una conexión algo compleja, pero vaya que es satisfactorio obtener el resultado :)

EJECUTAMOS NUESTRO CÓDIGO :)


const int led_rojo = 2;

const int led_amarillo = 3;

const int led_verde = 4;

const int parlante = 9;

void setup()

{

pinMode(led_rojo,OUTPUT);

pinMode(led_amarillo,OUTPUT);

pinMode(led_verde,OUTPUT); Serial.begin(9600);

}

void loop()

{

long distancia = 0.01723 * readUltrasonicDistance(5, 6);

delay(10);

Serial.println(distancia);

if((distancia>0)and(distancia<100))

{

digitalWrite(led_rojo,HIGH);

digitalWrite(led_amarillo,LOW);

digitalWrite(led_verde,LOW); tone(parlante,200,300);

}

if((distancia>100)and(distancia<200))

{

digitalWrite(led_rojo,LOW);

digitalWrite(led_amarillo,HIGH);

digitalWrite(led_verde,LOW);

tone(parlante,200,300);

delay(400);

} if((distancia>200)and(distancia<300))

{

digitalWrite(led_rojo,LOW);

digitalWrite(led_amarillo,LOW);

digitalWrite(led_verde,HIGH);

tone(parlante,200,300);

delay(700);

}

if(distancia>300)

{

digitalWrite(led_rojo,LOW);

digitalWrite(led_amarillo,LOW);

digitalWrite(led_verde,LOW);

}

}

long readUltrasonicDistance(int triggerPin, int echoPin)

{

// Instagram: @konredus 6

pinMode(triggerPin, OUTPUT); // Clear the trigger

digitalWrite(triggerPin, LOW);

delayMicroseconds(2);

// Sets the trigger pin to HIGH state for 10 microseconds

digitalWrite(triggerPin, HIGH);

delayMicroseconds(10);

digitalWrite(triggerPin, LOW);

pinMode(echoPin, INPUT);

// Reads the echo pin, and returns the sound wave travel time in microseconds

return pulseIn(echoPin, HIGH);

}

 

Comentarios

#popular:)