(03-01-2012 0:50)TG50 napisał(a): Czemu w symulatorze dla impedancji anteny Z=40+j30 |Z|=50 program pokazuje początkowy SWR=2 ???
Właściwie Tomek SQ8MHI odpowiedział wyczerpująco na to pytanie. Może tylko dla kontrastu przytocze przykład skrajny tzn. impedancje 0 +(lub -)j50 - dla tych impedancji moduł |Z| jest również == 50, a odbicie 1 (SWR == nieskończoność)
(02-01-2012 0:37)SP3SWJ napisał(a): (...)
...może teraz rozjaśniłem mój punkt widzenia :-) na "skrzynki"
I owszem - rozumiem teraz co miałeś na myśli. Ciągle jednak uważam, iż dla samego algorytmu poszukiwania minimum to bez znaczenia czy stroimy z początkowym SWR < 3, czy większym (OK, dla większych SWR będzie trudniej bo - mówiąc obrazowo - "obszary" z niskim SWR będą "węższe")
Decyzja czy strojenie rozpocząć (czy też nie) może zostać podjęta po wykonaniu jednego pomiaru kontrolnego dla C == 0; L == 0 i sprawdzeniu czy SWR (odbicie) jest poniżej limitu (dla skrzynek kabla); próbować natomiast stroić zawsze dla skrzynek anteny.
Wracając do meritum - dorzuciłem przełączniki do L_NetSim, o których wspominałem czyli: -r, -x, -f, -l, -c oraz dopisałem wizualizacje algorytmu strojenia do L_NetSim - tzn L_NetSim korzysta w tej chwili z tej samej biblioteki co L_NetTester, czyli auto_tune.dll i uruchamia algorytm strojenia dla każdej nowo wybranej impedancji/częstotliwości.
Przygotowałem nowy plik wejściowy zawierający zestaw ok. 1300 impedancji dla najpopularniejszych pasm KF - SWR startowy nie przekracza 32.
Spędziłem również trochę czasu próbując napisać jakiś bardziej konkretny algorytm strojenia. Roboczo nazwałem go robakiem (skojarzenie śladów jakie zostawia na bitmapach w L_NetSimie
- efekty do oglądnięcia w załączniku (wraz z kodem źródłowym oczywiście). Wydaje mi się, iż można spróbować go w tej formie użyć w sprzęcie - niestety na tą chwilę nie posiadam takowego - muszę dopiero coś wyprodukować.
Algorytm (o dziwo) wydaje się być mało wrażliwy na parametr -p czyli %MAX_ADC zwracany jako wartość odbicia==1 - działa podobnie dla 25 jak i 200% (?) (zmienna dynamika)
Nie radzi sobie z podwójnymi dołkami - te rzeczywiście występują, ale z moich obserwacji wynika, iż ich powodem jest dyskretyzacja siatki L/C i to, że lokalna "dolina" idealnego rozwiązania przebiega pomiędzy punktami, które możemy ustawić/zmierzyć (mierzymy odbicie niejako "na zboczach wąwozu", co powoduje iż SWR chwilowo rośnie, pomimo iż linia idealnego rozwiązania gdzieś pomiędzy ciągle opada); by po kilku punktach dalej znów pokryć (zbliżyć) się z siatką dyskretyzacji L/C i znów zacząć maleć... Tutaj można/trzeba by to ulepszyć.
Co do optymalnych wartości kroku L/C - wszystko zależy od priorytetów, tzn. co tak naprawdę chcemy stroić (SWR duży/mały; impedancja > czy < od Z0) i w jakich pasmach. Dla małych impedancji przydało by się precyzyjne L oraz duże C; dla dużych (>Z0) dokładnie odwrotnie... Dla wyższych pasm przydała by się większa precyzja... na niższych większe wartości maksymalne - itd. itp.
Po przeprowadzeniu eksperymentów z różnymi wartościami L/C na bit wydaje mi się iż dla skrzynki pracującej w całym zakresie KF (no może poza 160m) jako skrzynka anteny (strojenie wysokich SWR) niezłym kompromisem jest 50nH dla L oraz 10p dla C, choć przyznaje, że dla górnych pasm zaczyna w niektórych sytuacjach brakować rozdzielczości/precyzji i niektóre strojenia udają się słabo. Proponowane przez Jarka 5pF/25nH nie radzi sobie zbyt dobrze na 80-tce (to oczywiście ciągle przy założeniu 8-miu bitów na sterowanie L/C). Ot jak w życiu - coś za coś. Idealnym rozwiązaniem było by sterowanie za pomocą 9-ciu, a najlepiej 10-ciu bitów na L/C.
Przykładowy raport końcowy z L_NetTestera uzyskałem następujący:
auto_tune.dll ver: L-Network auto tuner 'worm' ver. 1.01 by Jakub Kopera SQ8AQU Jan 11 2012
command line: L_NetTester.exe -i input_data.txt -o out.txt -l 50e-9
L-bit: 5e-008 Max_L: 1.275e-005 C-bit: 1e-011 Max_C: 2.55e-009
(...)
Tunings simulated: 1337
Tunings successfull: 1331
Tunings failed (SWR>3): 6
Tunings poor (2>SWR>3): 37
Tunings average (1.5>SWR>2): 112
Tunings good (SWR<1.5): 1182
Max tuning iterations: 278
Min tuning iterations: 11
Average tuning iterations: 66
Aaverage SWR: 1.19
Nawiasem mówiac - czy ktoś mógłby podać (z praktyki) ile czasu potrzeba na ustawienie przekaźników oraz wykonanie pojedynczego pomiaru? Wstępnie założyłem ok 20ms, ale być może jest to mniej (więcej?) Pozwoliło by to przeliczyć ilość iteracji na czas strojenia.
Pozdrawiam,