Arduino - Capteur PIR

Les capteurs PIR vous permettent de détecter le mouvement. Ils sont utilisés pour détecter si un humain s'est déplacé dans ou hors de la portée du capteur. On les trouve couramment dans les appareils et gadgets utilisés à la maison ou pour les entreprises. Ils sont souvent appelés capteurs PIR, «infrarouges passifs», «pyroélectriques» ou «IR».

Voici les avantages des capteurs PIR -

  • Petite taille
  • Large gamme d'objectifs
  • Interface facile
  • Inexpensive
  • Low-power
  • Facile à utiliser
  • Ne pas s'user

Les PIR sont constitués de capteurs pyroélectriques, une boîte métallique ronde avec un cristal rectangulaire au centre, qui peut détecter les niveaux de rayonnement infrarouge. Tout émet un rayonnement de faible niveau, et plus quelque chose est chaud, plus il émet de rayonnement. Le capteur d'un détecteur de mouvement est divisé en deux moitiés. Il s'agit de détecter un mouvement (changement) et non des niveaux IR moyens. Les deux moitiés sont connectées de manière à s'annuler. Si une moitié voit plus ou moins de rayonnement IR que l'autre, la sortie oscillera haut ou bas.

Les PIR ont des paramètres réglables et un en-tête est installé dans les pads de masse / sortie / alimentation à 3 broches.

Pour de nombreux projets ou produits de base qui doivent détecter lorsqu'une personne a quitté ou est entrée dans la zone, les capteurs PIR sont excellents. Notez que les PIR ne vous indiquent pas le nombre de personnes autour ou leur proximité avec le capteur. La lentille est souvent fixée à un certain balayage à distance et ils sont parfois déclenchés par les animaux domestiques de la maison.

Composants requis

Vous aurez besoin des composants suivants -

  • 1 × planche à pain
  • 1 × Arduino Uno R3
  • 1 × capteur PIR (MQ3)

Procédure

Suivez le schéma de circuit et effectuez les connexions comme indiqué dans l'image ci-dessous.

Esquisser

Ouvrez le logiciel Arduino IDE sur votre ordinateur. Le codage en langage Arduino contrôlera votre circuit. Ouvrez un nouveau fichier d'esquisse en cliquant sur Nouveau.

Code Arduino

#define pirPin 2
int calibrationTime = 30;
long unsigned int lowIn;
long unsigned int pause = 5000;
boolean lockLow = true;
boolean takeLowTime;
int PIRValue = 0;

void setup() {
   Serial.begin(9600);
   pinMode(pirPin, INPUT);
}

void loop() {
   PIRSensor();
}

void PIRSensor() {
   if(digitalRead(pirPin) == HIGH) {
      if(lockLow) {
         PIRValue = 1;
         lockLow = false;
         Serial.println("Motion detected.");
         delay(50);
      }
      takeLowTime = true;
   }
   if(digitalRead(pirPin) == LOW) {
      if(takeLowTime){
         lowIn = millis();takeLowTime = false;
      }
      if(!lockLow && millis() - lowIn > pause) {
         PIRValue = 0;
         lockLow = true;
         Serial.println("Motion ended.");
         delay(50);
      }
   }
}

Code à noter

Le capteur PIR a trois bornes - V cc , OUT et GND. Connectez le capteur comme suit -

  • Connectez le + V cc à + 5v sur la carte Arduino.
  • Connectez OUT à la broche numérique 2 sur la carte Arduino.
  • Connectez GND avec GND sur Arduino.

Vous pouvez régler la sensibilité du capteur et le temps de retard via deux résistances variables situées au bas de la carte du capteur.

Une fois que le capteur détecte un mouvement, Arduino enverra un message via le port série pour dire qu'un mouvement est détecté. Le mouvement de détection PIR retardera pendant un certain temps pour vérifier s'il y a un nouveau mouvement. S'il n'y a pas de mouvement détecté, Arduino enverra un nouveau message indiquant que le mouvement est terminé.

Résultat

Vous verrez un message sur votre port série si un mouvement est détecté et un autre message lorsque le mouvement s'arrête.