El sensor ultrasónico está bárbaro para todo tipo de proyectos donde necesites medir distancias o esquivar obstáculos. El HC-SR04 es barato y re simple de usar, sobre todo porque vamos a usar una librería pensada justo para estos sensores.
Componentes necesarios
(1) Elegoo ESP32, (1) Módulo de sensor ultrasónico, (4) Cables M-M (macho a macho), (2) Protoboard de 400 puntos.
Introducción al componente
El módulo HC-SR04 ofrece una función de medición sin contacto de 2 cm a 400 cm, con una precisión que llega a los 3 mm. El módulo incluye los transmisores, el receptor y el circuito de control. El principio es básico: mandás un disparo de al menos 10µs, el módulo emite ocho pulsos de 40 kHz y detecta si vuelve una señal de eco.
Conexión y Diagrama
Para arrancar la medición, solo tenés que mandarle un pulso corto de 10µs al trigger. El ancho del pulso de eco es proporcional a la distancia del objeto. Podés calcularlo con la fórmula: µs / 58 = centímetros o µs / 148 = pulgadas. Te sugerimos usar ciclos de medición de más de 60ms para que no se mezclen las señales.
Código y Configuración
Podés bajarte el programa y abrirlo con el Arduino IDE; fijate de tener instalada la placa ESP32 y los drivers antes. Es clave que instales la librería <SR04>, si no el código no te va a andar. El programa configura el pin 18 para el disparo (trigger) y el 19 para el eco, mostrando los resultados en el monitor serie.
Explicación de las funciones
En el setup() inicializamos la comunicación serie a 9600 baudios y metemos un segundo de demora para que el sistema se estabilice. En el loop(), la función sr04.Distance() hace todo el laburo de medir y te guarda el resultado en una variable. Después usamos Serial.print para mostrar el valor y Serial.println para el "cm", que además hace el salto de línea.
Principio de medición y cálculo
El trigger activa el sensor con un pulso de 10µs y este tira 8 ráfagas de ultrasonido a 40kHz. El pin de echo se pone en HIGH cuando salen las ondas y en LOW cuando vuelven. La distancia se calcula multiplicando ese tiempo por la velocidad del sonido (340 m/s) y dividiéndolo por dos, porque el sonido tiene que ir y volver.
Fuente: Adaptado al español desde el wiki oficial Elegoo (licencia CC BY-SA). Revisión técnica por equipo Breva.