Pengukuran Dan Pengolahan Excess Delay Kanal Wireless
Pengukuran Dan Pengolahan Excess Delay Kanal Wireless
Dosen Pembimbing :
Hani’ah Mahmudah,ST
NIP. 132 297 803
Disetujui oleh
ii
ABSTRAK
iii
ABSTRACT
iv
KATA PENGANTAR
Penulis
v
UCAPAN TERIMA KASIH
vi
DAFTAR ISI
vii
BAB 3 PENGUKURAN DAN DATA HASIL PENGUKURAN
3.1 SET-UP PENGUKURAN ……………………….. 13
3.2 PERALATAN YANG DIGUNAKAN ………….. 14
3.2.1 Network Analyzer ………………………… 14
3.2.2 Antena Pemancar dan Penerima ………….. 15
3.2.3 Kabel Penghubung ………………………… 16
3.3 SET-UP RUANG PENGUKURAN ....................... 17
3.4 PENGUKURAN …………………………………. 20
3.4.1 Kalibrasi ………………………………….. 20
3.4.2 Inisialisasi ………………………………… 20
3.4.3 Pelaksanaan Pengukuran ………………….. 22
3.5 DATA HASIL PENGUKURAN ………………… 23
BAB 5 PENUTUP
5.1 KESIMPULAN ...................................................... 45
5.2 SARAN ................................................................... 45
viii
DAFTAR GAMBAR
viii
Untuk Kondisi Normal ……………………………………….. 36
28. Gambar 4.10 Distribusi Maximum Delay Tanggapan Impuls
Untuk Kondisi Triplek .............................................................. 36
29. Gambar 4.11 Distribusi Maximum Delay Tanggapan Impuls
Untuk Kondisi Tembaga ........................................................... 37
30. Gambar 4.12 Tampilan Utama Pada Program GUI ………….. 38
31. Gambar 4.13 Tampilan Ploting Phase Terhadap Frekuensi
Pada GUI Untuk Kondisi Normal Dengan Ketiga Distribusi … 39
32. Gambar 4.14 Tampilan Ploting Fungsi Transfer H(f)
Normalisasi Pada GUI Untuk Kondisi Normal Dengan Ketiga
Distribusi …............................................................................... 39
33. Gambar 4.15 Tampilan Ploting Respon Impuls Pada GUI
Normalisasi Pada GUI Untuk Kondisi Normal Dengan
Ketiga Distribusi …................................................................... 40
34. Gambar 4.16 Tampilan Proses Binning Pada GUI Untuk
Kondisi Normal Dengan Ketiga Distribusi ............................... 40
35. Gambar 4.17 Tampilan Proses Binning Pada GUI Untuk
Kondisi Normal Dengan Ketiga Distribusi ............................... 41
36. Gambar 4.18 Tampilan Maximum Excess Delay Pada GUI Untuk
Kondisi Normal Dengan Ketiga Distribusi ............................... 41
35. Gambar 4.19 Distribusi Maximum Excess Delay Untuk
Kondisi Normal ........................................................................ 42
36. Gambar 4.20 Distribusi Maximum Excess Delay Untuk
Kondisi Triplek ........................................................................ 42
37. Gambar 4.21 Distribusi Maximum Excess Delay Untuk
Kondisi Tembaga ........................................................................ 43
ix
DAFTAR TABEL
x
1
BAB 1
PENDAHULUAN
1
2
1.5 METODOLOGI
Dalam menyelesaikan proyek akhir ini, langkah-langkah yang
dilakukan adalah sebagai berikut :
• Mempelajari konsep tentang multipath.
• Mempelajari teknik pengolahan sinyal digital dari domain
frekuensi menjadi domain waktu menggunakan IFFT (Inverse
Fast Fourier Transform).
• Membuat program untuk melakukan penghitungan dan
pengolahan data dari hasil pengukuran sampai menjadi informasi
excess delay dan memvisualisasikannya dalam bentuk grafik.
• Menganalisa dan menyimpulkan hasil simulasi, serta memberi
saran bila proyek akhir ini diaplikasikan ke sistim yang nyata.
• Menyusun buku laporan proyek akhir.
BAB 2
DASAR TEORI
2.2 PROPAGASI
Dalam sistim komunikasi nirkabel, propagasi gelombang radio
adalah tahapan dasar yang harus dipelajari terlebih dahulu. Karena
propagasi gelombang radio dalam ruang (indoor propagation)
merupakan suatu fenomena dalam perancangan komunikasi nirkabel.
Pada sistim propagasi gelombang dapat dikatakan ideal apabila suatu
gelombang radio yang dipancarkan dari pemancar, dapat diterima secara
langsung oleh penerima tanpa ada komponen sinyal lain yang
mengikuti, yang biasa diakibatkan karena sinyal dari pemancar yang
terpantulkan. Hal ini dapat tercapai bila dilakukan pada suatu tempat
yang sangat luas tanpa ada media yang memantulkan sinyal yang
dipancarkan, sehingga sinyal yang diterima hanya melalui single path
atau direct path.
Pada kehidupan nyata bentuk propagasi free space hampir tidak
dapat diwujudkan, dan hanya sebagai referensi perhitungan untuk sistim
komunikasi nirkabel yang sebenarnya. Untuk sistim komunikasi
nirkabel yang sebenarnya tidak dapat dihindari dari adanya refleksi,
difraksi, dan scattering.
5
6
2.2.2 Refleksi
Refleksi atau pemantulan terjadi pada saat suatu sinyal/
gelombang elektromagnetik berbenturan dengan suatu permukaan dari
suatu obyek yang mana memiliki dimensi relatif lebih besar jika
dibandingkan dengan panjang gelombang dari sinyal/gelombang yang
dipancarkan tersebut. seperti ditunjukkan pada Gambar 2.1.[4].
Refleksi/pemantulan terjadi pada permukaan dari suatu dinding, lantai
dan bangunan/gedung.
2.2.3 Difraksi
Difraksi terjadi jika kanal antara pemancar dan penerima
terhalangi oleh suatu permukaan yang tidak teratur dan tajam atau tepi
dari suatu permukaan, seperti ditunjukkan pada Gambar 2.2. Pada
komunikasi nirkabel yang menggunakan frekuensi tinggi, diffraksi
terlihat seperti refleksi bergatung dari geometri objek tersebut misalkan,
amplitudo, fase dan polarisasi.[4]
7
2.2.4 Scattering
Scattering terjadi dikarenakan saat perambatan sinyal terhalang
oleh media yang mempunyai ukuran dimensi relatif lebih kecil bila
dibandingkan dengan panjang gelombang yang dikirim dari pemancar.
Scattering dihasilkan oleh permukaan yang kasar, objek yang berukuran
kecil serta benda-benda lainnya. [4]
Sinyal yang dikirimkan oleh pemancar (Tx) ke penerima (Rx)
pada ruang bebas akan mengalami peristiwa yang telah disebabkan oleh
fenomena tersebut. Sehingga sinyal yang diterima oleh penerima, baik
dari satu lintasan (singlepath) maupun lintasan jamak (multipath) akan
memiliki level daya, fase serta delay waktu yang berbeda-beda.
2.6 ANTENA
2.6.1 Antena Disccone
Antena disccone dibentuk oleh sebuah cone (kerucut) dan disc
(lempeng datar). Disc terikat pada tengah (ujung) konduktor yang
terhubung dengan jalur kabel coaxial, dan tegak lurus pada sumbunya.
Cone pada sumbunya terhubung dengan kabel coaxial. Gambar dari
antena disccone seperti yang ditunjukkan pada Gambar 2.4.
Antena disccone termasuk antena dipole, yang memiliki
persamaan yang sama mengenai panjang gelombang yakni sebesar
l > λ . Antena ini memiliki pola radiasi omnidirectional dan polarisasi
vertikal. [6]
Pada umumnya impedansi dan variasi dari ukuran antena discone
dipengaruhi oleh nilai frekuensi dari gelombang. Berdasarkan rumus
λ = c f , akan didapatkan panjang gelombangnya yang akan menentukan
ukuran dari antena discone.[6]
fungsi arah. Berdasarkan pola radiasi dari suatu antena, maka dapat
diperoleh parameter – parameter yang lain yaitu :
1. Side Lobe Level (SLL) adalah perbandingan (rasio) antara
harga peak dari side lobe terbesar dengan harga maksimum
dari main lobenya.
2. Half Power Beam Width adalah lebar sudut yang
memisahkan dua titik pada main beam dari suatu pola
radiasi, di mana daya pada kedua titik tersebut adalah sama
dengan setengah dari harga maksimumnya.
3. Front to Back Ratio (F/B Ratio), adalah perbandingan daya
pada arah maksimum dari main beam dengan daya dari side
lobe yang arahnya berlawanan (180o)dari arah main beam-
nya.[7]
2.6.3 Polarisasi
Polarisasi antena ditentukan oleh arah medan listrik (E)
gelombang yang dipancarkan oleh antena terhadap bidang permukaan
bumi/tanah. Bila suatu gelombang elektromagnetik yang dipancarkan
suatu antena mempunyai medan listrik yang sejajar dengan permukaan
bumi maka antena tersebut memiliki polarisasi horizontal, sebaliknya
bila suatu gelombang elektromagnet yang dipancarkan suatu antena
mempunyai medan listrik yang tegak lurus dengan permukaan bumi
maka antena tersebut dikatakan berpolarisasi horizontal.
Pt
Gt = × Gs (2-6)
Ps
12
BAB 3
PENGUKURAN DAN DATA HASIL
PENGUKURAN
c 3 × 10 8
λ = = = 0,17 m (3-1)
f 1,7 × 10 9
Dimana :
λ = panjang gelombang
c = kecepatan cahaya = (3 ×10 8 ) m s
f = frekuensi kerja = (1,7 × 10 9 ) MHz
13
14
2. Triplek
Untuk kondisi kedua ini, pengukuran dilakukan masih didalam
Lab..Microwave seperti halnya yang dilakukan pada
pengukuran untuk kondisi pertama, namun terdapat sedikit
perbedaan. Perbedaan tersebut adalah bila pada kondisi
pertama, ruang tersebut berada pada kondisi apa adanya
(normal), sedangkan pada kondisi kedua ini, pada ruangan
tersebut di kondisikan berdinding triplek, seperti yang
ditunjukkan pada Gambar 3.7 dan foto kondisi ruang
pengukurannya seperti yang ditunjukkan pada Gambar 3.8.
18
3. Tembaga
Sedangkan pada kondisi ketiga, pada ruangan tersebut di
kondisikan berdinding tembaga, seperti yang ditunjukkan pada
Gambar 3.9 dan foto kondisi ruang pengukurannya seperti yang
ditunjukkan pada Gambar 3.10.
3.4 PENGUKURAN
Untuk melakukan pengukuran dengan menggunakan NA, ada
beberapa tahapan yang harus diperhatikan, yaitu kalibrasi, inisialisasi
dan pemilihan parameter yang akan digunakan. Sebab dengan parameter
inilah dapat diketahui beberapa besaran yang terukur pada penerima dari
NA tersebut.
Sebelum memulai untuk melakukan pengukuran, terlebih dahulu
harus dilakukan kalibrasi pada NA. Prosedur ini dilakukan agar dapat
mengurangi akibat dari redaman kabel. Setelah dilakukan kalibrasi,
proses berikutnya adalah proses inisialisasi, dimana berfungsi untuk
penentuan jenis parameter yang digunakan serta pemilihan jumlah
sampling pengukuran.
3.4.1 Kalibrasi
Kalibrasi perlu dilakukan untuk mengetahui besarnya redaman
kabel sebelum dilakukan pengukuran, dengan demikian akan dapat
mengurangi akibat redaman tersebut.
Langkah-langkah dalam melakukan kalibrasi pada Network Analyzer,
adalah sebagai berikut :
1. Tekan preset untuk all memory clear
2. Tekan tombol Meas (S- Parameter)
3. Tekan start (pilih mulai dengan menekan angka pada blok
entry)
4. Tekan stop (pilih mulai dengan menekan angka pada blok
entry)
5. Tekan AVG Æ IF BW Æ 30Hz (IF Bandwidth 30Hz)
6. Tekan tombol power Æ 10 dBm (test port power)
7. Tekan tombol sweep set up Æ number of point 401
8. Tekan tombol call Æ calibrates menu Æ respon Æ thru
9. Tekan tombol save / recall.
10. Tekan tombol save state Æ recall state
3.4.2 Inisialisasi
Inisialisasi dapat dilakukan melalui software interface pada
komputer, agar software dapat sesuai (match) dengan kalibrasi alat yang
telah dilakukan pada tahapan sebelumnya. Beberapa hal yang harus
dilakukan pada saat melakukan inisialisasi antara lain :
o Number of Point : 401
o Frekuensi start : 1600 MHz
o Frekuensi stop : 1800 MHz
21
-55
-60
1600 1620 1640 1660 1680 1700 1720 1740 1760 1780 1800
Frequency (MHz)
Grafik Phase terhadap Frekuensi (Hasil Pengukuran)
200
Phase (derajat)
100
-100
-200
1600 1620 1640 1660 1680 1700 1720 1740 1760 1780 1800
Frequency (MHz)
BAB 4
ANALISA DATA HASIL PENGUKURAN
0.9
0.8
0.7
0.6
Amplitudo
0.5
0.4
0.3
0.2
0.1
0
1600 1620 1640 1660 1680 1700 1720 1740 1760 1780 1800
Frekuensi (MHz)
25
26
-10
-20
Amplitudo (dB)
-30
-40
-50
-60
-20 -15 -10 -5 0 5 10 15 20
Waktu (nano second)
H estimasi (f ) = H ch ( f ) • W ( f ) (4-1)
f1
=
∫H
f2
ch ( f ) ⋅ W ( f ) ⋅ e j 2πf df
= hch (τ ) ∗ w(τ )
0.9
0.8
0.7
Amplitudo Ternormalisasi
0.6
0.5
0.4
0.3
0.2
0.1
0
0 50 100 150 200 250 300 350 400
Excess Delay (ns)
0.9
0.8
0.7
Amplitudo Ternormalisasi
0.6
0.5
0.4
0.3
0.2
0.1
0
-50 0 50 100 150 200 250 300 350 400
Excess Delay (ns)
Proses Binning
1
0.9
0.8
Amplitudo Ternormalisasi, (hτ)
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.9
0.8
Amplitudo Ternormalisasi, (hτ)
0.7
0.6
0.5
0.4
0.3
0.2
0.1
Tabel 4-1
Data Maximum Excess Delay dengan Kondisi Normal
Maximum Maximum
Sampel Sampel
Excess Delay Excess Delay
ke - ke -
(s) (s)
1 1.2500E-07 26 1.8900E-06
2 1.0000E-07 27 1.3000E-07
3 1.3000E-07 28 1.4500E-07
4 1.4500E-07 29 1.4000E-07
5 1.6600E-06 30 1.3500E-07
6 1.3000E-07 31 1.5000E-07
7 1.4000E-07 32 1.7000E-07
8 1.2150E-06 33 1.5000E-07
9 1.7000E-07 34 1.6500E-07
10 1.2000E-07 35 1.8500E-07
11 1.3000E-07 36 1.8000E-07
12 1.3000E-07 37 1.8900E-06
13 1.5450E-06 38 1.8500E-06
14 1.4800E-06 39 1.0000E-07
15 1.4500E-07 40 1.0500E-07
16 1.5000E-07 41 1.8850E-06
17 1.2000E-07 42 1.8050E-06
18 1.4000E-07 43 9.9000E-07
19 1.1150E-06 44 1.5950E-06
20 1.5500E-07 45 1.6500E-07
21 1.5000E-07 46 1.9000E-07
22 1.7100E-06 47 1.8800E-06
23 1.6000E-07 48 1.8700E-06
24 1.6500E-07 49 1.0000E-07
25 1.8650E-06 50 1.0000E-07
34
Tabel 4-2
Data Maximum Excess Delay dengan Kondisi Triplek
Maximum Maximum
Sampel Sampel
Excess Delay Excess Delay
ke - ke -
(s) (s)
1 1.8800E-06 26 1.4000E-07
2 2.0000E-07 27 1.3000E-07
3 1.3500E-07 28 1.3500E-07
4 1.0500E-07 29 1.5000E-07
5 1.1500E-07 30 1.1500E-07
6 1.8250E-06 31 1.4000E-07
7 1.3500E-07 32 1.0500E-07
8 1.0500E-07 33 1.7000E-07
9 1.8850E-06 34 1.6500E-07
10 9.5000E-08 35 1.6000E-07
11 1.0850E-06 36 1.5500E-07
12 1.5350E-06 37 1.2500E-07
13 1.0500E-07 38 1.2500E-07
14 1.8500E-07 39 1.2500E-07
15 1.4500E-07 40 1.6500E-07
16 1.5000E-07 41 1.5500E-07
17 1.1500E-07 42 1.5000E-07
18 1.0000E-07 43 1.6500E-07
19 1.0500E-07 44 1.2500E-07
20 9.5000E-08 45 1.0500E-07
21 1.3000E-07 46 1.2500E-07
22 1.5500E-07 47 1.8500E-07
23 1.1500E-07 48 1.6500E-07
24 1.5500E-07 49 1.8000E-07
25 1.2500E-07 50 1.8000E-07
35
Tabel 4-3
Data Komponen Multipath dengan Kondisi Tembaga
Maximum Maximum
Sampel Sampel
Excess Delay Excess Delay
ke - ke -
(s) (s)
1 1.4000E-07 26 1.8150E-06
2 1.8800E-06 27 1.5750E-06
3 1.4000E-07 28 1.7300E-06
4 1.2000E-07 29 1.1500E-07
5 1.4000E-07 30 1.1000E-07
6 1.1500E-07 31 1.4550E-06
7 3.5500E-07 32 1.5500E-07
8 1.8900E-06 33 1.8600E-06
9 1.7200E-06 34 1.0500E-07
10 1.8900E-06 35 1.8850E-06
11 1.2500E-07 36 1.4000E-07
12 1.2500E-07 37 1.8800E-06
13 1.0500E-07 38 1.8800E-06
14 1.0000E-07 39 1.7550E-06
15 1.8750E-06 40 1.3550E-06
16 1.8600E-06 41 1.2000E-07
17 1.1000E-07 42 1.2500E-07
18 1.0000E-07 43 1.8900E-06
19 1.0000E-07 44 1.7450E-06
20 1.0500E-07 45 6.5000E-08
21 1.8800E-06 46 1.6750E-06
22 1.8850E-06 47 9.5000E-08
23 1.1500E-07 48 1.0500E-07
24 1.1000E-07 49 1.0000E-07
25 1.8150E-06 50 1.4000E-07
36
5
Jumlah Sampel
3
2
1
0
100 105 120 125 130 135 140 145 150 155 160
Maximum Excess Delay (ns)
7
6
Jumlah Sampel
5
4
3
2
1
0
95 100 105 115 125 130 135 140 145 150 155 160
Maximum Excess Delay (ns)
5
Jumlah Sampel
2
1
0
65 95 100 105 110 115 120 125 140 155
Maximum Excess Delay (ns)
Berdasarkan data dari tabel 4-1 s/d tabel 4-3 dan Gambar 4.9 s/d
Gambar 4.11, pada kondisi normal jumlah sampel terbanyak mempunyai
maximum excess delay sebesar 130 ns, dan pada kondisi dengan
penambahan triplek jumlah sampel terbanyak mempunyai maximum
excess delay sebesar 105 ns, sedangkan pada kondisi dengan
penambahan tembaga jumlah sampel terbanyak mempunyai maximum
excess delay sebesar 140 ns. Hal ini menunjukkan bahwa pada kondisi
ruang normal memiliki komponen multipath yang lebih sedikit daripada
kondisi ruangan dengan penambahan material tembaga. Sedangkan pada
kondisi ruang dengan penambahan material triplek menunjukkan bahwa
terdapat komponen multipath paling sedikit diantara ketiga kondisi
ruang tersebut. Distribusi maximum excess delay pada kondisi normal
memiliki nilai agak besar dikarenakan pada kondisi normal banyak
terdapat rak peralatan yang terbuat dari logam
Dengan kata lain, dapat dinyatakan bahwa suatu ruangan dimana
terdapat material/bahan yang terbuat dari logam atau tembaga memiliki
nilai maximum excess delay lebih besar. Sedangkan pada ruangan
dimana memiliki material/bahan yang terbuat dari non logam memiliki
nilai maximum excess delay yang kecil. Hal ini dikarenakan bahan yang
terbuat dari logam memiliki koefisien refleksi lebih besar dari pada
bahan yang terbuat dari non logam. Sebab logam memiliki sifat yang
dapat memantulkan gelombang elektromagnetik.
38
BAB 5
PENUTUP
5.1 KESIMPULAN
Berdasarkan data hasil pengukuran, perhitungan serta analisa yang
telah dilakukan pada proyek akhir ini, dapat disimpulkan bahwa :
9 Pada kondisi normal, sampel data yang terbanyak mempunyai
excess delay sebesar 130.ns. Pada kondisi triplek, sampel data
yang terbanyak mempunyai excess delay sebesar 105.ns. Pada
kondisi tembaga, sampel data yang terbanyak mempunyai
excess delay sebesar 140.ns. Dalam hal ini, untuk kondisi
normal dengan kondisi tembaga nilai maximum excess delay
tidak terpaut jauh dikarenakan pada kondisi normal banyak
terdapat rak peralatan yang terbuat dari logam.
9 Bila suatu ruangan banyak terdapat material/bahan yang
memiliki koefisien refleksi lebih besar, maka komponen
lintasan jamak semakin banyak pula.
5.2 SARAN
Proyek akhir ini dapat dikembangkan lebih lanjut, dan terdapat
beberapa saran, antara lain :
9 Dalam proyek akhir selanjutnya dapat dilakukan pengukuran
pada lintasan NLOS (Non Line of Sight).
9 Untuk proyek akhir selanjutnya dapat dilakukan pengukuran
outdoor.
45
46
47
48
49
LAMPIRAN A
TABEL DATA HASIL PENGUKURAN
Sampel Frekuensi Magnitudo Fase
ke - (MHz) (dB) (derajat)
1 1600 -53.215 -167.29
2 1600.5 -53.182 172.74
3 1601 -52.865 153.15
4 1601.5 -52.697 131.87
5 1602 -52.686 111.39
6 1602.5 -52.385 92.988
7 1603 -52.104 71.613
8 1603.5 -52.23 51.254
9 1604 -52.047 30.25
10 1604.5 -51.805 9.87
11 1605 -52.072 -10.422
12 1605.5 -51.721 -30.809
13 1606 -51.752 -50.232
14 1606.5 -51.752 -70.336
15 1607 -51.311 -90.539
16 1607.5 -51.004 -110.16
17 1608 -51.219 -130.16
18 1608.5 -50.604 -147.2
19 1609 -50.811 -170.3
20 1609.5 -50.416 168
21 1610 -50.318 147.59
22 1610.5 -50.164 126.7
23 1611 -49.975 108.43
24 1611.5 -50.029 84.352
25 1612 -49.986 64.273
26 1612.5 -50.041 43.57
27 1613 -49.906 20.338
28 1613.5 -50.113 2.19
29 1614 -50.049 -18.916
30 1614.5 -50.123 -39.988
49
50
LAMPIRAN B
LISTING PROGRAM GUI PADA MATLAB
9 Tampilan Splash
function varargout = awal(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @awal_OpeningFcn, ...
'gui_OutputFcn', @awal_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin & isstr(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function awal_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = awal_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
its=imread('foto\logo.jpg','jpg');
imshow(its);
waktu=timer('StartDelay',3,'TimerFcn','close');
start(waktu)
wait(waktu)
prog_ku(handles);
9 Program Utama
function varargout = prog_ku(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @prog_ku_OpeningFcn, ...
'gui_OutputFcn', @prog_ku_OutputFcn, ...
63
64
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin & isstr(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function prog_ku_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = prog_ku_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function rbnormal_Callback(hObject, eventdata, handles)
function rbtriplek_Callback(hObject, eventdata, handles)
function rbtembaga_Callback(hObject, eventdata, handles)
function tengahcekbox_Callback(hObject, eventdata, handles)
function tegakcekbox_Callback(hObject, eventdata, handles)
function sejajarcekbox_Callback(hObject, eventdata, handles)
function cmdplot_Callback(hObject, eventdata, handles)
sejajar=get(handles.sejajarcekbox,'value');
tegak=get(handles.tegakcekbox,'value');
tengah=get(handles.tengahcekbox,'value');
grafiklist = get(handles.grafikpop, 'Value');
kondisilist = get(handles.kondisipop, 'Value');
cla(handles.imgrafik1);
cla(handles.imgrafik2);
cla(handles.imgrafik3);
cla(handles.imgrafik4);
cla(handles.imgrafik5);
cla(handles.imgrafik6);
switch kondisilist
case 1
namapath='data\kondisi_gui\normal\';
ext='S21.txt';
abjad='B';
for i=1:3
urut=num2str(i);
65
set([handles.imgrafik1,handles.imgrafik2,handles.imgrafik3],'visible','on
');
set(handles.lblgrafik1,'string','Distribusi Sejajar
dinding','visible','on');
set(handles.lblgrafik2,'string','Distribusi Tegak Lurus
Dinding','visible','on');
set(handles.lblgrafik3,'string','Distribusi Tengah
Ruang','visible','on');
switch grafiklist
case 1
axes(handles.imgrafik1);
plot(freq1,mag1);
xlabel('Frekuensi(MHz)');
66
ylabel('Magnitudo(dB)');
axes(handles.imgrafik2)
plot(freq2,mag2);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
axes(handles.imgrafik3)
plot(freq3,mag3);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
case 2
axes(handles.imgrafik1);
plot(freq1,pha1);
xlabel('Frekuensi(MHz)');
ylabel('phase(derajat)');
axes(handles.imgrafik2)
plot(freq2,pha2);
xlabel('Frekuensi(MHz)');
ylabel('phase(derajat)');
axes(handles.imgrafik3)
plot(freq3,pha3);
xlabel('Frekuensi(MHz)');
ylabel('phase(derajat)');
case 3
axes(handles.imgrafik1);
plot(freq1,maglin1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik2)
plot(freq2,maglin2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik3)
plot(freq3,maglin3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
case 4
axes(handles.imgrafik1);
plot(freq1,magnorm1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
67
axes(handles.imgrafik2)
plot(freq2,magnorm2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik3)
plot(freq3,magnorm3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case 5
axes(handles.imgrafik6);
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
plot(freq1,win1);
title('Window Hamming Dalam Domain
Frekuensi','FontWeight','bold');
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case
6set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox]
,'enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
axes(handles.imgrafik6);
plot(hmrange1,winlognorm1);
title('Window Time Resolution, W(t)','FontWeight','bold');
xlabel('Waktu (nano second)');
ylabel('Amplitudo (dB)');
axis([-25 25 -60 0]);
case 7
axes(handles.imgrafik1);
plot(freq1,hest1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik2)
68
plot(freq2,hest2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik3)
plot(freq3,hest3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
case 8
axes(handles.imgrafik1);
plot(timeqz1,htauabs1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
axis([0 400 0 4e-4])
axes(handles.imgrafik2)
plot(timeqz1,htauabs2);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
axis([0 400 0 8e-4])
axes(handles.imgrafik3)
plot(timeqz1,htauabs3);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
axis([0 400 0 8e-4])
case 9
axes(handles.imgrafik1);
plot(timeqz1,htaunorm1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
axes(handles.imgrafik2)
plot(timeqz1,htaunorm2);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
axes(handles.imgrafik3)
plot(timeqz1,htaunorm3);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
case 10
69
axes(handles.imgrafik1);
plot(timeqz1,tresholddb1);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik2)
plot(timeqz3,tresholddb3);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik3)
plot(timeqz2,tresholddb2);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
case 11
axes(handles.imgrafik1);
plot(timeqz1,tresholddb1);
axis([-0.5e-7 5e-7 -40 1]);
hold on;
stairs((timeqz1-0.025e-7),tresholddb1,'r');
axis([-0.5e-7 5e-7 -40 1]);
title('Proses Binning');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi, h({\tau\it})');
axes(handles.imgrafik2)
plot(timeqz3,tresholddb3);
axis([-0.5e-7 5e-7 -40 1]);
hold on;
stairs((timeqz3-0.025e-7),tresholddb3,'r');
axis([-0.5e-7 5e-7 -40 1]);
title('Proses Binning');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi, h({\tau\it})');
axes(handles.imgrafik3)
plot(timeqz2,tresholddb2);
axis([-0.5e-7 5e-7 -40 1]);
70
hold on;
stairs((timeqz2-0.025e-7),tresholddb2,'r');
axis([-0.5e-7 5e-7 -40 1]);
title('Proses Binning');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi, h({\tau\it})');
case 12
axes(handles.imgrafik1);
stem(timeqz1,treslinnol1,'^');
title('Respon Impuls Hasil Binning');
xlabel('Excess Delay (s)');
ylabel('Amplitudo Normalisasi');
axis([0 2e-7 0.01 1]);
text(0.1e-7,0.8,['Maximum Excess Delay= '
num2str(maxdelay1)]);
axes(handles.imgrafik2)
stem(timeqz2,treslinnol2,'^');
title('Respon Impuls Hasil Binning');
xlabel('Excess Delay (s)');
ylabel('Amplitudo Normalisasi');
axis([0 2e-7 0.01 1]);
text(0.1e-7,0.8,['Maximum Excess Delay= '
num2str(maxdelay2)]);
axes(handles.imgrafik3)
stem(timeqz3,treslinnol3,'^');
title('Respon Impuls Hasil Binning');
xlabel('Excess Delay (s)');
ylabel('Amplitudo Normalisasi');
axis([0 20e-7 0.01 1]);
text(0.1e-7,0.8,['Maximum Excess Delay= '
num2str(maxdelay3)]);
case 13
dt=1;
path='data\kondisi_normal\';
ext='S21.txt';
co=1;
for k=0:24
nama='A'+k;
abjad=char(nama);
for m=1:2
71
no=num2str(m);
filename=[path abjad no ext];
dataq=load(filename);
[freq(:,dt),mag(:,dt),pha(:,dt),maglin(:,dt),htau(:,dt),htaulog(:,dt),treshold
db(:,dt),tresholdlin(:,dt),maxdelay1(:,dt)]=fhitung2(dataq(:,1),dataq(:,2),
dataq(:,3));
dt=dt+1;
end
end
for k=0:24
nama='A'+k;
abjad=char(nama);
for m=1:2
no=num2str(m);
filename=[path abjad no ext];
d=load(filename);
fr(:,1)=d(:,1);
mag(:,co)=d(:,2);
pha(:,co)=d(:,3);
[mlin(:,co),wind,hfw(:,co),htnorm(:,co),htnormlog(:,co),wtlog,httres(:,co
),httres2(:,co)]=hitungq(d(:,1),d(:,2),d(:,3));
co=co+1;
end
end
htsrt=sortr(httres2);
maxidly=sort(maksimum(httres2)); %mengurutkan nilai
maximum excess delay
maxin=maxidly*1e9; %hasil dari maxidly
dijadikan dalam nS
[a1 a2]=size(maxin); %sortir jumlah data delay
dalam ns
ite=1;
k=1;
for j=a1+1:a2,
te=maxin(j-1);
if maxin(j)==te
ite=ite+1;
else
temp(k,1)=te;
temp(k,2)=ite;
72
ite=1;
k=k+1;
end
end
rt=temp(:,1);
rw=temp(:,2);
ma=max(temp(:,2));
f3=find(temp(:,2)==ma);
f3=max(f3);
[a1 a2]=size(maxin);
for i=a1:(f3-1)
temp1(i,:)=temp(i,:);
end
tk1=temp1(:,1);
tk2=temp1(:,2);
treslin4=zeros(401,1);
for u=1:401
if (htsrt(u,1)==0)
treslin4(u,1)=-5;
else
treslin4(u,1)=htsrt(u,1);
end
end
data{12}=rt;
data{13}=rw;
axes(handles.imgrafik6);
set(handles.lblgrafik3,'string','Distribusi Tengah
Ruang','visible','on');
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
bar(data{12},data{13});
axis([90 200 0 6]);
title('Distribusi Kondisi Normal','FontWeight','bold');
xlabel('Maximum Excess Delay (nano second)');
ylabel('Jumlah Sampel');
end
73
elseif ((sejajar==1)&&(tegak==1))
cla([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5]);
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
set([handles.imgrafik4,handles.imgrafik5],'visible','on');
set(handles.lblgrafik4,'string','Distribusi Sejajar
dinding','visible','on');
set(handles.lblgrafik5,'string','Distribusi Tegak Lurus
Dinding','visible','on');
switch grafiklist
case 1
axes(handles.imgrafik4);
plot(freq1,mag1);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
axes(handles.imgrafik5);
plot(freq3,mag3);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
case 2
axes(handles.imgrafik4);
plot(freq1,pha1);
xlabel('Frekuensi(MHz)');
ylabel('Phase(derajat)');
axes(handles.imgrafik5);
plot(freq3,pha3);
xlabel('Frekuensi(MHz)');
ylabel('Phase(derajat)');
case 3
axes(handles.imgrafik4);
plot(freq1,maglin1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik5);
plot(freq3,maglin3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
74
case 4
axes(handles.imgrafik4);
plot(freq1,magnorm1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik5);
plot(freq3,magnorm3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case 5
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
axes(handles.imgrafik6);
plot(freq1,win1);
title('Window Hamming Dalam Domain
Frekuensi','FontWeight','bold');
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case 6
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
axes(handles.imgrafik6);
plot(hmrange1,winlognorm1);
title('Window Time Resolution, W(t)','FontWeight','bold');
xlabel('Waktu (nano second)');
ylabel('Amplitudo (dB)');
axis([-25 25 -60 0]);
case 7
axes(handles.imgrafik4);
plot(freq1,hest1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
75
axes(handles.imgrafik5);
plot(freq3,hest3);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
case 8
axes(handles.imgrafik4);
plot(timeqz1,htauabs1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik5);
plot(timeqz3,htauabs3);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
case 9
axes(handles.imgrafik4);
plot(timeqz1,htaunorm1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
axes(handles.imgrafik5);
plot(timeqz3,htaunorm3);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
case 10
axes(handles.imgrafik4);
plot(timeqz1,tresholddb1);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik5)
plot(timeqz3,tresholddb3);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
case 11
axes(handles.imgrafik4);
plot(timeqz1,tresholddb1);
76
abjad=char(nama);
for m=1:2
no=num2str(m);
filename=[path abjad no ext];
dataq=load(filename);
[freq(:,dt),mag(:,dt),pha(:,dt),maglin(:,dt),htau(:,dt),htaulog(:,dt),treshold
db(:,dt),tresholdlin(:,dt),maxdelay1(:,dt)]=fhitung2(dataq(:,1),dataq(:,2),
dataq(:,3));
dt=dt+1;
end
end
for k=0:24
nama='A'+k;
abjad=char(nama);
for m=1:2
no=num2str(m);
filename=[path abjad no ext];
d=load(filename);
fr(:,1)=d(:,1);
mag(:,co)=d(:,2);
pha(:,co)=d(:,3);
[mlin(:,co),wind,hfw(:,co),htnorm(:,co),htnormlog(:,co),wtlog,httres(:,co
),httres2(:,co)]=hitungq(d(:,1),d(:,2),d(:,3));
co=co+1;
end
end
htsrt=sortr(httres2);
maxidly=sort(maksimum(httres2)); %mengurutkan nilai
maximum excess delay
maxin=maxidly*1e9; %hasil dari maxidly
dijadikan dalam nS
[a1 a2]=size(maxin); %sortir jumlah data delay
dalam ns
ite=1;
k=1;
for j=a1+1:a2,
te=maxin(j-1);
if maxin(j)==te
ite=ite+1;
else
78
temp(k,1)=te;
temp(k,2)=ite;
ite=1;
k=k+1;
end
end
rt=temp(:,1);
rw=temp(:,2);
ma=max(temp(:,2));
f3=find(temp(:,2)==ma);
f3=max(f3);
[a1 a2]=size(maxin);
for i=a1:(f3-1)
temp1(i,:)=temp(i,:);
end
tk1=temp1(:,1);
tk2=temp1(:,2);
treslin4=zeros(401,1);
for u=1:401
if (htsrt(u,1)==0)
treslin4(u,1)=-5;
else
treslin4(u,1)=htsrt(u,1);
end
end
data{12}=rt;
data{13}=rw;
axes(handles.imgrafik6);
set(handles.lblgrafik3,'string','Distribusi Tengah
Ruang','visible','on');
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
bar(data{12},data{13});
axis([90 200 0 6]);
title('Distribusi Kondisi Normal','FontWeight','bold');
xlabel('Maximum Excess Delay (nano second)');
79
ylabel('Jumlah Sampel');
end
elseif ((sejajar==1)&&(tengah==1))
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
set([handles.imgrafik4,handles.imgrafik5],'visible','on');
set(handles.lblgrafik4,'string','Distribusi Sejajar
dinding','visible','on');
set(handles.lblgrafik5,'string','Distribusi Tengah
Ruangan','visible','on');
switch grafiklist
case 1
axes(handles.imgrafik4);
plot(freq1,mag1);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
axes(handles.imgrafik5);
plot(freq2,mag2);
xlabel('Frekuensi(MHz)');
ylabel('Magnitudo(dB)');
case 2
axes(handles.imgrafik4);
plot(freq1,pha1);
xlabel('Frekuensi(MHz)');
ylabel('Phase(derajat)');
axes(handles.imgrafik5);
plot(freq2,pha2);
xlabel('Frekuensi(MHz)');
ylabel('Phase(derajat)');
case 3
axes(handles.imgrafik4);
plot(freq1,maglin1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik5);
plot(freq2,maglin2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
80
case 4
axes(handles.imgrafik4);
plot(freq1,magnorm1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik5);
plot(freq2,magnorm2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case 5
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
axes(handles.imgrafik6);
plot(freq1,win1);
title('Window Hamming Dalam Domain
Frekuensi','FontWeight','bold');
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Normalisasi');
case 6
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
axes(handles.imgrafik6);
plot(hmrange1,winlognorm1);
title('Window Time Resolution, W(t)','FontWeight','bold');
xlabel('Waktu (nano second)');
ylabel('Amplitudo (dB)');
axis([-25 25 -60 0]);
case 7
axes(handles.imgrafik4);
plot(freq1,hest1);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
81
axes(handles.imgrafik5);
plot(freq2,hest2);
xlabel('Frekuensi(MHz)');
ylabel('Amplitudo Linier');
case 8
axes(handles.imgrafik4);
plot(timeqz1,htauabs1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
axes(handles.imgrafik5);
plot(timeqz2,htauabs2);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Linier');
case 9
axes(handles.imgrafik4);
plot(timeqz1,htaunorm1);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
axes(handles.imgrafik5);
plot(timeqz2,htaunorm2);
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axis([-0.5e-7 5e-7 0 1])
case 10
axes(handles.imgrafik4);
plot(timeqz1,tresholddb1);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
axes(handles.imgrafik5)
plot(timeqz2,tresholddb2);
axis([-0.5e-7 5e-7 -40 1]);
title('Respon Impuls Thresholding (dB)');
xlabel('Excess Delay (second)');
ylabel('Amplitudo Normalisasi');
case 11
axes(handles.imgrafik4);
plot(timeqz1,tresholddb1);
82
abjad=char(nama);
for m=1:2
no=num2str(m);
filename=[path abjad no ext];
dataq=load(filename);
[freq(:,dt),mag(:,dt),pha(:,dt),maglin(:,dt),htau(:,dt),htaulog(:,dt),treshold
db(:,dt),tresholdlin(:,dt),maxdelay1(:,dt)]=fhitung2(dataq(:,1),dataq(:,2),
dataq(:,3));
dt=dt+1;
end
end
for k=0:24
nama='A'+k;
abjad=char(nama);
for m=1:2
no=num2str(m);
filename=[path abjad no ext];
d=load(filename);
fr(:,1)=d(:,1);
mag(:,co)=d(:,2);
pha(:,co)=d(:,3);
[mlin(:,co),wind,hfw(:,co),htnorm(:,co),htnormlog(:,co),wtlog,httres(:,co
),httres2(:,co)]=hitungq(d(:,1),d(:,2),d(:,3));
co=co+1;
end
end
htsrt=sortr(httres2);
maxidly=sort(maksimum(httres2)); %mengurutkan nilai
maximum excess delay
maxin=maxidly*1e9; %hasil dari maxidly
dijadikan dalam nS
[a1 a2]=size(maxin); %sortir jumlah data delay
dalam ns
ite=1;
k=1;
for j=a1+1:a2,
te=maxin(j-1);
if maxin(j)==te
ite=ite+1;
else
84
temp(k,1)=te;
temp(k,2)=ite;
ite=1;
k=k+1;
end
end
rt=temp(:,1);
rw=temp(:,2);
ma=max(temp(:,2));
f3=find(temp(:,2)==ma);
f3=max(f3);
[a1 a2]=size(maxin);
for i=a1:(f3-1)
temp1(i,:)=temp(i,:);
end
tk1=temp1(:,1);
tk2=temp1(:,2);
treslin4=zeros(401,1);
for u=1:401
if (htsrt(u,1)==0)
treslin4(u,1)=-5;
else
treslin4(u,1)=htsrt(u,1);
end
end
data{12}=rt;
data{13}=rw;
axes(handles.imgrafik6);
set(handles.lblgrafik3,'string','Distribusi Tengah
Ruang','visible','on');
set([handles.tengahcekbox,handles.tegakcekbox,handles.sejajarcekbox],'
enable','off');
set([handles.imgrafik6,handles.imgrafik1,handles.imgrafik2,handles.img
rafik3,handles.imgrafik4,handles.imgrafik5,handles.lblgrafik3,handles.l
blgrafik4,handles.lblgrafik5,handles.lblgrafik1,handles.lblgrafik2],'visibl
e','off');
bar(data{12},data{13});
axis([90 200 0 6]);
title('Distribusi Kondisi Normal','FontWeight','bold');
xlabel('Maximum Excess Delay (nano second)');
85
ylabel('Jumlah Sampel');
end
else
msgbox('Anda belum menentukan pilihan Distribusi ataupun
Kondisi. Silahkan memilih.','Pesan Kesalahan','warn');
end
end
9 Fungsi Hitung
function
[frequency,magnitudo,phase,maglin,magnorm,hestz,htauabs,htaunorm,h
taulognorm,tresh,treslin3,win,winlognorm,maxdelay,bin,hmrange,tsam,t
imeqz,treslinnol]=hitungmaneh(freq,mag,pha)
frequency=freq; %frekuensi dari data hasil pengukuran
magnitudo=mag; %magnitudo dari data hasil pengukuran
phase=pha; %phase dari data hasil pengukuran
n=401; %n=jumlah sample
pka=10; %panjang kabel yang digunakan pada pemancar
pkb=10; %panjang kabel yang digunakan pada penerima
linkprop=4; %link propagasi / jarak antara antena Tx dan Rx
kec=3e8; %kecepatan cahaya
fs=1.7e9; %frekuensi yang digunakan
bw=2e8; %bandwitdh
pgel=kec/fs; %panjang gelombang untuk frekuensi yang
digunakan (f=1.7e9)
t=1:n; %jumlah sampling ke 1 sampai ke n
tsam=t./bw; %waktu yang dibutuhkan dari sampling ke 1 sampai
ke n
tsam1=(t./bw)*1e9; %waktu yang dibutuhkan dari sampling ke 1
sampai ke n
delaykbl=((pka+pkb)/(0.66*kec))+((linkprop+pgel)/kec);
timeqz=(tsam-delaykbl);
na=round(delaykbl/5e-9);
maglin=10.^(mag/20); %magnitudo linier / antilog
magrec=maglin.*(exp(i*(pha)*(pi/180))); %magnitudo linier di
rectangular-kan
magrecabs=abs(magrec); %absolut magnitudo rectangular
magrecmax=max(magrecabs); %nilai max dari absolut magnitudo
rectangular
86
for y=1:401
if (tresh(y,1) == -40)
continue;
else
treslin2(y,1)=treslin(y,1);
end
end
treslin3=zeros(401,1);
for v=1:401
if (treslin2(v,1)==1)
for w=v:401
treslin3(w,1)=treslin2(w,1);
if (treslin2(w,1)==0)
break;
end
end
end
end
bin=zeros(401,1);
for u=1:401
if (treslin3(u,1)==0)
bin(u,1)=-5;
else
bin(u,1)=treslin3(u,1);
end
end
treslinnol=zeros(401,1);
for p=1:n,
if (tresholdx(p) ~= -40)
treslinnol(p)=treslin(p);
else
continue;
end
end
[o1,p1]=find(treslinnol==1);
[o2,p2]=find(treslinnol~=0);
maxdelay=(max(o2)-(o1))*5e-9;
distrib=zeros(401,1);
for r=1:401
if (treslin(r,1)==1)
88
for l=(r):(401-r)
if (treslin(l,1)>0.01)
distrib(l)=treslin(l);
end
end
end
end
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'
));
end
function pumalat_Callback(hObject, eventdata, handles)
89
91