Allgemeines Funktionsprinzip FE5680A Anschlüsse DDS DDS-Platine mit PIC16F84 DDS-Platine mit MC68HC711 Praxis Fazit |
Wikipedia:
Der Rubidium-Oszillator besteht aus
einer mit Rubidium gefüllten Gasentladungslampe deren Licht durch eine kleine Kammer mit
gasförmigem Rubidium geleitet wird und die Intensität des
Lichtes durch einen Photodetektor gemessen wird. Wird die Kammer mit
gasförmigem Rubidium durch Mikrowellen mit einer Frequenz von
6.834.682.610,904324 Hz (ca. 6,8 GHz) bestrahlt, dies ist die
Frequenz des Hyperfeinstrukturübergangs von 87Rb
mit
einer
relativen
Standardabweichung
von
3
*
10-15,
kommt
es
zufolge von Resonanzeffekten im Rubidium zu einer
Intensitätsreduktion des Lichtes am Photodetektor welche gemessen
werden kann. Diese Helligkeitsänderung dient als Regelsignal in
einer Frequency Locked Loop um einem elektrisch verstimmbaren
Quarzoszillator zu verändern, welcher im Mittel auf die Frequenz
des Hyperfeinstrukturübergangs von ca. 6,8... GHz abgestimmt
ist. Die vom Quarzoszillator erzeugte elektrische Schwingung dient
einerseits als Teil des Regelkreises dazu um über eine Antenne in
die Resonanzkammer mit gasförmigen Rubidium abgestrahlt zu werden.
Anderseits wird diese Frequenz verwendet um daraus mit Frequenzteilern,
je nach Anwendung sind verschiedene Werte üblich wie 10 MHz
oder einen Sekundenimpuls, für die weitergehende Verarbeitung zur
Verfügung zu stellen.
OK. Rubidium wird also verdampft (weshalb das FE5680A einen recht
hohen Stromverbrauch hat), und dann kommt da irgendwie eine hochstabile
Frequenz raus. Die ca. 6.8 GHz werden im FE5680A noch mal durch 136
geteilt, wodurch man dann etwa 50,225 MHz hat. Diese Frequenz ist zwar
stabil, aber ihr Wert ist nicht gerade praxistauglich. Deshalb wird mit
ihr ein DDS-Chip (AD9830A) betrieben, der daraus einen brauchbare
Frequenz von z.B. 10 MHz macht. Der DDS-Chip wird von einem
Microcontroller gesteuert, und dieser Microcontroller hat ein
RS232-Interface. Darüber lässt die die Frequenzerzeugung
beeinflussen, und eine weitgehend beliebige hochstabile Frequenz
einstellen.
Wer sich mal die Innereien des Rubidiumelements (also des physics
package) genauer anschauen möchte, ohne das eigenen FE5680A zu
opfern, dem
empfehle ich das Teardown-Movie von Mike
Durch die Frequenzerzeugung mit dem DDS-Chip befindet sich die
50,225MHz-Taktfrequenz auch noch im Ausgangssignal, und muss mit einem
Tiefpass unterdrückt oder herausgefiltert werden. Wie gut das der
im FE5680A enthaltenen Verstärker schon erledigt, kann ich nicht
nachmessen. Wer extreme Ansprüche an die Reinheit des erzeugten
Signales hat, sollte sich überlegen, das Signal mit einer
PLL-Schleife zu erzeugen, und das FE5680A-Signal dabei als
Referenzfrequenz zu verwenden.
Laut Datenblatt hat des FE5680A einen 9-poligen Sub-D-Verbinder und
einen Koax-Anschluss. Aber weder dieser Aussage noch den Pinbelegungen
des Datenblattes kann man vertrauen. Bei den auf Ebay zu erwerbenden
Typen handelt es sich anscheinend um Spezialversionen, die auf einen
bestimmten Anwendungszweck zugeschnitten sind.
Den Koax-Anschluss wird man in der Regel nicht vorfinden. Vermutlich
wird ein Pin des Sub-D-Verbinders als (geschalteter) Frequenzausgang
oder als Ausgang
für einen 1pps-Puls verwendet. Das herauszufinden ist nicht ganz
einfach, da ist es besser, sich einen neuen Frequenzausgang an das
FE5860A zu basteln. Dazu lötet man ein dünnes Koax-Kabel an
den Koax-Steckverbinder J1 des DDS-Bords (ist weiter unten genauer
beschrieben). Das Signal kommt aus einem Leistungs OPV über einen
68 Ω Widerstand zu diesem Koaxverbinder und liefert 0.5 Vrms an
eine 50 Ω Last (+7dBm).
Der Sub-D-Verbinder ist wahrscheinlich immer vorhanden, die
Pinbelegung ist aber sehr "variabel".
Die in Klammern gesetzten Bezeichner kennzeichnen Pisn, die nur bei
einigen Modellen auch wirklich so belegt sind. Man sollte besser nicht
darauf bauen.
Zwischen Pin 1 und Pin 2 wird die Hauptbetriebsspannung angelegt.
Diese beträgt (fast immer) 15 VDC. Mit dem Einschalten zieht das
FE5680A etwa 2A auf dieser Versorgungsleitung. Nach einer Aufheizphase
von wenigen Minuten verringert sich der Stromverbrauch auf etwa 0,7A
(nach 4 Minuten: 1A / nach 8 Minuten 0,7A).
Notfalls reichen hier auch 12V aus einem PC-Netzteil, aber dann braucht
das Gerät 5,5 Minuten zum Aufheizen (bei 1,7 A) und der Strom geht
nur auf ca. 1 A zurück. Außerdem sinkt dabei die
Versorgungsspannung für den Ausgangstreiber-OPV deutlich unter die
vorgesehenen 14V.
Einige Versionen sollen auch eine zusätzliche externe
5V-Betriebsspannungbenötigen. Auf meine Geräte traf das nicht
zu, und ich
würde jedem empfehlen, es erst mal ohne zusätzliche 5 V (an
welchem Pin auch immer) zu versuchen. In einigen Geräten dient
diese 5V-Spannung auch nur zum Freischalten des Frequenzausgangs am
Sub-D-9-Verbinder.
Pin 3 (low aktiv) zeigt an, ob die Regelschleife des Elementes
eingerastet ist. Nach dem Einschalten liegt hier erst mal
TTL-High-Pegel. Nach wenigen Minuten (bei mir sind es 2 Minuten) geht
der Pegel auf Low, und die
Ausgangsfrequenz stimmt nun. Solange am Pin3 High ausgegeben wird,
schwankt die Ausgangsspannung noch um mehrere hundert Herz.
Von den anderen Pins
sollte man die Finger lassen, es sei denn man
kennt seine Version des FE5680A sehr genau.
Pin 4 ist bei einigen Versionen ein +5V-Eingang. Die meisten FE5680A
haben aber intern einen Spannungsregler, der die benötigten 5V aus
der 15V-Betriebsspannung erzeugt. Damit entfällt dann die
Notwendigkeit einer zusätzlich einzuspeisenden 5V-Spannung. Bei
einigen Geräten scheint dieser Pin ein TTL-Eingang zu sein, der
das Ausgangssignal freischaltet.
Pin 6 ist bei einigen FE5680A ein 1pps-Ausgang. Hier kommt dann ein positiver 1Hz-Puls mit TTL-Pegel raus. Der Puls ist aber lediglich 1 us breit!
Der Wert im 32-Bit Register wird dadurch immer größer,
bis das Register überläuft. Dann beginnt alles von vorn. Der
Zahlenwert im 32-Bit-Register beschreibt also eine
digitale Sägezahnfunktion.
Die oberen Bits dieses Sägezahns werden laufend einer
Sinus-Look-up-Table zugeführt, an deren Ausgang dann anstelle des
digitalen Sägezahns ein digitaler Sinus vorliegt. Der wird dann
noch mit einem DAC in einen analogen Sinus gewandelt. Der verlässt
dann den AD9830A.
Die Ausgangsfrequenz ist also die Frequenz der Überläufe des
32-Bit Registers. Errechnen kann man diese logischerweise nach
Dabei ist N die Zahl, die im Takt der 50,225 MHz immer wieder auf
das Register addiert wird. Durch eine Veränderung von N wird die
Ausgansgfrequenz eingestellt. Um 10 MHz zu erzeugen, muss
N=215714732944
betragen. Da kommt man schnell an die Genauigkeitsgrenzen des
Taschenrechners. Der genaue Wert für N hängt natürlich
auch von der genauen Frequenz des Physics -Package ab. Das ist ja nicht
genau 50,225MHz, und es ist auch noch bei jedem Gerät verschieden.
Deshalb ist der Wert dieser Frequenz im Microcontroller des DDS-Boards
abgelegt, und kann (bei den meisten Geräten) ausgelesen werden.
Dies ist eine häufig anzutreffende Version des DDS-Boards im
FA5680A.
Das Ausgangssignal steht am Koax-Verbinder J1
(im Bild am linken
Platinenrand, oben, schwarz) zur Verfügung. Es wurde vom AD9830A
erzeugt,
vom LM6182 verstärkt und über einen 68 Ohm-Widerstand an J1
gelegt. Ohne Last liegt der Pegel bei 1,33V p-p.
Wer dieses DDS-Bord in seinem FE5680A findet, kann sich
glücklich schätzen. Es ist weit verbreitet, gut analysiert
und man kann die Ausgangsfrequenz des Bords in weiten Bereichen (0,5
... 20 MHz) via
RS232 einfach einstellen.
Belegung des RS232-Steckverbinders J2, die Pins sind hier von rechts
nach links nummeriert (in anderen Veröffentlichungen werden die
Pins leider von links nach rechts gezählt, also aufpassen), siehe
auch Foto:
Bei geschlossenem Gehäuse ist oberhalb des
RS232-Steckverbinders leider kein Platz, es empfiehlt sich also, die
Buchse aus der Platine zu löten und dort ein RS232-Kabel fest
anzulöten, dass man dann über eine einzubringende
Öffnung durch das Gehäuse führt.
Die Steuerung erfolgt puristisch über ein Terminalprogramm oder
komfortabel über meine Windows-Software Rubicon.
Als unterste nutzbare Ausgangsfrequenz wird im Allgemeinen 0,5 MHz
angegeben. Darunter bricht die Amplitude des Ausgangssignals stark
zusammen. Ursache ist die untere Grenzfrequenz des mit dem LM6182
aufgebauten Verstärkers. Eine deutliche Vergrößerung
des Kondensators links neben Pin 10 des LM6182 soll die untere
Grenzfrequenz deutlich verringern. (Quelle: Duane C. Johnson). Wird
hier ein Elko eingesetzt, dann muss dessen Plus-Pol nach rechts (zum
LM6182) zeigen.
DDS-Platine mit MC68HC711-Microcontroller -
Reengineering
Das Foto zweigt die DDS-Platine mit MC68-Controller. Über
einen 6-poligen Platinensteckverbinder (unten links) gelangt ~50.225MHz
auf die Platine. Der Steckverbinder führt außerdem +5V und
+14V. Ein Gatter des 74AC04 (U406) "treibt" das 50,225MHz-Signal, dann
gelangt es
an den Takteingang des DDS-Chips AD9830A (U407, Pin 7) und den
Takteingang des 74AC161 (U402). Letzterer teilt die Frequenz auf ~5MHz
herunter und erzeugt damit den Arbeitstakt des MC68HC711 (U401, Pin 31,
EXTAL).
Der MC68 steuert den AD9830A mit Hilfe der Schieberegister U408
& U409 (2 x 74HC595). Die Chips bilden zusammen einen
16-Bit-Serial-zu-parallel-Wandler, in die der MC68 jeweils zwei
8-Bit-Worte hineinschiebt,
die dann zusammen parallel in den AD9830A geladen werden. Der MC68
taktet die Daten in den U408, dessen serieller Ausgang geht dann zum
seriellen Eingang des U409. Der U408 speist mit seinen Ausgängen
D7..D0 die Pins DB7 .. DB0 des AD9380A. Der U409 speist folglich DB15
.. DB8.Der serielle Datenstrom aus dem MC68 startet also mit dem
höchstwertigen Bit.
Bei meinem Bord initialisiert der MC68 den AD9830A mit
folgender Sequenz:
Eigentlich wird nur ein Frequenzregister benötigt, und um dieses zu beschreiben braucht man nur 4 Byte bzw. zwei Datenpakete. Hier werden wahrscheinlich beide Frequenzregister beschrieben, und dann wohl noch ein Phasenregister. Da aber zwei mal die selben Daten verwendet werden, ist es eindeutig, welcher Wert in das Phasenregister geschrieben wird. Für die beiden Frequenzregister bleibt dann noch:
Erwartet hatte ich für eine vermutete Ausgangsfrequenz von 2^23
Herz:
Der ermittelte Wert liegt dicht an diesem Ideal, die Abweichung
erklärt sich durch die individuelle Frequenz des physics package.
In diesem Fall ergibt sich ein Frequenz von 50,255 056 581 019 MHz
für das physics package.
Der AD9830 erzeugt daraufhin ~8.38 MHz (wahrscheinlich sind es 2^23
Hz = 8,388608 MHz). Dieses Signal wird mit dem OPV LM6181 (U410)
verstärkt und über 68 Ohm an den Koaxverbinder J1 ausgegeben.
Hat der MC68 Betriebsspannung und Takt, dann blinkt er mit der LED
CR403. Die Resetschaltung für den MC68 befindet sich auf der
Platinenunterseite.
Der RS232-Treiber SP233ACT (U404) dient der Kommunikation mit dem MC68 über den Steckverbinder J2. Leider ist es mir nicht gelungen, den MC68 zur Kommunikation zu bewegen. Er scheint ein anderes Protokoll zu verwenden, als die anderen Versionen der DDS-Schaltung.
Belegung des RS232-Steckverbinders J2
Belegung des Interplatinensteckverbinders (Pin1 ist im Foto unten):
Wer weiteres herausfinden, kann sich gern melden. Insbesondere das
RS232-Protokoll wäre wichtig.
Bei mir ist momentan das
Rubidium-Normal im Einsatz, das mit einer DDS-Platine
auf
PIC16F84-Basis
ausgerüstet ist.
Ich habe es in ein
altes externes Gehäuse für eine SCSCI-2-Festplatte eingebaut.
Alle überflüssigen Steckverbinder an der
Gehäuserückseite wurden entfernt und die Öffnungen
verschlossen. Dadurch bleibt der enthaltene Gehäuselüfter
wirksam. Das enthaltene Schaltnetzteil (12V/5V;3A) habe ich so
modifiziert, dass es
anstelle von 12V immerhin 15,6V liefert. Damit betreibe ich das
Frequenznormal. (an Sub-D-Steckverbinder Pin 1 und 2) Ein frei fliegend verdrahteter npn-Transistor wird vom Pin 3 des Sub-D-Verbinders (Loop_Lock Indikator Ausgang) angesteuert und treibt die rote HDD-LED an der Gehäusevorderseite. Diese leuchtet nun nach dem Einschalten in warnendem Rot, und verlischt nach wenigen Minuten, wenn die Ausgangsfrequenz des Normals stimmt. Am Koaxverbinder J1 der DDS-Platine greife ich das Ausgangssignal ab, und führe es an eine BNC-Buchse an der Gehäusevorderseite. Den dafür hilfreichen Miniaturkoaxstecker mit Kabel bekam ich bei Reichelt. (R302 255 003; MML Pigtail H2.5 Kabel 1.33/50S 20cm) Der RS232-Port des DDS-Platine ist auf einen SUB-D-9-Buchse an der Gehäusevorderseite geführt. Der Netztschalter muss noch von der Rückseite auf die Frontplatte verlegt werden. |