Forum: Mikrocontroller und Digitale Elektronik DCF77 Grundsatzfrage: Phasengleichheit ?


von UBoot-Stocki (Gast)


Lesenswert?

Guten Morgen,

ich versuche folgendes zu verstehen, vielleicht hat jemand einen Tipp 
für mich ...:

Der Aufbau des DCF-Signals ist mir klar. Woher weis ich aber genau, 
dass eine Sekunde beginnt? Der Counter in meiner Uhr fängt zu einem 
beliebigen Zeitpunkt an zu zählen. Das Stellen der Uhr (über DCF77) ist 
aber nicht mit dem Sekundenbeginn in Mainflingen synchronisiert. Dies 
führt zu einer Zeitverschiebung von <1s meiner Uhr.

Kann der Sekundenbeginn in der Uhr überhaupt mit dem 
DCF-Signal-Sekundenbeginn synchronisiert d.h. in Phase gebracht werden?

Das Signal hat ja auch eine Laufzeit, die wahrscheinlich auch noch 
schwankt. d.h. Kann ich überhaupt davon ausgehen, dass z.B. der 5.2.2009 
7:58:00 exakt 86400,000000 Sekunden nach dem 4.2.2009 7:58:00 kommt???

Oder habe ich immer einen Fehler durch die Laufzeit des DCF-Signals?

Damit stellt sich zusätzlich die Frage ob das DCF Signal überhaupt taugt 
z.B. einen Zähler zu kalibrieren ???

Gruß

Andreas

von Sumynona (Gast)


Lesenswert?

Hallo


> Woher weis ich aber genau, dass eine Sekunde beginnt?

Eine Sekunde beginnt immer mit der Flanke am Anfang eines Impulses vom 
Sender (steigende oder fallende Flanke, je nach Bedrahtung auf deiner 
Platine)

> Der Counter in meiner Uhr fängt zu einem beliebigen Zeitpunkt
> an zu zählen. Das Stellen der Uhr (über DCF77) ist aber nicht
> mit dem Sekundenbeginn in Mainflingen synchronisiert. Dies
> führt zu einer Zeitverschiebung von <1s meiner Uhr.

Affirmative.

> Kann der Sekundenbeginn in der Uhr überhaupt mit dem
> DCF-Signal-Sekundenbeginn synchronisiert d.h.
> in Phase gebracht werden?

Du kannst immer auf den Anfang des DCF-Impulses triggern. Dann hinkst du 
zwar paar Prozessortakte hinterher (zb. beim Interrupt) was sich aber 
durch eine einfache Subtraktion (Offset) korrigieren lässt

> Das Signal hat ja auch eine Laufzeit, die wahrscheinlich
> auch noch schwankt. d.h. Kann ich überhaupt davon
> ausgehen, dass z.B. der 5.2.2009 7:58:00 exakt
> 86400,000000 Sekunden nach dem 4.2.2009 7:58:00 kommt???
Geh davon aus, dass du die Signallaufzeit vernachlässigen kannst. Die 
ist zwar vorhanden aber ziemlich konstant.
Wie hoch der Fehler der Atomuhr des DCF ist weiß ich aber nicht im Kopf, 
vielleicht steht das ja irgendwo auf der Seite der PTB

> Damit stellt sich zusätzlich die Frage ob das DCF Signal
> überhaupt taugt z.B. einen Zähler zu kalibrieren ???

Hängt davon ab, wie genau dein Zähler sein soll. Geh mal davon aus, dass 
ein Taktquarz oder Quarzoszillator wesentlich ungenauer als der DCF77 
Sender ist...

von Dennis U. (atmegadennis)


Lesenswert?

Hallo,

zum Thema Genauigkeit des DCF77 Signals:

