Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Vector Network Analyzer - VNA sa AD8302
#1
Kao nastavak price iz ove teme http://forum.yu3ma.net/showthread.php?tid=561&pid=26217#pid26217, otvaram novu temu gde bih zeleo da prodiskutujemo o tome kako ispojektovati i napravit vektorski analizator (VNA) u DIY varijanti baziran na Analog Devices AD8302.

Obzirom da dugo vremena razmisljam o toj temi i iman "neko" predznanje, velo bih da se u temu ukljuce svi koji su raspolozeni da daju svoj doprinos u realizaciji ovog uredjaja.

VNA je generalno vrlo komplesna merna sprava i projektovanje iste nije ni malo jednostavno. Sa druge strane, VNA je izuzetno korisna merna sprava sa kojom moze da se analizira veliki broj razlicitih parametara nekog DUT (Device Under Test).

Ukratko, sta je VNA?

To je merni uredjaj koji moze da izvrsi merenja i ponasanje nekod DUT pod razlicitim uslovima, uglavno baziranih na ponasanju pri razlicitim ucestanostima.
Glavni "izvor" informacija sa kojim se dalje matematickim racunom izvlace svi ostali parametri je zavistnost struje i napona i njihov fazni stav.
Dakle DUT se pobudi nekim sinusnim signalom ciji nivo znamo (ili ga odrzavamo konstatnim), meri se struja kroz njega i prati se fazno kasnjenje struje u odnosu na napon.
U slucaju sa 2-portnim DUT-ovima, mozemo da vrsimo analizu signala koji ulazi u njega (npr nivo refleksije signala) i analizu signala koji izlazi iz njega i tada prakticno dobijamo "vektor" tih zavistnosti. Odatle i naziv za takve sprave - VNA.

Tacnu definiciju za VNA mozete pogledati na Wikipediji:
http://en.wikipedia.org/wiki/Network_ana...lectrical)

Ono sto je fino ovde i generalno moja ideja je ta da postoji vec IC koji moze da nam obezbedi vec obradjene signale koji relativno lako mozemo da iskoristimo i da od toga pomocu nekog mikrokontrolera sa A/D konverterom dalje procesiramo, analiziramo i crtamo zeljene rezultate analize.
U pitanju je Analog Devices AD8302 Gain and Phase Detector koji nam resava najbitnije i vrlo problematicne analogne delove koji jedan VNA mora da poseduje.
On poseduje dva kanala za ulaz i kao izlaz nam daje direktnu zavistnost u logaritamskoj skali pojacanje (gain) i fazu.
Ove signale treba fino digitalizovati pomocu nekog A/D konvertera koj ima dobru rezuluciju (npr >= 16bit) i DC karakteristiku (brzina je manje-vise nebitna, radi se o cca 10-20Hz).

Da bi sve ovo moglo da funkcionise, potreban nam je programibilni generator sinusnog signala sa kojim ce da pobudimo DUT + da imamo mogucnost sweep-a tj brze promene frekvencije.
Moja ideja je da se iskoriste low-cost DDS moduli bazirani na AD9850 (ima ih na Ebay za <10$, cela plocica sa IC, kristalom, R/L/C).
Ovaj modul nam generalno odreduje i neke krajnje karakteristike ove buduce VNA sprave gde prvenstveno mislim na maksimalnu frekvenciju koju moze da generise i onda se krece do max 20-30MHz (preko 20MHz vec se ne dobija perfektan sinus).
Mozda moze i neki drugi modul da se iskoristi (dajte predlog) ali bih ja voleo da pokrijemo bar HF opseg tj do 30MHz.
Preko 30MHz se stvari vec drasticno komplikuju i konstrukciji drasticno raste cena.
Bez obzira sto AD8302 fazni detektor moze do par GHz da radi, problem signal generatora ipak preovladava i ja bih se limitirao do 30MHz.

