Im nachfolgenden Artikel wird beschrieben, wie sich gängige 433 MHz Tür- und Fenstersensoren am Arduino mittels 433 MHz-Receiver auslesen lassen. Zudem werden noch andere Anwendungsfälle für diese Art von Sensoren als Anregung für eigene Projekte aufgezeigt.

 

1. Hardware

Folgende Komponenten werden zur Umsetzung benötigt:

  • 433 MHz Tür- und Fensterkontakt
  • 433 MHz Receiver (Empfehlenswert: Superheterodynempfänger, da die günstigen Modelle nur Signale von sehr nahen Fensterkontakte empfangen)
  • Arduino; hier: Arduino Uno (+ USB-Kabel, Jumper-Kabel, evtl. Breadboard)

Der Anschluss des 433 MHz Receivers am Arduino ist sehr simpel, da nur 3 Jumper-Kabel vom Receiver an die richtigen Buchsen im Arduino gesteckt werden müssen. Um den vorgestellten Sketch weiter unten direkt verwenden zu können, ist es empfehlenswert folgenden Aufbau zu übernehmen (für den Arduino Uno und kompatible Boards):433_Receiver_Arduino_Uno

In tabellarischer Form:

Arduino Uno 433 MHz Receiver
5V VCC
GND GND
Pin 2 Data

Am Fenstersensor muss lediglich die Batterie eingelegt werden, sodass die Hardwarevorbereitungen damit bereits abgeschlossen sind.

 

2. Software

Um nachfolgende Sketches verwenden zu können, muss die Bibliothek RCSwitch installiert sein. Wie zusätzliche Bibliotheken installiert werden, steht auf dieser Arduino-Seite.

Läuft die Bibliothek in eurer Arduino IDE, so könnt ihr nun folgenden Sketch auf euren Arduino übertragen, um die jeweiligen ID eures Sensor bzw. eurer Sensoren herauszufinden:

Wenn ihr nun den seriellen Monitor in der Arduino IDE öffnet und dann den Magnetteil eures Fensterkontakts von seiner Gegenstelle entfernt, solltet ihr derartige Meldungen erhalten:serial

Wichtig ist hierbei die Zahlenfolge nach „Received“, da diese die ID eures Senders darstellt. Notiert euch diese (bei mehreren Sendern am Besten direkt am jeweiligen Sender), da wir diese nachfolgend benötigen werden.

Um einen Sensor auszulesen und eine passende Meldung über die serielle Schnittstelle an den verbundenen PC zu senden, könnt ihr nachfolgenden Sketch verwenden:

Beachtet dabei, dass ihr statt „0000000“ euren vorhin ermittelten Code eintragt. Die Ausgabe der seriellen Schnittstelle bei Auslösen des Sensors sollte nun so aussehen:serial2Statt „Fenster 1“ könnt ihr natürlich auch andere Namen verwenden, um eure Sensoren zu identifizieren. Auch könnt ihr den Sketch für mehrere Sensoren erweitern, indem ihr die if-Abfrage mit dem Sensorcode um weitere „else if“s ergänzt mit den Codes der anderen Sensoren und individuellen Ausgaben über die serielle Schnittstelle.

 

3. Anwendungsfälle

Neben der klassischen Verwendung als Tür- und Fenstersensoren können die Reed-Kontakte mit Funkverbindung auch für andere Dinge eingesetzt werden. Als Beispiel denke ich da z.B. an einen Sensor für den Briefkasten, der euch informiert, wenn die Post da ist. Auch ein Einsatz an Gartentoren etc. ist denkbar, um zu erfassen, wann jemand das eigene Grundstück betritt.


Ich hoffe, ich konnte euch damit einen kleinen Überblick geben, wie ihr die Sensoren benutzen könnt und was ihr damit anstellen könnt.

Bei Fragen, Problemen und Anregungen könnt ihr natürlich wie immer das untenstehende Kommentarfeld verwenden.