Los sensores electrónicos son muy utilizados en el campo de la robótica y en la nueva corriente del Internet de las cosas para detectar temperaturas, humedad o sonidos, entre otros elementos que pueden aportar información del entorno.
Uno de los más ingeniosos es el sensor ultrasónico HC-SRO4, compuesto de un altavoz y micrófono. Este sensor transmite desde el altavoz una onda ultrasónica que al rebotar contra los objetos a su alrededor es captada por el micrófono, lo cual sirve para medir la distancia entre ellos e impedir colisiones.
A continuación, veremos cómo montar un circuito para medir distancias con un sensor ultrasónico y una Raspberry Pi 4. Además te proporcionaremos el código respectivo.
Material necesario:
1 sensor ultrasónico HC-SR04
1 placa de pruebas
1 resistencia de 1K Ω
1 resistencia de 2k Ω
Cableado del circuito:
El sensor ultrasónico HC-SR04 dispone de 4 pines: Vcc, utilizado para alimentar el dispositivo; Trig, activa el envio de un pulso de sonido; Echo, envía un pulso a la Raspberry cuando captura el rebote de un pulso de sonido; y Gnd.
Conectaremos cada uno de estos pines con los de la Raspberry mediante la protoboard y cables hembra/macho, macho/macho.
Para comenzar, coloca el sensor ultrasónico en la protoboard (ver imagen). Luego, conecta el pin Vcc al pin de 5 voltios de la Raspberry. Enseguida, conecta el pin Trig a alguno de los pines GPIO (por ejemplo, al GPIO 25). Y el pin Gnd al pin GND.
El pin Echo también debe ser conectado a alguno de los pines GPIO pero no directamente, sino a través de un divisor de tensión o voltaje. Esto porque el sensor trabaja a 5 voltios mientras que los pines de la Raspberry lo hacen a 3.3 v.
Cómo se construye un divisor de tensión o voltaje
Un divisor de tensión o voltaje es un circuito eléctrico cuyo propósito es el de obtener un voltaje de salida menor al de entrada. Su construcción es muy sencilla y solo requiere el uso de resistencias.
El valor de las resistencias se obtiene aplicando la ley de ohm a ambas resistencias y teniendo en cuenta que la intensidad de corriente es la misma en el circuito.
Tenemos que:
Ve = V1 + Vs ===> V1= Ve – Vs
De otro lado: I1= I2 ===> (Ve – Vs)/Vs = R1/R2
En nuestro caso: voltaje de entrada (pin Echo) = 5 v; voltaje de salida (Vs)= 3.3 v (pin GPIO)
Luego de hacer las substituciones respectivas, se tiene que:
R1/R2 = 0.51
Por lo tanto, podemos utilizar dos resistencias cualesquiera siempre y cuando guarden dicha proporción. Por ejemplo, una de 1000 Ω y otra de 2000 Ω.
Cómo conectar el pin Echo al pin GPIO usando un divisor de voltaje
Conecta un extremo de la resistencia de 1K ohmios al pin Echo, y el otro extremo a una resistencia de 2k. El otro extremo de la resistencia de 2k Ω conéctalo al GND de la Raspberry Pi.
Código en Python para medir distancias con un sensor ultrasónico y Raspberry Pi
from gpiozero import DistanceSensor
from time import sleep
sensor=DistanceSensor(23,25)
while True:
print('La distancia al objeto es: ', sensor.distance*100, 'cm')
sleep(1)
Para ejecutar el código, dirígete al escritorio de Raspberry Pi OS, haz clic en el logo de Raspberry y selecciona Programming > mu. Enseguida, copia y pega el código de arriba. Haz clic en Save y guarda el archivo con extensión .py. Por último, haz un clic en Run.
TAMBIÉN TE PUEDE INTERESAR