Universeller DDS-Frequenzgenerator zur Erzeugung von
Oszillatorfrequenzen für z.B. QRP- oder Oldtimer-Geräte
im Aufbau
Stand: 7. Januar 2016

Nachdem geeignete DDS-Bausteine preiswert aus Fernost verfügbar wurden, hatte ich mich bereits schon einmal vor einiger Zeit mit dem Aufbau kleiner DDS-Generatoren beschäftigt [1],[2]. Ihr Haupteinsatzgebiet sah ich in der Verwendung als Ersatz für frei laufende Oszillatoren in Selbstbauempfängern/transceivern oder auch z.B. in Verbindung mit Oldtimer-Geräten ohne eigene elektronische Frequenzanzeige.


Abb.1  erster Versuchsaufbau ( hier noch mit Versorgung über angeschlosseen Programmieradapter )

Nachdem es jetzt in einem konkreten Fall darum ging, einem Selbstbau-QRP-Empfänger auch den passenden Oszillator zu verpassen, wurden die alten Konzepte wieder hervorgekramt und aktualisiert. Anstelle des vormals zur Steuerung benutzten relativ voluminösen ARDUINO-UNO-Bausteins sollte nun der wesentlich kleinere, hinsichtlich des benutzten Prozessors aber identische "Pro Mini" zum Einsatz kommen. Zur Frequenzanzeige wurde ein 0.96" OLED-Display vorgesehen. Es arbeitet im Versorgungsspannungsbereich von 3-5V und sein Strombedarf liegt bei nur 8mA.
Abb.2 zeigt die entstandene Gesamtanordnung, wobei als Schlüsselbauteil wieder der bekannte, aus Fernost stammende und mit einem AD9850 aufgebaute DDS-Baustein zum Einsatz kommt. Hinsichtlich seiner technischen  Daten sei noch einmal an [1] und [2] verwiesen.
Nachdem die Stromaufaufnahme der Gesamtanordnung schon an der oberen Belastungsgrenze des über den RAW-Eingang des Pro-Mini-Boards ( Eingangsspannung ca. 7-15V ) erreichbaren bausteininternen 5V-Spannungsreglers lag, habe ich stattdessen besser einen separaten Spannungsregler LM1117 in der 5V-Version vorgesehen. Steht eine sonstige 5V-Spannungsquelle ausreichender Belastbarkeit ( min. ca. 200mA ) zur Verfügung, so kann diese selbstverständlich auch genutzt werden und genannter Spannungsregler kann entfallen.


Abb.2  Zusammenschaltung der DDS-Oszillatoreinheit mit OLED-Anzeige
( zur Darstellung in voller Größe anklicken )

Das Konzept wurde vorerst bewusst einfach gehalten, erlaubt versierten ARDUINO-Nutzern aber auch noch ggf. gewünschte Erweiterungen. Nach dem Einschalten wird eine mit einem Incrementgeber in Aufwärts- und Abwärts-Richtung veränderbare Startfrequenz generiert. Dabei betragen die möglichen Schrittweiten derzeit 100 Hz oder 10 Hz. Nachdem viele Drehgeber auch noch mit einem zusätzlichen Taster ausgestattet sind, lag es nahe, diesen dabei zur Umschaltung der Rasterschritte zu benutzen. Selbstverständlich kann stattdessen aber auch jeder beliebige andere Taster benutzt werden.
Die verwendeten DDS-Bausteine ermöglichen die Erzeugung beliebiger Frequenzen bis etwa 40 MHz. Viele Literaturstellen wie z.B. [3], [4] gibt es dabei hinsichtlich möglicher Änderung oder gar Ersatz des einen Teil des Bausteins ausmachenden Tiefpassfilters. Nachdem ich genannten Baustein nur für Frequenzen bis max. etwa 15 MHz einsetzen wollte, habe ich selbst auf irgendwelche Änderungen des Originalzustandes allerdings zumindest vorerst verzichtet.
Bei Verwendung als Empfängeroszillator gilt es eine Displayanzeige zu realisieren, die um den Betrag der ( Empfänger- ) Zwischenfrequenz von der DDS-Frequenz abweicht. Dabei ergeben sich unterschiedliche Verhältnisse für ober- oder unterhalb der DDS-Frequenz liegende Zwischenfrequenzen. Alle an dieser Stelle notwendigen Korrekturen lassen sich aber im Steuerprogramm durch einfache Additionen oder Subtraktionen abdecken.

Bedarfsweise ermöglichen die in Abb.1 mit S1-S4 bezeichneten Taster noch den Aufruf von 4 weiteren, im Programmcode fest ablegbaren Startfrequenzen eigener Wahl. Ausgehend von diesen Frequenzen kann dabei auch weiterhin eine Abstimmung mithilfe des Incrementgebers erfolgen.

WICHTIG ! Herstellerabhängig wurden bei den 0.96"-OLED-Displays unterschiedliche Pinanordnungen der Versorgungsanschlüsse festgestellt. Falschbeschaltung führt in der Regel zu ihrer sofortigen Zerstörung. Zur Abdeckung unterschiedlicher Pinanordnungen ist die Platine deshalb mit den Brücken "a" und "b" ausgestattet. Sie lassen sich falls erforderlich auftrennen und durch zwei kreuzweise angeordnete Drahtverbindungen ersetzen.

1. Einsatzbeispiel: Empfänger für das 60m-Band  ( ca. 5350-5450 KHz )

Im vorliegenden ersten Beispiel sollte ein Empfänger im 60m-Band den Empfangsbereich von 5350-5450 KHz überstreichen und mit einer ZF von 3000 KHz arbeiten. Für den DDS-Generator ergibt sich dabei ein möglicher Frequenzbereich von 2350-2450 KHz. Die am Display anzuzeigenden Eingangsfrequenzen lassen sich hierbei durch einfaches Addieren des ZF-Wertes im Programmcode berechnen ( Fanz = Fz + Fdds ).

2. Einsatzbeispiel: Empfänger für das 630m-Band  ( ca. 470-480 KHz )

In einem weiteren Beispiel  sollte bei gleicher Zwischenfrequenz von ebenfalls 3000 KHz das 630m-Band zwischen etwa 470 und 480 KHz empfangen werden. Dabei ergibt sich ein möglicher DDS-Bereich von 2530 bis 2520 KHz. Die anzuzeigenden Empfangsfrequenzen errechnen sich in diesem Fall, indem die Werte der DDS-Frequenzen im Programmcode von der Zwischenfrequenz subtrahiert werden ( Fanz = Fz - Fdds ). Nachdem dabei auch eine Umkehr der Steuerungsrichtung erfolgt ( max. DDS-Frequenz = min. Empfangsfrequenz und vice versa ) , sollten dabei sinnvollerweise auch noch die Steueranschlüsse des Incrementgebers getauscht werden.

Nachbau

An dieser Stelle wird in Kürze auch der ARDUINO-Programmcode incl. der zugehörigen Libraries herunterladbar sein. Nach einem von mir erstellten Layout hat Dirk, DH4YM freundlicherweise auch die ersten Platinen hergestellt ( Abb.3 ).


Abb.3  Platine gefertigt von [5]


Linkliste

[1]  http://www.kh-gps.de/dds.htm
[2]  http://www.kh-gps.de/simple-dds.htm
[3]  http://www.rudiswiki.de/wiki9/DDSgeneratorLCD
[4]  http://www.rudiswiki.de/wiki9/AmateurRadioDDSgenerator
[5]  http://www.dh4ym.de

E-Mail contact via: