Tutorial: Crear una Alarma por ultrasonidos

En nuestro último post, nos iniciamos en el mundo de Arduino comparando los kits y preparando nuestro entorno para iniciarnos en el mundo de Arduino. En este tutorial, vamos a ver una aplicación práctica utilizando un sensor por ultrasonidos modelo hc-sr04 él cual nos permite realizar mediciones de distancia a través del eco de los ultrasonidos.

En este tutorial vamos a montar una alarma la cual nos avisará de cuando detecte un objeto pasando por delante del sensor. Seguidamente vamos a mostrar los componentes que necesitaremos para este montaje:

Con estos componentes vamos a realizar un montaje por el cual, utilizando la placa arduino vamos a hacer que si pasando un umbral de distancia vamos a hacer que un diodo led se encienda y se apague si no se pasa de dicho umbral. Para ello, vamos a hacer el siguiente esquema que mostramos su montaje en la siguiente figura, utilizando el programa Fritzing.

alarmaultrasonido

 

El sensor de ultrasonido, nos permite obtener la distancia a partir de la medición del tiempo de ida y vuelta del pulso de ultrasonido(medición del tiempo del eco) para ello, utilizaremos el sensor hc-sr04 como hemos estado comentando anteriormente. Explicaremos con la siguiente figura, como funciona el sensor por ultrasonidos:

ultrasonido

Como podemos ver en la figura, el sensor lanza un pulso y recibe una respuesta a través del Eco que este hace al rebotar contra una superficie solida. En este caso, por ejemplo una pared. Este principio es el que utilizaremos para poder medir la distancia; midiendo el tiempo entre la ida y la vuelta y sabiendo la velocidad de propagación del sonido en el aire. Enseñaríamos la formula matemática para obtener la distancia; pero lo mejor es utilizar una librería para que nos ayude en la medida de la distancia.

Esta libreria se llama Ultrasonic y podemos descargarla en el siguiente enlace.

Una vez descargada, vamos a enseñaros a como añadir una librería en el entorno de Arduino. Como vimos en otro post, para programar con Arduino tenemos nuestro propio entorno de desarrollo llamado Arduino IDE(Aunque existen otras soluciones como Eclipse AVR plugin o AVR Studio). Estos son los pasos para insertar una librería en el entorno de Arduino:

  • 1. Una vez arrancado el entorno, nos iremos al menú programa->Importar Librería-> Añadir Librería…

añadirlibreria

  • 2. Seguidamente nos pedirá la localización del archivo .zip con el código de la librería. Seleccionamos la que nos hemos descargado.

Captura de pantalla 2014-11-05 a las 21.09.11

  • 3. Si todo ha ido correcto, en el menú programa->Importar Librería, nos debería de aparecer en la lista de librerías la librería Ultrasonic.

Captura de pantalla 2014-11-05 a las 21.09.45

Una vez hemos añadido la librería, vamos a escribir el programa que utilizará el sensor de Ultrasonidos.

/*
 *
 * BooleanBite: Ejemplo de uso de Sensor de Ultrasonidos.
 * Codigo con licencia Libre
 */
#include < ultrasonic.h > //Libreria Ultrasonic
#define LED 5 //pin del Led
#define TRIM 9 //pin para TRIM
#define ECHO 10 //pin para ECHO
 
Ultrasonic ultrasonic(TRIM,ECHO); //Inicializacion de la libreria
 
void setup() {
  pinMode(LED,OUTPUT);//preparacion del LED
 
}
 
void loop() {
float distance= ultrasonic.Ranging(CM); //Obtencion de la distancia en Centimentros
 
 if(distance < 21.0){//Si la distancia es menor que 21  
   digitalWrite(LED,HIGH); //Encendemos Led(Alarma Activada)
  }else{//SIno: distancia &gt;= 21 cm
    digitalWrite(LED,LOW); //ApagamosLed(Alarma Apagada)
 }
 
 delay(250); //Esperamos 250ms para otra pasada
}

Una vez que tenemos el código escrito y compilado, lo pasaremos a la placa arduino por medio de un cable USB como hemos visto en el anterior post. Una vez se ha pasado este programa, podemos probar nuestra alarma y ver si funciona correctamente. Seguidamente, os dejamos un vídeo de demostración de como quedaría nuestra alarma funcionando.

2 Comments on "Tutorial: Crear una Alarma por ultrasonidos"

  1. if(distance<21.0)

    ¿Cuál es el significado del ampersand y el punto en esa sentencia?

Deja un comentario.

Tu dirección de correo no será publicada.


*


*