Page 1 of 1

Automatischer Antennentuner

Posted: Thu 30. Jan 2014, 15:39
by DL1CR
Liebe OMs,
das Engagement von Gerrit am letzten Sonntag - nochmals vielen Dank - hat mich dazu motiviert, mein Traumprojekt anzugehen. Dazu kam noch das entsprechende Interesse von Andy/Andi ??? und dem netten OM ??? aus Oldenburg an meiner linken Seite (QRZ!) .

Heute habe ich erst einmal meinen Brotbrett Z-Match Tuner (s. o.) :lol: mit einer SWR-Einheit ergänzt. Erste Versuche haben ergeben, dass sich aus den gemessenen Spannungen schlüssig Leistungswerte und das SWR berechnen lassen. Morgen werde ich mich an die entsprechende Software für den MC machen. Wenn alles klappt, könnte das SWR-Meter dann fertig sein. Schaltbild und Software liefere ich - wenn Interesse besteht - nach, Bilder/Video in jedem Fall.

Dann geht es an die Umschaltung der C's und L's . Ich habe mir ein paar bistabile Relais bestellt, die jeweils zwei Wicklungen für SET und RESET haben. So bleiben die Schaltzustände erhalten und der Tuner kann nach der Abstimmung praktisch stromlos bleiben. Ein autarker Betrieb mit Batterien wäre so möglich und das würde mir sehr zusagen. Ich weiß aber im Moment nicht, wie ich die ca. über 30 Schalttransistoren mit den Ports des MC ansteuern sollte. Charlieplexing - prima Tipp von Gerrit - ist sicherlich eine Möglichkeit, oder?
73 Chris
swr.jpg
swr.jpg (194.92 KiB) Viewed 6114 times

Re: Automatischer Antennentuner

Posted: Sat 1. Feb 2014, 12:29
by DL9GFA
Hallo Chris,

sehr schön, das Projekt!

Das Charlieplexing ist für die Ansteuerung dieser vielen Transistoren für die Relais nicht gut geeignet, auch wenn man sich mit vielen zusätzlichen Dioden irgendwie eine Dekodiermatrix ausdenken könnte. Für diesen Zeck sind Schieberegister wie der 74xx595 oder I²C-Port-Expander, z.B. PCF8574, besser geeignet. Man kann jeweils mehrere von beiden einsetzen, um die I/O-Anzahl weiter zu erhöhen. Ich würde gleich den "größeren Bruder" PCF8575 wählen, der dank I²C mit nur zwei Ansteuer-Pins 16 parallele I/Os bietet.

Ich freue mich schon auf den weiteren Fortschritt.

vy 73 de Gerrit, DL9GFA

P.S.
Andi schreibt sich selbst mit 'i' und der nette OM aus Oldenburg ist Eike, DL3IKE.

Re: Automatischer Antennentuner

Posted: Sat 1. Feb 2014, 20:13
by DL1CR
Hallo Gerrit,

nett, dass du mal reingeschaut hast. Vielen Dank auch für den Tipp mit der Ansteuerung. Ich habe auch schon gegoogelt und bin auf einen interessanten Baustein von - wer hätte es gedacht - TI gestoßen: tpic6b595 . Ein 8 Bit Schieberegister, kaskadierbar und mit 150mA Stromsenken ausgestattet. Damit kann ich meine bistabilen Relais sicherlich direkt ansteuern. Der Plan ist - im Moment noch -folgender, ich werde deinen Vorschlag natürlich auch in Erwägung ziehen.

Es soll ein Z-Match Tuner werden, bei dem ausschließlich die C's geschaltet werden. Üblicherweise ist das ein Einfach- und ein Doppeldrehko. Der Doppeldrehko lässt sich prima mit den 2fach - Schaltern der bistabilen Relais umsetzen. Ich brauche also pro Drehko 8 Relais und 2 Schieberegister (s.o.), denn jedes Relais hat 2 Erregerwicklungen.

Im ersten Schritt will ich die Relais erst einmal manuell bedienen, und zwar über eine AD-Wandlung von Potiwerten. Dann bekommt mein Brotbrett-Tuner Konkurrenz und ich sollte auch mit 100W keine Überschläge bekommen. Über die Spannungsfestigkeit der C's muss ich mir noch Gedanken machen. (Ich dachte an 1000V, denn bei einer Impedanz von - angenommenen - 1KOhm und 100W beträgt die Effektivspannung etwas 300V.)

Jetzt aber freue ich mich - nach einigen Stunden Tüftelei - über mein funktionierendes SWR-Meter.
Das folgende Video und der Quellcode zeigen, wie ich es umgesetzt habe. Interessanterweise stimmt meine quantitative Interpretation der gemessenen Spannungen recht gut mit den tatsächlichen Werten überein, soweit ich sie mit dem Oszi nachvollziehen kann. Bei höheren Frequenzen ab 14Mhz bin ich mir da nicht mehr sicher, aber natürlich gehört alles auch viel besser abgeschirmt und nicht auf ein Holzbrett, hi.

73 Chris
YouTube Video: http://youtu.be/d3uBbG9niGo

Code: Select all

//declare protoypes of used functions
#include "main.h"
#include "meineFunktionen.h"
#include "ADC10.h"
#include "LCDdogm.h"
 
 //defines
 #define ADChannel    0                        //ADC-Kanal
  
//******************************* MAIN **************************************
void main( void) {
    unsigned int i, fw, rf, swr10, fwPow10, rfPow10;
    char lowPower;
      
      vCPU_init();                            //disable WDT and initialize Basic Clock Module to 1MHz
      vLCD_init(16);                          //init display with 16 columns, Cursor at 0,0
  
      vADC_init(ADChannel);                   //init ADC for single measurements
  
      // Ausgabe Logo 
      vLCD_gotoxy(0,0);
      //           0....5....0....5    
      vLCD_puts("SWR-Meter DL1CR");
     
      while(1) {                              //endless loop doing the main task
        // Get value 
        fw = 0;                               //Vorlaufwert (ForWard)
        for (i=0; i<30; i++) {                //zur Mittelwertbildung lese ich 30 mal
        fw += uiADC_read(0);                  //read voltage 
        vDelay_ms(1);                         //wait to reduce refresh rate
      }
      fw = fw/30;                             // Rückwandlung des originalen AD-Werts
    
      rf = 0;                                 //Rücklaufwert (ReFlected)
      for (i=0; i<30; i++) {                  //read 30 times for average  
        rf += uiADC_read(1);                  //read voltage
        vDelay_ms(1);                         //wait to reduce refresh rate
      }                                            
      rf = rf/30;                             // Rückwandlung des AD-Werts
    
      // Berechnung Leistung
      // 1W @ 50Ohm  ->  7,07V eff            // P = (U^2) / R  ->  U = Wurzel(P * R)                          
      // 7,07V eff   ->  0,141V eff           // Übersetungsverhältnis des Wandlers 25:1, Spannungsteiler 2:1
      // 0,141V eff  ->  0,2V                 // theoretischer Spitzenwert durch Gleichrichtung (Durchlassspannung der Schottky-Diode s.o.)
      // 0,2V        ->  fw = 57              // 3,59V <=> fw = 1024 (max. AD-Wert), 0,2V <=> fw = 1024 * 0,2/3,59  = 57
      // P ~ U^2 = K * U^2 = k * fw^2 =>           
      // k = P/(fw^2) = 1/57^2 = 1/3249
      // P = fw^2 / 3249
      // fwPow10 = fw*fw/325                  // zur Erzeugung eines Nachkommaanteils inerhalb der Integer-Arithmetik rechne ich mit dem 10fachen Wert 
    
      // Durchlassspannungswert der Schottky-Diode aufaddieren  0,1V -> 27 (s.o.)
      fw+= 27;
      rf+= 27;
     
      // Lowpower Zustand erkennen
      lowPower = fw < 40;

      // Leistung berechnen
      fwPow10 = 0;
      rfPow10 = 0;
      if (! lowPower) {
          fwPow10 = fw*fw/325;
          rfPow10 = rf*rf/325;
      }
        
      // Berechnung SWR //
      // swr =  (fw + rf) / (fw - rf)           // SWR-Formel
      // swr10 = 10 * (fw + rf) / (fw - rf)     // zur Erzeugung eines Nachkommaanteils inerhalb der Integer-Arithmetik rechne ich mit dem 10fachen Wert 
      if (rf >= fw)                             // unbrauchbare Messwerte und Divisionfehlerquellen abfangen      
          swr10 = 99;                           // in diesm Fall gilt SWR = 9.9     
      else
          swr10 = 10 * (fw + rf) / (fw - rf);   // SWR-Formel, s.o.
        
      // Ausgabe SWR  
      vLCD_gotoxy(0,1);
      //           0....5....0....5    
      vLCD_puts("SWR             ");
      vLCD_gotoxy(4,1);
    
      if (lowPower)                             // keine Anzeige bei zu geringer Eingangsleistun
          vLCD_puts("low power");                
      else {
          vLCD_putui(swr10/10);                 //Vorkommawert = swr10 geteilt durch 10
          vLCD_puts(".");                       //Dezimalpunkt
          vLCD_putui(swr10%10);                 //Nachkommawert = swr10 modulo 10 (Rest der Division durch 10)
          // SWR Balkenanzeige                    
          vLCD_puts(" ");                       //Leerzeichen
          if (swr10 > 30)                       //max. Balkenanzeige bei SWR = 3
              swr10 = 30;
          for (i=12; i <= swr10; i+=2)          //swr10 < 12 <=> kein Balken, < 14 <=> ein Balken, 16<=>2, 18<=>3, ... 30<=>9
            vLCD_putc(0xdb);                    //Balkenzeichen bei der DOG - Bitmap  
      }
    
      // Ausgabe fwPower10/rfPower10  
      //           0....5....0....5    
      //           Fw 20W  Rf 2.9W 
      
	  // Zeile löschen
	  vLCD_gotoxy(0,2);
      vLCD_puts("Fw              ");
    
      vLCD_gotoxy(3,2);
      vLCD_putui(fwPow10/10);                   //Vorkommawert = fwPow10 geteilt durch 10
      if (fwPow10 < 100) {                      //Nachkommaanteil ausgeben
          vLCD_puts(".");                       //Dezimalpunkt
          vLCD_putui(fwPow10%10);               //Nackommawert = fwPow10 modulo 10 (Divisionsrest)
      }    
      vLCD_puts("W");                            //Einheit

      //           0....5....0....5    
      //           Fw 20W   Rf 2.0W 
      vLCD_gotoxy(9,2);
      vLCD_puts("Rf");
      vLCD_gotoxy(12,2);
      vLCD_putui(rfPow10/10);
      if (rfPow10 < 100) {                    //Nachkommaanteil ausgeben
          vLCD_puts(".");                      //Dezimalpunkt
          vLCD_putui(rfPow10%10);              //Nackommawert = rfPow10 modulo 10 (Divisionsrest)
      }    
      vLCD_puts("W");                            //Einheit
    
      vDelay_ms(100);                            //wait to reduce refresh rate
   }
}

