Arduino Antennen Analysator

[metaslider id=219]

Auf der Seite von SierraRadio hatte Beric Dunn – K6BEZ einen Antennenanalysator veröffentlich. Dieser bestand aus einem preiswerten AD9850 DDS Board (Ebay 8 €), einem Arduino Micro und ein paar Bauteilen für eine SWR Brücke. Im Internet wurde auch der Sourcecode für den Arduino und die PC – Auswertesoftware angeboten. Leider klappte der Nachbau nicht sofort, da die Software ein paar kleinere Bugs enthielt. Es war aber kein großes Problem die Software anzupassen, da sie gut dokumentiert war. Die Oberfläche der PC Software habe ich neu gestaltet und meinen Erfordernissen angepasst.

Die Hardware habe ich ein wenig geändert:

Der ursprüngliche verwendete Arduino Micro verfügt über eine Miniatur USB Schnittstelle. Dieses Modul ist allerdings relativ teuer in der Beschaffung. Deshalb habe ich einen Arduino Mini Pro verwendet. Dieser hat keine USB Schnittstelle. Man bekommt aber für 4.50 € einen USB > RS232 TTL Adapter der gut funktioniert. Hierbei befindet sich die komplette Elektronik in dem USB Stecker. Das AD9850 Modul gibt es bei Ebay in 2 Versionen, diese sind nicht Pin-kompertibel. Ich benutze das blaue Modul (ohne rote LED).

Der Aufbau kann ohne Probleme auf einer Lochrasterplatine erfolgen. Ein Leiterplattenlayout (Eagle) steht auch zur Verfügung.

Die Gesamtkosten wurden mit unter 40 € angegeben. Mit Gehäuse und Leiterplatte wird es wohl etwas mehr werden.

Was kann das Gerät?
Das Arduino – Modul sendet in Kombination mit der PC – Software die Daten für einen Frequenz  – Sweep z.B. 1 .. 30 MHz an das DDS – Modul. Der Signalausgang wird mit der Antenne verbunden. Gleichzeitig wird über eine SWR – Brücke das SWR gemessen und über die RS232 Schnittstelle zur PC – Software gesendet. Diese zeichnet eine Frequenzkurve mit den gemessenen SWR – Werten. Mit dieser Messung ist es möglich die Resonanzpunkte von selbstgebauten Antennen zu ermitteln. Die SWR Werte geben einen guten Anhaltspunkt über den Frequenzverlauf. Allerdings sind es keine genauen Absolutwerte. Zum experimentieren mit Antennen reicht die Auflösung aber völlig aus. Später könnte man vielleicht noch die Messkurve der verwendeten Germanium – Dioden liniarisieren und dadurch die Genauigkeit der SWR – Werte erhöhen. Auf die Resonanzpunkte hat dies keine Auswirkung.

Ein MiniVNA ist wesentlich teurer und kann zusätzlich Impedanzverläufe und Fußpunktwiderstände messen. Dies ist bei dieser einfachen Schaltung nicht möglich.

Stückliste

AD9850 Modul DDS Signal Generator 40Mhz CP13010 D54
Eckstein Komponente 12,45 €

1_DDS_AD9850

Arduino Pro Mini Atmega328P Board Modul 5V/16MHz AR01011 J32
Eckstein Komponente 6,99 €

2_ArduiniMini

USB auf RS232 TTL UART PL2303HX Konverter Adapter Kabel CP12005 F44
Eckstein Komponente 4,95 €

Für diesen Adapter gibt es noch keinen Treiber für Windows 8. Auf Ebay sind aber auch für Win8 Com Adapter zu finden (z .B. suchen nach PL2303TA). Diese müssen TTL Pegel unterstützen.

USB_RS232

Eckstein Komponente bietet die Module mit kurzer Lieferzeit im Internet an http://stores.ebay.de/Eckstein-Komponente
Mit längerer Lieferzeit kann man die Komponenten meist preiswerter direkt aus China beziehen.

R1, R1A, R2, R2A,R3, R3A                 100 Ohm 1%, RM 7,5
R4, R8                                                  10 K    RM 7,5
R5, R9                                                  100 K  RM 7,5
R6, R10                                                4,99 K RM 7,5
R7, R11                                                649 R  RM 7,5
R20, R21                                              Drahtbrücke

C1                                                         1u RM 2.5
C2, C4                                                  100n RM 5
C3, C5, C6                                           10n RM 5

IC1                                                        LM358
IC – Fassung                                         8-polig

D1, D2                                                  Germanium Diode AA143

JP1                                                        Stiftleiste 2pol. 2,54 mm Raster (Antenne)
SV1                                                       Buchsenleiste 7pol. 2,54 mm Raster
SV2                                                       Buchsenleiste 7pol. 2,54 mm Raster
U$1                                                       Buchsenleiste 2 x 12pol. 2,54 mm Raster (Arduino Mini)

