¿Quieres detectar si alguien se aproxima a tu cuarto? ¿Ansioso por saber si alguien pasa por tu puerta? Este proyecto te enseñará a fabricar una alarma anti-intrusos para que escuches tu propia melodía cuando alguien la activa.
Este proyecto te permite escuchar una melodía en el momento en el que alguien ingresa a un lugar. El proyecto consiste en la comunicación entre un sensor de movimiento (PIR), una tarjeta Arduino Nano y un buzzer. El sensor PIR envía una señal a la tarjeta Arduino en el momento en el que detecta un movimiento frente a él. La tarjeta Arduino hace que el buzzer comience a sonar con la melodía que tú escojas hasta que el sensor detecte nuevamente que no hay movimiento.
Recuerda leer las consideraciones de seguridad antes de empezar cualquier proyecto: (leer)
Asegúrate de que tienes instalado el programa IDE de Arduino en tu computador. Si no sabes cómo hacerlo, puedes revisar el tutorial de instalación en el siguiente link, que te va explicar como hacerlo, paso a paso.
Abre el IDE de Arduino e inicia un proyecto nuevo. Copia y pega el siguiente código:
/************************************************* * Public Constants *************************************************/ #define NOTE_B0 31 #define NOTE_C1 33 #define NOTE_CS1 35 #define NOTE_D1 37 #define NOTE_DS1 39 #define NOTE_E1 41 #define NOTE_F1 44 #define NOTE_FS1 46 #define NOTE_G1 49 #define NOTE_GS1 52 #define NOTE_A1 55 #define NOTE_AS1 58 #define NOTE_B1 62 #define NOTE_C2 65 #define NOTE_CS2 69 #define NOTE_D2 73 #define NOTE_DS2 78 #define NOTE_E2 82 #define NOTE_F2 87 #define NOTE_FS2 93 #define NOTE_G2 98 #define NOTE_GS2 104 #define NOTE_A2 110 #define NOTE_AS2 117 #define NOTE_B2 123 #define NOTE_C3 131 #define NOTE_CS3 139 #define NOTE_D3 147 #define NOTE_DS3 156 #define NOTE_E3 165 #define NOTE_F3 175 #define NOTE_FS3 185 #define NOTE_G3 196 #define NOTE_GS3 208 #define NOTE_A3 220 #define NOTE_AS3 233 #define NOTE_B3 247 #define NOTE_C4 262 #define NOTE_CS4 277 #define NOTE_D4 294 #define NOTE_DS4 311 #define NOTE_E4 330 #define NOTE_F4 349 #define NOTE_FS4 370 #define NOTE_G4 392 #define NOTE_GS4 415 #define NOTE_A4 440 #define NOTE_AS4 466 #define NOTE_B4 494 #define NOTE_C5 523 #define NOTE_CS5 554 #define NOTE_D5 587 #define NOTE_DS5 622 #define NOTE_E5 659 #define NOTE_F5 698 #define NOTE_FS5 740 #define NOTE_G5 784 #define NOTE_GS5 831 #define NOTE_A5 880 #define NOTE_AS5 932 #define NOTE_B5 988 #define NOTE_C6 1047 #define NOTE_CS6 1109 #define NOTE_D6 1175 #define NOTE_DS6 1245 #define NOTE_E6 1319 #define NOTE_F6 1397 #define NOTE_FS6 1480 #define NOTE_G6 1568 #define NOTE_GS6 1661 #define NOTE_A6 1760 #define NOTE_AS6 1865 #define NOTE_B6 1976 #define NOTE_C7 2093 #define NOTE_CS7 2217 #define NOTE_D7 2349 #define NOTE_DS7 2489 #define NOTE_E7 2637 #define NOTE_F7 2794 #define NOTE_FS7 2960 #define NOTE_G7 3136 #define NOTE_GS7 3322 #define NOTE_A7 3520 #define NOTE_AS7 3729 #define NOTE_B7 3951 #define NOTE_C8 4186 #define NOTE_CS8 4435 #define NOTE_D8 4699 #define NOTE_DS8 4978 // notes in the melody: int melody[] = { NOTE_C7, NOTE_E7, NOTE_G7, NOTE_B6, NOTE_C7, NOTE_D7, NOTE_C7, NOTE_A7, NOTE_G7, NOTE_C8, NOTE_G7, NOTE_F7, NOTE_G7, NOTE_F7, NOTE_E7, NOTE_F7, NOTE_E7 }; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { 2, 4, 4, 3, 16, 16, 2, 2, 4, 4, 8, 16, 16, 8, 16, 16, 2 }; void setup() { pinMode(2, INPUT); pinMode(8, OUTPUT); } void loop() { int sensor = digitalRead(2); if(sensor == HIGH){ // no need to repeat the melody. // iterate over the notes of the melody: for (int thisNote = 0; thisNote < sizeof(melody)-1; thisNote++) { // to calculate the note duration, take one second // divided by the note type. //e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc. int noteDuration = 1000 / noteDurations[thisNote]; tone(8, melody[thisNote], noteDuration); // to distinguish the notes, set a minimum time between them. // the note's duration + 30% seems to work well: int pauseBetweenNotes = noteDuration * 1.30; delay(pauseBetweenNotes); // stop the tone playing: noTone(8); } } delay(500); }
Copiar todo
Este código utiliza el pin 2 de la tarjeta Arduino para leer la información del sensor PIR. Si el sensor detecta movimiento, la tarjeta Arduino manda una señal para que el buzzer empiece a sonar con la melodía que tú mismo vas a crear. El buzzer se apaga cuando el sensor PIR deja de detectar movimiento.
Compila el código y verifica que no haya errores de compilación. Si algún error aparece, asegúrate de copiar el código exactamente como aparece. Conecta tu tarjeta Arduino al computador con el cable USB y sube el código como se explica en el siguiente link.
Recuerda revisar en la consola del programa IDE de Arduino que no aparezcan errores. ¡Asegúrate de esto antes de avanzar en el proyecto!
El código que estás utilizando en este proyecto viene predeterminado con la melodía correspondiente a la Sonata Facile de W.A. Mozart. Sin embargo, puedes cambiar esta melodía siguiendo el Paso 2 de este proyecto. Si no deseas cambiar la melodía, sigue con el paso que se muestra a continuación.
En este paso te enseñaremos cómo poner tu melodía favorita para tu sistema de alarma anti-intrusos. Si quieres seguir con la melodía predeterminada, puedes saltarte este paso. En ese caso, la melodía que sonará será la Sonata Facile de W.A. Mozart.
Antes de cambiar la melodía es necesario que conozcas un poco sobre la forma en la que se compone la música. En general, todas las melodías y canciones pueden ser escritas en una partitura. Para empezar, es necesario que te familiarices con un pentagrama en clave de sol, como el que se muestra en la siguiente imagen:
El pentagrama consiste de 5 líneas y 5 espacios en los que se distribuyen las notas musicales. Estas notas pueden ser nombradas de la siguiente forma:
Empieza por buscar la partitura de la melodía que quieres que sea reproducida por tu buzzer. Por ejemplo, si quieres reproducir una melodía como “En una despensa” encontrarás una partitura como la siguiente:
Lo primero que debes detectar son el tipo de notas musicales que tiene tu partitura. En este caso, se encuentran notas negras, notas blancas y notas redondas. Los tiempos correspondientes a estas notas son 4, 2 y 1, correspondientemente. Para mayor información sobre el nombre de las notas y sus duraciones, te invitamos a consultar la siguiente tabla:
Para que te sea más fácil poner la melodía que escogiste en el código, anota en una hoja el orden de las notas de tu melodía con su respectiva duración. Para el ejemplo de “En una despensa”, este orden y duración es el siguiente:
C (4), D (4), E (4), F (4), G (2), G (2), C (4), D (4), E (4), F (4), G (1), C (4), D (4), E (4), F (4), G (1), G (1), G (4), F (4), E (4), D (4), C (1)
Una vez tengas claras las notas y las duraciones de las mismas en tu melodía, es hora de pasarlas al código. Para editar la melodía que trae por defecto tu código, es necesario que primero puedas ver el número de las líneas en el programa de computador IDE de Arduino. Esto te ayudará a encontrar más rápido la sección que debes editar. Para esto, abre la ventana del programa IDE de Arduino donde tienes el código correspondiente a este programa. Haz click en el menú de “File” y “Preferences” dentro del programa IDE de Arduino, como se muestra en la siguiente imagen:
Activa la opción de mostrar el número de líneas al seleccionar el recuadro que dice “Display line numbers” y presiona "OK".
Ahora busca cerca a las líneas número 97 y 102. Deberás encontrar la siguiente sección del código:
La línea (97) que dice “NOTE_C7, NOTE_E7,…” corresponde a la sucesión de las notas en tu melodía. Transcribe la melodía de forma que todas las notas estén contempladas. En la línea (102) que dice “2, 4, 4, …” transcribe los números que corresponden a la duración de las notas de tu melodía en el mismo orden que suceden.
Verifica que tengas el mismo número de notas y duraciones escritas en el código. De lo contrario, tendrás un error de compilación y tu proyecto no funcionará correctamente.
Compila el código y verifica que no haya errores de compilación. Si algún error aparece, asegúrate de copiar el código exactamente como aparece. Conecta tu tarjeta Arduino al computador con el cable USB y sube el código como se explica en el siguiente link.
Recuerda revisar en la consola del programa IDE de Arduino que no aparezcan errores. ¡Asegúrate de esto antes de avanzar en el proyecto!
Desconecta la tarjeta Arduino del computador y conecta los elementos como se muestra en la siguiente imagen. Asegúrate de verificar que todo esté bien conectado para evitar que tengas un accidente. Puedes hacer las conexiones con los colores que desees. Los cables jumpers vienen unidos en grupos de 10, pero puedes separarlos entre ellos para que la conexión sea más sencilla. No te asustes si te sobran cables jumpers, ya que algunas veces se incluyen repuestos.
Antes de seguir, revisa que las conexiones que hiciste correspondan a las siguientes:
Si ya verificaste que todo se encuentra en su lugar, es hora de probar que las conexiones funcionen correctamente.
Conecta el adaptador de 5V a tu tarjeta Arduino en el conector USB y conéctalo a un tomacorriente. Debes ver como una luz se ilumina en tu tarjeta Arduino. Pasa tu mano frente al sensor PIR. Si todo está funcionando, el buzzer debería comenzar a sonar. El siguiente video (tiene audio para explicar el efecto) te muestra el funcionamiento:
Para que pare de sonar, asegúrate de que todo se encuentre muy quieto. Si todo funciona como debería, estás listo para pasar al siguiente paso. Si tienes problemas haciendo que las conexiones de tu proyecto funcionen, consulta la siguiente sección de preguntas frecuentes para solucionar tu problema o contacta a nuestro soporte técnico con tu número de orden.
Si la luz de la tarjeta Arduino no se enciende, es posible que tengas un problema en la alimentación de la tarjeta Arduino. Verifica que el adaptador esté bien conectado tanto en el conector de la tarjeta Arduino como en el tomacorriente. Si esto no soluciona el problema, intenta conectando el tomacorriente a un enchufe distinto. Si tu tarjeta Arduino sigue sin encender, es posible que se haya dañado. Contáctanos con tu número de orden para ayudarte a solucionar tu problema.
Si tu buzzer no suena al pasar la mano frente al sensor PIR, es posible que tengas el buzzer mal conectado. Verifica que el pin positivo (+) del buzzer esté conectado al pin 8 de la tarjeta Arduino y que el pin negativo (-) del buzzer esté conectado a uno de los pines GND de la tarjeta Arduino. Si el buzzer se encuentra bien conectado, es posible que el sensor PIR no lo esté. Verifica que el pin de salida del sensor PIR se encuentre conectado al pin 2 de la tarjeta Arduino, el pin (+) al pin de 5V de la tarjeta Arduino y el pin negativo (-) a uno de los pines GND de la tarjeta Arduino. Si todo se encuentra bien conectado, es posible que la tolerancia del sensor PIR se encuentre muy baja, es decir, es posible que el sensor esté configurado para detectar movimiento únicamente cuando éste está muy cerca de él. Para aumentar la tolerancia, utiliza un destornillador para mover los tornillos de los componentes amarillos que puedes encontrar al respaldo del sensor. Asegúrate de mover los tornillos lentamente e ir verificando si el sensor PIR detecta el movimiento de tu mano al moverlos. Si tu proyecto sigue sin funcionar, contacta a nuestro soporte técnico con tu número de orden y te ayudaremos a solucionar tu problema.
Antes que nada, recuerda que el sensor de movimiento es bastante sensible, sin embargo, si el buzzer comienza a sonar con el movimiento de tu mano, o incluso sin que haya movimiento, y no deja de sonar cuando estás quieto, es posible que la sensibilidad del sensor PIR esté muy alta. Esto significa, que el sensor detecta movimientos tan pequeños, que no puede determinar que te encuentras quieto. Para modificar esto, utiliza un destornillador para mover los tornillos de los componentes amarillos que se encuentran al respaldo del sensor. Asegúrate de moverlos lentamente hasta que el buzzer se silencie en ausencia de movimiento. Si tu proyecto sigue sin funcionar, contacta a nuestro soporte técnico con tu número de orden y te ayudaremos a solucionar tu problema.
Asegúrate de que todo lo que se menciona en estos pasos funcione antes de seguir con el proyecto. Si tienes dudas o problemas, recuerda que puedes contactarnos en cualquier momento.
Ubica las piezas de madera MDF que vienen con tu kit de alarma anti intrusos. Éstas serán la carcasa de tu sistema. En este proyecto, utilizaremos pintura vinilo acrílico de color negro. Pinta sobre ambas caras de la madera MDF (te recomendamos hacer dos capas de pintura por cada cara) y déjalas hasta que estén completamente secas como se muestra en la siguiente imagen:
Para evitar que el sensor PIR se active por el movimiento de personas dentro y fuera de la habitación, es necesario hacer una caperuza que limite el rango del sensor. Comienza por cortar un trozo de cartón de 7 cm de largo y 2 cm de ancho como el que se muestra en la siguiente imagen (el ancho del cartón determina qué tan sensible es el sensor, entre más ancho sea, más limitado es el rango de detección).
Une los extremos del cartón para formar un cilindro y asegúrate de que éste es exactamente del tamaño del agujero más grande de la cara frontal. Adhiere el sensor PIR, la caperuza y el buzzer a la cara frontal hasta que quede similar a como se muestra en la siguiente imagen:
Verifica que las conexiones estén aún bien y que no haya ningún cable desconectado. Puedes utilizar un poco de cinta para organizar los cables de forma que no se enreden entre ellos.
Para armar tu estación meteorológica, debes unir las piezas haciendo uso de colbón para madera. Para esto, aplica un poco de colbón en las pestañas de las piezas que quieres unir como se muestra en la siguiente imagen:
Aplica colbón en ambas piezas y déjalas secar por 3 minutos. Une las piezas y aplica un poco de presión por 2 minutos. Deja secar las piezas para que queden bien unidas antes de pegar una pieza adicional. Después de poner todas las paredes, tendrás algo similar a lo que se muestra en la siguiente imagen:
Antes de cerrar tu caja, conecta el powerbank y verifica que tu sistema anti intrusos funcione correctamente. Si todo está en orden, puedes utilizar la última pieza para cerrar tu caja. Decora la caja utilizando pinturas de colores. En este proyecto, dibujamos una sirena y notas musicales como se muestra en la siguiente imagen:
Ahora, ubica el sistema en la pared que quieras usando cinta doble faz. Recuerda que el sensor de movimiento va a detectar en dirección lineal hacia el lado que está mirando.
Te recomendamos ponerlos cerca a tu puerta y cerca al piso para que detecte el movimiento de los pies entrando a la habitación. ¡Ahora sabrás cada vez que alguien ingresa a tu cuarto!
Ahora sabrás siempre que alguien entre en tu espacio.