program simulasi sinyal chirp radarrepository.usd.ac.id/28386/2/025114013_full.pdf · program...
TRANSCRIPT
PROGRAM SIMULASI SINYAL CHIRP RADAR
TUGAS AKHIR
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Fakultas Teknik Universitas Sanata Dharma
Oleh :
Nama : Tarsisius Agusta Dwi Handaru
NIM : 025114013
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
i
PROGRAM SIMULASI SINYAL CHIRP RADAR
TUGAS AKHIR
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Fakultas Teknik Universitas Sanata Dharma
Oleh :
Nama : Tarsisius Agusta Dwi Handaru
NIM : 025114013
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
ii
SIMULATION OF RADAR CHIRP SIGNAL
FINAL PROJECT
In partial fulfillment of the requirements for the degree of
Sarjana Teknik
Electrical Engineering Study Program
Engineering Faculty Sanata Dharma University
By :
Name : Tarsisius Agusta Dwi Handaru
Student Number : 025114013
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTMENT
ENGINEERING FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
HALAMAN MOTO DAN PERSEMBAHAN
“... Dan ketahuilah, Aku menyertai kamu senantiasa sampai kepada akhir zaman.”
(Matius 28:20)
“ ☺ Hadapi dengan senyuman, semua yang terjadi biar terjadi.
Hadapi dengan tenang jiwa, semua akan baik-baik saja. ☺ ”
Tugas Akhir ini kupersembahkan kepada : Bapa, Putera, dan Roh Kudus
Ibu Alfonsa Maria Yul Wulandari di surga Bapak Matheus Gumulya Semua saudari-saudaraku
Lenta Maniez-ku
vi
MAN WITH
FOR OTHERS
INTISARI
Radar (Radio Detection and Ranging) merupakan suatu sistem yang menggunakan gelombang elektromagnetik untuk mendeteksi jarak dan kecepatan suatu target baik di udara maupun di darat. Sistem radar menggunakan sinyal chirp untuk mengetahui jarak suatu target. Chirp merupakan sebuah sinyal dengan kenaikan frekuensi atau penurunan frekuensi terhadap waktu, sehingga termasuk di dalam aplikasi frequency modulation. Program simulasi sinyal chirp ini bertujuan untuk membangkitkan sinyal chirp. Sinyal chirp tersebut akan disimulasikan juga untuk menentukan jarak suatu target diam pada radar.
Program akan membangkitkan sinyal chirp dengan parameter-parameter Time Bandwidth Product, oversampling factor, dan sampling frequency. Sinyal chirp terbentuk dalam domain waktu diskret. Sinyal echo merupakan pergeseran dari pulsa sinyal chirp yang terpengaruh oleh noise. Kemudian matched filter akan menghilangkan noise dengan proses konvolusi antara sinyal chirp dan echo dengan impulse matched filter. Radar melakukan korelasi pada kedua sinyal keluaran matched filter, sehingga dapat mengetahui waktu tunda dan jarak suatu target.
Program simulasi telah berhasil dalam menentukan jarak target. Kinerja radar menunjukkan bahwa Time Bandwidth Product dan oversampling factor merupakan nilai yang dominan untuk menentukan pembentukan sinyal chirp, sedangkan sampling frequency dan nilai pergeseran sinyal merupakan nilai yang dominan untuk menentukan jarak suatu target. Semakin besar nilai Time Bandwidth Product dan oversampling factor, lebar pulsa sinyal chirp semakin lebar. Semakin besar nilai sampling frequency, jarak semakin kecil dan nilai pergeseran sama dengan nilai waktu tunda antara sinyal chirp dan echo. Radar memiliki kemampuan mendeteksi jarak terjauh suatu target saat nilai pergeseran maksimal.
Kata kunci : chirp, radar, echo, Time Bandwidth Product, oversampling factor, sampling frequency.
vii
ABSTRACT
Radar (Radio Detection and Ranging) is a system that uses electromagnetic waves to detect the range and speed of objects in the land and in the air. Radar system use chirp signal to know range an object. A chirp is a signal which the frequency increases or decreases with time, so include in frequency modulation. The purpose simulation of chirp signal is to generate chirp signal. That chirp signal will simulate to find the range an unmoved object in radar.
The simulation program will generate chirp signal with Time Bandwidth Product, oversampling factor, dan sampling frequency parameters. The chirp signal has to be represented in discrete time signal. Echo signal is the shifted of chirp signal and have noise effect. Then, matched filter will eliminate this noise with convolution between chirp and echo signal use impulse matched filter. Both of signal as output matched filter will be correlation to know about time delay and range an object.
The simulation program succeeded to find object’s range. Radar performance’s indicated that Time Bandwidth Product and oversampling factor are dominant to build chirp signal, sampling frequency and amount of the shifted pulse are dominant to find range an object. High value Time Bandwidth Product and oversampling factor increase the length of chirp signal. High sampling frequency decrease an object range and amount of the shifted pulse is the same as time delay between chirp and echo signal. Radar has ability to detect maximum range an object when the amount of the shifted pulse is maximal. Keyword : chirp, radar, echo, Time Bandwidth Product, oversampling factor,
sampling frequency.
viii
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yang Maha Esa yang telah memberikan
berkat dan rahmat-Nya sehingga penulisan Tugas Akhir ini dapat diselesaikan
dengan baik. Tugas akhir ini berjudul “Program Simulasi Sinyal Chirp Radar”.
Penulis mengangkat topik tersebut karena sinyal chirp merupakan salah satu
bagian yang terpenting dalam sistem radar, terutama untuk menentukan jarak
suatu target. Selain itu, pengetahuan, pembahasan serta penggunaan sinyal chirp
selama ini masih belum maksimal, terlebih dalam sistem radar.
Penulis menyadari bahwa begitu banyak pihak yang telah memberikan
perhatian, doa dan bantuan selama proses penulisan tugas akhir dari awal hingga
akhir. Oleh karena itu penulis ingin mengucapkan terima kasih antara lain kepada:
1. Romo Ir. Greg. Heliarko, SJ., B.ST., MA., M.Sc, selaku Dekan Fakultas
Teknik.
2. Bapak Augustinus Bayu Primawan, S.T., M. Eng., selaku Ketua Program
Studi Teknik Elektro.
3. Bapak Damar Widjaja, S.T., M.T., selaku pembimbing I, dan Ibu Ir. Th.
Prima Ari Setiyani, M.T., selaku pembimbing II, atas bimbingan, dukungan,
informasi, saran dan kesabaran bagi penulis selama penulisan tugas akhir
ini.
4. Seluruh dosen Program Studi Teknik Elektro atas ilmu yang telah diberikan
selama penulis menenempuh kuliah di Universitas Sanata Dharma.
ix
5. Ibu Alfonsa Maria Yul Wulandari (†) dan Bapak Matheus Gumulya, kedua
orang tuaku, yang telah dan selalu mendoakan, membimbing, merawat,
mendukung dan mendampingi perjalanan hidupku.
6. Keluarga Om Trias Kuncahyono, yang telah membantu kelancaran studi
penulis.
7. Mbak Lia, Mejing’s Family (Om Jati sekeluarga, Bulik Ori, Eyang Reki,
Pakdhe Tatok sekeluarga, Keluarga Besar Simbah Dasuki, Keluarga Besar
Eyang Kindarti) dan semua saudari-saudaraku yang ada di Kalasan,
Gendeng, Kemetiran, Surabaya, Cileungsi, yang selalu mendukung,
menyemangatiku dengan pertanyaan “Kapan lulus?”.
8. Yolenta Asri Astuti Prany, yang telah mengisi kehidupanku sehingga
kehidupanku menjadi lebih hidup, bersemangat dan menarik. Terima kasih
atas kasih sayang yang kauberikan selama ini.
9. Teman-teman angkatan 2002 : Nango, Gepeng, Bhule, Plenthong, Clement,
Deri, AnDeXs, Koten, Ahoq, Oscar, Sinung, PK-Sumanto, Lele, Wawan-
Tikus, Yoga, Pandu, Hary, Dany-Supra, Dhika, Erick-Bambang, Ekep, Heri,
David, Tanto, Dwi “Kliwon”, Kelik, AndiS, Robby, Butet, Ratna, Spadiec,
Wuri dan yang lain-lainya. Terima kasih semuanya atas persahabatan, hiruk-
pikuk, tawa-canda, ejek-ejekan, dan kerjasamanya selama ± 5 tahun kuliah
di TE. Semoga menjadi sebuah kisah klasik untuk masa depan.
10. Teman-teman angkatan 1999-2001 dan 2003 atas tukar ide-solusi,
informasi, kerjasamanya.
11. Teman-teman Alumni De Britto yang setiap kali berjumpa selalu
menanyakan, “Sudah lulus belum ?”.
x
12. Teman-teman Kotabaru terutama komunitas Perpustakaan dan KBT-Kobar.
13. Karyawan-karyawati di kampus mulai dari Sekretariat, Laboran, CS,
Satpam hingga Petugas Parkir.
14. Dan seluruh pihak yang telah ambil bagian dalam proses penulisan tugas
akhir ini yang terlalu banyak jika disebutkan satu-persatu.
Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran yang membangun untuk
perbaikan tugas akhir ini sangat diharapkan. Akhir kata, semoga tugas akhir ini
dapat bermanfaat bagi semua pihak.
Yogyakarta, 15 Agustus 2007
Penulis
xi
DAFTAR ISI HALAMAN JUDUL ................................................................................ i
LEMBAR PERSETUJUAN .................................................................. iii
HALAMAN PENGESAHAN .............................................................. iv
HALAMAN PERNYATAAN KEASLIAN KARYA ................... v
HALAMAN MOTO DAN PERSEMBAHAN ................................ vi
INTISARI .................................................................................................... vii
ABSTRACT ................................................................................................ viii
KATA PENGANTAR.............................................................................. ix
DAFTAR ISI ............................................................................................... xii
DAFTAR GAMBAR ................................................................................ xiv
DAFTAR TABEL ..................................................................................... xvi BAB I PENDAHULUAN 1.1 Latar belakang masalah...................................................... 1
1.2 Batasan masalah................................................................. 3
1.3 Tujuan penulisan ................................................................ 3
1.4 Manfaat Penulisan.............................................................. 3
1.5 Metodologi penulisan......................................................... 3
1.6 Sistematika penulisan......................................................... 4 BAB II DASAR TEORI 2.1 Korelasi ............................................................................. 5
2.2 Konvolusi ........................................................................... 8
2.3 Radar.................................................................................. 10
2.3.1 Pengertian radar ................................................................ 10
2.3.2 Komponen-komponen radar.............................................. 11
xii
2.3.3 Parameter-parameter yang diukur oleh radar .................... 12
2.3.4 Sinyal dalam sistem radar ................................................. 13
2.3.5 Sinyal chirp ........................................................................ 15
BAB III PERANCANGAN PROGRAM SIMULASI SINYAL
CHIRP RADAR 3.1 Proses keseluruhan program .............................................. 20
3.2 Tahap-tahap pemrograman simulasi sinyal chirp .............. 20
3.2.1 Proses pemeriksaan masukan ............................................ 20
3.2.2 Proses pembentukan sinyal chirp....................................... 22
3.2.3 Proses perancangan sinyal echo ......................................... 23
3.2.4 Proses perancangan keluaran matched filter ...................... 25
3.2.5 Proses menghitung jarak suatu target................................. 26
3.3 Tampilan program.............................................................. 27 BAB IV HASIL DAN PEMBAHASAN 4.1 Tampilan program.............................................................. 30
4.2 Pembahasan hasil program................................................. 36
4.3 Hubungan antara Time Bandwidth Product dan
Sampling Frequency sinyal chirp dengan
Range suatu target .............................................................. 42
4.4 Hubungan antara Oversampling Factor dan
Amount of the shifted pulse dengan
Range suatu target ............................................................. 47
4.5 Pembahasan Maximum Range pada sistem radar.............. 52 BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan ........................................................................ 53
5.2 Saran................................................................................... 54 DAFTAR PUSTAKA ............................................................................. 55
LAMPIRAN ............................................................................................. 57
xiii
DAFTAR GAMBAR
Gambar 2.1. Sinyal x2 = x1 + j dan sinyal x1 ................................................. 6
Gambar 2.2. Prinsip dasar radar ................................................................... 11
Gambar 2.3. Hubungan parameter-parameter radar..................................... 12
Gambar 2.4. Bentuk pulsa pada pulsed radar............................................... 14
Gambar 2.5 Sinyal chirp dengan frekuensi antara 200-255 Hz
dengan t = 5 detik..................................................................... 16
Gambar 2.6. Tanggapan frekuensi sinyal chirp ............................................ 17
Gambar 3.1. Proses keseluruhan program .................................................... 21
Gambar 3.2 Diagram alir pembentuk satuan pulsa
dan deretan pulsa sinyal chirp.................................................. 23
Gambar 3.3 Diagram alir pembentuk sinyal echo........................................ 24
Gambar 3.4 Diagram alir perancangan dan pembentuk
sinyal chirp dan echo sesudah matched filter .......................... 26
Gambar 3.5. Diagram alir untuk menentukan waktu tunda
antara sinyal chirp dengan sinyal echo .................................... 27
Gambar 3.6. Tampilan program.................................................................... 28
Gambar 4.1. Tampilan halaman pembuka program...................................... 30
Gambar 4.2. Tampilan halaman program utama........................................... 31
Gambar 4.3. Tampilan pesan kesalahan yang mengatakan bahwa
nilai Oversampling Factor belum terisi ................................... 33
Gambar 4.4. Tampilan pesan kesalahan
nilai masukan Interpulse Period .............................................. 35
Gambar 4.5. Tampilan untuk mengoreksi nilai masukan ............................. 35
Gambar 4.6. Tampilan hasil program dengan
nilai-nilai masukan pada Tabel 4.1. ......................................... 37
Gambar 4.7. Panel Signal pada hasil program dengan
masukan-masukan pada Tabel 4.1. .......................................... 37
Gambar 4.8. Tampilan deretan sinyal chirp pada [17] ................................. 38
xiv
Gambar 4.9. Tampilan program yang menyatakan batas akhir sinyal.......... 39
Gambar 4.10. Tampilan hasil program berupa sinyal pertama pada
panel “Output Matched Filter” dan “The Peak of Signal”....... 40
Gambar 4.11. Grafik hubungan antara nilai TW dan R
dengan variasi nilai fs ............................................................... 44
Gambar 4.12. Grafik hubungan antara nilai fs dan R
dengan variasi nilai TW ............................................................ 45
Gambar 4.13. Tampilan program saat TW = 50 dan fs = 10 MHz .................. 46
Gambar 4.14. Tampilan program saat TW = 100 dan fs = 10 MHz ................ 47
Gambar 4.15. Grafik hubungan antara nilai os dan R dengan variasi Tg ....... 49
Gambar 4.16. Grafik hubungan antara nilai Tg dan R dengan variasi os ....... 50
Gambar 4.17. Tampilan program saat os = 20 dan Tg = 3000 ........................ 51
Gambar 4.18. Tampilan program saat os = 100 dan Tg = 3000 ...................... 52
xv
DAFTAR TABEL
Tabel 2.1. Contoh dua buah deretan data sebanyak 9 point ............................ 6
Tabel 2.2. Contoh dua deretan data dengan keterlambatan x2 sebesar 3......... 7
Tabel 4.1. Nilai-nilai masukan program yang digunakan untuk
contoh hasil program...................................................................... 36
Tabel 4.2. Nilai-nilai masukan program untuk
menentukan hubungan TW dan fs dengan R .................................. 42
Tabel 4.3. Nilai-nilai masukan program untuk
menentukan hubungan os dan Tg dengan R.................................... 48
xvi
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Radar merupakan akronim dari Radio Detection and Ranging [1]. Sesuai
dengan akronim tersebut, radar merupakan suatu sistem untuk mengetahui dan
mendeteksi jarak dan kecepatan suatu target baik di udara maupun di darat.
Prinsip dasar radar adalah gelombang elektromagnetik yang dipancarkan
dan dipantulkan kembali oleh logam, seperti cahaya yang mampu dipantulkan
oleh cermin [2]. Hal tersebut digagas pertama kali oleh Heinrich Hertz pada tahun
1887. Secara sederhana, radar didemonstrasikan dan dipatenkan oleh Christian
Hulsmeyer pada tahun 1904 untuk mencegah kecelakaan kapal. Pada tahun 1930-
an, peranan radar menjadi penting terutama dalam bidang militer untuk
mengetahui lokasi pesawat terbang.
Teknologi radar dikembangkan oleh Jerman, Prancis, Inggris dan Amerika
Serikat. Inggris adalah negara yang paling banyak memiliki sistem radar. Dua
ilmuwan dari Inggris, Robert Watson dan Watt, pada tahun 1935, menjadi penemu
aplikasi radar untuk mengetahui lokasi pesawat terbang. Beberapa tahun
kemudian, ditemukan juga radar dengan teknologi microwave dan teknik
pemrosesan sinyal terbaru yang menggunakan sinyal chirp. Teknik ini untuk
pertama kali dipatenkan oleh Profesor Hoffman pada tahun 1944, yang
dikembangkan oleh Sidney Darlington pada tahun 1947.
1
2
Chirp merupakan sebuah sinyal dengan kenaikan frekuensi atau penurunan
frekuensi terhadap waktu [3], sehingga termasuk di dalam aplikasi frequency
modulation [4]. Chirp dengan kenaikan frekuensi disebut dengan up-chirp
sedangkan chirp dengan penurunan frekuensi disebut down-chirp [3]. Sinyal chirp
ini diadaptasi dari hewan lumba-lumba dan kelelawar [5]. Hewan-hewan tersebut
menggunakan sinyal chirp untuk mendeteksi keberadaan benda-benda di
sekitarnya.
Sinyal chirp sering digunakan dalam sistem radar dan sonar [3], tetapi juga
untuk aplikasi dalam bidang komunikasi lainnya seperti dalam komunikasi serat
optik, yang dipatenkan oleh Canon. Selain itu, sinyal chirp juga digunakan dalam
teknik transmisi data nirkabel yang dikenal dengan Chirp Spread Spectrum yang
dipatenkan oleh Nanotron sejak tahun 1997 [5].
Sinyal chirp mempunyai beberapa kelebihan yaitu kuat dan tahan terhadap
gangguan, kuat terhadap multipath fading, mempunyai jarak jangkauan yang
panjang, dan daya yang dibutuhkan tidak terlalu besar [5]. Dengan berbagai
kelebihan yang dimiliki tersebut, sinyal chirp lebih sering digunakan dalam sistem
radar karena mampu mengatasi berbagai masalah terhadap sistem radar apabila
menggunakan modulasi fase dan modulasi frekuensi non linear.
Penulis mengangkat topik ini karena sinyal chirp merupakan salah satu
bagian yang terpenting dalam sistem radar untuk menentukan jarak suatu target.
Selain itu, pengetahuan, pembahasan serta penggunaan sinyal chirp selama ini
masih belum maksimal terlebih dalam sistem radar.
3
1.2 Batasan Masalah
Batasan-batasan masalah yang digunakan penulis dalam tugas akhir ini
adalah :
1. sinyal chirp diterapkan dalam bentuk discrete-time signal,
2. program menentukan jarak suatu target yang diam dan berada dalam
suatu garis yang lurus terhadap arah pancaran pemancar.
3. Software yang digunakan untuk simulasi adalah MATLAB.
1.3 Tujuan Penulisan
Tujuan yang ingin dicapai oleh penulis yaitu membuat program simulasi
sinyal chirp suatu radar.
1.4 Manfaat Penulisan
Manfaat yang dapat dicapai melalui penulisan ini yaitu supaya menambah
wawasan dan pengetahuan bagi mahasiswa dan penulis untuk mengenal sinyal
chirp di dalam aplikasi sistem radar. Selain itu, hasil penulisan dapat dijadikan
bahan rujukan untuk aplikasi-aplikasi sinyal chirp dalam bidang telekomunikasi
lainnya seiring dengan kemajuan ilmu pengetahuan.
1.5 Metodologi Penulisan
Dalam penulisan tugas akhir ini, penulis menggunakan metode-metode
sebagai berikut :
4
1. studi pustaka, dengan mengumpulkan informasi dan mengambil teori-
teori dari literatur yang berhubungan dengan sinyal chirp dan radar.
2. membuat program simulasi sinyal chirp radar untuk menentukan
jarak suatu target dengan software MATLAB.
3. mengujian dan mengambil data-data hasil program simulasi.
4. membahas dan menganalisa data-data yang diperoleh kemudian
membadingkan dengan dasar teori yang ada.
5. menarik kesimpulan berdasarkan hasil pembahasan dan analisa.
1.6 Sistematika Penulisan
Sistematika penulisan pada tugas akhir ini adalah sebagai berikut :
BAB I : Berisi latar belakang masalah, batasan masalah, tujuan penulisan,
manfaat penulisan, metodologi penulisan dan sistematika penulisan
tugas akhir.
BAB II : Berisi teori-teori yang mendasari penulisan tugas akhir ini.
BAB III : Berisi penjelasan tentang tahap-tahap perancangan dan tampilan
program simulasi sinyal chirp pada radar.
BAB IV : Berisi hasil simulasi dan pembahasan dari program simulasi sinyal
chirp pada radar.
BAB V : Berisi kesimpulan yang merupakan inti utama dari pembahasan
masalah dan saran yang berisi pendapat untuk pengembangan program
lebih lanjut.
BAB II
DASAR TEORI
2.1 Korelasi
Korelasi ada dua macam, yaitu cross-correlation dan auto-correlation [6].
Fungsi cross-correlation adalah mengukur dan membandingkan kesamaan dan
bagian dari sifat dua buah sinyal. Sedangkan fungsi dari auto-correlation hanya
melibatkan satu buah sinyal dan mengetahui informasi atau sifat dari susunan
sinyal itu sendiri.
Cross-correlation, r12(n), antara dua buah deretan data x1(n) dan x2(n),
dengan masing-masing mengandung N buah data, dapat dirumuskan
menggunakan persamaan (2.1) berikut [6] :
(2.1) ∑−
=
=1
02112 )()(
N
nnxnxr
Hasil cross-correlation diperoleh berdasarkan jumlah sampling point yang
diambil. Hasil tersebut dapat diperbaiki dengan cara normalisasi hasil menjadi
banyaknya point yang dibagi dengan N. Persamaan (2.1) dapat menjadi
∑−
=
=1
02112 )()(1 N
nnxnx
Nr (2.2)
5
6
Contoh cross-correlation dapat dilihat dari suatu deretan dua buah data x1
dan x2 dengan panjang data sebanyak n, yang ditunjukkan seperti dalam Tabel 2.1.
Tabel 2.1. Contoh dua buah deretan data sebanyak 9 point [6] N 1 2 3 4 5 6 7 8 9
x1 4 2 -1 3 -2 -6 -5 4 5
x2 -4 1 3 7 4 -2 -8 -2 1
Sehingga, korelasi (r12) dari data di Tabel 2.1 adalah
[ ]
5
)45(91
)15()24()85()26()42()73()31()12()44(91
12
=
=
×+−×+−×−+−×−+×−+×+×−+×+−×=r
Gambar 2.1. menunjukkan bahwa sinyal x2 merupakan sinyal x1 yang
mengalami pergeseran ke kiri sejauh j sehingga sinyal x2 mengalami penundaan
daripada sinyal x1.
Gambar 2.1. Sinyal x2 = x1 + j dan sinyal x1 [6].
7
Persamaan cross-correlation yang terkena pengaruh pergeseran atau penundaan
sejauh j adalah sebagai berikut
∑−
=
+=1
02112 )()(1)(
N
njnxnx
Njr
∑−
=
−=−=1
01221 )()(1)(
N
n
jnxnxN
jr (2.3)
Contoh untuk korelasi dua buah deretan data, dengan x2 mengalami
penundaan sejauh j = 3 dapat dilihat pada tabel 2.2.
Tabel 2.2. Contoh dua deretan data dengan keterlambatan x2 sebesar 3 [6] n 1 2 3 4 5 6 7 8 9
x1 4 2 -1 3 -2 -6 -5 4 5
x2 7 4 -2 -8 -2 -1 0 0 0
Sehingga, korelasi (r12) dari data di dalam Tabel 2.2. adalah
[ ]
667,2
)24(91
)16()22()83()21()42()74(91)3(12
=
=
−×−+−×−+−×+−×−+×+×=r
Korelasi juga dapat berada dalam domain waktu kontinu (continuous time
domain) dengan nilai n menjadi t dan nilai j menjadi τ. Sehingga persamaannya
menjadi [6]
8
∫−
∞→+=
2/
2/2112 )τ()(1lim)τ(
T
TT
dttxtxT
r (2.4)
Apabila x1(t) dan x2(t) periodik dengan perioda T0, persamaan (2.4) menjadi
∫−
+=2/
2/21
012
0
0
)τ()(1)τ(T
T
dttxtxT
r (2.5)
Auto-correlation terjadi apabila x1(n) = x2(n) sehingga pada sinyal terjadi
proses cross-correlation terhadap sinyal itu sendiri. Auto-correlation dapat
dirumuskan dengan persamaan berikut
∑−
=
+=1
01111
1 N
n
)jn(x)n(xN
)j(r (2.6)
Apabila nilai j pada persamaan (2.6) bernilai nol, persamaan tersebut
menjadi
∑−
=
=1
0
2111 )(1)0(
N
nnx
Nr (2.7)
2.2 Konvolusi
Konvolusi merupakan salah satu cara yang sering digunakan dalam
perhitungan Digital Signal Processing [6]. Konvolusi menjelaskan bagaimana
suatu masukan mempengaruhi suatu sistem untuk menghasilkan suatu keluaran
9
dari sistem tersebut. Pada umumnya, keluaran dari sistem tersebut merupakan
penundaan dan pelemahan atau penguatan dari suatu masukan.
Konvolusi diperlihatkan dengan dua deretan data yang terbatas dan saling
berhubungan, x(n) dan h(n), dengan panjang N1 dan N2, dengan persamaan berikut
(2.8) 1)-(M , 1, 0, n,)kn(x)k(h
)kn(x)k(h
)n(x)n(h)n(y
k
k
…=−=
−=
⊗=
∑
∑
∞
=
∞
−∞=
0
dengan y(n) merupakan keluaran dari sistem, x(n) merupakan masukan suatu
sistem dan h(n) merupakan impulse response dari suatu sistem. Simbol ⊗
digunakan untuk menunjukkan konvolusi dan M = N1 +N2 – 1.
Peranan konvolusi sangat berarti dan nyata apabila dilakukan pengamatan
dan perhitungan dalam domain frekuensi. Konvolusi dalam domain waktu sama
dengan perkalian dalam domain frekuensi.
Apabila masukan suatu sistem, x(n), dan keluaran sistem tersebut adalah
y(n), dapat diketahui identifikasi suatu sistem tersebut atau h(n). Apabila nilai n =
0, persamaan (2.8) menjadi y(0) = h(0) x(0) sehingga
)0()0()0(
xyh = (2.9)
10
Konvolusi memiliki beberapa sifat, yaitu :
1. Komutatif :
)()()()( 1221 txtxtxtx ⊗=⊗ (2.10)
2. Distributif :
[ ] )()()()()()()( 3121321 txtxtxtxtxtxtx ⊗+⊗=+⊗ (2.11)
3. Asosiatif :
[ ] [ ] )()()()()()( 321321 txtxtxtxtxtx ⊗⊗=⊗⊗ (2.12)
2.3 Radar
2.3.1 Pengertian radar
Radar merupakan akronim dari Radio Detection and Ranging [1]. Radar
merupakan suatu sistem yang menggunakan gelombang elektromagnetik untuk
menemukan, menentukan arah, jarak dan kecepatan suatu obyek seperti pesawat
terbang, kapal, atau suatu daerah dan memetakan obyek tersebut.
Gambar 2.2. menunjukkan prinsip dasar radar. Gelombang elektromagnetik
dalam bentuk pulsa dipancarkan oleh radar dalam suatu jalur dengan jumlah yang
banyak [7]. Sebagian kecil dari gelombang yang dipancarkan tersebut, apabila
telah mengenai suatu target, akan dipantulkan dan dikirimkan ke penerima.
Gelombang pantul tersebut dinamakan echo. Pada sistem radar, pemancar dan
penerima berada pada suatu lokasi dan sistem yang sama [1]. Posisi, lokasi dan
jarak dapat ditentukan oleh radar berdasarkan sinyal echo tersebut [7].
11
Gambar 2.2. Prinsip dasar radar [1].
2.3.2 Komponen-komponen radar
Komponen-komponen utama pada radar adalah antena, tracking computer,
dan signal processor [8]. Pada antena, terdapat perangkat keras pemancar,
modulator dan penerima. Tracking computer merupakan pusat dari sistem suatu
radar yang bertugas untuk mengatur ketepatan posisi antena dan sinyal transmisi
serta tetap mengikuti target yang penting dan menjalankan sistem tampilan radar.
Signal proccesor mempunyai fungsi utama yaitu melakukan proses matched
filtering dan menghilangkan informasi yang tidak berguna dari sinyal pada bagian
threshold detector.
Mached filter merupakan sebuah filter yang berfungsi untuk menghasilkan
Signal to Noise Ratio (SNR) pada bagian keluarannya [6]. Matched filter
mempunyai tanggapan frekuensi H(f) = S*(f) atau tanggapan impulse dengan
persamaan
(2.13) TWtjetsth /2)(*)( π−=−=
12
Persamaan keluaran matched filter adalah
)()()( txthty ⊗= (2.14)
Nilai x(t) merupakan masukan matched filter.
Elemen pokok dalam keseluruhan sistem radar adalah jenis sinyal
transmisinya. Sinyal transmisi radar yang sering digunakan adalah simple pulse
trains, chirps atau Linear Frequency Modulated (LFM) signals.
2.3.3 Parameter-parameter yang diukur oleh radar
Parameter-parameter suatu target yang dapat diukur oleh radar adalah
sudut, ketinggian, jarak, kecepatan dan reflektivitas [2]. Parameter-parameter
tersebut mempunyai suatu hubungan yang ditampilkan pada Gambar 2.3. [9].
Tinggi
Radar
Target
Jarak
Gambar 2.3. Hubungan parameter-parameter radar [9].
13
Pengukuran jarak suatu target oleh radar dipengaruhi oleh waktu
transmisinya [2]. Dengan menganggap suatu sinyal dipancarkan oleh radar saat t
= 0, diterima target pada jarak R dan sinyal echo dari target diterima radar
kembali saat t = tx, maka nilai tx dapat ditentukan dengan
cRtx 2
= (2.15)
dengan nilai c merupakan kecepatan cahaya yaitu sebesar 3.108 meter/detik.
Oleh karena itu, pengukuran jarak ekivalen dengan pengukuran waktu.
Sehingga, persamaan (2.15) dapat ditulis
2δcR = (2.16)
dengan R merupakan range resolution dan δ merupakan time resolution. Apabila
bentuk sinyal adalah sinyal pulsa sederhana, nilai δ adalah nilai lebar pulsanya.
2.3.4 Sinyal dalam sistem radar
Sinyal radar merupakan elemen yang penting untuk menentukan jarak dan
kecepatan suatu target [8]. Jenis-jenis radar dibedakan berdasarkan jenis
sinyalnya. Radar yang sering digunakan adalah pulsed radar dan continuous wave
radar.
Pulsed radar mengirimkan sinyal dalam bentuk short bursts atau pulsa.
Waktu dari awal satu pulsa sampai awal pulsa berikutnya disebut Interpulse
14
Period (IPP) [2]. Bentuk pulsa pada pulsed radar dalam rentang 1 IPP dapat
dilihat pada Gambar 2.4. IPP sering juga dikenal dengan nama Pulse Repetition
Time (PRT) [10].
Gambar 2.4. Bentuk pulsa pada pulsed radar [2].
Saat t = 0 detik, sebuah pulsa dengan lebar pulsa (pulse width), N
ditransmisikan oleh radar [2]. Sinyal pulsa yang sama akan ditransmisikan oleh
radar dengan rentang IPP detik, dengan 1/IPP adalah Pulse Repetition Frequency
(PRF).
Apabila pada sistem radar digunakan satu antena sebagai pemancar dan
penerima, sistem radar tidak memungkinkan untuk menerima sinyal echo dari
target hingga t = N. Sinyal echo dari target dapat diterima pada saat t = N hingga t
= IPP yang disebut dengan Potential Reception Window, pada selang waktu
tersebut terdapat range window dan receive window.
Target yang diinginkan berada dalam rentang jarak tertentu yang dibatasi
oleh Rmin dan Rmax. Range window merupakan rentang waktu sinyal echo dari t1 =
2.Rmin/c hingga t2 = 2.Rmax/c. Data yang akan diproses oleh signal processor
15
terdapat pada suatu rentang waktu yang terdapat range window ditambah dengan
lebar pulsa N. Rentang waktu tersebut dinamakan receive window.
Sinyal radar dengan lebar pulsa yang sempit mampu menentukan jarak
suatu target dengan baik tetapi pengukuran kecepatannya buruk. Sedangkan sinyal
radar dengan pulsa yang lebar pada satu frekuensi mampu menentukan kecepatan
suatu target dengan baik tetapi buruk dalam penentuan jaraknya.
2.3.5 Sinyal Chirp
Chirp merupakan sebuah sinyal dengan kenaikan frekuensi atau penurunan
frekuensi terhadap waktu [3], sehingga termasuk di dalam aplikasi frequency
modulation [4]. Chirp dengan kenaikan frekuensi disebut dengan up-chirp
sedangkan chirp dengan penurunan frekuensi disebut down-chirp [3].
Sinyal chirp yang digunakan pada radar adalah Linear Frequency
Modulation (LFM) yang dinyatakan dengan persamaan [13]
(2.17) TtWjets /2
)( π=
Untuk nilai -½ T ≤ t ≤ ½ T, dengan nilai T merupakan durasi waktu suatu pulsa
sinyal LFM chirp, W merupakan nilai swepth bandwidth sinyal chirp. Selain itu
terdapat nilai lain yang juga menentukan pembentukan sinyal chirp yaitu nilai
time-bandwidth product (TW), yang merupakan perkalian antara nilai T dan W.
Gambar 2.5. menunjukkan sinyal chirp dalam domain waktu kontinyu [12].
Pada gambar tersebut, sinyal chirp mempunyai nilai T = 5 detik dan W= 55 Hz.
16
Gambar 2.5 Sinyal chirp dengan frekuensi antara 200-255 Hz
dengan t = 5 detik [12].
Persamaan (2.17), apabila diubah menjadi sinyal dalam domain waktu
diskret dengan nilai sampling pada saat fs = os.W = sT
1 , menjadi
[ ]2
2⎟⎠⎞
⎜⎝⎛ −
=TnTs
TWj
ensπ
, 0 ≤ n ≤ T (2.18)
Nilai os, oversampling factor, mempengaruhi bentuk sinyal chirp. Semakin besar
nilai os, sinyal chirp yang terbentuk semakin menyerupai sinyal chirp dalam
domain waktu kontinyu.
Sinyal chirp memiliki tanggapan frekuensi dengan tanggapan magnitudo
selalu konstan, yaitu sebesar satu dan tanggapan fasenya berbentuk parabola
seperti ditunjukkan pada Gambar 2.6 [14].
17
Gambar 2.6. Tanggapan frekuensi sinyal chirp [14].
Agar radar dapat menghasilkan resolusi jarak suatu target yang baik,
dibutuhkan sinyal transmisi dengan lebar pulsa yang sempit dan untuk
menghasilkan sinyal tersebut, sistem radar membutuhkan daya yang besar pula
[14]. Agar radar dapat mengetahui jarak suatu target yang jauh, dibutuhkan sinyal
dengan sensitivitas radar yang tinggi pula [15]. Sensitivitas radar adalah
kemampuan radar untuk mendeteksi sinyal echo. Sinyal echo memiliki daya yang
tergantung pada daya sinyal transmisi, bukan pada daya transmisi sistem radar.
Apabila menggunakan daya transmisi yang besar terus-menerus, maka kerusakan
pada sistem radar semakin cepat [14]. Untuk mengatasinya, digunakan sistem
radar dengan sinyal transmisi berupa sinyal chirp.
Sebelum sinyal impulse mencapai tahap akhir pada pemancar radar, sinyal
tersebut melalui sistem chirp terlebih dahulu sehingga sistem radar memancarkan
sinyal chirp. Sistem chirp merupakan sebuah sistem yang mempunyai tanggapan
impulse pada keluarannya berupa sinyal chirp. Sinyal chirp tersebut mengenai
suatu target dan menghasilkan sinyal echo yang diterima oleh penerima radar.
Pada sistem penerima radar, sinyal echo melalui sistem antichirp untuk
18
menghasilkan sinyal impulse kembali. Sistem radar dapat mengukur jarak suatu
target dari sinyal tersebut.
Sinyal transmisi pada radar yang dirancang supaya dapat mengetahui jarak
suatu target harus memaksimalkan keluaran Signal to Noise Ratio (SNR) dan
resolusi jarak dari sebuah matched filter [11]. Hal tersebut dilakukan
menggunakan sinyal chirp dengan TW yang besar.
Untuk menentukan jarak suatu target dalam domain waktu diskret,
persamaan (2.16) menjadi [16]
2.. ds TTc
R = (2.19)
dengan nilai c merupakan kecepatan cahaya dan nilai Ts merupakan perioda
sampling pembentuk sinyal chirp atau sf
1 . Satuan jarak, R, tersebut adalah meter.
Nilai Td merupakan waktu tunda antara puncak pertama yang terdapat pada sinyal
echo dengan puncak pertama yang terdapat pada sinyal chirp, nilai Td tidak
berhubungan dengan satuan waktu.
Radar memiliki suatu batasan jarak terjauh untuk mendeteksi sebuah target.
Ada dua hal yang mempengaruhi kemampuan deteksi jarak target terjauh pada
radar yaitu jeda antar pulsa sinyal chirp dan panjangnya sebuah sinyal transmisi
radar. Sebuah radar dengan sinyal transmisi berupa sinyal chirp dengan domain
waktu diskret tidak dapat mengetahui jarak suatu taget yang berjarak tidak
terbatas.
19
Radar dapat mendeteksi jarak terjauh, maximum range (maxR), suatu target
dengan mengetahui nilai maksimal pergeseran suatu sinyal chirp (maxTg). Nilai Tg
adalah nilai pergeseran suatu sinyal chirp karena, pada radar, pulsa sinyal echo
merupakan pergeseran dari pulsa sinyal chirp dan terpengaruh oleh noise. Apabila
L merupakan banyaknya pulsa sinyal chirp yang dipancarkan dan nilai N
merupakan lebar pulsa sebagai hasil perkalian antara nilai T, W, dan os, nilai
maksimal pergeseran memiliki persamaan yaitu
)NIPP(L.IPPTmax g −−= (2.20)
dengan nilai (IPP.L) merupakan panjang keseluruhan sinyal dan nilai (IPP – N)
merupakan puncak terakhir sinyal chirp pertama. Nilai maxTg membatasi nilai
pergeseran supaya mendapatkan hasil jarak yang baik dan mampu mendeteksi
jarak sebuah target berjarak maksimal sebesar :
2
Tgmax.T.cRmax s= (2.21)
BAB III
PERANCANGAN PROGRAM SIMULASI
SINYAL CHIRP RADAR
Program simulasi sinyal chirp ini dirancang dengan MATLAB® dan sinyal
chirp tersebut digunakan untuk menentukan jarak suatu target terhadap sistem
radar. Target yang akan diketahui jaraknya berada dalam kondisi diam.
3.1 Proses Keseluruhan Program
Proses program pada 3.2.1 hingga 3.2.5 merupakan program inti simulasi
sinyal chirp. Berdasarkan tampilan program pada Gambar 3.6, terdapat menu-
menu yang mendukung program sehingga diagram alir untuk keseluruhan
program ditunjukkan pada Gambar 3.1.
3.2 Tahap-Tahap Pemrograman Simulasi Sinyal Chirp
3.2.1 Proses Pemeriksaan Masukan.
Program simulasi sinyal chirp ini membutuhkan beberapa masukan yaitu
Time-Bandwidth Product (TW), oversampling factor (os), sampling frequency (fs),
Interpulse period (IPP), banyaknya pulsa (L), nilai pergeseran pulsa (Tg), dan
noise factor (fn). Masukan-masukan tersebut harus memiliki syarat berupa
bilangan yang lebih besar dari nol.
20
22
Syarat masukan lainnya adalah nilai L paling sedikit bernilai 2 karena
apabila nilai L bernilai 1, nilai IPP menjadi sangat besar atau tidak terbatas. Nilai
Tg maksimal sama dengan nilai max Tg, supaya radar dapat mengetahui jarak
terjauh suatu target, persamaan (2.20) menunjukkan persamaan max Tg.
3.2.2 Proses Pembentukan Sinyal Chirp
Pada proses ini, program akan membentuk pulsa tunggal berupa sinyal chirp
terlebih dahulu, kemudian program akan membentuk deretan pulsa sinyal chirp
dengan banyak pulsa yang sesuai dengan keinginan pengguna. Diagram alir
proses ini ditunjukkan pada Gambar 3.2.
Pengguna memasukkan nilai-nilai yang dibutuhkan untuk pembentukan
satuan sinyal pulsa chirp. Sebagai syarat masukan os harus lebih besar atau sama
dengan 1. Apabila tidak memenuhi syarat tersebut, maka pengguna harus
memasukkan nilai sampai os lebih besar atau sama dengan 1.
Proses berikutnya adalah proses pembentukan satuan pulsa sinyal chirp (s)
seperti pada persamaan (2.18) dengan nilai-nilai TW, os dan fs berdasarkan
masukan dari pengguna. Setelah satuan sinyal chirp (s) terbentuk, pengguna
memasukkan nilai Interpulse Period (IPP) dan banyaknya pulsa (L) untuk
membentuk deretan pulsa yang tersusun dari sinyal chirp. Pada proses
selanjutnya, program akan menampilkan deretan sinyal chirp.
25
berhubungan dengan satuan waktu. Supaya program dapat berjalan, Tg harus
memenuhi syarat, yaitu tidak lebih besar dari nilai maksimal pergeseran, maxTg.
Apabila syarat tersebut tidak terpenuhi, pengguna diminta untuk memasukkan
nilai Tg kembali.
Proses berikutnya adalah proses pembentukan noise dengan noise factor
sebesar fn. Noise tersebut dijumlahkan dengan sinyal echo, sehingga dihasilkan
sinyal echo yang terpengaruh oleh noise. Setelah sinyal echo dengan noise
terbentuk, program akan menampilkannya.
3.2.4 Proses Perancangan Keluaran Matched Filter
Pada awal proses, program akan memanggil fungsi pembentuk sinyal chirp
dan echo. Setelah itu tanggapan impulse matched filter dapat ditentukan dengan
parameter-parameter pembentuk sinyal chirp seperti pada persamaan (2.13)
karena h(t) merupakan konjugasi kompleks pembentuk sinyal chirp.
Untuk menghitung keluaran matched filter, dilakukan proses konvolusi
antara masukan matched filter yaitu sinyal chirp dengan h(t) dan sinyal echo
dengan h(t). Program kemudian menampilkan sinyal chirp dan echo setelah
keluaran matched filter. Diagram alir perancangan keluaran matched filter dapat
dilihat pada Gambar 3.4.
28
terdapat panel “Input”, panel “Output”, panel “Signal”, panel “Output Matched
Filter”, panel “The Peak of Signal”, panel “Plot Editor”, Push Button “Run” dan
Push Button “Exit”.
Gambar 3.6. Tampilan program.
Selain itu, pada bagian Menu terdapat menu “File” dan menu “Help”. Pada
menu “File” terdapat sub menu “New”, “Open”, “Save”, “Print” dan “Exit”,
sedangkan pada menu “Help” terdapat sub menu “About Program”, “About Chirp
Signal” dan “About Author”.
Pada program, pengguna memberikan masukan terhadap program yang
berada pada panel “Input”. Setelah pengguna memasukkan masukan-masukan,
pengguna menekan push button “Run” supaya program berjalan.
29
Grafik atau bentuk sinyal sinyal chirp dan echo akan ditampilkan pada panel
“Signal”. Panel “Output Matched Filter” akan menampilkan sinyal chirp dan echo
pada keluaran matched filter. Panel “The Peak of Signal” menampilkan nilai-nilai
puncak sinyal chirp dan echo dalam bentuk stem, supaya memudahkan untuk
pengamatan.
Hasil akhir program berupa Range dalam satuan meter. Selain itu, program
akan menampilkan kemampuan maksimal radar untuk mendeteksi sebuah target,
Maximum Range. Hasil-hasil akhir program tersebut ditampilkan pada panel
“Output”. Satuan jarak juga dapat diubah sesuai kenginan pengguna. Untuk keluar
dari program, pada program terdapat push button “Exit”.
Pengguna dapat melakukan mengatur tampilan plot pada panel “Signal”,
“Output Matched Filter” dan “The Peak of Signal”. Pengaturan plot tersebut
dengan menekan push button-push button pada panel “Plot Editor”.
Pengguna dapat menyimpan program baik hasil program atau grafik dengan
sub menu “Save” dan membuka kembali dengan sub menu ”Open” pada menu
“File”. Apabila pengguna ingin membuat proses baru, pengguna menekan sub
menu “New”. Pengguna dapat mencetak keseluruhan hasil program dengan
menekan sub menu “Print” pada menu “File”.
Pada menu “Help” terdapat sub menu “About Program” yang membantu
pengguna untuk mengetahui langkah-langkah dalam menjalankan program, sub
menu “About Chirp Signal” membantu pengguna supaya mengetahui teori-teori
tentang sinyal chirp. Pengguna dapat mengetahui seluk beluk pembuat program
pada sub menu “About Author”.
BAB IV
HASIL DAN PEMBAHASAN
4.1 Tampilan Program
Pada awal program, pengguna akan melihat tampilan halaman pembuka
program. Halaman pembuka program menampilkan judul program simulasi, logo
Universitas Sanata Dharma, nama pembuat program serta push button “Start” dan
“Exit”. Gambar 4.1 menampilkan halaman pembuka program tersebut.
Gambar 4.1. Tampilan halaman pembuka program.
Untuk memasuki program utama, pengguna menekan push button “Start” dan
untuk keluar dari program, pengguna menekan tombol push button “Exit”.
30
31
Gambar 4.2. menampilkan halaman program utama. Pada halaman program
utama terdapat panel “Input”, panel “Output”, panel “Plot Editor”, panel “Signal”,
panel “Output Matched Filter”, panel “The Peak of Signal”, Push Button “Run”
dan Push Button “Exit”. Pengguna memasukkan nilai-nilai masukan program
pada panel “Input”. Masukan-masukan tersebut adalah Time-Bandwidth Product
(TW), oversampling factor (os), sampling frequency (fs), Interpulse period (IPP),
banyaknya pulsa atau Number of pulse (L), nilai pergeseran pulsa atau Amount of
the shifted pulse (Tg), dan noise factor (fn).
Gambar 4.2. Tampilan halaman program utama.
Panel “Output” menampilkan hasil akhir program, berupa Range dan
Maximum Range dalam satuan meter. Panel “Signal” memplot deretan sinyal
chirp dan echo. Panel “Output Matched Filter” menunjukkan bentuk sinyal chirp
32
dan echo sebagai keluaran dari matched filter. Panel “The Peak of Signal”
menunjukkan lokasi puncak-puncak sinyal chirp dan echo. Pengguna dapat
menggunakan panel “Plot Editor” untuk mengatur tampilan ketiga plot yang ada.
Menu utama program terdiri dari menu “File” dan menu “Help”. Menu
“File” terdiri atas 5 (lima) menu yaitu “New”, “Open”, “Save”, “Print” dan
“Exit”. Menu “Help” terdiri atas 3 (sub) menu “About Program”, “About Chirp
Signal” dan “About Author”.
Sub menu “New” mempunyai fungsi untuk menampilkan program utama
baru atau dapat juga menjadi fungsi reset. Sub menu “Open” mempunyai fungsi
untuk memanggil file program simulasi yang telah disimpan. Sub menu “Save”
mempunyai fungsi untuk menyimpan hasil program simulasi, sub menu ini akan
aktif setelah pengguna melakukan proses simulasi. Sub menu “Print” mempunyai
fungsi untuk mencetak hasil program simulasi. Sub menu “Exit” mempunyai
fungsi untuk keluar dari program simulasi. Perintah sub menu “Open” belum bisa
berjalan dengan baik karena saat memanggil dan membuka file, nilai-nilai
masukan tidak sesuai dengan yang disimpan. Namun hal tersebut tidak
mempengaruhi kinerja program inti simulasi untuk menentukan range suatu
target.
Pada menu “Help” , sub menu “About Program” mempunyai fungsi untuk
menampilkan tampilan pertolongan kepada pengguna mengenai cara-cara
menjalankan program simulasi ini. Sub menu “About Chirp Signal” mempunyai
fungsi untuk menampilkan tampilan pertolongan kepada pengguna mengenai
33
teori-teori sinyal chirp. Sub menu “About Author” mempunyai fungsi untuk
menampilkan tampilan pembuat program.
Untuk keluar dari program simulasi ini, pengguna dapat menekan push
button “Exit” atau melalui sub menu “Exit”. Program menanyakan pertanyaan
konfirmasi kepada pengguna sebelum benar-benar keluar dari program simulasi.
Setelah memasukkan nilai pada panel “Input”, pengguna dapat menekan
Push Button “Run” dan program akan mememeriksa masukan-masukan. Apabila
ada masukan yang belum terisi, program akan memberikan peringatan kepada
pengguna. Sebagai contoh apabila pengguna belum memasukan nilai pada
masukan Oversampling Factor, program akan menampilkan pesan peringatan
kepada pengguna seperti pada Gambar 4.3.
Gambar 4.3. Tampilan pesan kesalahan yang mengatakan bahwa
nilai Oversampling Factor belum terisi.
34
Masukan-masukan program harus memenuhi syarat-syarat sebagai berikut :
1. Semua masukan harus terisi dan berupa bilangan positif. Untuk masukan
Interpulse Period, Number of pulse dan Amount of the shifted pulse harus
berupa bilangan bulat.
2. Nilai masukan Interpulse Period bernilai minimal sama dengan hasil
perkalian antara nilai Time Bandwidth Product dan Oversampling
Factor.
3. Nilai Number of Pulse minimal bernilai 2.
4. Nilai Amount of the shifted pulse maksimal sama dengan nilai Maximum
Amount of the shifted pulse.
Apabila pada nilai masukan Interpulse Period berupa bilangan desimal,
maka program akan menampilkan pesan kesalahan nilai masukan. Gambar 4.4.
menunjukkan tampilan pesan kesalahan nilai masukan Interpulse Period.
Pengguna dapat mengoreksi kembali nilai masukan tersebut dan
memberikan nilai baru. Apabila pengguna tidak memberikan nilai baru, program
secara otomatis memberikan nilai pembulatan dari masukan pengguna dan
pengguna dapat menggunakan nilai dari program tersebut. Gambar 4.5.
memperlihatkan tampilan untuk mengoreksi nilai masukan. Program mengoreksi
masukan setelah pengguna memberikan nilai-nilai masukan awal.
35
Gambar 4.4. Tampilan pesan kesalahan nilai masukan Interpulse Period.
Gambar 4.5. Tampilan untuk mengoreksi nilai masukan.
36
4.2. Pembahasan hasil program
Sebagai contoh hasil program, penulis menggunakan program dengan nilai-
nilai masukan yang ditunjukkan pada Tabel 4.1. Gambar 4.6. menunjukkan
tampilan program dengan nilai-nilai masukan seperti pada Tabel 4.1.
Tabel 4.1 Nilai-nilai masukan program yang digunakan untuk contoh hasil program.
Time Bandwidth Product (TW) 64
Oversampling factor (os) 3
Sampling frequency (fs) 20 MHz
Interpulse period (IPP) 300
Number of pulse (L) 4
Amount of the shifted pulse (Tg) 5
Noise factor (fn) 0,2 dB
Panel “Output” pada Gambar 4.6. menampilkan hasil program berupa
Range sejauh 37,5 meter dan nilai Maximum Range sejauh 8190 meter. Panel
“:Signal”, program menampilkan plot sinyal chirp dan echo. Panel “Output
Matched Filter” menampilkan sinyal chirp dan echo sebagai keluaran dari
matched filter. Panel “The Peak of Signal” menampilkan lokasi puncak-puncak
sinyal chirp dan echo.
Gambar 4.7. menampilkan panel “Signal” yang diambil dari Gambar 4.6..
Pada Gambar 4.6. menampilkan deretan sinyal yang tersusun atas empat buah
sinyal chirp dan echo, sedangkan pada Gambar 4.7. hanya tersusun atas dua buah
sinyal chirp dan echo saja. Hal tersebut dilakukan dengan menekan push button
37
“Zoom In” pada panel “Plot Editor” kemudian memilih area pada panel “Signal”
yang akan diperbesar.
Gambar 4.6. Tampilan hasil program dengan nilai-nilai masukan
pada Tabel 4.1.
Gambar 4.7. Panel Signal pada hasil program
dengan masukan-masukan pada Tabel 4.1.
38
Pada Gambar 4.7. dapat diketahui nilai IPP sebesar 300. Nilai IPP tersebut
sesuai dengan nilai masukan program. Selain itu dapat diketahui nilai N yaitu
sebesar 192 yang merupakan hasil perkalian antara nilai masukan Time Bandwidth
Product dengan oversampling factor.
Sebagai perbandingan, pada [17] juga menampilkan bentuk sinyal chirp
dengan nilai masukan yang sama dengan nilai masukan pada Tabel 4.1.. Gambar
4.8. menampilkan bentuk sinyal chirp dari situs tersebut. Pada gambar tersebut
menampilkan deretan sinyal chirp dengan nilai IPP = 300 dan nilai N = 192. Nilai
tersebut sama dengan hasil program simulasi, sehingga sinyal chirp yang
ditampilkan program simulasi adalah benar.
Gambar 4.8. Tampilan deretan sinyal chirp pada [17].
39
Gambar 4.9. merupakan tampilan plot pada panel “Signal” yang telah
mengalami pergeseran ke kiri. Program melakukan pergeseran plot dengan
menekan push button “Shift”. Pada gambar tersebut tampak bahwa sinyal yang
ditampilkan program terbatas. Hal tersebut sesuai dengan teori pada sub bab 2.3.5.
mengenai batasan jarak terjauh yang mampu dideteksi radar.
Gambar 4.9. Tampilan program yang menyatakan batas akhir sinyal.
Gambar 4.10. menampilkan panel “Output Matched Filter” dan “The Peak
of Signal” dari Gambar 4.6.. Panel “Output Matched Filter” pada Gambar 4.10.
menampilkan keluaran pertama sinyal chirp dan echo. Panel “The Peak of Signal”
menampilkan lokasi puncak pertama sinyal chirp dan echo setelah sinyal keluar
dari matched filter.
Untuk menentukan range, program menghitung selisih nilai antara puncak
pertama sinyal chirp dan echo. Pada Gambar 4.10., lokasi puncak pertama sinyal
chirp adalah 193, sedangkan lokasi puncak pertama sinyal echo adalah 198.
Sehingga Td atau selisih kedua nilai tersebut adalah 5.
40
Nilai range, berdasarkan persamaan (2.19) adalah :
( )2
510201103
2
68 .
...
T.T.cR ds
⎟⎠⎞
⎜⎝⎛
=
=
= 37,5 meter. (4.1)
Range tersebut sesuai dengan hasil program pada panel “Output”.
Gambar 4.10. Tampilan hasil program berupa sinyal pertama pada panel “Output
Matched Filter” dan “The Peak of Signal”.
41
Pada Gambar 4.6., dalam panel “Output” terdapat nilai Maximum Range
sebesar 8190 meter. Maximum range merupakan kemampuan maksimal suatu
radar untuk mendeteksi jarak suatu target. Nilai maxTg harus diketahui terlebih
dahulu untuk menentukan nilai maximum range tersebut. Pada Gambar 4.6. nilai
maxTg sebesar 1092. Persamaan (2.20) menentukan nilai maxTg dengan nilai-nilai
masukan pada Tabel 4.1.. Nilai maxTg adalah sebesar :
( ) ( )
( ) ( 1923004300 −−= )
−−=
.
NIPPL.IPPTmax g
= 1092 (4.2)
Dengan persamaan (2.21), nilai maximum range sebesar :
( )2
109210201103
2
68 .
...
Tgmax.T.cRmax s
⎟⎠⎞
⎜⎝⎛
=
=
= 8190 meter (4.3)
Nilai maxTg dan maxR pada persamaan (4.2) dan (4.3) sesuai dengan tampilan
hasil program pada Gambar 4.6.. Pada [17], dengan nilai masukan sesuai Tabel
4.1., memiliki nilai Maximum Range sebesar 8190 meter. Hal tersebut
membuktikan bahwa program simulasi adalah benar.
42
Nilai Td yang dihasilkan oleh program dalam perhitungan range sama
dengan nilai Tg atau Td = Tg = 5. Hal tersebut sesuai dengan sub bab 2.3.5. yang
menyatakan mengenai pengertian Tg dan Td. Pengertian Tg adalah nilai pergeseran
suatu sinyal chirp karena, pada radar, pulsa sinyal echo merupakan pergeseran
dari pulsa sinyal chirp dan terpengaruh oleh noise. Sedangkan pengertian Td
adalah waktu tunda antara puncak pertama yang terdapat pada sinyal echo dengan
puncak pertama yang terdapat pada sinyal chirp.
4.3. Hubungan antara Time Bandwidth Product dan Sampling
Frequency sinyal chirp dengan Range suatu target
Tabel 4.2. menunjukkan nilai-nilai masukan pada program untuk
menentukan hubungan antara TW, fs dengan range (R). Gambar 4.11.
menggambarkan grafik hubungan antara nilai TW dan R dengan variasi nilai fs,
yang diolah dari data pada Tabel B.1. pada lampiran B. Sedangkan, Gambar 4.12.
menggambarkan grafik hubungan antara nilai fs dan R dengan variasi nilai TW.
Tabel 4.2 Nilai-nilai masukan program untuk menentukan hubungan TW dan fs dengan R.
Time Bandwidth Product (TW) 0 – 100
Oversampling factor (os) 4
Sampling frequency (fs) 4 – 100 MHz
Interpulse period (IPP) 500
Number of pulse (L) 2
Amount of the shifted pulse (Tg) 250
Noise factor (fn) 0,2 dB
43
Gambar 4.11., dengan variasi nilai fs, dan Gambar 4.12., dengan variasi nilai
TW, memperlihatkan bahwa R semakin besar dengan semakin kecilnya fs. Hal
tersebut menunjukkan bahwa nilai R berbanding terbalik dengan nilai fs.
Pernyataan tersebut sesuai persamaan (2.19) yang menyatakan bahwa salah satu
nilai untuk menentukan R adalah Ts, perioda sampling yaitu sf
1 .
Gambar 4.11. juga memperlihatkan bahwa saat fs tetap dan terjadi
perubahan TW, R selalu tetap. Gambar 4.12. juga memperlihatkan bahwa
perubahan TW tidak merubah R. Hal tersebut menyatakan bahwa TW tidak
mempengaruhi R.
Gambar 4.13. memperlihatkan tampilan program dengan menggunakan
nilai-nilai masukan program seperti pada Tabel 4.2. saat TW = 50 dan fs = 10
MHz. Gambar 4.14. memperlihatkan tampilan program dengan menggunakan
nilai-nilai masukan program seperti pada Tabel 4.2. saat TW = 100 dan fs = 10
MHz.
Menurut nilai-nilai masukan pada Gambar 4.13. dan Gambar 4.14., nilai Tg
adalah sebesar 250. Nilai range dapat diketahui, yaitu sebesar :
( )2
25010101103
2
68 .
...
T.T.cR ds
⎟⎠⎞
⎜⎝⎛
=
=
= 3750 meter. (4.4)
44
0
10000
0 10 20 30 40 50 60 70 80 90 100 110 120
TW
Ran
ge (m
eter
)
fs1 = 100 MHz
fs2 = 50 MHzfs3 = 40 MHz
fs4 = 30 MHz
fs5 = 20 MHz
fs6 = 10 MHz
fs7 = 9 MHz
fs8 = 8 MHz
fs9 = 7 MHz
fs10 = 6 MHz
fs11 = 5 MHz
fs12 = 4 MHz9375
7500
6250
5357.14
4687.5
4166.67
937.5
375
3750
1250
750
1875
Gambar 4.11.Grafik hubungan antara nilai TW dan R dengan variasi nilai fs.
45
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
1000000 10000000 100000000 1000000000 10000000000 1E+11
Sampling Frequency (Hz)
Ran
ge (m
eter
)
TW = 0
TW = 0.125 - 100
Gambar 4.12.Grafik hubungan antara nilai fs dan R dengan variasi nilai TW.
46
Untuk menentukan lebar pulsa sinyal, dilakukan dengan cara seperti pada Gambar
4.7.. Sehingga nilai, N, lebar pulsa pada Gambar 4.13. sebesar 200 dan pada
Gambar 4.14. sebesar 400.
Gambar 4.13. dan Gambar 4.14. menggunakan nilai-nilai masukan TW yang
berubah dan nilai fs tetap. Perbedaan pada kedua gambar tersebut terdapat pada
lebar pulsa sinyal chirp, sehingga menyatakan bahwa TW mempengaruhi lebar
pulsa sinyal chirp. Hal tersebut sesuai dengan teori yang menyatakan bahwa TW
mempengaruhi lebar pulsa sinyal chirp.
Gambar 4.13. Tampilan program saat TW = 50 dan fs = 10 MHz.
47
Gambar 4.14. Tampilan program saat TW = 100 dan fs = 10 MHz.
4.4. Hubungan antara Oversampling Factor dan Amount of the
shifted pulse dengan Range suatu target
Untuk mengetahui hubungan antara nilai os, Tg dengan R, penulis
memberikan nilai-nilai masukan seperti ditunjukkan pada Tabel 4.2.. Program
menghasilkan nilai R antara 300-9000 meter. Tabel B.2. pada lampiran B
memperlihatkan nilai-nilai masukan dan keluaran program yang memperlihatkan
hubungan antara nilai os dan Tg dengan R.
Gambar 4.15. memperlihatkan grafik hubungan antara nilai os dan R dengan
variasi nilai Tg. Sedangkan Gambar 4.16. memperlihatkan grafik hubungan antara
nilai Tg dan R dengan variasi nilai os. Kedua gambar tersebut memperlihatkan
48
bahwa R semakin besar dengan semakin besarnya Tg. Hal tersebut menyatakan
bahwa R sebanding dengan Tg, karena Tg = Td dan menurut persamaan (2.19), Td
merupakan salah satu nilai untuk menentukan nilai R.
Tabel 4.3 Nilai-nilai masukan program untuk menentukan
hubungan os dan Tg dengan R.
Time Bandwidth Product (TW) 50
Oversampling factor (os) 0 – 100
Sampling frequency (fs) 50 MHz
Interpulse period (IPP) 7500
Number of pulse (L) 2
Amount of the shifted pulse (Tg) 100 - 3000
Noise factor (fn) 0,2 dB
Gambar 4.17. memperlihatkan tampilan program dengan menggunakan
nilai-nilai masukan program seperti pada Tabel 4.3. saat os = 20 dan Tg = 3000.
Gambar 4.18. memperlihatkan tampilan program dengan menggunakan nilai-nilai
masukan program seperti pada Tabel 4.3. saat os = 100 dan Tg = 3000.
Pada gambar 4.17. dan 4.18. tersebut, program menghasilkan nilai R sebesar 9000
meter. Hal tersebut terjadi karena nilai Tg sama dan nilai Td = Tg, kemudian
mencari nilai R dengan persamaan (2.19).
49
0
10000
0 10 20 30 40 50 60 70 80 90 100 110 120
os
Ran
ge (m
eter
)
Tg14 = 3000
Tg2 = 200
Tg3 = 300Tg4 = 400
Tg5 = 500
Tg6 = 600
Tg7 = 700
Tg8 = 800Tg9 = 900
Tg10 = 1000
Tg1 = 100
Tg11 = 1500
Tg12 = 2000
Tg13 =25007500
4500
300
1200
2700
600
2400
1800
900
2100
1500
3000
6000
9000
Gambar 4.15.Grafik hubungan antara nilai os dan R dengan variasi Tg.
50
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
0 500 1000 1500 2000 2500 3000 3500
Tg
Ran
ge (m
eter
)
os = 0
os = 0.1 - 100
Gambar 4.16.Grafik hubungan antara nilai Tg dan R dengan variasi os.
.
51
Gambar 4.17. dan Gambar 4.18. menggunakan nilai-nilai masukan os yang
berubah dan nilai Tg tetap. Perbedaan pada kedua gambar tersebut terdapat pada
lebar pulsa sinyal chirp. Untuk menentukan lebar pulsa sinyal, dilakukan dengan
cara seperti pada Gambar 4.7.. Sehingga nilai, N, lebar pulsa pada Gambar 4.17.
sebesar 1000 dan pada Gambar 4.18. sebesar 5000. Hal tersebut menyatakan
bahwa os mempengaruhi lebar pulsa sinyal chirp. Selain itu, bentuk sinyal chirp
semakin menyerupai bentuk sinyal chirp dalam domain waktu kontinyu. Hal
tersebut sesuai dengan teori yang menyatakan bahwa perubahan os mempengaruhi
bentuk sinyal dan lebar pulsa sinyal chirp.
Gambar 4.17. Tampilan program saat os = 20 dan Tg = 3000.
52
Gambar 4.18. Tampilan program saat os = 100 dan Tg = 3000.
4.5. Pembahasan Maximum Range pada sistem Radar
Untuk menentukan nilai range suatu target mulai dari yang terdekat hingga
terjauh, masukan pada amount of the shifted pulse bernilai dari 0,1 hingga
maximum amount of the shifted pulse. Nilai masukan-masukan program lainnya
sesuai dengan Tabel 4.1.. Tabel B.3. pada Lampiran B memperlihatkan hasil
program berupa range dengan setiap perubahan nilai amount of the shifted pulse.
Tabel B.3. memperlihatkan bahwa radar mampu mendeteksi jarak suatu
target mulai dari 0 hingga 8190 meter. Hal tersebut sesuai dengan teori pada pada
sub bab 2.3.5. yang menyatakan bahwa pada saat amount of the shifted pulse
bernilai maksimal maka kemampuan radar untuk mendeteksi jarak suatu target
juga maksimal.
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Setelah penulis melakukan perancangan dan menganalisa hasil program
simulasi ini, penulis mengambil kesimpulan sebagai berikut :
1. Program simulasi sinyal chirp radar untuk menentukan range suatu
target telah berhasil dibuat dengan baik.
2. Nilai-nilai yang dominan mempengaruhi pembentukan sinyal chirp
adalah Time Bandwidth Product dan oversampling factor. Semakin
besar nilai Time Bandwidth Product dan oversampling factor, lebar pulsa
sinyal chirp semakin lebar.
3. Untuk menentukan Range suatu target, nilai-nilai yang dominan
mempengaruhi pada chirp radar adalah sampling frequency dan nilai
pergeseran sinyal chirp. Semakin besar nilai sampling frequency, jarak
semakin kecil dan nilai pergerseran sinyal chirp sama dengan nilai waktu
tunda antara sinyal chirp dan echo.
4. Radar memiliki kemampuan mendeteksi jarak terjauh suatu target saat
nilai pergeseran maksimal.
53
54
5.2. Saran
Untuk pengembangan lebih lanjut, penulis memiliki saran sebagai berikut :
1. Program simulasi ini untuk menentukan jarak suatu target yang diam
sehingga dapat dikembangkan untuk menentukan jarak suatu target
dengan target yang bergerak.
2. Program simulasi ini dapat dikembangkan untuk menentukan jarak target
yang lebih dari satu.
3. Program simulasi ini masih memiliki kekurangan untuk membuka file
yang telah disimpan sehingga dalam pengembangan program berikutnya
diharapkan mampu membuka file dengan sempurna.
DAFTAR PUSTAKA
[1] http://en.wikipedia.org/wiki/radar (diakses 19 Maret 2007).
[2] McClellan, J. H. and R. J. Purdy. 1978. Application of Digital Signal
Processing to Radar. In A. V. Oppenheim,editor, Application of Digital
Signal Processing. New Jersey : Prentice Hall, Inc.
[3] http://en.wikipedia.org/wiki/chirp (diakses 19 Maret 2007).
[4] http://www.radartutorial.eu/08.transmitters/tx17.en.html (diakses 22
Agustus 2006).
[5] Lampe, John and Rainer Hach. Nanotron MDMA EBM Proposal. Doc. :
IEEE 802.22-05/0102r1.
www.ieee802.org/22/Meeting_documents/2005_Nov/22-05-0102-01-
0000_Nanotron_MDMA_EBM_Proposal_Presentation.ppt (diakses 19
Maret 2007).
[6] Ifeachor, Emmanuel C. and Barrie W. Jervis. 2001. DIGITAL SIGNAL
PROCESSING, a practical approach, second edition. New Jersey : Prentice
Hall, Inc.
[7] http://www.radartutorial.eu/01.basics/rb06.en.html (diakses 22 Agustus
2006).
[8] Rabiner, Lawrence R. And Bernard Gold. 1997. THEORY AND
APPLICATION OF DIGITAL SIGNAL PROCCESING. New Delhi :
Prentice-Hall of India.
55
56
[9] Frenzel, Louis E.. 1998. PRINCIPLES OF ELECTRONIC
COMMUNICATION SYSTEMS. New York : Glencoe McGraw-Hill.
[10] Beasley, Jefrey S. and Gary M. Miller. 2005. MODERN ELECTRONIC
COMMUNICATION, 8th edition. New Jersey : Pearson Prentice Hall.
[11] Burrus, C. Sidney, James H. McClellan, Alan V. Oppenheim, Thomas W.
Parks, Ronald W.Schafer, Hans W. Schuessler. COMPUTER-BASED
EXERCISES FOR SIGNAL PROCESSING USING MATLAB. Prentice-Hall
International, Inc.
[12] http://sioseis.ucsd.edu/ah2005/srp_chirp_sources.pdf (diakses 11 Oktober
2006).
[13] http://cnx.org/content/m11718/latest/ (diakses 22 Agustus 2006).
[14] http://www.dspguide.com/CH11.PDF (diakses 26 Oktober 2006).
[15] http://www.odyseus.nildram.co.uk/Systems_And_Devices_Files/
radar_2.pdf (diakses 26 Oktober 2006).
[16] http://cnx.org/content/m11719/latest/ (diakses 23 September 2006).
[17] http://cnx.org/content/m11720/latest/ (diakses 14 Februari 2007).
L A M P I R A N
LAMPIRAN A
LISTING PROGRAM
Listing Program 1
%Fungsi untuk program pembuka function varargout = cover(varargin) % COVER M-file for cover.fig % COVER, by itself, creates a new COVER or raises the existing % singleton*. % % H = COVER returns the handle to a new COVER or the handle to % the existing singleton*. % % COVER('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in COVER.M with the given input arguments. % % COVER('Property','Value',...) creates a new COVER or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before cover_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to cover_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help cover % Last Modified by GUIDE v2.5 15-Jun-2007 03:40:55 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @cover_OpeningFcn, ... 'gui_OutputFcn', @cover_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(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 % End initialization code - DO NOT EDIT % --- Executes just before cover is made visible. function cover_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to cover (see VARARGIN)
Listing Program 2
% Choose default command line output for cover handles.output = hObject; axes(handles.logo); imshow ('USD.JPG'); % Update handles structure guidata(hObject, handles); % UIWAIT makes cover wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = cover_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in push_start. function push_start_Callback(hObject, eventdata, handles) % hObject handle to push_start (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) delete(handles.figure1); range_detection; % --- Executes on button press in push_exit. function push_exit_Callback(hObject, eventdata, handles) % hObject handle to push_exit (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) pilih = questdlg(['Do you want to quit ?'],... ['Quit ...'],... 'Yes','No','Yes'); if strcmp(pilih,'No') return; end delete(handles.figure1);
Listing Program 3
%Fungsi untuk program utama function varargout = range_detection(varargin) % RANGE_DETECTION M-file for range_detection.fig % RANGE_DETECTION, by itself, creates a new RANGE_DETECTION or raises % the existing singleton*. % % H = RANGE_DETECTION returns the handle to a new RANGE_DETECTION or % the handle to the existing singleton*. % % RANGE_DETECTION('CALLBACK',hObject,eventData,handles,...) calls the % local function named CALLBACK in RANGE_DETECTION.M with the given % input arguments. % % RANGE_DETECTION('Property','Value',...) creates a new % RANGE_DETECTION or raises the existing singleton*. Starting from % the left, property value pairs are applied to the GUI before % range_detection_OpeningFunction gets called. An unrecognized % property name or invalid value makes property application stop. All % inputs are passed to range_detection_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help range_detection % Last Modified by GUIDE v2.5 26-Jun-2007 21:38:52 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @range_detection_OpeningFcn, ... 'gui_OutputFcn', @range_detection_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(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 % End initialization code - DO NOT EDIT % --- Executes just before range_detection is made visible. function range_detection_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. hObject handle to % figure eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) varargin
Listing Program 4
% command line arguments to range_detection (see VARARGIN) % Choose default command line output for range_detection handles.output = hObject; set(handles.menu_save,'enable','off'); set(handles.menu_print,'enable','off'); set(handles.push_legend,'enable','off'); set(handles.push_zoomin,'enable','off'); set(handles.push_zoomout,'enable','off'); set(handles.pushshift,'enable','off'); set(handles.push_point,'enable','off'); set(handles.push_grid,'enable','off'); set(handles.text14,'enable','off'); set(handles.text16,'enable','off'); set(handles.text17,'enable','off'); set(handles.max_shift,'enable','off'); set(handles.max_range,'enable','off'); axes(handles.axes_signal); xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); axes(handles.axes_match); xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); axes(handles.axes_peak); xlabel('Peak'); ylabel('Location of Peak'); % Update handles structure guidata(hObject, handles); % UIWAIT makes range_detection wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = range_detection_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); hObject % handle to figure eventdata reserved - to be defined in a future version % of MATLAB handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on selection change in popupmenu_fs. function popupmenu_fs_Callback(hObject, eventdata, handles) % hObject handle to popupmenu_fs (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu_fs contents as % cell array
Listing Program 5
% contents{get(hObject,'Value')} returns selected item from % popupmenu_fs % --- Executes during object creation, after setting all properties. function popupmenu_fs_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu_fs (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_tw_Callback(hObject, eventdata, handles) % hObject handle to input_tw (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_tw as text % str2double(get(hObject,'String')) returns contents of input_tw as % a double TW=str2double(get(handles.input_tw,'String')); % --- Executes during object creation, after setting all properties. function input_tw_CreateFcn(hObject, eventdata, handles) % hObject handle to input_tw (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_os_Callback(hObject, eventdata, handles) % hObject handle to input_os (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_os as text % str2double(get(hObject,'String')) returns contents of input_os as % a double os=str2double(get(handles.input_os,'String'));
Listing Program 6
% --- Executes during object creation, after setting all properties. function input_os_CreateFcn(hObject, eventdata, handles) % hObject handle to input_os (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_fs_Callback(hObject, eventdata, handles) % hObject handle to input_fs (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_fs as text % str2double(get(hObject,'String')) returns contents of input_fs as % a double fs=str2double(get(handles.input_fs,'String')); % --- Executes during object creation, after setting all properties. function input_fs_CreateFcn(hObject, eventdata, handles) % hObject handle to input_fs (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_ipp_Callback(hObject, eventdata, handles) % hObject handle to input_ipp (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_ipp as text % str2double(get(hObject,'String')) returns contents of input_ipp as % a double IPP=str2double(get(handles.input_ipp,'String')); % --- Executes during object creation, after setting all properties. function input_ipp_CreateFcn(hObject, eventdata, handles)
Listing Program 7
% hObject handle to input_ipp (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_l_Callback(hObject, eventdata, handles) % hObject handle to input_l (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_l as text % str2double(get(hObject,'String')) returns contents of input_l as a % double L=str2double(get(handles.input_l,'String')); % --- Executes during object creation, after setting all properties. function input_l_CreateFcn(hObject, eventdata, handles) % hObject handle to input_l (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_shift_Callback(hObject, eventdata, handles) % hObject handle to input_shift (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_shift as text % str2double(get(hObject,'String')) returns contents of input_shift % as a double Tg=str2double(get(handles.input_shift,'String')); % --- Executes during object creation, after setting all properties. function input_shift_CreateFcn(hObject, eventdata, handles) % hObject handle to input_shift (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called
Listing Program 8
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function input_noise_Callback(hObject, eventdata, handles) % hObject handle to input_noise (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of input_noise as text % str2double(get(hObject,'String')) returns contents of input_noise % as a double fn=str2double(get(handles.input_noise,'String')); % --- Executes during object creation, after setting all properties. function input_noise_CreateFcn(hObject, eventdata, handles) % hObject handle to input_noise (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on button press in push_run. function push_run_Callback(hObject, eventdata, handles) % hObject handle to push_run (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) %mengambil dan memeriksa nilai data TWin=str2double(get(handles.input_tw,'string')); osin=str2double(get(handles.input_os,'string')); fsin=str2double(get(handles.input_fs,'string')); IPPin=str2double(get(handles.input_ipp,'string')); Lin=str2double(get(handles.input_l,'string')); Tgin=str2double(get(handles.input_shift,'string')); fnin=str2double(get(handles.input_noise,'string')); satuan=(get(handles.popupmenu_fs,'value')); if isnan(TWin) | TWin<=0 errordlg(... 'You must insert a positive number value in input Time Bandwidth Product !',...
Listing Program 9
'Bad Input','modal'); elseif isnan(osin) | osin<=0 errordlg(... 'You must insert a positive number value in input Oversampling Factor !',... 'Bad Input','modal'); elseif isnan(fsin) | fsin<=0 errordlg(... 'You must insert a positive number value in input Sampling Frequency !',... 'Bad Input','modal'); elseif isnan(IPPin) | IPPin<=0 errordlg(... 'You must insert a positive number value in input Interpulse Period !',... 'Bad Input','modal'); elseif isnan(Lin) | Lin<=0 errordlg(... 'You must insert a positive number value in input Number of Pulse !',... 'Bad Input','modal'); elseif isnan(Tgin) | Tgin<=0 errordlg(... 'You must insert a positive number value in input Amount of the shifted pulse !',... 'Bad Input','modal'); elseif isnan(fnin) | fnin<=0 errordlg(... 'You must insert a positive number value in input Noise Factor !',... 'Bad Input','modal'); end %mengatur frek sampling if fsin > 0 fsg=ganti(fsin,satuan); [nilai,s]=value(fsg); set(handles.input_fs,'string',nilai); set(handles.popupmenu_fs,'value',s); end %memeriksa masukan TW=TWin; os=osin; fn=fnin; [TW,os,fsg,IPP,L,Tg,fn]= cek(TWin,osin,fsg,IPPin,Lin,Tgin,fnin); %menentukan lebar pulsa sinyal chirp N=round(TW*os); %memeriksa banyaknya pergeseran maxTg = (IPP*L) - (IPP - N); if Tg > maxTg uiwait(errordlg(... 'A value in input amount of the shifted pulse > maksimum amount of the shifted pulse!',... 'Input error!!','modal')); prompt = {'Amount of the shifted pulse : '}; title = 'Input error!!'; num_lines = 1;
Listing Program 10
d=num2str(maxTg); default = {d}; options.Resize='on'; jawab = inputdlg(prompt,title,num_lines,default,options); if isempty(jawab) Tg=maxTg; else Tg=str2double(jawab); end end %membentuk sinyal chirp Ts=1/fsg; T=TW*os*Ts; W=TW/T; N=round(TW*os); n = [0:N-1]'; s = exp(j*pi* (W/T) *(n*Ts - T/2).^2 ); %persamaan sinyal chirp %membentuk deretan sinyal chirp TL=IPP*L ; matr=zeros(TL-(N-1),1); for i=1:L, matr(1+(i-1)*IPP)=1; end strans=conv(matr,s); %deretan sinyal chirp %menampilkan deretan sinyal chirp axes(handles.axes_signal); plot(real(strans)); hold on; xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); %membentuk sinyal echo for a = 1:length(strans), b = a - Tg; if b <= 0, geserecho(a) = 0; else geserecho(a) = strans(a - Tg); end end nois = awgn(geserecho,fn,'measured','db'); noise= nois + geserecho; %menampilkan sinyal echo axes(handles.axes_signal); plot(real(noise),'r'); hold off; legend('chirp signal','echo signal');
Listing Program 11
%matched filter h = exp(-j*pi* (W/T) *(n*Ts - T/2).^2 ); %tanggapan matched filter y = conv(s,h); %output matched filter recematch=conv(noise,h); %keluaran sinyal echo dari matched filter transmatch=conv(strans,h); %keluaran sinyal chirp dari matched filter %menampilkan sinyal keluaran matched filter axes(handles.axes_match); plot(real(transmatch)); hold on; xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); plot(real(recematch),'r'); hold off; legend('chirp signal','echo signal'); %mendeteksi puncak-puncak sinyal untuk puncak sinyal chirp [peaksorigsigmatch, origsigmatchlocs] = puncak(real(transmatch),L,0); %menampilkan lokasi puncak sinyal chirp axes(handles.axes_peak); stem(real(origsigmatchlocs)); hold on; xlabel('Peak'); ylabel('Location of Peak'); %untuk puncak sinyal echo peak=peaksorigsigmatch(1,1); [peaksrsigmatch, rsigmatchlocs] = puncak(real(recematch),L,peak); %menampilkan lokasi puncak sinyal echo axes(handles.axes_peak); stem(real(rsigmatchlocs),'r'); hold off; legend('chirp signal','echo signal'); %menentukan time delay timedelay = rsigmatchlocs(1,1) - origsigmatchlocs(1,1) ; %menentukan range range = (1/2)*(3*(10^8))*(timedelay)*(Ts); %menentukan maximum range maxrange = (1/2)*(3*(10^8))*(maxTg)*(1/(fsg)); set(handles.text14,'enable','on'); set(handles.text16,'enable','on'); set(handles.text17,'enable','on'); set(handles.max_shift,'enable','on'); set(handles.max_range,'enable','on'); set(handles.max_shift,'String',maxTg);
Listing Program 12
set(handles.max_range,'String',maxrange); set(handles.output_range,'String',range); set(handles.menu_save,'enable','on'); set(handles.menu_print,'enable','on'); set(handles.push_legend,'enable','on'); set(handles.push_zoomin,'enable','on'); set(handles.push_zoomout,'enable','on'); set(handles.pushshift,'enable','on'); set(handles.push_point,'enable','on'); set(handles.push_grid,'enable','on'); % --- Executes on button press in push_exit. function push_exit_Callback(hObject, eventdata, handles) % hObject handle to push_exit (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) pilih = questdlg(['Do you want to quit ',get(handles.figure1,'Name') ' ?'],... ['Quit ',get(handles.figure1,'Name') '...'],... 'Yes','No','Yes'); if strcmp(pilih,'No') return; end delete(handles.figure1); % --- Executes on selection change in popupmenu_range. function popupmenu_range_Callback(hObject, eventdata, handles) % hObject handle to popupmenu_range (see GCBO) eventdata reserved - to % be defined in a future version of MATLAB handles structure with % handles and user data (see GUIDATA) % Hints: contents = get(hObject,'String') returns popupmenu_range contents % as cell array % contents{get(hObject,'Value')} returns selected item from % popupmenu_range % --- Executes during object creation, after setting all properties. function popupmenu_range_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu_range (see GCBO) eventdata reserved - to % be defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function output_range_Callback(hObject, eventdata, handles)
Listing Program 13
% hObject handle to output_range (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of output_range as text % str2double(get(hObject,'String')) returns contents of output_range % as a double % --- Executes during object creation, after setting all properties. function output_range_CreateFcn(hObject, eventdata, handles) % hObject handle to output_range (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles empty - handles not % created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,... 'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % -------------------------------------------------------------------- function menu_program_Callback(hObject, eventdata, handles) % hObject handle to menu_program (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % -------------------------------------------------------------------- function menu_new_Callback(hObject, eventdata, handles) % hObject handle to menu_new (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) %membuat figure baru atau membersihkan tampilan figure set(handles.input_tw,'string',''); set(handles.input_os,'string',''); set(handles.input_fs,'string',''); set(handles.input_ipp,'string',''); set(handles.input_l,'string',''); set(handles.input_shift,'string',''); set(handles.input_noise,'string',''); set(handles.output_range,'string',''); set(handles.max_shift,'string',''); set(handles.max_range,'string',''); set(handles.popupmenu_fs,'value',1); axes(handles.axes_signal); strans=0; noise=0; plot(real(strans));
Listing Program 14
plot(real(noise)); xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); set(gca,'XTickLabel',{''}); set(gca,'YTickLabel',{''}); axes(handles.axes_match); transmatch=0; recematch=0; plot(real(transmatch)); plot(real(recematch)); xlabel('Time Bandwidth Product * Oversampling Factor'); ylabel('Amplitude Signal'); set(gca,'XTickLabel',{''}); set(gca,'YTickLabel',{''}); axes(handles.axes_peak); origsigmatchlocs=0; rsigmatchlocs=0; plot(real(origsigmatchlocs)); plot(real(rsigmatchlocs)); xlabel('Peak'); ylabel('Location of Peak'); set(gca,'XTickLabel',{''}); set(gca,'YTickLabel',{''}); set(handles.menu_save,'enable','off'); set(handles.menu_print,'enable','off'); set(handles.push_legend,'enable','off'); set(handles.push_zoomin,'enable','off'); set(handles.push_zoomout,'enable','off'); set(handles.pushshift,'enable','off'); set(handles.push_point,'enable','off'); set(handles.push_grid,'enable','off'); set(handles.text14,'enable','off'); set(handles.text16,'enable','off'); set(handles.text17,'enable','off'); set(handles.max_shift,'enable','off'); set(handles.max_range,'enable','off'); % -------------------------------------------------------------------- function menu_open_Callback(hObject, eventdata, handles) % hObject handle to menu_open (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) sinyalchirp=guidata(gcbo); uiload; % -------------------------------------------------------------------- function menu_save_Callback(hObject, eventdata, handles) % hObject handle to menu_save (see GCBO) eventdata reserved - to be
Listing Program 15
% defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) uisave; % -------------------------------------------------------------------- function menu_print_Callback(hObject, eventdata, handles) % hObject handle to menu_print (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) printdlg(handles.figure1) % -------------------------------------------------------------------- function menu_exit_Callback(hObject, eventdata, handles) % hObject handle to menu_exit (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) pilih = questdlg(['Do you want to quit ',get(handles.figure1,'Name') ' ?'],... ['Quit ',get(handles.figure1,'Name') '...'],... 'Yes','No','Yes'); if strcmp(pilih,'No') return; end delete(handles.figure1); % -------------------------------------------------------------------- function menu_help_Callback(hObject, eventdata, handles) % hObject handle to menu_help (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) % -------------------------------------------------------------------- function menu_aboutprogram_Callback(hObject, eventdata, handles) % hObject handle to menu_aboutprogram (see GCBO) eventdata reserved - % to be defined in a future version of MATLAB handles structure with % handles and user data (see GUIDATA) programhelp; % -------------------------------------------------------------------- function menu_chirp_Callback(hObject, eventdata, handles) % hObject handle to menu_chirp (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) chirphelp; % -------------------------------------------------------------------- function menu_author_Callback(hObject, eventdata, handles) % hObject handle to menu_author (see GCBO) eventdata reserved - to be
Listing Program 16
% defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) author; % --- Executes on button press in push_legend. function push_legend_Callback(hObject, eventdata, handles) % hObject handle to push_legend (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) legend toggle; % --- Executes on button press in push_zoomin. function push_zoomin_Callback(hObject, eventdata, handles) % hObject handle to push_zoomin (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) zoom; % --- Executes on button press in push_zoomout. function push_zoomout_Callback(hObject, eventdata, handles) % hObject handle to push_zoomout (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) zoom out; pan off; % --- Executes on button press in pushshift. function pushshift_Callback(hObject, eventdata, handles) % hObject handle to pushshift (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) pan; % --- Executes on button press in push_point. function push_point_Callback(hObject, eventdata, handles) % hObject handle to push_point (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) datacursormode; % --- Executes on button press in push_grid. function push_grid_Callback(hObject, eventdata, handles) % hObject handle to push_grid (see GCBO) eventdata reserved - to be % defined in a future version of MATLAB handles structure with handles % and user data (see GUIDATA) grid minor;
Listing Program 17
%Fungsi ganti berfungsi untuk merubah nilai pada tampilan frekuensi %sampling function satu = ganti(n,x) if x == 1 satu = n*10^6; elseif x == 2 satu = n*10^9; end %Fungsi ganti berfungsi untuk merubah nilai satuan frekuensi sampling function [nilai,satuan]=value(input) if input > 999999 & input < 1000000000 nilai = input/1000000; satuan = 1; else nilai = input/1000000000; satuan = 2; end %Fungsi cek berfungsi untuk memeriksa masukan-masukan program supaya %program dapat berjalan function [tw,os,fs,ipp,l,tg,fn]=cek(twc,osc,fsc,ippc,lc,tgc,fnc) tw=twc; os=osc; fs=fsc; fn=fnc; if ippc > 0 & lc > 0 & tgc > 0 & fnc > 0; ippa=(ippc-ceil(ippc)); if ippa == 0 ipp=ippc; else ippa < 0 uiwait(errordlg(... 'You must insert a positive number value in input Interpulse Period !',... 'Input error!!','modal')); prompt = {'Interpulse Period: '}; title = 'Input error!!'; num_lines = 1; a=num2str(ceil(ippc)-1); default = {a}; options.Resize='on'; jawabipp = inputdlg(prompt,title,num_lines,default,options); if isempty(jawabipp) ipp=(ceil(ippc)-1); else ipp=str2double(jawabipp); end end
Listing Program 18
if ippc < (twc*osc) uiwait(errordlg(... 'Minimum value for Interpulse Period is Time Bandwidth Product * Oversampling factor !',... 'Input error!!','modal')); prompt = {'Interpulse Period: '}; title = 'Input error!!'; num_lines = 1; b=num2str(twc*osc); default = {b}; options.Resize='on'; jawabipp = inputdlg(prompt,title,num_lines,default,options); if isempty(jawabipp) ipp=(twc*osc); else ipp=str2double(jawabipp); end end la=lc-ceil(lc); if la ==0 l=lc; else la < 0 uiwait(errordlg('You must insert a positive number value in Number of Pulse!',... 'Input error!!','modal')); prompt = {'Number of Pulse : '}; title = 'Input error!!'; num_lines = 1; c=num2str(ceil(lc)-1); default = {c}; options.Resize='on'; jawabl = inputdlg(prompt,title,num_lines,default,options); if isempty(jawabl) l=(ceil(lc)-1); else l=str2double(jawabl); end end if lc < 2 uiwait(errordlg('Minimum value for number of pulse is 2 !','Input error!!','modal')); prompt = {'Interpulse Period: '}; title = 'Input error!!'; num_lines = 1; default = {'2'}; options.Resize='on'; jawabl = inputdlg(prompt,title,num_lines,default,options); if isempty(jawabl) l=2; else l=str2double(jawabl); end end tga=tgc-ceil(tgc);
Listing Program 19
if tga == 0 tg=tgc; else tga < 0 uiwait(errordlg(... 'You must insert a positive number value in Amount of the shifted pulse!',... 'Input error!!','modal')); prompt = {'Amount of the shifted pulse'}; title = 'Input error!!'; num_lines = 1; e=num2str(ceil(tgc)-1); default = {e}; options.Resize='on'; jawabtg = inputdlg(prompt,title,num_lines,default,options); if isempty(jawabtg) tg=(ceil(tg)-1); else tg=str2double(jawabtg); end end end %Fungsi puncak berfungsi untuk mendeteksi puncak sinyal function [peaks,locs] = puncak(x,number,thresh) sortem = 0; [M,N] = size(x); if M==1 x = x(:); %-- make it a single column [M,N] = size(x); end for kk = 1:N mask = diff( sign( diff( [x(1,N)-1; x(:,N); x(M,N)-1] ) ) ); jkl = find( mask < 0 & x >= thresh); if (number>0 & length(jkl)>number) [tt,ii] = sort(-x(jkl)); jkl = jkl(ii(1:number)); jkl = sort(jkl); end if sortem [tt,ii] = sort(-x(jkl)) jkl = jkl(ii) end L = length(jkl); peaks(1:L,kk) = x(jkl); locs(1:L,kk) = jkl; end
LAMPIRAN B
TABEL-TABEL
HASIL PENGAMATAN PROGRAM
Tabel-Tabel Hasil Pengamatan Program
1
Saat nilai masukan : os = 4; IPP = 500; L = 4; Tg = 250; fn = 0,2 dB;
Tabel B.1. Hubungan antara TW, fs dengan Range.
fs TW 1 MHz 2 MHz 3 MHz 4 MHz 5 MHz 6 MHz
0 0 0 0 0 0 0 0,125 37500 18750 12500 9375 7500 6250
10 37500 18750 12500 9375 7500 6250 20 37500 18750 12500 9375 7500 6250 30 37500 18750 12500 9375 7500 6250 40 37500 18750 12500 9375 7500 6250 50 37500 18750 12500 9375 7500 6250 60 37500 18750 12500 9375 7500 6250 70 37500 18750 12500 9375 7500 6250 80 37500 18750 12500 9375 7500 6250 90 37500 18750 12500 9375 7500 6250 100 37500 18750 12500 9375 7500 6250
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Lanjutan Tabel B.1. Hubungan antara TW, fs dengan Range. fs TW 7 MHz 8 MHz 9 MHz 10 MHz 20 MHz 30 MHz
0 0 0 0 0 0 0 0,125 5357,14 4687,5 4166,67 3750 1875 1250
10 5357,14 4687,5 4166,67 3750 1875 1250 20 5357,14 4687,5 4166,67 3750 1875 1250 30 5357,14 4687,5 4166,67 3750 1875 1250 40 5357,14 4687,5 4166,67 3750 1875 1250 50 5357,14 4687,5 4166,67 3750 1875 1250 60 5357,14 4687,5 4166,67 3750 1875 1250 70 5357,14 4687,5 4166,67 3750 1875 1250 80 5357,14 4687,5 4166,67 3750 1875 1250 90 5357,14 4687,5 4166,67 3750 1875 1250 100 5357,14 4687,5 4166,67 3750 1875 1250
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Tabel-Tabel Hasil Pengamatan Program
2
Lanjutan Tabel B.1. Hubungan antara TW, fs dengan Range. fs TW 40 MHz 50 MHz 60 MHz 70 MHz 80 MHz 90 MHz
0 0 0 0 0 0 0 0,125 937,5 750 625 535,714 468,75 416,667
10 937,5 750 625 535,714 468,75 416,667 20 937,5 750 625 535,714 468,75 416,667 30 937,5 750 625 535,714 468,75 416,667 40 937,5 750 625 535,714 468,75 416,667 50 937,5 750 625 535,714 468,75 416,667 60 937,5 750 625 535,714 468,75 416,667 70 937,5 750 625 535,714 468,75 416,667 80 937,5 750 625 535,714 468,75 416,667 90 937,5 750 625 535,714 468,75 416,667 100 937,5 750 625 535,714 468,75 416,667
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Lanjutan Tabel B.1. Hubungan antara TW, fs dengan Range. fs TW 100 MHz 1 GHz 10 GHz 100 GHz
0 0 0 0 0 0,125 375 37,5 3,75 0,375
10 375 37,5 3,75 0,375 20 375 37,5 3,75 0,375 30 375 37,5 3,75 0,375 40 375 37,5 3,75 0,375 50 375 37,5 3,75 0,375 60 375 37,5 3,75 0,375 70 375 37,5 3,75 0,375 80 375 37,5 3,75 0,375 90 375 37,5 3,75 0,375 100 375 37,5 3,75 0,375
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Tabel-Tabel Hasil Pengamatan Program
3
Saat nilai masukan : TW = 50; fs = 50 MHz; IPP = 7500; L = 4; fn = 0,2 dB;
Tabel B.2. Hubungan antara os, Tg dengan Range.
Tg os 1 10 100 200
0 0 0 0 0 0,1 3 30 300 600 1 3 30 300 600 5 3 30 300 600 10 3 30 300 600 20 3 30 300 600 30 3 30 300 600 40 3 30 300 600 50 3 30 300 600 60 3 30 300 600 70 3 30 300 600 80 3 30 300 600 90 3 30 300 600 100 3 30 300 600
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Lanjutan Tabel B.2. Hubungan antara os, Tg dengan Range. Tg os 300 400 500 600
0 0 0 0 0 0,1 900 1200 1500 1800 1 900 1200 1500 1800 5 900 1200 1500 1800
10 900 1200 1500 1800 20 900 1200 1500 1800 30 900 1200 1500 1800 40 900 1200 1500 1800 50 900 1200 1500 1800 60 900 1200 1500 1800 70 900 1200 1500 1800 80 900 1200 1500 1800 90 900 1200 1500 1800 100 900 1200 1500 1800
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Tabel-Tabel Hasil Pengamatan Program
4
Lanjutan Tabel B.2. Hubungan antara os, Tg dengan Range. Tg os 700 800 900 1000
0 0 0 0 0 0,1 2100 2400 2700 3000 1 2100 2400 2700 3000 5 2100 2400 2700 3000 10 2100 2400 2700 3000 20 2100 2400 2700 3000 30 2100 2400 2700 3000 40 2100 2400 2700 3000 50 2100 2400 2700 3000 60 2100 2400 2700 3000 70 2100 2400 2700 3000 80 2100 2400 2700 3000 90 2100 2400 2700 3000 100 2100 2400 2700 3000
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Lanjutan Tabel B.2. Hubungan antara os, Tg dengan Range. Tg os 1500 2000 2500 3000
0 0 0 0 0 0,1 4500 6000 7500 9000 1 4500 6000 7500 9000 5 4500 6000 7500 9000 10 4500 6000 7500 9000 20 4500 6000 7500 9000 30 4500 6000 7500 9000 40 4500 6000 7500 9000 50 4500 6000 7500 9000 60 4500 6000 7500 9000 70 4500 6000 7500 9000 80 4500 6000 7500 9000 90 4500 6000 7500 9000 100 4500 6000 7500 9000
Keterangan : angka yang dicetak tebal merupakan range dalam satuan meter.
Tabel-Tabel Hasil Pengamatan Program
5
Saat nilai masukan : TW = 64; os = 3 fs = 20 MHz; IPP = 300; L = 4; fn = 0,2 dB;
Tabel B.3. Hasil program Range dengan perubahan Tg. Tg Range (meter) Tg Range (meter) 0,1 0 10 75 1 7,5 20 150 2 15 30 225 3 22,5 40 300 4 30 50 375 5 37,5 60 450 6 45 70 525 7 52,5 80 600 8 60 90 675
9 67,5
Lanjutan Tabel B.3. Hasil program Range dengan perubahan Tg. Tg Range (meter) Tg Range (meter)
100 750 1000 7500 200 1500 1092 8190
300 2250 400 3000 500 3750 600 4500 700 5250 800 6000 900 6750