Conexiones
programa para arduino
Dada la complejidad del programa se realizará en Arduinoblocks
Iniciamos creando una matriz patron donde almacenaremos la secuencia para abrir la puerta y otra golpes donde se irán almacenando la secuencia que se realice cuando se quiera abrir la puerta. Se compararán las dos matrices y si coinciden la puerta se abrirá.
La función grabar secuencia va almacenando la secuencia que queremos que sea nuestro patrón. Previamente borramos con clear patron el anterior e iniciamos la grabación con inicio patron. El patrón es una secuencia de 10 "golpes/no golpes" distanciados 200 ms cada uno. Una vez que se comienza a golpear cada 200 ms se carga un golpe o un silencio.
Las funciones inicio e inicio patron nos sirven para que el programa espere a que comencemos la secuencia de golpeo, que siempre debe iniciarse con el primer golpe.
La función loop (bucle) comienza una vez que hemos iniciado la secuencia de golpes para abrir la puerta. Cuando se ha completado la secuencia de 10 golpes/silencios cada 200 ms, La compara con el patrón. Si es correcta hacemos sonar un zumbador, abrimos una puerta, ... Si no es correcta no hace nada y vuelve a esperar otra secuencia de golpes.
Y borramos la matriz de golpes para que se vuelva a comenzar.
Las siguientes funciones sirven para borrar la matriz golpes (clear golpes) y la matriz patron (clear patron)
Para que podamos visualizar el patrón y tener un mayor control hemos creado la función imprimir, que imprime la secuencia de golpes que estamos haciendo y la función imprimir secuencia que imprime el patrón que hemos creado.
Por último la función comparar compara las dos matrices y si son iguales nos devuelve la variable abrir, que será 0 si no son iguales y 1 si son iguales.
No hay comentarios:
Publicar un comentario