Fabrica tu propia cerradura electrónica con la que poder abrir la puerta de tu garaje gracias a tu huella digital

Estamos en una época en la que parece que lo más seguro o rápido pasa por utilizar tu huella digital para, por ejemplo, desbloquear tu teléfono móvil e incluso para entrar a trabajar, en este caso todo pasa por la seguridad requerida o impuesta para llevar a cabo algún que otro proyecto.

Lejos de esto, lo cierto es que, como proyecto en el que aprender cómo funciona este tipo de dispositivos digitales puede ser más que interesante, debido a esto hoy quiero explicarte cómo montar una cerradura electrónica para la puerta de tu garaje que puede ser desbloqueada mediante tu huella digital.


Construye paso a paso tu propia cerradura electrónica para la puerta de tu garaje que puedas desbloquear mediante tu huella digital

Entrando un poco más en detalle, comentarte que para este proyecto vamos a utilizar una escáner de huellas dactilares como el SparkFun GT-511C1R. Como suele ser habitual en este tipo de tutoriales, hay que tener en cuenta que básicamente todo este tipo de productos tienen un funcionamiento muy similar por lo que no es necesario que sea exactamente este modelo.

Si te animas a llevar a cabo este proyecto pero tienes ciertas diferencias, como puede ser que el escáner de huellas dactilares utilizado sea diferente al del tutorial o que simplemente la puerta de tu garaje utilice otros sistema, algo que ocurrirá casi con total probabilidad, no debes por qué temer, puedes seguir el tutorial pero no tal cual ya que deberás realizar alguna que otra modificación tanto en el cableado como en el propio código para adaptarlo a tu hardware.

Pasos necesarios para construir tu propio lector de huellas dactilares con el que abrir la puerta de tu garaje

Paso 1: Cableado y soldadura de todo el sistema

Para conseguir abrir la puerta de tu garaje gracias a la huella dactilar de tu dedo necesitarás dos componentes diferentes. Por un lado, necesitamos fabricar nuestro propio panel de control, mismo que instalaremos en el exterior de nuestro domicilio. En el interior de este panel de control será donde instalaremos el escáner de huellas dactilar, una pantalla pequeña de información y algunos botones adicionales.

En segundo lugar necesitaremos instalar una segunda caja en el interior del propio garaje. Esta será la encargada de verificar que la huella dactilar introducida en el panel de control es aceptada o no por el sistema y, en caso de producirse una verificación correcta, proceder a crear una señal reconocible por el motor que abrirá la puerta de nuestro garaje.

Para llevar esto a cabo necesitaremos de un microcontrolador ATMega328p que será el encargado de dar vida al panel de control que instalaremos en el exterior de nuestra propia casa mientras que, para el panel interior apostaremos por un ATTiny. Las dos placas se comunicarán entre sí a través de una conexión en serie. Para aumentar la seguridad de todo el sistema instalaremos un transmisor polarizado de forma que la tarjeta ATTiny pueda cerrar la conexión consiguiendo que, si algún vándalo arranca la el panel de control exterior, no puede abrir la puerta de nuestro garaje cruzando un par de cables.

Si este proyecto te convence y estás interesado en llevar a cabo este proyecto, esta es la lista de componentes que necesitarás:

Llegados a este punto llega el momento de conectar todo el hardware de la lista. La idea, como seguro estarás imaginando, pasa por seguir el esquema que hay situado justo sobre estas líneas, mismo en el que puedes ver la disposición tanto del panel de control como del módulo interior. Un consejo que puedo darte es que des cierta longitud a los cables tanto del convertidor de corriente como del LCD para que así puedas colgarlos y fijarlos en la posición que más correcta creas dentro de la caja estanca exterior.

Si en este punto examinamos por un momento el código que finalmente ejecutará el controlador te darás cuenta de que los botones van conectados a los pines 12, 13 y 14, mismos que cumplen las funciones de ‘arriba‘, ‘OK‘ y ‘abajo‘ respectivamente. Esto quiere decir que quizá sea una muy buena idea colocarlos de esta manera para así mantener una lógica visual mucho más acorde a la función que tienen.

Para alimentar de corriente a todo el sistema utilizaremos, como decía la lista de elementos necesarios, un cargador de teléfono con conector microUSB cualquiera. La idea de utilizar este tipo de cargador básicamente responde a que son muy económicos y sobre todo fáciles de encontrar. Otra idea diferente es poder alimentar a los controladores mediante el uso de baterías aunque en este punto quizá lo mejor sea utilizar un transformador de corriente alterna a continua ya que el sensor de huellas dactilares suele consumir bastante corriente y, alimentando todo el sistema con pilas puede que tengas que cambiarlas todos los días.

Paso 2: Codificación y ejecución en los controladores

