Bau dir dein eigenes RFID Türschloss – Mit dieser Technologie kannst du dir das Herumschleppen deines schweren Schlüsselbundes sparen! RFID heißt die Lösung, die schwere Schlüssel überflüssig macht.
Egal ob bei der Erfassung von Arbeitszeiten, beim bargeldlosen Zahlen oder bei der Echtheitsprüfung von Medikamenten oder Banknoten: RFID (radio-frequency identification) hat sich in vielen Sektoren bewährt. Und auch zu Hause erweist sich die Technologie als praktisches Hilfsmittel – vor allem beim Thema Sicherheit: So sind mit RFID ausgestattete Türschlösser dazu in der Lage, Personen und Tiere zu identifizieren.
Das Funktionsprinzip der innovativen Technologie ist denkbar einfach: Mithilfe von elektromagnetischen Wellen werden über kurze Distanzen Daten übermittelt. Diese Datenübertragung geht mit einem Lesegerät – einem sogenannten Reader – vonstatten. Der Reader stellt ein elektromagnetisches Wechselfeld her, welches wiederum beim RFID-Transponder eine Reaktion hervorruft. Auf diese Weise nimmt der Transponder eine Hochfrequenz auf, durch die er mit Strom versorgt wird. Batterien sind somit nicht erforderlich.
Die Optik der RFID-Transponder kann indes stark variieren – je nachdem, welchem Zweck er dienen soll: Mal erinnert er an einen Schlüsselanhänger, mal kommt er im Scheckkartenformat daher. Er besteht aus einem winzigen Chip und einem aufgewickelten Kupferdraht, der die Funktion einer Antenne hat. Kein Zweifel: Einer der großen Vorzüge des Transponders ist seine Kompaktheit. Und das Beste ist: Mit einem Arduino, einem Reader und einigen weiteren Hilfsmitteln kannst du dein eigenes RFID-Türschloss ganz einfach selbst herstellen. Wir zeigen dir, wie es geht.
Diese Hardware benötigst du für das RFID Türschloss
- Arduino Uno, Mega oder Nano
- Jumper / Dupont Kabel Male-Male
- Breadboard
- RFID Lesegerät mit SPI Schnittstelle inkl. Karte & Dongle
- Micro Servo
- RFID Schlüsselanhänger
Alle für dieses Projekt notwendigen Artikel landen mit einem Klick auf den Button direkt in deinem Warenkorb, sofern sie in unserem Shop verfügbar sind. Kontrolliere daher deinen Warenkorb genau!
Diese Software benötigst du für das Projekt
- Arduino IDE
- RFID Arduino Bibliothek
- Servo-Bibliothek für Arduino
Schritt für Schritt: So realisierst du dein RFID-Türschloss-Projekt
- Als erstes installierst du die RFID Arduino Bibliothek. Diese findest du ganz leicht mithilfe von Arduino IDE: Nachdem du die Software geöffnet hast, klickst du auf „Sketch“, anschließend auf „Bibliothek einbinden“ und schließlich auf „Bibliotheken verwalten“. Wenn du nun nach „RFID“ suchst, findest du die erforderliche Bibliothek.
- Im zweiten Schritt installierst du die Servo-Bibliothek für Arduino. Hier kannst du die Library ganz einfach herunterladen. Beachte: Je nachdem, welches Betriebssystem du nutzt, solltest du eine entsprechende Vorgehensweise wählen. Im Falle von Windows öffnest du einfach den Link, klickst auf „Code“ und anschließend auf „Download ZIP“. Wenn du Linux nutzt, gibst du zunächst im Terminal „git clone https://github.com/arduino-libraries/Servo.git“ ein. Danach komprimierst du den Ordner „Servo-master“. Klicke nun in Arduino IDE auf „Sketch“, anschließend auf „Bibliothek einbinden“ und dann auf „ZIPBibliothek hinzufügen“. Zuletzt wählst du noch auf die Datei „Servo-master.zip“ aus.
- Als nächstes lädst du den Code auf deinen Arduino. Eine Schritt-für-Schritt-Videoanleitung, die dir detailliert erläutert, wie du hierbei vorzugehen hast, findest du hier.
- Nun geht es an die Schaltung: Verbinde deinen Arduino mit dem RFID-Lesegerät sowie mit dem Micro Servo. Die nachfolgende Übersicht hilft dir dabei, die Kabel an den jeweils richtigen Schnittstellen anzubringen:
RFID-Reader | Arduino |
3,3 V | GND |
RST | pin 9 |
GND | GND |
IRQ | nicht angeschlossen |
MISO | pin 12 |
MOSI | pin 11 |
SCK | pin 13 |
SDA | pin 10 |
Micro Servo | Arduino |
GND | 3,3 V |
VCC (5 V) | 5 V |
Signal | pin 3 |
- Im nächsten Schritt gilt es, die ID deines Transponders in dem später zu verwendenden Code einzugeben. Um herauszufinden, wie die ID lautet, musst du diese zunächst auslesen lassen. Zu diesem Zweck lädst du den folgenden Testcode auf deinen Arduino und öffnest den seriellen Monitor. Der Testcode lautet:
//https://www.blog.berrybase.de/
#include <SPI.h>
#include <RFID.h>
RFID rfid(10, 9); // SDA & RST PINS
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();
}
void loop()
{
if (rfid.isCard())
{
if (rfid.readCardSerial())
{
Serial.print("RFID-ID ist : ");
Serial.print(rfid.serNum[0]);
Serial.print(",");
Serial.print(rfid.serNum[1]);
Serial.print(",");
Serial.print(rfid.serNum[2]);
Serial.print(",");
Serial.print(rfid.serNum[3]);
Serial.print(",");
Serial.println(rfid.serNum[4]); // ID-Karte auf dem Serieller Monitor zeigen
}
rfid.halt();
delay(1000);
}
}
- Im nächsten Schritt gilt es, die ID deines Transponders in dem später zu verwendenden Code einzugeben. Um herauszufinden, wie die ID lautet, musst du diese zunächst auslesen lassen. Zu diesem Zweck lädst du den folgenden Testcode auf deinen Arduino und öffnest den seriellen Monitor. Du kannst den seriellen Monitor oben – rechts in der Arduino IDE öffnen. Der Testcode zum Auslesen der Transponder-ID lautet:
//https://www.blog.berrybase.de/
#include <SPI.h>
#include <RFID.h>
RFID rfid(10, 9); // SDA & RST PINS
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();
}
void loop()
{
if (rfid.isCard())
{
if (rfid.readCardSerial())
{
Serial.print("RFID-ID ist : ");
Serial.print(rfid.serNum[0]);
Serial.print(",");
Serial.print(rfid.serNum[1]);
Serial.print(",");
Serial.print(rfid.serNum[2]);
Serial.print(",");
Serial.print(rfid.serNum[3]);
Serial.print(",");
Serial.println(rfid.serNum[4]); // ID-Karte auf dem Serieller Monitor zeigen
}
rfid.halt();
delay(1000);
}
}
- Zuletzt lädst du den finalen Code auf deinen Arduino und gibst die ID deines RFID-Transponders ein. Der Code lautet folgendermaßen:
//https://www.blog.berrybase.de/
#include <Servo.h>
#include <SPI.h>
#include <RFID.h>
RFID rfid(10, 9); // SDA & RST PINS
byte karte[5] = {169,164,25,164,176}; // ID-Karte
Servo myservo;
boolean card;
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();
myservo.attach(3); // Servo Pin(3) --> Arduino
myservo.write(90); // Drehwinkel 90 Grad
}
void loop()
{
if (rfid.isCard())
{
if (rfid.readCardSerial())
{
Serial.print("RFID-ID ist : "); // ID-Karte auf dem Serieller Monitor anzeigen
Serial.print(rfid.serNum[0]);
Serial.print(",");
Serial.print(rfid.serNum[1]);
Serial.print(",");
Serial.print(rfid.serNum[2]);
Serial.print(",");
Serial.print(rfid.serNum[3]);
Serial.print(",");
Serial.println(rfid.serNum[4]);
}
for (int i = 1; i < 5; i++)
{
// ID-Karte überprüfen
if (rfid.serNum[0] == karte[0] && rfid.serNum[1] == karte[1] && rfid.serNum[2] == karte[2] && rfid.serNum[3] == karte[3] && rfid.serNum[4] == karte[4])
{
card = true;
}
else {
card = false;
}
}
if (card == true)
{
Serial.println("Richtige Karte");
myservo.write(20);
delay(3000);
myservo.write(100);
}
else
{
Serial.println("Falsche Karte");
}
rfid.halt();
}
}
Herzlichen Glückwunsch! Dein RFID-Türschloss ist fertig
Du hast alle Codes eingegeben? Super, dann hast du es fast geschafft! Um aus deinem neuen RFID-Schlosses praktischen Nutzen zu ziehen, musst du die Konstruktion jetzt nur noch montieren – zum Beispiel an der Haus- bzw. Wohnungstür. Viel Spaß mit deiner Konstruktion!
Alle verfügbaren Artikel für dieses Projekt findest du hier! Falls du Fragen hast schreibe uns diese doch als Kommentar!
Dein Wissensdurst ist noch lange nicht gestillt? Hier gehts zu unseren Arduino Tutorials!
Hallo wäre es auch möglich sowas an Maschinen zu installieren also mit einem Riegel. Der dann in den Notausschalter fährt damit die Maschine nicht mehr angeht.
Mfg