HomeMade

Pełna wersja: Analizator wektorowy NA02
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2 3 4 5 6 7 8
Witam!
W poprzedniej wersji zabrakło mi pin-a dla przetwornika A/D dlatego był on wykorzystywany podwójnie zarówno do konwersji A/D jak i do sterowania wyświetlaczem (pin E). Skutkowało to ograniczeniem pracy wyświetlacza do zegara 8MHz bo przy niektórych operacjach graficznych ekran zapełniał się śmieciami jeśli zegar miał 16MHz. W trakcie prób wykryłem jednak, że wyświetlacz obywa się bez sterowania pinem RST dlatego można zostawić go bez podłączenia a zwolniony pin procesora poświęcić wyłącznie na konwersję A/D.

İmage

To bieżący schemat układu pokazujący wprowadzone zmiany. Pierwsza dotyczy właśnie bezpośredniego połączenia wyjścia 9/10 AD8302 z pinem 35 procesora. Druga zmiana dotyczy sterowania pinem E (17) wyświetlacza, który teraz jest sterowany z pin-a 38 procesora. Kolejna zmiana dotyczy odłączenia pina RST (14) wyświetlacza a ostatnia zmiana to dołączenie napięcia referencyjnego z układu AD8302 (pin 11) do wejścia referencyjnego przetwornika A/D procesora (pin 32).
W kolejnej informacji pokażę na zdjęciach wprowadzone zmiany oraz podam link do nowego oprogramowania.
L.J.
Pierwsze zdjęcie pokazuje pierwszą ze zmian. Dotyczy ona połączenia pinów 9/10 AD8302 do pina 35 procesora.

İmage

Poprzednio działał tu opornik przewlekany R29 (1.8k), który w mojej wersji przeróbki został usunięty a przerwana ścieżka połączona krosówką srebrzoną (rdzeń kynar-a). W zasadzie opornik ten nie musi być usuwany ze względu na dużą oporność wejścia przetwornika A/D.

Kolejne zdjęcie dotyczy dalszych przeróbek:

İmage

Na początku należy usunąć wcześniejsze istniejące tu elementy przewlekane (dwie diody i opornik).
Idąc od lewej do prawej: pierwszy kros to połączenie pin-a 38 procesora z pinem 17 wyświetlacza (tuż pod pinem 38 jest słabo widoczna przerwa w ścieżce, którą należy wykonać aby odłączyć pin RST wyświetlacza).
Kolejny kros to połączenie pin-a 36 procesora z pinem 16 wyświetlacza (ten kros istniał już poprzednio).
Trzeci, najdłuższy kros to połączenie pin-a 32 (VREF) procesora z napięciem odniesienia z AD8302. Niestety, ponieważ pin 32 leży na ścieżce wiodącej zasilanie +5V to należy tą ścieżkę przeciąć dwukrotnie: ponad i pod pinem 32 a stosowne połączenie odtworzyć za pomocą "bypass-a" widocznego na zdjęciu jako najkrótszy kros.

Po takiej operacji układ jest gotowy na nowe oprogramowanie:

dla zegara 16MHz i procesora Mega644

dla zegara 16MHz i procesora Mega644P

Nieco później dołączę link dla procesora Mega64
Dla każdego przypadku obowiązuje zasada konfiguracji bitów jaką opisałem w #15 tego wątku. W szczególności proszę pamiętać o bicie podziału zegara przez 8.
L.J.
Witam!
Oto obiecany link do oprogramowania na Mega64:

dla zegara 16MHz i procesora Mega64