Stiftleiste                                                2 x 12pol. 2,54 mm Raster (Arduino Mini)
Stiftleiste                                                1 x 4pol. Abgewinkelt 2,54 mm Raster (Arduino Mini + / -/ RX / TX)
Stiftleiste                                                2 x 7pol. 2,54 mm Raster (AD9850)
Junper                                                    3 Jumper 2,54 mm
Antennenbuchse                                     PL oder BNC (JP1)

Aufbauhinweise

Die Schaltung lässt sich recht einfach auf einer Lochrasterplatine gemäß Schaltplan aufbauen.
Es gibt auch ein Eagle Leiterplatten – Layout 80 x 80 mm.

Hierzu ein paar Hinweise:

  1. Die Stiftleisten (2 x 12) in das Arduino – Modul einlöten an den beiden Langseiten.
    Stifte nach unten !
  2. Eine abgewinkelte Stiftleiste an die kleine Seite mit der Beschriftung
    TX – RX – +5V – GND anlöten. Hier wird später der USB > RS232 TTL Adapter aufgesteckt.
    Der von mir verwendete Adapter hatte schon Steckbuchsen. Die Farben waren
    TX          Weiss
    RX          Grün
    5V          Rot
    Gnd       Schwarz
    Die Spannungsversorgung erfolgt über den USB > RS232 TTL Adapter. Ein zusätzliches
    Netzteil ist nicht erforderlich.
  3. Auf der Leiterplatte bei „Arduino Mini U$1“ Buchsenleisten (2×12) einlöten.
    Das Arduino Modul wird so aufgesteckt, dass die abgewinkelte Leiste Richtung
    JP4/JP5 zeigt. Die Lötpunkte von JP4/JP5 können optional als Anschlusspunkt für
    die abgewinkelte Leiste (auf dem Modul) genutzt werden.
  4. Die Stiftleisten (2×7) bei dem DDS Modul  einlöten. Stifte nach unten !
    Die Pins D0 .. D6 werden nicht benutzt. Auf dem Modul jeweils einen Jumper setzen bei
    J1, J2, J3.
  5. Auf der Platine die Buchsenleisten 2 x 7) bei SV1 und SV2 einlöten.
  6. Das DDS Modul wird in die Buchsenleisen SV1 und SV2 gesteckt.
    Die Pins mit GND – Out – GND zeigen nach oben (SV1).
  7. In die Lötpunkte bei JP1 kommt eine Stiftleiste mit 2 Pins. Hier wird die Antennebuchse
    angeschlossen. Der untere Pin ist Masse.
  8. An JP3 sind weitere Pins des Arduino Boards heraus geführt. Diese dienen evtl. späteren
    Erweiterungen, z.B. LCD Anzeige und können erst einmal unbestückt bleiben.
  9. Alle weiteren Bauteile gemäß Bestückungsplan verlöten. Bei R20 und R21 sind Drahtbrücken
    einzusetzen.
  10. Die Eagle – Dateien bestehen aus:
    VNA1.sch           Schaltplan
    VNA1.brd           Platinenlayout
  11. Die Programmierung des Arduino – Boards kann mit dem USB > RS232 Adapter und
    der Arduino Programmier IDE erfolgen. Nach dem Start muss der kleine Taster auf
    dem Board kurz gedrückt werden. Der Sourcecode befindet sich in der Datei DDS_sweeper.ino.

Software

8_Software

Die Software ist unter DotNet programmiert und benötigt eine aktuelle Version des DotNet Frameworks (Version 4.0 oder höher). Dieses kann kostenlos von Microsoft herunter geladen werden. Ein Software Installation ist nicht erforderlich. Es reicht das Verzeichnis mit den Programmdateien an eine beliebige Stelle zu kopieren und die Datei VNA.exe zu starten.

Nach dem Programmstart wählt man unter Port die Com – Schnittstelle des USB – Adapters aus. Mit einem Click auf Connect wird eine RS232 Verbindung zum Arduino Modul hergestellt. Unter Start MHz und Stop MHz ist der Frequenzbereich 1 .. 30 MHz voreingestellt. Diesen kann man beliebig ändern oder mit der Auswahlbox Bands ein Amateurfunkband wählen. Durch einen Click auf Sweep werden die Daten an das Arduino Modul gesendet, dieses antwortet mit den entsprechenden SWR – Werten. Aus diesen wird dann eine Verlaufskurve gezeichnet. Unter Steps ist als Wert 101 eingestellt. Dies bedeutet, dass bei einem Frequenz – Sweep 101 Frequenzen gemessen werden. Man kann diesen Wert bis auf 1000 erhöhen, dann bekommt man eine höhere Auflösung mit bis zu 1000 Messpunkten – die Messung  dauert dann aber etwas länger. Die Auflösung erhöht sich auch, wenn man den Frequenzbereich verkleinert, z.B. statt 1 .. 30 MHz >> 13 .. 15 MHz. Dies erreicht man auch durch Drücken der Tasten Zoom In und Zoom Out und dann Sweep. Die Grafik ist auf einen SWR Bereich von 1 .. 10 voreingestellt. Mit dem Schieberregler Maximum SWR kann man den Wert zwischen SWR 2 .. 30 zoomen. Zusätzlich kann man die Grafik auch zoomen, indem man mit der linken Maustaste einen Rahmen um einen Teilbereich zieht. Wenn man mit der rechten Maustaste auf die Grafik clickt, kann man die aktuelle Grafik in eine Datei speichern. Dies ist für eine spätere Auswertung sehr praktisch. Darüber hinaus bietet das Auswahlmenü auch noch einige zusätzliche Optionen.

