Good to Know Database

DCF77-Empfänger für die serielle Schnittstelle


DCF77-Empfänger für die serielle Schnittstelle 1

Ein DCF-Empfängermodul bekommt man heutzutage bereits für ca. 10,- EUR. Deshalb habe ich meine Schaltung auf das Empfängermodul von ELV-Elektronik (Best.-Nr. 20-352-62, 9,95 EUR) abgestimmt.

Der Grund warum ich diese Schaltung entworfen habe, ist die lästige Umstellung der Systemuhr von Sommer- auf Winterzeit und umgekehrt sowie die nachstellerei wenn die Uhr falsch geht. Ein weiterer Aspekt bei mir war, dass ich alle Rechner in meinem Netzwerk automatisch danach stellen kann.

Weitere Informationen rund um DCF77 finden sie hier.

Schaltungsbeschreibung

Die Stromversorgung kann entweder über die Steuerleitungen der seriellen Schnittstelle oder über eine exterene Spannungsversorgung erfolgen. Zu diesem Zweck habe ich das interne Netzteil des PC's für die Spannungsversorgung verwendet und die Spannungen zu einem Slotblech geführt.

Das verwendete ELV-Modul benötigt eine Spannung von 1,2V bis 18V bei einer Stromaufnahme von maximal 12mA. Bei meiner Schaltung wird eine Versorgungsspannung von 5V verwendet die über einen 7805 erzeugt wird. Weiterhin benötige ich die 5V als Betriebsspannung für den MAX232 der zur Pegelanpassung für die serielle Schnittstelle dient.

DCF77-Empfänger für die serielle Schnittstelle 2

DCF77-Empfänger für die serielle Schnittstelle 3

Die LED gibt die Sekundenimpulse an, dieser Takt hilft beim Ausrichten des Senders. Erst wenn die LED im Sekundentakt blinkt ohne einen Zwischenimpuls kann Linux das Signal des Empängers richtig erkennen. Wichtig ist noch, dass nicht alle Impulse gleich lang sind, man unterscheidet hier zwischen langen und kurzen Impulsen (100ms und 200ms) die die High- bzw. Low-Pegel angeben.

DCF77-Empfänger für die serielle Schnittstelle 4

Bei mir passt die komplette Schaltung in ein kleines Gehäuse. Beim Einbau ist zu beachten, dass die Empfangsantenne waagerecht im Gehäuse liegt und auch wenn das Gehäuse aufgehängt ist horizontal liegt. Weiterhin sollte beachtet werden das in der Nähe keine Monitore, Fernseher oder Netzteile sind, diese beeinträchtigen das Funksignal und der Empänger bekommt kein eindeutiges Signal.

Jetzt kann ich euch nur noch viel Spaß beim Basteln wünschen. Erfolgsgarantie kann ich euch allerdings nicht geben.

Software

Dieses Kapitel ist speziell auf SuSE Linux zugeschnitten.

Wenn der Empfänger an der seriellen Schnittstelle angeschloßen ist, kann es mit der installation losgehen. Als erstes sollte mal das Paket xntp installiert sein. Dies können sie unter Yast nachholen wenn es nicht bereits installiert ist. Sie finden das Paket unter der Kategorie Netzwerk.

Erstellen sie nun mit dem folgenden Befehl einen Link auf die Schnittstelle an der der Empfänger angeschloßen ist. Sollte es bei ihnen nicht die erste Schnittstelle sein, dann muß ttyS0 durch die jeweilige Schnittstelle erstetzt werden (z.B.: /dev/ttyS1 für die zweite serielle Schnittstelle).

suse73:~ # ln -s /dev/ttyS0 /dev/refclock-0

Mit dem nächsten Befehl sollten sie jetzt den Empfang testen. Erst nach einigen fehlerfreien Durchläufen sollte weitergearbeitet werden. Das erste Datenpaket wird immer einen Fehler enthalten, da nicht beim ersten Datenbit gestartet worden ist. Bis ein Datenpaket eingelesen worden ist, vergeht eine Minute.

suse73:~ # /usr/share/doc/packages/xntp/testdcf /dev/refclock-0

Wenn jetzt die Signale korrekt eingelesen worden sind, kann dieses Programm mit Strg+C abgebrochen werden. Editieren sie jetzt die Datei /etc/ntp.conf.

server 127.127.8.0 mode 5 prefer   # DCF-77 clock
##
## Undisciplined Local Clock. This is a fake driver intended for backup
## and when no outside source of synchronized time is available.
server 127.127.1.0                 # local clock (LCL)
fudge 127.127.1.0 stratum 10       # LCL is unsynchronized
##
## Miscellaneous stuff
driftfile /etc/ntp.drift           # path for drift file
logfile /var/log/ntp               # alternate log file
logconfig =syncstatus

Danach sollte ein Ausschnitt so aussehen. Jetzt starten sie den NTP-Daemon mit dem nachfolgenden Befehl.

suse73:~ # rcxntpd start

Damit der NTP-Daemon bei einem Neustart wieder gestartet wird, sollte man den Eintrag für xntpd in der Konfigurationsdatei auskommentieren (evtl. mit Yast). Damit man verfolgen kann welche Meldungen xntp ausgibt, gibt es den folgenden Befehl. Hier kann man auch sehen um welche Zeit die Uhr korrigiert wird.

suse73:~ # tail -f /var/log/ntp

Downloadbereich

Layout und Schaltplan
Datenblatt zum verwendeten DCF-Empfangsmodul


Dieser Eintrag wurde am 01.12.2001 erstellt und zuletzt am 04.11.2012 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_7_1958.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer