Hallo allerseits,
habe folgendes Problem:
Für eine RFID Anwendungen hätte ich gerne eine durchgehende Clock die
mit der Trägerfrequenz (13.56 MHz) synchronisiert werden soll. Problem
beim verwendeten Protokoll (ISO14443A) ist, dass beim Modulieren des
Readers das Feld komplett abgeschalten wird (100% Modulationsindex).
Dadurch ist eine Taktrückgewinnung per Komparator oder einfachen
Inverter erstmal nicht durchgehend möglich.
Für eine durchgehende Clock habe ich an einen Quarzoszillator gedacht,
der jetzt aber noch an die genaue Frequenz des Feldes angeglichen werden
muss. Der Oszillator soll insgesamt nicht mehr als 300uA ziehen um einen
passiven Betrieb zu ermöglichen.
Jetzt zu meiner Frage:
Kann ich einfach einen NPN oder N-Channel Transistor verwenden, welcher
mir den Inverter-Eingang eines Pierce Oszillators bei positiver
Halbwelle des Feldes immer auf GND zieht? Schwingt der Quarz dann noch
sauber?
Aufwendigere PLLs sind bei dem Powerbudget vermutlich nicht drinnen.
Wir reden hier von einem Sender oder einem Empfaenger ? Der Sender ist
aktiv, der Empfaenger in der Regel passiv. Ein passiver Empfaenger
bedeutet, er hat natuerlich keinen Oszillator, sondern laeuft mit dem
Feld. Das Feld des Senders ist der Clock. Und der Empfaenger, dh die
Karte, hat nur einen Resonanzkreis mit der Antenne.
Was soll das Ganze ? Resp, wo liegen die Probleme?
Zipp schrieb:> Wir reden hier von einem Sender oder einem Empfaenger ?
Empfänger natürlich.
> Ein passiver Empfaenger bedeutet, er hat natuerlich keinen Oszillator,> sondern laeuft mit dem Feld. Das Feld des Senders ist der Clock. Und> der Empfaenger, dh die Karte, hat nur einen Resonanzkreis mit der Antenne.
Nein das bedeutet es nicht. Ein passives Tag hat keine eigene
Stromversorgung, aber selbstverständlich aktive Komponenten.
> Was soll das Ganze ? Resp, wo liegen die Probleme?
siehe oben
mdch schrieb:> also früher hat man das bei Farb-TVs ähnlich gemacht, um so den> Oszillator auf den Farbburst zu synchronisieren-
Hm was heißt so ähnlich, hast du vielleicht ein Link dazu, der mit
weiterhelfen könnte?
Weshalb willst du einen durchgehenden Quarz Clock, wenn der Clock ja
geliefert wird ? Ein Quarz ist ein Resonator mit Guete 10^6, den
kriegste nie eingeschwungen. Abgesehen gibt'es keinen Quarz mit
13.56MHz. Wie lange ist der gepulste Traeger denn weg? 16 perioden? Das
schafft ein RC Oszillator auch.
Wichtel schrieb:> Weshalb willst du einen durchgehenden Quarz Clock, wenn der Clock ja> geliefert wird ?
Wie erwähnt leider nicht durchgehend. Während dem Modulieren ist das
Feld und damit die Clock weg.
> Abgesehen gibt'es keinen Quarz mit 13.56MHz.
Schau bitte vorher nach, bevor du soetwas behauptest. Natürlich gibt es
die und habe ich auch schon öfters verwendet.
> Wie lange ist der gepulste Traeger denn weg? 16 perioden? Das> schafft ein RC Oszillator auch.
44 cycles
tomb schrieb:> 44 cycles
Noch als Zusatz: 128 cycles ist eine Bit-Periode bei 106kbit/s
RC Oszillator scheint mir gefühlsmäßig viel zu ungenau zu sein um die
Zeit ohne Abweichung zu überbrücken. Aber müsste ich mir erstmal
durchrechnen.
Also wir reden vom Empfang der Bits des Senders. Und da faellt waehrend
eines Nulles der Clock weg. Wie viele Nullen duerfen denn in Serie
kommen? Resp wieviel gespeicherte Ladung steht denn fuer den Empfang
ohne Sender zur Verfuegung?
Welche Guete Q hat denn die Sendeantenne? Welche Guete Q hat denn die
Empfangsantenne? Beide muessen ja betraechtlich unter 44 sein, sonst
kommt kein Bit durch.
Um wieviel Phasenwinkel darf ein interner clock nach der erlaubten
Anzahl Nullen falsch sein? Ich denk 90 Grad liegen sicher drin, wenn es
sich sofort resynchronisiert.
Wichtel schrieb:> Also wir reden vom Empfang der Bits des Senders. Und da faellt waehrend> eines Nulles der Clock weg.
Nicht ganz. Es handelt sich um eine Modified-Miller-Kodierung. Also eine
Art von Return-To-Zero-Kodierung. Die Clock kann sowohl bei 0 als auch
bei 1 weg sein. Aber immer nur etwa 44 cycles pro Bitperiode, also nicht
durchgehend.
Wichtel schrieb:> Um wieviel Phasenwinkel darf ein interner clock nach der erlaubten> Anzahl Nullen falsch sein? Ich denk 90 Grad liegen sicher drin, wenn es> sich sofort resynchronisiert.
Das wäre schon extrem und entspräche im schlechtesten Fall einem
Tastverhältnis von 75:25 beim Synchronisieren. Da müsste ich den
dahinterliegen uC mit einer höheren Spannung versorgen um die Setup- und
Holdzeiten noch einzuhalten.
Also 60:40 würde ich mal als Worst-Case Tastverhältnis voraussetzen.
Am liebsten wäre mir immer noch der Quarz, welcher auch ohne
Synchronisation recht gut funktioniert. Aber ab 200 Byte Daten wird es
etwas unzuverlässig. Man müsste den Takt also nur ein klein wenig
korrigieren.
Software-Synchronisation wäre prinzipiell auch möglich, aber leider
nicht in dem Leistungsbudget.
Also waehrend 44 von 128 Zyklen kann der Clock weg sein, und die gilt es
zu ueberbruecken. Lassen wir mal 15 Grad Phasenfehler zu. Das bedeutet,
der RC Oszillator darf dann (44+(15/360))/44 = 946ppm daneben sein. Ausm
Stand wird er das nicht sein. Wenn man ihn aber nebenher, waehrend
Signal vorhanden ist, synchronisieren kann, sollte das gehen.
Wir reden von einem ASIC?
Wichtel schrieb:> Also waehrend 44 von 128 Zyklen kann der Clock weg sein, und die gilt es> zu ueberbruecken. Lassen wir mal 15 Grad Phasenfehler zu. Das bedeutet,> der RC Oszillator darf dann (44+(15/360))/44 = 946ppm daneben sein. Ausm> Stand wird er das nicht sein. Wenn man ihn aber nebenher, waehrend> Signal vorhanden ist, synchronisieren kann, sollte das gehen.
Ich denke du sprichst von einer PLL. Ich kann mir nicht vorstellen, dass
mit dem Powerbudget diskret hinzukriegen.
> Wir reden von einem ASIC?
Nein, nein schon diskret aufgebaut.
Ja. Im prinzip meine ich eine PLL, aber nicht als Hauptoszillator,
sondern als Fallback, wenn der externe wegfaellt. Den Quarz kannste
vergessen. Denn der Quarz ist auf wenige Hertz fest. Falls die
Quarzfrequenz nun nicht stimmt, um ein paar Hertz mehr, so wir man ihn
nicht mehr auf Amplitude bringen. Die Quarzfrequenz kann aufgrund der
Temperatur daneben sein. und ein TCXO wird preislich kaum drinliegen.
Abgesehen davon, dass ein Quarz eine Sekunde einschwingen kann. Soviel
Zeit hast du nicht.
Danke Abdul, sowas in dieser Richtung muesste moeglich sein. Der Lock
Prozess muesste gegatet sein. Das heisst der PLL wird nur beeinflusst
wenn das externe Signal in hinreichender Staerke vorhanden ist. zB indem
man die Differenz zwischen internem VCO und externem clock auf einen
gegateten Integrator gibt.
Wichtel schrieb:> Abgesehen davon, dass ein Quarz eine Sekunde einschwingen kann. Soviel> Zeit hast du nicht.
Aus eigener Erfahrung kann ich sagen der 13.56 MHz ist in weniger als 1
ms eingeschwungen. Etwa 5ms hätte er Zeit vom Protokoll her. Das geht
sich momentan (ohne Synchronisation) locker aus.
Danach kann er ja durchgehend weiterschwingen. Ich dachte daran ihn
einfach nur ein wenig anzustubsen. Der NPN oder N-Channel Transistor
sollte ihn bei positiver Halbwelle nur ein wenig Richtung GND ziehen. So
erhoffte ich mir nach einiger Zeit eine stabile Schwingung 180°
phasenverschoben zum Feld.
Abdul K. schrieb:> Sollte machbar sein per Injection Locking. Ich habe sowas bislang aber> nur mit Spulen-Oszillatoren praktisch ausgeführt.
Danke, das ist ein tolles Stichwort. Werde mich da mal einlesen.
Injection Locking ist einer PLL sehr ähnlich. Allerdings effektiver:
Einfacherer Aufbau und besseres S/N.
Es gibt genauso wie bei einer PLL einen Lock-Range, der aber auch von
der Momentanamplitude des Referenzsignals abhängt.
Schau dir dazu auch mal die Sachen von Vasil Uzunoglu und seine Patente
an.
Aber all das ist keine Anfängergeschichte!!!!
Die einfachste Form und die habe ich auch praktisch erprobt, ist wie im
Anhang.
Abdul K. schrieb:> Injection Locking ist einer PLL sehr ähnlich. Allerdings effektiver:> Einfacherer Aufbau und besseres S/N.> Es gibt genauso wie bei einer PLL einen Lock-Range, der aber auch von> der Momentanamplitude des Referenzsignals abhängt.> Schau dir dazu auch mal die Sachen von Vasil Uzunoglu und seine Patente> an.>> Aber all das ist keine Anfängergeschichte!!!!>> Die einfachste Form und die habe ich auch praktisch erprobt, ist wie im> Anhang.
Danke nochmal, hatte vorher noch nie davon gehört. Bin zwar eher im
Digitalbereich zuhause, aber auch Analogdesign ist letztendlich nur eine
Motivationsfrage...
So fuchtbar schwierig kann die Sache ja wohl nicht sein, das passt alles
in so eine Karte. Ein Quarz dürfte da nicht drin sein, der überlebt das
Biegen der Karte nicht. Bei den Millionen Stück (auch in anderen Städten
wird so was verwendet) kann das eigentlich auch nichts kosten.
MfG Klaus
Klaus schrieb:> So fuchtbar schwierig kann die Sache ja wohl nicht sein, das passt alles> in so eine Karte.
Aber wohl nicht, wenn man - wie hier gefordert - das diskret aufbauen
will. RFID ist normalerweise Massenware, da sind ASICs Stand der
Technik.
Klaus schrieb:> So fuchtbar schwierig kann die Sache ja wohl nicht sein, das passt alles> in so eine Karte. Ein Quarz dürfte da nicht drin sein, der überlebt das> Biegen der Karte nicht. Bei den Millionen Stück (auch in anderen Städten> wird so was verwendet) kann das eigentlich auch nichts kosten.>> MfG Klaus
Im ASIC kommt man auch ohne durchgehende Clock aus. Mittels asynchronen
Reset kann man das Modulieren auch ohne Takt sauber detektieren. Diskret
aufgebaut mit einem uC von der Stande ist das etwas schwieriger.
tomb schrieb:> Für eine RFID Anwendungen hätte ich gerne eine durchgehende Clock die> mit der Trägerfrequenz (13.56 MHz) synchronisiert werden soll.
Für mich stellt sich die Frage, ob tomb eine Clock mit 13,56 MHz
synchronisieren will, oder ob es ihm darum geht, einen RFID Tag selbst
zu bauen. Möglicherweise haben beide Probleme nichts miteinander zu tun.
Wenn ich ein Tag bauen wollte, würde ich erstmal die (dutzenden) Papiere
von NXP lesen um rauszufinden, wie die das in ihren Chips (sind fertige,
keine ASICs) machen. Hat nicht auch der CCC mal damit was gemacht?
MfG Klaus
Klaus schrieb:> tomb schrieb:>> Für eine RFID Anwendungen hätte ich gerne eine durchgehende Clock die>> mit der Trägerfrequenz (13.56 MHz) synchronisiert werden soll.>> Für mich stellt sich die Frage, ob tomb eine Clock mit 13,56 MHz> synchronisieren will, oder ob es ihm darum geht, einen RFID Tag selbst> zu bauen. Möglicherweise haben beide Probleme nichts miteinander zu tun.
Schon das nach dem ich gefragt habe ;)
Ich habe schon Tag gebaut, es geht nur darum es noch zu verbessern.
Fertige Chips kommen aus mehreren Gründen, die ich hier nicht erörtern
will, nicht in Frage.
Aus meiner Sicht hat sich das Thema auch erledigt. Abdul hat mir alles
mitgeteilt was ich wissen wollte.
Ein passiver Tag im Selbstbau? Hut ab. das ist anspruchsvoll. Ein
aktiver Tag hat weniger Probleme und erst noch viel mehr Reichweite. Das
Problem des passiven Tags ist die Reichweite. Wenn man da nur ein
Miliampere als Versorgung einspeise koennte...
Ein Wichtel schrieb:> Ein passiver Tag im Selbstbau? Hut ab. das ist anspruchsvoll.
Aufwendig war eigentlich nur die Software damit man den uC möglichst
niedrig takten kann und das analoge Front-end für die 10% Modulation bei
ISO14443B. Ich bin damit auf 3.39 MHz mit einem ATxmega runterkommen.
Damit braucht das gesamte Tag weniger als 2mW. So erreicht man bei den
meisten Readern fast die Reichweite von echten Tags.
Mit den neueren AU Modellen und optimierter Hardware, würde ich auch
noch auf unter 1mW kommen. Etwas lachen mich auch die Cortex M0 von
Energy Micro an. Die nochmal etwa 30% an Leistung einsparen würden...
Abdul K. schrieb:> Das könnte vermutlich viele interessieren. Wenn es nix kommerzielles> ist, dann veröffentliche es doch. Meinen Segen hast du.
Die optimierte Software gehört noch mir. Die Rechte an der Hardware
allerdings nicht mehr.
Ich spiele allerdings mit dem Gedanken ein neues Tag zu im
Chipkartenformat zu bauen, welches an den dicksten Stellen auch nicht
höher als 3mm ist. Mit Knopfzelle dann ca 5mm. Deshalb hab ich mich hier
auch gleichmal zwecks verbesserter Taktquelle erkundigt.
Alles zusammen wäre aber noch etwas Arbeit. Ich bin mir noch nicht
sicher ob ich mir das antue. Andererseits könnte man ab 100 Stück so ein
Tag für weniger als 30 Eur anbieten. Ist die Frage wie hoch das
Interesse an so einem flexiblen Tag ist.
Idealismus gehört hier dazu. Dafür bekommste dann ein paar Lorbeeren ;-)
Nach meiner Erfahrung wird das Design aber dann eh zerissen und
verkaufen kann man auf µC.net auch nicht wirklich mit Erlös. Da solltest
du eher richtige Kunden ansprechen: z.B. Tierhalter in ihren Foren.
Abdul K. schrieb:> Idealismus gehört hier dazu. Dafür bekommste dann ein paar Lorbeeren ;-)
Das meinte ich mit "ist alles nur eine Frage der Motivation" :)
> Nach meiner Erfahrung wird das Design aber dann eh zerissen und> verkaufen kann man auf µC.net auch nicht wirklich mit Erlös. Da solltest> du eher richtige Kunden ansprechen: z.B. Tierhalter in ihren Foren.
Die 30 Eur pro Stück wären ohnehin ohne meiner Entwicklungszeit.
Letztendlich würde ich es auch Open Source machen. Aber so ab 100 Stück
zahlt sich das richtig aus, weil man die Platine sehr günstig fertig
bestückt bekommt. Die Platine wäre aber zweilagig, könnte also jeder
selbst nachbaun.
Kritik am Design ist ja auch durchaus erwünscht, aber der Ton in dem
Forum ist mir oft auch nicht sympatisch. Mit der Zeit passt man sich dem
blöderweise auch ein wenig an...
Tierhalter wären wahrscheinlich keine geeignete Zielgruppe, das Board
macht wohl nur Sinn als Entwicklungs- und natürlich Hackplattform ;)
Der Reiz für mich läge darin das Ganze "geldtaschen-tauglich" zu machen.
Wenn es noch jemanden interessiert, ich habe eine einfache Möglichkeit
gefunden einen kontinuierlichen Takt zu erzeugen. Und zwar indem ich
einfach noch eine zweite, kleine Schleifenantenne auf das Board ätze.
Das RLC Netzwerk wird dabei auf eine hohe Güte angepasst. Die Bandbreite
des Trägersignals ist laut Standard maximal 7 kHz. Die minimal 106 kHz
vom Seitenband lassen sich also prima rausfiltern.