Raketenmodellbau.org Portal > Forum > Rund um Elektronik und Programmierung > Elektronik allgemein > Sensoren > Zeiterfassung mit DFC-77 Empfänger
Du kannst keine neue Antwort schreiben


Autor Thema 
Neil

99.9% harmless nerd


Administrator

Neil

Registriert seit: Aug 2000

Wohnort: Delft

Verein: SOLARIS

Beiträge: 7776

Status: Offline

Beitrag 89682 , Zeiterfassung mit DFC-77 Empfänger [Alter Beitrag19. November 2005 um 15:49]

[Melden] Profil von Neil anzeigen    Neil eine private Nachricht schicken   Neil besitzt keine Homepage    Mehr Beiträge von Neil finden

Hi,

mir kam die Idee, für die Zeiterfassunf ein DCF-77 Empfänger zu nehmen.
Den Empfänger den ich mir ausgesucht habe findet man bei Conrad. Fertig aufgebaut und sehr einfach anzuschließen. Die kosten liegen unter 10€.
Das hier ist der Empfänger.
Was sind die Vorteile von so einer Zeitgebung:

1. Datum und Uhrzeit werden von einer Atomuhr in Braunschweig vorgegeben. Man hat also immer die für Deutschland richtige Zeit.

2. Das Signal wird über Puls Pause Verhältnis übermitteln. Ein Bit = eine Sekunde. Ist das Signal lang ist es eine 1, ist es kurz eine 0. Oder umgekehrt. Die Uhrzeit und das Sind in den Sekunden koddiert. Die Uhr braucht also maximal 2 min zum einstellen.

3. Die Flanken des steigenden Signals sind immer genau 1 Sekunde auseinander. Man kann also auf die Flanke triggern und bekommt ein Sekundenimpuls.

4. Die Sendefrequenz selber, ist sehr genau und konstant. Man kann also die Frepuenz nehmen um seine eigenen Schwingkreise abzugleichen.

Mehr Infos findet ihr hier http://de.wikipedia.org/wiki/DCF77

Um jetzt eine genauere Zeitauflösung als 1 Sekunde hin zu bekommen, könnte man einen internen Zähler verwenden der jede Sekunde zurück gestzt wird. Ich denke aber das unsere Microcontroller Guru's noch ein paar andere Tricks auf Lager haben.
Gruß

Neil

Die Erde ist eine Scheibe. Egal in welche Richtung sich die Menschheit bewegt, sie geht immer auf einen Abgrund zu.


Andreas Mueller

Epoxy-Meister

Registriert seit: Sep 2004

Wohnort:

Verein: ARGOS

Beiträge: 322

Status: Offline

Beitrag 89840 [Alter Beitrag21. November 2005 um 08:51]

[Melden] Profil von Andreas Mueller anzeigen    Andreas Mueller eine private Nachricht schicken   Andreas Mueller besitzt keine Homepage    Mehr Beiträge von Andreas Mueller finden

Zitat:
Original geschrieben von Neil

Ich denke aber das unsere Microcontroller Guru's noch ein paar andere Tricks auf Lager haben.


In der NTP Distribution unter http://www.ntp.org/ kann man C Source Code für das decodieren des DCF77 Signales finden. Es gibt dort in parseutil/testdcf.c ein Testprogramm, welches das in einem einzigen File macht, und daher relativ leicht zu portieren sein sollte. Oder man kann den Code aus dcfd.c im gleichen Verzeichnis nehmen, oder jenen von libparse/clk_rawdcf.c.

Ausserdem findet man in Google mit den Begriffen dcf77 und "source code" ein paar hundert Links, darunter auch AVR und PIC Implementationen.

Zitat:
Um jetzt eine genauere Zeitauflösung als 1 Sekunde hin zu bekommen, könnte man einen internen Zähler verwenden der jede Sekunde zurück gestzt wird.


