En este proyecto vamos a utilizar nuestro celular para ingresar una clave de acceso que nos permita abrir una puerta controlada por un servomotor. Para ello haremos uso de un módulo Bluetooth trabajando con el arduino.
Lista de componentes
- 01 Arduino uno
- 01 Módulo Bluetooth HC-05 o HC-06
- 01 Lcd 16x2
- 01 Servomotor
- 01 Led rojo, led verde
- 03 Resistencias de 330 ohm
- 01 Resistencia de 4.7K
Esquema
Funcionamiento
Al inicio el servo mantiene la puerta cerrada, y la pantalla lcd muestra el mensaje «Ingrese clave:», lo primero que debemos hacer es establecer la conexión entre nuestro celular y el módulo Bluetooth, para ello podemos utilizar cualquier programa en nuestro celular que nos permita sincronizar y conectar con el módulo bluetooth y enviar caracteres desde el teclado del celular. En nuestro caso utilizamos la app «BlueTerm», que puede encontrarse en la página de «GooglePlay».
Luego de conectarnos, podemosutilizar el teclado numérico para ingresar la calve de cuatro digitos, que por defecto es: «1234». Si la clave es correcta, el arduino moverá el servomotor que a su vez debería abrir la puerta, también mostrara un mensaje en la pantalla lcd de «puerta abierta» y encenderá un led verde durante cuatro segundos. Luego volverá a mover el servomotor para cerrar la puerta, apagará el led verde y mostrará el mensaje en el lcd «puerta cerrada» durante dos segundos. Volviendo a su estado inicial de esperar a que se ingrese la clave.
Si la clave es incorrecta, se encenderá un led rojo y el lcd mostrará el mensaje: «clave incorrecta», durante dos segundos, volviendo luego a su condición inicial.
Programa
El programa utiliza dos librerías «servo.h» y «LiquidCrystal.h», ambas integradas en el programa arduino. Este es el archivo del programa para arduino:
Como podemos ver, lo primero es iniciar el servo, la pantalla lcd y la transmisión serial.
En el programa principal definimos dos matrices de 4 elementos cada una, una para la clave guardada, y otra para la clave que se ingresa desde el celular.
El programa se queda a la espera de que algún dato llegue por el puerto serial, que está conectado al módulo Bluetooh; si un dato llega, el programa verifica que sea un carácter numérico; si es así, lo guarda en la variable de la matriz correspondiente, luego incrementa el contador de datos guardados, si el contador es menor a 4, sigue esperando datos, si el contador es igual a 4 entonces compara todos los datos guardados con la clave guardada.
Luego de la comparación el programa abrirá o mantendrá la puerta cerrada dependiendo de si la clave fue correcta o no.
Consejos de Funky
- Ten cuidado cuando subas el programa a tu arduino, es preferible que el módulo bluetooth no se encuentre conectado mientras se sube el programa, ya que, en este caso,el módulo bluetooth utiliza los pines 1 (RX) y 2 (TX) que utiliza el arduino para cargar el programa.
- En el programa se consideró el valor de 90º para la puerta cerrada y 180º para la puerta abierta, puede que estos valores cambien dependiendo de la posición de la puerta que utilices.
- La clave introducida solo es de cuatro datos, pero puedes ampliarlo fácilmente aumentando el indice de las matrices para la clave guardada y la clave ingresada. Al igual que cambiando la comparación de total de datos guardados.
No hay comentarios:
Publicar un comentario