Opiszę też krótko jak można kalibrować pomiar wektorowy impedancji. Postaram się w wolnej chwili zrobić film, na którym pokażę jak w praktyce taka kalibracja wygląda a na razie opis:
- należy ustawić pomiar impedancji w zakresie np. 2-32MHz
- kalibrację wykonuje się na rozwartym wejściu pomiarowym czyli dla impedancji nieskończonej
- dobrze skalibrowany miernik pokaże, że wszystkie punkty pomiarowe leżą na linii poziomej z prawej strony gdzie łączy się ona z wykresem
- jeśli tak nie jest to należy użyć lewych klawiszy (pierwszy i drugi licząc od lewej) w połączeniu z klawiszem czwartym (licząc od lewej)
- należy nacisnąć np. klawisz pierwszy i przytrzymując go dodatkowo należy nacisnąć klawisz czwarty. Punkty pomiarowe powinny zbliżać się do ustawienia optymalnego lub oddalać się od niego
- jeśli punkty będą się oddalać to znaczy, że kierunek zmian jest niewłaściwy i należy użyć kombinacji drugiego klawisza i czwartego
- w ustawieniu optymalnym punkty pomiarowe lezą z prawej strony na przecięciu średnicy koła z jego okręgiem a wartości impedancji, rezystancji i części urojonej impedancji powinny być większe niż 500 omów a SWR nieskończony (>10).
L.J.
Jutro to pewnie tego nie zrobię. Mam wolnych kilka dni przed nowym rokiem i wtedy się zmodyfikuje. Przy okazji pomęczę program MkAvrCalculator.
Mam małe doświadczenie w programowaniu atmeg. Wykonam kilka zrzutów ekranowych z ustawieniami bitów. To podpowiesz czy wszystko jest OK.
Pozdrawiam Marek
Wykonałem opisane modyfikacje na pcb (włącznie z przecięciem ścieżki pod pinem 38 procka). Zaprogramowałem ATmege nowym softem i "prawie" działa. Prawie polega na tym, że po włączeniu miernik się nie uruchamia. Dopiero po zwarciu na chwilę pinu reset (złącza programatora) z masą zaczyna pracować. Może coś z fusebitami mam nie prawidłowo.
[attachment=12115][attachment=12116][attachment=12117]
Wykonałem kalibrację. W zależności od kombinacji naciskanych klawiszy było widać jak punkty przemieszczają się po okręgu lub zbliżają do środka. To co udało mi się uzyskać widać na fotkach. Po podłączeniu opornika smd 49,9 ohm mam wskazanie 1,07.
[attachment=12118][attachment=12119]
Witam!
Porównywanie Fuse bit-ów z mojego programatora (MCS) i Twojego jest dość męczące bo w obu niektóre z bitów maja inne znaczenie. Niemniej, wydaje się, że są dwie róznice: pierwsza dotyczy rozmiaru obszaru Boot, który u mnie ma 2048B a u Ciebie 4096. Prawdopodobnie należy wyłączyć u Ciebie bit BOOTSZ1 co zmniejszy ten obszar o połowę. Ale to nie jest chyba najważniejsze bo i tak obszar boot nie jest wykorzystany. Ważniejszą różnicę widzę na bicie "Boot Reset vector Enabled" (pierwszy ekran ustawień), który u mnie jest ustawiony na adres $0000 a u Ciebie jest chyba wyłączony - stąd być może bierze się problem ze startem procesora. Poza tym inne bity wydają się być ustawione podobnie (w tym zegar, podział na osiem zegara, OCDEN, JTAG, Watchdog, Preserve EEPROM).
Ja w nowych procesorach zmieniam: bit podziału przez 8, ustawiam zegar (ale jak już zaprogramuję układ), ustawiam preserve EEPROM oraz wyłączam JTAG. Inne ustawienia zostawiam fabryczne. Proszę rozważ więc zmianę bitu "Boot Reset vector Enabled" ale oczywiście na własne ryzyko - za mało znam Twój program aby zalecać to bardzo stanowczo :-(

Zamówiłem nowe płytki do miernika w [url= http://dirtypcbs.com]dirtypcb[/url] i jestem mile zaskoczony zarówno ceną jak i sposobem i prędkością obsługi.

[attachment=12120]

Płytkę poprawiłem wczoraj po południu, wieczorem zalogowałem się na dirtypcb i załączyłem plik .zip zawierający pliki produkcyjne Gerber. Strona sama rozpakowuje plik .zip i z miejsca umożliwia podgląd załączonego materiału tak jak to widać na załączonym obrazku: obie strony druku w formie graficznej i tak jak będą wyglądać z miedzią oraz miejsca wierceń (otwory, przelotki). To co widać to link do powiększenia gdzie można wybierać odpowiedni widok na tyle duży, że można sprawdzać poprawność projektu. Zapłaciłem od razu przez paypal i dziś rano niespodzianka - materiał jest już w produkcji. Na każdym etapie dostaję mail-a z informacją w jakim stanie jest zamówienie. Produkcja będzie trwać do 3 dni ale sądząc po obecnym tempie pewnie jeszcze dziś lub jutro dostanę mail-a z informacją, że już po robocie. Podobno jeszcze tego samego dnia wykonane płytki są wysyłane. Wprawdzie termin dostawy to 1-8 tygodni ale liczę na pierwszą z tych wartości ;-) Dopłacając ok. 12$ można zapewnić sobie dostawę kurierem w ciągu 3-4 dni.
I w końcu cena za płytkę (różnica w cenie 1 i 10 jest nieistotnie mała) to z przesyłką ok. 20PLN (82/114mm) za sztukę a więc od 3 do 4 razy mniejsza niż w kraju. O jakości powiem jak materiał dotrze.
L.J.
Pozmieniałem ale bez rezultatu. Rusza tak jak poprzednio. Udam się do kolegi, który korzysta z Bascoma.
Witam!
Właśnie zaprogramowałem Mega644 w taki sposób właśnie jak opisywałem:

[attachment=12123]

Zmieniłem tylko bity odpowiedzialne za podział zegara przez 8, zablokowałem JTAG i ustawiłem "Preserve EEPROM when chip erase". Reszta bitów pozostała taka jakie było ustawienie fabryczne. Następnie zaprogramowałem procesor a w końcu zmieniłem zegar na 8-MHz 16CK + 65ms. Układ ruszył bez problemu.
Ale miałem też takie układy (programowane już wcześniej), z którymi miałem większe kłopoty polegające na konieczności wielokrotnego wgrywania oprogramowania aż odbywało się to bez błędów lub odzyskiwaniu chip-a metodą na zewnętrzny generator kiedy ustawienie zegara gubiło się podczas programowania.
Proponuję więc zmienić dla próby procesor na inny egzemplarz. Sprawdź również czy winny nie jest "leniwy" rezonator kwarcowy a może masz zbyt duże pojemności w generatorze przy kwarcach (na schemacie jest 15pF ale można użyć też 10pF).

Przypominam również, że oprócz kalibracji pomiaru wektorowego, ta wersja oprogramowania może pracować z generatorami AD8950 lub 8951 a odpowiednie ustawienia robi się włączając układ z wciśniętym klawiszem środkowym (dla AD8951) lub z wciśniętym klawiszem lewym (dla AD9850). Przy okazji ustawiane są domyślnie inne wartości np. częstotliwość startu i stopu, podział pomiaru częstotliwości, ilość punktów w pomiarze wektorowym i inne.
L.J.
Byłem u kolegi . Odczytaliśmy zaprogramowany procek. Wszystko zgodnie tak jak u Ciebie. Dla spokoju jeszcze programowaliśmy dwa różnymi programatorami i cały czas ten sam efekt. Nie mam innego procka. Kwarce sprawdzałem dwa - wysoki i niski. Układ dds-a mam wybrany właściwy. Widać na wcześniejszym zrzucie ekranu.
Jutro jeszcze popróbuję.

I już. Muszę zmienić lcd. Ten który mam nie pracuje. Sterownik KS108B z poprzednim softem śmigał. Będzie jednak niebieski :-)
Zrzuty ekranu z MkAvrCalculator są poprawne.
Pozdro Marek
Witam!
Mam dobrą wiadomość o nowych płytkach do NA02, ich status zmienił sie na "shipped"z terminem dostawy "1-8 Weeks". Oczywiście liczę na ten krótszy okres. W każdym razie świadomość stanu zamówienia poprawia nieco samopoczucie. Produkcja płytek trwała 5 dni - w tym Nowy Rok i choć liczyłem, że będzie szybciej to i tak nie ma chyba na co narzekać. Teraz dam znać jak towar dotrze do Polski.
Przy okazji dziękuję Markowi SQ7HJB za niezłomne tropienie błędów oprogramowania. Okazało się bowiem, że skupiłem się na poprawie pomiaru wektorowego impedancji zapominając, że zmiany w systemie pomiaru A/D mają wpływ także na inne moduły pomiarowe a że jednocześnie nie mam obecnie żadnych przystawek pomiarowych to i o sprawdzenie było trudniej. Obecnie, po korektach, wcześniejsze linki prowadzące do poszczególnych wersji zostały uaktualnione.
L.J.
Witaj Leszku!

