Tutoriel Raspberry #13
Utilisation d'un capteur de mouvement HC-SR501


Mis à jour le : 28/07/2017


Capteur SR501 - Raspberry Pi Francais Une des utilisations courante du Raspberry Pi est la domotique. Qui dit domotique dit, allumage automatique des lumières, gestion d'une alarme, des volets ... Aujourd'hui, le capteur que nous allons utiliser avec le Raspberry est un capteur de mouvement / de présence : le HC-SR501. Ce capteur est un PIR (Passive Infrared Sensor), il utilise les variations infrarouges pour détecter une présence ou un mouvement.

I. Caractéristiques du capteur

- Alimentation : 4.5V à 20V DC
- Sortie : high 3.3V, low 0V
- Délai de sortie et sensibilité ajustable par potentiomètre
- Déclenchement avec ou sans répétition
- Portée de 7 m et angle de 120°

II. Prérequis

Pour utiliser ce capteur HC-SR501 avec un Raspberry, il faut :

- Un Raspberry Pi,
- Un capteur PIR HC-SR501,
- Des cables (3).

Une fois tous les éléments réunis, on peut passer au branchement.

III. Connexion du capteur au Raspberry

Le capteur HC-SR501 possède 3 pins :

- Le VCC (+5V);
- Le GND, (0V);
- L'output (qui renvoie une valeure TOR)

Le fait que la sortie soit une valeur tout ou rien permet de relier directement le capteur à un relai.

On branche le capteur au Raspberry comme ci-dessous :


Shéma de branchement d'un HC-SR501 sur Raspberry Pi 3
Shéma de branchement d'un HC-SR501 sur Raspberry Pi B rev 2

Attention

Attention, selon la version du capteur, l'ordre des pins peut varier. Ils peuvent être dans des ordres différents quand on les regarde face "globe vers nous". L'ordre peut être :

    > VCC - Out - GND
    ou
    > GND - Out - VCC

Pour savoir où est le VCC & le GND, il y a deux solutions :

    1. Soulever le "globe" en plastique qui est normalement juste clipsé puis regarder ce qui est marqué aux endroits de soudure des Pins (VCC, Out, GND)
    2. Sur toutes les versions se trouve, à l'arrière du capteur, un microcontrôleur. Le côté où se trouve le microcontrôleur est le côté ou se trouve le Pin GND.

IV. Programmation

Détecter un mouvement à l'aide de ce capteur et du Raspberry est très simple sachant que la sortie du capteur ne peut avoir que les valeurs 1 & 0. Voici le programme qui permet d'écrire "Mouvement détecté" dès qu'il y a du mouvement.


import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
capteur = 7

GPIO.setup(capteur, GPIO.IN)

print "Demarrage du capteur"
time.sleep(2)
print "Capteur pret a detecte un mouvement"

while True:
   if GPIO.input(capteur):
      print "Mouvement détecté"
      time.sleep(2)
   time.sleep(0.1)

Voilà, ce tutoriel est maintenant terminé, vous pouvez adapter le code à votre projet de domotique quel qu'il soit.


EspaceRaspberryFrançais

N'hésitez pas à aimer notre page Facebook en cliquant ci dessous !


Pour plus de soutien, une pièce nous permettrai d'acheter de nouveaux composants... et nous motiverai à proposer encore plus de contenu. Merci d'avance :)

Accéder à la page des donations !