"CALFINDER"  Si5351-Kalibrierwerte schnell ermittelt
Version vom 21. November 2022

 automatic translation by GOOGLE : https://www-kh--gps-de.translate.goog/calfinder.htm?_x_tr_sch=http&_x_tr_sl=de&_x_tr_tl=en&_x_tr_hl=de&_x_tr_pto=wapp

 
Abb.1  Beispiel für Displayanzeige nach durch Abstimmung mit dem Drehgeber erreichter Übereinstimmung zwischen Soll- und Istfrequenz

Zum Aufbau aller Arten von HF-Generatoren im Frequenzbereich von wenigen Kilohertz bis oberhalb von 200 MHz erfreuen sich die Bausteine des Typs Si5351 grosser Beliebtheit. Auch von mir wurden sie schon für vielerlei Projekte verbaut. Inzwischen fast ausschliesslich aus fernöstlicher Produktion erhältlich, kann es dabei auch geschehen, dass Fake-Exemplare geliefert werden, die dann nur noch für die Mülltonne taugen. Nachdem das allerdings bei Bestellungen kaum vorherbestimmbar ist, muss man jeweils auch ein wenig Glück haben und sollte zumindest im Hinterkopf behalten, wo die Ursachen für ein evtl. späteres Nicht-Funktionieren liegen könnten.   

Die beim Aufbau von Generatoren erzielbaren Frequenzgenauigkeiten werden im Wesentlichen durch die verbauten Taktgeneratoren bestimmt. Nachdem hier aber üblicherweise nur Standardquarze verwendet werden, ergeben sich für die Ausgangssignale nahezu immer auch Abweichungen von gewünschten Sollfrequenzen, was in vielen Fällen nicht tolerierbar ist. Dabei macht sich dieser Effekt mit ansteigender Ausgangsfrequenz verstärkt bemerkbar. Im oberen VHF-Bereich können diese Abweichungen durchaus auch schon einmal in der Größenordnung von 50 KHz und darüber liegen.

Abhilfe können Korrekturwerte bringen, die dazu an geeigneter Stelle in den zur Steuerung benutzten Quellcode einzufügen sind. Oftmals erfolgt die Steuerung der Si5351 mithilfe von ARDUINO-Software unter Verwendung einer von Jason Milldrum, NT7S stammenden Bibliothek. Die Korrekturwerte lassen sich hierbei bestimmten Si5351-Steuerbefehlen des verwendeten Quellcodes hinzufügen. Üblicherweise erfolgt das über eine als "cal" bezeichnete numerische Variable. Vorher müssen die entprechenden Werte allerdings für jeden einzelnen zu verwendenden Baustein erst noch einmalig ermittelt werden.

Wie ist hierbei vorzugehen?

