Ein universeller 7-stelliger Frequenzzähler von 1 Hz
bis 1
GHz Für den Elektronikbastler ist ein Frequenzmesser ein wichtiges Messgerät. Hier wird eine einfache und preiswerte Lösung vorgeschlagen. Technische Daten |
|
Achtung: Der Quarz ist ein 20-MHz-Typ - HEX-File und ASM-File
|
Die Schaltung ist eine Kombination des 50
MHz-Frequenzzählers
und des 1-GHz-Frequenzzählers, der um
einen
zusätzlichen Eingang mit einem Vorverstärker ergänzt
wurde. Während die anderen
Frequenzzähler
eigentlich nur Experimente waren, wollte ich nun ein fertiges,
praxistaugliches
Gerät für meinen Bastelkeller fertigen.
Da der Messfehler der Frequenzzählung unterhalb von 6,4 kHz recht
groß wird, schalte ich dann in eine Periodenmessung um, die bei
niedrigen
Frequenzen deutlich kleinere Messfehler hat.
Das Gerät hat drei Frequenzeingänge für jeweils
unterschiedliche
Anwendungen. Es wird jeweils 1 Eingang durch Reed-Relais (wahlweise
durch einen elektronischen Schalter) zum
PIC
zugeschaltet.
Die Auswahl erfolgt durch einen Taster. Nach einem Tastendruck (ca.
1/2
Sekunde
lang) wird zum nächsten Eingang umgeschaltet. Der jeweils aktive
Eingang
wird durch eine LED markiert.
Eingang 1: Amp
Das ist ein universeller Eingang für Frequenzen von 10 kHz bis
50 MHz mit Amplituden ab 30 mV p-p. Niedrigere Frequenzen werden
nur bei höherer Amplitude korrekt gemessen. Für 1 kHz sind
etwa
200 mV p-p nötig.
Das Signal wird mit einem Video-OPV verstärkt, und dann dem PIC
zugeführt. Der Verstärkungsfaktor des OPV ist mit R2 fest auf
100 eingestellt, bricht oberhalb von 100 MHz aber stark ein. Unterhalb
von
10 kHz bricht die Empfindlichkeit durch die kleinen Koppelkondensatoren
stark ein. Eine alternative Schaltung mit einem
schnellen Komparator findet man hier.
Eingang 2: TTL
Das ist ein Eingang für TTL-Impulse. Es können aber auch
größere Eingangspegel angelegt werden. Ein Vorwiderstand und
Schutzdioden leiten zu hohe und negative Spannungen ab. Der Eingang hat
Schmitt-Trigger-Eigenschaften . Der High-Pegel muss +4V
überschreiten
und der Low-Pegel +1V unterschreiten. Der Eingangspegel sollte 44 V
nicht
überschreiten.
Das weicht zwar von der TTL-Spezifikation etwas ab, sollte aber in der
Praxis keine Probleme bereiten. Der Eingang hat einen internen
pull-up-Widerstand von ca. 25 kOhm, um ein Schwingen bei offenem
Eingang zu verhindern. Die Signalquelle sollte also einen
Ausgangswiderstand von deutlich weniger als 5 kOhm haben, um einen
sauberen low-Pegel (< 1 V) erzeugen zu können.
Der Frequenzbereich geht von ca. 0,7 Hz bis 50 MHz, ist aber in der
Software im Normalbetrieb auf 5 Hz Minimalfrequenz limitiert. Für
tiefere Frequenzen muss man den Präzisionsmode
aktivieren.
Eingang 3: 64:1 oder 40:1
Dieser Eingang hat den HF-Vorteiler mit U664, der auch im 1-GHz-Zähler
verwendet wird. Seine Eingangsempfindlichkeit ist etwa 10 mV. Der
Eingangspegel
sollte 9V nicht überschreiten.
Es fällt auf, dass der U664B bei zu geringer Eingangsfrequenz
auf ein kleineres Teilungsverhältnis 'umschaltet'. Bei 10 MHz
teilte
er nur im Verhältnis 4:1, bei 20 MHz im Verhältnis 8:1.
Bei 50 MHz funktionierte er dagegen korrekt (64:1). Um Fehlmessungen zu
vermeiden, sollte sichergestellt sein, dass man eine ausreichend
hohe
Eingangsfrequenz (wenigstens 30 MHz) hat.
Der Aufbau eines 1-GHz-Vorteilers auf einer einseitigen Platine
zusammen
mit allen möglichen anderen Baugruppen lässt einem
HF-Spezialisten
natürlich alle Haare zu Berge steigen. Ein wirklich stabiler
Betrieb
ist so nicht zu erreichen. Ohne Eingangssignal lässt der U664
seiner Phantasie freien Lauf und schwingt fröhlich vor sich hin.
Die
Empfindlichkeit der Eingangs wird sehr frequenzabhängig sein, und
unter den Möglichkeiten des U664 bleiben.
Vielleicht baue ich später mal einen separate HF-taugliche
Vorteiler
Box mit zweiseitig kaschiertem Leiterplattenmaterial und
SMD-Bausteinen.
Anstelle eines 64:1-Vorteilers kann auch ein 40:1-Vorteiler verwendet werden. In
diesem Falle ist das Pin 4 (MCLR) des PIC16F628 mit Masse (Vcc) zu
verbinden und R6 zu entfernen. Der Mikrocontroller berücksichtigt
dann das andere Vorteilerverhältnis automatisch in seinen
Berechnungen.
Die Umschaltung zwischen den Eingängen erfolgt durch kurzes (<1s) Drücken des Tasters. Die Umschaltung erkennt man am Umschalten der LEDs (die den jeweils aktiven Eingang markieren) wie auch am LCD. Am Anfang der 2. LCD-Zeile wird der jeweils aktive Eingang angezeigt:
In der rechten Hälfte der 2. LCD-Zeile wird die Anzeigegenauigkeit angegeben. Da die Anzeige bis zu 10 Stellen lang sein kann, die eigentliche Messung aber maximal 7 Stellen genau ist, dient dieser Wert der Abschätzung der Genauigkeit der angezeigten Messwerte.
Frequenzen
über 6,3 kHz werden mit der
Frequenzzählmethode gemessen, Frequenzen darunter mit der
Periodenlängenmessung.
Der Messwert wird etwa alle 500 ms aktualisiert.
Präzisionsmode-2s:
Wird der Taster länger als 1 Sekunden gedrückt, dann wird
nicht der Eingang umgeschaltet, sondern der Präzisionsmode-2s
eingeschaltet. Das erkennt man am zweifachen Flackern der
Eingangs-LED.
Im Präzisionsmode-2s ist die Messgenauigkeit der
Frequenzzählmethode (>6,3 kHz) vier mal höher
als im Standardmode. Allerdings wird dadurch der Messwert auch nur etwa
alle 2 Sekunden aktualisiert. Die Genauigkeit der
Periodenlängenmessung erhöht sich im Präzisionsmode
nicht, aber es können dann auch extrem niedrige Frequenzen bis
hinab zu 0,6 Hz gemessen werden. (Im Normalmode nur hinab bis 4,8 Hz.)
Um den aktiven Präzisionsmode-2s zu
kennzeichnen, wird dem Messwert im Display ein '*' vorangestellt.
Präzisionsmode-4s:
Wird der Taster länger als 2 Sekunden gedrückt, dann wird in
einen Präzisionsmode-4s mit noch einmal verdoppelter
Frequenzzählgenauigkeit geschaltet. Das erkennt man dann am
vierfachen Flackern der
Eingangs-LED. Allerdings wird dadurch der Messwert auch nur etwa
alle 4 Sekunden aktualisiert. Die Periodenlängenmessung entspricht
der vom Präzisionsmode-2s.
Um den aktiven Präzisionsmode-4s zu
kennzeichnen, wird dem Messwert im Display ein '#' vorangestellt.
Für die meisten Frequenzen eignet sich das Prinzip des
Frequenzzählers
am besten. Da die Messauflösung (im Normalmode) aber nur 2 Hz
beträgt,
ist
bei niedrigen Frequenzen der Fehler der Messung recht hoch. Ab 200 Hz
liegt
der Fehler unter 1%. Ab 4 MHz liegt der Anzeigefehler bei unter
0,00005%.
Die Messgenauigkeit wird dann von der Quarzgenauigkeit begrenzt.
Um auch bei niedrigen Frequenzen eine bessere Auflösung zu
erreichen,
wird unterhalb von 6,4 kHz eine Periodenlängenmessung
durchgeführt.
Deren Messfehler liegt bei 6,3 kHz bei 315 ppm (0,0315 %) und
sinkt mit
der
Frequenz drastisch.
Theorie der Zähl-Frequenzmessung
Die Grundlagen der Zähl-Frequenzmessung mit dieser Schaltung
wurden
bereits im Zusammenhang mit dem 50-MHz-Frequenzzähler
und dem 1-GHz-Frequenzzähler
erläutert.
Prinzipbedingt steigt die Messgenauigkeit mit der Frequenz. Bei
einem kalibrierten Zähl-Frequenzmesser liegt er ab 100 kHz unter
20
ppm (0,002 %).
Bei nur 10 kHz liegt der Fahler bei 200 ppm (0,02%), was oft noch
ausreichend
ist.
Für Frequenzen unter 200 Hz läge der Fehler im %-Bereich, das
wäre nicht akzeptabel.
Alternative für tiefe Frequenzen: Periodenlängenmessung
Ein Frequenzmesser nach obigem Prinzip, arbeitet nur bei hohen
Frequenzen
genau. Für Frequenzen unterhalb von 6,4 kHz bietet sich alternativ
die
Periodenlängenmessung an. Dafür wird aber ein CCP-Kanal
benötigt.
Der PIC16F628 hat den nötigen
CCP-Kanal,
und eignet sich deshalb für die Periodenlängenmessung.
Es wird die Dauer einer Schwingung der unbekannten Eingangsfrequenz gemessen. Dazu betreibt man das CCP-Module im Capture-Mode und lässt man den Timer1 einen Takt von 5 MHz zählen. Wird am Eingang ein low-high-Übergang festgestellt, wird der Timer1 auf 0 gesetzt. Das Capture-Module ist so eingestellt, dass es bei jedem 4. low-high-Übergang den Stand des Timers1 in das Capture-Register kopiert. Damit steht im Capture-Register die Anzahl der Timer1-Takte, die der Länge von 4 Perioden der unbekannten Eingangsfrequenz entsprechen.
Da der Timer1 nur 16-bittig ist, würde er schon nach ca. 13 ms
überlaufen,
und die niedrigste messbare Frequenz wäre 305 Hz. Werden aber die
Timer1-Überläufe in einem 9-Bit-Register mitgezählt,
dann hat
man einen 25-Bit Zähler, der erst nach 6,7 Sekunden
überläuft.
Damit lassen sich Frequenzen bis hinab zu 0,6 Hz messen. Die
Gesamtlänge
der 4 Perioden wird mit 0,2 µs Genauigkeit gemessen. Folglich
wird
eine Periode mit 0,05 µs Genauigkeit gemessen.
Für eine Eingangsfrequenz von 2 Hz ergibt sich die illusorische
Genauigkeit von 0,1 ppm. Der Quarzfehler ist also hier das Limit
(>10 ppm).
Der prinzipielle Messfehler ist aber proportional zur Frequenz. Mit
steigender
Frequenz sinkt die Genauigkeit:
Bis ca. 6,3 kHz ist die Periodenlängenmessung der Frequenzzählmethode also überlegen, darüber kehrt sich das Blatt um. |
Um aus dem Messergebnis die Frequenz zu errechnen, geht man wie folgt vor
Ich verwende eine primitive Ganzzahldivision (mit Rest) um
zunächst
den ganzzahligen Frequenzwert zu erhalten. Den Rest der Division
multipliziere
ich mit 1000 und dividiere ihn dann noch einmal durch den Messwert.
Damit
erhalte ich drei Nachkommastellen.
Liegt die Eingangsfrequenz unter 64 Hz, dann wird auch der Rest der
zweiten Division mit 1000 multipliziert und das Multiplikationsergebnis
noch mal durch den Messwert dividiert. Das ergibt zusätzliche 3
Nachkommastellen, so dass die Frequenz dann mit zwei Vorkommastellen
und 6 Nachkommastellen angezeigt wird. Das übertrifft in jedem
Fall
die
Messgenauigkeit.
Das Platinenlayout ist einseitig, und hat das Format 75 mm x 100 mm.
Es sind drei Drahtbrücken nötig, von denen eine auf der
Leiterseite
anzubringen ist (IC1 Pin3-Pin9).
Die Stromversorgungseingangsbuchse ist nicht nötig, es können
natürlich Drähte direkt angelötet werden.
Als Relais müssen 5V/500Ohm-Typen mit interner Diode verwendet
werden. (z.B.: Meder DIP05-1A72-12D)
Relais mit niedrigerem Innenwiderstand sind nicht geeignet.
Die LEDs sind low-current-Typen. Diese sind über den Messbuchsen
zu montieren.
An LSP8 & LSP7 ist ein Drucktaster anzubringen.
Vorsicht: Der 10-Pin-Display-Anschluss auf der Platine kann nicht
1:1 mit dem Display verbunden werden. Die Pins 7,8,9,10 sind mitr den
Pins 11,12,13,14 zu verbinden. Am Display bleiben die Pins 7,8,9,10
frei.
Platine anfertigen und bestücken mit Ausnahme folgender
Teile:
- Schaltkreis PIC16F628 (IC1)
- Schaltkreis U664
- Schaltkreis NE592 (IC2)
- Transistor BC328 (Q2)
- Widerstand R12 220 Ohm
Für den PIC16F628 und den NE592 sind IC-Fassungen einzulöten.
Den Stromversorgungseingang X1 mit AC oder DC mit einer Spannung von 15 .. 25 V verbinden. Die Spannung am out-Pin des 7805 muss nun 5V betragen, und die am out-Pin des 7812 sollte bei 12V liegen. Abweichungen sollten kleiner als 5% sein. Die Betriebsspannung entfernen.
Das LCD-Display mit einem Kabel anstecken. Die Betriebsspannung wieder anlegen. Den Kontrastregler R9 (10k) so einstellen, das im Display deutlich dunkle Vierecke zu erkennen sind. Die Betriebsspannung entfernen.
Nun den U664 einlöten und den PIC16F628 sowie den NE592 in die
IC-Fassungen stecken. Die LEDs und den Taster anschließen.
Die Betriebsspannung wieder anlegen.
Die LED 1 leuchtet auf.
Das LCD zeigt kurz "HALLO".
Danach zeigt es "0 Hz / Amp. + 2 Hz", wobei hier der
Schrägstrich
den Beginn der 2. Displayzeile symbolisiert.
Im 2-Hz-Rhythmus wechselt das "+" in der 2. Zeile mit einem "-", das
sieht
dann
aus
wie
ein
"+"
mit
etwas
blassem
vertikalen
Strich,
da
das
träge
LCD-Display nicht mit 2 Hz schalten kann.
Den Taster drücken bis LED 1 verlischt und LED 2 aufleuchtet
(ca.
0,5 s lang).
Das LCD zeigt "0 Hz / TTL + 2 Hz". Im 2-Hz-Rhythmus wechselt das
"+" in der 2. Zeile mit einem "-".
Den Taster drücken bis LED 2 verlischt und LED 3 aufleuchtet
(ca.
0,5 s lang).
Das LCD zeigt "0 Hz / 64:1 + 128 Hz". Im 2-Hz-Rhythmus wechselt
das "+" in der 2. Zeile mit einem "-".
Die Betriebsspannung entfernen.
Den Transistor BC328 (Q2) und den Widerstand R12 220 Ohm noch
nicht
einlöten.
Um die Funktionstüchtigkeit des fertig aufgebauten
Frequenzzählers
zu prüfen, lässt man ihn seine eigene Quarzfrequenz
messen.
++HINWEIS++
Eine ältere Version dieses
Zählers wurde noch mit einem 10 MHz Quarz betrieben. Damit
funktionierte der nachfolgende Test problemlos. Inzwischen wird aber
ein 20 MHz Quarz verwendet. Damit ist der Signalpegel am
Takt-Ausgangs-Pin OSC2 (Pin 15) so klein, dass der Test nicht bei allen
Zählern funktioniert. Sollte das der Fall sein, dann sollte man
für den Funktionstest den 20 MHz-Quarz gegen einen 10 MHz Quarz
austauschen. Dann funktioniert dieser Funktionstest (und er zeigt auch
20 000 000 Hz an). Nach Abschluss des Funktionstests muss dann vor der
Kalibrierung wieder der 20 MHz Quarz eingelötet werden.
Die Betriebsspannung wieder anlegen. LED 1 leuchtet auf.
Den Eingang Amp mit dem Taktausgang des PIC OSC2 (Pin
15) verbinden.
Das LCD zeigt "20 000 000 Hz / Amp. + 16 Hz". Im 2-Hz-Rhythmus
wechselt das "+" in der 2. Zeile mit einem "-".
Den Eingang 1 vom Pin 15 des PIC trennen.
Den Taster drücken bis LED 1 verlischt und LED 2 aufleuchtet
(ca.
0,5 s lang).
Den Eingang TTL mit dem Taktausgang des PIC OSC2 (Pin
15) verbinden.
Das LCD zeigt "20 000 000 Hz / TTL + 16 Hz". Im 2-Hz-Rhythmus
wechselt das "+" in der 2. Zeile mit einem "-".
Den Eingang 2 vom Pin 15 des PIC trennen.
Den Taster drücken bis LED 2 verlischt und LED 3 aufleuchtet
(ca.
0,5 s lang).
Pin 1 oder 14 des Relais K3 (oder Pin 3 des PIC) mit dem Taktausgang
des PIC OSC2 (Pin 15) verbinden.
Das LCD zeigt "1 280 000 000 Hz /64:1 + 1024 Hz". Im
2-Hz-Rhythmus
wechselt das "+" in der 2. Zeile mit einem "-".
Das Relaispin (bzw. Pin 3 des PIC) vom Pin 15 des PIC trennen.
Die Betriebsspannung entfernen.
Den Transistor BC328 (Q2) und den Widerstand R12 220 Ohm einlöten.
Damit ist die Funktionsfähigkeit des Frequenzzählers (ohne 64:1-Vorteiler) erwiesen. Zum Test des Vorteilers benötigt man eine Frequenz von mindestens 50 MHz (z.B. Quarzoszillator), die zur Messung mit dem Eingang des Vorteilers verbunden wird. Die angezeigte Frequenz kann dabei um 0,005% von der wirklichen Eingangsfrequenz abweichen, solange der Frequenzzähler nicht kalibriert ist.
Ohne Kalibrierung erreicht der Zähler eine Genauigkeit von ca
0,005%.
Die Frequenzabweichungen werden durch eine Abweichung der Quarzfrequenz
von den gewünschten 20 MHz verursacht (ohne spezielle
Maßnahmen
ca. 50 ppm). Sinnvoll wäre der Einsatz eines TCXO (temperature
compensated crystal oscillator) oder TCVXCO (temperature compensated
voltage controlled crystal oscillator)
anstelle eines
einfachen Quarzes. Diese sind aber in den typischen Bastlerläden
(noch)
nicht erhältlich. Deshalb werden sich viele mit einem Quarz
begnügen.
Der Quarz muss mit dem Trimmkondensator C10
abgeglichen
("gezogen") werden. Ohne Abgleich wäre der angezeigte Frequenzwert
etwa 0,005% ungenau.
Ich stelle hier vier mögliche Kalibrierverfahren vor:
Variante 1: mit Referenzfrequenzquelle
Wer das Glück hat, auf eine Referenzfrequenzquelle (z.B.
kalibrierter
Oszillator) mit einer Frequenz zwischen 2 MHz und 50 MHz
zugreifen
zu können, kann diese Methode benutzen.
Der Frequenzzähler wird an die Referenzfrequenzquelle
angeschlossen und in den Präzisionsmode4s geschaltet. Durch
Verstellen des Trimm-Kondensators wird die angezeigte Frequenz der
Referenzfrequenz angeglichen. Die Referenzfrequenz sollte mindestens 2
MHz betragen, damit der Messfehler nicht durch die
Anzeigeungenauigkeit
kaschiert wird. Andererseits sollte die Frequenz nicht über
50 MHz liegen, und man sollte den Eingang Amp bzw. Eingang TTL
benutzen.
Der zulässige Anzeigefehler ist je nach Messbereich 1 Hz (bei f < 16 MHz) bis 4 Hz (bei f > 32 MHz) und wird in der 2. LCD-Zeile angegeben.
Danach sollte der Messfehler im gesamten Frequenzbereich auf
0,001%
(10 ppm) reduziert sein. Höhere Genauigkeiten lassen sich nur noch
mit einem Termostat erreichen, der den Quarz auf einer konstanten
Temperatur
hält.
Normale Quarze oder Quarzoszillatoren ohne Kalibrierung eignen sich
nicht als Lieferant für eine Referenzfrequenz, da sie zu ungenau
sind!
Variante 2: die 1 Hz-Methode
Das ist eigentlich eine
Version der Variante 1. Einige GPS-Module
besitzen einen hochgenauen 1-Hz-Ausgang. Man verbindet diesen mit dem
TTL-Eingang des Frequenzmessers, und misst die Frequenz. Es ist der
Präzisionsmode2s zu aktivieren. Der Frequenzmesser verwendet die
Pulslängenmethode und zeigt das
Messergebnis mit 6 Nachkommastellen an. Die Anzeige wird etwa alle 4
Sekunden aktualisiert.
Durch Verstellen des
Trimm-Kondensators wird die angezeigte Frequenz
der
Referenzfrequenz soweit angeglichen, bis nur noch die vorletzte Stelle
abweicht (0,999 9xx Hz ... 1,000 0xx Hz).
Variante 3: die Uhrenmethode
Wer (wie die Meisten) keine präzise Referenzfrequenz zur
Verfügung
hat, kann wie hier beschrieben
vorgehen. Die dazu nötige Uhrensoftware ist Bestandteil der
Frequenzzählersoftware.
Der Frequenzzähler wird bei gedrückter Taste eingeschaltet.
Im Display erscheint die Uhrzeit "00:00:00", und die angezeigte Zeit
fängt
an, im Sekundenrythmus zu laufen. Jeder weitere Druck auf die Taste
setzt
die Zeit auf "00:00:00" zurück.
Genau zur vollen Stunde (nach der Fernseh-Uhr des analogen
Fernsehens
oder dem Zeitzeichen im Radio) wird die Null-Taste gedrückt. Die
Uhr
startet mit "00:00:00". Nach 24-Stunden wird festgestellt, ob die Uhr
mehr
als 1 Sekunde vor oder nach geht. Ist das der Fall, wird der
Trimmkondensator
verändert, und die Uhr zur vollen Stunde wieder auf "00:00:00"
gesetzt.
Eine vergrößerte Kapazität bremst eine zu schnell
laufende
Uhr, eine verkleinerte Kapazität beschleunigt eine zu langsame
Uhr.
Eine Veränderung des Trimmkondensators um 1 pF bewirkt eine
Gangänderung
von ca. 0,25 Sekunden pro Tag. Nach einigen Tagen sollte man eine
Trimmerstellung
gefunden haben, bei der die Uhr genau läuft.
(Wer nur noch digitalen Empfang hat, der kann auch auf eine Funkuhr
zurückgreifen. Dann sollte der Abgleich aber mindestens über
zwei Wochen erfolgen, da Funkuhren sich oft nur ein mal in 24 Stunden
mit dem Zeitsender abgleichen.)
Ein Gangfehler von 1 Sekunde am Tag entspricht einem Frequenzfehler
von 12 ppm (0,0012%). Eine höhere Genauigkeit ist ohne Thermostat
nicht
sicher zu erreichen.
Als ich meinen so kalibrierten Frequenzmesser mit einer hochgenauen
10-MHz-Referenzfrequenz vergleichen konnte, stellte ich einen
Messfehler von nur 25 Hz fest. Das entspricht <3 ppm.
Nun wird der Frequenzmesser ausgeschaltet und wieder eingeschaltet,
um die Frequenzmesssoftware zu starten.
Variante 4: die DCF77-Methode Für diese Methode benötigt man ein DCF77-Empfangsmodul aus einem Funkwecker. Sein Ausgangssignal wird auf TTL-Pegel verstärkt und mit der TTL-Eingangsbuchse des Frequenzmessers verbunden. Die positiven Pulse vom Ausgang des DCF-Moduls müssen auch am Ausgang des Verstärkers positive Pulse sein! Die nebenstehende Schaltung zeigt eine solche Taktquelle. Die linke LED dient nur als Z-Diode für die Betriebsspannung des DCF-Moduls (ca. 1,8 V). Die rechte LED sollte im Betrieb im Sekundenrythmus aufblitzen. Die Antenne muss horizontal liegen, und zeigt mit ihrer Breitseite in Richtung Frankfurt/Main. Der Frequenzmesser wird bei gedrückter Taste eingeschaltet, er geht in den Uhrenmode. (siehe Variante 3). Nun drückt man die Taste noch einmal so lange, bis die LED des TTL-Eingangs aufleuchtet (ca. 5 Sekunden lang). Die Uhr bleibt stehen und in der zweiten Dsplayzeile erscheint "DCF77 wait". In der hinteren Hälfte der ersten Zeile erscheint 'P' mit einer darauf folgenden Nummer, die sekündlich incrementiert wird. Nach ca. 1 Minute erscheint anstelle der Uhrzeit 'Wait 8min'. Vorab: Aufgrund des Jitters im DCF-Modul-Ausgangssignals ist die Genauigkeit dieser Methode beschränkt, aber sie ist immer noch ausreichend genau und dabei deutlich schneller als die Uhrenmethode. Man sollte während der Kalibrierung auf eine gutes DCF77-Signal achten. Zur Einschätzung der Signalqualität kann man den Pulszähler (hintere Hälfte der ersten LCD-Zeile) heranziehen. Im Idealfall verhält er sich wie die Sekundenanzeige einer Funkuhr und zählt von 0 bis 58. Eine 59 wird nicht angezeigt, sondern in diesem Moment der Messfehler berechnet. Danach geht es wieder mit 0 los. Bei schlechtem DCF77-Signal zählt der Pulszähler deutlich mehr als 58 Pulse. Der Frequenzmesser überwacht das auch, und zeigt hinter dem Fehlerwert am Ende der zweiten Displayzeile ein "#" an, wenn das Signal brauchbar ist. Das DCF-Modul reagiert sehr schlecht auf Leitungen direkt an der Antenne oder in ihrer unmittelbaren Umgebung. Signalführende Leitungen (wie z.B. Netzkabel) dürfen sich auf keinem Fall in der unmittelbaren Nähe der Feritantenne befinden. Die Einstellung erfolgt in 2 Stufen. 1. Stufe: Grobeinstellung Der Frequenzmesser zählt die Pulse des DCF-Moduls. Eine laufende Pulsnummer wird im hinteren Teil der ersten Zeile angezeigt. Der Frequenzmesser wertet nun das DCF77- Signal aus, und vergleicht es mit dem internen Takt des Frequenzmessers. Nach etwa 2 Minuten sollte in der zweiten Zeile des Displays ein Zahlenwert angezeigt werden, der dann alle 60 Sekunden aktualisiert wird. Diese Zahl gibt den momentanen Fehler des Gerätes zuzüglich des DCF-77-Jitters mit einer Auflösung von 0,026 ppm an. Durch vorsichtiges Verstellen des Trimmkondensators in kleinsten Schritten sollte dieser Wert auf weniger als ±1000 (= 25 ppm) eingestellt werden. Eine genauere Einstellung ist aufgrund des Jitters im DCF77-Signal nicht möglich. Durch den Jitter schwankt der Wert von Minute zu Minute durchaus um mehrere Hundert, gelegentlich sogar um 1000. Nach jeder Korrektur muss dann 2 Minuten gewartet werden, bis der angezeigte Fehler wieder aktuell ist. Das Vorzeichen des Fehlers (Am Anfang der zweiten Zeile) hilft bei der Ferstlegung der Korrekturrichtung am Trimmkondensator. Ist das erledigt, dann geht man zur 2. Stufe über. Sollte der Messwert um mehrere Tausend schwanken, dann ist der Empfang schlecht, und die Kalibrierung kann nicht durchgeführt werden. |
Grenzen
Da der Quarz thermisch nicht stabilisiert ist, ändert sich seine
Frequenz mit der Umgebungstemperatur. Schon die minimale Erwärmung
in meinem geschlossenen Gehäuse (durch den Spannungsregler 7805)
führt zu einer Messwertänderung von 1,5 ppm. (16 Hz bei 10
MHz)
Das harmonisiert recht gut mit dem Normalmode des Gerätes.
Verwendet man aber den Präzisionsmode, dann
muss
man
sich
der
Tatsache
bewusst
sein,
dass
der
angezeigte
Messfehler
wahrscheinlich
durch
den
Quarz
korrumpiert
wird.
Mein Gerät benötigt an seinem festen Standplatz etwa 2
Stunden Aufwärmzeit, um bei 10 MHz
mit einen Fehler von 1 Hz (0,1 ppm) zu arbeiten. Dann führt aber
schon der Wechsel des Standortes innerhalb des Raumes zu einem Fehler
von bis zu 1 ppm, da
sich dabei die Temperatur im Gehäuse wieder ändern kann.
Einen
Fehler von weniger als 2 ppm halte ich deshalb nicht für sicher
beherrschbar.
Der Frequenzmesser ist aufgebaut und
funktioniert zufriedenstellend.
Die obere Grenzfrequenz des 1-GHz-Vorteilers konnte ich mangels
geeigneter
HF-Quellen nicht austesten, ich erwarte aber nur einige hundert MHz
(aufgrund
des nicht HF-gerechten Aufbaus).
Das nebenstehende Foto zeigt den Frequenzmesser (oberes
Gerät)
angeschlossen an meinen 20-MHz-DDS-Frequenzgenerator.
Dessen
Ausgangssignal
ist
10
MHz
bei
1V
p-p.
Am
Frequenzmesser
benutze
ich
den
Amp-Eingang. Am 10-MHz-OCXO ist nach mehrstündigem Aufwärmen auch
der Messwert 10 000 000 Hz bei einer Auflösung von 1 Hz dauerhaft
stabil, aber dazu habe ich mich oben schon
geäußert. |
Die Eingangsbeschaltung für den 64:1-Vorteiler ist noch nicht
optimal.
Um deutlich über 200 MHz zu kommen, müsste der
Vorteiler
HF-tauglich aufgebaut werden. Dazu gehört Schirmung und die
Nutzung
von SMD-Bauteilen.
Ein schnellerer Vorteiler ermöglicht ein Vordringen in das S-Band
bis zu 4,29 GHz..
Ein MB506 von Fujitsu ermöglicht z.B. 2,4 GHz. Er erfordert aber
leider eine Softwareänderung, da er ein 128:1 Teiler ist.
Der U664 ist nicht mehr leicht zu beschaffen. Als Alternative bietet
sich der U813BS
SI
an, der bei Reichelt für 1,15 Euro zu bekommen ist
(Stand Oktober 2015). Er erfordert keine Anpassung des
Platinenlayouts oder der Software, und ist deshalb der ideale
Ersatztyp. (Danke für den Tip - Olli)
Ein verbesserter Verstärker am "Amp"-Eingang
könnte auch
für niedrigere Frequenzen geeignet sein.
Ein Nachbauer stellte mir folgende Schaltung zur Verfügung, die
die drei Relais durch einen
elektronischen Schalter ersetzt. Der verwendete 74HC151 dürfte
aber für diese Anwendung zu langsam sein. Man sollte einen
74AC(T)151 verwenden. Außerdem müssten dem schwer zu
beschaffenden 74AC151noch 74AC04 als Schmitt-Trigger vorgeschaltet
werden.
Zur besseren Abstimmung des Quarzes sollte ein einstellbarer 30pF
Trimmkondensator parallel zum
Quarz
eingebaut
werden.
Tipp von Rudolf:
Noch ein Hinweis zu dem NE592 Vorverstärker. Um die Offset
Spannung am Ausgang zu minimieren, sollte in beiden Eingängen der
gleiche Bias-Widerstand (1 KOhm) sein. Nach Datenblatt gibt es typisch
9 uA Bias-Strom, mal 1 KOhm sind 9 mV. Mal Verstärkung 100 sind es
dann am Ausgang 0,9 V. Die Max. Spezifikation schreibt 30 uA, dann
wären es schon 3 V.
Das Display muss aber ein Typ für den normalen Temperaturbereich (nur von 0°C bis 50°C) sein, da der Frequenzmesser keine negative Kontrastspannung bereitstellt.
In vielen Laboren und wohl auch
in einigen Bastlerlaboren gibt es einen zentral erzeugten, genauen
Masterclock, mit dem alle Geräte synchronisiert werden. Das ist in
der Regel ein hochgenauer 10MHz-Takt, der via Koaxialkabel und
BNC-Steckverbindern allen Geräten zur Verfügung gestellt
wird. (Der Pegel ist typischerweise 10 dBm, was an 50 Ohm etwa 0,7 V
entspricht.) Frühere Versionen dieses Frequenzmessers hatten einen 10-MHz-Quarz als PIC-Taktquelle. Dadurch ließen sie sich recht leicht für die Speisung mit einem externen 10 MHz Referenztakt modifizieren. Inzwischen betreibe ich den Frequenzzähler aber mit 20 MHz. Die Lösung ist die Erzeugung eines 20-MHz-Taktes aus dem externen hochstabilen externen 10-MHz-Referenztakt. Meine Schaltung dafür besteht aus drei einfachen IC. Ein LTC1485 wandelt den externen 10-MHz-Takt in einen Takt mit TTL-Pegel. Ein langsamer 74LS04 dient dann als Verzögerungsleitung für diesen Takt. Erfahrungsgemäß beträgt die Gatterlaufzeit bei einem 74LS04 etwa 6 ns. Mit zwei Gattern eines 7400 erzeuge ich nun zwei phasenverschobene 10-MHz-Takte. Beide sind unsymmetrisch. Der Low-Teil dieser Takte ist ~20 ns lang, und der High Teil ~80 ns. Die Phasenverschiebung beider Takte untereinander beträgt 45 ns (gemessen) oder 162°. (Ideal wären 50 ns.) Ein weiteres 7400-Gatter fasst beide Takte zu einem 20 MHz Takt zusammen. Hier sollte ein schneller Typ wie der 74HCT00 verwendet werden. Die verschiedenen 74-er Familien haben unterschiedliche Gatterlaufzeiten. Aus diesem Grunde ist unbedingt ein 74LS04 für die Verzögerungsleitung zu verwenden. Vertreter andere 74er-Familien sind zu schnell. Der 74LS04 hat zwar eine nominelle Gatterlaufzeit von 10ns, in der Praxis sind es aber normalerweise nur 6 ns. Bei mir versieht ein DL004 aus DDR-Altbeständen seinen Dienst :) |
|
Das nebenstehende Diagramm zeigt
das Ergebnis.
Der erzeugte 20-MHz-Takt ist zwar nicht perfekt symmetrisch, reicht für den Zweck aber aus. Auf jeden Fall ist er phasenstarr zum 10-MHz-Referenztakt, und durch die PIC-interne 4:1-Teilung verschwindet dann auch die leichte Asymmetrie wieder. Der Frequenzzähler wird ohne den Quarz Q1 sowie den Kondensatoren C10 und C15 aufgebaut. Der 20-MHz-Takt wird am PIC16F628 am Pin 16 (OSC1) eingespeist. Link zum Projekt |
Autor: sprut
erstellt: 12.12.2005
letzte Änderung: 10.07.2015