Re: Automatischer Antennentuner

Posted: Sun 2. Feb 2014, 00:06
by DL9GFA
Hallo Chris,

wirklich sehr schön; so ein Video bringt doch wirklich noch viel mehr herüber als ein statisches Foto. Ich habe das immer unterschätzt, aber so macht es noch mehr Spaß. :D

Einen Gedanken will ich noch teilen: Ich mag das Z-Match-Konzept sehr und setze es häufig (manuel) ein. Die Abstimmresonanz ist je nach anzupassender Impedanz aber manchmal wirklich seeeeehr schmal. Wenn die Cs schaltbar sind, dürfte deren Abstufung/Quantisierung bei diesem Konzept besonders erfolgskritisch sein. Darauf sollten wir Augenmerk richten. Ich überlege, ob wir das nicht vorher simulieren sollten.

Wie wäre es, die Drekos mit Servomotoren, Getriebemotoren oder Schrittmotoren mit zusätzlichem Getriebe einzustellen? Die Herausforderung der "feinfühligen" Abstimmung bleibt, aber es gibt keine Quantisierung (außer Schrittmotor). Wenn Leistungen von >=100W behandelt werden sollen, wird der ganze Aufbau sowieso nicht so klein.

HW?

vy 73 de Gerrit, DL9GFA

Re: Automatischer Antennentuner

Posted: Sun 2. Feb 2014, 13:18
by DL3IKE
Hallo, da bin ich nun endlich ;-)
Schön, daß das Thema ATU mit Leben gefüllt wird. Mal schauen, wie viel ich dazu beitragen kann. :?
Meine bisherigen Bemühungen, meinen 2x20m-Dipol mit 6,5m Hühnerleiter (siehe QRZ.com) an das Speisekabel anzupassen sahen so aus:
Image

50Ohm-Kabel -> 1:4 Guanella Leitungsübertrager / BalUn (nicht auf dem Bild) -> 1nF Drehko, zuschaltbare 1nF für 160m -> 2x 36µH Doppelrollspule -> 200pF Drehko -> Hühnerleiter
Die Drehkos werden von Schrittmotoren angetrieben, die Rückmeldung erfolgte über Potis und Drehspulinstrumente. Die Rollspule hat auch ein Poti zur Rückmeldung.
Der Erfolg war mäßig, vermutlich auch, weil die Restkapazität mir einen Strich durch die Rechnung macht. Das Auffinden eines brauchbaren Resonanzpunktes ohne breitbandigen Antennenanalyzer ist mühselig und die Bedienung dank Frickel-low-tec alles andere als komfortabel. Funkspaß entsteht so nicht so richtig...
Weil es sich gerade anbot tut zur Zeit ein LDG AT7000 Automatiktuner mehr oder weniger gut seinen Dienst, allerdings auch nur am IC707.

Vielleicht läßt sich der Aufbau da oben aber ja mit Eurer Hilfe optimieren und so weit automatisieren, daß man auch ungeplante Frequenzwechsel in brauchbarer Zeit realisiert bekommt.

Alternativ dazu kann ich einen bzw. 1,5 alte AAG100 (militärische DDR Anpassgeräte) bekommen. Dort werden schaltbare Spulen und Kapazitäten verwendet, allerdings nicht mit bistabilen Relais. Zum Stromsparen werden sie mit 24V geschaltet und danach mit 5V gehalten. Ist nicht optimal, aber da könnte ich mit leben. Da der Tuner asymmetrisch ist, könnte man ggf. aus zweien einen symmetrischen realisieren.

Soweit erstmal von mir dazu.

73s und ein schönes Wochenende

Eike DL3IKE

Re: Automatischer Antennentuner

Posted: Mon 3. Feb 2014, 20:45
by DL1CR
DL9GFA wrote:Einen Gedanken will ich noch teilen: Ich mag das Z-Match-Konzept sehr und setze es häufig (manuel) ein.
Das freut mich. Ich habe einiges über das Konzept gelesen und es hat mir - ohne jede Erfahrung - zugesagt. Vielleicht, weil es früher öfter verwendet wurde, vielleicht, weil es nicht das Übliche ist, vielleicht, weil es schwer durchschaubar :roll: ist. Um so mehr war ich überzeugt, als der Testaufbau auf Anhieb funktionierte.
DL9GFA wrote:Die Abstimmresonanz ist je nach anzupassender Impedanz aber manchmal wirklich seeeeehr schmal. Wenn die Cs schaltbar sind, dürfte deren Abstufung/Quantisierung bei diesem Konzept besonders erfolgskritisch sein.
Darüber habe ich mir auch schon einige Gedanken gemacht. Um mir ein Bild von der notwendigen Abstufung zu machen, habe ich bei verschiedenen Abstimmungen - auch mit kleiner Drehko-Kapazität des Parallelkreises - testweise ein 2,2pF C parallel geschaltet. Das SWR stieg teilweise von 1.2 auf 1.4, also durchaus merklich, wenn auch unkritisch.
Meine Drehkos haben ein Endkapazität von 500p (Serie) und 2mal 330p. Ich denke, ich versuche es mal mit der Abstufung 200/100/50/25/12,5/6,3/3,1/1,6 pF. Die großen C's (200p = 2 x100 parallel bis 25p = 4 x 100p in Reihe) sollen FKP-2 1000V/250V von Wimo werden, die kleinen 500V Keramik-Scheibenkondensatoren (je 2 in Reihe). Letztere haben aufgrund hoher Verluste keinen guten Ruf (siehe FA 1.2014 S. 69), werden aber meist nur anteilig zum Einsatz kommen. Ich versuchs einfach mal.
DL9GFA wrote:Wie wäre es, die Drekos mit Servomotoren, Getriebemotoren oder Schrittmotoren mit zusätzlichem Getriebe einzustellen? Die Herausforderung der "feinfühligen" Abstimmung bleibt, aber es gibt keine Quantisierung (außer Schrittmotor). Wenn Leistungen von >=100W behandelt werden sollen, wird der ganze Aufbau sowieso nicht so klein.DL9GFA
Das würde viele Probleme lösen (s.o.), aber da Mechanik nicht so mein Ding ist, will ich erst einmal mit den Relais probieren. Ausserdem reizt mich enorm der geringe Platzbedarf und das geringe Gewicht des Konzepts. QRO ist auch nicht mein Ding, wenn es mit max. 50W sicher klappt, bin ich glücklich. BTW Ich hatte heute ein 15m SSB-QSO mit einem Texaner mit 50W an 2x3,7m Schaltdraht unter Dach :D :-))

HW? 73, Chris

Re: Automatischer Antennentuner

Posted: Mon 3. Feb 2014, 21:00
by DL1CR
DL3IKE wrote:Hallo, da bin ich nun endlich ;-)
Es freut mich auch sehr, von Dir zu hören. Dein symmetrischer Tuner ist wirklich beeindruckend, aber ich kann mir vorstellen, dass ein Bandwechsel schon ganz schön nerven kann. Ich hatte bisher mit einem Multibanddipol und dem eingebauten Tuner meines TRX gearbeitet und empfinde die Abstimmerei von 2C's an meinem L-Mach als Zumutung, hi. Heute ist mir dadurch ein Anruf auf der 7.200MHz Runde durch die Lappen gegangen.