Bei den ersten von mir mit den Si5351 realisierten Projekten hatte ich versucht, mich einer gewünschten Sollfrequenz möglichst weit zu nähern, indem ich nacheinander unterschiedliche Cal-Werte ausprobierte. Zur Kontrolle und Vergleich mit den dabei generierten Istfrequenzen erforderte das aber jeweils Änderungen im Programmcode, sowie erneutes Hochladen in den Arduino-Prozessor. Diese Prozedur war umständlich, zeitraubend und brachte letztendlich auch wenig genaue Ergebnisse. Nachdem man das Rad aber nicht unbedingt immer neu erfinden muss, suchte ich auch im Internet nach Softwaretools, die mir bei der Bestimmung von Kalibrierwerten würden helfen können und wurde dabei sogar fündig (#1). Via PC-Tastatur und Verwendung des Monitor-Modes der Arduino-IDE liessen sich hierbei unterschiedliche Cal-Werte in den Mikroprozessor und danach in Richtung des angeschlossenen Si5351 übertragen. Die Auswirkung auf die Frequenzen der erzeugten Ausgangssignale konnten danach direkt verfolgt werden. Die etwas krytische Eingabeprozedur per PC-Tastatur erwies sich allerdings als wenig komfortabel, sodass ich weiter nach einer mir geeigneter scheinenden Lösung suchte. Da kam ein vor längerer Zeit schon einmal realisiertes VFO-Projekt mit dem Si5351 in Erinnerung, bei dem die Frequenzabstimmung durch Incrementgeber und OLED-Display erfolgt war (#2). Warum sollte dieses oder ein ähnliches Programm nicht auch zum Aufruf unterschiedlicher Kalibrierwerte und Ausgabe der sich danach einstellenden aktuellen Istfrequenzen modifizierbar sein? Nachdem im Internet eine für diese Aufgabe gut geeignete VFO-Version (#3) gefunden wurde, entstand daraus der "CALFINDER". Dabei handelt es sich um ein einfaches ARDUINO-Tool (#4) zur Ermittlung der Cal-Werte eines bestimmten Si5351-Bausteins, was auf unkompliziere Weise in kürzester Zeit erfolgen kann. Gefundene Endwerte lassen sich danach mit beliebigen Generatorprogrammen nutzen.

Beispiel für mögliche Hardwareanordnung



Abb.2  Hardwarwanordnung zur Ermittlung der Kalibrierwerte

Praktische Nutzung

Die Ermittlung der Cal-Werte kann auf einer vom Anwender frei wählbaren Frequenz erfolgen, wobei diese natürlich innerhalb des Bereiches liegen muss, der vom Si5351 abgedeckt wird. Im Programmcode ist sie dazu als Wert mit der Einheit Hertz abzulegen. Da, wie schon oben beschrieben, sich die durch Frequenzungenauigkeiten der Steuerquarze bedingten Frequenzabweichungen mit zunehmender Frequenz vergrößern, empfielt es sich allerdings, Cal-Werte möglichst im oberen Teil des verfügbaren Betriebsbereiches zu ermitteln. Obwohl hier maximal 225 MHz erlaubt sind, wählte ich mit 144.500 MHz z.B. eine Frequenz im 2m-Amateurband. Letzendlich wird diese Wahl aber auch durch die Messeinrichtung bestimmt, die zur Kontrolle der jeweils generierten Istfrequenzen verfügbar ist. Wenn nicht anders möglich, können Messungen aber mit ggf. etwas geringerer Genauigkeit auch auf deutlich niedrigeren, als der oben genannen Frequenz erfolgen. In den meisten Fällen dürfte an dieser Stelle ein ( je nach Ansprüchen möglichst hochwertiger ) Frequenzzähler zum Einsatz kommen und seine Eingangssignale dabei vom Ausgang "CLK0" des Si5351-Bausteins erhalten ( siehe dazu auch Abb.1 und Abb.2 ).

Nach dem Einschalten des "Calfinders" gilt es nur noch, mithife seines Drehgebers die Anzeige der mit dem Zähler gemessenen Istfrequenz solange zu verändern, bis eine möglichst weitgehende Übereinstimmung mit der im Programmcode abgelegten Sollfrequenz vorliegt ( Abb.3 ). Während eines solchen Abstimmvorganges werden die aktuellen Cal-Werte laufend auf dem Display des Calfinders angezeigt. Weiterhin angezeigt und durch Niederdrücken des mit dem Drehgeber verbundenen Tasters veränderbar sind die jeweiligen Abstimmschritte. Ein nach erreichter Frequenzübereinstimmung angezeigter Cal-Endwert ( gem. Abb.1 ) ist anschliessend zu jeglicher weiteren Verwendung in Programmcodes nutzbar, die in Verbindung mit dem gemessenen Si5351-Exemplar verwendet werden sollen.     


Abb.3  Beispiel für Anzeigen nach Programmstart ( Frequenzablage von der im Programmcode abgelegten Sollfrequenz liegt hier bei 2,8 KHz )  

Steht zur Frequenzmessung kein geeigneter Zähler zur Verfügung, so kann man sich oftmals auch durch Nutzung z.b. preiswert erhältlicher WEBSDR-Sticks am PC behelfen. Dabei sollte man in jedem Fall nur Versionen mit integriertem TCXO verwenden. Bei nicht allzu hohen Ansprüchen hinsichtlich Frequenzgenauigkeit sollten die dabei erzielbaren Messergebnisse in vielen Fällen völlig ausreichend sein. Eine Signalverbindung zwischen Si5351-Ausgang und Stick-Antenneneingang kann dabei oftmals auch ohne jegliche Antennen "over the air" erfolgen.


Linkliste
(#1) https://github.com/WA2FZW/A-Program-to-Calibrate-the-Si5351-by-WA2FZW 
(#2) http://www.kh-gps.de/uni_vfo.htm
(#3) Https://www.hackster.io/CesarSound/10khz-to-120mhz-vfo-rf-generator-with-si5351-and-arduino-3a7cad
(#4)
http://www.kh-gps.de/calfinder.zip