Pico-Zephyr-10MHz-GPSDO-Counter
Projektstatus: Migration abgeschlossen · Langzeittest bestanden
Projektübersicht
Der Pico-Zephyr-GPSDO-Counter ist ein autonomer 10-MHz-GPSDO und Mehrkanal-Frequenzzähler auf Basis des Raspberry Pi Pico 2 W und Zephyr RTOS.
Das System verbindet die hohe Kurzzeitstabilität eines beheizten OCXO mit der langfristigen Genauigkeit des GPS-PPS-Signals. Nach dem Einschalten arbeitet das Gerät selbstständig über WLAN; USB wird im Normalbetrieb nicht benötigt.
Ziel
Ziel des Projekts war die vollständige Migration der bewährten Arduino-GPSDO-Funktionen auf Zephyr RTOS.
Die Software übernimmt:
- PPS-synchrone Messung des 10-MHz-OCXO
- automatische Frequenz- und Phasenregelung
- Holdover bei kurzen GPS- oder PPS-Ausfällen
- GPS-, PPS-, DAC- und Temperaturüberwachung
- externen Frequenzzähler mit drei Eingängen
- Weboberflächen und JSON-API
- USB- und Telnet-Shell
- CSV-Langzeitaufzeichnung und Auswertung
Aufbau
Zum Einsatz kommen:
- Raspberry Pi Pico 2 W mit RP2350
- Zephyr RTOS
- 10-MHz-OCXO
- NEO-6M-GPS-Empfänger
- MCP4725-DAC zur Frequenzsteuerung
- DS1820/DS18S20 zur OCXO-Temperaturmessung
- RP2350-PWM-Hardwarezähler
- WLAN mit integrierten Webseiten und JSON-API
Die Regelung arbeitet mit den Zuständen WAIT, ACQUISITION, TRACKING, LOCKED und HOLDOVER. Kurze Störungen werden erkannt und führen nicht zu unkontrollierten Änderungen des DAC-Arbeitspunktes.
Messergebnis
Ein Langzeittest über 59 Stunden und 30 Minuten ergab:
- erster vollständiger Lock nach etwa 8 Minuten
- 99,71 %
LOCKEDnach der Aufwärmphase - 99,93 % gültige 10-MHz-Messgates
- mittlere Frequenzabweichung von +0,01195 Hz
- relative mittlere Abweichung von +1,19 × 10⁻⁹
- kein Controller-Neustart während des Tests
Damit erreicht der Eigenbau eine sehr gute Werkstatt- und Amateurfunkgenauigkeit. Für eine unabhängige metrologische Spezifikation wäre zusätzlich der Vergleich mit einem externen Frequenznormal erforderlich.
Bedienung
Das Gerät stellt folgende Zugänge bereit:
- GPSDO-Liveseite im Browser
- Frequenzzähler-Webseite
- JSON-API für Programme und Logger
- Telnet-Shell im lokalen WLAN
- USB-CDC-Shell als Wartungszugang