¿Conoces el funcionamiento del sensor de ultrasonido?
Aprende como funciona uno de los sensores más utilizados para iniciarse en la programación y la Robótica.
El sensor de ultrasonido basa su funcionamiento en el mismo principio que usan algunos animales como los murciélagos o las ballenas.
Se envía una onda sonora y se analiza la onda reflejada para saber a qué distancia se encuentra el objeto que ha reflejado la onda.
En el caso del sensor de ultrasonidos se utiliza un emisor para emitir una onda de sonido de alta frecuencia (ultrasonido) y un receptor para escuchar la onda reflejada.
Aprovechando la forma cilíndrica de emisor y receptor, encontramos el sensor de ultrasonido representando los “ojos” del robot en muchos kits de Robótica educativa, y en cierto modo realmente es la herramienta que vamos a utilizar para “ver” lo que el robot tiene delante.
El sensor de ultrasonidos sirve para medir distancia, por lo que en los robots móviles vamos a utilizarlos para localizar un obstáculo y poder evitarlo. También podremos detectar los límites de una mesa para que no caiga el robot orientando hacia el suelo el sensor. Seremos capaces de detectar las paredes de un laberinto para poder encontrar la salida.
A nivel industrial, este tipo de sensor de ultrasonidos se utiliza habitualmente para medir el volumen de líquidos en depósitos y tanques.
En general lo podemos usar siempre que tengamos la necesidad de medir una distancia.
Si nuestra aplicación lo necesita, podríamos utilizar varios sensores de ultrasonidos y analizar su respuesta por separado.
La manera de trabajar con un sensor de ultrasonidos es la siguiente, poniendo como ejemplo el sensor HC-SR04, que es el más utilizado en prototipos y en Robótica educativa con Arduino o Raspberry.
Por el pin de trigger, que en español significa desencadenador, se envía al sensor la petición de lectura mediante un pulso TTL de al menos 10µs (un “1” lógico, para entendernos).
En ese momento el sensor de ultrasonidos va a enviar por su emisor una onda sonora de 8 pulsos a 40 kHz (onda de ultrasonidos que no puede escuchar un ser humano). Tras el último pulso, el sensor pone su pin de echo (eco en inglés) a “1”.
La onda se transmitirá por el aire rebotando en un objeto que se encuentre a menos de 4 metros y dentro de un ángulo de 30º.
La onda reflejada llegará al receptor y será interpretada por el sensor de ultrasonidos que pasará el pin de echo a “0” tras recibir el último pulso reflejado.
De esta manera hemos tenido el pin de echo a “1” durante el tiempo que las ondas de ultrasonidos han necesitado para ir y volver reflejadas del objeto
Sabiendo que la velocidad del sonido es de aproximadamente 340 m/s (343,2 m/s a 20º de temperatura ambiente), podremos calcular la distancia recorrida por la onda para ir y volver.
Lógicamente, esa distancia la acabaremos dividiendo por dos para establecer la distancia aproximada a la que se encuentra el objeto.
Lo bueno de los kits de robótica educativa es que suelen trabajar con lenguajes visuales con bloques de instrucciones, de manera que no es necesario entender todo el funcionamiento del sensor de ultrasonido, bastará con utilizar el bloque de lectura de dato.
TUTORIAL DE ARDUINO Y SENSOR ULTRASÓNICO HC-SR04
En muchos de nuestros proyectos, tenemos la necesidad de sensar nuestro entorno, saber si en frente hay un obstáculo y a qué distancia se encuentra, el sensor HC-SR04 nos permite hacer eso.
En este tutorial, vamos a conocer de forma detallada las características del sensor HC-SR04, como calibrar el sensor, como conectarlo y como utilizarlo con Arduino.
El sensor HC-SR04 es un sensor de distancia de bajo costo, su uso es muy frecuente en la robótica, utiliza transductores de ultrasonido para detectar objetos.
Su funcionamiento consiste en emitir un sonido ultrasónico por uno de sus transductores, y esperar que el sonido rebote de algún objeto presente, el eco es captador por el segundo transductor. La distancia es proporcional al tiempo que demora en llegar el eco.
Para empezar a utilizar el sensor HC-SR04 solo necesitas una placa Arduino, en este tutorial utilizaremos un Arduino Uno R3, pero puedes utilizar cualquier placa de Arduino, el procedimiento es el mismo.
Empezamos insertando el sensor ultrasónico en un protoboard y con cables hacemos las siguientes conexiones:
- Trigger del sensor al pin 2 del Arduino
- Echo del sensor al pin 3 del Arduino
También puedes conectar el módulo directamente al Arduino sin usar el protoboard.
Todas las conexiones se realizan con el Arduino Apagado (desconectado de la PC o de cualquier fuente externa):
Ahora abrimos el entorno de programación de Arduino, en Herramientas →Tarjeta, y seleccionamos el modelo de placa Arduino que estemos utilizando. Nosotros seleccionaremos Arduino Uno.
Una vez configurado el IDE, empezamos a programar nuestro sketch, explicaremos paso a paso el código para sea más comprensible:
Primero configuramos los pines y la comunicación serial a 9800 baudios
Ahora en el bucle void loop() empezamos enviando un pulso de 10us al Trigger del sensor
Seguidamente recibimos el pulso de respuesta del sensor por el pin Echo, para medir el pulso usamos la función pulseIn(pin, value)
Comments