Freitag, 18. November 2016

Stehwellenmessgerät frei nach ZL1CVD - #SWRMeter

In diesem Beitrag geht es um ein Stehwellenmessgerät. Es handelt sich dabei - im wesentlichen - um ein ähnliches Gerät wie auch ZL1CVD in seinen Videos auf Youtube zeigt. Allerdings sehe ich es - im Vergleich zu Ihm - nicht so kritisch mit der Veröffentlichung der Software und der Hardware.
Wer das Gerät also nachbauen möchte kann dies gerne tun. Ich würde jedoch gerne um eine Rückmeldung zum Aufbau und auch die Messungen mit dem Gerät bitten. Auch Verbesserungen der Schaltung und der Software sind absolut gerne gesehen und auch erwünscht.
Es gibt neben der Umsetzung von ZL1CVD sehr viele andere Umsetzungen und Ausführungen eines solchen Messgerätes im Internet, so dass es keinen Sinn ergeben würde auch nur daran zu denken meine Arbeit zurück halten zu müssen.
Auch gibt es für einige hundert Euro kommerzielle Produkte, für beispielsweise diejenigen welche sich den Aufwand und Spaß des selbst basteln ersparen wollen.
Die Varianten für die im Internet vorhandenen Messgeräte bestehen aus verschiedenen Ausführungen, angefangen mit einem Stück Koaxialkabel und wenigen Bauteilen (einfachste Variante) bis hin zum vollautomatischen Messgerät mit Display, Mikrocontroller, Tasten und Batterie.

Was macht nun aber ein solches Gerät?

Antwort: Es liefert Informationen über die Anpassung einer Antennenanlage an einen Sender. Hierzu muss man wissen dass eine Antennenanlage an den Wellenwiderstand des Senders angepasst werden muss.
Ist sie das nicht werden die hochfrequenten Signale von der Antenne, oder auch dem Kabel in das Gerät zurück reflektiert. Man bringt also durch das aussenden von Signalen wieder Energie in den Sender ein, die eigentlich aber von der Antenne abgestrahlt werden soll.
Schlimmer noch entstehen durch diese Reflexionen im Kabel sogenannte Mantelwellen, die unerwünschte Nebenaussendungen auf anderen Frequenzen erzeugen.
Das Messgerät ermittelt nur den Grad der Anpassung für eine oder mehrere Frequenzen. In der Regel misst man mit einem solchen Gerät die Anpassung für einen ganzen Frequenzbereich.

Das Ergebniss wird dann entweder auf angeschlossenen Zeigergeräten oder wie im Fall des Messgeräts von ZL1CVD sogar auf einem kleinen Display dargestellt. Worauf ich aber aufgrund des Aufwandes der Implementierung momentan verzichte.

Was benötigt man nun also um eine solche Messung durchführen zu können?

Antwort: Eine Einheit welche in der Lage ist ein Signal in einer bestimmten Frequenz und mit einer guten Stabilität zu erzeugen. Dabei sollte die Frequenz des Signals anpassbar sein. Dann eine Messschaltung um die Reflexionen als auch das in das Antennensystem eingebrachte Signal hinreichend zu erfassen.
Und zuletzt noch eine Möglichkeit die gemessenen Daten zu erfassen, abzuspeichern oder auch weiter an einen PC zu transferieren. Alternativ einen integrierten Puffer der die Messdaten bis zum Abruf vorhält.

Auf meinem Git kann die Schaltung für das Gerät heruntergeladen werden. Eine Platine habe ich dazu nicht erstellt. Mein Aufbau befindet sich auf einer beidseitigen Lochraster-Platine. Lediglich die grundlegenden Positionen der diskret aufzubauenden Komponenten habe ich im Layout der Schaltung skizziert. Dies hilft mir beim Aufbau auf einer Lochrasterplatine ungemein.
Das folgende Bild zeigt die fertig aufgebaute Platine von oben. Das darauf folgende Bild die Platine von oben.

Platine von oben
Platine von unten
Hier ist zu sehen das ich für die Verbindungen Leiterbahnen aus Draht und Lötzinn erstellt habe und die Abstände zwischen den Bauteilen recht großzügig gestaltet habe. Für die Messbrücke (Wheatstone) habe ich möglichst genaue Bauteile (Bauteile mit geringer Toleranz) verwendet - zumindest für die verwendeten 50 Ohm Widerstände.

Die zu messenden Signale werden mittels einem LM358 um den Faktor 11 verstärkt, die gemessene Spannung also angehoben. Der LM358 ist ein Operationsverstärker welcher zwar bereits in die Jahre gekommen ist, jedoch trotzdem gute Ergebnisse liefert. Den von ZL1CVD verwendeten OPAMP erwarte ich noch per China-Mail, ich bin gespannt wie sich die Messergebnisse verändern werden.
Als Signalgenerator - welcher einen Frequenzbereich von etwa 800kHz bis 160MHz ausgeben kann - verwende ich wie auch ZL1CVD einen Si5351 Chip.
Breakoutboard Si5351
Allerdings verzichte auch auf die Erstellung einer Schaltung um den Si5351 und verwende direkt ein Breakout-Board von adafru.itDieses kann mit verschiedenen Eingangsspannungen verwendet werden und ist 5V tolerant an den I2C Eingangsleitungen. Dies ist im besonderen wichtig, da der Mikrocontroller ein Arduino Nano ist der mit 5V betrieben wird.
Die maximale Stromstärke, mit der das hochfrequente Signal aus dem Signalgenerator ausgegeben wird, liegt bei 8mA. Als Spannungsquelle wird der USB-Anschluss eines Rechners verwendet, mit dem das Gerät auch gesteuert wird.

