DIY Infrarot-Bewegungsmelder für Raspberry Pi – Schritt-für-Schritt-Anleitung
Hintergrund
Im Juli 2015 absolvierte ich ein Schulpraktikum an der Colorado State University, wo ich einen kurzreichweitigen Infrarot-Näherungssensor für den Raspberry Pi entwickelte. Der Sensor kann Linienfolger-Roboter, bewegungsaktivierte Kameras und mehr steuern.
Im Folgenden finden Sie eine vollständige Anleitung – von den Bauteilen bis zum Code – für den Bau eines zuverlässigen, kostengünstigen Infrarot-Bewegungsmelders.
Materialliste
- Raspberry Pi (beliebiges Modell mit GPIO)
- Einseitige gelochte Lochrasterplatine (beliebige Größe)
- 1× Breadboard (für Prototyping)
- Isolierte Jumper-Kabel (rot, schwarz, gelb)
- 1× IR-LED Emitter
- 1× IR-LED Empfänger (Phototransistor)
- 1× Standard-LED (beliebige Farbe) – visuelle Anzeige
- 1× 5 V Stromversorgung vom 5 V GPIO-Pin des Pi
- 1× LM358N9013 Dual-Operationsverstärker
- 1× 1 kΩ Trimmer-Potentiometer
- Widerstände: 39 Ω, 1 kΩ, 10 kΩ, 6,8 kΩ, 3,5 kΩ
- Optional: Isolierband, 3× Header-Pins, Female-Female Jumper-Kabel, Abisolierzange, Seitenschneider, Lötkolben, Lötzinn
Schritt 1 – Prototyp auf Breadboard
Dem Schaltplan (verlinkt unten) folgen und die Schaltung über den 5 V GPIO-Pin des Pi speisen. Der LM358 gibt eine Spannung aus, die über einen Spannungsteiler auf 3,3 V reduziert wird, damit sie innerhalb der GPIO-Eingangsgrenzen des Pi bleibt.
Nach dem Verdrahten das Breadboard per Female-Female Jumper-Kabel mit dem Pi verbinden. Leuchtet die LED nicht, den Potentiometer nach rechts drehen, bis die LED angeht. Geht sie sofort nach dem Einschalten an, den Regler nach links drehen, bis sie erlischt, dann vorsichtig wieder rechts drehen und stoppen, sobald die LED leuchtet.
Schritt 2 – Übertragung auf Lochrasterplatine
Sobald der Prototyp funktioniert, Bauteile auf die Lochrasterplatine löten. Klare „+“ und „–“ Seiten für die Stromversorgung einhalten. Jedes Bauteil fest verlöten und Jumper-Kabel für notwendige Verbindungen nutzen. Masse, Ausgang und Versorgung an die Header-Pins anschließen. Überstehende Drähte abschneiden, mit Multimeter testen und Durchgang prüfen.
Optional: IR-LED mit Isolierband umwickeln, um den Strahl zu bündeln und die effektive Reichweite zu erhöhen.
Schritt 3 – Pi programmieren
Das folgende C-Programm (benötigt WiringPi) löst die Pi-Kamera aus, wenn Bewegung erkannt wird. Das Skript fragt nach Dateiname und Verzögerung, dann macht es ein Foto.
#include <stdio.h>
#include <string.h>
#include <wiringPi.h>
#define SEN 0
#define MAXSIZE 50
#define A "Y"
#define B "O"
int main() {
wiringPiSetup();
pinMode(SEN, INPUT);
char answer1[MAXSIZE];
char answer2[MAXSIZE];
char name[MAXSIZE] = B;
char firstprefix[MAXSIZE] = "raspistill -hf -t ";
char secondprefix[MAXSIZE] = "xdg-open ";
printf("\nDo you want to name your picture first? (Enter Y/N and press ENTER): ");
scanf("%s", answer1);
if(strcmp(answer1, A) == 0){
printf("What do you want to call your video?: ");
scanf("%s", name);
strcat(name, ".jpg");
}
printf("How long do you wish the camera to wait before taking a picture? (Enter time in milliseconds and press ENTER): ");
scanf("%s", answer2);
strcat(firstprefix, answer2);
strcat(firstprefix, " -o ");
if(digitalRead(SEN) == LOW)
printf("\nCAMERA OFF\nError: Please check wiring OR move away from sensor.\n");
else {
printf("\nCAMERA ON\n1. To take picture, stand in front of camcorder.\n2. Your picture will be taken after the specified time.\n3. To view image, enter the command provided.\n\n");
for(;;){
if(digitalRead(SEN) == LOW){
system(strcat(firstprefix, name));
break;
}
}
}
strcat(secondprefix, name);
printf("Type *%s* and press ENTER to view your picture!\n", secondprefix);
return(0);
}
Für weitere Details besuchen Sie die ursprüngliche Projektseite: DIY Infrared Motion Sensor System for Raspberry Pi.
Herstellungsprozess
- Raspberry Pi Temperaturlogger mit 5 $ I2C Sensor bauen
- Raspberry Pi-gesteuertes Aquaponik-System: Bauanleitung & Code
- Fern-Temperatursensor mit Raspberry Pi & Python bauen – Schritt-für-Schritt-Anleitung
- Raspberry Pi Wetterstation bauen, die tägliche Wetterdaten per E-Mail sendet
- HC-SR04 Ultraschallsensor an Raspberry Pi 3 anschließen – Komplettanleitung
- SmartThings Bewegungssensor mit Computer Vision auf Raspberry Pi 3
- Sicheres Home Monitoring mit Home Assistant auf Raspberry Pi: Bewegung, Alarm & Video-Capture
- LED mit PIR-Bewegungsmelder am Raspberry Pi steuern
- Günstiger Raspberry Pi Bodenfeuchtesensor für smarte Bewässerung
- Linearen Hall-Sensor mit Raspberry Pi auslesen: Java-Anleitung & ADC0832 Einblicke