- Erforderliche Komponenten
- Schaltplan für Raspberry Pi und PIR Sensor basierten Bewegungsmelder
- Python-Code für Raspberry Pi:
Sicherheitssysteme spielen eine wichtige Rolle in unserem täglichen Leben und dort finden wir viele verschiedene Arten von Sicherheitssystemen mit unterschiedlichen Technologien und Preisklassen. Als elektronischer Enthusiast können Sie ein einfaches Sicherheitssystem erstellen, indem Sie wenig Geld und etwas Freizeit ausgeben. Hier in diesem Artikel teile ich eine DIY-Anleitung, um einen einfachen, auf Himbeer-Pi und PIR-Sensor basierenden Bewegungsmelderalarm zu erstellen, der den Summer einschaltet, wenn der PIR-Sensor eine menschliche Bewegung in der Umgebung erkennt. In einem unserer vorherigen Artikel haben wir auch eine einfache, auf einem PIR-Sensor basierende Bewegungsmelderschaltung behandelt, in der wir die Funktionsweise des PIR-Sensors ausführlich behandelt haben.
Erforderliche Komponenten
- Raspberry Pi 3 (jedes Modell)
- PIR-Sensor
- Summer
- Steckbrett
- Kabel anschließen
Funktionsweise des PIR-Sensors
Der passive Infrarotsensor (PIR) wird als passiv bezeichnet, da er Infrarot empfängt und nicht sendet. Grundsätzlich erkennt es jede Änderung der Wärme, und wenn es eine Änderung erkennt, wird seine Ausgangs-PIN auf HIGH. Sie werden auch als pyroelektrische oder IR-Bewegungssensoren bezeichnet.
Hierbei ist zu beachten, dass jedes Objekt beim Erhitzen eine gewisse Menge Infrarot abgibt. Der Mensch sendet aufgrund der Körperwärme auch Infrarot aus. PIR-Sensoren können geringe Abweichungen im Infrarot erkennen. Wenn ein Objekt den Sensorbereich durchläuft, erzeugt es aufgrund der Reibung zwischen Luft und Objekt Infrarot und wird von PIR erfasst.
Die Hauptkomponente des PIR-Sensors ist der in der Abbildung gezeigte pyroelektrische Sensor (rechteckiger Kristall hinter der Kunststoffkappe). Zusammen mit diesem BISS0001 ("Micro Power PIR Motion Detector IC") werden einige Widerstände, Kondensatoren und andere Komponenten zum Aufbau des PIR-Sensors verwendet. Der BISS0001 IC nimmt den Eingang vom Sensor und verarbeitet ihn, um den Ausgangspin entsprechend auf HIGH oder LOW zu bringen.
Pyroelektrischer Sensor in zwei Hälften teilen, wenn keine Bewegung stattfindet, bleiben beide Hälften im gleichen Zustand, dh beide erfassen den gleichen Infrarotpegel. Sobald jemand in die erste Hälfte eintritt, wird der Infrarotpegel einer Hälfte größer als der der anderen, und dies führt dazu, dass PIRs reagieren und der Ausgangspin hoch wird.
Der pyroelektrische Sensor ist von einer Kunststoffkappe abgedeckt, in der sich viele Fresnellinsen befinden. Diese Linsen sind so gebogen, dass der Sensor einen weiten Bereich abdecken kann.
Schaltplan für Raspberry Pi und PIR Sensor basierten Bewegungsmelder
Wie im obigen schematischen Diagramm für einen auf Raspberry Pi und PIR-Sensor basierenden Bewegungsmelder gezeigt, ist der positive Pin des PIR-Sensors mit Pin 4 (5 V) und der Erdungsstift des PIR-Sensors mit Pin 6 (Masse) von Raspberry Pi (verbunden) verbunden Hier finden Sie das Pin-Diagramm von Raspberry Pi). Der Ausgangspin des PIR-Sensors ist mit dem GPIO 23 von Raspberry Pi verbunden, der zur Eingabe von Raspberry Pi verwendet wird. Der GPIO-Pin 24, der hier für den Ausgang deklariert ist, ist mit dem Plus des Summers verbunden, und die Masse des Summers ist mit der Masse (Pin 6) des Himbeer-Pi verbunden.
Python-Code für Raspberry Pi:
Der Python-Code für diesen auf Himbeer-Pi und PIR-Sensoren basierenden Bewegungsmelder ist recht einfach und kann anhand der Kommentare im folgenden Codeabschnitt leicht verstanden werden. Ich habe die GPIO-Pins 23 und 24 als Eingangs- und Ausgangspins deklariert.
während True: Wenn GPIO.input (23): #Wenn eine Bewegung vorliegt, gibt der PIR-Sensor eine Eingabe für GPIO23 GPIO.output (24, True) #Ausgabe an Buzzer über GPIO24 time.sleep (1) #Buzzer wird für eingeschaltet 1 Sekunde GPIO.output (24, False)
Eine 'while'- Schleife wird als' True 'verwendet, sodass der Inhalt innerhalb der Schleife immer ausgeführt wird. if GPIO.input (23): Die Anweisung erkennt, ob der GPIO-Pin 23 hoch ist, und wenn dies der Fall ist, wird die Ausgangs-PIN 24 hoch. Die Funktion time.sleep (secs) wird verwendet, um das Programm in Python für eine bestimmte Zeit anzuhalten, wobei 'secs' die Zeit in Sekunden ist. Hier haben wir es also für 1 Sekunde angehalten. In der nächsten Zeile haben wir die Ausgabe auf 24 als false gesetzt, sodass der Summer stoppt, bis die Schleife mit der nächsten Iteration beginnt, da die While- Schleife immer ohne Vorbedingung auf true gesetzt ist.