Finale Kalibrierung
Selbst nach mehreren Stunden in der stabilen Phase werden Sie in aller Regel bei einem Vergleich mit dem Kommando
$ ntpdate -q PTB-Zeitserver
zu einem der drei PTB-Zeitserver ptbtime1.ptb.de bis ptbtime3.ptb.de feststellen, dass die lokale Zeit der vom PTB gelieferten deutlich (mehrere 100 ms) hinterherhinkt. Dabei handelt es sich um einen systematischen Zeitverzug. Er beruht zum geringeren Teil auf der Signallaufzeit vom Sender zum Empfänger. Zum größten Teil setzt er sich aus der Laufzeit durch den Empfänger, die serielle Schnittstelle, den Treiber und den Linux-Kernel zusammen.
Hier erkennt man auch einen der Vorteile des NTP gegenüber der Rundfunkübertragung: Durch die Ermittlung des Round-Trip-Delays zwischen den einzelnen Zeitservern lässt sich durch Mitteln die Signallaufzeit kompensieren. Mit einem einfachen Verfahren und einer Internetverbindung können Sie einmalig diesen systematischen Verzug am RasPi ermitteln und dann dauerhaft korrigieren.
Dazu bestücken Sie die Konfigurationsdatei /etc/ntp.conf temporär mit mehreren NTP-Zeitservern mit möglichst niedrigem Stratum-Wert – beispielsweise jenen der PTB. Dazu tippen Sie jeweils eine Zeile der Form:
server NTP-Server noselect
Der Zusatz noselect sorgt dafür, dass der NTP-Daemon die von diesen Servern gelieferten Zeiten nicht zur Synchronisation benutzt, wohl aber deren zeitliche Ablagen in der Log-Datei /var/log/ntpstats/peerstats protokolliert. Nach dem Speichern der entsprechend geänderten Konfiguration starten Sie den NTP-Daemon neu und lassen ihn mehrere Stunden in der stabilen Phase laufen.
Das Mitteln der Ablagen der Referenz-Server liefert einen guten Wert für den systematischen Verzug auf dem RasPi. Allerdings enthält der Treiber im NTP-Daemon bereits einen fest einprogrammierten Korrekturwert. Diesen erhält man (in Millisekunden) unter der Bezeichnung fudgetime1 in der Ausgaben von ntpq.
Sie addieren die beiden Werte und tragen das Resultat (in Sekunden, Fixkomma) in die Konfigurationsdatei /etc/ntp.conf ein:
fudge 127.127.8.0 time1 Gesamtablage
Diese Zeile tippen Sie direkt unter die entsprechende server-Anweisung des Zeitnormals. Nach einem Neustart des Daemons sollte die Ablage zu den anderen NTP-Zeitservern verschwunden sein, und Sie können die Hilfsserver wieder aus der Konfiguration entfernen.
Fazit
Mit einem preiswerten Zeitzeichen-Empfängermodul lässt sich der Raspberry Pi auch ohne Internetzugang mit einer für tägliche Anwendungen hochpräzisen und stabilen Systemzeit versorgen – zumindest, solange er sich in Europa befindet. Dabei beträgt die typische Zeitabweichung nur etwa eine Millisekunde. Obendrein kann der RasPi diese präzisen Zeitdaten auch gleich im lokalen Netzwerk anderen Geräten bereitstellen.
Glossar
- UTC
-
Universal Time Coordinated. 1972 eingeführte, weltweit gültige Standardzeit, als Zonenzeit identisch mit der früheren Greenwich Mean Time (GMT) beziehungsweise heutigen WET (Western European Time). Das “Coordinated” signalisiert, dass diese Zeit gleichmäßige Standard-Sekunden verwendet und Schwankungen der Erdrotation durch Schaltsekunden ausgleicht. Die ebenfalls existierende UT kompensiert die Schwankungen durch Anpassung der Sekundenlänge.
- CEST
-
Central European Summer Time. Mitteleuropäische Sommerzeit (MESZ) = CET+1h = UTC+2h.
- Daemon
-
Dieser Begriff bezeichnet unter Unix und verwandten Systemen ein Programm, das im Hintergrund abläuft und dort bestimmte Dienste zur Verfügung stellt.
Infos
- Network Time Protocol: http://www.ntp.org
- Physikalisch-Technische Bundesanstalt: http://www.ptb.de
- NTP-Daemon Reference Clock Support: http://www.eecis.udel.edu/~mills/ntp/html/refclock.html





