aplikacija za dimenzioniranje parametara za prilagodbu … · 2016-09-27 · poglavlje 1 uvod tema...
TRANSCRIPT
SVEUCILISTE U RIJECI
TEHNICKI FAKULTETPreddiplomski studij racunarstva
Zavrsni rad
Aplikacija za dimenzioniranje parametaraza prilagodbu impedancije pomocu
jednoga stuba
Rijeka, rujan 2016. Vanessa Carta
0069064298
Zahvala
Zahvaljujem se mentoru Miroslavu Joleru na podrsci tijekom pisanja ovoga rada ikorisnim raspravama i savjetima. Takoder, zahvaljujem se svojoj obitelji na podrscitijekom studiranja.
ii
SVEUCILISTE U RIJECI
TEHNICKI FAKULTETPreddiplomski studij racunarstva
Zavrsni rad
Aplikacija za dimenzioniranje parametaraza prilagodbu impedancije pomocu
jednoga stuba
Mentor: izv.prof.dr.sc. Miroslav Joler
Rijeka, rujan 2016. Vanessa Carta
0069064298
Izjava o samostalnoj izradi rada
Izjavljujem da sam samostalno izradila ovaj rad.
Rijeka, rujan 2016. _______________
Vanessa Carta
v
Sadrzaj
Popis slika viii
1 Uvod 1
2 Koristeni alati 3
2.1 Apache HTTP posluzitelj . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 HTML - HyperText Markup Language . . . . . . . . . . . . . . . . . 4
2.3 CSS - Cascading Style Sheets . . . . . . . . . . . . . . . . . . . . . . 5
2.4 PHP - Hypertext Preprocessor . . . . . . . . . . . . . . . . . . . . . . 6
2.5 JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5.1 Math.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5.2 D3.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5.3 JQuery.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3 Matematicki model 10
3.1 Ugadanje Paralelnim stubom . . . . . . . . . . . . . . . . . . . . . . . 12
3.2 Ugadanje serijskim stubom . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3 Graficki prikaz koeficijenta refleksije . . . . . . . . . . . . . . . . . . . 16
3.4 Sirina frekvencijskog pojasa . . . . . . . . . . . . . . . . . . . . . . . 18
vi
Sadrzaj
4 Korisnicko sucelje 20
4.1 Primjer - Kratkospojni paralelni stub . . . . . . . . . . . . . . . . . . 21
4.2 Primjer - Otvoreni serijski stub . . . . . . . . . . . . . . . . . . . . . 24
5 Zakljucak 27
Bibliografija 29
Pojmovnik 31
Sazetak 32
vii
Popis slika
3.1 Dobivanje cetiri razlicitih vrsta stuba. . . . . . . . . . . . . . . . . . 12
4.1 Pocetna stranica aplikacije. . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 Izlaz nakon unesenih vrijednosti. . . . . . . . . . . . . . . . . . . . . 21
4.3 Shema prvog rjesenja. . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.4 Graf koeficijenta refleksije. . . . . . . . . . . . . . . . . . . . . . . . 23
4.5 Sirine frekvencijskog pojasa. . . . . . . . . . . . . . . . . . . . . . . 23
4.6 Izlaz nakon unesenih vrijednosti. . . . . . . . . . . . . . . . . . . . . 24
4.7 Shema prvog rjesenja. . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.8 Graf koeficijenta refleksije. . . . . . . . . . . . . . . . . . . . . . . . 25
4.9 Izlaz nakon unesenih vrijednosti. . . . . . . . . . . . . . . . . . . . . 26
viii
Poglavlje 1
Uvod
Tema ovog zavrsnog rada je izrada grafickog sucelja pomocu kojeg se na jednostavan
nacin moze izvrsiti dimenzioniranje parametara za prilagodbu impedancije pomocu
jednog stuba. Takav stub moze biti zakljucen kratkim spojem ili otvorenim krajem.
Korisnik unosi odredene parametre, odnosno unosi impedanciju tereta ZL, ka-
rakteristicnu impedancija prijenosne linije Z0 i zeljenu frekvenciju f na kojoj se vrsi
prilagodba. Aplikacija ce uz pomoc tih parametara izracunati dva moguca rjesenja
za potrebnu udaljenost stuba od tereta d te duljinu stuba l. Takoder, oni ce biti
prikazani na odgovarajucim mjestima na dvjema rezultantnim shemama. Nakon
izracunatih duljina l i d iscrtava se graf koeficijenta refleksije na nacin da ce biti
prikazane dvije krivulje za oba rjesenja. Na samom kraju dodana je opcija gdje
korisnik unosi koeficijent refleksije, a aplikacija za tu vrijednost odreduje sirinu i re-
lativnu sirinu frekvencijskog pojasa svakog rjesenja. Na temelju dobivenih vrijednosti
odreduje se koje je od dvaju rjesenja bolje.
U drugom poglavlju biti ce opisani alati koji su koristeni pri izradi same aplikacije.
Precizirati ce se koji dio zadatka je rijesen uz pomoc kojeg alata i na koji nacin.
Trece poglavlje je glavni dio koji opisuje matematicki model prilagodbe impedan-
cije i nacin na koji je taj model implementiran u kodu. Odnosno, objasnjava sto se
izvodi u pozadini aplikacije.
Nakon opisa onog sto korisnik ne vidi, u cetvrtom poglavlju opisati ce se korisnicko
sucelje i koja je korisnikova uloga, odnosno sto treba unijeti i sto ce mu se na temelju
1
Poglavlje 2
Koristeni alati
Izrada ove aplikacije nije zahtijevala kompleksne web tehnologije. Sve sto je potrebno
jest Internet preglednik u kojemu ce se pomocu localhosta dohvacati izvorni kod i
odgovarajuci posluzitelj. Pri izradi koristen je Apache web server koji je potreban
za uspjesno izvodenje Hypertext Preprocessor (PHP) datoteka.
Koristeni jezici su HyperText Markup Language (HTML) [1], Cascading Style
Sheets (CSS) [2], te za malo kompleksnije izvedbe koristen je programski jezik Ja-
vaScript [3] koji se u potpunosti izvrsava na klijentskoj strani, unutar Internet pre-
glednika.
U nastavku je svaka tehnologija detaljnije opisana uz objasnjenje gdje se koristila.
2.1 Apache HTTP posluzitelj
Apache HTTP [4] posluzitelj je besplatni, otvoreni Web posluzitelj koji moze raditi
na raznim operacijskim sustavima, koji su od najpoznatijih Unix sustavi i Microsoft
Windows. Upravo iz tog razloga Apache je vec 20 godina najcesce koristeni Web
posluzitelj na Internetu s udjelom visim od 60%. Inacica 1.0 izasla je 1. prosinca
1995. [5], a u razdoblju samo jedne godine njegova popularnost nadisla je popularnost
National Center for Supercomputing Application (NCSA) odnosno servera iz kojeg
proizlazi sam Apache. Danasnja aktualna verzija je 2.4. Apache razvija i odrzava
otvorena zajednica programera pod vodstvom Apache Software Foundation.
3
Poglavlje 2. Koristeni alati
Za izradu ove aplikacije koristen je Vertrigo [6] paket softwarea koji se osniva na
Apache serveru. Ukljucuje Apache, PHP, MySql i PhpMyAdmin te ih objedinjuje
za razvoj dinamicnih web stranica razvijenih u PHP programskom jeziku. Apache
server je bio potreban kako bi se izgenerirao HTML kod koji se nalazi unutar PHP-a,
a onda kao takav uspjesno prikazao u Internet pregledniku klijenta.
2.2 HTML - HyperText Markup Language
HTML je prezentacijski jezik namijenjen izradi web stranica [7]. HTML je kao takav
najmanje koristen u ovoj aplikaciji, ali kao niti jedne web aplikacije, tako ne bi bilo
ni ove bez HTML-a. Kao sto je vec spomenuto, nakon primitka zahtjeva za PHP
dokumentom posluzitelj izvrsava PHP kod te na osnovu njega generira HTML i salje
ga klijentu. HTML je baza na kojoj se temelji svaka web stranica bas kao i aplikacija.
Jednostavan je za uporabu i lako se uci, sto je jedan od razloga njegove opce
prihvacenosti i popularnosti. Veliku rasirenost postigao je jednostavnoscu i time sto
je od pocetka bio zamisljen kao besplatan i tako dostupan svima.
Prikaz hipertekst dokumenta omogucuje Internet preglednik, a temeljna zadaca
HTML jezika jest uputiti Internet preglednik kako prikazati hipertext dokument.
HTML nije programski jezik pa njime ne mozemo izvrsiti nikakvu zadacu kao ni naj-
jednostavniju operaciju zbrajanja ili oduzimanja dvaju cijelih brojeva. On sluzi samo
za opis nasih hipertekstualnih dokumenata. Zbog toga se ova aplikacija minimalnim
dijelom pisala u HTML-u, a vecim u PHP-u i JavaScript-u. Osnovni gradevni element
svake stranice su tagovi koji opisuju kako ce se nesto prikazati u web pregledniku.
Cisti HTML tagovi bili su dovoljni za izradu veceg dijela index.php datoteke kada
se stvarala pocetna stranica. Stvorena je forma sa raznim input tagovima kako bi
korisnik jednostavno unosio zeljene vrijednosti. Kasnije su te vrijednosti proslijedene
na sljedecu stranicu post metodom.
4
Poglavlje 2. Koristeni alati
2.3 CSS - Cascading Style Sheets
CSS [8] se koristi za opis prezentacije dokumenta napisanog pomocu HTML jezika.
Drugim rijecima, CSS definira kako prikazati HTML elemente. Ureduje sam izgled i
raspored stranice.
CSS cijele aplikacije definiran je u posebnoj datoteci main.css. Na taj nacin
izbjegava se prenatrpanost HTML tagova te je HTML datoteka orijentirana samo na
sadrzaj sto je puno preglednije.
Nadalje, CSS ovdje nije sluzio samo kao nacin za ”ukrasiti” aplikaciju. Kod iscr-
tavanja pripadajucih shema na temelju korisnikovih odabira bio je vise nego koristan.
Stvorena su dva div-a poravnana jedan do drugog. Unutar svakog diva postav-
ljena je slika sa dva paragrafa. Svakom od tih paragrafa dodijeljen je poseban id.
Nakon toga je uz pomoc CSS-a za svaki uslijedilo posebno pozicioniranje teksta unu-
tar tog paragrafa kako bi varijabla sa izracunatim duljinama l i d sjela na pravo
mjesto.
Ovdje se moze vidjeti kako su namjestene pozicije za duljine d i l serijskog stuba:
#ds
z-index: 100;
position: absolute;
color: black;
font-size: 14px;
left: 352px;
top: 15px;
#ls
z-index: 100;
position: absolute;
color: black;
font-size: 14px;
left: 265px;
top: 179px;
5
Poglavlje 2. Koristeni alati
Za ukljucivanje takve eksterne CSS datoteke u HTML bila je potrebna sljedeca
linija koda:
<link href="main.css" rel="stylesheet" type="text/css">
2.4 PHP - Hypertext Preprocessor
PHP [9] je skriptni programski jezik otvorenog koda za dinamicko generiranje HTML
koda, a izvrsava se na posluziteljskoj strani. Pomocu njega se kreira HTML stranica
popunjena dinamickim sadrzajem na posluzitelju prije nego sto se salje klijentu. Na
taj nacin, klijent ne moze vidjeti kod, odnosno skriptu, koja je zapravo izgenerirala
sadrzaj koji gleda. Klijent ima pristup samo cistom HTML kodu.
PHP je jedna od najnaprednijih i najkoristenijih skriptnih tehnologija na posluzi-
teljskoj strani koje se danas nalaze u upotrebi. Sadrzi funkcije koje su po sintaksi i
funkcionalnosti jednake funkcijama nekih drugih jezika kao sto su C ili Perl.
U ovom slucaju bio je potreban kako bi se jednostavnije stvorila dinamicka web
stranica. Glavni razlog zbog kojeg se odabrao PHP bio je model navigacije. Naime,
aplikacija se sastoji od dvije PHP datoteke. To su index.php i functions.php. Na
stranici index.php korisnik unosi vrijednosti u formu, nakon cega se te vrijednosti
pomocu post metode prenose na functions.php. U functions.php izvrsava se citav
izracun te prikazuju rezultati.
PHP ima jednostavnu sintaksu za funkcije pa se pomocu njih izvrsavao ponav-
ljajuci izracun. Odnosno, takav se izracun ponavljao vise puta samo sa razlicitim
varijablama, a funkcije su se pozivale sa vise razlicitih mjesta u kodu.
Takoder, PHP je bogat funkcijama za manipuliranje mnogo razlicitih tipova
sadrzaja [9]. Zbog toga nije bilo problema kod ubacivanja slika koje su u ovom
slucaju bile tipa JPG. One su bile potrebne za prikaz dvaju rezultantnih shema. Pos-
toje cetiri razlicite kombinacija stuba pa tako postoje i cetiri slike u folderu aplikacije
koje se na osnovu korisnikovih ulaza postavljaju kako bi se prikazala odgovarajuca
shema.
6
Poglavlje 2. Koristeni alati
2.5 JavaScript
JavaScript [10] je najpopularniji skriptni jezik na Internetu, koji se izvrsava u Internet
pregledniku na strani korisnika. Napravljen je da bude slican Javi zbog laksega
koristenja, ali nije objektno orijentiran kao Java. JavaScript je interpreter, sto znaci
da se skripta izvrsava odmah naredbu po naredbu, bez prethodnog prevodenja cijelog
programa i kreiranja izvrsne datoteke.
Ukljucujemo ga u web stranicu da bi je ucinili dinamicnijom. Uz pomoc JavaS-
cripta dobiva se mnogo veca kontrola nad web stranicom i njenim ponasanjem. U
kombinaciji sa HTML-om i CSS-om dobivamo DHTML (Dinamic HTML).
Takoder, jako je praktican jer sam detektira preglednik kojeg korisnik upotreb-
ljava pa na osnovu tog prepoznavanja JavaScript moze ucitati drugaciju stranicu
koja je posebno dizajnirana za njega.
Reagira na dogadaje, odnosno moguce je postaviti da se skripta izvrsava kada se
dogodi neki dogadaj, npr. kada se stranica ucita, ili kada korisnik klikne na odredeno
dugme ili neki drugi HTML element. U ovoj aplikaciji bilo je potrebno prepoznati
kada korisnik klikne na dugme Izracunaj kod odredivanja sirina frekvencijskog pojasa
pa je koristen event onclick().
U nastavku su opisane JavaScript knjiznice koristene pri izradi ove aplikacije te
funkcionalnosti za cije su kodiranje bile potrebne.
Sve knjiznice se nalaze u folderu aplikacije pa se ukljucuju u funkcija.php datoteku
sljedecim linijama koda:
<script src="d3.min.js" type="text/javascript"></script>
<script src="math.js" type="text/javascript"></script>
<script src="jquery.js" type="text/javascript"></script>
2.5.1 Math.js
Math.js je JavaScript knjiznica sa matematickim funkcijama i konstantama [11].
Takva knjiznica je bila neophodna kod izrade ove aplikacije.
7
Poglavlje 2. Koristeni alati
Prva prepreka na koju se naislo, a da PHP to nije mogao rijesiti, bili su kom-
pleksni brojevi. Math.js podrzava stvaranje i izvrsavanje izracuna sa kompleksnim
brojevima. Funkcija Math.complex(re, im) stvara kompleksni broj tako da je prvi
parametar u zagradi realni dio, a drugi imaginarni dio kompleksnog broja.
Ako od nekog kompleksnog broja zelimo odvojiti realni ili imaginarni dio, to se
moze izvesti sa nastavkom .re ili .im. Npr. ako zelimo iz varijable var, izdvojiti
imaginarni dio to cemo uciniti sa var.im.
Za konjugaciju kompleksnih brojeva koristena je funkcija Math.conj(). Odnosno,
to znaci da se mijenja predznak imaginarnom parametru kompleksnog broja.
Koristene su i mnoge druge funkcije koje se koriste za poznatije operacije, ali
takoder sa kompleksnim brojevima. Za izracun korijena to je Math.sqrt(), za mnozenje
Math.multiply(), a za zbrajanje Math.add().
Za tangens neke vrijednosti u radijanima koristena je funkcija Math.tan(). Kao
sto je navedeno, osim matematickih funkcija, ova knjiznica sadrzi i konstante. U
ovom slucaju bile je potrebna samo pi konstanta, koja se dohvaca sa Math.PI.
2.5.2 D3.js
D3.js [12] je JavaScript knjiznica koja sluzi za upravljanje podacima koristeci HTML,
SVG i CSS. S obzirom na vrijeme izvrsavanja, D3 je iznimno brz, podrzava velike
kolicine podataka te djeluje interaktivno. Za razliku od mnogih drugih knjiznica,
D3 omogucava veliku kontrolu nad konacnim vizualnim rezultatima. Stvara di-
namicku, interaktivnu vizualizaciju podataka u Internet preglednicima [13]. Na taj
nacin podize aplikaciju na visi nivo.
Podatke koje dobije uspjesno transformira i kao takve vraca u dokument. Npr.
koristeci D3 moze se generirati HTML tablica iz polja brojeva. Takoder, ti se brojevi
mogu koristiti kako bi se iscrtao SVG dijagram sa glatkim prijelazima.
D3 sadrzi nekoliko stotina funkcija koje se mogu grupirati u nekoliko logickih
jedinica, a za ovu aplikaciju bila je potrebna upravo SVG.
SVG moze definirati staticne i animirane SVG-ove. Jako je zahvalan jer SVG
grafike ne gube kvalitetu prilikom zumiranja ili promjenom velicine. SVG slike mogu
8
Poglavlje 2. Koristeni alati
biti ispisane sa visokom kvalitetom u bilo kojoj rezoluciji.
Nakon duze potrage za pravim nacinom iscrtavanja grafa, s obzirom na navedene
pogodnosti, D3 i SVG u kombinaciji su se pokazali dosta pogodnima. Implementiralo
se na nacin da se zeljenom div-u dodao SVG element, a onda prilagodavali parametri
koji obiljezavaju izgled dijagrama uz pomoc atributa.
2.5.3 JQuery.js
Jquery.js [14] je posebna vrsta JavaScript knjiznice, razvijena sa namjenom da bude
nadogradnja osnovnom JavaScript-u. Jquery.js pojednostavljuje njegovu sintaksu i
omogucava bolju interakciju izmedu JavaScript-a i drugih programskih jezika nami-
jenjenih razvoju Internet aplikacija.
Omogucava stvaranje animacija kao i dinamickih AJAX web elemenata na mnogo
jednostavniji nacin nego sto bi se to ucinilo upotrebom klasicnog JavaScript-a. Danas
je to najpopularnija JavaScript knjiznica.
Zbog navedenih cinjenica jQuery.js knjiznica je bila idealno rjesenje za prikaz
izracuna sirine frekvencijskog pojasa koji se pojavljuje, ali i mijenja u istom div -u s
obzirom na to kako korisnik unosi nove vrijednosti koeficijenta refleksije Γ. Sljedece
linije koda prikazuju koristenje jQuery metode .append() koja ispisuje rezultate prvog
rjesenja u div koji ima id fre1 :
$("#fre1").append("Rjesenje 1:<br><br>");
$("#fre1").append("f1 = " + f11 + " Hz<br>");
$("#fre1").append("f2 = " + f12 + " Hz<br><br>");
$("#fre1").append("BW = " + bw1 + " Hz<br>");
$("#fre1").append("BW<sub>rel</sub> = " + bwrel1.toFixed(2)
+ " %<br><br><br>");
9
Poglavlje 3
Matematicki model
U ovom poglavlju objasniti cemo matematicki model aplikacije i detaljno opisati sve
ono sto korisnik ne vidi, odnosno sto se desava u pozadini.
Korisnik unosi sljedece parametre: impedancija tereta ZL, karakteristicna impe-
dancija prilagodne mreze tj. prijenosne linije Z0 i frekvencija f na kojoj ce se vrsiti
prilagodba. Potom odabire potrebne znacajke stuba, odnosno hoce li stub biti para-
lelni ili serijski te zakljucen kratkim spojem ili otvorenim krajem [15]. Prema jednoj
od definicija, stub je kompozicijski element sastavljen od prijenosne linije odredene
duljine, zakljucen reaktivnim teretom, kratkim spojem ili otvorenim krajem.
Nas je cilj ostvariti prilagodbu impedancije tereta na karakteristicnu liniju impe-
dancije. Kako bi se to ostvarilo, potrebno je ponistiti reaktivnu komponentu impe-
dancije (+jX ili -jX).
U postupku prilagodbe impedancije pomocu jednog stuba prilagodavaju se dvije
varijable: udaljenost izmedu stuba i tereta d te duljina stuba l. Stub se spaja
paralelno ili serijski na glavnu liniju.
Spajanjem kratkog spoja ili otvorenog kraja i mijenjanjem duljine prijenosne
linije moze se na njenom ulazu postici bilo koja reaktancija. Reaktancija moze biti
pozitivna i onda je to induktivni karakter reaktancije, a moze biti i negativna pa je
kapacitivni karakter reaktancije [16].
Duljinom d, vrsi se prilagodba ReZL na Z0, a duljinom l ponistava se reak-
tancija. Stoga, nakon sto korisnik unese sve ulazne vrijednosti, potrebno je pronaci
10
Poglavlje 3. Matematicki model
duljine d i l kako bi se ostvarila prilagodba impedancije tereta na karakteristicnu
impedanciju linije. Dokle god je ReZL razlicito od 0, prilagodna mreza se uvijek
moze odrediti.
Smatra se da je teret prilagoden ako vrijedi Zin/Z0=1, odnosno ako je Zin=Z0.
Zin je ulazna impedancija sklopa za prilagodbu koju vidi generator.
U komunikacijskim primjenama nerijetko se trazi prilagodba u sto je moguce
sirem frekvencijskom podrucju. Niti jedan teret ne moze se savrseno prilagoditi u
kontinuiranom pojasu frekvencija, vec je savrsenu prilagodbu moguce ostvariti samo
na diskretnim frekvencijama [17].
Prilagodba impedancije vazna je iz vise razloga. Poboljsava SNR osjetljivih kom-
ponenta prijemnika, smanjuje pogreske amplitude i faze u mrezama dijeljene snage,
te je maksimalna snaga isporucena teretu kada je on prilagoden na prijenosnu liniju
[16].
U nastavku ce biti detaljnije opisan postupak dobivanja grafa magnitude koefici-
jenta refleksije u ovisnosti o frekvenciji iz kojeg je odmah vidljivo za koju frekvenciju
se izvodi prilagodba.
Smisao prilagodavanja impedancije tereta na impedanciju prijenosne linije koris-
tenjem stubova je eliminacija reflektiranog vala na odsjecku linije lijevo od stuba,
odnosno izmedu generatora i stuba [18].
Postupak prilagodbe lijepo se moze prikazati grafickim rjesenjem u Smithovom
dijagramu. Smithov dijagram je graficko pomagalo pri radu s prijenosnim linijama
i podesavanju impedancije elektricnih krugova. To je prikaz koeficijenta refleksije u
dvije dimenzije koji je skaliran na normaliziranu vrijednost impedancije. Normali-
zacija omogucuje koristenje dijagrama u situaciji kada imamo neku karakteristicnu
impedanciju strujnog kruga. Najcesce je karakteristicna vrijednost 50 Ω [17].
Zbog vece tocnosti i preciznosti, u ovom radu ostati cemo orijentirani samo na
analiticko rjesenje koje je korisno za racunalnu analizu.
Na slici 3.1 prikazano je na koji nacin se mogu dobiti cetiri razlicite sheme stuba.
11
Poglavlje 3. Matematicki model
Slika 3.1 Dobivanje cetiri razlicitih vrsta stuba.
3.1 Ugadanje Paralelnim stubom
Ovdje ce biti objasnjeno sto se dogada kada korisnik odabere prilagodbu impedancije
uz pomoc paralelnog stuba, odnosno kako se dolazi do izracuna duljina d i l. Odabir
izmedu paralelnog i serijskog stuba se sprema u varijablu vrsta1. U ovom slucaju u
toj ce varijabli biti spremljena vrijednost paralelni.
Nakon sto se unese vrijednost ZL, njegov se realni dio sprema u varijablu RL, a
imaginarni u XL. Takoder, Z0 se sprema u istoimenu varijablu.
Sve vrijednosti koje unosi korisnik se sa index.php stranice prebacuju u functi-
ons.php uz pomoc post metode gdje se odvija izracun.
Za prijenosnu liniju karakteristicne impedancije Z0, moze se reci da ima karak-
teristicnu admitanciju Y0, a ona se dobije prema jednostavnoj formuli (3.1). Nakon
sto su spremne sve vrijednosti, moze se zapoceti sa izracunom.
Y0 =1
Z0
(3.1)
U slucaju paralelnog stuba, za dobivanje duljina d i l nije potreban rad sa kom-
pleksnim brojevima pa je za citav izracun dovoljan PHP.
12
Poglavlje 3. Matematicki model
Vec pri samom pocetku susrecemo se s dvije formule s obzirom na dvije moguce
opcije. Formula (3.2a) se uzima ako je RL razlicito od Z0 , a prema (3.2b) se racuna
ako je RL = Z0. Kod (3.2a) mogu se uociti +/- znakovi u nazivniku iz cega se odmah
zakljucuje da ce se dobiti dva rjesenja, odnosno t1 i t2. Prema (3.2b) dobivamo samo
jedno rjesenje t.
t =XL ±
√RL[(Z0 −RL)2 +X2
L]/Z0
RL − Z0
RL 6= Z0 (3.2a)
t = −XL
2Z0
RL = Z0 (3.2b)
U kodu se opisani izracun rjesava sljedecim funkcijama:
function t1($rl, $xl, $z0)
$t1 = ($xl + sqrt ($rl * (pow(($z0 - $rl), 2) + pow($xl,
2))/$z0))/($rl-$z0);
return $t1;
function t2($rl, $xl, $z0)
$t2 = ($xl - sqrt ($rl * (pow(($z0 - $rl), 2) + pow($xl,
2))/$z0))/($rl-$z0);
return $t2;
Nakon toga slijedi racunanje parametra B koji ce kasnije biti potreban za dobi-
vanje duljine l. B se racuna prema (3.3), a ako smo prethodno dobili dva rjesenje za
t, sada cemo takoder imati dva rjesenja, a to su B1 i B2.
B =R2
Lt− (Z0 −XLt)(XL + Z0t)
Z0[R2L + (XL + Z0t)2]
(3.3)
Nakon sto su izracunati svi potrebni parametri moze se krenuti na racunanje
duljina d i l. Duljina d se racuna prema (3.4a) ako je t ≥ 0, a prema (3.4b) ako je
13
Poglavlje 3. Matematicki model
t < 0. S obzirom da u se u prethodnom racunu najcesce dobiju dva rijesenja za t,
ovdje cemo dobiti i dva rjesenja za d, odnosno d1 i d2.
d
λ=
1
2πarctan t ≥ 0 (3.4a)
d
λ=
1
2π(π + arctan t) t < 0 (3.4b)
Na red dolaze zadnje formule, a to su one za izracun duljine l. Kod ovog izracuna
bitno je uzeti u obzir da li je korisnik odabrao stub koji je zakljucen kratkim spojem
ili otvorenim krajem. Taj odabir se sprema u varijablu naziva vrsta2.
U slucaju da je odabrao otvoreni kraj, l se racuna prema (3.5a), a ukoliko je
odabrao kratki spoj uzima se formula (3.5b). Za ovaj izracun koristimo prethodno
izracunati parametar B, a ako smo imali dva rjesenja za B, sada cemo imati i dva
rjesenja za l. U slucaju da l dode negativan dodaje se λ /2 sve dok se ne dobije
pozitivna vrijednost.
l
λ=−1
2πarctan
B
Y0(3.5a)
l
λ=
1
2πarctan
Y0B
(3.5b)
3.2 Ugadanje serijskim stubom
Kao sto je prethodno objasnjen postupak dobivanja duljina d i l za paralelni stub,
ovdje ce biti objasnjeno kakav je postupak kod serijskog stuba, odnosno kada je u
varijablu vrsta1 spremljena vrijednost serijski.
Kako bi izracunali t prema (3.6a) i (3.6b) moramo pronaci parametre GL, BL i
Y0. Krenimo od vrijednosti ZL koju unosi korisnik. Naime, korisnik pomocu dvije
input forme zasebno unosi realni i imaginarni dio. Kako bi stvorili kompleksni broj
14
Poglavlje 3. Matematicki model
vise nije dovoljan PHP. Stoga se prebacujemo u JavaScript i ukljucujemo JavaScript
knjiznicu Math.js. Uz pomoc funkcije Math.complex(re, im) stvaramo kompleksni
broj. Preostale funkcije iz iste knjiznice koje su opisane u drugom poglavlju, koriste
se za daljnji izracun sa kompleksnim brojevima.
t =BL ±
√GL[(Y0 −GL)2 +B2
L]/Y0GL − Y0
GL 6= Y0 (3.6a)
t = −BL
2Y0GL = Y0 (3.6b)
Kako bi pronasli parametre GL i BL, potrebno je izracunati YL. YL se racuna prema
(3.7) koja za rjesenje ima kompleksni broj. Njegov imaginarni dio je GL, a realni BL.
Ti se parametri dohvacaju sa Math.re() i Math.im().
YL =1
ZL
(3.7)
Y0 dobivamo iz vec poznate formule (3.1).
Sada kada imamo sve potrebne parametre, t racunamo na isti nacin kao kod
paralelnog stuba. Razliciti su jedino parametri. Umjesto XL, RL i Z0, ovdje se
koriste BL, GL i Y0.
Isto vrijedi za dobivanje pomocnog parametra X koji smo kod paralelnog stuba
oznacavali sa B.
Nakon sto imamo sve vrijednosti, po istim formulama koje su prikazane kod
paralelnog stuba, (3.4a) i (3.4b), dobiti cemo duljine d1 i d2 ovisno o tome da li je
t veci ili manji od 0. Na slican nacin kao kod paralelnog, racunaju se i duljine l1 i
l2, ali treba obratiti paznju na predznake te parametar X zamijeniti sa B. Formula
(3.8a) se uzima za kratkosposni, a (3.8b) za otvoreni stub.
l
λ=−1
2πarctan
B
Y0(3.8a)
l
λ=
1
2πarctan
Y0B
(3.8b)
15
Poglavlje 3. Matematicki model
3.3 Graficki prikaz koeficijenta refleksije
Kako bi dobili graf magnitude koeficijenta refleksije, prvo je trebalo postaviti izracun
za jednu tocku koeficijenta refleksije Γ. Izracun je detaljno opisan u nastavku.
Kako bi dobili ulaznu imepdanciju sustava Zuk treba uzeti u obzir ulaznu impe-
danciju odsjecka linije Zd te ulaznu impedanciju odsjecka stuba Zs.
Neovisno da li se radi o paralelnom ili serijskom stubu, Zd se racuna prema (3.9).
Zd(f) = Z0ZL + jZ0 tan(βd)
Z0 + jZL tan(βd)(3.9)
gdje je βd:
βd = 2πdf
f0(3.10)
Nakon toga potrebno je izracunati Zs. Ovdje postoje dvije mogucnosti ovisno
o tome je li korisnik odabrao stub koji je zakljucen kratkim spojem ili otvorenim
krajem. Ako je korisnik odabrao kratki spoj Zs se racuna prema (3.11), a ako je
odabrao otvoreni kraj formula je (3.12).
ZS(f) = jZ0 tan(βl) (3.11)
ZS(f) = −jZ0 cot(βl) (3.12)
gdje je βl:
βl = 2πlf
f0(3.13)
Sada kad imamo Zd i Zs mozemo izracunati Zuk sto je kombinacija tih dvaju
elemenata, ovisno o tome da li je rijec o serijskom ili paralelnom stubu. Prema poz-
natim formulama iz podrucja elektrotehnike, ako se radi o serijskom spoju racunamo
prema (3.14), a ako se radi o paralelnom onda je tocna formula (3.15).
16
Poglavlje 3. Matematicki model
Zuk(f) = Zd(f) + Zs(f) (3.14)
Zuk(f) =1
1Zd(f)
+ 1Zs(f)
=Zd(f)Zs(f)
Zd(f) + Zs(f)(3.15)
Jos su preostale dvije formule koje nas dijele od zeljene tocke. To su (3.16) i
(3.17).
|Γ(f)| =| Zuk(f)− Z0
Zuk(f) + Z0
|= |A± jB| (3.16)
|Γ| =√A2 +B2 (3.17)
Ovim postupkom dobili smo jednu tocku. Kako bi iscrtali graf sa rasponom
frekvencija od 1 GHz do 3 GHz, postupak treba ponavljati za 2000 tocaka, od 1000
do 3000. Za to je koristena for petlja koja ce nakon svakog izracuna spremati rezultate
u dva razlicita polja, ipsiloni1 i ipisloni2. Dva razlicita polja postoje zbog prethodno
dobivenih dvaju rjesenja. Naravno, postoje i posebni slucajevi kada je RL = Z0 ili
GL = Y0, i tada ce se ispuniti samo jedno polje.
Nakon sto se izvrsi for petlja, naredbom push stvara se jedno slozeno polje ipsiloni
od dva prethodno dobivena iz petlje.
Sa dobivenim poljem koje za frekvencije od 1 GHz do 3 GHz sadrzi sve potrebne
izracunate koeficijente refleksije Γ, prelazi se na iscrtavanje grafa. Poziva se funkcija
crtajGraf kojoj se takvo polje salje kao argument.
Za samo crtanje grafa, koristena je JavaScript knjiznica d3.js. Njene znacajke
opisane su u drugom poglavlju.
Funkcija crtajGraf() prvo rasporeduje tocke iz slozenog u dva manja polja sa y
tockama za dvije razlicite krivulje, odnosno dva razlicita rjesenja. Nakon toga po-
novo se otvara for petlja te se u nova dva razlicita polja, opet naredbom push, unose
vrijednosti x i y za svako rjesenje. U kodu to izgleda ovako:
17
Poglavlje 3. Matematicki model
var xy1 = [];
for(var i=1000;i<Xtocke.length;i++)
xy1.push(x:Xtocke[i],y:Ytocke1[i]);
var xy2 = [];
for(var i=1000;i<Xtocke.length;i++)
xy2.push(x:Xtocke[i],y:Ytocke2[i]);
Potom se odreduju visina, sirina i margine grafa te skala za x i y vrijednosti. U
samom HTML-u napravljen je div kao prostor za iscrtavanje grafa, ali i za izracun
frekvencijskog pojasa koji ce biti objasnjen u sljedecem podpoglavlju. U taj div
dodaje se SVG element sa svim potrebnim atributima, unutar kojeg ce se iscrtati
graf.
3.4 Sirina frekvencijskog pojasa
Pri izracunu sirine frekvencijskog pojasa koristena je javascript knjiznica jQuery.js,
koja je sa preostalim alatima opisana u drugom poglavlju.
Nakon sto korisnik unese zeljeni koeficijent refleksije i pritisne gumb, funkcija
onclick() aktivira funkciju izracunajBW(). U toj se funkciji uzima vrijednost zadanog
koeficijenta refleksije i on se sprema u varijablu zadano. Uz pomoc for petlje prolazi
se kroz 2000 tocaka, odnosno prolazi se kroz dva polja poznata od ranije u kojima
su spremljeni svi izracunati koeficijenti refleksije. U trenutku kada je koeficijent
refleksije iz polja jednak varijabli zadano, uzima se pozicija tog elementa u polju. To
je zapravo trazena rubna frekvencija.
U sljedecim linijama koda prikazana je petlja koja pronalazi rubne frekvencije
prvog rjesenja:
for(var i = 1000; i < ipsiloni1.length; i++)
if(ipsiloni1[i].toFixed(2) == n)
18
Poglavlje 3. Matematicki model
if(flag1 == 0)
f11 = i;
flag1++;
else
f12 = i;
i +=50;
Kako bi se uspjesno spremile obje frekvencije postavljena je varijabla flag koja
ce postavljenom uvjetu signalizirati da sljedecu pronadenu vrijednost spremi u novu
varijablu f12.
Nakon sto se pronadu dvije takve frekvencije za svako rjesenje, moze se odrediti
sirina frekvencijskog pojasa i relativna sirina frekvencijskog pojasa na vrlo jednosta-
van nacin uz pomoc formula (3.18) i (3.19) tako da je fV veca, a fM manja frekvencija.
Pri cemu je fC prikazan jednadzbom (3.20).
BW = fV − fM (3.18)
BWrel =BW
fC∗ 100% (3.19)
fC =fM + fV
2(3.20)
Nakon sto imamo izracunate sirine frekvencijskog pojasa zakljucuje se da je bolje
ono rjesenje sa sirim frekvencijskim pojasom.
Ispisi rjesenja odvijaju se uz pomoc metode append() koja je dio knjiznice jQu-
ery.js. Ona omogucava da se prilikom svakog novog upisa koeficijenta refleksije u
istom div -u ispisuju nova rjesenja. Event onclick() aktivira se svaki puta kada ko-
risnik pritisne gumb Izracunaj.
19
Poglavlje 4
Korisnicko sucelje
Nakon sto je u prethodnom poglavlju opisan pozadinski dio aplikacije, u ovom cemo
se poglavlju usredotociti na opis onoga sto korisnik vidi. Sve sto se zahtjevnim
matematickim postupkom izracunalo, sada je prikazano korisniku na najjednostavniji
nacin. Koristenjem CSS-a, sve forme su napravljene su tako da budu pregledne i
elementi prigodno postavljeni.
Na slici 4.1 prikazana je pocetna stranica.
Slika 4.1 Pocetna stranica aplikacije.
Uz pomoc sljedeca dva primjera, proci ce se kroz aplikaciju od pocetka do kraja
i vidjeti sto se desava na upis razlicitih vrijednosti.
20
Poglavlje 4. Korisnicko sucelje
4.1 Primjer - Kratkospojni paralelni stub
Korisnik u odgovarajuca polja unosi sljedece vrijednosti na index.php:
ZL = 60 - j80 Ω
Z0 = 50 Ω
f = 2 GHz
Prilikom prijelaza misem preko ZL i Z0 moze se vidjeti kratka poruka koja objasnjava
sto zapravo predstavljaju ti parametri.
Nakon sto je korisnik unio zeljene brojcane vrijednosti ponudene su mu na odabir
dvije slike, odnosno dvije sheme. Desna predstavlja paralelni stub, a lijeva serijski.
Ako se misem neodlucno prelazi preko obje slike naizmjenicno, ona na kojoj je pozici-
oniran mis biti ce osvijetljena, dok ce ona druga ostati zatamnjena. U ovom primjeru
korisnik bira paralelni stub pa ce nakon odabira ta slika ostati osvijetljena.
Njihovi krajevi nisu definirani na shemama vec je ispod slika ponuden jos jedan
odabir radio-button-ima. Klikom na kratkospojni odabran je kratkospojni stub.
Nakon sto korisnik pritisne dugme Izracunaj, aplikacija ga vodi na functions.php
gdje je prikazan dobiveni izracun. U slucaju da korisnik ne ispuni sve sto se od njega
trazi, prikazati ce se poruka da nisu unesene sve vrijednosti.
Prvo sto korisnik vidi jesu njegove upisane vrijednosti iz kojih proizlaze dva
rjesenja za duljine d i l. Za opisane ulazne vrijednosti, izlaz je prikazan na slici
4.2.
Slika 4.2 Izlaz nakon unesenih vrijednosti.
21
Poglavlje 4. Korisnicko sucelje
Ispod toga nalaze se takoder dvije slike za dva rjesenja. To su zapravo rezul-
tantne sheme. One prikazuju stub prema znacajkama koje je korisnik odabrao sa
rezultatima prikazanim na odgovarajucim mjestima. Shema za prvo rjesenje ovog
primjera prikazana je na slici 4.3.
Slika 4.3 Shema prvog rjesenja.
Ispod dvaju shema nalazi se graficki prikaz koeficijenta refleksije. Za frekvenciju
od 2 GHz koju je upisao korisnik, mreza je prilagodena idealno, bez refleksija. Na
slici 4.4 prikazan je dobiveni graf na kojemu se to jasno vidi. Naime, za obje krivulje
koeficijent refleksije je na frekvenciji od 2 GHz u nuli. Kako bi se uspjesno razlikovala
ova dva rjesenja, krivulja za prvo rjesenje prikazana je plavom bojom i punom linijom,
dok je druga krivulja crvena i iscrtkana.
Desno od grafa nalazi se prazan prostor, a pri dnu je polje za unos koeficijenta
refleksije Γ. Prelaskom misa preko znaka Γ pojaviti ce se pojasnjenje da je to zapravo
koeficijent refleksije. Kada korisnik unese vrijednost u rasponu od 0 do 1, aplikacija
ce ispisati dva rjesenja, jedno za svaku krivulju. Ako korisnik u ovom slucaju upise
0.4 ispisati ce se rjesenja prikazana na slici 4.5 kao i poruka da je bolje prvo rjesenje.
Naime, ako obje krivulje na slici 4.4 promatramo za vrijednost koeficijenta refleksije
0.4, jasno je da prvo rjesenje ima siri frekvencijski pojas.
22
Poglavlje 4. Korisnicko sucelje
Slika 4.4 Graf koeficijenta refleksije.
Slika 4.5 Sirine frekvencijskog pojasa.
23
Poglavlje 4. Korisnicko sucelje
4.2 Primjer - Otvoreni serijski stub
Korisnik unosi sljedece vrijednosti:
ZL = 100 + j80 Ω
Z0 = 50 Ω
f = 2 GHz
Nakon toga klikom na odgovarajucu shemu odabire otvoreni serijski stub.
Dobivena rjesenja za d i l prikazana su na slici 4.6.
Slika 4.6 Izlaz nakon unesenih vrijednosti.
Ispod toga su prikazane sheme kao i u prethodnom primjeru. Shema za prvo
rjesenje prikazana je na slici 4.7.
Graf sa krivuljama za oba rjesenja prikazan je na slici 4.8.
Ako za koeficijent refleksije upisemo 0.5 prikazati ce se rjesenja sa slike 4.9.
U ovom slucaju bolje je drugo rjesenje, sto se takoder moze vidjeti na grafu ako
gledamo sirine frekvencijskih pojasa oba rjesenja za koeficijent refleksije 0.5.
24
Poglavlje 4. Korisnicko sucelje
Slika 4.7 Shema prvog rjesenja.
Slika 4.8 Graf koeficijenta refleksije.
25
Poglavlje 5
Zakljucak
U ovom radu obradivala se tema koja je bila izrada aplikacije za prilagodbu impe-
dancije pomocu jednog stuba. U prethodnim poglavljima detaljno je opisano koji
alati su koristeni, tijek izrade aplikacije te sto je njen izlaz.
Prilozene su sve potrebne formule i detaljno opisan matematicki model. Ulazne
varijable su: impedancija tereta ZL, karakteristicna impedancija prijenosne linije Z0
i frekvencija f, na temelju cega aplikacija vrsi prilagodbu impedancije. Za uspijesno
racunanje kompleksnim brojevima, koristena je JavaScript knjiznica Math.js, a jed-
nostavniji izracuni izvrsavaju se u PHP-u. Dobiveni rezultat ukljucuje dva rjesenja,
odnosno dvije duljine za l i dvije duljine za d.
Na dvjema rezultantnim shemama ti su rezultati upisani na odgovarajucim mjes-
tima zbog bolje preglednosti i razumijevanja. Za stvaranje shema bilo je potrebno
dobro izbalansirati HTML i CSS, kako bi se dobivene duljine d i l prikazale na pravim
mjestima.
Takoder, prikazan je graf magnitude koeficijenta refleksije u ovisnosti o frekvenciji.
Iz njega se moze odmah vidjeti na kojoj frekvenciji se izvrsila prilagodba. Obje
krivulje koje predstavljaju dva rjesenja padaju prema 0 na zadanoj frekvenciji, a
onda se ponovo uzdizu. Za crtanje grafa koristena je knjiznica d3.js, koja uz pomoc
SVG elementa iscrtava graf.
Koristeci jQuery.js knjiznicu bila je olaksana izrada koda za racunanje sirine
frekvencijskog pojasa. Naime, u aplikaciji se na osnovu zadanih koeficijenta refleksije
27
Poglavlje 5. Zakljucak
racuna sirina i relativna sirina frekvencijskog pojasa. Na temelju tih vrijednosti
donosi se zakljucak koje rjesenje je bolje.
U ovom radu opisana je prilagodba impedancije analitickim putem, cime se pusta
otvoren prostor za nadogradnju aplikacije Smitthovim dijagramom. Graficka analiza
bila bi interesantna, iako zahtjeva neke slozenije tehnologije i vise znanja.
Postoji i opcija u kojoj bi se vise aplikacija srodnih ovoj ujedinilo. Tada bi se
mogao napraviti kvalitetan portal znanja iz podrucja radiokomunikacija, ali i sire,
koji bi sigurno mnogima bio od koristi.
28
Bibliografija
[1] HTML. , s Interneta, https://www.w3.org/html/ , rujan 2016.
[2] CSS. , s Interneta, https://www.w3.org/Style/CSS/ , rujan 2016.
[3] Javascript. , s Interneta, https://developer.mozilla.org/en-US/docs/Web/JavaScript , rujan 2016.
[4] Apache. , s Interneta, https://httpd.apache.org/ , rujan 2016.
[5] Apache. , s Interneta, https://hr.wikipedia.org/wiki/Apache (webserver) ,rujan 2016.
[6] Vertrigo. , s Interneta, http://vertrigo.sourceforge.net/ , rujan 2016.
[7] HTML. , s Interneta, https://hr.wikipedia.org/wiki/HTML , rujan 2016.
[8] CSS. , s Interneta, https://hr.wikipedia.org/wiki/CSS , rujan 2016.
[9] PHP. , s Interneta, http://php.com.hr/77 , rujan 2016.
[10] JavaScript. , s Interneta, http://www.znanje.org/knjige/computer/JavaScript/2010/index.htm , rujan 2016.
[11] Math.js. , s Interneta, http://mathjs.org/ , rujan 2016.
[12] D3.js. , s Interneta, https://d3js.org/ , rujan 2016.
[13] D3.js. , s Interneta, https://en.wikipedia.org/wiki/D3.js
[14] jQuery. , s Interneta, https://jquery.com/ , rujan 2016.
[15] Impedance matching. , s Interneta, http://www.ece.rutgers.edu/∼orfanidi/ewa/ch13.pdf , rujan 2016.
[16] Joler, M., Predavanja iz kolegija radiokomunikacije, 2016.
29
Bibliografija
[17] Bartolic, J. Mikrovalna elektronika. , s Interneta, http://www.graphis.hr/news/mikrovalna/bartolic web.pdf , rujan 2016.
[18] Pozar, D.M. (2012) Microwave engineering. , s Inter-neta, http://www2.electron.frba.utn.edu.ar/∼jcecconi/Bibliografia/Ocultos/Libros/Microwave Engineering David M Pozar 4ed Wiley 2012.pdf , rujan2016.
30
Pojmovnik
CSS Cascading Style Sheets. 3, 5–7, 20, 27
HTML HyperText Markup Language. 3–7, 27
PHP Hypertext Preprocessor. 3, 4, 7, 27, 31
31
Sazetak
Kroz ovaj zavrsni rad opisana je izrada aplikacije za prilagodbu impedancije pomocu
jednog stuba. Ulazne vrijednosti su: impedancije tereta ZL, karakteristicna impe-
dancija prijenosne linije Z0 i frekvencija na kojoj se vrsi prilagodba f. Prikazom
matematickog modela opisan je postupak kojim se iz navedenih ulaznih vrijednosti
dolazi do udaljenosti stuba od tereta d te duljine stuba l koje su potrebne za pri-
lagodbu. Kod ovog izracuna vecinom je koristen PHP. Osim rjesenja analitickog
izracuna, prikazuju se dvije sheme i iscrtava graf magnitude koeficijenta refleksije u
ovisnosti o frekvenciji. Prikaz shema ovisi o tome da li je stub paralelan ili serijski,
te zakljucen kratkim spojem ili otvorenim krajem. Kod trazenja koeficijenta reflek-
sije bilo je potrebno mnogo racunanja sa kompleksnim brojevima, pa je ukljucena
JavaScript knjiznica Math.js. Za iscrtavanje grafa koristena je knjiznica d3.js.
Aplikacija bi trebala pomoci ljudima koji rade u podrucju radiokomunikacije te
slicnima granama, bas kao i studentima. Zbog dugackog i dosta zahtjevnog izracuna
za koji je rucno potrebno utrositi mnogo vremena, ova aplikacija ce sve odraditi u tek
nekoliko klikova. Brz izracun u kombinaciji sa shemama i grafovima daje preglednu
sliku za lakse razumijevanje, sto bi zasigurno bilo od koristi.
Kljucne rijeci — stub, prijenosna linija, prilagodba impedancije, ko-
eficijent refleksije
Abstract
Through this thesis an application for impedance matching with one stub is des-
cribed. The input values are: load impedance ZL, characteristic impedance of the
transmission line Z0 and the frequency f at which the matching must be performed.
The mathematical model describes a process which of the following input values
comes to the distance of the stub from the load d and stub length l, which are nece-
ssary for impedance matching. PHP is mostly used for this calculation. In addition
to solutions from the mathematical calculations, two schemes are displayed and the
graph of the magnitude of the reflection coefficient is plotted against the frequency.
32
Displaying of the particular scheme is based on whether the stub is parallel or serial
and terminated by a short or by an open circuit. For searching the reflection coeffi-
cient, it required a lot of calculations with complex numbers, which is why javascript
library Math.js was included. To draw a graph library, d3.js was used.
This application should be helpful to people who work in radiocomunications and
similar branches and it should also help students. Because of the long and demanding
calculation which would take a long time if done by hand, this application will do
evertything in a few clicks. Fast calculation, combined with schemes and graphs,
gives a better picture which is easier to understand and is ultimately helpful.
Keywords — stub, transmittion line, impedance matching, transmission
line, reflection coefficient
33