Raspberry Pi - Türsensor
Der Türsensor ist eine häufige Komponente in Sicherheitssystemen. Er wird verwendet, um Eingänge wie Türen und Fenster zu erkennen und zu überwachen. Dieses Gerät wird auch als Kontaktsensor, Eingangssensor oder Fenstersensor bezeichnet.
Dieses Tutorial zeigt Ihnen, wie Sie Raspberry Pi mit dem Türsensor verwenden. Im Detail werden wir lernen:
- Wie man den Raspberry Pi mit dem Türsensor verbindet.
- Wie man den Raspberry Pi programmiert, um den Zustand des Türsensors zu lesen.
- Wie man den Raspberry Pi programmiert, um zu überprüfen, ob die Tür offen oder geschlossen ist.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über den Türsensor
Der Türsensor Pinout
Ein Türsensor besteht aus zwei Teilen:
- Ein Reed-Schalter mit zwei Pins
- Ein Magnet

Ähnlich wie bei einem typischen Schalter/Taste ist es nicht erforderlich, zwischen den beiden Pins des Reed-Schalters zu unterscheiden.
Wie es funktioniert
Der Magnet wird an der Tür/dem Fenster befestigt, welches das bewegliche Element ist, und der Reed-Schalter wird am Türrahmen angebracht, welcher das stationäre Element ist. Wenn die Tür geschlossen ist, sind die beiden Komponenten in Kontakt:
- Wenn der Magnet nahe am Reed-Schalter ist, ist der Reed-Schalter-Stromkreis geschlossen
- Wenn der Magnet vom Reed-Schalter entfernt ist, ist der Reed-Schalter-Stromkreis geöffnet

※ Notiz:
Der Reed-Schalter liefert keine LOW- oder HIGH-Werte an seinen Pins. Er ist entweder geschlossen oder geöffnet. Der Wert des mit dem Raspberry Pi verbundenen Pins kann LOW, HIGH oder ein schwebender (unvorhersagbarer) Wert sein. Um den schwebenden Wert zu verhindern, müssen wir einen Pull-up- oder Pull-down-Widerstand am Raspberry Pi Pin verwenden.
Wenn wir einen Pin des Reed-Schalters mit GND und den anderen Pin des Reed-Schalters mit einem Raspberry Pi Eingangspin mit einem Pull-up-Widerstand (intern oder extern) verbinden:
- Wenn der Magnet nahe am Reed-Schalter ist, ist der Wert am Raspberry Pi Eingangspin LOW
- Wenn der Magnet vom Reed-Schalter entfernt ist, ist der Wert am Raspberry Pi Eingangspin HIGH
Um den Status der Tür herauszufinden, müssen wir lediglich den Zustand des Raspberry Pi Eingangspins überprüfen:
- Wenn der Zustand LOW ist, ist die Tür geschlossen
- Wenn der Zustand HIGH ist, ist die Tür geöffnet
Um die Türöffnungs-/Türschließereignisse zu erkennen, können wir die Zustandsänderung am Raspberry Pi Eingangspin überwachen:
- Wenn der Zustand von LOW zu HIGH wechselt, wird das Türöffnungsereignis erkannt
- Wenn der Zustand von HIGH zu LOW wechselt, wird das Türschließereignis erkannt
Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Um Ihren Verdrahtungsaufbau zu vereinfachen und zu organisieren, empfehlen wir die Verwendung eines Schraubklemmenblock-Shields für Raspberry Pi. Dieses Shield gewährleistet sicherere und besser verwaltbare Verbindungen, wie unten gezeigt:

Programmierung für den Türsensor
- Initialisieren Sie den Raspberry Pi Pin als digitalen Eingangsmodus unter Verwendung der GPIO.setup() Funktion. Als Beispiel kann der folgende Code verwendet werden, um Pin 13 als Eingang zu initialisieren:
- Verwenden Sie die GPIO.input() Funktion, um den Status des Raspberry Pi Pins zu ermitteln.
Raspberry Pi Code - Tür offen und geschlossen Zustand prüfen
Schnelle Schritte
- Stellen Sie sicher, dass Sie Raspbian oder ein anderes Raspberry Pi-kompatibles Betriebssystem auf Ihrem Pi installiert haben.
- Stellen Sie sicher, dass Ihr Raspberry Pi mit demselben lokalen Netzwerk wie Ihr PC verbunden ist.
- Stellen Sie sicher, dass Ihr Raspberry Pi mit dem Internet verbunden ist, falls Sie Bibliotheken installieren müssen.
- Wenn Sie zum ersten Mal einen Raspberry Pi verwenden, lesen Sie wie man den Raspberry Pi einrichtet
- Verbinden Sie Ihren PC über SSH mit dem Raspberry Pi unter Verwendung des integrierten SSH-Clients auf Linux und macOS oder PuTTY auf Windows. Siehe wie Sie Ihren PC über SSH mit dem Raspberry Pi verbinden.
- Stellen Sie sicher, dass Sie die RPi.GPIO Bibliothek installiert haben. Falls nicht, installieren Sie sie mit folgendem Befehl:
- Erstellen Sie eine Python-Skriptdatei door_sensor.py und fügen Sie den folgenden Code hinzu:
- Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie den folgenden Befehl im Terminal eingeben:
- Bringen Sie den Magneten nahe an den Reed-Schalter und entfernen Sie ihn dann wieder.
- Überprüfen Sie das Ergebnis im Terminal.
Das Skript läuft in einer Endlosschleife kontinuierlich, bis Sie Ctrl + C im Terminal drücken.
Sie werden bemerken, dass der Code kontinuierlich den aktuellen Zustand der Tür ausgibt. Wenn Sie den Türzustand nur bei Änderungen ausgeben möchten, schauen Sie sich den nächsten Abschnitt an.
Raspberry Pi Code - Türöffnungs- und Türschließereignisse erkennen
- Erstellen Sie eine Python-Skriptdatei door_sensor_events.py und fügen Sie den folgenden Code hinzu:
- Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie den folgenden Befehl im Terminal eingeben:
- Bringen Sie den Magneten nahe an den Reed-Schalter und entfernen Sie ihn dann wieder.
- Überprüfen Sie das Ergebnis im Terminal.
- Sie werden sehen, dass der Zustand der Tür nur ausgegeben wird, wenn sich der Zustand ändert
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.