Bei einem RFID-System (Radio-Frequency Identification) handelt es sich um ein Gespann, das aus einem Reader (Lesegerät) und Transponder besteht. Der
Datenaustausch zwischen den beiden Komponenten erfolgt via Funk berührungslos. Die RFID-Systeme werden grundsätzlich zur eindeutigen Kennzeichnung von Objekten in
automatischen Produktionslinien, Transport oder Lagerung verwendet.
Der eigentliche Datenträger in dem RFID-System ist der Transponder. Der Datenumfang kann sehr unterschiedlich sein und hängt von der Anwendung ab. Jeder Transponder
besitzt eine Antenne und einen elektronischen Chip, auf dem die Daten gespeichert sind. Viele Transponder verfügen nicht über eigene Energiequelle und können keine Daten
senden oder empfangen. Erst wenn sie in die Nähe des Readers kommen und in das von ihm erzeugte elektromagnetische Feld „eintauchen“, werden sie auf diese Weise mit
Energie versorgt und können am Datenaustausch teilnehmen. Die Transponder werden auch als „Tag“ bezeichnet. Jeder Transponder ist mit einer eindeutigen
Identifikationsnummer (UID) versehen. Es ist möglich, sowohl die Daten von einem Transponder zu lesen als auch auf ihm zu speichern. Die Daten, die der Reader von einem
Transponder empfängt, werden dann weiter an einen Mikrocontroller übertragen.
In dem Versuch kommt ein RFID RC522 Reader zum Einsatz. Als Transponder werden vier RFID-Chips und eine RFID-Card getestet. Das Lesemodul überträgt die Daten zu
Arduino Mega. Jedem Chip wird in dem Versuch eine Leuchtdiode mit anderer Farbe zugeordnet, die er dann, sobald er den zugehörigen Chip erkennt, zum Leuchten bringt.
Mit der Card werden dann alle Leuchtdioden gleichzeitig eingeschaltet. Das Lesegerät ruft bei dem Transponder die Identifikationsnummer ab und danach entscheidet er,
welche Leuchtdiode eingeschaltet wird.
RFID-RC522
Bei dem Modul RFID-RC522 handelt es sich um eine Platine mit Abmessungen 60x40 mm. Das Lesegerät ist kein echtes Funkgerät. Das Modul funktioniert durch
Erfassen kleiner Impedanzänderungen in Antennenkreis, die durch einen Transponder, der in seine Nähe gebracht wird, verursacht werden.
Technische Daten
- Chip: MFRC522
- Betriebsfrequenz: 13.56MHz
- Betriebsspannung: 3.3 V
- Stromverbrauch: 13 – 26 mA
- Erkennungsabstand: 30 mm
- Kommunikation: SPI interface
Anschlüsse
Card-Transponder
Chip-Transponder
Arduino Mega
Der Reader benutzt die SPI-Schnittstelle für die Kommunikation mit dem Mikrocontroller. Der Mikrocontroller empfängt die Daten und abhängig von der
Programmierung reagiert auf sie.
Der RFID-Reader arbeitet mit einer Versorgungsspannung von 3,3V. Man muss hier darauf achten, dass keine höhere Spannung an das Modul angeschlossen wird.
Ggf. kann das Modul beschädigt werden. Mit einem richtig eingestellten separaten Spannungsregler ist man auf der sicheren
Seite.
Die Aufgabe der Schaltung ist einfach. Es werden nacheinander vier RFID-Chips und eine RFID-Card in den Empfangsbereich des Readers gebracht. Der
Mikrocontroller empfängt von dem Reader die Identifikationsnummer und schaltet eine Leuchtdiode ein. Damit das möglich ist, muss der Mikrocontroller im Vorfeld die
Identifikationsnummer der Transponder, mit welchen er kommuniziert kennen. Nur dann kann er richtig reagieren. Bevor also die Schaltung getestet werden kann, müssen
die Identifikationsnummer aus den Transpondern ausgelesen und im Programm eingegeben werden. Das Auslesen der Identifikationsnummer kann mit dem folgenden Programm
erledigt werden:
// *********************************************************************************
// RFID-Chip- oder Card-UID auslesen
// Arduino Mega
// Arduino IDE 2.2.1
// *********************************************************************************
Damit das Programm funktioniert, muss die Bibliothek (library) “MFRC522” der “GithubCommunity” installiert werden. Dies kann in der Arduino IDE mit dem
Bibliothekenverwalter erledigt werden. Bei der Installation der eigentlichen Bibliothek werden auch Beispiel-Sketche gespeichert, die unter der
Registerkarte Datei > Beispiele > MFRC522 zu finden sind.
Nachdem das Programm übertragen wurde, muss das serielle Monitor geöffnet werden. Hier wird, sobald ein Transponder in die Nähe des Readrs kommt, seine
Identifikationsnummer angezeigt. Diese muss dann anschließend in unserem unten stehendem Hauptprogramm eingetragen werden.
Ergebnisse auf dem seriellen Monitor:
Testschaltung
Programm
// ************************************************************************************************
// LED-Steuerung mit RFID
// mit Arduino Mega
// Arduino IDE 2.2.1
// ************************************************************************************************