Esta guía muestra cómo usar el sensor ultrasónico HC-SR04 con la placa ESP8266 NodeMCU usando ESPHome en Home Assistant. Para determinar la distancia a un objeto, el sensor ultrasónico utiliza un sonar. Le mostraremos cómo conectar el sensor al ESP8266.
Este sensor lee de 2 cm a 200 cm (0,8 pulgadas a 78,7 pulgadas) con una precisión de 0,3 cm (0,1 pulgadas), lo cual es bueno para la mayoría de los proyectos de aficionados. Además, este módulo en particular viene con módulos de transmisor y receptor ultrasónicos.
Esta plataforma de sensores espera un sensor al que se le pueda enviar un pulso de activación en un pin específico y que envíe un pulso de eco una vez que se haya tomado una medida. Debido a que a veces (por ejemplo, si no se detecta ningún objeto) el pulso de eco nunca se devuelve, este sensor también tiene una opción de tiempo de espera que especifica cuánto tiempo esperar los valores.
Piezas necesarias
Para poner en marcha este sensor, son imprescindibles las siguientes piezas.
- Sensor ultrasónico HC-SR04
- Placa de desarrollo ESP32, ESP8266, Wemos d1 mini o equivalente. Yo en este tutorial voy a utilizar la ESP8266.
- Cables de conexión. Estos cables te los puedes fabricar tú mismo siguiendo este tutorial.
- Fuente de alimentación de 5V (Micro USB o Externa).
La siguiente imagen muestra el sensor ultrasónico HC-SR04.
Datos técnicos del sensor ultrasónico HC-SR04
La siguiente tabla muestra las características y especificaciones clave del sensor ultrasónico HC-SR04. Si necesita más información, deberá consultar la hoja de datos del sensor.
Fuente de alimentación | 5V CC |
Corriente de trabajo | 15mA |
Frecuencia de trabajo | 40kHz |
Rango máximo | 4 metros |
Rango mínimo | 2cm |
Ángulo de medición | 15º |
Resolución | 0,3cm |
Señal de entrada del disparador | pulso 10uS TTL |
Señal de salida de eco | Pulso TTL proporcional al rango de distancia |
Dimensiones | 45 mm x 20 mm x 15 mm |
Asignación de pines del sensor ultrasónico HC-SR04
Aquí está el pinout del sensor ultrasónico HC-SR04.
VCC | Alimenta el sensor (5V) |
Trig | Pin de entrada del disparador |
Eco | Pin de salida de eco |
GND | Tierra común |
¿Cómo funciona el sensor ultrasónico HC-SR04?
Así es como funciona:
- El transmisor de ultrasonido (clavija de activación) emite un sonido de alta frecuencia (40 kHz).
- El sonido viaja por el aire. Si encuentra un objeto, regresa al módulo.
- El receptor de ultrasonido (pin de eco) recibe el sonido reflejado (eco).
Teniendo en cuenta la velocidad del sonido en el aire y el tiempo de viaje (tiempo transcurrido desde la transmisión y recepción de la señal) podemos calcular la distancia a un objeto. Aquí está la fórmula:
distancia a un objeto = ((velocidad del sonido en el aire)*tiempo)/2
Esquema: ESP8266 NodeMCU con sensor ultrasónico HC-SR04
Conecte el sensor ultrasónico HC-SR04 al ESP8266 como se muestra en el siguiente diagrama esquemático. Estamos conectando el pin Trig a GPIO5 y el pin Echo para GPIO18, pero puede usar cualquier otro pin adecuado.
Configuración para ESPHome del sensor HC-SR04
# Ejemplo de configuración
sensor:
- platform: ultrasonic
trigger_pin: GPIO12
echo_pin: GPIO14
update_interval: 1s
name: "Sensor ultrasónico"
accuracy_decimals: 1
filters:
- lambda: if (isnan(x)) { return 3.1; } return x;
Variables de configuración sensor HC-SR04:
- trigger_pin (Requerido): El pin de salida para enviar periódicamente el pulso de disparo.
- echo_pin (Obligatorio): El pin de entrada en el que esperar el eco.
- name (Obligatorio): El nombre del sensor.
- update_interval (opcional): el intervalo para comprobar el sensor. El valor predeterminado es
60s
.
Opciones avanzadas:
- timeout (Opcional): El número de metros para el tiempo de espera. La mayoría de los sensores solo pueden detectar hasta 2 metros. Por defecto a 2 metros.
- pulse_time (opcional): la duración durante la cual el pin de activación estará activo. El valor predeterminado es
10us
. - id (opcional): especifique manualmente el ID utilizado para la generación de código.
Descargo de responsabilidad
Esta guía asume que el lector tiene conocimientos intermedios y experiencia con prototipos electrónicos, soldadura, secuencias de comandos, depuración y prácticas seguras. Como con cualquier proyecto, hay muchas formas de lograr el resultado deseado y esta es solo una de ellas. Si bien he realizado esta guía con el máximo de rigor posible, no ofrezco garantía ni asumo ninguna responsabilidad por el resultado de seguir cualquiera o todas las instrucciones aquí descritas.