Arduino SWR Scanner (Arduino Antenna Analyzer)

This article is about the Arduino SWR Scanner project and its improvement. The scanner is an easy-to-build and truly affordable DIY device that measures the SWR of HF antennas and presents the results as graphs on its TFT display and your PC screen. In the ham radio context, with appropriate caveats, it can also be used to verify the impedances of HF circuits and the resonant frequencies of LC pairs. It is based on the Arduino Nano and a cheap DDS module built around the AD9850 or AD9851. Notable earlier contributors include K6BEZ, DG7EAO, JA2GQP, and SP3NYR.

Ovaj uređaj meri SWR, tj. odnos stojećeg talasa, koji je mera prilagođenosti antene radio-predajniku. Prilagođena je savršeno ako njena impedansa na radnoj učestanosti iznosi stvarnih 50 oma, što daje SWR 1:1. Uređaj prikazuje rezultate kao grafik na TFT displeju, a šalje ih u realnom vremenu i u PC, tako da mogu biti prikazani i na monitoru računara. Program za PC omogućava da se prikaz prilagodi potrebama i da se grafik sačuva kao slika.  Zavisno od verzije DDS modula, pokriven je opseg 1…30 MHz ili 1…70 MHz. Radi! Mada, naravno, nije tako dobar kao uređaji pet ili deset puta skuplji. Ima vrlo malo da se lemi, izrada je jednostavna.

Izgleda veoma efektno. Zanimljiv projekat koji pruža priliku da se nauči o antenama, o detektorima, o merenju uopšte, o operacionim pojačavačima, o tome kako sve to izgleda iz programa za mikrokontroler.

Ili se može jednostavno uživati u gradnji, samo napraviti po uputstvima.

30594718_388716011604092_576417463328047104_o

Autor najnovijeg poboljšanja programa za Arduino, koje dodaje kalibraciju i time značajno popravlja tačnost, jeste poljski radio-amater SP3NYR. Zadnja verzija jeste 1.05. Ovde je ceo projekt:
http://sp3nyr.itserwer.pl/index.php/arduino-swr-scanner?showall=1

Istorija projekta, s izvornim kodom programa za Arduino:
http://www.hamstack.com/hs_projects/k6bez_antenna_analyzer.pdf
http://www.dg7eao.de/arduino/antennen-analysator
http://ja2gqp.blogspot.rs/2015/11/antenna-analyzer-22tft.html

P_20180505_235126
TFT displej i grafik na njemu
Graphic1
Prikaz na računaru
Arduino SWR Scanner PCB
Pločica je jednostrana i jednostavna za izradu.

Predlog nacrta štampane pločice:
SWR Scanner PCB april 2018.pdf





DORADE I IZMENE, OKTOBAR 2018. / A VERY NICE IMPROVEMENT, OCTOBER 2018

Pri merenju SWR-a antene, Arduino SWR Scanner kao svoj najveći nedostatak ispoljava nizak nivo proizvedenog VF signala. Posledično, šum iz antene može uticati na rezultate merenja. Zato su obavljene dve suštinske intervencije:

  1. Između DDS modula i mernog mosta dodat je VF pojačavač od 20 dB koji diže nivo signala na 3-4 Vp-p, zavisno od opterećenja. Pojačavač se (u ovom prototipu) napaja sa 12 V iz posebnog izvora.
  2. Operacioni pojačavači pretvoreni su u sleditelje napona, jer više nema potrebe da pojačavaju jednosmerne napone iz detektora. Uklonjeni su otpornici od 680 Ω, a oni od 5,1 kΩ zamenjeni su kratkospojnicima. Raspon napona merenih na A0 i A1 ostaje ispod 1 V, pa nije neophodno menjati program u Arduinu.

Osim toga: dodati su niskopropusni filteri (4k7 / 47n) pre ulaza u ADC i dodato je nekoliko SMD kondenzatora paralelno napajanju (5 V).

001
002
Sleditelj napona i jednostavan filter

Novo stanje prikazano je na slikama. Uklonio sam kondenzator od 1 uF na izlazu DDS modula i tu upojio ulaz i izlaz dodatog pojačavača. Morao sam secnuti dva voda zbog filtera ispred Arduina. Pojačavač je zalepljen za pločicu dvostrano lepljivom trakom. Možda bi bolje bilo da je okrenut drukčije, mada je ovako lakše i bezbednije bilo zalepiti ga. Sve opet stane u istu kutiju.

004
005

Ako se koristi verzija softvera SP3NYR: posle dodavanja pojačavača, kalibracija ne radi dobro kao pre. Za tri kontrolna otpornika izmerio sam početne vrednosti SWR-a: 1.01, 1.34, 2.77. S pojačavačem, dakle, greška na 14 MHz i pre kalibracije iznosi najviše oko 10% ! Međutim, kalibracija po ovim vrednostima samo je smanjila tačnost.

Problem je u tome što procedura kalibracije po SP3NYR (Excel list) uobičajeno izračunava parametar “z” kao negativan broj (u ćeliji I4 ispod grafika), a korisniku ga uvek predstavlja kao apsolutnu vrednost (pozitivan broj) za unos u EEPROM, i to je u redu za početne vrednosti SWR-a koje se dobijaju bez pojačavača. Ali: sa pojačavačem, vrednost “z” bude pozitivna u ćeliji I4, pa se u EEPROM ona mora uneti upravo kao negativan broj, a to nije moguće kroz terminal i program u Arduinu. U pokušaju da zaobiđem ovu prepreku, kroz AVRDUDESS pročitao sam EEPROM mikrokontrolera i video da su parametri upisani svaki u po četiri bajta, verovatno kao LONG. Pošto bi trebalo da se negativni brojevi tu predstavljaju kao komplementi dvojke, pokušao sam da vrednost “z”, u ovom slučaju -94,  kroz Hercules terminal pošaljem Arduinu kao 2^32 – 94 (tj. “4294967202z”). I upalilo je! Program iz Arduina odgovorio je da je prihvatio -94 za vrednost parametra “z”. Problem rešen. 

Excel list s izmenama u vezi s predstavljanjem parametara x i z (otklanja pomenuti problem) :
SP3NYR Calibration 1_05 rev_yu2zz.xls

Pročitati detaljno uputstvo kod SP3NYR. Treba otvoriti ovaj Excel list, videti početne vrednosti parametara (100, 1000, 0, 1000, 0) i poslati ih kroz terminal u Arduino. Potom izmeriti vrednosti SWR-a sa tri kontrolna otpornika. Zatim uneti izmerene vrednosti u Excel list, koji će automatski izračunati nove vrednosti parametara. Potom te vrednosti parametara poslati Arduinu. To je sve.

P_20181014_204900
50 Ω, 75 Ω, 150 Ω
50R
50 Ω
75R
75 Ω
150R
150 Ω

Ovako izgleda kada se meri SWR stvarnih antena:

DIPOL 80m
Dipol za 80 m 
BIM 7 MHy
2-el. Yagi za 40 m
KVAD 21
4-el. kvad za 15 m
DIPOL 160m
Dipol za 160 m
DIPOL 18 ispod bnda
Dipol za 17 m, predug
7 posle
Pojasnopropusni (band-pass) filter za 40 m, zaključen neinduktivnim otpornikom od 50 Ω radi merenja.

Sledeći korak mogao bi biti – VF pojačavač koji radi na 5 V, i integrisati ga lepše u celinu projekta.

Leave a Reply