Signal iz generatora treba dalje da se pojaca / buferuje pre nego sto udje u DUT. Ovde je bitno da se odrzi neka poznata izlazna impedanca, obicno 50ohm sto je standard za takve primene.
Takodje bih ovde voleo da cujem vase predloge kako realizovati taj pojacivacki stepen.
Dodatno je ovde bitno predvideti zastite koje bi sprecile stetu na koponentama ukoliko bi se iz bilo kog razloga na DUT pojavio neki neocekivani napon ili elektrostatika (cest problem recimo kod merenja antena).

U vezi mikrokontrolera, sada imamo na raspolaganju siroku paletu vrlo snaznih i povoljnih modula koje mozemo da iskoristimo.
Prvo sto mi pada napamet je STM32 Discovery F4 ili F3 modul koji po mojoj proceni moze perfektno da zavrsi posao.

Sam kontroler ne bi imao bas mnogo posla jer je ideja da se izmereni signali sa AD8302 detektora jednostavno samo proslede ka PC za dalju obradu. U tom smislu mozda moze i neki jednostavniji kontroler da se uzme, npr neki PIC32 ili dsPIC. I oko ovoga je fino da cujemo predloge.

Sve sto dolazi posle kontrolera od podata u PC je vec drugi deo price i u ovom trenutku ne moramo oko toga da detaljno diskutujemo. Docice i to na svoj red.

Toliko za pocetak ...
Reply
#2
Mogao bih da se prihvatim dizajna pojačavača i buffera. Naravno i zaštita.

Samo prethodno mora da mi budu potpuno poznate osobine predsklopa, tj. već napravljen takav.

P.S.

Taj varijabilni oscilator sa sinusom. Na to mislim kao predsklop za amp i buffer.
Biće tu potrebno par kompenzacija za taj opseg koji se očekuje. Nešto poput pojačavača za vertikalni kanal analognog osciloskopa.
Pošto je to merna naprava, mora u čitavom opsegu održati amplitudu sa tolerancijom od 0.1dB ili manje, a imati toliko nisku izlaznu impendansu da bukvalno ne "vidi" kratak spoj iza terminacionih 50R.
Reply
#3
Ok fino, dacu ti ovaj skopljen prototip (mala zelena plocica je ono sto nas interesuje tj AD9850 modul).
Preko USB spojis i u terminalu ucukas frekvenciju i on to generise na izlazu. Nema nikakvih drajvera, krajnje jednostavno.

Reply
#4
Ok ovde od analogije imamo jos i buffer za A/D i sam A/D. Predpostavljam da to nije toliko kriticno ali bih opet voleo da taj deo odradimo kako treba te bi i tu tvoji saveti bili dobrodosli (koji A/D, kakav buffer, referenca itd).
Reply
#5
(08-13-2014, 11:53 PM)mikikg Wrote: Ok fino, dacu ti ovaj skopljen prototip (mala zelena plocica je ono sto nas interesuje tj AD9850 modul).
Preko USB spojis i u terminalu ucukas frekvenciju i on to generise na izlazu. Nema nikakvih drajvera, krajnje jednostavno.

Znaš li kakve podatke oko toga šta to može ponuditi na izlazu? (amplituda od do, izl. impendansa, f od do, promena ili grafikon amplitudnih promena za ceo opseg itd itd)

Faza nas se ne tiče pošto će analizer uzimati referentnu vrednost ispred terminacionih 50R, a meriti odziv iza njega.

He he, kako će samo VNA mnoge skupe audio kablove da "šutne u blato" :-).

To je test nad testovima za transmisione vodove.

(08-13-2014, 11:59 PM)mikikg Wrote: Ok ovde od analogije imamo jos i buffer za A/D i sam A/D. Predpostavljam da to nije toliko kriticno ali bih opet voleo da taj deo odradimo kako treba te bi i tu tvoji saveti bili dobrodosli (koji A/D, kakav buffer, referenca itd).

Naravno, sve analogne delove i napajanja, tj. maksimalne savete oko napajanja i reff zaA/D.

VNA je vanredno moćna sprava. Stoji da se to može i dobrim osciloskopom uz taj varijabilni sin. generator, ali je zahtevno za okolne dodatlke i naravno naporno za rad.