Dateien:

Schaltplan

Beschreibung

Eagle Dateien

Arduino Software

Arduino Software mit Kalibration

VNA PC Software

VNA PC Software Sourcecode

Datenblatt Arduino Mini

Datenblatt AD9850 Modul

PL2303_Prolific Treiber für USB > RS232 TTL

30.04.2016 Update
Die Arduino Software „Arduino Software mit Kalibration“ enthält die Möglichkeit die SWR – Messwerte genauer zu kalibrieren. Die SWR – Werte sind stark von den verwendeten Dioden abhängig.

Erweiterung mit Grafik – Display

Der Arduino Antennen Analysator lässt sich auch durch ein TFT – Display erweitern. Dadurch ist es dann möglich das Messgerät auch ohne Notebook zu betreiben.

Anzeige von:
• Niedrigstes SWR
• Frequenz bei niedrigsten SWR
• SWR Kurve mit Markierung für SWR 1 / 5 / 10
• Frequenzbereich mit Angabe von Start-, End- und Mittenfrequenz
• 2 Scanfunktionen: 1 .. 30 MHz + SWRmin – Frequenz +/- 1 MHz

aaa_display2

Zunächst erfolgt ein Scan von 1 .. 30 MHz. Hierbei wird das niedrigste SWR und die Frequenz mit dem niedrigsten SWR ermittelt und grafisch dargestellt.

aaa_display1

Anschließend kann die zuvor ermittelte Resonanzfrequenz auf den Bereich +/- 1 MHz gezoomt werden.

Alle weiteren Details gibt es in der PDF – Datei: TFT Display

Arduino Software Arduino_TFT

Weitere Varianten des Arduino Antennen Analyzer gibt es auch von:

DK2JK – Heribert Schulte
http://www.dk2jk.darc.de/

DJ7OO – Klaus Hirschelmann
http://www.kh-gps.de/ant_analyzer.htm