Tak tylko spytam z czystej swojej ciekawości...
Na czym polega u Ciebie procedura kalibracji miernika przy porcie otwartym?
Czy na pełną procedurę kalibracji numerycznej Short-Open-Load brakuje po prostu miejsca w procesorze? (albo miejsca na zebrane dane kalibracyjne)

Nie raz już się sam przekonałem jakie cuda potrafi zdziałać wektorowa korekcja błędów, więc dla obecnych i przyszłych konstruktorów tego urządzenia Twojego pomysłu, byłoby szkoda, aby to pominąć. Tym bardziej, że sporo solidnej pracy włożyłeś w projekt tego miernika.
No chyba, że się nie da - tak też bywa - już niezależnie od przyczyn Wink
Albo obecna procedura jest równie efektywna co SOL.

Nawiasem mówiąc dla miernika 2-portowego, to już powinna być nawet bardziej złożona procedura kalibracji: Short-Open-Load-Through (SOLT) Wink

I drugie pytanie poboczne: jak sobie poradziłeś z identyfikacją znaku reaktancji?
Jak wiemy AD8302 ma z tym kłopot, a czytałem już gdzieś w innym wątku pomysł z drobną zmianą częstotliwości i decyzją o znaku na podstawie zachowania się impedancji przy tej małej zmianie (problem jednak pozostaje w okolicach rezonansów). Ciekaw więc jestem jak to u Ciebie wygląda, a skoro wykres Smith'a jest pełnym kołem (a nie jego tylko górną lub tylko dolną połówką), to pewnie jakoś to rozwiązałeś Smile