VNA to svodi na jedno pipanje i svip.
Reply
#6
>> Znaš li kakve podatke oko toga šta to može ponuditi na izlazu? (amplituda od do, izl. impendansa, f od do, promena ili grafikon amplitudnih promena za ceo opseg itd itd)

Pokusacu da nadjem ako ima negde neka specifikacija ili je neko vec radio merenja nad tim modulom posto je vrlo popularan.
Ja mogu samo da izmerim aplitudu po frekvenciji.
Izlaznu impedansu tesko mogu da izmerim, nemam VNA Smile
Reply
#7
Evo jednog finog pdf o namenama i načinu rada VNA.

Već na 3. strani se može videti tabela za šta je sve primenljiv.

http://cp.literature.agilent.com/litweb/...-7917E.pdf

(08-14-2014, 12:21 AM)mikikg Wrote: >> Znaš li kakve podatke oko toga šta to može ponuditi na izlazu? (amplituda od do, izl. impendansa, f od do, promena ili grafikon amplitudnih promena za ceo opseg itd itd)

Pokusacu da nadjem ako ima negde neka specifikacija ili je neko vec radio merenja nad tim modulom posto je vrlo popularan.
Ja mogu samo da izmerim aplitudu po frekvenciji.
Izlaznu impedansu tesko mogu da izmerim, nemam VNA Smile


Staviš mu na izlaz super neinduktivni 50R (ako nemaš, imam ja 49R9 0.1% u 0630), prošetaš ga kroz ceo opseg pri čemu uračunamo C sonde, i znaćemo šta nam je potrebno.
Reply
#8
Evo shema tog modula (nije bas pregledna, vise informativno).

Koliko vidim oni su ispred i iza LPF terminirali sa 200ohm …

--------



http://www.analog.com/static/imported-fi...AD8302.pdf

Nego jednu stvar da oko toga spomenem, bilo bi pozeljno da se odrzi konstantan nivo amplitude kroz ceo spektar frekvencije (da se kompenzuje buffer) mada nije moranje jer onaj detektor i onako daje razliku za ulaz/izlaz, ne daje apsoulutnu vrednost amplitude.
Moze jedino da bude bitno da imamo konstantan nivo iz generatora ako se desi da se DUT drugacije ponasa pri razlicitim nivoima!
Bas povodom toga bi bilo vrlo vrlo pozeljno da imamo kontrolu gejna (programibilno iz kontrolera), bilo linearno ili u nekoliko koraka jer negde bi valjalo da testiramo DUT sa vecim nivo-om, negde sa manjim ...
Reply
#9
(08-13-2014, 11:40 PM)Macola Wrote: Mogao bih da se prihvatim dizajna pojačavača i buffera. Naravno i zaštita.

Samo prethodno mora da mi budu potpuno poznate osobine predsklopa, tj. već napravljen takav.

P.S.

Taj varijabilni oscilator sa sinusom. Na to mislim kao predsklop za amp i buffer.
Biće tu potrebno par kompenzacija za taj opseg koji se očekuje. Nešto poput pojačavača za vertikalni kanal analognog osciloskopa.
Pošto je to merna naprava, mora u čitavom opsegu održati amplitudu sa tolerancijom od 0.1dB ili manje, a imati toliko nisku izlaznu impendansu da bukvalno ne "vidi" kratak spoj iza terminacionih 50R.

Sasvim pristojno niska impendansa je i tih 200R. Relativno lako ćemo izvesti amp i buffer.
Reply
#10
Ovo sam nasao bas sada na netu DDS generator sa arduinom...znam da je arduino slabiji CPU od STM32 ali me zanima dali je potrebna tolika moc CPU-a jer ako mora da upravlja DDS-om i salje prikaz na LCD ili PC moze da bude sporiji zbog takta CPU-a.

http://www.ad7c.com/projects/ad9850-dds-vfo/

Sad me samo zanima jeli to to sto Vam treba za prvi korak? Ako da da sse bacim na proucavanje koda i simulaciju sheme i koda za arduino u programu Proteus.

A Evo i sheme:


Attached Files Thumbnail(s)

Reply
#11
Prvo bez persiranja Smile Nema potrebe za tim ...

