Anda di halaman 1dari 100

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
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
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

ii
HALAMAN MOTO DAN PERSEMBAHAN

“... Dan ketahuilah, Aku menyertai kamu


senantiasa sampai kepada akhir zaman.”
(Matius 28:20)

WITH
MAN FOR OTHERS

“ ☺ 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
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] :

N −1
r12 = ∑ x1 (n) x 2 (n) (2.1)
n =0

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

N −1
1
r12 =
N
∑ x (n) x
n =0
1 2 ( n) (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

1
r12 = [(4 × −4) + (2 × 1) + (−1 × 3) + (3 × 7) + (−2 × 4) + (−6 × −2) + (−5 × −8) + (4 × −2) + (5 × 1)]
9
1
= (45)
9
=5

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

N −1
1
r12 ( j ) =
N
∑ x ( n) x
n =0
1 2 (n + j )

N −1
1
= r21 ( − j ) =
N
∑x n=0
2 (n) x1 (n − j ) (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

1
r12 (3) = [(4 × 7) + (2 × 4) + (−1 × −2) + (3 × −8) + (−2 × −2) + (−6 × −1)]
9
1
= (24)
9
= 2,667

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

T /2
1
T →∞ T ∫
r12 ( τ) = lim x1 (t ) x 2 (t + τ) dt (2.4)
−T / 2

Apabila x1(t) dan x2(t) periodik dengan perioda T0, persamaan (2.4) menjadi

T0 / 2
1
r12 ( τ) =
T0 ∫
−T0 / 2
x1 (t ) x 2 (t + τ) dt (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

N −1
1
r11 ( j ) =
N
∑ x (n)x (n + j )
n =0
1 1 (2.6)

Apabila nilai j pada persamaan (2.6) bernilai nol, persamaan tersebut

menjadi

N −1
1
r11 (0) =
N
∑x
n =0
2
1 ( n) (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

y( n ) = h( n ) ⊗ x( n )


= ∑ h( k ) x( n − k )
k = −∞


= ∑ h( k ) x( n − k ) , n = 0, 1,… , (M - 1) (2.8)
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

y (0)
h(0) = (2.9)
x(0)
10

Konvolusi memiliki beberapa sifat, yaitu :

1. Komutatif :

x1 (t ) ⊗ x2 (t ) = x2 (t ) ⊗ x1 (t ) (2.10)

2. Distributif :

x1 (t ) ⊗ [x 2 (t ) + x3 (t )] = x1 (t ) ⊗ x 2 (t ) + x1 (t ) ⊗ x3 (t ) (2.11)

3. Asosiatif :

x1 (t ) ⊗ [x 2 (t ) ⊗ x3 (t )] = [x1 (t ) ⊗ x 2 (t )] ⊗ x3 (t ) (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

h(t ) = s * (−t ) = e − jπWt 2 / T (2.13)


12

Persamaan keluaran matched filter adalah

y (t ) = h (t ) ⊗ x (t ) (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].

Target

ak
J ar
Tinggi

Radar

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

2R
tx = (2.15)
c

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


R= (2.16)
2

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
s (t ) = e j π W t /T
(2.17)

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

1
diskret dengan nilai sampling pada saat fs = os.W = , menjadi
Ts

2
jπW ⎛ T⎞
⎜ nTs − ⎟
s[n] = e T ⎝ 2⎠
, 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]

c.Ts .Td
R= (2.19)
2

dengan nilai c merupakan kecepatan cahaya dan nilai Ts merupakan perioda

1
sampling pembentuk sinyal chirp atau . Satuan jarak, R, tersebut adalah meter.
fs

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

max Tg = IPP .L − ( IPP − N ) (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 :

c.Ts . max Tg
max R = (2.21)
2
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 :

c.Ts .Td
R=
2

(3.10 ).⎛⎜ 20.110


8 ⎞
⎟.5
⎝ ⎠
6
=
2

= 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 :

max Tg = (IPP .L ) − (IPP − N )

= (300.4) − (300 − 192 )

= 1092 (4.2)

Dengan persamaan (2.21), nilai maximum range sebesar :

c.Ts . max Tg
max R =
2

(3.10 ).⎛⎜ 20.110


8 ⎞
⎟.1092
⎝ ⎠
6
=
2

= 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

1
nilai untuk menentukan R adalah Ts, perioda sampling yaitu .
fs

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 :

c.Ts .Td
R=
2

(3.10 ).⎛⎜ 10.110


8 ⎞
⎟.250
⎝ ⎠
6
=
2

= 3750 meter. (4.4)


44

10000

9375 fs12 = 4 MHz

7500 fs11 = 5 MHz

6250 fs10 = 6 MHz


Range (meter)

5357.14 fs9 = 7 MHz

4687.5 fs8 = 8 MHz

4166.67 fs7 = 9 MHz

3750 fs6 = 10 MHz

1875 fs5 = 20 MHz

1250 fs4 = 30 MHz


937.5 fs3 = 40 MHz
750 fs2 = 50 MHz

375 fs1 = 100 MHz

0
0 10 20 30 40 50 60 70 80 90 100 110 120

TW
Gambar 4.11.Grafik hubungan antara nilai TW dan R dengan variasi nilai fs.
45

10000

9000

TW = 0.125 - 100

8000

7000

6000
Range (meter)

5000

4000

3000

2000

1000

TW = 0
0
1000000 10000000 100000000 1000000000 10000000000 1E+11

Sampling Frequency (Hz)

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

10000

9000 Tg14 = 3000

7500 Tg13 =2500

6000 Tg12 = 2000


Range (meter)

4500 Tg11 = 1500

3000 Tg10 = 1000


2700 Tg9 = 900
2400 Tg8 = 800
2100 Tg7 = 700

1800 Tg6 = 600


1500 Tg5 = 500
1200 Tg4 = 400
900 Tg3 = 300

600 Tg2 = 200


300 Tg1 = 100

0
0 10 20 30 40 50 60 70 80 90 100 110 120

os

Gambar 4.15.Grafik hubungan antara nilai os dan R dengan variasi Tg.


50

10000

9000

8000

os = 0.1 - 100

7000

6000
Range (meter)

5000

4000

3000

2000

1000

os = 0
0
0 500 1000 1500 2000 2500 3000 3500

Tg

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).


LAMPIRAN
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
1 MHz 2 MHz 3 MHz 4 MHz 5 MHz 6 MHz
TW
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
7 MHz 8 MHz 9 MHz 10 MHz 20 MHz 30 MHz
TW
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
40 MHz 50 MHz 60 MHz 70 MHz 80 MHz 90 MHz
TW
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
100 MHz 1 GHz 10 GHz 100 GHz
TW
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
1 10 100 200
os
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
300 400 500 600
os
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
700 800 900 1000
os
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
1500 2000 2500 3000
os
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

Anda mungkin juga menyukai