Toc Toc!!
Introducción
Modo de uso
Componentes utilizados
Montaje del circuito
Código del proyecto
Dificultades encontradas
Posibles mejoras
Funcionamiento
Introducción
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
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.
Componente |
Imagen |
Precio |
Arduino uno |
9.99 € |
|
Servomotor |
7.89 € |
|
Sensor piezoeléctrico |
0.99 € |
|
Leds |
0 € |
|
Pulsador |
0.99 € |
|
Batería 9V |
1 € |
|
Batería 4.5V |
1 € |
|
Paneles de contrachapado |
20 € |
|
Listones de madera |
11 € |
|
Pintura |
0 € |
|
Total |
52.86 € |
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:
Imagen 1 |
Imagen 2 |
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 |
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.
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.