18 Antworten

  1. norbert

    Reaktionen:

    27.07.2015 Heinz Küpper

    Lieber OM Norbert!

    An dieser Stelle ein herzliches Dankeschön für die Veröffentlichung des Arduino Antennen Analysator. Es hat mir beim Bau einer Magnet-KW-Loop ( 1 m Durchmesser) ganz tolle Dienste geleistet.
    Beim Vergleich mit einem kommerziellen -teuren- Analysator waren die messtechnischen Unterschiede nur äußerst gering.

    Man sieht, es muss nicht immer teuer sein. So ein einfaches und gutes Gerät sollte man besitzen.

    73`
    Heinz DL9YDK

    21.12.2014 Heribert – DK2JK

    Hallo OM Norbert,

    wir haben den Antennenanalysator als Gemeinschaftsarbeit im OV Belecke o03 und Meschede o30 gemacht. 10 Platinen wurden entworfen und geätzt. Wir haben im Wesentlichen Deine Schaltung genommen, jedoch mit einem anderen DDS- und Arduino- Modul. Beim Dortmunder Flohmarkt traf ich Norbert DJ7JC, der mich auf die Version mit TFT Display aufmerksam machte; das werde ich ausprobieren !

    Wünsche frohe Weihnachten und guten Rutsch ins neue Jahr.

    73
    Heribert – DK2JK

    Beitrag vom OV Meschede

    25.05.2015 – Donald Schwab -DC2WK

    Hallo Norbert,
    auch von mir ein herzliches Dankeschön für das teilen dieses Projektes und des Sourcecodes.

    Ich habe mir erlaubt ein paar Erweiterungen in den Code einzubauen:
    – Berechnung der Reflektion in %
    – Speichern der Messung als Bilder mit eigenem Knopf
    – Anzeige der Frequenz, SWR und Reflektion beim Anklicken eines Grafikpunktes
    – Eigene Version für kleine Subnotebooks mit kleineren Auflösungen

    Gerne sende ich Dir bei Interesse den neuen Code und die EXE zu

    73 de DC2WK

    • Peter Geisler - DL6CLM

      Hallo, lieber OM Norber – ein großes Dankeschön für diese Veröffentlichung und die hilfreichen Tips für das Projekt. Da ich ‚antennengeschädigter Funker‘ bin, habe ich mir eine Magnet-Loop für 80 und 40 m entworfen. Dabei soll mir dieser Antennen-Analyzer behilflich sein, die richtigigen Kopplungsbedingungen für ein niedriges SWR zu finden. Wirklich ein tolles Gerät, vom geringen Aufwand her, verglichen mit kommerziellen Geräten. Anbei lerne ich mit 70+ noch allerhand Neues dazu und bleibe geistig fit 🙂

  2. JORGE - (CT1XV)

    Hello !
    Nice project. I have already built a k6bez/Vk3yy version. A stand alone is in my mind and this one fulfill my needs. I just wanto to see if this runs on XP32
    73
    ct1xv

  3. Frank

    Hallo , ein tolles Projekt. Funktioniert auf Anhieb.
    Nur scheint das Programm vna.exe unter Windows 10 nicht zu laufen. Gibt es da Erfahrungen ?
    Viele Grüße

    Anmerkung von Norbert – DG7EAO
    Die Software funktioniert auch unter Windows10. Allerdings wird der früher verwendete Comport – Adapter nicht mehr von Win10 unterstützt. Vielleicht mal unter Ebay nach einem Adapter für WIN10 suchen.

  4. Udo

    hallo,
    habe leider ein Problem beim kompilieren.
    ugc_font_ncenR14r ist nicht deklariert.
    Schriftfont kann ich nicht finden.
    Vielleicht kann jemand helfen.
    danke

  5. Peter

    Vielen Dank für die Bauanleitung. Ich habe den Analysator (abweichend) unter Verwendung eines Arduino Nano erfolgreich nachgebaut. Das Display steuere ich nicht mit Software-SPI, sondern mit Hardware-SPI an. Vorteil ist ein deutlich schnellerer Bildaufbau. Dafür müssen dann die Ausgänge des Arduinos so verteilt werden, dass für das Display die SPI-Pins D11 (MOSI) und D13 (SCK) verwendet werden können, da diese beim HW-SPI vorgeschrieben sind. Außerdem muss im Quellcode statt
    Ucglib_ILI9341_18x240x320_SWSPI ucg(/*sclk=*/ 10, /*data=*/ 11, /*cd=*/ 6 , /*cs=*/ 5, /*reset=*/ 4);
    die Zeile
    Ucglib_ILI9341_18x240x320_HWSPI ucg(/*cd=*/ 7 , /*cs=*/ 5, /*reset=*/ 4);
    verwendet werden

    Aufgefallen ist mir, dass die Aktualisierung des Displays nicht mehr erfolgt, sobald ich die serielle COM-Schnittstelle am PC aufmache und somit die Verbindung zum Nano herstelle (er hat ja den USB-Port direkt auf dem Board). Mit dem PC-Programm kann ich den Analysator weiterhin bedienen. Auch wenn ich die serielle Schnittstelle wieder schließe, erfolgt keine Aktualisierung des Displays mehr. An dieser Stelle bin ich momentan ratlos – über Tipps dazu würde ich mich sehr freuen.
    Viele Grüße
    Peter (DL5DLA)

  6. Attila HA6QT

    Hallo,

    Ich habe das Gerät aufgebaut. Leider die Messwerte sinken. Die Spannungen sind nur 40 – 50 mV bei der A0 und A1 Schnittstellen.

    Könnte jemand mir bitte messen, wiel viel DC Spannung bei konstanter Frequenz da sein muss? Natürlich mit einem 50 Ohm Abschlusswiederstand.

    Vielen Dank im Voraus!

    73! HA6QT, Attila

  7. S.Treptau

    Hallo OM
    Ich bin dabei mir eine Loop zu bauen , dazu brauche ich ein
    Antennen Analayser.
    Mein Problem ist ich kann keine Platienen mehr Ätzen und programieren.
    Ich benötige die Platienen und das Programm.
    Was würde mir das kosten.
    73
    Siegfried (DG2DBV)

  8. dl5raz

    Hallo OM Norbert,
    Problem auf dieser Web Seite: > Arduino Antennen Analyzer > VNA PC Software
    kommt eine Fehlermeldung:
    Die Datei befindet sich im Papierkorb des Eigentümers.

    Ich finde Deinen Analyzer gelungen und nutze diesen zur Abstimmung einer Mag. Loop sehr oft
    73 Hans, dl5raz

  9. Rene Van Berkel

    Hello, wanna make also this analyzer but….. seems that Eckstein Componente doesn’t have the same dds modul has. Can i use a diffrent 1??
    PD0REB

Schreibe einen Kommentar