En esta entrada vamos a realizar medidas de forma cualitativa (con los colores de los leds) mediante el sensor de ultrasonidos ya utilizado en la entrada anterior. El conjunto tomará, de forma sencilla, una medida de la distancia a la cual está el objeto, encendiendo el LED rojo si dicho objeto está a menos de 20 centímetros, ámbar si está entre 20 y 40 centímetros, y verde si está a más de 40 centímetros.
Material
Sensor ultrasonidos HC-SR04
Placa Arduino UNO
LED rojo, verde y ámbar (se pueden usar los colores que tengáis, yo he usado los más familiares). 3x resistencias 220 ohmnios
Cables
Cable USB
Esquema
Programa
int ledrojo=6; int lednaranja=7; int ledverde=8; long distancia; long tiempo; int led; void setup(){ Serial.begin(9600); pinMode(11, OUTPUT); pinMode(12, INPUT); pinMode(ledrojo, OUTPUT); pinMode(lednaranja, OUTPUT); pinMode(ledverde, OUTPUT); } void loop(){ digitalWrite(11 ,LOW); delayMicroseconds(10); digitalWrite(11, HIGH); delayMicroseconds(10); tiempo=pulseIn(12, HIGH); distancia= int(0.017*tiempo); if (distancia>40){ led=1; digitalWrite(lednaranja,LOW); digitalWrite(ledrojo,LOW); } if (distancia<=40&&distancia>20){ led=2; digitalWrite(ledverde,LOW); digitalWrite(ledrojo,LOW); } if (distancia<=20){ led=3; digitalWrite(ledverde,LOW); digitalWrite(lednaranja,LOW); } switch(led){ case 1: digitalWrite(ledverde,HIGH); break; case 2: digitalWrite(lednaranja,HIGH); break; case 3: digitalWrite(ledrojo,HIGH); break; } delay(50); }Vídeo
Os animamos a subir vuestros vídeos del tutorial funcionando en nuestro Facebook o
nombrándonos en Twitter.
P.
Funciona bien, dentro de ciertos rangos se pueden modificar las distancias. Gracias buen diseño
Muy bueno tu práctica con Arduino y sensor de distancia Gracias por compartirlo