In diesem Artikel zeige ich dir, wie du einen PIR-Bewegungssensor am Arduino anschließen und verwenden kannst. Als kleines Beispielprojekt zeige ich dir, wie du eine LED leuchten lassen kannst, wenn eine Bewegung erkannt wurde.
Inhalt
PIR ist eine Art von Bewegungsmeldern und ist eine Abkürzung für Passive InfraRed, also ein passiver Infrarotsensor. Dieser erkennt eine Änderung der Reflektion von den Infrarotwellen, die z.B. Lebewesen aussenden, die aber für den Menschen nicht sichtbar sind.
Was du dafür benötigst:
- einen Arduino
- ein Breadboard
- einen PIR Sensor
- GPIO Jumper Kabel
- ein USB Typ B Kabel (oder ein entsprechend anderes Kabel, was den Arduino mit deinem PC verbinden kann)
- (einen PC)
Für den Nachbau des Beispielprojektes brauchst du eventuell noch:
- eine LED
- einen passenden Vorwiderstand
Sensor anschließen
Der Sensor hat 3 GPIO Pins: VCC, Data und GND. Schließe nun VCC an 5V, Data an z.B. GPIO 8 oder GPIO 12 an und verbinde GND mit GND, wie in den Bildern unten zu sehen ist.
Damit ist der Sensor am Arduino angeschlossen und du kannst mit der Software fortfahren.
Software
Um den Sensor zu verwenden, brauchst du das passende Skript. Zum erstellen und Hochladen auf den Arduino empfehle ich dir die Arduino-IDE. Lade diese herunter und installiere sie. Erstelle jetzt ein neues Skript. Füge zum Testen folgenden Code ein:
int pirPin = 12;
void setup() {
Serial.begin(9600);
pinMode(pirPin, INPUT);
}
void loop() {
int s = digitalRead(pirPin);
Serial.print(s);
}
Code-Sprache: JavaScript (javascript)
Die Nummer des Pins (ganz oben) musst du selbstverständlich noch ändern, wenn du einen anderen verwendest also z.B. „int pirPin = 8;„. Öffne nun den Seriellen Monitor mit der Baudrate 9600.
Schließe jetzt den Arduino, mit dem angeschlossenen Sensor, an den PC an. Du kannst das Skript jetzt auf den Arduino hochladen.
Jetzt schreibt der serielle Monitor eine 1, wenn der Sensor Bewegung erkannt hat und eine 0, wenn er keine erkannt hat.
Beispielprojekt
Um das ein bisschen besser zu Visualisieren, kannst du eine LED an den Arduino anschließen, welche dann leuchten soll, wenn eine Bewegung erkannt wurde.
Schließe die LED dafür an einen freien GPIO Pin an, z.B. 8 oder 12.
Jetzt der Code:
int pirPin = 12;
int ledPin = 8;
void setup() {
Serial.begin(9600);
pinMode(pirPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
int s = digitalRead(pirPin);
digitalWrite(ledPin, s);
Serial.print(s);
}
Code-Sprache: JavaScript (javascript)
Ich hoffe, dass ich dir mit diesem Artikel weiterhelfen konnte. Schreibe gerne deine Projekte mit einem Bewegungsmelder in die Kommentare ;-).