Metainformationen zur Seite
RFID lesen
- Auszug von Wikipedia: RFID
RFID (englisch radio-frequency identification [ˈɹeɪdɪəʊ ˈfɹiːkwənsi aɪˌdɛntɪfɪˈkeɪʃn̩] „Identifizierung mit Hilfe elektromagnetischer Wellen“) bezeichnet eine Technologie für Sender-Empfänger-Systeme zum automatischen und berührungslosen Identifizieren und Lokalisieren von Objekten und Lebewesen mit Radiowellen.
Ein RFID-System besteht aus einem Transponder (umgangssprachlich auch Funketikett genannt), der sich am oder im Gegenstand bzw. Lebewesen befindet und einen kennzeichnenden Code enthält, sowie einem Lesegerät zum Auslesen dieser Kennung.
RFID-Transponder können so klein wie ein Reiskorn sein und implantiert werden, etwa bei Haustieren. Darüber hinaus besteht die Möglichkeit, RFID-Transponder über ein spezielles Druckverfahren stabiler Schaltungen aus Polymeren herzustellen. Die Vorteile dieser Technik ergeben sich aus der Kombination der geringen Größe, der unauffälligen Auslesemöglichkeit (z. B. bei dem am 1. November 2010 neu eingeführten Personalausweis in Deutschland) und dem geringen Preis der Transponder (teilweise im Cent-Bereich).
Die Kopplung geschieht durch vom Lesegerät erzeugte magnetische Wechselfelder in geringer Reichweite oder durch hochfrequente Radiowellen. Damit werden nicht nur Daten übertragen, sondern auch der Transponder mit Energie versorgt. Zur Erreichung größerer Reichweiten werden aktive Transponder mit eigener Stromversorgung eingesetzt, die jedoch mit höheren Kosten verbunden sind.
Das Lesegerät enthält eine Software (ein Mikroprogramm), die den eigentlichen Leseprozess steuert, und eine RFID-Middleware mit Schnittstellen zu weiteren EDV-Systemen.
Quellen:
Hardware:
Anschließen des Adapters
Zusammenführen der richtigen Pins:
- 5V Raspi → 5V RFID
- nicht genutzt
- GND Raspi → GDN RFID
- nicht genutzt (TX Rasp)
- RX Raspi → TX RFID
Dieses Anschluss Format: 5v – GND TX RX scheint genormt zu sein.
Dazu das Datenblatt des RFID-Lesers betrachten und die Pinbelegung.
Der Raspi arbeitet mit 3,3V der RFID-Leser mit 5V
Software
python-serial installieren.
Kleine Änderung an der /etc/inittab (danach Neustart) mit nano /etc/inittab (Achtung, man muss dafür root sein ).
#Spawn a getty on Raspberry Pi serial line T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
ändern in:
#Spawn a getty on Raspberry Pi serial line #T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
Testprogramm (http://kampis-elektroecke.de/wp-content/uploads/2013/02/RFID.py_.txt):
Nun mit nano rfid.py Programieroberfläche öffnen und das untere reinschreiben
import serial import sys import time from operator import xor # UART ID = "" Zeichen = 0 Checksumme = 0 Tag = 0 # Flags Startflag = "\x02" Endflag = "\x03" # UART oeffnen UART = serial.Serial("/dev/ttyAMA0", 9600) UART.open() while True: # Variablen loeschen Checksumme = 0 Checksumme_Tag = 0 ID = "" # Zeichen einlesen Zeichen = UART.read() # Uebertragungsstart signalisiert worden? if Zeichen == Startflag: # ID zusammen setzen for Counter in range(13): Zeichen = UART.read() ID = ID + str(Zeichen) # Endflag aus dem String loeschen ID = ID.replace(Endflag, "" ); # Checksumme berechnen for I in range(0, 9, 2): Checksumme = Checksumme ^ (((int(ID[I], 16)) << 4) + int(ID[I+1], 16)) Checksumme = hex(Checksumme) # Tag herausfiltern Tag = ((int(ID[1], 16)) << 8) + ((int(ID[2], 16)) << 4) + ((int(ID[3], 16)) << 0) Tag = hex(Tag) # Ausgabe der Daten print "------------------------------------------" print "Datensatz: ", ID print "Tag: ", Tag print "ID: ", ID[4:10] print "Checksumme: ", Checksumme print "------------------------------------------"