Comment faire une alarme d’intrusion avec Raspberry Pi Pico

Les microcontrôleurs sont souvent utilisés dans les produits de sécurité commerciaux tels que les alarmes antivol. Ce dernier peut cependant être assez cher. Alors pourquoi ne pas créer une alarme maison à l'aide d'un microcontrôleur Raspberry Pi Pico à 4 $?

Celui-ci utilise un capteur PIR (infrarouge passif) – utilisé par de nombreux systèmes d'alarme commerciaux – pour détecter la présence d'un intrus. Il est idéal pour attraper quiconque se faufile dans votre chambre ou fouiner autour de votre bureau, ou pour protéger votre réserve de cookies. À l'aide de MicroPython, vous pouvez programmer votre alarme pour qu'elle réagisse avec une alerte sonore et une lumière clignotante.

1. Construire l'alarme

Pour créer l'alarme, vous aurez besoin d'une sélection de composants électroniques standard.

Ce dont vous aurez besoin:

  • Raspberry Pi Pico avec embases mâles soudées
  • Planche à pain
  • LED (n'importe quelle couleur)
  • Résistance de 330 ohms
  • Buzzer piézoélectrique actif
  • Capteur PIR HC-SR501
  • 4x fils de cavalier mâle à mâle (M2M)
  • 3x fils de liaison mâle-femelle (M2F)

Remarque: si vous n'avez pas envie de souder des en-têtes mâles sur votre Raspberry Pi Pico, il est possible d'acheter un Pico avec des en-têtes déjà attachés.

En relation: Un aperçu du Pico, la plus récente petite centrale électrique de Raspberry Pi

Avant de tout câbler, jetez un œil au dessous du Pico pour voir les étiquettes des broches.

Sur le dessus du Pico, vous pouvez également voir comment fonctionne la numérotation physique des broches, de 1 à 40, dans le sens inverse des aiguilles d'une montre à partir de la gauche du port micro-USB.

Sur la planche à pain, insérez les en-têtes mâles du Pico dans les trous à une extrémité. Poussez-le fermement pour assurer de bonnes connexions – il doit être bien ajusté. Ensuite, utilisez des fils de cavalier femelle-mâle pour y connecter le capteur PIR: la broche VCC doit être câblée au VBUS 5V de Pico, la sortie numérique à GP28 et GND à une broche GND (par exemple, la broche 3), comme indiqué dans le schéma de câblage ci-dessous.

Connectez l'un des rails de masse de la maquette (marqué par une ligne bleue) à une autre broche GND du Pico (par exemple, la broche physique 23, comme ici). Pour une lumière clignotante, insérez une LED dans la planche à pain, ses pieds de chaque côté de la division centrale.

Le pied le plus court (cathode) doit alors être connecté au même rail de mise à la terre. La jambe la plus longue (anode) de la LED doit être connectée à la broche GP15 via une résistance pour limiter la quantité de courant électrique qui la traverse, ce qui pourrait autrement endommager la LED ou le Pico.

Enfin, ajoutez un buzzer pour faire un bip sonore lorsque l'alarme se déclenche. Placez ses pattes de chaque côté de la division centrale de la planche à pain et connectez la patte la plus courte ou le fil noir au rail de masse et à la patte la plus longue (parfois marquée sur le dessus du buzzer avec «  + '') ou au fil rouge au GP14.

2. Programmation de l'alarme

Vous devrez installer MicroPython sur le Pico. Ce processus comprend quatre étapes simples:

  1. Téléchargez MicroPython pour Raspberry Pi Pico à partir du site Web de Raspberry Pi
  2. Connectez le Pico à votre ordinateur via sa prise micro-USB tout en maintenant le bouton BOOTSEL
  3. Attendez que le Pico apparaisse en tant que lecteur externe
  4. Faites glisser et déposez le fichier MicroPython .uf2 pour le copier sur le Pi Pico; il redémarrera automatiquement

Alors que de nombreux IDE de programmation (environnements de développement intégrés) sont disponibles pour MicroPython, nous allons ici utiliser Thonny. Il est déjà pré-installé dans le système d'exploitation Raspberry Pi (si vous utilisez un ordinateur Raspberry Pi connecté au Pico), ou peut être téléchargé pour n'importe quel système informatique à partir du site officiel en cliquant sur le lien dans le coin supérieur droit.

Téléchargement: Thonny (gratuit)

Avec votre Pico connecté à l'ordinateur, ouvrez Thonny. Dans le coin inférieur droit de la fenêtre Thonny, vous verrez la version de Python que vous utilisez actuellement. Cliquez dessus et sélectionnez MicroPython (Raspberry Pi Pico) .

Vous êtes maintenant prêt à programmer votre alarme d'intrusion sur le Pico. Ajoutez les lignes de code suivantes au volet 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)

Ici, importez les bibliothèques machine et utime en haut. Ensuite, configurez les objets pour le PIR, la LED et le buzzer – connectés respectivement aux broches GP28, GP15 et GP14.

Notez que le PIR est défini comme une entrée avec machine.Pin.IN , avec un paramètre machine.Pin.PULL-DOWN pour régler la résistance de sa broche Pico en mode pull-down; cela signifie qu'il sera lu comme zéro jusqu'à ce qu'un courant électrique lui soit envoyé à partir du PIR déclenché.

Connexes: Premiers pas avec MicroPython sur le Raspberry Pi Pico

En bas du code, une IRQ (demande d'interruption) est mise en place pour déclencher la fonction pir_handler dès qu'un signal est détecté sur la broche d'entrée (GP28) du capteur PIR.

Dans la fonction elle-même, pour éviter un déclenchement répété dans un court laps de temps, ajoutez un délai de 100 ms avant de vérifier à nouveau la valeur de la broche et, si elle est différente de zéro, de déclencher l'alarme. Il allume et éteint ensuite la LED et le buzzer pour faire clignoter la lumière et émettre un bip.

Enregistrez le programme sur votre Pico avec un nom approprié, tel que alarm.py . Exécutez le programme et, lorsque vous agitez votre main sur le capteur PIR, le buzzer doit émettre un bip et la LED clignote rapidement.

3. Réglage de la sensibilité du capteur

Si l'alarme se déclenche trop facilement, ou pas du tout, vous devrez peut-être ajuster la sensibilité du capteur PIR. Le HC-SR501 a deux vis en plastique – généralement étiquetées Sx et Tx – attachées à deux minuscules potentiomètres pour ajuster ses paramètres.

À l'aide d'un petit tournevis, vous pouvez tourner la vis Sx dans le sens inverse des aiguilles d'une montre pour augmenter sa sensibilité (ou vice versa). Tourner la vis Tx modifie la durée pendant laquelle le signal déclenché est envoyé après la détection d'intrus – nous avons trouvé préférable de la tourner complètement dans le sens antihoraire, pour le délai le plus court de 1 seconde.

Par défaut, le PIR détectera tout mouvement à 360 ° autour de lui. Si vous souhaitez limiter sa portée de détection, essayez de le placer au bas de la chambre à air en carton à partir d'un rouleau de papier toilette et de l'incliner dans la direction que vous souhaitez couvrir.

Créez votre propre alarme d'intrusion mobile

Une fois que votre alarme anti-intrusion fonctionne à votre satisfaction, vous voudrez peut-être l'éloigner de votre ordinateur. En enregistrant le programme sous le nom main.py , vous pouvez ensuite le déconnecter de l'ordinateur et connecter une banque d'alimentation mobile standard à son port micro-USB.

Le Pico exécutera alors automatiquement le programme main.py dès sa mise sous tension. Félicitations: vous disposez désormais d'une alarme anti-intrusion mobile à placer où vous le souhaitez.