Toc Toc!!

Índice:


Introducción
Modo de uso
Componentes utilizados
Montaje del circuito
Código del proyecto
Dificultades encontradas
Posibles mejoras
Funcionamiento








Introducción



Nuestro proyecto consiste en un sistema controlado mediante Arduino que consigue la apertura de una cerradura utilizando una contraseña provocada por una secuencia de golpes en forma de ritmo.
Hemos implementado el sistema a una puerta, pero podría ser utilizado para múltiples usos como por ejemplo una caja fuerte. 
Tras muchas ideas diferentes, nos inspiramos en un proyecto de este mismo blog que se fijaba en la potencia de los golpes en vez de en el ritmo de ellos.



Modo de uso



El sistema capta los golpes y el tiempo que hay entre ellos, de ahí viene la percepción del “ritmo”, y tienes dos modos, el modo para introducir la contraseña y el de grabar una nueva contraseña.
En el primer modo, solo tenemos que reproducir la clave secreta. Si es la correcta, se encenderá el led verde y se abrirá la cerradura durante 5 segundos. Si introducimos una secuencia incorrecta, se encenderá el led rojo indicando que ha sido un intento fallido.
En el segundo modo, para grabar una nueva clave, debemos pulsar el botón ubicado en la parte de la puerta contraria al piezoeléctrico. A partir de ello, tenemos 10 segundos para introducir una secuencia nueva y válida, tras dos segundos del último golpe realizado se encenderá el led verde indicando que la contraseña es correcta y ha sido guardada. Si el que se enciende es el led rojo, esto indica que hemos cometido un error al introducirla, como por ejemplo realizar una secuencia de un solo golpe.



Componentes y materiales





Componente
Imagen
Precio
Arduino uno
https://lh5.googleusercontent.com/xq_zxOLcrVJmL0ElQp-utTeYNQOqhRripvLqcGHk3PtFaTvhOKuhdqSOg5X0O_hjC0eSAgoExzRjTxOlf2NaMyz0thgYPh49sSyBU3PTLfmQtU6G23Nk4f-uKWnaOiHey467MjTiA2I
9.99
Servomotor
https://lh5.googleusercontent.com/wFRQAKC7Ih9-PckGDxL_qnwlP3kNvD8E_xGIocwfV_A2RV3sGsdKrfiEVdw5MrAEiACUeVHAIBMPQ7Y0RcsWvZ0YhUdJ58Dc_Dpoqn9wvFkWVCKWgFbxlyTsHLhvC5V0ykqSVchWBuk
7.89
Sensor piezoeléctrico
https://lh6.googleusercontent.com/2q27h-dp7sXquhmADmr2g7U0rrKXvq2Mhe9oKC4KrhhRxLdQadz-JJ5QzQQtG2tMCyBMEi2nGCUVLL7aqpELaKninMN5uBHqgf7I6FiJ1yIMFHsQWeOa8IodmbYyGDd6OnqqxW4VAK0
0.99
Leds
https://lh5.googleusercontent.com/0yabAEJZ8oOcSV2218usTy2abOSeUkodLjMRaA2G4Df0prc4QGUimMR2R0mV5dKk-WsEOrYVypwz4VC8i39i9wIKlJ4_-VFQyTHo-0XlAhwAdrjLALxt8nIp5BYF04G96DwVECniSKM
0
Pulsador
Resultado de imagen de pulsador arduino
0.99
Batería 9V
https://lh5.googleusercontent.com/kenyFlJgw8EJCk9VQrz7fR-D0NLsgcqR5n5Z1d_IhTakxs6K-qBDTSrMH71vqHAS5MafOyemICKdyztEwsRxiwD1YTd9ciA7U3Zpnk-HK9CSFT3Jg32sU9H7-I-EUtcsGS1DhtMvZ2o
1
Batería 4.5V
Resultado de imagen de pila 4.5 v
1
Paneles de contrachapado
C:UsersalvarAppDataLocalMicrosoftWindowsINetCacheContent.MSO8268B86B.tmp
20
Listones de madera
C:UsersalvarAppDataLocalMicrosoftWindowsINetCacheContent.MSOADE998B1.tmp
11
Pintura
C:UsersalvarAppDataLocalMicrosoftWindowsINetCacheContent.MSOFE6CEE7.tmp
0
Total
52.86

