Cómo hacer una alarma de intrusión con Raspberry Pi Pico

Los microcontroladores se utilizan a menudo en productos de seguridad comerciales, como alarmas antirrobo. Sin embargo, este último puede ser bastante caro. Entonces, ¿por qué no crear una alarma casera con un microcontrolador Raspberry Pi Pico de $ 4?

Este usa un sensor PIR (infrarrojo pasivo), como lo usan muchos sistemas de alarma comerciales, para detectar la presencia de un intruso. Es ideal para atrapar a cualquiera que entre a hurtadillas en su habitación o husmee en su escritorio, o para proteger su alijo de galletas. Con MicroPython, puede programar su alarma para que reaccione con una alerta audible y una luz intermitente.

1. Construyendo la alarma

Para construir la alarma, necesitará una selección de componentes electrónicos estándar.

Lo que necesitarás:

  • Raspberry Pi Pico con cabezales de clavija macho soldados
  • Tablero de circuitos
  • LED (cualquier color)
  • Resistencia de 330 ohmios
  • Zumbador piezoeléctrico activo
  • Sensor PIR HC-SR501
  • 4 cables de puente macho a macho (M2M)
  • 3 cables de puente macho a hembra (M2F)

Nota: Si no le apetece soldar encabezados de clavija macho a su Raspberry Pi Pico, es posible comprar un Pico con los encabezados ya conectados.

Relacionado: Un vistazo al Pico, la pequeña potencia más nueva de Raspberry Pi

Antes de conectar todo, eche un vistazo a la parte inferior del Pico para ver las etiquetas de los pines.

En la parte superior del Pico, también puede ver cómo funciona la numeración de pines físicos, del 1 al 40, en sentido antihorario desde la izquierda del puerto micro-USB.

En la placa de pruebas, inserte los cabezales de clavija macho del Pico en los orificios de un extremo. Empuje hacia abajo con firmeza para asegurar buenas conexiones; debe encajar perfectamente. Luego use cables de puente hembra a macho para conectar el sensor PIR: el pin VCC debe estar conectado al VBUS de 5V de Pico, la SALIDA digital a GP28 y GND a un pin GND (por ejemplo, pin 3), como se muestra en la diagrama de cableado a continuación.

Conecte uno de los rieles de tierra de la placa de pruebas (marcado con una línea azul) a otro pin GND en Pico (por ejemplo, pin físico 23, como aquí). Para una luz intermitente, inserte un LED en la placa de pruebas, sus patas a ambos lados de la división central.

La pata más corta (cátodo) debe conectarse al mismo riel de tierra. La pata más larga (ánodo) del LED debe conectarse al pin GP15 a través de una resistencia para limitar la cantidad de corriente eléctrica que lo atraviesa, lo que de otro modo podría dañar el LED o el Pico.

Finalmente, agregue un timbre para hacer un pitido cuando suene la alarma. Coloque sus patas a cada lado de la división central de la placa de pruebas y conecte la pata más corta o el cable negro al riel de tierra y la pata más larga (a veces marcada en la parte superior del timbre con '+') o el cable rojo a GP14.

2. Programación de la alarma

Deberá instalar MicroPython en el Pico. Este proceso consta de cuatro sencillos pasos:

  1. Descargue MicroPython para Raspberry Pi Pico desde el sitio web de Raspberry Pi
  2. Conecte el Pico a su computadora a través de su toma micro-USB mientras mantiene presionado el botón BOOTSEL
  3. Espere a que el Pico aparezca como una unidad externa
  4. Arrastre y suelte el archivo .uf2 MicroPython para copiarlo en Pi Pico; se reiniciará automáticamente

Si bien numerosos IDE de programación (entornos de desarrollo integrados) están disponibles para MicroPython, aquí usaremos Thonny. Ya está preinstalado en el sistema operativo Raspberry Pi (si está utilizando una computadora Raspberry Pi conectada al Pico), o se puede descargar para cualquier sistema informático desde el sitio web oficial haciendo clic en el enlace en la esquina superior derecha.

Descargar: Thonny (gratis)

Con su Pico conectado a la computadora, abra Thonny. En la esquina inferior derecha de la ventana de Thonny, verá la versión de Python que está usando actualmente. Haga clic en él y seleccione MicroPython (Raspberry Pi Pico) .

Ahora está listo para programar su alarma contra intrusos en el Pico. Agregue las siguientes líneas de código al panel principal de Thonny.

 import machine
import utime
pir = machine.Pin(28, machine.Pin.IN, machine.Pin.PULL_DOWN)
led = machine.Pin(15, machine.Pin.OUT)
buzzer = machine.Pin(14, machine.Pin.OUT)
def pir_handler(pin):
utime.sleep_ms(100)
if pin.value():
print("Motion detected. Intruder alert!")
for i in range(50):
led.toggle()
buzzer.toggle()
utime.sleep_ms(100)
pir.irq(trigger=machine.Pin.IRQ_RISING, handler=pir_handler)

Aquí, importe las bibliotecas de máquina y utime en la parte superior. A continuación, configure los objetos para el PIR, el LED y el zumbador, conectados a los pines GP28, GP15 y GP14 respectivamente.

Tenga en cuenta que el PIR se establece como una entrada con machine.Pin.IN , con un parámetro machine.Pin.PULL-DOWN para configurar la resistencia de su pin Pico en modo pull-down; esto significa que se leerá como cero hasta que se le envíe una corriente eléctrica desde el PIR que se activa.

Relacionado: Introducción a MicroPython en Raspberry Pi Pico

En la parte inferior del código, se configura una IRQ (solicitud de interrupción) para activar la función pir_handler tan pronto como se detecta una señal en el pin de entrada (GP28) del sensor PIR.

En la función en sí, para evitar disparos repetidos en poco tiempo, agregue un retraso de 100 ms antes de verificar el valor del pin nuevamente y, si es distinto de cero, disparar la alarma. Luego enciende y apaga el LED y el zumbador para encender la luz y hacer un pitido.

Guarde el programa en su Pico con un nombre relevante, como alarm.py . Ejecute el programa y, cuando pase la mano sobre el sensor PIR, el zumbador debería sonar y el LED parpadeará rápidamente.

3. Ajuste de la sensibilidad del sensor

Si la alarma se activa con demasiada facilidad, o no se activa, es posible que deba ajustar la sensibilidad del sensor PIR. El HC-SR501 tiene dos tornillos de plástico, generalmente etiquetados como Sx y Tx, unidos a dos pequeños potenciómetros para ajustar su configuración.

Con un destornillador pequeño, puede girar el tornillo Sx en sentido antihorario para aumentar su sensibilidad (o viceversa). Girar el tornillo Tx altera la cantidad de tiempo que se envía la señal activada después de la detección de intrusos; nos pareció que era mejor girarlo completamente en sentido antihorario, para el retraso más corto de 1 segundo.

De forma predeterminada, el PIR detectará cualquier movimiento en los 360 ° a su alrededor. Si desea limitar su alcance de detección, intente colocarlo en la parte inferior del tubo interior de cartón de un rollo de papel higiénico e inclínelo en la dirección que desea cubrir.

Crea tu propia alarma de intrusión móvil

Una vez que su alarma contra intrusos esté funcionando a su satisfacción, es posible que desee alejarla de su computadora. Al guardar el programa como main.py , puede desconectarlo de la computadora y conectar un banco de energía móvil estándar a su puerto micro-USB.

El Pico ejecutará automáticamente el programa main.py tan pronto como se encienda. Felicitaciones: ahora tiene una alarma de intrusión móvil para colocar en cualquier lugar que desee.