Raspberry Pi Pico - Capteur de porte

Ce guide vous montre comment vérifier si votre porte ou votre fenêtre est ouverte ou fermée en utilisant un Raspberry Pi Pico et un capteur de porte. Nous apprendrons à configurer le capteur de porte, à le connecter au Raspberry Pi Pico et à programmer le Raspberry Pi Pico pour détecter l'état de la porte à partir du capteur.

Capteur de porte Raspberry Pi Pico

Préparation du matériel

1×Raspberry Pi Pico W
1×Raspberry Pi Pico Alternativement:
1×Câble Micro USB
1×Capteur de porte
1×Fils de connexion
1×Recommandé: Carte d'extension à bornier à vis pour Raspberry Pi Pico

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos du capteur de porte

Répartition des broches

Le capteur de porte est composé de deux composants.

  • Un interrupteur à lames avec deux connecteurs métalliques
  • Un aimant
Schéma de brochage du capteur de porte

Tout comme un interrupteur ou un bouton normal, nous n'avons pas à nous soucier des deux broches de l'interrupteur à lames.

Comment cela fonctionne

L'aimant est fixé sur la porte ou la fenêtre qui bouge, tandis que l'interrupteur à lames est fixé sur le cadre fixe de la porte. Lorsque la porte est fermée, ces deux éléments se rapprochent l'un de l'autre.

  • Lorsque l'aimant est proche de l'interrupteur à lames, le circuit de l'interrupteur à lames se referme.
  • Lorsque l'aimant est loin de l'interrupteur à lames, le circuit de l'interrupteur à lames s'ouvre.
Capteur de porte Comment cela fonctionne Schéma des broches

※ Note:

L'interrupteur à lames ne produit pas de signaux LOW ou HIGH par lui-même. Il ne peut être soit ouvert soit fermé. La manière dont nous le connectons au Raspberry Pi Pico détermine si la broche lit LOW, HIGH, ou reçoit une valeur flottante (qui n'est pas stable). Pour éviter cette valeur flottante instable, nous devrions connecter une résistance de pull-up ou de pull-down à la broche du Raspberry Pi Pico.

Connectez une broche de l'interrupteur à lames à la masse et l'autre broche à une entrée sur le Raspberry Pi Pico avec une résistance de pull-up. Cette résistance peut être intégrée ou ajoutée séparément.

  • Lorsque l'aimant est proche de l'interrupteur à lames, la broche d'entrée du Raspberry Pi Pico lit un niveau bas.
  • Lorsque l'aimant n'est pas proche de l'interrupteur à lames, la broche d'entrée du Raspberry Pi Pico lit un niveau haut.

Par ici:

  • Vérifiez si la porte est ouverte ou fermée en regardant la broche d'entrée du Raspberry Pi Pico:
    • Si la broche est LOW, la porte est fermée.
    • Si la broche est HIGH, la porte est ouverte.
  • Pour déterminer quand la porte s'ouvre ou se ferme, observez tout changement d'état de la broche d'entrée sur le Raspberry Pi Pico:
    • Un changement de LOW à HIGH indique que la porte est en train de s'ouvrir.
    • Un changement de HIGH à LOW indique que la porte est en train de se fermer.

Diagramme de câblage

Schéma de câblage du capteur de porte Raspberry Pi Pico

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Code Raspberry Pi Pico - Vérifier l'état d'ouverture et de fermeture de la porte

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/raspberry-pico/raspberry-pi-pico-door-sensor */ from machine import Pin import utime DOOR_SENSOR_PIN = 1 # The Raspberry Pi Pico pin connected to the door sensor (GP1) # Create a Pin object to handle the input from the door sensor # Input pull-up mode is activated by setting Pin.PULL_UP door_sensor = Pin(DOOR_SENSOR_PIN, Pin.IN, Pin.PULL_UP) while True: # Read the current state of the door sensor door_state = door_sensor.value() # Check if the door is open or closed based on the state if door_state == 1: print("The door is open") else: print("The door is closed") # Sleep for a short period to reduce output flooding utime.sleep(0.5)

Étapes rapides