Ich denke, bei dir würde sich eine manuelle Lösung mit Speichermöglichkeiten anbieten. Die von dir per Hand gefundenen Abstimmpositionen werden gespeichert und auf Abruf per MC wieder angefahren. Das wäre auch ein schönes Konzept für mich, dass würde mir sehr gefallen. Gerrit hat ja auch einen Frequenzzähler entworfen, der die am TX gewählte Frequenz erkennen kann und die zugehörige Abstimmung dann durchführt. Ein Halbautomat, sozusagen. (Gab es mal beim VW-Käfer. Beim Berühren des Schalthebels wurde die Kupplung gelöst, hi)

HW? 73 Chris

Re: Automatischer Antennentuner

Posted: Wed 5. Feb 2014, 21:48
by DL1CR
Es gibt Neuigkeiten. Auf der Suche nach geeigneten C's habe ich einen entsprechenden Thread beim Amateurfunk-Forum aufgemacht. Die Rückmeldungen könnt ihr dort lesen.
Den von einem OM gebrachte Hinweis auf die Abstimmungsprobleme speziell beim Z-Match nehme ich ernst, aber im Moment würde mir eine halbautomatische Lösung mit manueller Einstellung und gespeicherten Werten genügen.
Bei der Auswahl der passenden C's bin ich weitergekommen. Ich habe einfach mal den Tuner auf meinen Multiband-Dipol abgestimmt, die Werte der Drehkos gemessen und durch Wima FKT-2 ersetzt. Um die exakten Werte zu bekommen, musste ich mehrere Werte, z.B. 220p, 220p und 470p in Reihe schalten. Das SWR war ähnlich klein (kleiner 1.1) und bei 50W lief alles unauffällig. Also scheinen sich die Verluste der Fest-C's nicht störend auszuwirken, zumindest bei dieser Konstellation.
Dann bin ich auf die Idde gekommen, die im Tuner auftretenden Spannung an den drei C zu messen, und zwar bei allen Bänder, die mein Multiband-Dipol hergibt. Die Eingangsspannung am TX-Ausgang betrug jeweils ca. 20V eff, was einer Leistung von 8W entspricht.
3,5 MHz 80V, 80V, 10V
7 MHz 20V, 40V, 60V
14 MHz 0V, 90V, 40V
21 MHz 20V, 80V, 60V
28 MHz 15V, 80V, 60V
Natürlich sind diese Werte nur eine grobe erste Näherung. Wenn man zwei annähernd gleiche FKPs mit jeweils 250V~ in Reihe schaltet, sollte auch bei 100W noch "Luft" sein. Ich bin also jetzt so weit, es mal mit den preisgünstigen Cs auszuprobieren.
Noch etwas. Beim oben beschriebenen Test bin ich auf die Idee gekommen, die Feinabstimmung der Kapazitäten nicht durch Parallelschaltung von kleinen Werten, sondern durch Reihenschaltung von sehr großen Werten zu realisieren. Da muss ich noch durchdenken und -rechnen.

HW 73 Chris

Re: Automatischer Antennentuner

Posted: Sat 8. Feb 2014, 19:56
by DL1CR
Auf Anregung eines OMs aus dem Amateurfunk-Forum habe ich mir jetzt einen Satz muRata Class 1 Keramikkondensatoren bestellt. Es sind 2kV Typen mit einem Q von 1000. (Ich sehe gerade, dass in meinem Yaesu FT-450 der gleiche Typ mit 3,15kV eingesetzt wird). Damit fahre ich sicherlich besser als mit den Wimas. ;) Leider waren nicht alle Werte lieferbar, deshalb folgende Abstufung:
220p
110p = 100p // 10p
57p = 47p // 10p
27p = 12p // 15p
12p
6p = 12p + 12p
3p = 12p + 12p + 12p + 12p (oder Epoxyd beidseitig Kupfer)
1,5p = Epoxyd beidseitig Kupfer
Es war nicht einfach, einen Distributer zu finden, der an Privatpersonen und in kleinen Stückzahlen liefert. Ich bin dann bei DigiKey gelandet. Die 18 Euro Versandkosten :cry: (soll heißen Mindermengenzuschlag) habe ich etwas ausgehebelt, indem ich von jedem Wert gleich 20 C's bestellt habe (Stückpreis ca. 30 Cent). Falls jemand Interesse an den Teilen hat, bitte melden.

73 Chris