Upload
dangtram
View
225
Download
1
Embed Size (px)
Citation preview
RFID-Lesegerät für Studi-Ausweise
STUDIENARBEIT T3100
Studiengang Mechatronik
an der Dualen Hochschule Baden-Württemberg in Stuttgart
vorgelegt am 18.01.2012
Studierende: Stefanie Schäfer (0473445)
Christoph Seifried (0929307)
Stefan Schropp (0718533)
Kurs: TMT09G1
Studienjahrgang: 2009
Gutachter der Dualen Hochschule: Prof. Dr. Ing. Tobias Flämig
Dipl.-Gwl. Oliver Fröb
Inhaltsverzeichnis
Abbildungsverzeichnis ...................................................................................... 3
Tabellenverzeichnis ........................................................................................... 3
1. Einleitung ....................................................................................................... 4
1.1 Problemstellung .......................................................................................... 4
1.2 Zielsetzung ................................................................................................. 4
1.3 Aufbau der Arbeit ........................................................................................ 5
2. Einführung in RFID ........................................................................................ 6
2.1 Definition RFID............................................................................................ 6
2.2 Bestandteile und Funktionsweise eines RFID-Systems .............................. 6
2.3 RFID-Standards .......................................................................................... 7
2.4 Wahl eines RFID-Standards ....................................................................... 8
3. Erstellung eines Pflichtenheftes .................................................................. 8
3.1 Definition eines Pflichtenheftes ................................................................... 8
3.2 Pflichtenheft RFID-Lesegerät für Studentenausweise ................................ 9
4. Auswahlvorgang des RFID-Lesegeräts ..................................................... 15
4.1 Anforderungen an das Lesegerät.............................................................. 15
4.2 Auswahl des Lesegeräts ........................................................................... 17
4.3 Entscheidung für den Elektor-RFID-Reader ............................................. 17
5. Hardware des RFID-Lesegeräts .................................................................. 18
5.1 KeyMatic ................................................................................................... 18
5.2 Studentenausweise ................................................................................... 19
5.3 Der Elektor-RFID-Reader ......................................................................... 20
5.4 Gehäusekonzept ....................................................................................... 25
6. Software des RFID-Lesegeräts ................................................................... 26
6.1 Benötigte Software .................................................................................... 26
6.2 Programmiervorbereitungen ..................................................................... 26
6.3 Das Programm Flash-Magic ..................................................................... 27
6.4 Programmiervorgang ................................................................................ 29
Anhang ............................................................................................................. 30
Abbildungsverzeichnis
Abbildung 1: Bestandteile eines RFID-Systems ..................................................... 6
Abbildung 2: Beispiel eines Protokolleintrages ..................................................... 15
Abbildung 3: Speicherbedarf eines Protokolleintrages ......................................... 16
Abbildung 4: Türschloss-Hardware KM 300 IQ+ mit Fernbedienung KM 300 RC 18
Abbildung 5: Schnittstellenmodul KM 300 RI ........................................................ 18
Abbildung 6: Adapterlösung für die Fernbedienung KM 300 RC .......................... 19
Abbildung 7: Schematischer Platinen-Entwurf des Elektor-RFID-Readers ........... 20
Abbildung 8: Platine des Elektor-RFID-Readers ................................................... 22
Abbildung 9: Blockschaltbild des ELEKTOR-RFID-Readers ................................. 23
Abbildung 10: Schaltplan des Elektor-Readers ..................................................... 24
Abbildung 11: RFID-Reader-Platine - Setzen der Jumper .................................... 26
Abbildung 12: Programm Flash Magic .................................................................. 27
Abbildung 13: Flash Magic - Advanced Options ................................................... 28
Abbildung 14: Flash Magic - Advanced Options (2) .............................................. 28
Abbildung 15: Flash Magic - Device Configuration ............................................... 29
Tabellenverzeichnis
Tabelle 1: RFID-Frequenzbereiche ......................................................................... 7
4
1. Einleitung
1.1 Problemstellung
Bislang ist es an der Dualen Hochschule in Stuttgart nicht möglich, dass die
Studenten die Laborräume der Mechatronik eigenständig nutzen können. Es ist
immer eine Lehrkraft oder ein Mitarbeiter notwendig, um die Laborräume mit einem
Schlüssel auf- und anschließend wieder abzuschließen. Ein Lösungsansatz war
daher der Einsatz eines automatischen Türschlosses mit Fernbedienungen, was
beispielsweise mit dem KeyMatic KM 300 IQ+ von ELV realisiert werden kann.
Allerdings tritt hier die Schwierigkeit auf, dass maximal 10 Fernbedienungen
angemeldet werden können und somit ein ähnliches Problem wie mit den
herkömmlichen Schlüsseln besteht.
1.2 Zielsetzung
Ziel dieser Arbeit ist daher die Verbesserung und Erleichterung des Zugriffs auf die
Laborräume der Mechatronik der Dualen Hochschule in Stuttgart durch Einbau
eines Zutrittssystems inklusive Zutrittskontrolle mittels RFID. Die Idee ist, anstatt
eines Schlüssels die Tatsache zu nutzen, dass die Studentenausweise bereits mit
einem RFID-Chip ausgestattet sind, und die Studenten mit ihrem Studentenausweis
Zugang zu den Laboren erhalten. Die Freischaltung der Zugangsberechtigungen
(Matrikelnummer und Zeitraum) soll über den Studiengangsleiter der Mechatronik
per USB-Stick auf das Lesegerät erfolgen. Das KeyMatic IQ+ wird als Hardware
vorgegeben und soll mit in das Gesamtkonzept eingebunden werden.
Die Teilaufgaben sind folgende:
1.) Aufbau eines Prototyp-RFID-Lesegeräts für Tests der Funkverbindung zum
Studentenausweis
2.) Erstellung einer Steuerungssoftware mit der die Zutrittsberechtigten (u.a.
RFID-Nummer) per USB-Stick abgelegt werden.
3.) Aufbau und Inbetriebnahme eines Signalumsetzers vom RFID-Leser auf das
KeyMatic-System
5
Diese Studienarbeit erstreckt sich über die Semester 5 und 6, wobei dieser Bericht
den Arbeitsaufwand des 5. Semesters beinhaltet und somit einen Zwischenstand
des Projektes, aber noch kein endgültiges Ergebnis liefert. Arbeitsziel bis Ende des
5. Semesters war ein RFID-Lesegerät mit funktionsfähiger Software. Dies
beinhaltet die Auswahl eines geeigneten RFID-Lesegeräts, sowie eine geeignete
Programmierung, damit das Einlesen eines Studentenausweises gelingt.
1.3 Aufbau der Arbeit
In Kapitel 2 wird zuerst eine kurze Einführung in das Themengebiet RFID und
RFID-Standards gegeben, sowie auf die Wahl eines geeigneten Standards
eingegangen. Kapitel 3 beschreibt die Erstellung und den Inhalt des Pflichtenhefts,
wobei vor allem die Anforderungen an das RFID-System wichtig sind. Kapitel 4
beschreibt das Auswahlverfahren für das Lesegerät. in Kapitel 5 wird anschließend
die Hardware des ausgewählten Readers erklärt. Dies beinhaltet sowohl die
Türschloss-Hardware, als auch eine ausführliche Beschreibung des gewählten
Readers. Kapitel 6 zeigt die Firmware des Readers bis zum Arbeitsziel des 5.
Semesters auf.
6
2. Einführung in RFID
2.1 Definition RFID
RFID ist eine Abkürzung für den englischen Ausdruck „Radio Frequency
Identification“, was frei übersetzt etwa "Identifikation per Funksignal“ bedeutet.1 Es
geht hierbei um kontaktlose Übertragung von Daten zwischen einem RFID-
Lesegerät und einem RFID-Datenträger, auch Transponder genannt, und in
unserem Fall der Studentenausweis. Zur Datenübertragung werden magnetische
oder elektromagnetische Felder eingesetzt: Das Lesegerät sendet Funkimpulse
und der Transponder sendet eine auf ihm gespeicherte weltweit
einmalige Nummer, die UID (Unique Identifier), zurück.2
2.2 Bestandteile und Funktionsweise eines RFID-Systems
Ein RFID-System besteht mindestens aus 3 Komponenten:
• Einem Lesegerät (Reader) mit Antenne oder Spule
• einem Empfänger
• einem Datenräger (Transponder, mit Informationen
Oft ist noch ein Computer zur Weiterverarbeitung am Reader angeschlossen.
Abbildung 1: Bestandteile eines RFID-Systems3
Der Reader baut ein elektromagnetisches Feld auf. Passiert nun ein RFID-
Transponder diese elektromagnetische Zone, wird es durch induktive Kopplung mit
Energie versorgt. Der Transponder ist dann bereit für den Datenempfang des
Readers. Die Codierung der zu übertragenden Bits erfolgt so, dass das
Trägersignal immer nur kurz ausgetastet wird, damit der Transponder die
Energieversorgung nicht verliert und die Bits empfangen und verarbeiten und
anschließend auch antworten kann.
1 Vgl. AIM (2011) 2 Vgl. Informationsforum RFID (2009) 3 Vgl. AIM (2011)
Datenträger/Transponder Reader mit Antenne Computer mit Software
Daten Takt Energie
7
Im Transponder befindet sich eine auf die Trägerfrequenz abgestimmte Last,
welche im Takt der Modulationsfrequenz an- und abgeschaltet wird. Dies sorgt
dafür, dass bei jedem Modulationsvorgang dem Frequenzfeld Energie entzogen
wird. Das Lesegerät detektiert diese Belastungen und kann sie entsprechend
wieder entschlüsseln und dann auch zur Weiterverarbeitung zum Computer leiten.4
2.3 RFID-Standards
Es gibt einige unterschiedliche RFID-Standards, die dazu da sind, die Waren- und
Datenströme zu vereinheitlichen. Sie sorgen so dafür, dass alle beteiligten
Komponenten in der gesamten Wertschöpfungskette optimal zusammenarbeiten
können. Für diese Standards sind hauptsächlich die ISO (International
Standardisation Organisation) und die EPCglobal (Electronic Product Code global)
verantwortlich.
Die Standards unterscheiden sich hauptsächlich in der Benutzung anderer
Frequenzbänder und Übertragungsprotokolle.5 Tabelle 1 gibt einen kurzen
Überblick über die meist verwendeten Frequenzbereiche inklusive Beispiele für
mögliche Anwendungsgebiete:
Frequenzbereich Anwendungsgebiet
Niederfrequenz (NF): 30-500 kHz, typisch: 125 kHz bzw. 134 kHz
Zugangskontrollen bzw. Tierchips (ISO 11784/11785) zur Identifikation von Haustieren
Hochfrequenz (HF): 3-30 MHz, typisch: 13,56 MHz
Reisepass mit Chip, Smartcards ISO 14443A/B ISO 7816
Ultra-Hochfrequenz (UHF): > 433 MHz, typisch: 869 MHz (EU), 915 MHz (US)
Paletten- und Container-Identifikation, Identifikationen in der Produktion
Super Ultra-Hochfrequenz (S-UHF): > 2,4 GHz, typisch: 2,45 GHz
Mautsysteme (Toll Collect)
Tabelle 1: RFID-Frequenzbereiche6
4 Vgl. RFID Basis (2011) 5 Vgl. Elektronik-Kompendium (2012) 6 Vgl. Elektronik-Kompendium (2012)
8
2.4 Wahl eines RFID-Standards
Bei der Konzeption eines RFID-Lesegeräts muss man sich zuerst für einen RFID-
Standard entscheiden und dann das gesamte System danach auslegen. Da der
Studentenausweis bereits vorhanden ist, macht es Sinn herauszufinden, welcher
Standard dort verwendet wird. Da das Rechenzentrum der DHBW-Stuttgart aus
Sicherheitsgründen keine Informationen über den Aufbau der Studentenausweise
herausgeben kann, muss versucht werden, dies selbst herauszufinden. Es zeigt
sich, dass sie nach dem Mifare-Standard arbeiten.7 Mifare wird von NXP
Semiconductors hergestellt und ist die weltweit meistgenutzte kontaktlose
Chipkartentechnik. Es gibt eine ganze Produktpalette von Transpondern, bspw.
Mifare-Classic, Mifare-Ultralight oder Mifare Plus.8
Alle Mifare-Chips sind nach ISO 14443A und ISO 7816 implementiert und ihre
Betriebsfrequenz liegt bei 13,56MHz. Somit erfolgt der Datenaustausch nicht über
elektromagnetische Wellen, sondern über induktive Kopplung. Die Distanz ist auf
etwa 10 Zentimeter begrenzt. Dank der langsamen Datenübertragungs-
geschwindigkeit von 106 kbit/s können die empfangenen Daten mit Standard-
Mikrocontrollers problemlos ausgewertet werden.9
Daher ist es sinnvoll ein RFID-Lesegerät auszuwählen, welches mit Mifare-
Transpondern arbeiten kann.
3. Erstellung eines Pflichtenheftes
3.1 Definition eines Pflichtenheftes
Zu Beginn eines jeden Projektes muss ein Pflichtenheft erstellt werden. Nach DIN
69905 (Projektabwicklung) beinhaltet es die „vom Auftragnehmer erarbeiteten
Realisierungsvorgaben“, welche auf Grundlage der Kundenanforderungen
(Lastenheft) ausgearbeitet werden. Es beschreibt also wie das Projektteam die
Anforderungen des Auftraggebers zu erbringen hat.10 Dieses Dokument ist Basis
für die technische Realisierung und Kommunikationsbasis zwischen dem
Projektteam und dem Kunden.
7 Mehr hierzu siehe Kapitel 5.2 8 Vgl. Mifare (2012a) 9 Vgl. Mifare (2012b) 10 Vgl. Wikipedia (2011)
9
3.2 Pflichtenheft RFID-Lesegerät für Studentenausweise
10
11
12
13
14
15
4. Auswahlvorgang des RFID-Lesegeräts
4.1 Anforderungen an das Lesegerät
Um ein geeignetes Lesegerät zu finden, muss zuerst definiert werden, welche
Anforderungen an das Lesegerät gestellt werden. Diese werden anhand des
Pflichtenheftes abgeleitet. Die ausgearbeiteten Anforderungen werden im
Folgenden aufgezählt und erläutert:
a) Kompatibilität mit Mifare und ISO 14443A
Der Reader soll, wie bereits erwähnt, mit dem Mifare-Standard arbeiten und somit
eine Betriebsfrequenz von 13,56 MHz aufweisen. Zudem soll er dem ISO-Standard
ISO/IEC 14443A unterliegen.
b) Speicher des Mikrocontrollers
Die benötigte Speichergröße des Mikrocontrollers muss bekannt sein, um den
geeigneten Mikrocontroller auswählen zu können. Daher ist es erforderlich die
Mindestspeichergröße zu berechnen. Hierfür benötigt man einige Annahmen: Die
Zahl der betroffenen Personen beläuft sich etwa auf 300 (90 Studenten * 3
Jahrgänge und einige DHBW-Mitarbeiter), von diesen Personen muss jede
Ausweisnummer hinterlegt werden können. In den Laboren gibt es 4 bis 5
Arbeitsplätze, welche etwa zwei Mal täglich genutzt werden, sodass sich die
durchschnittliche Zutrittsfrequenz auf 10 Mal pro Tag beläuft. Zudem wird
geschätzt, dass alle 4 Wochen ausgelesen wird. Dies ergibt folgende Anzahl von
Protokolleinträgen: 5 Laborplätze x 2 Nutzungen x 20 Tage x 2 (An-/Abmelden) =
400 Protokolleinträge. Der verwaltungstechnische Speicherbedarf beläuft sich
insgesamt auf etwa 11-12 kByte, zusammengesetzt aus:
- 300 Personen = 300 * 4 Byte (8-stelliger Hex-Code von Mifare) = 1.200 Byte
- 400 Protokolleinträge = 400 * 25 Byte [Hex-Code, Datum, Uhrzeit E/A] = 10.000 Byte
Abbildung 2: Beispiel eines Protokolleintrages
16
Abbildung 3: Speicherbedarf eines Protokolleintrages
Hierzu kommt noch der Programmcode, der sich wohl auf etwa 3-5 kByte belaufen
wird. Somit sollte ein 16 kByte Flash-Speicher verwendet werden.
c) Geringer Stromverbrauch und Schlafmodus
Das RFID-Lesegerät soll später im Stand-alone-Betrieb mit Batterie arbeiten. Daher
ist ein geringer Stromverbrauch wichtig, damit die Batterie nicht ständig gewechselt
werden muss. Auch das Vorhandensein eines Schlafmodus wäre vorteilhaft, damit
das Gerät nicht unnötig viel Strom verbraucht, wenn es nicht arbeiten muss.
d) USB-Schnittstelle für den PC-Anschluss
Da die Zugangsberechtigungen als Zutrittsliste (Matrikelnummer und Zeitraum)
regelmäßig auf den Mikrocontroller geladen werden müssen und auch die Daten in
regelmäßigen Abständen vom Mikrocontroller zur Überwachung wieder
heruntergeladen werden sollten, ist es sinnvoll, dass eine USB-Schnittstelle
vorhanden ist, da dies die Kommunikation deutlich erleichtert.
e) Integrierte Antenne
Eine integrierte Antenne ist zwar kein absolutes Muss, aber wäre ein Nice-to-have,
da sie nicht nur wenig Platz wegnimmt, sondern auch die zusätzliche Installation
sowie die Ausrichtung einer externen Antenne entfallen.
f) Visualisierung der An- und Abmeldung
Es soll für den An- und Abmeldevorgangs des Studentenausweises eine Anzeige
geben. Dies kann auf einfachste Weise mit 2 LED’s realisiert werden, wobei
beispielweise eine grüne LED bei der Anmeldung aufleuchtet und eine rote LED bei
der Abmeldung des Studenten.
17
Eindrucksvoller wäre, wenn der Reader einen Anschluss für ein LCD-Display
aufweisen würde, denn hiermit könnte man auf dem LCD-Display auch die
Studentenausweisnummer oder ähnliches anzeigen lassen.
g) sonstiges
Außerdem wäre es gut, wenn das Lesegerät über eine SPI-Schnittstelle verfügen
würde und einen frei verfügbaren Compiler hätte. Allgemein eignen sich hierfür vor
allem PIC-Controller (aufgrund des geringen Stromverbrauchs) bzw. ATMEL
(aufgrund der guten Entwicklungsumgebung). Verzichtet werden sollte auf
exotische Typen wie Hitashi etc.11
4.2 Auswahl des Lesegeräts
Es ist immer sinnvoll auf bereits bestehende Dinge zurückzugreifen, bevor man
sich die Mühe macht und etwas selbst entwickelt. Daher wird geschaut, welche
Reader auf dem Markt verfügbar sind und ob sie für diesen Zweck geeignet sind.
Dies geschieht in einem Auswahlkatalog: Hier werden alle Reader bzgl. der
erarbeiteten Anforderungen überprüft und bewertet.12
4.3 Entscheidung für den Elektor-RFID-Reader
Nun werden alle in Frage kommenden Reader miteinander verglichen.13 Die Wahl
fällt auf die elektronische Schaltung von Elektor, da diese das beste Gesamtpaket
für die gestellte Aufgabe bietet.14 Die Schaltung kann vollständig übernommen
werden, allerdings muss sie um eine USB-Schnittstelle mit Host-Funktion erweitert
werden. Außerdem besteht die Möglichkeit ein LCD-Display anzufügen. Auf den
Aufbau und die Funktionsweise des Readers wird in Kapitel 5.3 näher
eingegangen.
11 Vgl. Flämig, T. (2011) 12 Siehe Anlage 1, S.31 – S. 33: Auswahlkatalog für RFID-Lesegerät 13 Siehe Anlage 2, S.34: Vergleich der in Frage kommenden RFID-Lesegeräte 14 Vgl. Elektor (2012a); siehe auch Anlage 3, S.35: Bauteilliste Elektor-RFID-Reader
18
5. Hardware des RFID-Lesegeräts
5.1 KeyMatic
Wie bereits erwähnt, wird die Hardware für das Türschloss mit dem KM 300 IQ+
bereits vorgegeben. Diese wird von innen an das Türschloss montiert.
Abbildung 4: Türschloss-Hardware KM 300 IQ+ mit Fernbedienung KM 300 RC15
Bei Verwendung der Hardware muss beachtet werden, dass die Türe mit einer
Notschließfunktion ausgestattet werden muss. So wird gegenseitiges Verriegeln
vermieden, was bedeutet, dass obwohl ein Schlüssel innen im KM 300 IQ+ steckt
von außen per Schlüssel aufgeschlossen werden kann. Dies ist nötig, da die
Elektrotechnik weiterhin mit ihren Schlüssel in die Laborräume kommen sollen.
Zusätzlich gibt es eine Fernbedienung, die KM 300 RC, die das KM 300 IQ+ mit nur
einem Tastendruck öffnet. Da die Türen künftig mit den Studenten-ausweisen
geöffnet werden sollen, muss die Fernbedienung in das Gesamtsystem, das später
vor der Türe installiert wird, integriert werden. Um den Auseinanderbau der
Fernbedienung zu vermeiden, wurde angedacht ein fertiges Schnittstellenmodul,
das Keymatic KM300 RI, als Alternative zu verwenden, jedoch funktioniert dieses
lediglich mit Kabel, weshalb ein Loch in die Türen gebohrt werden müsste. Somit
wurde dies schnell wieder verworfen.
Abbildung 5: Schnittstellenmodul KM 300 RI16
15 Vgl. ELV (2012a) 16 Vgl. ELV (2012b)
KM 300 IQ+
KM 300 RC
19
Die Fernbedienung ist das RFID-Interface zwischen Studentenausweis und
Lesegerät, die Informationenübertragung erfolgt per RFID mit einer Frequenz von
868,35 MHz. Sie soll über 2 bzw. evtl. 3 Mikrocontroller-Ports gesteuert werden.
Abbildung 6: Adapterlösung für die Fernbedienung KM 300 RC
5.2 Studentenausweise
Um Informationen über den Aufbau der Studentenausweise herauszufinden,
werden sie mit einem RFID-Lesegerät von Balluff ausgelesen. Jedoch fallen die
Informationen recht spärlich aus: Die Endung -01 am Lesegerät zeigt, dass es sich
um den Mifare-Standard handelt.17 Außerdem zeigt das Lesegerät eine 4 Byte
lange UID (Unique Identifier) an.18 Sie ist eine unverwechselbare Nummer, die nur
ein Mal vergeben wird. Für die Studentenausweise des Projektteams ergab sich
folgender Hex-Code:
- Christoph Seifried, Matrikelnummer 0929307 = UID 90 89 B1 27
- Stefan Schropp, Matrikelnummer 0718533 = UID 90 89 8B 07.
- Stefanie Schäfer, Matrikelnummer 0473445 = UID FD 63 84 17
Dass sich die dritte UID von den anderen beiden stark unterscheidet, liegt wohl
daran, dass es sich hierbei aufgrund von Verlust bereits um den zweiten
Studentenausweis handelt und dieser nicht zeitgleich mit den anderen, sondern
erst viel später erstellt wurde.
17 Vgl. Höhn, C. (2011) 18 Anmerkung: Aufgrund eines ausgeschöpften Adressraums wurde die UID Mitte 2011 auf 7 Byte erweitert. Siehe auch Mifare (2011a). Die Studentenausweise sind jedoch früher entstanden.
20
5.3 Der Elektor-RFID-Reader
Der Elektor-RFID-Reader vervollständigt zusammen mit dem KM 300 IQ+ und der
KM 300 RC-Fernbedienung das System. Er kann über Elektor direkt für 64,95 €
bestellt werden.19 Es folgt ein Überblick über die einzelnen Komponenten:
Die Hauptkomponenten lassen sich deutlich auf dem Platinen-Entwurf in Abbildung
7 erkennen: Sende- (a) und Empfangsschaltung (b), digitale Auswertungseinheit
mit den Ports (c), USB-Schnittstelle (d) und Antenne (e). Zudem gibt es eine
Schnittstelle zum Anschließen eines LCD-Displays (f), eine ISP-Schnittstelle zum
Brennen der Firmware (g) und ein Anschluss für eine 4-Tasten-Tastatur (h):
Abbildung 7: Schematischer Platinen-Entwurf des Elektor-RFID-Readers
a) Sendeschaltung:
Sie besteht aus einem digitalen Quarzoszillator und einer Gegentaktstufe (2
MOSFETs), welche die vom Oszillator erzeugte Schwingung verstärkt. Die digitale
Schwingung wird zur Mikrocontroller-Taktung sowie für die Herstellung des
Hochfrequenzfeldes verwendet. Das von der Gegentaktstufe verstärkte Signal
kommt zum Serienschwingkreis L1/C4, wobei man mit Trimmer C4 die maximale
Amplitude des HF-Feldes einstellen kann. Mit Hilfe eines Einganges von Gatter
IC1.B kann der Mikrocontroller das HF-Feld amplitudenmodulieren.
19 Vgl. Elektor (2012a)
21
b) Empfangsschaltung:
Hier wird das vom RFID-Chip modulierte HF-Feld demoduliert und hinterher
digitalisiert. Die Resonanzfrequenz des L7/C10 Schwingkreises bei ungefähr
kHzCL
f 87610*3,3*2
1
2
114107
===−
ππ
. Somit ist der Empfangskreis auf die 13,56
MHz /16 = 847,5 kHz Modulationsfrequenz der Mifare-Karte abgestimmt. Am
Komparator-Ausgang steht nun das digitalisierte Signal zu Verfügung, das vom
Mikrocontroller weiterverarbeitet werden kann.
c) Digitale Auswertungseinheit mit Ein- und Ausgabeports:
Beim Mikrocontroller handelt es sich um einen ATmega16 von Atmel. Dieser hat
16kByte Flash, 1 kByte RAM sowie eine maximale Taktfrequenz von 20MHz.
Jedoch muss der Mikrocontroller außer senden und empfangen auch codieren und
dekodieren. Zudem muss er die Parität und CRC-Checksumme der ein- und
ausgehenden Daten berechnen.
d) USB-Schnittstelle:
Für eine USB-Anbindung zum PC kann ein FT232RL-Chip von FTDI eingefügt
werden. Dies ist ein bidirektioneller USB/UART-Umsetzer. Er wird an den internen
UART des Mikrocontrollers angeschlossen. Die Kommunikation zwischen FT232
und Mikrocontroller erfolgt hier seriell mit TX- und RX-Leitung. Mit dem PC
kommuniziert der FT232 mittels USB. Auf der Hersteller-Homepage gibt es für alle
gängigen Betriebssysteme kostenlos Treiber zum Download. Nach der
Treiberinstallation erscheint ein virtueller serieller Port am Computer, sodass sich
die Programmierung der PC-Software ohne spezielle USB-Kenntnisse
bewerkstelligen lässt. Die Umsetzung von USB auf UART übernimmt der Chip von
alleine. Dies wird allerdings erst im zweiten Teil der Arbeit umgesetzt.
e) Sende- und Empfangsantenne:
Diese befindet sich auf einer 5x6,5 cm großen Platine und besteht aus 2
verschachtelten Luft-Spulen. Eine Windung dient als Sendeantenne (es ist egal,
welche man wählt), die andere Windung dient als Schnüffelsonde für den Empfang.
Zum Lesen und Beschreiben eines RFID-Transponders, wird dieser einfach auf die
Antenne aufgelegt.
22
f) LCD-Anschluss:
Der 14-polige Wannenstecker dient zum Anschluss eines LCD-Displays. Eingesetzt
werden kann bspw. ein zweizeiliges, unbeleuchtetes Display mit je 24 Zeichen pro
Zeile. Das LCD ist ein HD44780-kompatibler Typ mit nur 1 positiven (und keiner
negativen) Spannungsversorgung. Programmiert wird über 4 Daten- und 3
Steuerleitungen.
g) ISP-Schnittstelle:
Der 10-polige Wannenstecker dient als ISP-Schnittstelle (In System Programmer).
Hiermit lässt sich die Firmware des AVRs brennen und updaten, ohne ihn für
diesen Zweck ausbauen zu müssen.
h) Tastatur-Anschluss:
Hier könnten 4 Taster für die Menüsteuerung angeschlossen werden. So kann man
bequem durch das mit dem Display angezeigte Menü navigieren. Ob dies allerdings
benötigt wird, ist noch zu entscheiden.
Abbildung 8: Platine des Elektor-RFID-Readers20
20 Vgl. Schalk, G. (2006), S. 32
23
Folgende Abbildung zeigt noch den Signalfluss des Readers:
Abbildung 9: Blockschaltbild des ELEKTOR-RFID-Readers21
Das Reader-IC MF RC522 wird vom Controller angesteuert und erzeugt das Hoch-
frequenzfeld sowie die ISO 14443-Signale. Er macht auch für die De-/Modulation.
21 Vgl. Schalk, G. (2006), S. 30
24
Abbildung 10: Schaltplan des Elektor-Readers22
22 Vgl. Schalk, G. (2006), S. 31
25
5.4 Gehäusekonzept
Auch das Gehäusekonzept für das gesamte RFID-Modul soll bereits grob erstellt
werden. In das Gehäuse gehören folgende Teile: Der Elektor-RFID-Reader inkl.
Antenne, die Fernbedienung, die Batterie, der USB-Anschluss und das LCD-
Display. Das System soll später in ein Acrylgehäuse eingebaut werden, sodass die
Elektronik von außen sichtbar ist.
Um die Abmessungen des Gehäuses abschätzen zu können, werden die Maße
folgender Bauteile benötigt:
- Maße Elektor-RFID-Reader: 146 x 91 x 33 mm
- Maße LCD-Display: 75 x 27 x 11 mm
- Maße Fernbedienung KM 300 RI: 68 x 24 x 58 mm
- Platz für die USB-Schnittstelle einplanen
- Platz für das Batteriefach einplanen
Eine Aufzeichnung des Gehäusekonzeptes befindet sich in Anlage 4 im Anhang auf
Seite 36.
Für die Montage gilt: Die Grundplatte soll später an der Wand neben der Türe
befestigt werden und mit einem Schloss von unten (damit es nicht sofort sichtbar
ist) gegen Diebstahl gesichert werden.
26
6. Software des RFID-Lesegeräts
6.1 Benötigte Software
Der verwendete RFID-Reader von Elektor arbeitet mit dem Mikrocontroller
P89LPC936. Dieser lässt sich mit dem Programm Flash-Magic, welches im Internet
kostenlos verfügbar ist, und dem zugehörigen VCP Treiber direkt über USB
programmieren.
6.2 Programmiervorbereitungen
Für den Programmiervorgang müssen die beiden Jumper gesetzt werden. Dazu
müssen zuerst die nötigen Stifte auf der Platine eingelötet werden. Die Position ist
im Bild rot markiert.
Abbildung 11: RFID-Reader-Platine - Setzen der Jumper
27
6.3 Das Programm Flash-Magic
Beim Start des Programms, erscheint das folgende Fenster, bei dem einige
Einstellungen vorgenommen werden müssen:
Device 89LPC936
COM-Port Hier muss der Port angewählt werden, an dem der RFID-
Reader angeschlossen ist. Herausfinden lässt sich dies über
den Gerätemanager.
Baudrate 9600
Interface None (ISP)
Bei der Option „Erase blocks used by Hex file“ muss ein Häkchen gesetzt sein.
Über die Schaltfläche „Browse“ kann die gewünschte HEX-Datei geöffnet werden.
Abbildung 12: Programm Flash Magic
28
Über den Button "Options Advanced Options" in der Menüliste erreicht man das
Konfigurationsmenü "Advanced Options". Dort müssen folgende Parameter
eingetragen werden:
Abbildung 13: Flash Magic - Advanced Options
Abbildung 14: Flash Magic - Advanced Options (2)
Bei der „ISP/Device“-Konfiguration, welche über ISP-> Device Configuration oder
über das Symbol rechts neben dem grünen Haken in der Menüleiste erreicht wird,
muss der Oszillator-Takt auf der Einstellung „High Frequency Crystal/Resonator
(4MHz-12MHz)“ verwendet werden.
29
Abbildung 15: Flash Magic - Device Configuration
Danach sind alle nötigen Einstellungen vorgenommen.
6.4 Programmiervorgang
Ein Start des Programmiervorgangs erfolgt über den Start-Button. Während des
Programmiervorgangs flackern die gelben LEDs. Es ist zu beachten, dass der
Programmiervorgang nicht unterbrochen werden darf.
Nach dem Programmieren müssen die Jumper entfernt werden. Ebenso muss der
Reader kurz vom USB-Anschluss getrennt und wieder angeschlossen werden,
damit die Firmware korrekt startet. Nun ist der RFID-Reader funktionsfähig.
Leider ist es zum jetzigen Zeitpunkt noch nicht möglich den Hex-Code des
Studentenausweises auszulesen, da die mitgelieferte Software reduziert ist und nur
zum Laden eins Hex-Files benutzt werden kann. Den Speicher kann man nur
mithilfe der Vollversion auslesen, welche jedoch zu teuer ist.
Daher wurde noch das Display nachbestellt, um zu sehen, ob der RFID-Reader
richtig arbeitet und den Code des Studentenausweises einlesen kann. Dieses
Display hatte jedoch eine zu lange Lieferzeit, wodurch es noch nicht eingetroffen
ist.
Zum jetzigen Zeitpunkt kann daher nur gesagt werden, dass der RFID-Reader eine
Aktion ausführt, wenn man einen Studentenausweis davorhält, was man an der
gelb blinkenden LED erkennen kann.
Ein Auszug des Programmcodes findet sich im Anhang in der Anlage 5 ab Seite 37.
30
Anhang
Anlage 1: Auswahlkatalog RFID-Lesegerät .......................................................... 31
Anlage 2: Vergleich der in Frage kommenden RFID-Lesegeräte ......................... 34
Anlage 3: Bauteilliste Elektor-RFID-Reader .......................................................... 35
Anlage 4: Gehäusekonzept ................................................................................... 36
Anlage 5: Code ..................................................................................................... 37
31
Anlage 1: Auswahlkatalog RFID-Lesegerät
Kriterium ELEKTOR- RFID-Reader
Codatex- Leser 4 Plus
Melexis MLX90121EFR-FSK
Melexis MLX90109EDC
HF P&P Modul Mifare/ Multi ISO
Kompatibilität mit Mifare & ISO 14443A
ISO 14443B (?)
Betriebsfrequenz 13,56 MHz 125 kHz (nur EM4102 Transponder)
13,56 MHz 125 kHz 13,56 MHz
USB-Schnittstelle für PC-Anschluss
Anzeige LCD-Display (autonomer Betrieb mgl.)
LED-Anzeige
PC-Software Mifare Magic (kosten- loser Source-Code
komfortable Bedien-SW "LeserPlus Manager"
Mikrocontroller LPC396 (Philips) (8051-kompatibel)
Schnittstellen FT232R (FTD) I2C, SPI, UART, USB
RS232 2-Draht Serial-Port RS232, RS485 / RS422, optional USB 2.0 (Multi)
Reader-IC MF RC522 (Philips) (-) HVQFN32-Gehäuse
Ist nur Reader-IC Ist nur Reader-IC Vorhanden
Betriebsspannung Intern: 3,3 V extern:USB/ Batterie
5V 3,1~5,5V; geringe Stromaufnahme: 3 mA
PS/2, externes Netzteil, USB (Multi)
Antenne Integriert Sonstiges bestücktes Board
mit programmiertem µC; lieferbares Gehäuse
500 Chips; 5000 Ereig- nisse speicherbar;
geringer Bauteilaufwand
fertig bestücktes Modul mit Antenne!
ON/OFF Modus: Leser per Transponder ein- & ausschaltbar
Preis 64,95 € 106,80 € 10,04 € 7,33 € Noch keine Antwort Probleme Falsche Betriebs-
frequenz! Nur Reader-IC, viel Aufwand !
Falsche Betriebs- frequenz! Nur Reader-IC!
32
Fortsetzung Anlage 1: Auswahlkatalog RFID-Lesegerät
Kriterium QW-HFAR-NNN-2NN- S-BK
QD-HFAW-NNN-2NN- S-GR
SCM SCL010 USB Desktop
RM-Ultra Mifare 13,56MHz Montage
Trancient Technology ExploreR-HF RFID reader
Kompatibilität mit Mifare & ISO 14443A
Betriebsfrequenz 13,56 MHz 13,56 MHz 13,56 MHz 13,56 MHz 13,56 MHz USB-Schnittstelle für PC-Anschluss
Anzeige LED (grün) + Schallgeber
LED (Zweifarben) + Schallgeber
LED integrierter Summer, 3 LED's ( r/g/y)
Single button for RFID reading, Multi-colour LEDs.
PC-Software Upgrades via USB & Bluetooth
Mikrocontroller Schnittstellen RS232 RS232 USB, PC/SC-
Kompatibilität - Wiegand - Clock & Data - RS232
USB – mini-B connector for wired applications, Bluetooth
Reader-IC Betriebsspannung 12V (9V-16V),
70mA als Betriebsdaten 5V, 100 mA 5 Vdc bis 13,8 Vdc
(120 mA typ.) Via USB for internal Li-Ion battery recharge
Antenne Einbauantenne Einbauantenne Integrierte Antenne Internal only Sonstiges Maße: 115 x 76 x 18;
512-bit EEPROM; Lieferzeit 2-4 Wochen
Maße: 65 x 100 x 24,7; 8 KB EEPROM; Lieferzeit 2-4 Wochen
Integrierter Flash- Speicher
Lieferzeit: 3 - 5 Werktage; (-)Kabelanschluss
power supply & battery recharge, 'always on' wall mount operation
Preis 59,46 € zzgl. Versand 145, 89 € zzgl. Versand 77,35 € zzgl. Versand 117,81 EUR zzgl. Versand
$418.00
Fazit Lieferzeit kritisch! Zu geringer Speicher!
Lieferzeit kritisch!
Nur mit Kabel- Anschluss
Zu teuer!
33
Fortsetzung Anlage 1: Auswahlkatalog RFID-Lesegerät
Kriterium Mifare Writer PCR310 LightBoxReader 300 Wall Reader DF750 Wall Reader MF7
Kompatibilität mit Mifare & ISO 14443A
Betriebsfrequenz 13,56 MHz 13,56 MHz 13,56 MHz 13,56 MHz USB-Schnittstelle für PC-Anschluss
Anzeige LED‘s Interne LED & Buzzer (pro- grammierbar)
Interne LED, Buzzer Interne LED, Buzzer
PC-Software Mikrocontroller Schnittstellen USB, RS232, Wiegand, RS232 RS232 Wiegand 26 bits, MSR
ABA TK2, RS232 Reader-IC Betriebsspannung 5V, 100 mA 7,5- 12 V 7,5V- 24V 5-18 V, typ. 12 V,
120 mA Antenne Sonstiges Reader & Writer;
Speicher 32 KB; Maße: 65 x 100 x 24,7
Auf Metalloberfläche anbring- bar
Maße: 112,3 x 96 x 22 m; Sicherheit: mutual three pass authentification
Maße: 83 x 47 x 16 mm
Preis 225 € ? ? 119 € Fazit Zu teuer; missbrauch-
gefährdet, da Reader & Writer in einem!
34
Anlage 2: Vergleich der in Frage kommenden RFID-Lesegeräte
Kriterium ELEKTOR-
RFID-Reader
HF P&P Modul
Mifare/
Multi ISO
QD-HFAW-NNN-
2NN-S-GR
SCM
SCL010 USB
Desktop
USB-Schnittstelle
für PC-Anschluss
Anzeige
PC-Software
Speicher
Mikrocontroller
(16 kByte) ? (8 kByte) ?
Batteriebetrieb Akku über USB? 4 (5V) ?
Integrierte Antenne
Preis (64,95 €) ? (145, 89 €) (77,35 €)
Ergebnis
35
Anlage 3: Bauteilliste Elektor-RFID-Reader
Bezeichnung Wert
Widerstände (SMD 0805, 5%) R1, R2, R6, R12, R15, R17 1k R3,R4,R5 4k7 R7 2k7 R8, R9 4Ω7 R10 270 Ω R11 10 Ω R13 100 k R14, R16 10 k P1 10-k-Trimmpotentiometer, SMD, 4 mm SQ Kondensatoren (SMD 0805, 16 V, keramisch): C1, C2 47 p NP0 C3, C4, C5, C6, C9, C10, C11, C12, C16, C31
100 n
C7, C8, C13, C14 12 p NP0 C15 1 n NP0 C18, C20, C22, C24, C26, C28 nicht bestückt C21, C23 27 p NP0 C25, C27 68 p NP0 C29, C30, C32 2µ2 Halbleiter D1 SMD-LED (0805) grün, Low-current D2 SMD-LED (0805) gelb, Low-current D3, D6, D7 SMD-LED (0805), rot, Low-current D4 BAS19 (200 mA, SOT23) D5 BAT54S (30 V/300 mA, SOT23) T1, T2 6402 (P-Kanal-MOSFET, 20 V/3,7 A, SOT23) T3 BC517 (NPN-Darlington, TO92) IC1 FT232RQFN (QFN32, FTDI) IC2 74HC02 (TSSOP14, NORGATE)
IC3 P89LPC936FDH-S (SSOP28, Philips)
IC4 MFRC52201HN1 (HVQFN32, Philips)
IC5 LM2937 (Low-drop, 3V3, SOT223)
sonstiges X1 16-MHz-Quarz (18-p-Parallelkapazität, 5 mm
x 3,2 mm)
X2 27,12-MHz-Quarz (18-p-Parallelkapazität, 5 mm x 3,2 mm)
K1 Mini-USB-B-Buchse, SMD, 5-polig
L1 SMD-Ferrit (1,5 A, 0805)
L2, L3 SMD-Induktivität 560 nH (0805)
36
Anlage 4: Gehäusekonzept
151
mm
95 mm
LCD-Display (2x 16 Zeichen)
Antenne
Mikrocontroller + Widerstände + Kondensatoren + Reader-IC + …
Vorderansicht
50-60 mm
Seitenansicht rechts
Fern-bedie-nung KM 300 RC
Untersicht
USB 7mm
17,78 mm
Batterie-fach
37
Anlage 5: Code
Main.c23
#include <REG936.H> // LPC SFR definition
#include "stdio.h" // stdio Library
#include "LPC_Hardware.h" // Output Pin definition
#include "UART.h" // Basic UART functions
#include "LCD.h" // Basic LCD functions
#include "Timer1.h" // Hardware delay Timer (LPC Timer1)
#include "EEPROM.h"
#include "RC522_Mifare.h" // Basic ISO14443 & MIfARE functions
#include "PC_Reader_COM.h" // Reader PC Communication
#include "Mifare_Terminal.h" // Reader - Terminal Application Demo
#include "Mifare_PC_Reader.h" // Reader - PC Reader Application Demo
#include "Mifare_Access_Control.h" // Reader - Access Control Demo
void main(void)
OpenerOutput = 0; // Clear (Door) Opener Output pin
//------------------------------------------------------------
// Basic LPC936 Hardware Configuration
//------------------------------------------------------------
DIVM = 0x00; // LPC clock divider
TRIM &= ~0x40; // no clock out on CLKOUT pin
// select high power clock (CPU clock faster than 8MHz)
AUXR1 &= ~0x80;
//Set P0 Portpin; P0.0: Push-pull; P0.1-P0.7: Quasi-bidirectional
P0M1 = 0x00;
P0M2 = 0x01;
// Portpin settings for I2C; Open-Drain
P1M1 = 0x0C;
P1M2 = 0x8C;
23 Da der gesamte Code über 70 Seiten beinhaltet, wird hier beispielhaft nur der Main.c-Code dargestellt. Vgl. Elektor (2012b)
38
// TxD = push-pull, RxD = input
P1M1 &= ~0x01;
P1M2 |= 0x01;
P1M1 |= 0x02;
P1M2 &= ~0x02;
//------------------------------------------------------------------
// Initialize Software States and Flags
//------------------------------------------------------------------
// Verify the LPC EEPROM "ACCESS CONTROL DEMO Enable" Flag
if (ReadEEPROM(EEAddrAccessActFlag) == ACTIVE)
// Access Control Demo is active
// => Start Access Control Demo
gbMainState = MainState_ACCESS_CONTROL; // Initialize Main State
Read_EE_AccessControl_LCD_Content();
else
// Access Control Demo is not active
// => Start Terminal Mode Demo
gbMainState = MainState_TerminalMode; // Initialize Main State
gbRecState = 0; // Reset Serial (RS232/USB) Interrupt Receive State
gbNewCmdReceived = CLEAR; // Clear Serial (RS232/USB) new Cmd Flag
//------------------------------------------------------------------
// Initialize Hardware
//------------------------------------------------------------------
INI_Timer1(); // Delay Timer (LPC Timer 1)
uart_init(115200); // Initialize Serial UART (RS232/USB)
init_lcd(); // Initialize LCD Display
blank_lcd(); // Clear LCD Display
printf_lcd(1,1," RFID-Reader "); // Write to LCD Display
printf_lcd(2,1," Firmware 2.2 "); // Write to LCD Display
Timer1_Delay_ms(1000); // Display Version for 1 s
39
Rc522Init(); // Initialize MFRC522 Reader IC
EA = 1; // Enable all Interrupts
while(1) // MAIN LOOP
// Check Main State
switch(gbMainState)
// Reader Terminal Demo Mode
case MainState_TerminalMode:
uart_init(115200);
MIFARE_Terminal();
break;
// PC Reader Demo Mode
case MainState_PCReaderMode:
if(gbNewCmdReceived == SET)
MIFARE_PC_Reader();
// Clear Serial (RS232/USB) new Cmd Flag
gbNewCmdReceived = CLEAR;
break;
// Access Control Demo Mode
case MainState_ACCESS_CONTROL:
uart_init(115200);
MIFARE_AccessControl();
break;
// Reader Terminal Demo Mode
default:
uart_init(115200);
MIFARE_Terminal();
break;
// End of Main
40
Literatur- und Gesprächsverzeichnis
AIM (2011): What ist RFID?, http://www.aimglobal.org/technologies/rfid/what_is_rfid.asp (Stand 06.01.2012).
Elektor (2012a): ELEKTOR-RFID-Reader (060132-91), http://www.elektor.de/products/kits-modules/modules/060132-91-elektor-rfid-reader.91440.lynkx (Stand 07.01.2012).
Elektor (2012b): ELEKTOR-RFID-Reader (060132-81). http://www.elektor.de/jahrgang/2006/september/elektor-rfid-reader.64441.lynkx?tab=4 (Stand 10.01.2012).
Elektronik-Kompendium (2012): RFID – Radio Frequency Identification, http://www.elektronik-kompendium.de/sites/kom/0902021.htm (Stand 03.01.2012).
ELV (2012a): KeyMatic® IQ+-ARR Bausatz in weiß. http://www.elv.de/output/module/produktkatalog01/bilder_popup.aspx?art_id=13254&bild_id=512874 (Stand 04.01.2012).
ELV (2012b): ELV KeyMatic KM 300 RI Remote Interface, http://www.elv.de/output/module/produktkatalog01/bilder_popup.aspx?art_id=12506&bild_id=432210 (Stand 04.01.2012).
Flämig, T. (2011): Studiengangsleiter Mechatronik, DHBW Stuttgart, persönliches Gespräch am 03. November 2011 in Stuttgart.
Höhn, C. (2011): Entwicklungsleiter RFID, Balluff GmbH, Neuhausen a.d.F., persönliches Gespräch am 25. Oktober 2011 in Neuhausen a.d.F..
Informationsforum RFID (2009): Was ist RFID?, http://www.info-rfid.de/info-rfid/content/e35/e37 (Stand 10.01.2012).
Mifare (2011a): Important information regarding 4 Byte & 7 Byte UIDs of MIFARE™ products, http://mifare.net/technology/4-7byte-uid (Stand 06.01.2012).
Mifare (2012a): The success of Mifare, http://mifare.net/ (Stand 03.01.2012).
Mifare (2012b): MIFARE™ Standards http://mifare.net/overview/mifare-standards (Stand 04.01.2012).
41
RFID Basis (2011): Aufbau und Funktionsweise von RFID-Systemen, http://www.rfid-basis.de/funktionsweise.html (Stand 03.01.2012).
Schalk, G. (2006): Elektor-RFID-Reader Für MIFARE®- und ISO 14443-A, enthalten in: Elektor 09/2006, Seite 28-35.
Wikipedia (2011): Pflichtenheft, http://de.wikipedia.org/wiki/Pflichtenheft (Stand 02.01.2012).