Arduino Starterkit - RFID Anleitung

Einleitung

RIFD (engl. radio-frequency identification) ist eine Technologie die elektromagnetische Wellen nutzt um Daten über kurze Distanzen zu übertragen. RFID ist besonders nützlich zur Identifikation von Personen und Tieren, bargeldlosen Bezahlung oder als Zutrittskontrolle.

Die Übertragung der Daten erfolgt über ein Lesegerät (Reader) welches ein elektromagnetisches Wechselfeld erzeugt auf das der RFID-Transponder (RFID-Tag/Karte) reagiert. Die vom RFID-Tag aufgenomme Hochfrequenz dient während der Kommunikation als Stromversorgung, wodurch die RFID-Transponder keine Batterien benötigen.

Die RFID-Transponder bestehen aus einem kleinen Chip und einem aufgewickelten Kupferdraht der als Antenne dient. Sie sind in verschiedenen Varianten erhältlich, zb. als Schlüsselanhänger oder im Kreditkartenformat.

MFRC522 RFID-Modul

Das MFRC522 Modul ist ein RFID Reader/Writer für kontaktlose Kommunikation mit 13.56Mhz. Die interne Antenne ist auslegt um ISO/IEC 14443A/MIFARE Transponder zu lesen und beschreiben. Die Schaltung auf dem Modul demoduliert und entschlüsselt die empfangenen Daten und ist in der Lage die Daten auf Parität und Fehler zu prüfen.

Beim MFRC522 Modul sind 2 verschiedene Stiftleisten enthalten, zur Verwendung auf einem Breadboard sollte man die gewinkelte Stiftleiste anlöten.

Auslesen von RFID-Tags mit dem MFRC522 RFID-Reader und einem Arduino

Für dieses Projekt basiererend auf unserem Arduino Starterkit benötigen wir folgende Komponenten: 

Beim MFRC522 Modul sind 2 verschiedene Stiftleisten enthalten, zur Verwendung auf einem Breadboard sollte man die gewinkelten Stiftleiste anlöten.

Die Verkabelung mit dem Arduino Uno sieht wie folgt aus:

RFID ModulArduino Uno
SDA Pin 10
SCK Pin 13
MOSI Pin 11
MISO Pin 12
GND GND Pin
RST Pin 9
3.3V 3.3V Pin
IRQ nicht angeschlossen

Achtung, das Modul muss mit 3,3V betrieben werden! Bei verwendung mit einem 5V Board wird ein Pegelwandler benötigt!

Zur Programmierung des Arduinos empfiehlt sich diese RFID-Bibliothek, welche auch in der offiziellen Arduino IDE zu finden ist. Einfach in der Bibliothekenverwaltung nach "RFID" suchen:

bibliotheken-verwalten2 rfid-bibliothek3

Die Bibliothek enthält gute Beispiel-Sketches für grundlegende RFID-Funktionen.

Daher laden wir den „DumpInfo“-Beispielsketch auf unser Arduino um die einzigartige Identifikationsnummer (UID) des RFID-Tags herauszufinden. Den Sketch gibt es hier nochmal mit deutschen Kommentaren versehen um die einzelnen Zeilen zu verstehen.

Download Sketch 1

Anschließend öffnen wir den seriellen Monitor und halten ein RFID-Transponder an den RFID-Reader bis die Daten übertragen wurden. Wurde der Transponder erfolgreich ausgelesen, bekommen wir UID, Typ, Datenblöcke, Sektoren, ect. angezeigt.

RFID-Tag

 

Weiteres Beispiel: Eine LED aufleuchten lassen!

Nachdem wir nun die UID unseres RFID-Transponders kennen, können wir diese nutzen um verschiedenste Funktionen zu programmieren. So zeigen wir im nächsten Beispiel wie man eine LED aufleuchten lässt sobald der richtige RFID-Tag erkannt wird. Diesen Sketch kann man auch einfach verändern um z. B. ein Relais anstelle einer LED zu schalten.

Download Sketch 2

Die Anschlussbelegung ist wie im ersten Sketch, nur mit einer zusätzlichen LED an Pin 2.

RFID_LED_Steckplatine-_resize

Um den Sketch mit Eurem RFID-Tag verwenden zu können muss lediglich eine Zeile angepasst werden:

if (rfid == "34 22 EC E2") // Wenn die richtige Karte erkannt wurde...

Hier wird einfach die vorher ausgelesene Card UID eingetragen.

projekt-09

 
 
Schlagworte: Arduino, Anleitung, Starter Kit

Die mit einem * markierten Felder sind Pflichtfelder.

  • Schepp

    Hallo zusammen,
    hatte mir vor einiger Zeit dieses Starterkit mal bestellt. Jetzt, mit etwas mehr Muse, stoße ich auf diesen interessanten Beitrag.
    Was mir nicht ganz einleuchtet ist, warum ist sowohl die I²C-, als auch die SPI- Schnittstelle am Arduino angeschlossen? -Und um es noch einfacher zu machen, könnte man gleich die auf dem Arduino- Board vorhandene LED benutzen...?