Forum: Mikrocontroller und Digitale Elektronik Magnetkarten -daten 3 Spuren mit AVR speichern


von KnechtRootRecht (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte für ein Projekt dass beim durchziehen der Karte alle 3 Spuren 
simultan gelesen werden und im Spiecher evtl. serielles Flash oder MC/SD 
abgelegt werden.

Frage:
Wie bekomme ich die Daten in den AVR, nutze ich einen ADC oder Input 
Capture oder kann ich das Signal welches wie siehe Bild aussieht. 
eigentlich ist es ja ein digitales Signal und kann auch ohne f2f 
baustein umgeandelt werden in 0101101.

* Optimal wäre es wenn direkt vom Magnetkopf den Binärstrom gewonnen und 
gespeichert werden könnte.

* Alternative wäre das Signal einfach nur zu speichern wie die Ausgabe 
eines normalen Tonkopfes.

Info s:)
Vielleicht hilft die Info, dass die Daten und das Clock Signal 
zeitgleich im Datenstrom vorkommen.
Es ist so, dass am Anfang des Lesens eine zackige Sinuskurve angeführt 
wird an der man den Takt errechnen kann, später im eigentlichen 
Datenstrom nutz man die breite der auf die Frequenz modelierten 0er um 
auch die 1er zu identfizieren. Wenn innerhalb eines Taktes ein 
Pegelwechsel stattfindet ist das eine 1 wennnicht eine 0.
Wer kann mir ein paar inspirierende Ansätze geben wie man so etwas 
realisiert. Um alles spuren Zeitgleich lesen zu können, können natürlich 
auch 3 AVRs zum einsatz kommmen das ist egal.
Ich bedanke mich im Voraus und hoffe dass ich hier die Etiquette wahren 
konnte wenn nicht bitte zurechtstutzen.
Liebe Grüße KnechtRootRecht

von ENGli (Gast)


Lesenswert?

Ich würde mit einem AVR gleichzeitig alle Spuren AD-Wandeln. Die 
Auswertung kann dann ganz gemütlich Offline gemacht werden. Die 
Knacknuss dürfte sein, das digitale wieder aus den Werten zu ermitteln

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Das ist Manchester - keine Knacknuss. Ich würde auch nicht den A/D - 
Wandler, sondern den Komparator nehmen, der auf die Flanken hin testet.

von KnechtRootRecht (Gast)


Lesenswert?

Zunächst herzlichen Dank für die Mühe, Manchaster code ist hier wohl das 
Schlagwort.
Habe hierzu grad ein bissl was gelesen -> genau das habe ich gesucht.
Bin dabei hierauf gestossen:
 Beispielcode (Matlab/Octave)

Encoder:
1
function [encoded] = manchester_encode(source)
2
3
encoded = [];
4
for i=1:length(source)
5
  encoded(2*i - 1) = (source(i) == 1);
6
  encoded(2*i) = (source(i) == 0);
7
end
Decoder:
1
function [decoded] = manchester_decode(coded)
2
3
decoded = [];
4
for i=1:(length(coded)/2)
5
  if coded(2*i - 1) == 0 && coded(2*i) == 1
6
    decoded(i) = 0;
7
  else
8
    decoded(i) = 1;
9
  end
10
end
Beispiel:
1
octave:22> manchester_encode([0 1 0 0 0 1 1 1])
2
ans =
3
4
  0  1  1  0  0  1  0  1  0  1  1  0  1  0  1  0
5
6
octave:23> manchester_decode(ans)
7
ans =
8
9
  0  1  0  0  0  1  1  1

Wie modde ich das denn jetzt um für meine Zwecke?

von KnechtRootRecht (Gast)


Lesenswert?

p.s wo finde ich eine gutes Tutorial zu Komparator beim AVR

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Nicht Tutorial, Datenblatt! Steht alles drin. Sind bloss 2-3 
I/O-Register, die man einstellen muß.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Nicht ganz. Die Spannung vom Magnetkopf muß sicher verstärkt werden. 
Dann kommt der µC. In diesem tickt eine schnuckelige Routine, die die 
Datenaufbereitung macht und die 1en und 0en abspeichert. Diese Routine 
mußt Du Dir erst zusammenproggen. Was Du dann mit den gespeicherten 
Daten machst, ist Dein Ding.

von KnechtRootRecht (Gast)


Lesenswert?

Kannst du mir ein Code Bsp Link für so ein Problem geben. Danke

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Och nöö, mach mal selber. Bisserl Eigeninitiative muß sein!

von Bastian (Gast)


Lesenswert?

Ich hoffe du hast mit der Schaltung nicht vor EC Karten oder sonstiges 
zu kopieren. Das ist nämlich wie du bestimmt weißt illegal

von Gast (Gast)


Lesenswert?

Das einfachste wird sein, du suchst Kontakt zu den Profis.

Siehe: http://www.heise.de/security/artikel/99991

Gast

von KnechtRootRecht (Gast)


Lesenswert?

Hallo, und lieben Dank an alle die sich um mein Problem gekümmert haben.
Habe vor eine Kundenkarte heruaszubringen, allerding smit einem völlig 
neuem Konzept und hierzu müßen die IDs auf den Karten bei den Händler 
irgendwei gespeichert werden, hierzu will ich ein kleinen Logger basteln 
möglichst billig der Magnetkarten lesen kann.

Kann mir jemand sagen wie ich die vom Komparator erzeugten daten 
speichern kann. bin über jeden Tipp froh..
Bin Anfänger#1

von JÜrgen G. (Firma: 4CKnowLedge) (psicom) Benutzerseite


Lesenswert?

Vielleicht könnte man das ganze ja in Kooperation machen, also das würd 
mich schon interessieren.

Mein momentanes Projekt - Keylogger für Tastatur schreibt auf SD Karte 
ist gerade fertig geworden.

Bei Interesse bitte eine kurze PN mit deiner Mail Addy!

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Aber mal ganz ehrlich: Magnetkarten sind doch out! Nimm 13.56Mhz 
Transponder und bringe diese inklusive der Spule in einer Karte unter. 
Dafür gibt es inzwischen sogar schon etliche Hersteller. Dann baust Du 
Dir eine Schreib/Lese-Einheit aus einem RFID Frontend-IC und einem 
Mikrocontroller und fertig ist das. Wird auf jeden Fall zuverlässiger 
und langlebiger. Und letztenlich auch sicherer, da viele Transponder 
auch schon Verschlüsselung können.

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.