Liczba postów: 29
Liczba wątków: 4
Dołączył: 04-10-2013
11 godzin(y) temu
(Ten post był ostatnio modyfikowany: 9 godzin(y) temu przez SQ2KRR.)
Tak, po przejściu na v2.1 zalecam wykonać ponownie kalibrację HW, a następnie OSL.
Powód nie wynika tylko ze zmian graficznych. W czasie prac nad v2.1 zrobiłem serię testów na rzeczywistym analizatorze i okazało się, że część wcześniejszego sposobu obróbki pomiaru warto było zmienić.
Najważniejsza zmiana dotyczy pomiaru fazy. W praktycznych seriach pomiarowych zauważyłem, że część poprawnych wyników była przez starszy filtr niesłusznie klasyfikowana jako odstająca, szczególnie w pobliżu granicy +180° / -180°.
Problem wynika z tego, że faza nie jest zwykłą wielkością liniową. Dla przykładu +179° i -179° oznaczają prawie ten sam kierunek fazowy i różnią się fizycznie tylko o 2°. Jeżeli jednak potraktować te wartości jak zwykłe liczby i policzyć średnią arytmetyczną, otrzymamy 0°, czyli wynik całkowicie niezgodny z rzeczywistością.
W jednej z rzeczywistych serii sprawdzających było 126 punktów pomiarowych, po 20 surowych próbek w każdym punkcie. Starsze kryterium fazy odrzuciło 28 z 126 całych zestawów, czyli 22,2%, mimo że spójność fazowa tych serii była bardzo dobra. Nie oznacza to oczywiście, że 22% próbek było błędnych. Problem był odwrotny: prawidłowe dane były uznawane za niewiarygodne.
Po zmianie sposobu obliczania fazy problem zniknął. Faza jest teraz traktowana jako wielkość kołowa. Zamiast uśredniania wartości kąta na osi od -180° do +180° wykorzystywana jest reprezentacja poprzez sin i cos, a wynik wyznaczany jest przez atan2. Dzięki temu +179° i -179° dają wynik w pobliżu 180°, a nie 0°.
Sprawdzałem również zachowanie tej metody poza granicą ±180°. Tam średnia liniowa i kołowa dawały praktycznie identyczne wyniki, więc nowa metoda naprawia przypadek graniczny bez pogarszania zwykłych pomiarów.
Ma to znaczenie nie tylko dla samego wskazania kąta. Faza jest używana dalej do wyznaczania impedancji oraz współczynnika odbicia, więc błąd fazy może wpływać później na R, X, Γ i SWR.
Zmieniłem również sposób traktowania amplitud V i I. Starsze kryterium odrzucania było dość ciasne i w części pomiarów również potrafiło odrzucić prawidłowe serie. W materiale obejmującym 105 punktów wcześniejsze kryterium odrzuciłoby kanał V w 17 punktach, a kanał I w 19. W efekcie 32 ze 105 punktów kończyły się wynikiem SWR = NaN mimo poprawnych danych wejściowych.
W nowej metodzie amplitudy są filtrowane z wykorzystaniem mediany i MAD, czyli mediany bezwzględnych odchyleń od mediany. Dopiero rzeczywiście odstające próbki są odrzucane, a wynik końcowy liczony jest z pozostałych danych. Na tej samej serii nie wystąpił już ani jeden przypadek SWR = NaN. Jednocześnie nowa metoda praktycznie nie zmienia stabilnych danych. Maksymalna różnica względem zwykłej średniej wyniosła około 0,068% dla V i 0,062% dla I.
Zmieniłem też sposób sygnalizowania błędu pomiarowego. Zero jest przecież normalnym wynikiem fizycznym, szczególnie dla fazy. Nie powinno więc jednocześnie pełnić funkcji znacznika błędu. W v2.1 wynik niepoprawny jest reprezentowany jako NaN, a prawidłowe zero pozostaje zwykłą wartością pomiarową.
Drugą większą zmianą jest okno używane w obróbce FFT. Nie zmieniałem go na podstawie samej teorii. Porównywałem na tych samych danych kilka różnych okien, między innymi Exact Blackman, Hann oraz inne warianty, sprawdzając nie tylko rozrzut wyniku, ale również wpływ przesunięcia częstotliwości pośredniej i błąd wyznaczanej rezystancji.
Blackman w jednym z kryteriów dawał trochę mniejszy rozrzut, natomiast Hann lepiej zachowywał się przy zmianie IF i dawał mniejszy błąd R. W przeprowadzonych próbach poprawa wynosiła około 14% dla wpływu przesunięcia IF i około 10% dla błędu R. Blackman miał natomiast około 5% przewagi w samym rozrzucie Z.
Dlatego Hann został wybrany nie jako „najlepsze okno w każdym przypadku”, ale jako lepszy kompromis dla rzeczywistego toru pomiarowego EU1KY.
Zmiany objęły również korekcję HW. Poprawione zostało interpolowanie fazy w pobliżu granicy -π / +π. Korekcja nie jest też bezkrytycznie interpolowana przez granice różnych reżimów harmonicznych generatora. Po obu stronach takiej granicy tor może pracować w innym reżimie, dlatego zwykła interpolacja współczynników może dać matematycznie płynny, ale fizycznie niewłaściwy wynik.
Do kalibracji dodałem także kontrolę położenia zworki CAL/WORK. To była kolejna rzecz, która mogła wcześniej prowadzić do bardzo trudnego do zauważenia błędu. Po kalibracji HW zworka musi wrócić z CAL do WORK. Jeżeli użytkownik o tym zapomniał, analizator mógł dalej pokazywać pozornie sensowne wyniki, ale pomiar odbywał się przy niewłaściwej konfiguracji toru.
Nie ma osobnego styku ani wejścia cyfrowego informującego procesor o położeniu tej zworki, dlatego wykorzystałem do jej rozpoznawania sam tor RF. Podczas kalibracji analizator zapamiętuje charakterystyczną sygnaturę położenia CAL dla konkretnego egzemplarza urządzenia. Kontrola wykonywana jest przy 440 MHz na surowym stosunku V/I i fazie, bez nakładania korekcji HW i OSL.
Dzięki temu nie jest używany jeden sztywny próg wspólny dla wszystkich analizatorów. Program porównuje aktualny pomiar z „odciskiem” CAL utworzonym na tym konkretnym egzemplarzu.
Kontrola jest dwustopniowa. Najpierw wykonywana jest krótka seria pomiarów. Jeżeli wynik jest wyraźnie oddalony od sygnatury CAL, program uznaje położenie WORK. Jeżeli wynik znajduje się blisko zapamiętanego CAL, wykonywana jest druga, dłuższa i niezależna seria. Dopiero dwa zgodne rozpoznania CAL powodują blokadę przejścia dalej. Ma to ograniczyć możliwość fałszywego alarmu spowodowanego pojedynczym zakłóceniem.
Po zakończeniu HW przycisk „Dalej” nie oznacza więc już tylko przejścia do kolejnego ekranu. Analizator sprawdza najpierw, czy zworka rzeczywiście została przestawiona do WORK. Podobna kontrola wykonywana jest również przed pomiarem wzorców OSL, żeby nie dopuścić do wykonania kalibracji OSL z pozostawioną zworką w pozycji CAL.
Jeszcze jedną większą zmianą, niezależną od samego toru R/X/SWR, jest TDR.
Tutaj również nie wybierałem ustawień tylko na podstawie teorii. Wykonałem pomiary rzeczywistego przewodu i porównywałem różne okna oraz kilka sposobów obróbki odpowiedzi czasowej. Sprawdzałem między innymi przebieg surowy, Savitzky-Golay, filtr Kalmana i ich połączenie, a także różne okna stosowane przed IFFT.
W tych próbach najlepszym ustawieniem domyślnym okazało się okno Kaiser β=6 i pozostawienie odpowiedzi czasowej w postaci RAW. Dla badanego przewodu uzyskany SNR wynosił około 43,13 dB. Co ciekawe, dodatkowe filtrowanie nie poprawiało pomiaru. Kalman oraz połączenie Savitzky-Golay z Kalmanem pogarszały SNR i jednocześnie poszerzały pik.
To było dla mnie ważne, bo łatwo założyć, że mocniejsze wygładzanie musi oznaczać dokładniejszy TDR. W praktyce wykres może wyglądać ładniej, ale filtr może poszerzyć albo przesunąć maksimum, a właśnie położenie maksimum jest podstawą pomiaru odległości.
Dlatego w v2.1 jako domyślny pozostał surowy przebieg po IFFT z oknem Kaiser β=6, natomiast pozostałe filtry i okna zostawiłem jako narzędzia porównawcze.
Zmieniłem też sposób wyznaczania położenia odbicia. Wcześniej maksimum było związane bezpośrednio z numerem próbki, więc rozdzielczość odległości była ograniczona siatką punktów TDR. Teraz w otoczeniu maksimum wykonywana jest interpolacja paraboliczna i położenie piku może wypaść pomiędzy próbkami. Nie zwiększa to fizycznego pasma analizatora ani rzeczywistej rozdzielczości dwóch bliskich odbić, ale pozwala dokładniej oszacować położenie pojedynczego dobrze widocznego maksimum.
Testowałem też różne okna TDR. Nie ma tutaj jednego okna najlepszego do wszystkiego. Okno prostokątne daje najwęższy pik, ale duże listki boczne, Blackman-Harris mocno tłumi listki boczne kosztem szerokości piku, Hann i Hamming są rozwiązaniami pośrednimi, natomiast Kaiser pozwala regulować ten kompromis współczynnikiem β. W pomiarach mojego rzeczywistego toru Kaiser β=6 dał najlepszy kompromis i dlatego został ustawieniem domyślnym.
To jest też przykład ogólnej zasady, którą przyjąłem przy v2.1: dodatkowy filtr albo bardziej skomplikowany algorytm zostaje domyślny tylko wtedy, kiedy rzeczywiste pomiary pokazują, że poprawia wynik, a nie tylko wygląd wykresu.
Dlatego v2.1 nie jest tylko zmianą wyglądu programu. Zmieniony został sposób obróbki amplitudy i fazy, filtrowanie próbek, okno FFT, interpolacja korekcji HW oraz kontrola poprawności samej procedury kalibracyjnej.
Z tego powodu nie zakładam, że stare współczynniki kalibracyjne są nadal optymalne dla nowego toru obliczeniowego. Po aktualizacji do v2.1 najlepiej wykonać od początku kalibrację HW, a następnie nową OSL.
Marek