Der Ablauf der Messung(en) erfolgt in etwa wie folgt:


Zunächst beginnt der Signalgenerator ein Signal auszusenden, getriggert durch den Arduino. Hierbei entstehen die oben beschriebenen Reflexionen, oder auch nicht. Eine Wheatstone-Messbrücke teilt die fortlaufenden und zurücklaufenden Signale auf und speist diese (gefiltert) in den Operationsverstärker, den LM358. Die Aufteilung geschieht durch die beiden in der Schaltung enthaltenen Germaniumdioden (1N60).
Der Operationsverstärker verstärkt die beiden Signale jeweils um den Faktor 11, so dass die Messwerte vom Mikrocontroller in einer für Ihn besseren Auflösung messbar werden.

Der Mikrocontroller misst - sobald der Signalgenerator sein HF-Signal aussendet - eine vom Anwender zu definierende Zeit lang die vorlaufenden und zurücklaufende Reflektionen. Genauer gesagt die Spannungen welche von Operationsverstärker ausgegeben werden.
Die Anpassung der Antenne an den Sender ermittelt man nun durch die Bildung des Verhältnisses aus den beiden Messwerten. Das VSWR ist immer größer gleich dem Wert 1, daher muss immer durch den größeren Wert geteilt werden.

VSWR = Umax / Umin

Mein SWRMeter kann, wie im Folgenden Bild zu sehen ist, bis in den VHF - Bereich, also dem 2m Band arbeiten. Der VSWR-Wert ist übrigens nicht linear, so wird bei einem VSWR von drei (Zahlenwert 3) 25% der eingebrachten Leistung reflektiert. Und bei einem Zahlenwert von 1.5, 4% und bei einem VSWR von 2 = 11%.

Der Vorgang des Messens wird dann normalerweise für einen ganzen Frequenzbereich wiederholt, so dass eine Aussage für die Anpassung eines Antennensystems auf diesen Messbereich getroffen werden kann. Das folgende Bild zeigt die Messung einer selbst gebastelten Groundplane-Antenne welche für das 2m Band und 70cm ausgelegt worden ist.
Messung 2m - Band einer Groundplane
Ein Vergleich zu anderen Messgeräten und eine Kalibrierung bleibt momentan noch aus, der Signalgenerator ist jedoch in der Lage Kalibrierungswerte anzunehmen und auch anzuwenden. Auch die Genauigkeit der Messungen werde ich bei Gelegenheit einem anderen Messgerät gegenüberstellen.

Als Interface für den Anwender verwende ich kein Display und Taster sondern die USB-Schnittstelle des verwendeten Arduino. Ich habe ein Python-Script geschrieben welches in der Lage ist alle Funktionen des Messgerätes zu bedienen zu können.
Es können Messungen über Frequenzbereiche definiert und durchgeführt, Standard-Einstellungen gespeichert, die Signal-Ausgabestärke in mA gesetzt und die drei Ausgabekanäle des Breakoutboards separat angesteuert werden. 

Mögliche Script-Parameter
Weiter gibt das Script wenn erwünscht eine grafische Darstellung der Messung und oder auch eine CSV-Datei aus. Die grafische Darstellung wird dabei zur Laufzeit der Messung aktualisiert. Wird das Script ohne die Ausgabe der grafischen Ausgabe gestartet wird lediglich ein Fortschrittsbalken auf der Konsole angezeigt.
Wer nun aber ein Problem damit hat eine Kommandozeile zu bedienen findet diverse Windows-Batch-Files und Scripte welche dazu verwendet werden können um die einzelnen Amateurfunk-Bänder scannen zu können.
Die Skripte verwenden Standard-Parameter, welche jedoch durch bearbeiten geändert werden können.

Ausgabebeispiel einer Messung
Es existiert auch ein Script über das per PIP alle benötigten Python-Module nachträglich installiert werden können. Wichtig ist nur das python 2.7.x bereits installiert ist.

Wie bereits erwähnt ist es auch möglich die drei Ausgabe-Kanäle des Signalgenerators einzeln zu aktivieren und deaktivieren, um diese auch separat verwenden zu können. Wichtig bei der Verwendung dieser ist es zu wissen das nur der Kanal "0" an der Messbrücke angeschlossen ist, dass die Ausgabefrequenz per Angabe der Start-Frequenz definiert wird, und dass die Stromstärke der sekundären Kanäle aktuell fest bei 2mA liegt.

Hier ein Video mit einer Messung:


Schlussendlich muss ich noch dazu sagen: Die dargestellten Messungen habe ich nicht selbst durchgeführt sondern mir von einem befreundeten und lizenzierten Funkamateur helfen und durchführen lassen.

Keine Kommentare:

Kommentar veröffentlichen

UpConverter fixed

Vor einiger Zeit berichtete ich darüber das mein Versuch einen UpConverter für mein rad1o zu bauen leider fehlgeschlagen ist. Es lag an der...