Betrachtet man die dekodierte Sekundenmarke, so kann diese bei der 
üblichen Auswertetechnik zwischen +5 bis +150 msec von der absoluten 
Sekundenmarke abweichen. Abhängig ist dies in erster Linie von der 
Antenne sowie von den eingesetzten Signalfiltern und der 
Signalgleichrichtung. Es werden zur Störunterdrückung schmalbandige 
Antennen sowie sehr schmalbandige Quarzfilter eingesetzt. Dies hat bei 
der Signalabsenkung eine lange Ausschwingzeit zur Folge. Die zur 
Impulsgewinnung eingesetzte Gleichrichtung verzögert diese Flanke noch 
weiter.

Weitere Ungenauigkeiten können durch die Laufzeiten vom Sender zum 
Empfänger auftreten. Bei konstanter Entfernung kann bei reinem 
Bodenwellen-Empfang eine Konstante eingerechnet werden. Von der 
Empfangsseite nicht zu beeinflussen sind zeitliche Schwankungen bei 
reinem Raumwellenempfang. Durch die Höhenvariation der als spiegelnde 
oder beugende Schicht der Ionosphäre gehen Höhenschwankungen voll in die 
Zeitschwankungen ein. ähnlich verhält es sich im überschneidungsbereich 
zwischen Boden- und Raumwelle. Dieser Bereich ist nicht konstant, 
sondern variiert im Laufe des Tages zwischen 600 bis 1200 km vom 
Sendeort. Hierdurch kann es an einem festen Ort zusätzlich zu absoluten 
Zeitschwankungen kommen, die bei einigen Millisekunden liegen.


Mit diesen beiden Aussagen, sollte Deine Frage denke ich beantowrtet 
sein.

somit hasst du selbst wenn du am selben Standort belibst ein 
Verschiebung von 5 - 150ms plus noch zusätzlich die Verschiebung die 
durch deinen Kontrlller passieren könnte, wenn z.B. während der 
Umrechnung oder Ausgabe an einem Tag ein Intterupt "stören" sollte.

Die Frage ist wozu du so genau sein willst ??

Gruß

Dennis

von Peter D. (peda)


Lesenswert?

UBoot-Stocki wrote:

> Das Stellen der Uhr (über DCF77) ist
> aber nicht mit dem Sekundenbeginn in Mainflingen synchronisiert.

Doch, Du kannst natürlich auch auf den Impulsbeginn synchronisieren.
Macht man eigentlich immer so.

Du hast nur die Laufzeit des Signals und die Filterzeit des Empfängers 
als Verzögerung, aber die sind unter 100ms.

> Kann ich überhaupt davon ausgehen, dass z.B. der 5.2.2009
> 7:58:00 exakt 86400,000000 Sekunden nach dem 4.2.2009 7:58:00 kommt???

Nein.
Die Sekunden stimmen, die 6 Kommastellen natürlich nicht.
An Kommastellen hast Du etwa 2-3.


> Damit stellt sich zusätzlich die Frage ob das DCF Signal überhaupt taugt
> z.B. einen Zähler zu kalibrieren ???

Ja, auf jeden Fall.
Du mußt nur die Meßzeit entsprechend lang wählen, daß ein Fehler von 1ms 
genau genug ist.
Du kannst auch noch über je 16 Impulse mitteln, um zufällige 
Schwankungen rauszurechnen.


Peter

von Martin (Gast)


Lesenswert?

Hast du nicht vor ein paar Tagen schon mal einen Thread über DCF 
genauigkeit aufgemacht?

von Route_66 (Gast)


Lesenswert?

Hallo!
Kalibrieren eines Zählers mit Hilfe von DCF77 macht man nicht über die 
Abstände der Sekundenimpulse, sondern über die Trägerfrequenz von 77,5 
kHz!
Siehe Zeitschrift "Funkamateur", letzte 2 Ausgaben.

von Gast (Gast)


Lesenswert?

> Der Aufbau des DCF-Signals ist mir klar.

Wirklich? Dann müsste dir auch klar sein, wie das DCF-Signal 
syncronisiert wird.

> Woher weis ich aber genau,dass eine Sekunde beginnt? Der Counter in
> meiner Uhr fängt zu einem beliebigen Zeitpunkt an zu zählen.

