Ligne 1 : |
Ligne 1 : |
| == Introduction == | | == Introduction == |
− | Les senseurs PIR sont utilisés par les robots/animaux humanoides pour effectuer la détection de mouvement. La distance de détection peut aller jusqu'à 6 à 7 mètres. | + | Les senseurs PIR sont utilisés par les robots/animaux humanoïdes pour effectuer la détection de mouvement. La distance de détection peut aller jusqu'à 6 à 7 mètres. |
| Le senseur PIR est typiquement le type de technologie utilisée pour la détection de mouvement mis en oeuvre dans les systèmes d'alarme. | | Le senseur PIR est typiquement le type de technologie utilisée pour la détection de mouvement mis en oeuvre dans les systèmes d'alarme. |
| + | |
| + | {{ADFImage|PIRSensor.jpg}} |
| | | |
| Les applications d'un senseur PIR sont multiples: | | Les applications d'un senseur PIR sont multiples: |
Ligne 11 : |
Ligne 13 : |
| == Montage == | | == Montage == |
| | | |
− | Connecting PIR sensors to a microcontroller is really simple. The PIR acts as a digital output so all you need to do is listen for the pin to flip high (detected) or low (not detected).
| + | Il est vraiment facile de connecter un senseur PIR sur un microcontrôleur. Le PIR dispose d'une sortie digitale (ON/OFF HIGH/LOW), il suffit donc d'écouter la sortie digitale à l'aide d'une entrée du microcontrôleur. Il suffit détecter la montée du potentiel vers HIGH (détection du PIR) ou descente du potentiel vers LOW (non détection du PIR). |
| | | |
− | Its likely that you'll want reriggering, so be sure to put the jumper in the H position!
| + | Il est fort probable que vous désiriez des re-déclenchement. Dans ce cas, assurez vous que le cavalier est en position H! |
| | | |
− | Power the PIR with 5V and connect ground to ground. Then connect the output to a digital pin. In this example we'll use pin 2.
| + | Alimentez le PIR à l'aide de 5 Volts et connectez "Ground" à la masse (0v). Ensuite, connectez la sortie sur une entrée digitale de votre microcontrôleur. |
| | | |
− | [[Fichier:PirSensorArduino.jpg]]
| + | Dans cet exemple, nous employons la pin 2 comme entrée digitale pour la sortie du détecteur PIR. |
| + | |
| + | {{ADFImage|PirSensorArduino.jpg}} |
| | | |
| == Code == | | == Code == |
− | The code is very simple, and is basically just keeps track of whether the input to pin 2 is high or low. It also tracks the state of the pin, so that it prints out a message when motion has started and stopped.
| + | Le code est assez simple, il ne fait que surveiller l'état Haut/Bas (HIGH/LOW) de la Pin 2. |
| + | |
| + | Il surveille également '''le changement d'état''' de la Pin 2, ce qui permet d'afficher un message quand un déplacement est détecter (lorsqu'il commence) et lorsque le mouvement à cessé. |
| | | |
| <nowiki> | | <nowiki> |
| /* | | /* |
− | * PIR sensor tester | + | * Test du senseur PIR |
| */ | | */ |
| | | |
− | int ledPin = 13; // choose the pin for the LED | + | int ledPin = 13; // Pin choisie à cause de sa LED (visible sur la carte) |
− | int inputPin = 2; // choose the input pin (for PIR sensor) | + | int inputPin = 2; // Pin d'entrée choisie pour surveillé le senseur PIR |
− | int pirState = LOW; // we start, assuming no motion detected | + | int pirMotionState = LOW; // Pour commencer, nous considérons qu'il n'y a pas de nouvement. |
− | int val = 0; // variable for reading the pin status | + | int val = 0; // Variable utilisée pour lire l'entrée Pin 2 (valeur du PIR) |
| | | |
| void setup() { | | void setup() { |
− | pinMode(ledPin, OUTPUT); // declare LED as output | + | pinMode(ledPin, OUTPUT); // déclarer LED comme sortie |
− | pinMode(inputPin, INPUT); // declare sensor as input | + | pinMode(inputPin, INPUT); // déclarer le Senseur comme entrée |
| | | |
| Serial.begin(9600); | | Serial.begin(9600); |
Ligne 40 : |
Ligne 46 : |
| | | |
| void loop(){ | | void loop(){ |
− | val = digitalRead(inputPin); // read input value | + | val = digitalRead(inputPin); // Lire la valeur d'entrée |
− | if (val == HIGH) { // check if the input is HIGH | + | if (val == HIGH) { // Vérifier si l'entrée est HIGH |
− | digitalWrite(ledPin, HIGH); // turn LED ON | + | digitalWrite(ledPin, HIGH); // Allumer la LED (activité PIR) |
− | if (pirState == LOW) { | + | if (pirMotionState == LOW) { |
− | // we have just turned on | + | // Si l'état du PIR est LOW, comme nous venons de détecter un mouvement |
− | Serial.println("Motion detected!"); | + | // nous changeons l'état pirMotionState à HIGH (mouvement détecté) |
− | // We only want to print on the output change, not state | + | Serial.println("Mouvement détecté!"); |
− | pirState = HIGH; | + | // Nous affichons le message seulement quand la sortie change |
| + | pirMotionState = HIGH; |
| } | | } |
| } else { | | } else { |
− | digitalWrite(ledPin, LOW); // turn LED OFF | + | digitalWrite(ledPin, LOW); // Eteindre la LED (plus d'activité PIR) |
− | if (pirState == HIGH){ | + | if (pirMotionState == HIGH){ |
− | // we have just turned of | + | // Si l'état PIR est HIGH (mouvement détecté) et que la sortie du PIR |
− | Serial.println("Motion ended!"); | + | // passe à LOW, c'est que le mouvement à cessé! |
− | // We only want to print on the output change, not state | + | Serial.println("Mouvement terminé!"); |
− | pirState = LOW; | + | // Nous affichons le message que pour le changement d'état (détection mouvement) |
| + | pirMotionState = LOW; |
| } | | } |
| } | | } |
Ligne 62 : |
Ligne 70 : |
| | | |
| == Notes == | | == Notes == |
− | Don't forget that there are some times when you don't need a microcontroller. A PIR sensor can be connected to a relay (perhaps with a transistor buffer) without a micro!
| + | Il y a des montages ou l'utilisation d'un microcontroleur n'est pas forcement nécessaire. Vous pouvez connecter un relais (par l'intermédiaire d'un transistor) pour commander directement un montage sans l'intervention d'élément programmable. |
| | | |
| == Où Acheter == | | == Où Acheter == |
| + | Vous pouvez vous procurer {{pl|61|le Senseur PIR sur le WebShop de MCHobby}}. |
| + | |
| + | <hr /> |
| + | <small>Source: [http://learn.adafruit.com PIR Sensor], Crédit: [http://www.adafruit.com AdaFruit Industries]. |
| + | |
| + | Traduit par Meurisse D pour [http://www.mchobby.be MCHobby]. |
| | | |
| {{ADF-Accord}} | | {{ADF-Accord}} |
| | | |
− | {MCH-Accord}} | + | {{MCH-Accord}} |