Sobre el servomotor, cabe mencionar que lo ideal para realizar nuestro proyecto era utilizar un solenoide, el cual, mediante electromagnetismo controla el mecanismo de apertura en puertas electrónicas convencionales.
Como disponíamos de un servomotor, con el fin de recortar el presupuesto final, ideamos un sistema para abrir y cerrar la puerta con el servomotor. Es un sistema algo rudimentario, pero al funcionar correctamente nos sirve para esta maqueta de una puerta.
Montaje del circuito

https://lh3.googleusercontent.com/OiwKVsW7k9QJKdi_SVfZvUiEuNpaUNYldbiwftn5C0NbN24MUooa5xOUX1RLrH4sK_vRFDXHgV52Ef-CKw2g4xClpPCgA-MYqaQCE240VTJWTf4OnQG9X7J5CeV0NO3KF6qlOK2at3U





Código del proyecto

Sobre el código vamos a ver las cosas más importantes que hemos utilizado. Entre ellas, se encuentra la función millis, la cual ya viene integrada en el lenguaje de arduino y nos permite medir tiempo entre dos sucesos en ms.
En la primera imagen hemos asociado los componentes a sus determinados pines. Más abajo tenemos el setup, en el que iniciamos el programa encendiendo los dos
leds y cargando la secuencia que se encuentra en la memoria, si es que ya habíamos grabado alguna anteriormente.
Las otras dos imágenes son parte del loop. En la primera tenemos el modo de grabación, cuando pulsamos el botón que se encuentra en la parte posterior de la puerta. Por último, en la segunda imagen se encuentra el modo de lectura.
El código completo se encuentra en el siguiente enlace:

https://lh6.googleusercontent.com/rL1vKMF33jH51ojqk3pD3F_K_Vbk5C_pjjABZSubEUzXrzASF1E1LrJVSlaF299giJme6OdzbrO6gk3FgGHHZNVFG1aagyCpa1hxdAEF2N1g3qZ4Xmw5aDL__DA8PX8xjN5QyV1QCm0
Imagen 1

https://lh4.googleusercontent.com/uOd_gHxdEwMMupU-JwpjHNEf2Ak_ZFRDz-nZe3EVD0bmz0q60HZ6stg5KByXf2QqJJ5WxxOaqsAeTY3aw-6IclnSoa0BXgJAu5RRvnEE4d0T1foXSAQqgKjBUu_4pn6I3iNC5MtRAR0
Imagen 2

https://lh3.googleusercontent.com/5Qk1d92Up7BRijXFg6gJDk54pNc3_0882d7yh7y2_ANygqEmWy21b6v_anOWgn0T_g2sCofcEIEpz4tbgBVLxR1Po5FqkIPXXYHUCFjLc5_JPwY_ll-GpJNPGf3MekY3mUx19Q1H_9E
Imagen 3

Dificultades encontradas

Entre las dificultades que hemos encontrado, se encuentra la necesidad de crear un mecanismo de cierre sin utilizar un solenoide, debido a que el precio era demasiado alto y no queríamos aumentarlo en la medida de lo posible.
Otra de las dificultades que encontramos fue que los sensores de vibración que teníamos en un principio (similares al que observamos en la imagen) eran demasiado sensibles y una vez se golpeaba la puerta seguían detectando vibraciones por un tiempo. La solución fue cambiar estos sensores por un sensor piezoeléctrico, el cual no detecta vibraciones sino golpes.
Por otra parte, el servomotor creaba interferencias con los otros componentes del circuito y hacía que nuestro sensor se activara sin haber golpeado la puerta. La solución fue utilizar una fuente de alimentación alternativa para el servomotor.


Sensor de vibraciones


Posibles mejoras

Para mejorar el proyecto, lo primero sería cambiar el sistema de cerradura que creamos por un solenoide que proporcionaría más fiabilidad y menos consumo energético, además de evitar un ruido que genera el servomotor cuando está en funcionamiento.
Por último, para mejorarlo se podría implementar con una puerta de tamaño real, aunque se nos plantearían otros problemas, como utilizar fuentes de alimentación más duraderas.

Funcionamiento

Por último, vamos a ver la puerta en funcionamiento.
En el primer vídeo tenemos una demostración de lo que pasa cuando se introduce una secuencia correcta.
En el segundo, tenemos lo que ocurre cuando se introduce una secuencia incorrecta.




También te podría gustar...

Deja un comentario

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