Das wird recht ungenau, zum Beispiel auch weil die Flanke des DCF77 Signals eher unscharf definiert ist. Wenn man mehr Genauigkeit will, muss man eine PLL implementieren, die die Frequenz der lokalen Uhr so anpasst, dass sie im Mittel mit der DCF77 Uhr übereinstimmt. Oder mathematischer: man muss den optimalen Schätzer für die Zeit bauen, basierend auf den ungenauen Messwerten vom Empfänger. Damit kann man mit DCF77 ca 1ms Genauigkeit erreichen.

Natürlich muss man auch hier nichts wirklich selber bauen, auf http://www.ntp.org/ findet man sowohl die gesamte Theorie als auch Source Code.

Übrigens sind diese Techniken auch geeignet, Genauigkeiten bis in den ns-Bereich zu erreichen, ich verrate jetzt aber nicht, wo man dies nachlesen könnte smile
CharlyMai

Foren-Prediger


Administrator

CharlyMai

Registriert seit: Mär 2005

Wohnort: Fuhrberg

Verein: SOLARIS-RMB e.V. (P2;T2) / AGM / TRA#21598

Beiträge: 1976

Status: Offline

Beitrag 89849 [Alter Beitrag21. November 2005 um 09:25]

[Melden] Profil von CharlyMai anzeigen    CharlyMai eine private Nachricht schicken   Besuche CharlyMai's Homepage    Mehr Beiträge von CharlyMai finden

Seeeehr richtig Andereas ....

Ich habe mit diesem nS Bereich gearbeitet, um 2 Computer die über eine RiFu Strecke (>20km)
miteinander gekoppelt waren zu Syncronisieren .....

Wenn man natürlich nur den Zeitimpuls, und nicht die GENAUE Zeit benötigt reicht das DCF77 Signal sehr gut, sollte es jedoch auch noch auf eine GENAUE Uhrzeit ankommen ist es unabdingbar dem Empfänger die Entfernung zum Sender mittzuteilen, und diese Entfernung mit in die Berechnung einfliessen zu lassen (Signallaufzeitverzögerung) ....


Grüße
Pierre


Geändert von CharlyMai am 21. November 2005 um 09:28


•"Der Glaube an eine bestimmte Idee gibt dem Forscher den Rückhalt für seine Arbeit.
Ohne diesen Glauben wäre er verloren in einem Meer von Zweifeln und halbgültigen Beweisen." Konrad Zuse

•Konstruiere ein System, das selbst ein Irrer anwenden kann, und so wird es auch nur ein Irrer anwenden wollen.

SOLARIS-RMB e.V. AGM
Neil

99.9% harmless nerd


Administrator

Neil

Registriert seit: Aug 2000

Wohnort: Delft

Verein: SOLARIS

Beiträge: 7776

Status: Offline

Beitrag 89850 [Alter Beitrag21. November 2005 um 09:26]

[Melden] Profil von Neil anzeigen    Neil eine private Nachricht schicken   Neil besitzt keine Homepage    Mehr Beiträge von Neil finden

Hi,

ich wollte wie gesagt das mit dem Analogeingang messen. Dann kann ich ja in Excel eine Schwelle nehmen die zwischen 0 und 1 liegt des Signals. Ich dürfte also maximal 2 Samples falsch liegen. Auch wenn die Flanke verwaschen ist.
Danke für die Links. Werde mal schauen. Damals in der Schule mit dem Z80 ging das Programm recht einfach. Ist ja nur so, das man aus der Sekundenlänge den Bitwert ermitteln muss und dann die entsprechenden Bits für Datum und Uhrzeit zuordnen. Ist ein relativ kleines Programm.

Gruß

Neil

Die Erde ist eine Scheibe. Egal in welche Richtung sich die Menschheit bewegt, sie geht immer auf einen Abgrund zu.


[Zurück zum Anfang]
Du kannst keine neue Antwort schreiben