Sto se tice kontrolera, generalno oko ovog DDS modula ne vidim neki problem, moze to da se prikljuci na bilo koji kontroler.
Imam i radni prototip (vidi sliku gore) tako da je tu manje vise cista situacija.
Mene tu vise interesuju neke prakticne stvari, pre svega cena, jednostavnost implementacije i na kraju perfomance kontrolera.
Podji samo od toga da sutra kada napravimo ovu spravu sta sve neki graditelj mora da uradi i nabavi da bi sklopio tu spravu.
Takodje treba imati u vidu da se tu ostavi prostora (u firmware) za neku buducu nadogradnju.

STM32 Discovery F3 (Cortex M4 jezgro, DSP, FPU, 94 DMIPS) kosta oko 16$. Za te pare ja nisam nasao snazniji kontroler-plocicu na trzistu i npr ne isplati ni da kupis neki klot prazan PIC a kamoli ceo sklopljen modul! Arduino je u tom smislu veoma skup naspram raspolozivih perfomansi.
F3 ima mega brz 12bit A/D oko 4MSPS i u nekim testovima koje sam radio taj A/D radi fenomenalno. Uz oversampling od recimo citavih 256x mogli bi da izvucemo oko 16bita rezolucije (to je preko 90dB dinamike) sto je vise nego dovoljno za ovaj nas slucaj sa AD8302 jer on ima detektor od max 60dB dinamike.

Ono gde ce mi stvarno trebati pomoc je deo na PC-u. E tu ce biti glavna bitka Smile
Moja ideja je da naravno program bude cros-platform, tj da radi na svim OS-ovima i jedino za sad neko prihvatljivo resenje je da se program pise u Java ili eventualno u C#.
Mozda ima i neki univerzalni frejmwork za cross-platform progamiranje posto je to u poslednje vreme vrlo popularno (recimo za mobilne telefone postoji PhoneGap).
Cak recimo ako izaberemo dobar kontroler (razmisljao sam i o Raspberry Pi) da na njemu SVE onda odradimo, upravljanje, merenje, analizu i crtanje podataka a da se recimo rezultati mogu prikazivati na spoljasnji prikljucen monitor preko HDMI ili cak da bude u vidu web servisa i da se gleda kroz LAN / WiFi mrezu.

To su neke opcije o kojima treba razmisliti. Treba prvo to definisati, nece programiranje skorije ...
Reply
#12
Pa sto se tice cross platform moj je prijedlod da se odradi u html5/css3/php i jquery. ...dakle web aplikacija...bavim se web programiranjem pa mi to nije problem...oko mikorkontrolera moze taj STM32 sad sam bas gledao cijene i performanse i puno je jaci od arduina.
Reply
#13
Moze u PHP nije sporno ali za to vec treba minimum Raspberry Pi. Zahtevan je PHP prilicno za procesorskom snagom a i treba nam onda LAN / WiFi mreza a RPi to sve vec ima na sebi i radili su sa PHP svasta nesto (recimo oni DAC-ovi sto je @npejcic pravio, iza je PHP kontrolni engine za GUI a za playback je nesto po kernelu butano).
PS: I ja sam u PHP-u vec nekih "sicusnih" 13+ godina Wink
Reply
#14
@Miki
Obrada rezultata na PC bi se mogla isprogramirati pomoću softvera Python (zovu ga i "Matlab za sirotinju"). To je open source, ne znam samo da li postoji i verzija za Mac. Tu postoje sve potrebne funkcije (objekti) za obradu signala, crtanje i sl. Zavisno od opsega analize signala, u obzir bi došao i neki Excel add-in, jer Excel radi na svim platformama.

Naravno, može se programirati i u nekom od univerzalnih jezika, ali to je, po mom iskustvu, duži put.

Kratak komentar u vezi ADC rezolucije: oversampling sam za sebe ne povećava amplitudnu rezoluciju jer se tu, u principu, radi o interpolaciji, tj. o povećanju vremenske rezolucije. Signal koji nije praćen šumom daje isti rezultat sa i bez oversampling-a. Medjutim, pošto će kod ovakve sprave biti šuma (teorijski, morao bi to biti beli šum), biće moguće izvesno poboljšanje tačnosti po amplitudi. U protivnom bi signalu morali da dodajemo dither (kao kod 16-bitne muzikeBig Grin).