Z góry dzięki za dzielenie się wiedzą! (tu i w innych wątkach Wink

Pozdrawiam,
Rafał SP3GO


Przepraszam - jednak pomyliłem i to w TYM wątku opisujesz już jak radzisz sobie ze znakiem reaktancji, więc drugie pytanie już nieaktualne Wink
Sporo czytania, więc się pogubiłem - więc dla podobnie zagubionych link ;-)

http://sp-hm.pl/thread-2610-post-29923.html#pid29923

Pierwsze pytanie ciągle podtrzymuję...


Pozdrawiam,
Rafał SP3GO
Witam!
W uzupełnieniu poprzedniej informacji o korekcie software dodam, że ze względu na zmianę napięcia odniesienia przetwornika A/C na źródło wewnętrzne procesora 2.56V należy usunąć kros pomiędzy pinem 32 procesora (VREF) a układem AD8302, a do pin-a 32 należy dołączyć kondensator 10uF.
Dziś miałem czas aby dorobić przystawkę do pomiaru SWR i potwierdziłem, że ten pomiar, jak i inne działają z poprawionym oprogramowaniem i układem elektrycznym.

A co do pomiaru wektorowego, to faktycznie, stosuję metodę porównania kierunku zmiany impedancji w stosunku do kierunku zmiany częstotliwości. Ta metoda nie jest idealna ale świadomy operator jest w stanie dobrać zakres pomiarowy aby ustalić interesujące go szczegóły z rezonansem włącznie.
Kalibracja systemu do pomiaru wektorowego odbywa się przy porcie otwartym przez dobór kąta korekty dla modułu gamma przed ostatecznym wyliczeniem wartości impedancji oraz wyrysowaniem wyniku. Punkt na wykresie Smitha wyznacza względem środka okręgu wektor gamma pochylony względem osi poziomej o pewien kąt. Obie wartości (moduł wektora i kąt pochylenia) dostarcza układ AD8302 ale na dwóch zbudowanych przeze mnie układach NA02 dało się od razu zauważyć, że rozrzut pomiarowy tych wartości jest zauważalny i w moim przekonaniu zależy głównie od egzemplarza układu AD8302. Znacznie mniejszy wpływ ma na przykład na ustawienia domyślne konstrukcja sprzęgacza. Stąd pomysł aby do pomiaru kąta wektora gamma wprowadzić kąt korekty o takiej wartości, że dla rozwartego wejścia wyliczenia dają wynik zbliżony do ideału a więc nieskończoną impedancję (punkt leżący na osi poziomej na przecięciu z prawej strony z okręgiem). Dobór tego kąta możliwy jest za pomocą opisanej procedury z klawiszami i pamiętany jest później podczas innych pomiarów.
Okazuje się, że korekta dla otwartego wejścia jest najbardziej efektywną (bardziej skuteczną dla podobnej procedury dla zwartego wejścia) i nie wprowadza zauważalnego pogorszenia dokładności pomiaru, którą w NA02 można określić (tu szacuję bez szczegółowych wyliczeń ale z pewnym nadmiarem) jako nie gorszą niż 10%. NA02 nie ma ambicji miernika laboratoryjnego przedkładając łatwość użycia, uniwersalność i mobilność nad absolutną precyzję. Stąd też zadawala się ekranem 64/128 pixel-i a kalibrację transmisyjną (wejście-wyjście) wykonuje się oddzielnie podczas pomiarów charakterystyk częstotliwościowych dotyczących charakterystyk przenoszenia i SWR a także dobroci obwodów LC i kwarców. Dla przypomnienia, NA02 mierzy charakterystyki transmisyjne i SWR (skalarnie) w funkcji częstotliwości, mierzy moc, częstotliwość, dobroć i parametry układów LC i kwarców, jest prostym analizatorem widma oraz ostatnio mierzy także impedancję zespoloną (wektorowo).
Dostrzegam niewielką potrzebę jakiejś korekty dla zwartego wejścia ale nie ogranicza mnie tu pojemność procesora (na razie program ma rozmiar ok. 60% z 64k dostępnej pamięci) a raczej sposób wykonania tej korekty bo zabrakło mi kombinacji klawiszy do jej wykonania.
L.J.
Stron: 1 2 3 4 5 6 7 8
Przekierowanie