Veuillez suivre ces instructions étape par étape :

  • Assurez-vous que Thonny IDE est installé sur votre ordinateur.
  • Assurez-vous que le firmware MicroPython est installé sur votre Raspberry Pi Pico.
  • Si c'est la première fois que vous utilisez un Raspberry Pi Pico, consultez le tutoriel Raspberry Pi Pico - Premiers pas. pour des instructions détaillées.
  • Connectez le Raspberry Pi Pico au capteur de porte selon le schéma fourni.
  • Connectez le Raspberry Pi Pico à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Thonny sur votre ordinateur.
  • Dans Thonny IDE, sélectionnez l'interpréteur MicroPython (Raspberry Pi Pico) en naviguant vers Outils Options.
  • Dans l'onglet Interpréteur, sélectionnez MicroPython (Raspberry Pi Pico) dans le menu déroulant.
  • Assurez-vous que le bon port est sélectionné. Thonny IDE devrait détecter automatiquement le port, mais vous devrez peut-être le sélectionner manuellement (par ex., COM3 sous Windows ou /dev/ttyACM0 sous Linux).
  • Copiez le code ci-dessus et collez-le dans l'éditeur de Thonny IDE.
  • Enregistrez le script sur votre Raspberry Pi Pico en:
    • Cliquez sur le bouton Enregistrer, ou utilisez les touches Ctrl+S.
    • Dans la boîte de dialogue d'enregistrement, vous verrez deux sections: Cet ordinateur et Raspberry Pi Pico. Sélectionnez Raspberry Pi Pico
    • Enregistrez le fichier sous main.py
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script. Le script va s'exécuter.
  • Déplacez l'aimant près de l'interrupteur à lames, puis retirez-le.
  • Vérifiez le message dans le Shell en bas de Thonny.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot The door is open The door is open The door is closed The door is closed The door is closed The door is closed The door is closed The door is open The door is open
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

Si vous nommez votre script main.py et que vous le sauvegardez dans le répertoire racine du Raspberry Pi Pico, il se lancera automatiquement à chaque mise sous tension ou réinitialisation du Pico. Cela est utile pour les applications autonomes qui doivent démarrer immédiatement après l'alimentation. Si vous nommez votre script sous un autre nom que main.py, vous devrez l'exécuter manuellement depuis le Shell de Thonnys.

Code pour Raspberry Pi Pico - Détecter les événements d'ouverture et de fermeture de porte

/* * Ce code Raspberry Pi Pico a été développé par newbiely.fr * Ce code Raspberry Pi Pico est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/raspberry-pico/raspberry-pi-pico-door-sensor */ from machine import Pin import utime DOOR_SENSOR_PIN = 1 # The Raspberry Pi Pico pin connected to the door sensor (GP1) # Set up the door sensor pin with input pull-up mode door_sensor = Pin(DOOR_SENSOR_PIN, Pin.IN, Pin.PULL_UP) # Read the initial state of the door sensor door_state = door_sensor.value() prev_door_state = door_state # Initialize previous state to the current state while True: # Update the previous state prev_door_state = door_state # Read the new state of the door sensor door_state = door_sensor.value() # Check for state change from LOW to HIGH (door opening) if prev_door_state == 0 and door_state == 1: print("The door opening is detected") # Add actions here such as turning on an alarm, light, or sending a notification # Check for state change from HIGH to LOW (door closing) elif prev_door_state == 1 and door_state == 0: print("The door closing is detected") # Add actions here such as turning off an alarm, light, or sending a notification # Sleep for a short period to debounce the sensor utime.sleep(0.1)
  • Copiez le code MicroPython fourni et collez-le dans l'éditeur de Thonny.
  • Enregistrez le code sur votre Raspberry Pi Pico.
  • Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script.
  • Maintenez un aimant près de l'interrupteur à lames, puis éloignez-le.
  • Consultez le message dans la console Shell située en bas de Thonny.
Shell x
>>> %Run -c $EDITOR_CONTENT
MPY: soft reboot The door closing is detected The door opening is detected
MicroPython (Raspberry Pi Pico) • Board CDC @ COM29 ≡

Vidéo

Tutoriels connexes

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !