Forum: Mikrocontroller und Digitale Elektronik RFID Decoding


von RFIDler (Gast)


Angehängte Dateien:

Lesenswert?

Ich versuche das Datenpaket eines RFID-Readers zu dekodieren.
In den Datenblättern des Readers steht was von Serial ASCII RS232 und 64 
bits Manchester coding.
Ist die Manchester codierung für das Auslesen zwischen Tag und Reader 
zuständig ? Und ich kann dann über RS232 die dekodierten Daten abfragen?
Im Anhang ist das Datenpaket des Readers angehängt.
Ich hoffe mir kann jemand weiterhelfen was ich mit dem Datenpaket 
anstellen muss.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Du könntest vor allem das Datenblatt zeigen.

von RFIDler (Gast)



Lesenswert?

Der Anhang wurde wohl leider nicht hochgeladen.
Hier nochmal.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Hänge einen Pegelwandler dran und das Ding an die serielle Schnittstelle 
Deines PCs, und verwende ein "Terminal"programm wie "hTerm", das die 
empfangenen Daten als Hexdump anzeigen kann.

von Timmo H. (masterfx)


Lesenswert?

Gelb offen lassen und dann kommt TTL RS232 aus dem Grünen mit 9600 Baud 
8N1

von RFIDler (Gast)


Angehängte Dateien:

Lesenswert?

Hab den Datenausgang des Readers an ein 3,3V FTDI Kabel gehängt.
Die Daten findet ihr im Anhang.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das ist nicht vollständig, da ein Telegramm laut Beschreibung mit STX 
beginnt und mit CR LF ETX aufhört.

Ansonsten, was sollen wir mit den Daten? Die interessieren Dich.

von RFIDler (Gast)


Angehängte Dateien:

Lesenswert?

Das kein STX, ETX usw. an Daten ankommt wundert mich auch.
Aber ich kann ja kaum was falsch machen wenn ich "Data" des Readers an 
RXD des FTDI-Kabels hänge?
Nun zu den Daten. Momentan verwende ich einen RS232-Wifi Wandler welcher 
mir einen COM port erzeugt wie das FTDI-Kabel. 
(http://tibbo.com/products/controllers/ds110x)
Aus diesem bekomme ich die Daten im Anhang raus.
HEX: 02 30 31 30 44 36 38 46 30 33 43 0D 0A 03
Die TAG ID in ASCII: 010D68F03C
Aber wie komme ich aus meinem Datenpaket auf die 10stellige Kombination?
Muss ich da über Manchester was kodieren.
Oder ist die Manchester-Kodierung nur zwischen Tag und Reader zuständig?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dein "RS232-WIFI-Wandler" verhält sich auf der RS232-Seite anders als 
Dein FTDI-Kabel. Hier liegt irgendein Anpassungsproblem vor. Das ist 
keine Softwareangelegenheit, sondern Hardware.

Die Tibbo-Geräte arbeiten mit RS232-Pegel, nicht mit TTL-Pegel.

von Ulf Z. (Gast)


Lesenswert?

RFIDler schrieb:
> Aus diesem bekomme ich die Daten im Anhang raus.
> HEX: 02 30 31 30 44 36 38 46 30 33 43 0D 0A 03
> Die TAG ID in ASCII: 010D68F03C
> Aber wie komme ich aus meinem Datenpaket auf die 10stellige Kombination?

Einfach die HEX-Werte als ASCII-Zeichen  interpretieren:

0x02 = STX Start of Text
0x30 = '0'
0x31 = '1'
0x30 = '0'
0x44 = 'D'
0x36 = '6'
0x36 = '8'
0x46 = 'F'
0x30 = '0'
0x33 = '3'
0x43 = 'C'
0x0D = CR "Wagen Rücklauf"
0x0A = LF "Neue Zeile"
0x03 = ETX End of Text

von RFIDler (Gast)


Angehängte Dateien:

Lesenswert?

Cool danke für eure Tipps ich denke wir kommen der Sache langsam näher 
:)
Also jetzt mal langsam damit ich mitkomme.
Momentan hab ich ja den "Data" Ausgang des Readers direkt aufs 
FTDI-Kabel "RX" gehängt. Du meinst also die beiden kommen mit den Pegeln 
nicht klar?

Könnte ich die Schaltung im Anhang mit dem MAX3232 verwenden und ich 
bekomme somit die gleichen Daten wie beim Tibbo?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

RFIDler schrieb:
> Momentan hab ich ja den "Data" Ausgang des Readers direkt aufs
> FTDI-Kabel "RX" gehängt. Du meinst also die beiden kommen mit den Pegeln
> nicht klar?

Wie verbindest Du den "Data"-Ausgang mit dem Tibbo-Gerät, und welches 
exakt ist das?

von RFIDler (Gast)


Lesenswert?

Ich verbinde Tx des Readers (green) direkt mit dem Tibbo "RX".
Der Tibbo heißt "DS1101GD-00".

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das Ding scheint RS232-Pegel zu erwarten. Was widerum der Beschreibung 
Deines RFID-Lesers widerspricht.

Allerdings --und jetzt erhält Dein Oszillogramm auch einen Sinn-- gibt 
der RFID-Leser ein invertiertes Datensignal aus. Damit der FT232 auf 
Deinem Adapter das verarbeiten kann, muss es erneut invertiert werden.

Keinen Max232 dafür verwenden, sondern einen 74HC04 o.ä., der wie auch 
Dein FTDI-Adapter mit 3.3V betrieben werden sollte.

von RFIDler (Gast)


Lesenswert?

Warum gibt mein RFID-Leser ein invertiertes signal aus. An was siehst du 
das?
Wieso sollte ich es nochmal invertieren damit es das FTDI-Kabel 
verarbeiten kann.
Der Tibbo verwendet doch bestimmt auch einen MAX232?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

RFIDler schrieb:
> An was siehst du das?

Der Ruhepegel einer UART (seriellen Schnittstelle) ist logisch 1. Bei 
TTL-Pegel sind das 5V; bei "3V-TTL" entsprechend 3V.

Dein Oszillogramm aber zeigt ein Signal, dessen Ruhepegel logisch 0 ist.


Bei RS232-Pegeln ist "high" eine negative Spannung und "low" eine 
positive.
Üblich ist der Bereich zwischen -15 und -3 bzw. zwischen +3 und +15 
Volt.

Viele RS232-Empfänger kommen aber auch mit 0V-Pegel anstelle der 
negativen Spannung zurecht.

Das jedenfalls erklärt, warum Dein "Tibbo" mit seinem RS232-Eingang 
etwas mit dem Signal Deines RFID-Lesers anfangen kann.

Um dieses Signal für einen FT232 anzupassen, ist kein MAX232 
erforderlich, wie ich bereits schrieb, genügt hier ein simpler Inverter.
Der MAX232 erzeugt mit Ladungspumpen +-10V, die hier völlig unnötig und 
wenn versehentlich mit Deinem RFID-Leser verbunden, auch zerstörerisch 
sind. Ganz zu schweigen vom unnötigen Schaltungsaufwand mit den üblichen 
immerhin vier großen Kondensatoren.

von RFIDler (Gast)


Angehängte Dateien:

Lesenswert?

Vielen Dank für deine Hilfe!
Hab nun die TTL Signale über einen simplen Transistorinverter 
invertiert.
Bekomme nun tatsächlich die Daten "02 30 31 30 44 36 38 46 30 33 43 0D 
0A 03" zurück in ASCII "010D68F03C".

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Na also!

Gratuliere.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.