Maîtriser le GPIO Raspberry Pi : Interfacer un capteur PIR de mouvement sur B+/Modèle 2
Dans ce guide étape par étape, vous apprendrez à connecter un capteur de mouvement infrarouge passif (PIR) à un Raspberry Pi B+/Modèle 2 et à programmer les broches GPIO pour détecter le mouvement et déclencher des actions. Que vous construisiez un système domotique, une alarme de sécurité ou un simple robot, maîtriser le GPIO est essentiel.
Ce dont vous aurez besoin
- Raspberry Pi B+, B ou Modèle 2 avec carte microSD, alimentation, clavier, souris et écran.
- LED (toute couleur) et résistance 220 Ω.
- Capteur de mouvement PIR (sortie 5 V).
- Plaque d'essai et fils de connexion (mâle‑mâle et femelle‑mâle).
Fonctionnement du GPIO sur le Pi
Les broches GPIO du Pi sont accessibles via des bibliothèques Python comme RPi.GPIO. Chaque broche est numérotée soit par numéro de broche physique (BOARD) soit par numéro de broche Broadcom (BCM). Dans ce tutoriel, nous utiliserons la numérotation BOARD pour plus de clarté.
À propos du capteur PIR
Un capteur PIR détecte le rayonnement infrarouge émis par les corps chauds. Il comprend une lentille de Fresnel, un détecteur IR et un circuit de contrôle. Lorsqu'il perçoit un changement de niveau infrarouge, il sort un niveau logique HIGH 5 V pendant jusqu'à une minute. La portée de détection typique est de 6 à 7 m.
Étape 1 : Faire clignoter une LED avec une sortie GPIO
D'abord, pratiquez le contrôle d'une broche de sortie en faisant clignoter une LED. Connectez l'anode de la LED à la broche 3 via une résistance de 220 Ω, et la cathode à une broche de masse.
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(3, GPIO.OUT) # Broche 3 en sortie
while True:
GPIO.output(3, GPIO.HIGH)
time.sleep(1)
GPIO.output(3, GPIO.LOW)
time.sleep(1)
Enregistrez ceci sous ledblink.py et exécutez avec sudo python3 ledblink.py.
Étape 2 : Lire le capteur PIR et répondre
Câblez le capteur PIR : VCC sur 5 V, GND sur masse, et OUT sur la broche 7 (GPIO 4). Créez maintenant un script qui affiche un message quand du mouvement est détecté.
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.IN) # Sortie PIR en entrée
print('Prêt – en attente de mouvement…')
try:
while True:
if GPIO.input(7):
print('Intrus détecté !')
# Ajoutez votre action personnalisée ici (ex. : allumer LED, envoyer alerte)
time.sleep(0.5)
except KeyboardInterrupt:
print('Sortie…')
finally:
GPIO.cleanup()
Exécutez avec sudo python3 pir_detect.py et observez la console pendant que le capteur signale le mouvement.
Prochaines étapes
À partir de là, vous pouvez étendre le projet : faire clignoter une LED à la détection de mouvement, journaliser les horodatages dans un fichier, ou envoyer une notification via MQTT. Pour les débutants, nous recommandons de télécharger notre eBook gratuit sur Raspberry Pi et Arduino pour approfondir vos compétences matérielles.
Références
- Documentation officielle Raspberry Pi – Vue d'ensemble GPIO : raspberrypi.org
- Fiche technique capteur PIR – Spécifications typiques : Adafruit
Processus de fabrication
- Comment connecter un capteur de température DS1820 One‑Wire à un Raspberry Pi via GPIO
- Intégration de données de capteurs sur Raspberry Pi : Guide pratique complet
- Connexion du capteur ultrasonique HC‑SR04 au Raspberry Pi 3 : Guide complet
- Capteur de suivi de ligne KY‑033 avec Raspberry Pi : Détecteur de porte/lignes simple
- Surveillance domestique sécurisée avec Home Assistant sur Raspberry Pi : Mouvement, Alarme et Capture Vidéo
- Construire un capteur de mouvement infrarouge DIY pour Raspberry Pi – Guide étape par étape
- Contrôler une LED avec un capteur de mouvement PIR sur Raspberry Pi
- Capteur de proximité infrarouge low-cost pour Raspberry Pi utilisant uniquement les broches numériques
- Construire un compteur Geiger Raspberry Pi – Tutoriel capteur radiations open-hardware