proyecto-no-3-controlar-un-led-con-un-sensor-de-distancia
proyecto-no-3-controlar-un-led-con-un-sensor-de-distancia
proyecto-no-3-controlar-un-led-con-un-sensor-de-distancia
com
Aprende a programar un circuito para controlar el encendido de un LED de color verde y un LED de
color rojo con un sensor de ultrasonidos de distancia. Cuando el sensor detecte un objeto a menos de
20 cm se encenderá el LED rojo y cuando la distancia sea mayor a 20 cm se encenderá el verde.
1
www.ebotics.com
MATERIALES:
Un sensor de distancia utiliza el mismo principio que utilizan los murciélagos para volar sin chocar
con objetos. Emiten unas ondas de ultrasonidos y si éstas vuelven quiere decir que hay un objeto
delante nuestro, y entonces se decidirá si esquivarlo o ir a por él. En función de lo que tarden estas
ondas en ir y volver se puede determinar si el objeto se encuentra más cerca o más lejos.
2
www.ebotics.com
El sensor de ultrasonidos está formado por 2 módulos diferentes: un emisor y un receptor. El emisor
emite unas ondas de ultrasonidos, que son unas ondas sonoras que nosotros no podemos escuchar
(como las de los murciélagos). Éstas avanzan hasta encontrar obstáculos y, cuando los encuentran,
rebotan hacia el sensor, hasta que el ultrasonido es detectado por el módulo receptor.
Debido a que las ondas sonoras siempre viajan a la misma velocidad, cuando se desplazan por el aire
3
www.ebotics.com
(343 m/s), para saber a qué distancia se encuentra el objeto detectado se debe medir el tiempo que
tarda la onda en ir y volver, y dividirlo entre dos. El número resultante será el tiempo que ha tardado
desde que hemos emitido el ultrasonido hasta que ha chocado con el objeto, y no el tiempo desde
que ha salido hasta que ha llegado.
Una vez que sabemos cuánto tiempo han tardado las ondas sonoras en chocar con el objeto,
debemos multiplicar el tiempo de ida por la velocidad a la que viajan las ondas, y obtendremos la
distancia:
Si la onda de ultrasonidos no vuelve, significa que no hay ningún obstáculo y el sensor informará de
que no hay nada delante suyo.
CONEXIONES:
1. La placa protoboard recibe la electricidad del pin de 5V de la placa Build&Code UNO y vuelve
de la protoboard a la Build&Code UNO a través del pin GND (tierra). Debes conectar todos los
GND del circuito entre sí, para que todos tengan el mismo valor de GND.
En la imagen, el color negro es el GND, donde todos los Grounds de cada componente están
conectados entre sí y al GND de la placa. El color rojo representa los 5V, que alimenta el
sensor de distancia.
2. Para activar los LEDs verde y rojo debes conectarlos a pines digital, que serán los pines
encargados de dar electricidad para que se enciendan.
La imagen muestra cómo el LED rojo se conecta con un cable verde al pin digital 11, y el LED
verde se conecta con un cable lila al pin digital 10.
3. El sensor de ultrasonidos tiene 4 pines, de los cuales 2 ya has conectado (5V y GND). Los otros
2 pines son ECHO y TRIG que deben ir conectados a 2 pines digitales, siendo estos pines los
encargados de enviar la información a la placa Build&Code UNO.
En la imagen puedes ver cómo del ultrasonic salen 4 cables, 1 GND, 1 5V, y 2 conectados a 2
pines digitales. El pin del sensor Trig se conecta con un cable amarillo al pin digital 7. El pin
del sensor Echo se conecta con un cable naranja al pin digital 8.
4
www.ebotics.com
CÓDIGO DE PROGRAMACIÓN
Puedes realizar este ejercicio utilizando el programa Arduino o un software de programación por
bloques compatible. A continuación encontrarás el código de programación necesario.
Código Arduino
Realizarás un programa que estará leyendo información del sensor de ultrasonidos de distancia de
forma continua. En función de la distancia que mida el sensor, se encenderá un LED u otro.
Para ello utilizarás una condición: si la distancia es menor que 20 cm, el LED rojo estará encendido
mientras que el verde estará apagado. Por el contrario, si la distancia es mayor a 20 cm, el LED
verde estará encendido y el LED rojo estará apagado.
Para medir la distancia tendrás que definir el pin TRIG como salida y el ECHO como entrada. El pin
TRIG será el encargado de enviar la señal de ultrasonidos hacia delante, y el pin ECHO será el
encargado de estar a la espera a recibir la señal.
En función del tiempo transcurrido entre el momento en que la señal ha sido enviada y recibida, se
puede saber a qué distancia está el objeto, ya que la velocidad del sonido en el aire siempre es 343,3
m/s.
Por lo que, si sabes el tiempo total, que es lo que tarda en llegar desde el sensor al objeto rebotado y
desde el objeto rebotado al sensor, puedes saber la distancia. Para ello, simplemente multiplicas el
5
www.ebotics.com
tiempo que tarda en llegar desde el sensor al objeto (dividir entre 2 el tiempo total) por la velocidad
del sonido en el aire:
Para trabajar con más resolución, trabajarás en cm/us (centímetros por microsegundo), utilizando el
siguiente factor de conversión:
Una vez calculada la distancia, en función de su valor harás encender uno u otro LED. Para ello
definirás los 2 pines en los que conectes los LEDs como salida y, cuando quieras que esté encendido,
le darás un valor alto (HIGH o 1) y cuando quieras que esté apagado le darás un valor bajo (LOW o
0).
void setup()
{
pinMode(trigPin, OUTPUT); //Declaramos el pin digital 7 como salida
pinMode(echoPin, INPUT); //Declaramos el pin digital 8 como
entrada
pinMode(LEDR, OUTPUT); //Declaramos el pin digital 10 como salida
pinMode(LEDV, OUTPUT); //Declaramos el pin digital 11 como salida
digitalWrite (LEDR , LOW); //Definimos la salida digital 10 con un
estado bajo
digitalWrite (LEDV , LOW); //Definimos la salida digital 11 con un
estado bajo
}
void loop()
{
digitalWrite(trigPin, LOW); // Nos aseguramos de que el
trigger está desactivado
6
www.ebotics.com
7
www.ebotics.com