0% encontró este documento útil (0 votos)
212 vistas2 páginas

Práctica Sensor Ultrasónico

Este documento describe cómo construir y usar un sensor ultrasónico HC-SR04 con Arduino. Explica que el sensor mide la distancia enviando pulsos ultrasónicos y midiendo el tiempo que tardan en regresar, y que usando esta información y la velocidad del sonido, puede calcular la distancia al objeto. Además, propone un ejercicio para encender diferentes números de LED en función de rangos de distancia medidos, y lista las funciones de Arduino necesarias como pinMode, digitalWrite, delayMicroseconds y pulseIn.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
212 vistas2 páginas

Práctica Sensor Ultrasónico

Este documento describe cómo construir y usar un sensor ultrasónico HC-SR04 con Arduino. Explica que el sensor mide la distancia enviando pulsos ultrasónicos y midiendo el tiempo que tardan en regresar, y que usando esta información y la velocidad del sonido, puede calcular la distancia al objeto. Además, propone un ejercicio para encender diferentes números de LED en función de rangos de distancia medidos, y lista las funciones de Arduino necesarias como pinMode, digitalWrite, delayMicroseconds y pulseIn.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 2

Práctica. Sensor ultrasónico.

Construya el siguiente circuito con el módulo HC-SR04:

La correspondencia de pines es como sigue:

Módulo Arduino
Vcc 5V
Trigger Pin 2
Echo Pin 3
Gnd Gnd

El módulo HC-SR04 funciona de la siguiente manera:

 El programador debe enviar mediante un pin digital de Arduino un pulso de 10


microsegundos al pin Trigger del módulo, es decir el pin trigger debe estar en HIGH 10
microsegundos.
 Cuando el módulo recibe ese pulso dispara un ultrasonido.
 Si el ultrasonido choca con un obstáculo recibiremos un eco del ultrasonido enviado. El
módulo nos enviará un pulso por el pin Echo cuando reciba el eco.
 El tiempo que tardó en llegar el eco es el tiempo que tardó el ultrasonido en recorrer dos
veces la distancia entre el sensor y el obstáculo.
 Dado que conocemos la velocidad del ultrasonido (340m/s) y la función
pulseIn(pin,HIGH) nos permite detectar el lapso entre el disparo y la llegada del
eco, podemos estimar la distancia.
 El valor de salida de la función pulseIn(pin,HIGH) es el tiempo en microsegundos
que tardó en llegar el eco de regreso al módulo. de en un tipo de variable unsigned long.
 Para obtener la distancia en centímetros tenemos que dividir el tiempo en microsegundos
entre 59.
 El fabricante del módulo recomienda esperar al menos 100 milisegundos antes de hacer
una nueva lectura.
 Se recomienda hacer pruebas de distancia en el puerto serial para comprobar la
efectividad de la medición usando solo el circuito de la imagen.

La práctica consiste en encender LED’s asociados a la proximidad de objetos al sensor.

 Si hay un objeto a 5 centímetros o menos deben prender 5 LED’s


 Si hay un objeto entre 5 y 10 centímetros deben prender 4 LED’s
 Si hay un objeto entre 10 y 15 centímetros deben prender 3 LED’s
 Si hay un objeto entre 15 y 20 centímetros deben prender 2 LED’s
 Si hay un objeto a más de 20 centímetros debe prender solo 1 LED
 La distancia se debe monitorear mediante el puerto serial además de los LED’s
 Se recomienda usar resistencias en los LED’s puesto que sin ellas el Arduino consumirá
mucha corriente lo cual podría reflejarse en un funcionamiento inadecuado.

Las funciones necesarias son:

// define el modo del puerto

pinMode(pin, mode);

// escribe un valor lógico en el puerto HIGH si es 1 LOW si es 0

digitalWrite(pin, state);

// function delay en microsegundos

delayMicroseconds(microseconds);

/* Reads a pulse (either HIGH or LOW) on a pin. For example, if


value is HIGH, pulseIn() waits for the pin to go HIGH, starts
timing, then waits for the pin to go LOW and stops timing. Returns
the length of the pulse in microseconds or 0 if no complete pulse
was received within the timeout. */

pulseIn(pin, value);

También podría gustarte