Da muss der Counter halt syncronisiert werden. Im allgemeinen wartet man 
auf die 59. Sekunde und mit der steigenden Flanke der neuen 0. Sekunde 
syncronisiert man, zumindest habe ich es so gemacht und erreiche damit 
eine ausreichende Genauigkeit (besser 1ms) innerhalb der CPU. Wie groß 
die Abweichungen durch Signallaufzeiten, Verzögerungen und 
Signalverfälschungen im Empfänger sind, kann ich nicht sagen, aber für 
die Anwendung als Uhr ist das m. E. auch nicht wichtig.

> Damit stellt sich zusätzlich die Frage ob das DCF Signal überhaupt taugt
> z.B. einen Zähler zu kalibrieren ???

Natürlich geht das, allerdings nicht mit den kleinen Modulen von C., R., 
etc. Dafür müsstest du die Trägerfrequenz auswerten. Vor einiger Zeit 
war da mal ein interessanter Bauvorschlag im Funkamateur drin. 
Allerdings ist der Aufwand bedeutend größer.

von Gast (Gast)


Lesenswert?

>Kann ich überhaupt davon ausgehen, dass z.B. der 5.2.2009
>7:58:00 exakt 86400,000000 Sekunden nach dem 4.2.2009 7:58:00 kommt???

Auf keinen Fall. Die letzte Nachkommastelle der "86400,000000 Sekunden" 
entsprechen 1 µs. Da das DCF77-Funksignal während 1 µs etwa 300 m 
zurücklegt (Vakuumlichtgeschwindigkeit c = 3 * 10^8 m/s zugrundegelegt), 
müsstest Du die Entfernung Deiner Funkuhr zum Sender berücksichtigen, 
und zwar in der Größenordnung 100 m genau.

Eine Funkuhr, die von München nach Frankfurt und wieder zurück reist 
(300 km Entfernung) wird auf dem Hinweg eine Winzigkeit schneller gehen, 
und an ihrem Ziel 1 ms mehr anzeigen, als wenn sie zuhause geblieben 
wäre. Auf dem Rückweg geht sie dafür entsprechend langsamer.

von UBoot-Stocki (Gast)


Lesenswert?

Hallo,

ich möchte diesen Thread gerne fortsetzen... Meine Überlegung:

Eine (Quarz-)Uhr mit 10MHz-Quarz macht 10millionen pulse pro Sekunde 
(+/- Genauigkeit des Quarzes ~ 50-100ppm)

Durch verändern der Timer-Werte kann ich die Uhr so "tunen" dass sie +/- 
1Sekunde pro Tag falsch geht. D.h. die Uhr macht pro Sekunde einen 
Fehler von +/- 11,6us (12ppm). Das ist zu ungenau um einen Zähler zu 
kalibrieren.

Wenn ich es nun schaffen würde, die Uhr so genau zu kalibrieren, dass 
sie in 10 Tagen nur +/- eine Sekunde falsch geht, so wäre die 
Genauigkeit +/- 1,16ppm Was schon besser geeignet ist und den Zähler zu 
kalibrieren.

Jetzt kommt sicher das Argument "der Quarz hat ja nur eine Genauigkeit 
von 100ppm..." Meine Beobachtung ist jedoch, dass der Fehler des Quarzes 
(insbesonder in kurzen Zeitintervallen von z.B. einer Stunde) gleich 
bleibt (gleicher Standort+funktionierende Heizungsregelung 
vorausgesetzt...).

Ich müsste in den 10 Tagen doch "nur" jeden Tag die Tuning-Werte für den 
Timer anpassen um so und die beschriebene Genauigkeitsklasse zu kommen 
?!

Dann könnte ich doch das Quarzsignal nutzen um meinen Zähler zu 
kalibrieren ???

Bitte gebt mal Euere Meinung rüber ...

Gruß

Andreas

von Gast (Gast)


Lesenswert?

Dann müsste die Zeitbasis des Frequenzzählers aber auch 10 Tage sein, 
was in der Praxis nicht funktionieren dürfte.

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.