HC-SR04 es el nombre de uno de los sensores de ultrasonidos más populares. Se utiliza para medir distancias a través de la emisión de ondas de sonido de alta frecuencia. En este post te explicamos todos los detalles de su funcionamiento.
Es un modelo que se encuentra presente en numerosos proyectos creados a través de la plataforma electrónica de código abierto Arduino. Son muchas las razones que explican su éxito: su consumo de energía es bajo consumo (por eso es un sensor perfecto para dispositivos que funcionan con batería), fácil de interconectar y relativamente barato.
Cómo funcionan los sensores de ultrasonidos
Para entender cómo funciona el sensor HC-SR04, primero hay que saber qué son los sensores de ultrasonidos (también conocidos como sensores ultrasónicos). Se trata de detectores de proximidad capaces de detectar objetos a diferentes distancias.
Básicamente, lo que hace el sensor es emitir un sonido y medir el tiempo que la señal emitida tarda en chocar contra un objeto y regresar. La onda emitida se llama «trigger» en el argot técnico, mientras que la onda reflejada recibe el nombre de «eco».
Esto le permite realizar un cálculo de la distancia con un altísimo grado de precisión. De esta manera, los sensores como el HC-SR04 pueden detectar objetos de diferentes formas, ya sean sólidos o líquidos.
El extraordinario grado de exactitud de los sensores de ultrasonidos se debe en gran parte a la función de aprendizaje que suelen incorporar. Hay que decir que este tipo de sensores solo ofrecen resultados fiables en entornos con presencia de aire. No pueden trabajar en el vacío, ya que el sonido necesita un medio de propagación.
Una de las debilidades de estos sensores es que no pueden hacer nada contra las zonas ciegas, es decir, loes espacios comprendidos entre la parte sensible del detector y el alcance mínimo.
¿Por qué no podemos escuchar los ultrasonidos? El oído humano está solo preparado para detectar ondas de sonido que vibran en un rango que va aproximadamente desde 20 veces a 20.000 veces por segundo. Sin embargo, los ultrasonidos tienen una frecuencia de más de 20 000 Hz, lo cual les hace completamente inaudibles para nosotros.
Detalles del hardware HC-SR04
El sensor de distancia ultrasónico HC-SR04 está compuesto por dos transductores ultrasónicos. El primero de ellos actúa como transmisor y el segundo como receptor. El dispositivo emisor convierte la señal eléctrica en pulsos de sonido ultrasónico de 40 kHz. Por su parte, el dispositivo receptor «escucha» los pulsos transmitidos y genera un pulso de salida cuyo ancho es proporcional a la distancia del objeto en el que la señal ha rebotado.
El dispositivo cuenta con cuatro pines:
- VCC, para el suministro de energía al sensor ultrasónico HC-SR04 (en un Arduino, se puede conectar a la salida de 5V).
- Trig (Trigger o disparador), para disparar pulsos de sonido ultrasónico.
- Echo. Este pin permanece en estado ALTO hasta que el sensor recibe un eco, después de lo cual baja.
- GND o pin de tierra.
Este sensor proporciona un alto grado de fiabilidad dentro de un rango que va entre 2 cm y 40 metros. Hablamos de un margen de error de como máximo 3 mm. La verdad es que no está nada mal.
En distancias mayores, su precisión desciende de forma paulatina, mientras que en distancias menores de 2 cm aparece el problema al que nos hemos referido antes de las zonas muertas. La precisión también puede ser menor en condiciones ambientales de altas temperaturas o de excesiva humedad.
Otra característica interesante es que, al funcionar con 5V, se puede conectar directamente sin problemas a un Arduino o cualquier otro microcontrolador lógico similar. También en este sentido hay que valorar sus dimensiones compactas: 45 x 20 x 15 mm.
Funcionamiento y cálculo de la distancia
Así es como funciona el sensor ultrasónico HC-SR04, explicado de forma muy simple:
- El emisor o Trigger transmite una ráfaga ultrasónica de ocho pulsos a 40 kHz (son ocho para que sea más fácil distinguir los pulsos transmitidos del ruido ambiental).
- Justo después de a emisión, el pin de eco pasa a la posición ALTO para iniciar la señal de eco.
- Cuando la señal reflejada regresa, el pin de eco baja.*
(*) Si la señal no encuentra ningún obstáculo dentro del rango de alcance del sensor, no se recibirá ningún eco.
A partir de los datos generados a través de la emisión de la señal y su eco, el módulo de control de HC-SR04 es capaz de calcular la distancia. En realidad, es tan simple como aplicar una sencilla fórmula física que nos enseñaron a todos en nuestros años de escuela (ver la imagen de arriba).
Conclusión
El sensor de ultrasonidos HC-SR04 es una excelente opción para proyectos basados en Arduino y orientados a la medición de distancias y detección de objetos. Sus grandes bazas son su funcionamiento, simple aunque eficaz (siempre que hablemos de distancias cortas), así como su precio, en torno a los 10-12 euros.
Redactor especializado en temas de tecnología e internet con más de diez años de experiencia en diferentes medios digitales. He trabajado como editor y creador de contenidos para empresas de comercio electrónico, comunicación, marketing online y publicidad. También he escrito en webs de economía, finanzas y otros sectores. Mi trabajo es también mi pasión. Ahora, a través de mis artículos en Tecnobits, intento explorar todas las novedades y nuevas oportunidades que el mundo de la tecnología nos ofrece día a día para mejorar nuestras vidas.