RFID: Die innovative Lösung für dein Türschloss

RFID: Die innovative Lösung für dein Türschloss

Arduino, Dev. Boards, IoT / Smart Tech
22 Oktober 2020

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 Projekt

WARENKORB

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

das fertige RFID Projekt
Das fertige Projekt.

Schritt für Schritt: So realisierst du dein RFID-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.

Hier musst du die RFID Arduino Bibliothek in der Arduino IDE einfügen.
Hier musst du die RFID Arduino Bibliothek einfügen!

  • 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-ReaderArduino
3,3 VGND
RSTpin 9
GNDGND
IRQnicht angeschlossen
MISOpin 12
MOSIpin 11
SCKpin 13
SDApin 10
Verkabelung von RFID-Reader und Arduino
Micro ServoArduino
GND3,3 V
VCC (5 V)5 V
Signalpin 3
Verkabelung von Arduino und Türschlossservo

die LCD Verkabelung.

  • 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);
  }
}

Im seriellen Monitor kannst du die ID deines Transponders auslesen!
Im seriellen Monitor kannst du die ID deines Transponders auslesen!

  • 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();
  }
}

Hier musst die die ID deines Transponders eingeben!
Hier musst die die ID deines Transponders eingeben!

Das RFID Projekt in Action als gif

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!

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 5 / 5. Anzahl Bewertungen: 7

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Kommentare

  1. 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

    1. Also für außen Türen würde ich das nicht empfehlen da man das manipulieren kann und jemand so in deiner Wohnung kommt, und bei Eigenbau wird die Versicherung nicht haften. Wenn es hier um eine Tür innerhalb der Wohnung geht dann ok dann müsste man dieses mit ein elektronischen Türschloss verbinden gibt es ab ca. 25 €.

Hinterlasse ein Kommentar

XHTML: Sie können diese Tags verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>