Rado ću se pozabaviti obradom rezultata na PC kada za to dodje vreme.

Pozdrav

Edit: Vidim iz prethodna dva predloga da razmišljamo različito - ja sam mislio da će VNA samo vršiti merenje, a rezultati bi bi bili generisani na PC.
Reply
#15
@Braca
Znam za Python, ima distribucija za skoro sve moguce platforme, to nije problem.

Sad se malo lomimo oko toga da li da radimo analizu na kontroleru ili na PC.
Obe opcije imaju prednosti i mane ali svakako PC daje drasticno vece mogucnosti.

Tvoja pomoc oko tih analiza ce nam puno znaciti i racunam na to! Wink
Reply
#16
(08-14-2014, 09:52 AM)mikikg Wrote: Zahtevan je PHP prilicno za procesorskom snagom a i treba nam onda LAN / WiFi mreza a RPi to sve vec ima na sebi i radili su sa PHP svasta nesto (recimo oni DAC-ovi sto je @npejcic pravio, iza je PHP kontrolni engine za GUI a za playback je nesto po kernelu butano).

Miki projekat je veoma ambiciozan, ideja odlična. Samo napred Smile

Što se tiče Raspberry Pi platforme za audio namene, esencijalni deo čini mpd servis-deamon, koji na low-level nivou koristi hardver za reprodukciju zvuka. Veoma je moćan ali nisam siguran da ga možete iskoristiti.

Mislim da vam sledeći link može koristiti ukoliko se odlučujete za RPy platformu:
http://www.crazy-audio.com/tag/dsp/

Inače Python je veoma korišćen na RPy (Linux) platformi.
Reply
#17
Hvala Smile
Nije toliko strasan projekat kako se cini na prvu ruku.
Prvo da se izborim sa analogijom i da stignem do A/D pa da te RAW podatke prosledim negde na obradu.
Recimo video sam i gotov SW u Javi, VNA/J! Nisam gledao detaljnije ali moze da se desi da je open source i sve sto treba je da ispostujem protokol a sve ostale funkcije i racuni su vec napravljene u tom programu. Bavicu se jos sa tim, mozda ima jos neki gotov SW ...
Reply
#18
Evo sad sam bas pogledao malo detaljnije VNA/J.
http://dl2sba.com/index.php?option=com_content&view=article&id=39&Itemid=29#english
Prelepo, covek je napravio sve sto treba tu i organizovao je tako da lako moze da se integrise na bilo koji HW, ima nekolicina parametara gde se zadaje komunikacioni port, start-stop frekvencija, velicina koraka i jos nesto i on to posalje HW-u, ovaj mu vrati rezultate u nekom formatu i na osnovu toga program odradi analizu i iscrtavanje grafika!
Reply
#19
Ovom softveru nema ništa više da se doda - sve je tu. Lepo je i što postoji profesionalno uradjena dokumentacija.

SDR-kits mi je za svaki prodat kit davao i lozinku za aktiviranje S/W i "prepoznavanje" konkretnog H/W. Pretpostavljam da to ovde nije slučaj.

Hardware mu ide do 3GHz(!), a po ceni je na istom nivou kao i onaj od sdr-kits. Pošto naši zahtevi ne idu toliko visoko, a ne pravimo ni profit, računam da ćemo imati prihvatljivu cenu za H/W.
Reply
#20
(08-14-2014, 10:40 PM)Braca Wrote: SDR-kits mi je za svaki prodat kit davao i lozinku za aktiviranje S/W i "prepoznavanje" konkretnog H/W. Pretpostavljam da to ovde nije slučaj.

Hehe, i ja se nadam (za njihovo dobro) inace ce da radi OllyDbg Smile Tu ne pomazu nikakvi kljucevi i seriski brojevi Smile
Opasno dobar i koristan software ovaj OllyDbg, na stranu sto sam se salio oko VNA/J.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)