En este punto en concreto comentarte que tanto el códico que debe ejecutar el ATMega328p como el ATTiny85 han sido escritas y compiladas con el IDE de Arduino. En este caso en concreto debemos ejecutar el archivo garagefinger.ino en el ATMega328p y el archivo tiny_switch.ino en el ATTiny85. Por otro lado, las librerías NokiaLCD.cpp y NokiaLCD.h son dos bibliotecas para la pantalla LCD, estas han sido compiladas a partir de ejemplos sacados del sitio Arduino y, como casi todas las bibliotecas, deben colocarse en la carpeta ‘libraries‘ para que tu IDE Arduino las encuentre. Esta carpeta suele situarse a partir de la raiz donde tengas instalado el IDE, en Windiows suele ser “%HOMEPATH”\Documents\Arduino\libraries. Te dejo los ficheros para su descarga justo bajo estas líneas:

Además de esto también necesitarás las librerías para que el escáner de huellas pueda funcionar. En este punto hay que tener en cuenta que lamentablemente las librerías vinculadas al sitio de SparkFun no funcionarán ya que han sido desarrolladas para el modelo GT-511C3, mucho más caro, y no para la versión que estamos utilizando, quizá algo más difícil de encontrar pero mucho más económica. Las bibliotecas de trabajo para GT-511C1R se pueden encontrar en github.

Si tras descargar todos los ficheros y mirar el código quieres dotar de una mayor seguridad al sistema te animo, por ejemplo, a que busques y reemplaces todas las instancias a ‘secrectstring‘ por tu propia contraseña. Otro detalle más que interesante que puede ayudar a que tu sistema sea más seguro pasa por cambiar la variable buf del archivo tiny_switch.ino para que tenga la misma longitud que la contraseña que quieres utilizar.

La variable overrydeCode, definida en el fichero garagefinger.ino, tiene una representación de 8 bits de la secuencia de pulsaciones de botón arriba/abajo que se pueden utilizar para abrir la puerta de tu garaje y cargar nuevas huellas dactilares en el sistema sin tener que utilizar para ello una huella dactilar conocida. Esto es útil para la primera que se utiliza el dispositivo ya que la memoria del escáner estará vacía. Puede ser interesante cambiar este valor inicial.

Paso 3: Montamos todo el proyecto

Una vez hemos probado todo el proyecto llega el momento del ensamblado final. Para esto debemos montar todo el panel de control dentro de nuestra caja estanca. Como puedes ver en las imágenes, para que nadie pueda acceder el controlador, además de la caja estanca, se ha utilizado una caja de acrílico sobre la que instalaremos únicamente la pantalla LCD y los botones de acceso, el resto del sistema se instalará en el interior de esta caja.

Esta caja debe montarse en el exterior de tu vivienda y conectarse directamente a la caja donde instalaremos el ATTiny. En este punto, recordarte que en al ATTiny debes conectar cables para comunicar las señales al motor que abre la puerta de tu garaje. En mi caso me resultó sencillo ya que dentro del propio garaje disponía de un pulsador en la pared que realizaba esta misma función.

Paso 4. Uso del sistema

Una vez tenemos todo el sistema instalado, tan sólo debemos pulsar cualquiera de los tres botones para que se ilumine tanto la pantalla LCD como el escáner de huellas digitales. En este punto, el dispositivo se queda en espera hasta que pongas un dedo en el escáner. Si se reconoce el dedo que has puesto en el escáner la puerta se abrirá y se mostrará en la pantalla un menú para abrir/cerrar la puerta de nuevo, agregar/eliminar huellas dactilares, cambiar el brillo de la pantalla… El dispositivo se apaga pasados unos 8 segundos desde la última tecla pulsada. Para cambiar la duración del tiempo de espera se debe modificar la función waitForButton en el fichero garagefinger.ino.

Como ya comentábamos en párrafos anteriores, se puede utilizar una secuencia de anulación mediante el uso de los bonotes arriba/abajo seguida de ‘OK‘ para obtener acceso al sistema. Esto es útil la primera vez que activas el dispositivo ya que, en este momento, el escáner no tendrá huellas en su memoria. La secuencia inicial viene dada por la representación binaria de 8 bits del número que se encuentre almacenado en la variable overrideCode en el fichero garagefinger.ino donde ‘1’ es representado por el botón ‘arriba’ y ‘0’ es representado por el botón ‘abajo’.

Un punto a tener en cuenta es que, en el caso de que cambies la secuencia de anulación y posteriormente la olvides sin agregar huellas dactilares al dispositivo, este se bloqueará efectivamente y tendrás que reprogramar el ATMega328p y forzar un borrado de la EEPROM para borrar el código.

Más información: instructables


Categorías

Arduino

Juan Luis Arboledas

Profesional de la informática muy interesado por el mundo de la robótica y el hardware en general desde muy temprana edad, algo que me ha llevado a... Ver perfil ›

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.