Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Conectar sensor ultrasónico HC-SR04 a Raspberry Pi: guía práctica

En proyectos anteriores cubrimos sensores de temperatura, módulos PIR de movimiento e interfaz GPIO básica. El medidor de distancia ultrasónico HC-SR04 es una opción popular, pero su salida de 5 V debe reducirse a 3,3 V para proteger los pines GPIO de la Raspberry Pi. Este tutorial recorre la física, la electrónica y el código Python necesarios para conectar y usar el sensor de forma segura.

Qué necesitarás

Cómo funcionan los sensores ultrasónicos

El sonido se propaga como ondas de presión; el tono está determinado por la frecuencia de estas ondas. Los sensores ultrasónicos emiten sonido de alta frecuencia inaudible para humanos, rebotan en objetos cercanos y capturan el eco. Midiendo el tiempo de ida y vuelta del pulso, el circuito interno del sensor calcula la distancia usando la velocidad del sonido (≈343 m/s en aire).

Pinout y funcionalidad del HC-SR04

El sensor emite un pulso de 5 V en ECHO que dura desde que se detecta el eco hasta que el sensor está listo para el siguiente disparo. Como un pin GPIO de Raspberry Pi solo tolera 3,3 V, debemos reducir este voltaje.

Circuito divisor de voltaje

Un divisor de voltaje simple usa dos resistencias en serie. Con la salida de 5 V del ECHO del sensor como entrada, una resistencia de 1 kΩ (R1) seguida de una de 2 kΩ (R2) producirá 3,3 V en la unión:

Vout = Vin × (R2 / (R1 + R2))

Conecta la resistencia de 1 kΩ entre la línea ECHO y el GPIO de la Raspberry Pi, luego conecta la de 2 kΩ desde esa unión a tierra. Esto protege la Pi permitiendo mediciones precisas.

Cableado hardware (método protoboard)

Usa los siguientes pines de Raspberry Pi:

  1. Conecta los pines del HC-SR04 a la protoboard: Rojo (Vcc), Azul (TRIG), Amarillo (ECHO), Negro (GND).
  2. Une el rail positivo de la protoboard al 5 V de la Pi y el negativo al GND de la Pi.
  3. Cablea TRIG a GPIO 23. Puedes conectarlo directamente o pasar por un rail de la protoboard.
  4. Para la línea ECHO, coloca la resistencia de 1 kΩ en el rail desde el pin ECHO del HC-SR04, luego añade la de 2 kΩ a tierra. Conecta GPIO 24 a la unión entre ambas resistencias.
  5. Verifica todas las conexiones antes de alimentar la Pi.

Código Python para leer distancia

El siguiente script muestra cómo disparar el sensor e interpretar el ancho del pulso de eco para calcular la distancia en centímetros.

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
TRIG = 23
ECHO = 24
GPIO.setup(TRIG, GPIO.OUT)
GPIO.setup(ECHO, GPIO.IN)
GPIO.output(TRIG, False)
time.sleep(2)  # Permite que el sensor se estabilice
while True:
    # Dispara el sensor: pulso alto de 10 µs
    GPIO.output(TRIG, True)
    time.sleep(0.00001)
    GPIO.output(TRIG, False)
    # Espera a que el eco suba
    pulse_start = time.time()
    while GPIO.input(ECHO) == 0:
        pulse_start = time.time()
    # Espera a que el eco baje
    pulse_end = time.time()
    while GPIO.input(ECHO) == 1:
        pulse_end = time.time()
    pulse_duration = pulse_end - pulse_start
    distance = pulse_duration * 17150  # Velocidad del sonido en cm/s
    print("Distancia: %0.2f cm" % distance)
    time.sleep(1)
GPIO.cleanup()

Ejecutar este script mostrará lecturas de distancia en tiempo real. Ajusta el retardo o intervalo de disparo según tu aplicación.

Consejos de seguridad

Siguiendo estos pasos, tendrás un sistema robusto de medición de distancia ultrasónica, seguro para tu Raspberry Pi y preciso para una amplia gama de proyectos de robótica y automatización.

Proceso de manufactura

  1. Construya un registrador de temperatura con Raspberry Pi y sensor I2C de 5 $
  2. Monitorización profesional de temperatura con Raspberry Pi y DS18B20
  3. Construya un sensor de temperatura remoto con Raspberry Pi y Python – Guía paso a paso
  4. Construya una estación meteorológica con Raspberry Pi que envíe datos diarios por email
  5. Breakout compacto DHT de temperatura y humedad para Raspberry Pi – ATtiny85 y DHT22/DHT11
  6. Integración de datos de sensores en Raspberry Pi: Guía práctica
  7. Conexión del sensor ultrasónico HC‑SR04 a Raspberry Pi 3 – Guía completa
  8. Controle un LED con Sensor PIR de Movimiento en Raspberry Pi
  9. Construya un Sensor de Humedad de Suelo de Bajo Coste para Riego Inteligente con Raspberry Pi
  10. Lectura de Sensor Hall Lineal con Raspberry Pi: Guía Java y Análisis del ADC0832
  11. Construya un Sistema de Monitorización de Temperatura y Luz Multi‑Sensor con Raspberry Pi y DS18B20