139

RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

  • Upload
    vukien

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

i

RANCANG BANGUN PROTOTIPE ALAT DETEKSI JARAK DENGAN

SENSOR PING PADA MOBIL PENGANGKUT BARANG BERBASIS

ARDUINO

Skripsi

Sebagai Salah Satu Syarat untuk Memperoleh Gelar

Sarjana Komputer

Fakultas Sains Dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta

Oleh :

Nurul Uswah Azizah

109091000036

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UIN SYARIF HIDAYATULLAH JAKARTA

2014 M / 1435

Page 2: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

ii

Page 3: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

iii

Page 4: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

iv

LEMBAR PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR –

BENAR HASIL KARYA SAYA SENDIRI YANG BELUM PERNAH

DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA

PERGURUAN TINGGI ATAUPUN LEMBAGA MANAPUN.

Jakarta, Juni 2014

Nurul Uswah Azizah

NIM. 109091000036

Page 5: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

v

ABSTRAK

Nurul Uswah Azizah – 109091000036, Rancang Bangun Prototipe Alat Deteksi

Jarak pada Mobil Pengangkut Barang Berbasisi Arduino. Dibimbing oleh Nenny

Anggraini, S.Kom,MT dan Feri Fahrianto, M,Sc.

Sistem pergudangan erat kaitannya dengan proses pemindahan dan

penempatan komponen dan produk dari dan menuju tempat tertentu. Pada

umumnya proses pemindahan ini menggunakan mobil pengangkut barang atau

forklift. Forklift dapat membantu manusia mengangkut barang dengan bobot berat

dan ukuran yang cukup besar. Akan tetapi, penggunaan forklift memiliki beberapa

kelemahan seperti proses kerja yang lambat dan seringnya terjadi kecelakaan

kerja, tingkat kerusakan barang yang tinggi karena barang yang diangkut

menghalangi penglihatan yang dapat menyebabkan terbenturnya barang yang

sedang diangkut. Mengutip dari website www.safetyposter.co.id bahwa jumlah

kecelakaan kerja di Amerika pada sektor transportasi dan pergudangan tahun 2010

terjadi 661 kasus dan 30 % di akibatkan karena kecelakaan pada forklift. Oleh

karena itu, penulis mencoba memberikan solusi atas permasalahn tersebut dengan

membuat sebuah prototipe alat deteksi jarak menggunakan mikrikontroler

arduino. Alat yang penulis rancang menggunakan sensor PING dan mini servo

sebagai input untuk pembacaan jarak dan penentu sudut, serta buzzer dan

pemrograman Java sebagai output yang menghasilkan indikator suara beserta

grafik polar. Penulis menggunakan metode studi lapangan dan studi literatur

untuk proses pengumpulan data penelitian sedangkan dalam pengembangan

sistem penulis menggunakan metode prototipe. Dari hasil penelitian ini dapat

disimpulkan bahwa pembacaan jarak oleh sensor PING bekerja dengan baik,

namun masih terdapat jeda antara pergerakan pengangkut barang dengan jarak

yang tampil di layar.

Kata Kunci : Mobil Angkut, Deteksi Jarak, Prototipe, Arduino,

Sensor PING

Page 6: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

vi

KATA PENGANTAR

Segala puji syukur penulis panjatkan kehadirat Allah SWT, yang telah

melimpahkan rahmat dan karunia-Nya, sehingga penulis dapat menyelesaikan

Skripsi ini dengan judul “Rancang Bangun Prototipe Alat Deteksi Jarak pada

Mobil Pengangkut Barang Berbasis Arduino”. Maksud utama dari penulisan

Skripsi ini adalah sebagai syarat untuk memperoleh gelar Sarjana Strata Satu (S1)

di Program Studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif

Hidayatullah Jakarta.

Mengingat keterbatasan kemampuan penulis, tentu saja skripsi ini masih

jauh dari kesempurnaan dan masih banyak kekurangan. Hal ini disebabkan

kemampuan penulis yang terbatas dan kurangnya pengalaman dalam penulisan

baik materi dan teknik. Oleh karena itu kritik yang sifatnya membangun dan saran

demi sempurnanya skripsi ini penulis terima dengan senang hati.

Dalam penyusunan skripsi ini, penulis mendapat bimbingan dan bantuan

baik dari segi moral dan material dari berbagai pihak. Oleh karena itu, pada

kesempatan ini penulis mengucapkan terima kasih kepada :

1. Bapak Dr. Agus Salim, M. Si selaku Dekan Fakultas Sains dan Teknologi.

2. Ibu Nurhayati, Ph.D selaku Ketua Program Studi Teknik Informatika dan

Bapak Hendra Bayu Suseno M.Kom, selaku Sekretaris Program Studi Teknik

Informatika.

3. Ibu Nenny Anggraini, S.Kom, MT, selaku Dosen Pembimbing I dan Bapak

Feri Fahrianto,M,Sc selaku Dosen Pembimbing II Fakultas Sains dan

Page 7: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

vii

Teknologi UIN Syarif Hidayatullah Jakarta yang secara bijaksana dan

kooperatif telah memberikan bimbingan, bantuan, dan dukungan baik secara

moral maupun teknis dan telah memberikan semangat, dukungan, dan

motivasi selama melakukan studi.

4. Bapak Hata Maulana, S.Si, MTI selaku Dosen Penguji I dan Ibu Fenty Eka

Muzayyana A, M.kom selaku Dosen Penguji II Fakultas Sains dan Teknologi

UIN Syarif Hidayatullah Jakarta yang secara bijaksana dan kooperatif telah

menguji skripsi saya, memberikan arahan dan saran serta bimbingan perbaikan

serta dukungan moral maupun teknis.

5. Mamah, Bapak serta kedua Kakak tersayang dan keponakan tercinta yang

selalu memberikan doa, dukungan semangat dan motivasi dalam segala hal

hingga terselesaikannya skripsi ini. Love You All.

6. Sahabat – sahabatku, Fitri Sani Najiha, Cholifah Nur Asri, Devi Tri Lestari,

Gita Cipta Puspita, Joko Budi Pratomo, Nurul Fauziah, dan semua teman –

teman TI angkatan 2009, yang telah memberikan semangat, dukungan, dan

bantuan kepada penulis selama kuliah serta hingga skripsi ini selesai.

Perjuangan belum selesai kawan!

7. Reza Firdaus Machfudz yang selalu memberikam dukungan dan semangat

kepada penulis, serta menjadi pendengar setia cerita dalam suka maupun duka.

8. Semua pihak yang secara langsung maupun tidak langsung membantu penulis

selama kegiatan hingga penyelesaian skripsi ini.

Pada kesempatan ini penulis juga memohon maaf yang sebesar – besarnya

dan menyadari bahwa skripsi ini belumlah sempurna, maka penulis sangat

Page 8: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

viii

mengharapkan kritik dan saran dari pembaca dan pihak lain untuk penulisan

skripsi selanjutnya yang lebih baik.

Akhir kata penulis berharap agar skripsi ini dapat bermanfaat bagi

pembaca sekalian. Amiin

Jakarta, Juli 2014

Nurul Uswah Azizah

109091000036

Page 9: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

ix

DAFTAR ISI

Halaman

Halaman Judul........................................................................................... i

Halaman Pengesahan Pembimbing .......................................................... ii

Lembar Pengesahan Ujian......................................................................... iii

Lembar Pernyataan.................................................................................... iv

Abstrak ...................................................................................................... v

Kata Pengantar .......................................................................................... vi

Daftar Isi.................................................................................................... ix

Daftar Gambar........................................................................................... xiv

Daftar Tabel .............................................................................................. xvi

Daftar Lampiran ........................................................................................ xvii

BAB I PENDAHULUAN........................................................................ 1

1.1. Latar Belakang ............................................................................. 1

1.2 Rumusan Masalah ......................................................................... 4

1.3 Batasan Masalah............................................................................ 4

1.4 Tujuan Penelitian ......................................................................... 5

1.5 Manfaat Penelitian ........................................................................ 5

1.6 Metodologi Penelitian ................................................................... 6

Page 10: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

x

1.7 Sistematika Penulisan ................................................................... 7

BAB II LANDASAN TEORI ................................................................. 8

2.1 Pengertian Rancang Bangun ....................................................... 8

2.2 Prototipe ........................................................................................ 9

2.2.1 Definisi Prototipe ................................................................. 9

2.2.2 Karakteristik Metode Prototipe ............................................ 12

2.2.3 Keunggulan dan Kelemahan Metode Prototipe ................... 13

2.3 Alat Deteksi Jarak ......................................................................... 14

2.3.1 Pengertian Sensor................................................................. 14

2.3.2 Sensor Ultrasonik ................................................................. 15

2.3.3 Sensor Jarak Ultrasonik PING ............................................. 17

2.3.4 Sensor Jarak Ultrasonik Devantech SRF05 ......................... 18

2.3.4 Prinsip Kerja Sensor............................................................. 19

2.4 Mobil Pengangkut (Material Transport) ...................................... 20

2.4.1 Pemindahan Dalam Jumlah Banyak..................................... 21

2.4.2 Pemindahan Barang Dalam Jumlah Kecil

Secara Terus Menerus .......................................................... 23

2.5 Embedded System.......................................................................... 24

2.6 Mikrokontroler .............................................................................. 26

2.6.1 Perbedaan Mikrokontroler dengan Mikroprosesor .............. 27

2.6.2 Aplikasi Mikrokontroler ...................................................... 28

Page 11: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xi

2.6.3 Perkembangan Mikrokontroler ............................................ 29

2.6.4 Mikrokontroler Arduino....................................................... 29

2.7 Pemrograman Java ........................................................................ 31

2.7.1 Sejarah Singkat Pemrograman Java ..................................... 32

2.7.2 Pemrograman Prosedural dan Pemrograman

Berorientasi Objek ............................................................... 33

2.7.3 Sifat – sifat Pemrograman Java............................................ 35

2.7.4 Compiler dan Interpreter Java.............................................. 36

2.7.5 Konsep Pemrograman Java .................................................. 39

2.7.6 Paket (Package) ................................................................... 44

2.7.7 Object Oriented Programming (OOP)................................. 46

2.7.8 Grafical User Interface (GUI) ............................................. 49

2.8 Metode Penelitian.......................................................................... 52

2.8.1 Metode Pengumpulan Data .................................................. 52

2.8.2 Metode Pengembangan Sistem ............................................ 55

BAB III METODOLOGI PENELITIAN ............................................. 58

3.1 Metode Penelitian.......................................................................... 58

3.2 Teknik Pengumpulan Data............................................................ 58

3.2.1 Studi Lapangan..................................................................... 59

3.2.2 Studi Pustaka........................................................................ 59

3.2.3 Studi Literatur ...................................................................... 60

Page 12: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xii

3.3 Metode Pengembangan Sistem Prototipe...................................... 64

3.3.1 Pemilahan Fungsi ................................................................. 64

3.3.2 Membangun Prototyping ..................................................... 65

3.3.3 Evaluasi Prototyping............................................................ 65

3.3.4 Mengkodekan Sistem........................................................... 65

3.3.5 Menguji Sistem .................................................................... 66

3.3.6 Evaluasi Sistem .................................................................... 66

3.3.7 Penggunaan Sistem .............................................................. 66

3.4 Peralatan Penelitian....................................................................... 67

3.5 Kerangka Penelitian ...................................................................... 68

BAB IV HASIL DAN PEMBAHASAN ................................................ 69

4.1 Pengembangan Prototipe............................................................... 69

4.1.1 Pengumpulan Kebutuhan ..................................................... 69

4.1.2 Membangun Prototyping ..................................................... 70

4.1.3 Evaluasi Prototyping ............................................................ 73

4.1.4 Mengkodekan Sistem........................................................... 74

4.2 Uji Coba ........................................................................................ 82

4.2.1 Uji Kepekaan Sensor PING ................................................. 82

4.2.2 Uji Coba Interface (GUI) ..................................................... 84

4.2.3 Uji Coba Keseluruhan .......................................................... 87

4.2.4 Uji Kecepatan Antara Forklift dan Prototipe ....................... 88

Page 13: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xiii

4.3 Analisis.......................................................................................... 88

BAB V PENUTUP................................................................................... 90

5.1 Kesimpulan ................................................................................... 90

5.2 Saran.............................................................................................. 91

DAFTAR PUSTAKA........................................................................................

LAMPIRAN.......................................................................................................

Page 14: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xiv

DAFTAR GAMBAR

Halaman

Gambar 2.1 Prinsip Kerja Sensor Ultrasonik............................................ 16

Gambar 2.2 Prinsip Pemantulan Sensor Ultrasonik.................................. 17

Gambar 2.3 Sensor Jarak Ultrasonik PING .............................................. 17

Gambar 2.4 Prinsip Kerja Sensor PING ................................................... 19

Gambar 2.5 Susunan Standar Embedded System ...................................... 26

Gambar 2.6 Arduino UNO........................................................................ 31

Gambar 2.7 Proses Kompilasi................................................................... 37

Gambar 3.1 Kerangka Penelitian .............................................................. 68

Gambar 4.1 Diagram Blok ........................................................................ 70

Gambar 4.2 Alur Proses Pembacaan Jarak Pada Prototipe ....................... 71

Gambar 4.3 Prototipe Awal....................................................................... 72

Gambar 4.4 Rangkaian Alat...................................................................... 74

Gambar 4.5 Sensor PING Menerima Input............................................... 83

Gambar 4.6 Hasil Pembacaan Sensor PING pada Serial Monitor ........... 83

Page 15: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xv

Gambar 4.7 Hasil Pengukuran Manual Menggunakan Penggaris ............ 84

Gambar 4.8 Tampilan Grafik Polar........................................................... 84

Gambar 4.9 Tampilan Keterangan Sudut dan Jarak Secara Digital .......... 85

Gambar 4.10 Tampilan Pemilihan COM port dan Tombol On/Off.......... 85

Gambar 4.11 Tampilan Console dari Data yang Diambil Langsung

pada Serial Monitor Arduino.............................................. 86

Gambar 4.12 Tampilan Keseluruhan ........................................................ 86

Gambar 4.13 Pemasangan Sensor PING dengan Dua Buah Micro Servo 87

Gambar 4.14 Tampilan Interface (GUI) Saat Program Dijalankan .......... 87

Page 16: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xvi

DAFTAR TABEL

Halaman

Tabel 3.1 Hasil Studi Literatur.................................................................. 61

Tabel 4.1 Alat dan Bahan.......................................................................... 72

Page 17: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

xvii

DAFTAR LAMPIRAN

Halaman

Lampiran 1. Source Code Program Java................................................... L-1

Lampiran 2. Source Code Program Arduino ............................................ L-2

Lampiran 3. Tampilan Software Arduino ................................................ L-3

Lampiran 4. Form Perbaikan Sidang Skripsi ............................................ L-4

Page 18: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Sistem pergudangan berhubungan dengan proses penempatan serta

pengambilan komponen dan produk dari dan menuju tempat tertentu di dalam

gudang penyimpanan pada suatu pabrik maupun industri. Salah satu contoh

sederhana dari sistem ini adalah proses pemindahan dan penyusunan barang pada

rak-rak penyimpanan di dalam gudang. Pada umumnya, proses pemindahan

barang dilakukan dengan menggunakan forklift. Forklift dapat membantu

manusia mengangkat barang dengan bobot yang berat dan ukuran yang cukup

besar. Akan tetapi, penggunaan forklift memiliki beberapa kelemahan seperti

proses yang kerja yang lambat dan seringnya terjadi kecelakaan kerja, tingkat

kerusakan barang yang tinggi karena barang yang diangkut menghalangi

penglihatan yang dapat menyebabkan terbenturnya barang yang sedang diangkut.

Mengutip dari website www.safetyposter.co.id bahwa jumlah kecelakaan kerja di

Amerika pada sektor transportasi dan pergudangan tahun 2010 terjadi 661 kasus

dan 30 % di akibatkan karena kecelakaan pada forklift. Penerapan teknologi

otomasi pada sistem pergudangan, memungkinkan pekerjaan penempatan dan

pengambilan barang dilakukan dengan lebih mudah, aman serta lebih cepat

dibandingkan dengan pemindahan barang secara manual.

Menurut Kiki Prawiroredjo dalam penelitiannya tahun 2008, penerapan

sensor pada kendaraan pribadi untuk mendeteksi jarak saat parkir dinilai dapat

membantu pengendaranya dalam memarkirkan kendaraan mereka, dan dapat

Page 19: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

2

2

mengurangi benturan dengan mobil, dari sistem yang ada pada kendaraan pribadi

ini, ada baiknya jika sensor parkir ini diterapkan pada mobil pengangkut barang

yang saat ini digunakan di pergudangan dengan penambahan indikator suara

yang berfungsi sebagai pengingat jarak, dan tampilan grafik pada layar PC yang

dapat dimanfaatkan sebagai acuan untuk mengevaluasi kinerja operator.

Seiring dengan perkembangan teknologi di berbagai aspek kehidupan

manusia, maka berkembang pula dengan ketersediaan perangkat keras

(hardware) maupun perangkat lunak (software) yang semakin canggih dan

meningkat kemampuannya. Salah satunya yaitu berkembangnya suatu rangkaian

sistem elektronik digital yang merupakan bagian dari sebuah sistem yang lebih

besar atau dalam kata lain sering di sebut embedded system atau sistem tertanam.

Kata embedded menunjukan bahwa dia merupakan bagian yang tidak

dapat berdiri sendiri. Embedded system biasanya merupakan application specific

system yang di desain khusus untuk aplikasi tertentu. Secara fisik embedded

system berkisar dari perangkat portable seperti jam digital dan MP3 player, untuk

instalasi seperti lampu lalu lintas, pengontrol pabrik, bahkan saat ini diterapkan

pada mobil pribadi yang dapat digunakan saat parkir. Kompleksitas bervariasi

dari rendah, dengan satu mikrokontroler chip, hingga sangat tinggi dengan

beberapa unit. Salah satu mikrokontroler yang paling popular dan banyak

digunakan saat ini adalah arduino. Arduino merupakan sebuah platform

elektronik yang open source, berbasis pada software dan hardware yang fleksibel

dan mudah digunakan. Arduino adalah sebuah papan rangkaian yang kecil,

Page 20: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

3

3

seukuran kartu nama, yang dapat diprogram dan mampu bekerja seperti layaknya

sebuah komputer.

Selain perangkat Arduino yang popular saat ini, banyak pula

bermunculan berbagai bahasa pemrograman yang ada pada komputer saat ini.

Salah satu bahasa pemrograman komputer adalah bahasa pemrograman Java.

Bahasa pemrograman Java adalah bahasa pemrograman berorientasi objek (PBO)

atau Object Oriented Programming (OOP). Java bersifat netral, tidak bergantung

pada suatu platform, dan mengikuti prinsip WORA ( Write Once and Run

Anywhere). Beberapa bahasa pemrograman, seperti Basic, Fortan, Pascal,

COBOL, C, ProLog, dan yang lainnya harus bergantung pada suatu platform

karena harus mengkompilasi program tersebut pada setiap sistem operasi yang

ditentukan jika ingin menggunakan hasil program tersebut.

Berdasarkan paparan yang telah dijelaskan, penulis mencoba untuk

merancang sebuah prototipe alat deteksi jarak dengan perpaduan antara arduino,

sensor PING dan Java. Hal ini difungsikan agar alat tersebut dapat berjalan pada

mobil atau alat pemindah barang sesuai dengan yang penulis harapkan. Dalam

proses pemindahan barang, alat di letakan pada mobil pengangkut barang

menggunakan sensor ultrasonik sehingga alat penganggkut barang tersebut dapat

terus berjalan tanpa menabrak barang – barang disekitarnya.

Sensor yang bekerja sebagai navigasi adalah sensor ultrasonik dimana

sensor ini mampu mendeteksi adanya objek berkisar 3cm – 3m, jarak yang di

deteksi sensor menjadi acuan bagi prototipe tersebut, hal ini yang menjadi alasan

penulis untuk menentukan judul tugas akhir, oleh karena itu dibuatlah tugas akhir

Page 21: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

4

4

dengan judul “Rancang Bangun Prototipe Alat Deteksi Jarak dengan Sensor

PING pada Mobil Pengangkut Barang Berbasis Arduino”.

1.2 Rumusan Masalah

Berdasarkan latar belakang yang telah dijelaskan dapat dirumuskan

bahwa permasalahan yang ada adalah bagaimana mengatasi masalah pada forklift

seperti kemungkinan benturan antara barang yang diangkut dengan benda di

sekitarnya serta tingkat kerusakan benda yang sangat tinggi dengan membuatkan

sebuah alat prototipe deteksi jarak dengan menggunakan Mikrokontroler

Arduino, Sensor PING Ultrasonik dan bahasa pemrograman Java.

1.3 Batasan Masalah

Penulis membatasi penulisan skripsi ini antara lain pada :

1. Pembuatan sistem menggunakan mikrokontroler Arduino Uno.

2. Sensor yang digunakan adalah sensor jarak ultrasonik PING, dengan

kapasitas 3cm – 3m.

3. Pada penelitian ini sistem yang dirancang hanya digunakan pada

sistem pergudangan.

4. Informasi yang disampaikan berupa :

1. Jarak sensor dengan benda hingga 3m.

2. Hasil yang dibaca oleh sensor ditampilkan dalam bentuk gambar

atau grafik dan indikator suara.

5. Hasil ditampilkan pada layar monitor.

Page 22: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

5

5

1.4 Tujuan Penelitian

Berdasarkan uraian latar belakang masalah tersebut, maka tujuan

penulisan skripsi ini :

1. Membuat aplikasi sederhana yang bersifat embedded sistem dengan

menggunakan mikrokontroler Arduino Uno.

2. Membuat sebuah alat deteksi jarak dengan sensor PING ultrasonik

dan Arduino Uno untuk membantu mengurangi tingkat kecelakaan

kerja atau benturan dengan benda lain pada forklift.

1.5 Manfaat Penelitian

Manfaat yang didapat dari penulisan skripsi ini adalah :

1. Bagi Penulis

Menambah wawasan tentang bagaimana aplikasi yang bersifat

embedded sistem dengan menggunakan mikrokontroler Arduino Uno.

2. Bagi Universitas

Memberikan kontribusi sosial dengan nyata, bahwa aplikasi yang

dibuat oleh mahasiswanya dapat berguna bagi masyarakat secara

langsung.

3. Bagi Pengguna

Dapat memberikan kemudahan dalam mengatur jarak barang – barang

yang terdapat di gudang penyimpanan.

Page 23: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

6

6

1.6 Metodologi Penelitian

Metode yang digunakan penulis dalam penulisan bagian metodelogi

penelitian dibagi menjadi dua, yaitu metode pengumpulan data dan metode

pengembangan. Berikut penjelasan kedua metode tersebut :

1.6.1 Metode Pengumpulan Data

Merupakan metode yang digunakan penulis dalam melakukan

analisis data dan menjadikan informasi yang akan digunakan untuk

mengetahui permasalahan yang dihadapi.

1. Studi Pustaka

2. Studi lapangan dengan observasi

3. Studi literatur sejenis.

1.6.2 Metode Pengembangan Sistem

Pada penelitian ini penulis menggunakan metode pengembangan

sistem Prototipe. Karena dengan metode ini penulis dapat

merancang sebuah alat sesuai dengan kebutuhan user dengan cepat

dan tepat. Adapun tahapan yang menjadi karakteristik

pengembangan metode Prototipe adalah sebagai berikut :

a. Pemilihan fungsi.

b. Penyusunan Sistem.

c. Evaluasi.

d. Penggunaan Selanjutnya.

Page 24: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

7

7

1.7 Sistematika Penulisan

Agar lebih mempermudah perumusan dan pemecahan masalah yang akan

dibahas pada tugas akhir ini, maka penulis menguraikan tahapan-tahapan dalam

penyusunan laporan ini sebagai berikut:

BAB I PENDAHULUAN

Bab ini membahas latar belakang penulisan skripsi, batasan

masalah, tujuan, manfaat, metodelogi dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini akan membahas tentang teori – teori yang diperlukan

dalam penulisan skripsi ini.

BAB III METODOLOGI PENELITIAN

Dalam bab ini akan diuraikan metode – metode yang digunakan

dalam penulisan yang berhubungan dengan judul skripsi ini.

BAB IV ANALISIS DAN PEMBAHASAN

Dalam bab ini akan dijelaskan bagaimana merancang dan

membangun sebuah prototipe alat deteksi jarak menggunakan

Mikrokontroler Arduino Uno dan bahasa pemrograman Java.

BAB V PENUTUP

Bab ini berisi kesimpulan secara keseluruhan yang diperoleh dari

hasil analisis dan perancangan serta saran-saran untuk penerapan

dan pengembangan lebih lanjut sistem yang bersangkutan.

Page 25: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

8

BAB IILANDASAN TEORI

Pada bab ini akan dijelaskan mengenai landasan teori dan alat yang

digunakan pada penelitian skripsi ini. Penjelasan yang diberikan pada bab ini

diharapkan dapat membantu peneliti serta pembaca dalam memahami teori yang

dipakai dalam laporan penelitian ini. Teori yang dijelaskan pada bagian ini

meliputi teori rancang bangun, prototipe, embedded system, mikrokontroler

Arduino, sensor, dan Pemrograman Java.

2.1 Pengertian Rancang Bangun

Rancang merupakan serangkaian prosedur untuk menerjemahkan hasil

analisa dari sebuah sistem ke dalam bahasa pemrograman untuk mendeskripsikan

dengan detail bagaimana komponen-komponen sistem diimplementasikan

(Pressman, 2002). Rancangan sistem adalah penentuan proses dan data yang

diperlukan oleh sistem baru (McLeod, 2002). Perancangan adalah kegiatan yang

memiliki tujuan untuk mendesain sistem baru yang dapat menyelesaikan

masalah-masalah yang dihadapi perusahaan yang diperoleh dari pemilihan

alternatif sistem yang terbaik (Ladjamudin, 2005). Sedangkan pengertian bangun

atau pembangunan sistem adalah kegiatan menciptakan sistem baru maupun

mengganti atau memperbaiki sistem yang telah ada baik secara keseluruhan

maupun sebagian (Pressman, 2002). Bangun sistem adalah membangun sistem

informasi dan komponen yang didasarkan pada spesifikasi desain (Whitten et al,

2004).

Page 26: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

9

9

Dengan demikian pengertian rancang bangun merupakan kegiatan

menerjemahkan hasil analisa ke dalam bentuk paket perangkat lunak kemudian

menciptakan sistem tersebut ataupun memperbaiki sistem yang sudah ada.

2.2 Prototipe

2.2.1 Definisi Prototipe

Prototyping menurut Houde dan Hill merupakan salah satu metode

pengembangan perangkat lunak yang banyak digunakan. Dengan metode

prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama

proses pembuatan sistem. Sering terjadi seorang pelanggan hanya mendefinisikan

secara umum apa yang dikehendakinya tanpa menyebutkan secara detail output

apa saja yang dibutuhkan, pemrosesan dan data – data apa saja yang dibutuhkan.

Sebaliknya disisi pengembang kurang memperhatikan efisiensi algoritma,

kemampuan sistem operasi dan interface yang menghubungkan manusia dan

komputer. Untuk mengatasi ketidakserasian antara pelanggan dan pengembang

maka dibutuhkan kerjasama yang baik antara keduanya sehingga pengembang

akan mengetahui dengan benar apa yang diinginkan pelanggan dengan tidak

mngesampingkan segi – segi teknis dan pelanggan akan mengetahui proses –

proses dalam menyelesaikan sistem yang diinginkan. Dengan demikian akan

menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah

ditentukan.

Prototipe merupakan pendekatan literatif dalam pengembangan sistem

yang dibuat. Secara umum tujuan pengembangan sistem informasi adalah untuk

Page 27: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

10

10

memberikan kemudahan dalam penyimpanan informasi, mengurangi biaya dan

menghemat waktu, meningkatkan pengendalian, mendorong pertumbuhan, dan

meningkatkan produktifitas. Dalam beberapa tahun terakhir ini, peningkatan

produktifitas organisasi ini dibantu dengan berkembangnya teknologi komputer

baik hardware maupun softwarenya. Tetapi tidak semua kebutuhan sistem

informasi dengan komputer itu dapat memenuhi kebutuhan dan menyelesaikan

masalah yang dihadapi organisasi. Keterbatasan sumber daya dan anggaran

pemeliharaan memaksa para pengembang sistem informasi untuk menemukan

jalan untuk mengoptimalkan kinerja sumber daya yang telah ada.

Karakteristik dari suatu sistem informasi manajemen yang lengkap

tergantung dari masalah yang dihadapi, proses pengembangannya dan tenaga

kerja yang akan dikembangkannya. Seiring dengan perkembangan permasalahan

karena berubahnya lingkungan yang berdampak kepada perusahaan maka yang

menjadi parameter proses pengembangan sistem informasi yaitu masalah yang

dihadapi, sumber daya yang tersedia dan perubahan, sehingga hasil

pengembangan sisitem informasi manajemen, baik yang diharapkan oleh

perorangan maupun oleh organisasi turut berubah.

Perubahan tersebut pada akhirnya menimbulkan ketidakpastian dan

menambah kompleks/rumit masalah yang dihadapi oleh para analis sistem

informasi. Metode tradisional seperti SDLC (System Development Life Cycle)

dianggap tidak lagi mampu memenuhi tantangan perubahan dan kompleksnya

masalah yang dihadapi tersebut. Sekitar awal tahun delapan puluhan, para

professional dibidang sistem informasi memperkenalkan suatu metode

Page 28: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

11

11

pengembangan sistem informasi baru, yang dikenal dengan nama metode

prototyping.

Metode prototyping sebagai suatu paradigma baru dalam pengembangan

sistem informasi manajemen, tidak hanya sekedar suatu evolusi dari metode

pengembangan sisitem informasi yang sudah ada, tetapi sekaligus merupakan

revolusi dalam pengembangan sistem informasi manajemen. Metode ini

dikatakan revolusi karena merubah proses pengembangan sistem informasi yang

lama (SDLC).

Menurut literatur, yang dimaksud dengan prototipe adalah “model

pertama” yang sering digunakan oleh perusahaan industry yang memproduksi

barang secara masal. Tetapi dalam kaitannya dengan sisitem informasi definisi

kedua dari Webster yang menyebutkan bahwa prototipe tersebut adalah sistem

informasi yang menggambarkan hal – hal penting dari sistem informasi yang

akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang

lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan,

ditambahkan, atau digabungkan dengan sistem informasi yang lain bila perlu.

Dalam beberapa hal pengembangan software berbeda dengan produk –

produk manufaktur, setiap tahap atau fase pengembangan sistem informasi

merupakan bagian yang tidak terpisahkan dari seluruh proses yang harus

dilakukan. Proses ini umumnya hanya untuk satu produk dan karakteristik dari

produk tersebut tidak dapat ditentukan secara pasti seperti produk manufaktur,

sehingga penggunaan “model pertama” bagi pengembangan software tidaklah

Page 29: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

12

12

tepat. Istilah prototyping dalam hubungannya dengan pengembangan software

sistem informasi manajemen lebuh merupakan suatu proses bukan prototipe

suatu produk.

2.2.2 Karakteristik Metode Prototipe

Ada empat langkah yang menjadi karakteristik metode prototyping yaitu :

1. Pemilahan Fungsi

Mengacu pada pemilahan fungsi yang harus ditampilkan oleh

prototyping. Pemilahan harus selalu dilakukan berdasarkan pada tugas

– tugas yang relevan yang sesuai dengan contoh kasus yang akan

diperagakan.

2. Penyusunan Sistem Informasi

Bertujuan untuk memenuhi permintaan akan tersedianya prototipe.

3. Evaluasi

4. Penggunaan Selanjutnya

Jenis – jenis prototyping sendiri meliputi :

1. Feasibility prototyping – digunakan untuk menguji kelayakan dari

teknologi yang akan digunakan untuk sistem informasi yang akan

disusun.

2. Requitment prototyping – digunakan untuk mengetahui kebutuhan

aktivitas user.

Page 30: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

13

13

3. Desain prototyping - digunakan untuk mendorong perancanngan

sistem informasi yang akan digunakan.

4. Implementation prototyping – merupakan lanjutan dari rancangan

prototipe, dimana prototipe ini langsung disusun sebagai suatu sistem

informasi yang akan digunakan.

2.2.3 Keunggulan dan Kelamahan Metode Prototipe

Keunggulan

1. End User dapat berpartisipasi aktif.

2. Penentuan kebutuhan lebih mudah diwujudkan

3. Mempersingkat waktu pengembangan sistem informasi.

Kelemahan

1. Proses analisis dan perancangan terlalu singkat.

2. Mengesampingkan alternatif pemecahan masalah.

3. Kurang fleksibel dalam menghadapi perubahan.

4. Prototipe yang dihasilkan tidak selamanya mudah dirubah.

5. Prototipe terlalu cepat selesai.

(Houde dan Hill ,2004)

Page 31: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

14

14

2.3 Alat Deteksi Jarak

Alat deteksi jarak atau detektor erat kaitannya dengan Radar. Radar

(Radio Detection and Ranging) merupakan sistem gelombang elektromagnetik

yang digunakan untuk mendeteksi, mengukur jarak dan membuat map benda-

benda seperti pesawat terbang, kendaraan bermotor dan informasi cuaca.

Detektor ini berupa sebuah sensor yang bekerja secara otomatis berdasarkan

pemilihan jenis sensor dan pemrograman pada sensor tersebut.

2.3.1 Pengertian Sensor

Sensor dan transducer merupakan peralatan atau komponen yang

mempunyai peranan penting dalam sebuah sistem pengaturan otomatis.

Ketepatan dan kesesuaian dalam memilih sensor akan sangat menentukan

kinerja dari sistem pengaturan secara otomatis.

Secara umum berdasarkan fungsi dan penggunaannya sensor dapat

dikelompokan menjadi 3 bagian yaitu :

a. Sensor thermal (panas)

b. Sensor mekanis

c. Sensor optic (cahaya)

Sensor mekanis adalah sensor yang mendeteksi perubahan gerak

mekanis, seperti berat benda, perpindahan atau pergeseran posisi, gerak

lurus dan melingkar, tekanan, gaya, aliran, level, dan sebagainya. Besaran

masukan pada kebanyakan sisitem kendali adalah bukan besaran listrik,

seperti besaran fisika, kimia, mekanis dan sebagainya, untuk memakaikan

besaran listrik pada sistem pengukuran, atau sistem manipulasi atau sistem

Page 32: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

15

15

pengontrolan. Fenomena fisik mampu menstimulus sensor menghasilkan

sinyal elektrik meliputi berat/beban, temperatur, tekanan, gaya, medan

magnet cahaya, pergerakan dan sebagainya.

Dengan definisi seperti ini maka sensor merupakan alat elektronik

yang banyak dipakai dalam kehidupan manusia saat ini. Bagaimana tekanan

jari kita pada keyboard komputer, remote televisi, lantai lift yang kita tuju

menghasilkan perubahan layar komputer atau televisi, serta gerakan lift

adalah contoh mudah sensor secara luas. Hampir seluruh kehidupan sehari

– hari saat ini tidak ada yang tidak melibatkan sensor. Tidak mengherankan

jika sensor banyak disebut sebagai panca indera-nya alat elektronik

(William, 2004).

2.3.2 Sensor Ultrasonik

Sensor ultrasonik adalah sensor yang bekerja berdasarkan prinsip

pantulan gelombang suara dan digunakan untuk mendeteksi suatu objek

tertentu di depannya, frekuensi kerjanya pada daerah atas gelombang suara

dari 40 KHz hingga 400 KHz. Sensor ultrasonik terdiri dari dua unit , yaitu

unit pemancar dan unit penerima. Struktur unit pemancar dan penerima

sangatlah sederhana, sebuah kristal piezoelectric dihubungkan dengan

mekanik jangkar dan hanya dihubungkan dengan diafragma penggetar.

Tegangan bolak – balik yang memiliki frekuensi 40 KHz – 400 KHz

diberikan pada plat logam. Struktur atom dari kristal piezoelectric akan

berkontraksi (mengikat), mengembang atau menyusut terhadap polaritas

tegangan yang diberikan dan ini disebut efek piezoelectric.

Page 33: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

16

16

Kontraksi yang terjadi diteruskan ke diafragma penggetar sehingga

terjadi gelombang ultrasonik yang dipancarkan ke udara (tempat

sekitarnya). Pantulan gelombang ultrasonik akan terjadi bila ada objek

tertentu dan pantulan gelombang ultrasonik akan diterima kembali oleh unit

sensor penerima. Selanjutnya unit sensor penerima akan menyebabkan

diafragma penggetar akan bergetar dan efek piezoelectric menghasilkan

sebuah tegangan bolak-balik dengan frekuensi yang sama. Untuk lebih jelas

tentang prinsip kerja dari sensor ultrasonik dapat dilihat pada gambar 2.2

berikut :

Gambar 2.1 Prinsip Kerja Sensor Ultrasoniksumber : www.parallax.com (2013)

Besar amplitude sinyal elektrik yang dihasilkan unit sensor penerima

tergantung dari jauh dekatnya objek yang dideteksi serta kualitas sensor

pemancar dan sensor penerima. Proses sensoring yang dilakukan pada

sensor ini menggunakan pantulan untuk menghitung jarak antara sensor

dengan objek sasaran. Jarak antara sensor tersebut dihitung dengan cara

mengalikan setengah waktu yang digunakan oleh sinyal ultrasonik dalam

perjalanannya dari rangkaian pengirim sampai diterima oleh rangkaian

penerima, dengan kecepatan rambat dari sinyal ultrasonik tersebut pada

Page 34: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

17

17

media rambat yang digunakannya, yaitu udara. Prinsip pantulan dari sensor

ultrasonik ini dapat dilihat pada gambar 2.3 sebagai berikut :

Gambar 2.2 Prinsip Pemantulan Sensor UltrasonikSumber Widodo (2007)

Terdapat dua jenis sensor ultasonik yang beredar dipasaran yaitu :

1. Sensor ultrasonik PING (parallax)

2. Sensor ultrasonic devantech (SRF 05 ranger)

2.3.3 Sensor Jarak Ultrasonik PING

Sensor jarak ultrasonik PING adalah sensor 40 KHz produksi parallax

yang banyak digunakan untuk aplikasi atau kontes robot cerdas. Kelebihan

sensor ini hanya membutuhkan satu sinyal (SIG) selain jalur 5 v dan

ground. Perhatikan gambar berikut :

Gambar 2.3 Sensor jarak ultasonik PINGsumber : www.parallax.com (2013)

Page 35: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

18

18

Sensor PING mendeteksi jarak objek dengan cara memancarkan

gelombang ultrasonik (40 KHz) selama t = 200 us sesuai dengan kontrol

dari mikrokontroller pengendali (pulsa trigger dengan tout min 2 us).

2.3.4 Sensor Jarak Ultrasonik Devantech SRF05

SRF05 merupakan sensor pengukur jarak yang menggunakan

ultrasonik. Dimana prinsip kerja sensor Ultrasonik ini adalah pemancar

(transmitter) mengirimkan seberkas gelombang ultrasonik, lalu diukur

waktu yang dibutuhkan hingga datangnya pantulan dari objek. Lamanya

waktu ini sebanding dengan dua kali jarak sensor dengan objek, sehingga

didapat jarak sensor dengan objek yang bisa ditentukan dengan persamaan

Jarak = Kecepatan_suara × waktu_pantul/2

Sensor ultrasonik Devantech SRF05 dengan spesifikasi sebagai

berikut :

1. Bekerja pada tegangan DC 5 volt.

2. Beban arus sebesar 30 mA – 50 mA.

3. Menghasilkan gelombang dengan frekuensi 40 KHz.

4. Jangkauan jarak yang dapat dideteksi 3 cm – 400 cm.

5. Membutuhkan trigger input minimal sebesar 10 uS.

6. Dapat digunakan dalam dua pilihan mode yaitu input trigger dan

output echo terpasang pada pin yang berbeda atau input tirgger dan

output echo terpasang dalam satu pin yang sama.

Page 36: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

19

19

2.3.5 Prinsip Kerja Sensor

Pada dasanya, Sensor PING terdiri dari sebuah chip pembangkit

sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikrofon ultrasonik.

Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara

mikrofon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Sensor

PING mendeteksi jarak objek dengan cara memancarkan gelombang

ultrasonik (40 kHz) selama tBURST (200 μs) kemudian mendeteksi

pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai

dengan kontrol dari mikrokontroler pengendali (pulsa trigger dengan tOUT

min. 2 μs).

Gambar 2.4 Prinsip kerja sensor PINGsumber : www.parallax.com (2013)

Gelombang ultrasonik ini melalui udara dengan kecepatan 344 meter

per detik, mengenai objek dan memantul kembali ke sensor. PING

mengeluarkan pulsa output high pada pin SIG setelah memancarkan

gelombang ultrasonik dan setelah gelombang pantulan terdeteksi PING

akan membuat output low pada pin SIG. Lebar pulsa High (tIN) akan sesuai

Page 37: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

20

20

dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur

dengan obyek. Maka jarak yang diukur adalah :

S = (tIN x V) ÷ 2

Dimana :

S = Jarak antara sensor ultrasonik dengan objek yang dideteksi

V = Cepat rambat gelombang ultrasonik di udara (344 m/s)

tIN = Selisih waktu pemancaran dan penerimaan pantulan gelombang.

2.4 Mobil Pengangkut (Material Transport)

Banyak orang mengartikan material transport sama dengan material

handling. Sebenarnya 2 istilah ini memiliki definisi yang berbeda. Material

handling yaitu Ilmu tentang pemindahan (material transport), penyimpanan

(storage), pengamanan, dan pengontrolan material. Jadi material transport

merupakan bagian dari definisi material handling. Istilah lainnya yaitu material

moving.

Pada praktiknya, aktivitas ini menjadi sangat penting dalam operasi

perusahaan. Mulai dari industri pertambangan, chemical, hingga manufacture,

material transport memiliki alokasi biaya yang cukup besar. Dari sisi Suplier, ini

menjadi bisnis bernilai milayaran dollar. Karena itu tidak mengherankan jika

perkembangan teknologinya sangat pesat untuk memenuhi kebutuhan sistem

operasi ter-modern.

Pemindahan barang merupakan salah satu elemen dasar dalam

implementasi Just In time , jika pemindahan barang antar stasiun kerja

Page 38: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

21

21

berlangsung dengan cepat, efisien dan aman memiliki kontribusi terhadap

peningkatan kecepatan operasi.

Metode pemindahan barang terbagi dalam dua kelompok:

1. Pemindahan barang dalam jumlah banyak / besar seketika.

2. Pemindahan barang dalam jumlah kecil secara terus menerus /

continue.

2.4.1 Pemindahan Barang Dalam Jumlah Banyak

Pemindahan dalam jumlah besar sekaligus memiliki konsekuensi

terhadap luas ruang gerak mesin pengangkut teutama untuk bermanuver.

1. Digerakan dengan tenaga manusia

Berikut beberapa penerapan dalam manufacture yang menggunakan ini :

a. Manual Hand Truck, yaitu alat pemindah barang secara manual

atua dengan tenaga manusia. Variasi hand truck ini cukup banyak,

karena rata – rata design alat menyesuaikan kondisi operasi.

Bahkan untuk memenuhi kebutuhan operasi yang khusus, alat ini

terkadang harus dibuat secara customized. Umumnya orang

menyebut alat ini dengan trolley.

b. Hydraulic Hand Trucks, jenis alat ini digunakan untuk

memindahkan barang, tapi dilengkapi dengan mekanisme

pengangkat secara hidraulic. Contoh alat yang umum digunakan

dalam industri, hand pallet, jack pallet, scissors lift table,

Page 39: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

22

22

hidraulic stackers, dan lain – lain. Sistem hidraulic tidak

memerlukan sumber listrik dalam operasinya, sehingga

penggunaannya bisa lebih luas.

c. Electric Hand Trucks, jenis alat ini digunakan untuk

memindahkan barang, tapi dilengkapi dengan mekanisme

pengangkat/lifting secara electric/baterai. Jadi syarat utama

penggunaannya stasiun kerja harus memiliki sumber arus listrik.

2. Digerakan dengan tenaga mesin

Barang dipindahkan dengan menggunakan mesin-mesin penggerak ,

umumnya alat ini dilengkapi dengan mekanisme pengangkat secara hidraulic

atau elektrik.

a. Forklift, menurut penggunaan dan sumber tenaganya ada beberapa

type forklift, diantaranya electric forklift, Diesel Engine Forklift,

Gasoline/LPG engine forklift. Penggunaan di dalam lingkungan

Industri biasanya berkisar pada beban angkat 2,5 - 5 Ton. Namun

rentang daya angkat forklift yang tersedia dipasaran mulai dari 0,5 -

40 Ton.

b. Car on Rails, heavy duty load, alat ini banyak digunakan dalam

industri logam berat, karena bobot dan ukurannya yang relatif besar,

dan bentuk yang rata-rata standar. Pemindahan barang tidak

memungkinkan menggunakan crane, sehingga harus tetap bertumpu

di lantai dengan menggunakan jalur khusus (Rail).

Page 40: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

23

23

c. Order Picker, digunakan indoor dan dikendalikan oleh

operator/driver. Umumnya bertenaga listrik atau hidrogen. Memiliki

dimensi relatif kecil, sehingga mampu bermanuver didalam ruang

yang terbatas.

d. Crane, banyak digunakan diindustri yang berhubungan dengan

pemindahan barang dengan bobot relatif berat, namun memiliki

bentuk yang tidak standar. Aplikasinya banyak digunakan di area

kerja Maintenance, Workshop, Perakitan mesin-mesin berat.

e. Autonomous Guide Vehicles (AGV), kendaraan tanpa dikendarai

namun dikendalikan oleh komputer dengan menggunakan gelombang

radio atau jalur sensor.

2.4.2 Pemindahan Barang Dalam Jumlah Kecil Secara Terus

Menerus

Metode ini umumnya digunakan untuk memindahkan barang-barang yang

ringan dan memiliki bentuk yang sama standar. Metode ini menggunakan mesin

yang bersifat fixed /tetap, namun dapat dirancang untuk melalui celah yang kecil

atau ketinggian yang cukup dari permukaan lantai kerja sehingga tidak

mengganggu aktivitas produksi.

Sistem ini menggunakan Conveyor. Conveyor adalah sistem mekanik

yang befungsi memindahkan barang dari satu tempat ke tempat lain secara

continue. Dari beberapa variasi, conveyor dikelompokan kedalam 4 jenis :

1. Gravity Conveyor

Page 41: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

24

24

2. Motor Conveyor

3. Vibrating Conveyor

4. Hanging / Over Head Conveyor

2.5 Embedded System

Menurut Pernantin Tarigan dalam bukunya Sistem Tertanam (Embedded

System) (Tarigan, 2010), Embedded system adalah suatu sistem komputer yang

dibangun untuk melakukan tujuan atau fungsi tertentu. Dalam suatu embedded

system, terdapat susunan perangkat keras dan komponen-komponen mekanik.

Komponen-komponen penyusun embedded system ini dikoordinasikan oleh satu

atau lebih chip mikrokontroler yang telah diprogram untuk melakukan fungsi

tertentu. Karena dibangun untuk fungsi tertentu saja, maka pada umumnya

komponen utama embedded system dapat memiliki ukuran yang lebih kecil

dengan jumlah dan jenis komponen penyusunnya sesuai dengan kebutuhan saja.

Dengan demikian biaya produksinya pun dapat ditekan. Hal ini berbeda dari

sistem komputer umum, seperti personal computer, yang lebih fleksibel karena

dapat memenuhi berbagai kebutuhan pengguna. Sebagai konsekuensinya,

personal computer harus menyediakan berbagai macam komponen yang dapat

memenuhi kebutuhan pengguna secara umum. Akibatnya, ukuran komponen

utamanya pun menjadi lebih besar dan biaya produksinya juga menjadi lebih

mahal. Namun pada beberapa kasus, embedded system mungkin saja berupa

suatu sistem dengan skala yang sangat besar dan bernilai sangat mahal, seperti

embedded system pada pembangkit listrik tenaga nuklir atau sistem kontrol

Page 42: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

25

25

pabrik. Pada intinya, yang membedakan antara embedded system dengan sistem

komputer biasa adalah spesifikasi dari fungsinya.

Suatu embedded system biasanya memiliki sensor-sensor sebagai

masukan, seperti sensor panas, sensor posisi (GPS), sensor pengukur jarak,

sensor guncangan, dan lain-lain. Selain sensor, embedded system juga dilengkapi

dengan komponen yang berfungsi menanggapi hasil penerimaan sensor setelah

diproses, yaitu dapat berupa motor penggerak, layar, ataupun menggunakan

modem untuk berkomunikasi dengan suatu server. Perangkat masukan dan

keluaran dalam suatu embedded system dapat bersifat digital jika perangkat

tersebut menerima masukan atau memberi hasil dalam bentuk digital atau analog

jika masukan maupun keluarannya berupa sinyal analog. Semua perangkat

masukan dan keluaran dari embedded system ini dikoordinasikan oleh logika

yang telah diprogram ke dalam mikrokontroller yang ditanamkan dalam sistem

ini, atau lebih dikenal sebagai firmware. Inilah inti dari pembuatan suatu

embedded system, karena program dalam mikrokontroler itulah yang menentukan

pemrosesan dan hasil yang dikeluarkan. Berikut ini adalah susunan standar dari

suatu embedded system:

Gambar 2.5 Susunan Standar Embedded SystemSumber : Tarigan ( 2010)

Page 43: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

26

26

2.6 Mikrokontroler

Komputer hadir dalam kehidupan manusia sejak 50 tahun yang lalu,

namun efeknya sangat besar dalam merubah kehidupan manusia, bahkan

melebihi penemuan manusia lainnya seperti radio, telepon, dan televisi. Begitu

banyak aplikasi memanfaatkan chip mikroprosesor yang dapat melakukan

komputasi sangat cepat, dapat bekerja sendiiri dengan diprogram, dan dilengkapi

memori untuk menyimpan begitu banyak data.

Seiring dengan perkembangan zaman, semakin luaslah kebutuhan akan

kemampuan seperti yang dimiliki komputer, sehingga menyebabkan munculnya

terobosan – terobosan baru yang salah satunya dibuatnya chip mikrokontroler.

Mikrokontroler adalah single chip computer yang dapat diprogram dan

digunakan untuk tugas-tugas berorientasi kontrol.

Mikrokontroler datang dengan dua alasan utama yang pertama adalah

kebutuhan pasar dan yang kedua adalah perkembangan teknologi baru. Yang

dimaksud kebutuhan pasar adalah kebutuhan yang luas dari produk-produk

elektronik akan perangkat pintar sebagai pengontrol pemroses data. Sedangkan

yang dimaksud dengan perkembangan teknologi baru adalah perkembangan

teknologi semikonduktor dan memungkinkan pembuatan chip dengan

kemampuan komputasi yang sangat cepat, bentuk yang semakin kecil, dan harga

yang semakin murah.

Page 44: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

27

27

2.6.1 Perbedaan Mikrokontroler dengan Mikroprosesor

Menurut Widodo dalam bukunya yang berjudul Panduan Lengkap

Belajar Mikrokontroler ; Perancangan Sistem dan Aplikasi Mikrokontroler

(Widodo, 2005), terdapat perbedaan yang signifikan antara mikrokontroler dan

mikroprosesor. Perbedaan utama antara keduanya dilihat dari dua faktor utama

yaitu arsitektur perangkat keras (hardware architecture) dan aplikasi masing –

masing.

Ditinjau dari segi arsitekturnya, mikroprosesor merupakan single chip

CPU, sedangkan mikrokontroler dalam IC-nya selain CPU juga device lain yang

memungkinkan mikrokontroler berfungsi sebagai suatu single chips computer.

Dalam sebuah IC mikrokontroler telah terdapat ROM, RAM, EPROM, serial

interface, dan parallel interface. Timer, interrupt controller, converter analog ke

digital,dan lainnya (tergantung feature yang melengkapi mikrokontroler

tersebut).

Sedangkan dari segi aplikasinya, mikroprosesor hanya berfungsi sebagai

Central Processing Unit yang menjadi otak komputer, sedangkan

mikrokontroler, dalam bentuknya yang mungil, pada umumnya ditujukan untuk

melakukan tugas – tugas yang berorientasi kontrol pada rangkaian yang

membutuhkan jumlah komponen minimum dan biaya rendah (low cost).

Page 45: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

28

28

2.6.2 Aplikasi Mikrokontroler

Karena kemampuannya yang tinggi, bentuknya yang kecil, konsumsi

dayanya yang rendah, dan harga yang murah maka mikrokontroler bnayak

digunakan. Mikrokontroler digunakan mulai dari mainan anak – anak sampai

perangkat elektronik rumah tangga, perangkat pendukung otomotif, perangkat

industri, perangkat telekomunikasi, peralatan medis dan kedokteran sampai

dengan pengendali robot serta persenjataan militer.

Terdapat beberapa keuntungan dari alat – alat yang berbasis

Mikrokontroler (mikrokontroler – based solutions) diantaranya :

Kehandalan tinggi dan kemudahan integrasi dengan komponen

lain.

Penggunaan komponen semakin sedikit yang juga akan

menyebabkan biaya produksi semakin ditekan.

Ukuran yang dapat diperkecil.

Waktu pembuatan lebih singkat sehingga lebih cepat pula dijual

kepasaran sesuai kebutuhan.

Konsumsi daya yang semakin rendah.

(Widodo, 2005)

2.6.3 Perkembangan Mikrokontroler

Karena kebutuhan yang tinggi terhadap “chip – chip pintar” dengan

berbagai fasilitasnya, maka berbagai vendor juga berlomba untuk menawarkan

produk – produk mikrokontrolernya. Hal tersebut terjadi semenjak awak tahun

Page 46: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

29

29

1970-an. Motorolla mengeluarkan seri Mikrokontroler 6800 yang terus

dikembangkan sehingga menjadi 68HC05, 68HC08, 68HC11, dan 68HC16.

Zijog juga mengeluarkan seri mikroprosesor Z180 dan kemudian diadopsi

juga oleh mikroprosesor Rabbit. Intel mengeluarkan Mikrokontroler yang

mendunia yaitu 8051, karena begitu populernya maka arsitektur 8051 kemudian

diadopsi oleh vendor lain seperti Philips, Siemens, Atmel, dan vendor – vendor

lain dalam produk mikrokontroler mereka. Selain itu masih ada mikrokontroler

populer lainnya seperti Basic stamps, PIC dari Microchip, MSP 430 dari Texas

Instrument dan Arduino, serta masih banyak lagi.

Selain mikroprosesor dan mikrokontroler, sebenarnya telah bermunculan

chip – chip pintar lain seperti DSP prosesor. Di masa depan, chip – chip mungil

berkemampuan tinggi akan mendominasikan semua desain elektronik di dunia

sehingga mampu memberikan kemampuan komputasi yang tinggi serta

meminimalkan jumlah komponen – komponen konvensional.

2.6.4 Mikrokontroler Arduino

Dalam buku “Getting Started with Arduino” , Arduino dituliskan sebagai

sebuah platform komputasi fisik (Physical Computing) yang open source pada

board input output sederhana. Yang dimaksud dengan platform komputasi fisik

disini adalah sebuah sistem fisik yang interaktif dengan penggunaan software dan

hardware yang dapat mendeteksi dan merespon situasi dan kondisi di dunia

nyata.

Page 47: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

30

30

Sedangkan dari situs resminya di www.arduino.cc, Arduino didefinisikan

sebagai sebuah platform elektronik yang open source, berbasis pada software dan

hardware yang fleksibel dan mudah digunakan yang ditujukan pada setiap orang

yang tertarik dalam membuat objek atau lingkungan yang interaktif.

Nama Arduino di sini tidak hanya dipakai untuk menamai board

rangkaiannya saja, tetapi juga untuk menamai bahasa dan software

pemrogramannya, serta lingkungan pemrogramannya atau IDE (Integrated

Development Environment).

Arduino adalah suatu mikrokontroler kecil yang berisi semua komponen

komputer dan memiliki kekuatan yang tidak begitu besar. Tapi dengan Arduino

yang murah tersebut, kita dapat membuat alat – alat yang sangat menarik.

Arduino merupakan chip berwarna hitam yang mempunyai 28 kaki yang disebut

ATmega168. Agar mikrokontroler Arduino dapat bekerja dengan baik dan dapat

berkomunikasi dengan komputer, seluruh komponen – komponen yang

dibutuhkan harus diletakkan pada tempatnya.

Arduino memiliki banyak sekali versi. Salah satu yang paling simpel

adalah Arduino Uno yang mudah untuk dipakai. (Arduino, 2010). Berikut adalah

gambar untuk Arduino Uno :

Page 48: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

31

31

Gambar 2.6 Arduino Uno

(Sumber : arduino.cc)

Penjelasan dari gambar :

a. 14 digital input – output pin (Pin 0-13)

Pin tersebut dapat menjadi input atau output yang dispesifikasikan

sesuai program yang dibuat.

b. 6 analog input pin (Pin 0-5)

Pin tersebut difungsikan sebagai penerima data analog dari suatu

sensor, dan kemudian mengubah data tersebut menjadi angka

antara 0 dan 1023.

c. 6 analog output pin (pin 3, 5, 6, 9, 10, dan 11)

Pin ini sebenarnya adalah digital pin yang dapat diprogram ulang

sehingga dapat mengubah mode pin yang dapat mengeluarkan data

analog.

2.7 Pemrograman Java

Program adalah sekumpulan perintah – perintah (instruction) yang

diatur secara sistematis untuk menyelesaikan suatu masalah. Salah satu

Page 49: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

32

32

bahasa pemrograman komputer adalah bahasa pemrograman Java. Bahasa

pemrograman Java adalah bahasa pemrograman berorientasi objek (PBO)

atau Object Oriented Programming (OOP).

Java bersifat netral, tidak bergantung pada suatu platform, dan

mengikuti prinsip WORA (Write Once and Run Anywhere). Beberapa

bahasa pemrograman, seperti Basic, Fortan, Pascal, COBOL, C, Prolog dan

lainnya harus bergantung pada suatu platform karena mengharuskan user

mengkompilasi program tersebut pada setiap sistem operasi yang

ditentukam jika ingin menggunakan hasil program tersebut (Sariadin,

2009).

2.7.1 Sejarah Singkat Pemrograman Java

Pemrograman Java dipelopori oleh James Gosling, Patrick Naughton,

Chris Warth, Ed Frank, dan Mike Sheridan dari Sun Microsystems, Inc.

pada tahun 1991, ketika perusahaan tersebut memulai Green Project

(proyek penelitian membuat bahasa yang akan digunakan pada chip – chip

embedded untuk device intelligent consumer electronic). Mereka

membutuhkan waktu kurang lebih 18 bulan untuk membuat versi

pertamanya.

Bahasa tersebut haruslah bersifat multiplatform dan tidak tergantung

pada vendor yang memanufaktur chip tersebut. Pada awalnya, bahasa ini

disebut Oak, tapi kemudian diubah menjadi Java pada tahun 1995 karena

nama Oak telah dijadikan hak cipta dan digunakan sebagai bahasa

pemrograman lainnya.

Page 50: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

33

33

Sejak pembuatan Oak pada musim gugur tahun 1992 hingga

diumumkan ke publik pada musim semi tahun 1995, banyak orang yang

terlihat dalam desain dan evolusi bahasa ini. Bill Joy, Arthur van Hoff,

Jonathan Payne, Frank Yellin, dan Tim Lindholm merupakan kontributor

kunci yang mematangkan prototipe aslinya. Pada saat ini, Java banyak

digemari oleh para programmer karena open source dan dapat

dikembangkan ke pemrograman berbasis internet sesuai kebutuhan masa

atau zaman ( Spell, 2000).

2.7.2 Pemrograman Prosedural dan Pemrograman Berorientasi

Objek

Menurut Sariadian dalam bukunya yang berjudul Pemrograman Java

Dasar – dasr Pengenalan dan Pemahaman (Sariadin, 2009) menjelaskan

bahwa program komputer terdiri atas kode dan data. Kode yang dimaksud

adalah proses logis program (misalnya fungsi), sedangkan data dapat

berupa variabel atau konstanta. Secara konseptual, kode dan data tersebut

diatur sedemikian rupa sehingga dapat bekerja sama untuk menghasilkan

keluaran sesuai dengan proses yang diinginkan.

Pada model pemrograman tradisional atau prosedural (disebut process

oriented mode), semua data kode digabung menjadi satu bagian dalam satu

program. Untuk program – program sederhana yang hanya membutuhkan

beberpa buah baris kode, penggunaan model ini tentu tidak begitu menjadi

masalah. Permasalahan baru akan timbul pada saat program tersebut

berkembang ke arah yang lebih besar dan kompleks, yang mungkin

Page 51: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

34

34

membutuhkan ratusan atau bahkan ribuan baris kode. Pada pemrograman

beronrientasi objek, komponen – komponen penyusun program secara

konseptual akan dipecah menjadi bagian – bagian tersendiri yang disebut

dengan “objek”.

Dalam pemrograman berorientasi objek, setiap objek akan memiliki

data (sifat berupa variabel atau konstanta) dan method (perilaku atau

kemampuan melakukan sesuatu berupa fungsi). Jadi, objek dapat

didefinisikan sebagai suatu entitas yang memiliki data dan method.

Contoh :

Manusia adalah suatu objek yang memiliki data – data :

a. Nama

b. Jenis Kelamin

c. Tinggi Badan

d. Berat Badan

e. Golongan Darah

Manusia memiliki method :

a. Cara bicara

b. Cara berjalan

c. Cara marah

d. Sifat

2.7.3 Sifat – sifat Pemrograman Java

Sifat – sifat pemrograman Java, antara lain : berorientasi objek,

terdistribusi, multiplatform, dan multithread.

Page 52: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

35

35

Java Berorientasi Objek

Pemrograman Java merupakan pemrograman yang berorientasi objek.

Artinya, penulisan program harus dibuat dalam bentuk objek – objek,

kemudian memodelkan sifat masing – masing objek dalam program. Java

menentukan dan mengatur interaksi antara objek.

Java Bersifat Terdistribusi

Program Java sesuai dengan perkembangan teknologi saat ini, yaitu

teknologi jaringan local seperti jaringan internet. Dalam hal ini, Java dapat

digunakan untuk menyebarkan/mendistribusikan data atau informasi dalam

workstation client, e-mail server, database server, dan webserver (dalam

jaringan komputer local dan internet).

Java Bersifat Multiplatform

Program Java yang sudah diterjemahkan (dikompilasi) dengan benar

dan berhasil dapat dijalankan pada platform yang lain atau pada sistem

operasi yang lain. Java menggunakan prinsip WORA (Write Once and Run

Anywhere). Sekali menuliskan program maka hasil programnya dapat

dijalankan pada sistem operasi yang mana saja. Artinya, sekali menulis

program dalam bahasa Java dan mengkompilasinya maka program tersebut

dapat dijalankan pada berbagai sistem operasi, seperti DOS, Windows,

Linux, MacOS, dan Solaris.

Java Bersifat Multithread

Thread merupakan unit dasar penggunan Central Processing Unit

(CPU) yang terdiri dari Thread_ID, program counter, register set, dan

Page 53: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

36

36

stack. Multithread adalah banyaknya pekerjaan yang dikerjakan dalam

satuan waktu yang hampir bersamaan. Sebagai contoh, suatu web server

mempunyai ratusan client server. Jika web server hanya mempunyai satu

thread, berarti client yang lain harus menunggu. Oleh karena itu,

diperlukan multithread untuk dapat melayani client server.

2.7.4 Compiler dan Interpreter Java

Java mempunyai sistem yang digunakan untuk melakukan compiler

dan interpreter, yang semuanya mendukung program Java dalam

melakukan tugasnya.

a. Decompiler

Decompiler adalah program yang dapat menerjemahkan bahasa

mesin menjadi program yang dapat dibaca (high level language).

b. Compiler dan Interpreter

compiler dan interpreter adalah suatu sistem yang menerjemahkan

bahasa sumber (source language) menjadi bahasa sasaran (target

language). Source program yang ditulis diterjemahkan menjadi

target program. Proses penerjemahan sering disebut “kompilasi”

(compilasi). Perhatikan gambar 2.7.

Page 54: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

37

37

Gambar 2.7 Proses Kompilasisumber : Sariadin (2009)

Class File adalah sejenis objek biner yang dihasilkan dari suatu

sumber yang dikompilasi.

Code Byte adalah format instruksi berupa urutan byte yang

mewakili perintah suatu mesin visual (JVM).

c. Java Virtual Machine (JVM)

Java Virtual Machine (JVM) merupakan aplikasi sederhana yang

ditulis dalam bahasa C untuk mengeksekusi program yang ditrulis

dalam bahasa Java. Pada saat kompilasi (perubahan bahasa

tingkay tinggi ke bahasa tingkat rendah), program tersebut diubah

menjadi kode byte. Kemudian pada saat eksekusi, JVM membaca

kode byte tersebut dan mengubahnya menjadi bahasa mesin yang

dimengerti oleh sistem operasi tempat program tersebut

dijalankan. Bahasa mesin merupakan bahasa level rendah yang

Page 55: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

38

38

hanya dimengerti oleh mesin tertentu (misalnya, Intel), tapi tidak

dapat dimengerti oleh mesin lain (seperti Macintosh).

Karena JVM sangat bergantung pada platform – nya, kode byte ini

dapat dibuat untuk terbebas dari kungkungan platform tertentu.

Kode byte yang dihasilkan dalam proses kompilasi bahasa Java

akan selalu sama untuk setiap sistem operasi atau jenis mesinnya,

tetapi JVM akan mengubah kode byte tersebut menjadi bahasa

mesin tujuannya.

d. Just In Time Compiler (JIT)

Meskipun Java didesain untuk diinterpretasi, namun secara teknis

tidak ada yang menghalangi Java untuk dikompilasi menjadi

bahasa mesin seperti bahas – bahasa pemrograman lainnya. Sun

menyediakan Just In Time Compiler (JIT) untuk mengkompilasi

kode byte tersebut agar menjadi bahasa mesin pada saat yang

bersamaan dengan eksekusinya. Walaupun demikian, pendekatan

JIT ini dapat menghasilkan kemampuan yang lebih dibandingkan

dengan interpretasi biasa.

e. Java Modern

Java digunakan oleh berbagai aplikasi, seperti aplikasi embedded,

aplikasi keuangan, desktop, simulasi pesawat, pemrosesan citra,

game, web, dan aplikasi perusahaan distribusi.

Page 56: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

39

39

2.7.5 Konsep Pemrograman Berorientasi Objek

Konsep pemrograman berorientasi objek atau Object Oriented

Programming (OOP) adalah inti dari pemrograman Java. Semua program

Java merupakan objek. Dasar pemrograman objek pada pemrograman Java,

antara lain :

1. Class

2. Object

3. Attribute

4. Method

5. Constructor

Desain pemrograman berorientasi objek adalah teknik yang

memfokuskan desain pada objek dan class berdasarkan pad askenario dunia

nyata. Hal ini menegaskan keadaan (state), behavior, dan interaksi dari

objek. Selain itu, pemrograman tersebut mempunyai manfaat akan

kebebasan pengembangan, meningkatkan kualitas, mempermudah

pemeliharaan, mempertinggi kemampuan dalam modifikasi, dan

meningkatkan penggunaan kembali software.

1. Class

Class adalah pemodelan dari objek yang menjelaskan data (sifat

karakteristik data) dan fungsi yang dimiliki suatu objek. Class merupakan

wadah (tempat) yang digunakan untuk menciptakan suatu objek.

Dasar pemrograman berorientasi objek pada Java adalah class. Class

dapat membuat atau mendeklarasikan tipe data baru. Ia dijalankan sebagai

Page 57: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

40

40

blueprint. File sumber Java harus diberi nama berdasarkan class di dalam

program.

Bentuk deklarasi class :

Class Nameclass

{

Class Body

}

Secara umum, class memiliki struktur anataomi sebagai berikut :

(modifier1) Class Nameclass (modifier2)

{

Class Body

}

Dalam pemrograman Java, ada beberapa keyword yang sering

digunakan sebagai modifier, yaitu kata tambahan yang terletak di depan

suatu unsure (kelas/data/method). Modifier tersebut berupa abstract, final,

multiple, static, serta tiga jenis lainnya, yaitu public, private, dan protected.

Modifier bersifat opsional (boleh dipakai atau tidak). Modifier public,

private dan protected digunakan untuk menentukan tingkat aksesibilitas

dari suatu kelas/data/method.

Aturan pemberian nama class :

a. Dimulai dengan abjad, tanda underscore (_), atau tanda dolar ($).

b. Nama class tidak boleh dimulai dengan bilangan

(0,1,2,3,4,5,6,7,….). Setelah karakter pertama, dapat diikuti

kombinasi abjad, underscore, dolar, atau bilangan.

Page 58: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

41

41

c. Tidak boleh menggunakan keyword dalam Java (public, class,

boolean, private, dan sebagainya).

d. Tidak boleh menggunakan operator (+.-,=).

e. Java bersifat case sensitive (membedakan huruf kecil dan huruf

kapital).

Nama file source harus sesuai dengan nama class. Misalnya,

menuliskan nama mahasiswa dan alamat mahasiswa.

Nama file source – nya : dataku.java

Nama class : dataku

class dataku{

public static void main(string[] args){

string nama,alamat;

nama = “ Rita”;

alamat = “Jalan Sudirman Medan”;

system.out.printIn(“Nama : “+nama);

system.out.printIn(“Alamat : “+alamat);

}

}

2. Object

Object adalah sebuah entity yang memiliki keadaan, behavior, dan

identitas yang tugasnya dirumuskan dalam suatu lingkup masalah dengan

baik. Object dapat juga disebut suatu instans (instance). Instance adalah

proses pembuatan (perwujudan) suatu kelas menjadi objek. Dalam

Page 59: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

42

42

pembuatan suatu kelas, dapat hanya membuat pendefinisian tipe data baru.

Ada 2 tahap untuk membuat objek baru dari tipe kelas yang telah

ddefinisikan :

Tahap 1 Mendeklarasikan variabel yang digunakan sebagai referensi

ke objek dari kelas yang bersangkutan.

Tahap 2 Menginstansiasi (instans) kelas dengan menggunakan kata

kunci new dan memasukkan instance – nya ke dalam

referensi yang baru dideklarasikan.

Class yang menggunakan kata kunci new secara dinamis akan

mengalokasikam ruang memori untuk menyimpan suatu objek tertentu dan

mengembalikan nilai berupa referensi ke objek yang bersangkutan.

Referensi objek adalah sebuah alamat memori dari objek yang dialokasikan

dengan menggunakan operator new.

3. Attribute

Attribute adalah elemen data dari suatu objek. Attribute menyimpan

informasi tentang objek. Attribute dapat diartikan sebagai data, variabel,

properti, atau sebuah field data. Setiap variabel harus memiliki tipe data

dan diberi nama yang unik untuk membedakan yang satu dengan yang

lainnya. Misalnya, objek mahasiswa.

Attribute dari seorang mahasiswa berupa:

Nomor mahasiswa

Nama mahasiswa

4. Method

Page 60: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

43

43

Method adalah subprogram yang dihubungkan pada definisi class

tertentu. Setiap subprogram memiliki tugas sendiri. Method dalam

pemrograman terstruktur adalah prosedur atau fungsi yang dimiliki suatu

program. Sebuah method menjelaskan behavior dari sebuah objek. Dalam

Java, method ada dua, yaitu :

a. Method Void

Method void adalah method yang tidak mengembalikan nilai.

Untuk method void tipe data kembalian, harus diisi dengan

kata kunci void. Cara kerja method void sama seperti prosedur

(procedure).

b. Method Nonvoid

Method nonvoid adalah method yang mengembalikan nilai.

Untuk mengembalikan suatu nilai tertentu maka di dalam

method harus terdapat statement return yang diikuti dengan

nilai yang akan dikembalikan. Cara kerja method nonvoid

sama seperti fungsi (function).

Pendeklarasian/pendefinisian method :

1. Deklarasi method disebut “judul method” (header

method).

2. Badan method berada di dalam pasangan kurung

kurawal.

Cara penulisan :

Headermethod{

Page 61: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

44

44

Badan method

}

3. Badan method membentuk satu blok.

5. Constructor

Constructor adalah sebuah method khusus yang digunakan dalam

kelas untuk membuat dan menginisialisasi sebuah objek baru. Constructor

berfungsi untuk menginisialisasi nilai terhadap data yang terdapat pada

kelas yang berhubungan. Ketentuan constructor untuk melakukan

inisialisasi:

1. Constructor harus bernama sama dengan nama

kelas.

2. Constructor tidak memverifikasikan tipe data yang

dikirim.

3. Kelas dapat berisi banyak constructor overloading

yang memungkinkan objek diinisialisasi.

2.7.6 Paket (Package)

a. Pengertian Package dalam Java

Cara untuk mengelompokan beberapa class dan interface yang

ada ke dalam kelompoknya masing – masing sehingga memungkinkan

penggunaan nama yang sama dapat dilakukan atau sarana untuk

mengelompokan kelas – kelas dan interface yang berhubungan dalam

suatu pustaka (library) menjadi satu unit disebut package. Package yang

Page 62: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

45

45

secara otomatis di dalam Java API (Aplication Programming Interface)

adalah package java.lang. package ini berisi kelas – kelas dan interface

yang merupakan fundamental bagi semua pemrograman Java, yang

sering disebut “package language”. Sebagai contoh, isi package

java.lang seperti pemakaian atau penulisan dalam program.

Import java.io*;

Import java.awt.*;

Import javax.swing.*;

---

Kita dapat mendeklarasikan kelas – kelas di dalam package

yang tidak dapat diakses oleh statement atau perintah di luar package

(paket yang lain) atau membuat package yang baru sesuai dengan

keperluan program. Istilah package dapat juga dimaksudkan sebagai

pembungkus kelas – kelas agar tersusun rapi.

b. Deklarasi Package

Pernyataan package dituliskan pada awal source code file

sumber. Suatu package mendefinisikan nama ruang kelas – kelas

disimpan dan kelas – kelas dideklarasikan dalam satu paket sehingga

kelas – kelas itu menjadi milik package tersebut. Deklarasi package akan

memberitahu compiler ke library mana suatu kelas akan dikompile atau

dirujuk.

Untuk mengkompilasi atau mengeksekusi program, program

Java perlu mengetahui di mana letak dari semua kelas atau interface

yang akan diperlukan. Oleh karena itu, perlu adanya setting path. Nama

Page 63: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

46

46

package hendaknya dapat menggambarkan atau merepresentasikan nama

kelas – kelas yang terkandung di dalam package tersebut. Penulisan

package harus dengan huruf kecil. Deklarasi package ini adalah suatu

kelas secara utuh yang meliputi variabel dan method yang ada di

dalamnya.

c. Mengimport Package dan Menggunakannya dalam Package

lain

Package yang berisikan class dan interface dapat digunakan

oleh package yang lain. Maksudnya, penggunaan package yang lain

adalah jika program memerlukan class dan interface berada di dalam

direktori yang mana atau package yang mana. Perintahnya menggunakan

import nama package.(namaClass|nama interface|*); atau dapat

menggunakan tanda * (tanda bintang). Tanda bintang * gunanya untuk

menyatakan import semua class atau interface yang terdapat pada

package yang bersangkutan.

2.7.7 Object Oriented Programming (OOP)

a. Ciri – ciri Pemrograman Berorientasi Objek

Object Oriented Programming (OOP) adalah suatu

pemrograman yang berorientasi objek. Ciri – ciri atau karakteristik

pemrograman berorientasi objek, antara lain :

1. Abtraksi (abstraction)

2. Pembungkusan (encapsulation)

Page 64: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

47

47

3. Pewarisan (inheritance)

4. Polimorfisme (polymorphism)

Ciri – ciri pemrograman Java tersebut merupakan dasar – dasar

dari konsep yang terkandung dalam pemrograman Java itu sendiri.

1. Abtraksi (Abstraction)

Abstraksi adalah pengabstrakan atau melakukan seleksi

terhadap aspek – aspek tertentu suatu masalah. Abstraksi digunakan

untuk penyembunyian kerumitan dari suatu proses. Sebagai contoh,

dalam membuat suatu sistem, ada tombol – tombol yang dapat

digunakan. Operator atau pengguna tidak perlu berfikir tentang

pembuatan tombol tersebut, tetapi yang penting mereka dapat

menggunakannya. Contoh lain, mobil adalah kumpulan dari bagian –

bagian kecil. Orang hanya berpikir bahwa mobil sebagai objek yang

telah memiliki perilaku spesifik, yang dapat digunakan sebagai alat

angkut sehingga orang menggunakannya tanpa harus mengetahui

kerumitan proses yang terdapat di dalam mobil tersebut. Artinya, si

pembuat mobil telah menyembunyikan semua kerumitan – kerumitan

proses yang terdapat di dalam mobil dan pengguna tidak perlu

mengetahui bagaimana sistem mesin, transmisi, dan rem bekerja.

2. Pembungkusan (Encapsulation)

Pembungkusan sering pula disebut pengkapsulan. Artinya,

proses membuat paket data objek bersama dengan metode – metodenya.

Berdasarkan kode program, proses memisahkan aspek – aspek objek

Page 65: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

48

48

dilakukan dengan cara pembungkusan. Proses pembungkusan itu sendiri

merupakan cara atau mekanisme untuk melakukan abstraksi. Dalam

pemrograman tradisional, proses semacam ini sering dinamakan dengan

penyembunyian informasi (information hidding). Dalam melakukan

pembungkusan kode dan data di dalam Java, terdapat tiga tingkat akses

yang perlu diketahui, yaitu private, protected, dan public.

3. Pewarisan (Inheritance)

Pewarisan adalah memberikan atau mewariskan sesuatu kepada

keturunan berikutnya. Dalam konteks ini, suatu kelas dalam program

dapat diturunkan menjadi kelas – kelas baru lainnya yang akan mewarisi

beberapa sifat atau perilaku dari kelas induknya. Sebagai contoh, apabila

kita memiliki kelas A dalam program yang dibuat maka kita dapat

membentuk kelas – kelas turunan dari kelas A tersebut (misalnya, kelas

B) yang mewarisi sifat – sifat yang terkandung dalam kelas A. dalam

proses pembuatan kelas turunan tersebut, kita dapat menambahkan sifat

dan perilaku baru ke daam kelas B, yang sebelumnya tidak dimiliki

dalam kelas A. dalam terminologi Java, kelas induk dinamakan dengan

superclass dan kelas turunan disebut dengan subclass. Untuk membuat

class anak atau subclass berdasarkan class yang telah ada, kita dapat

gunakan kata kunci extend dalam mendeklarasikan class. Sebuah class

hanya dapat meng – extend satu class induk.

4. Polimorfisme (Polymorphism)

Page 66: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

49

49

Polimorfisme adalah suatu kejadian ketika objek dapat

mengungkap banyak hal melalui satu cara yang sama. Secara harfiah,

poli berarti banyak dan morph berarti bentuk. Jadi polimorfisme berarti

mempunyai banyak bentuk. Sebagai contoh, ada kelas A yang

diturunkan menjadi kelas B, C, dan D. Dengan konsep polimorfisme,

kita dapat menjalankan method – method yang terdapat pada kelas B, C,

dan D hanya dari objek yang diinstansiasi dengan kelas A. Polimorfisme

memungkinkan kita mengenali kesamaan di antara kelas yang berbeda.

Polimorfisme sering dinamakan dengan dynamic binding, late binding,

atau runtime binding.

2.7.8 Graphical User Interface (GUI)

a. Pengertian Graphical User Interface (GUI)

Graphical User Interface (GUI) adalah suatu aplikasi dalam

Java yang berbasis grafik. GUI membuat hasil dari suatu program

tampak menarik dan nyaman ketika digunakan oleh para user. Java

menyediakan dua kelas untuk GUI, antara lain:

1. AWT (Abstract Windowing Toolkit), yang terdapat dalam

package java.awt.

2. Swing, yang terdapat dalam package javax.swing.

Kedua package tersebut –java.awt dan javax.swing-

mempunyai mekanisme penanganan (event handling) yang bersamaan.

AWT dan Swing menyediakan komponen GUI yang dapat digunakan

dalam membuat aplikasi Java dan Applet.

Page 67: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

50

50

1. AWT (Abstract Windowing Toolkit)

AWT merupakan kumpulan class untuk membuat user

interface dan gambar. AWT terdapat dalam package java.awt. Package

java.awt berisi komponen – komponen GUI yang bersifat platform

sistem operasi. Pada AWT terdapat class – class yang mendukung,

seperti component, container, window, frame, panel, dan dialog. Setiap

class mempunyai beberapa subclass.

- Frame

Frame dapat diubah ukurannya (resize).

Konstruktor :

Frame();

Frame(String tittle);

- Panel

Panel adalah subclass dari AWT yang sering digunakan dalam

pengorganisasian tata letak komponen. Panel sering juga digunakan

bersamaan dengan frame.

2. Swing

Swing merupakan pengembangan dari AWT, khususnya pada

user interface. Swing terdapat pada package javax.swing. package

javax.swing dapat diaplikasikan pada platform sistem operasi.

Implementasi swing dalam program dapat menggunakan class yang

sudah terdapat pada package javax.swing, yaitu JFrame. JDialog,

JOption, JApplet.

Page 68: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

51

51

- JFrame

JFrame mempunyai subclass frame (bingkai atau kerangka).

Konstruktor:

Frame();

Frame(string tittle)

- JDialog

JDialog mempunyai subclass dialog. Dialog biasanya

digunakan bersamaan dengan frame. Perbedaan utama antara dialog

dengan frame adalah dialog tidak dibuat berdiri sendiri, tetapi frame

dapat berdiri sendiri tanpa dialog. Cara mudah menampilkan dialog

adalah dengan cara menggunakan class JOptionPane. Pada class

JOptionPane disediakan beberapa method static yang dapat langsung

digunakan untuk menampilkan dialog standar.

- JOption

JOption digunakan untuk melakukan pilihan pada fasilitas dari

class Swing.

- JApplet

JApplet mempunyai subclass Applet. Applet adalah aplikasi

Java yang dijalankan dalam lingkungan web browser internet. Applet

memiliki tiga method utama, antara lain :

init()

init() merupakan method yang akan dicari dan dieksekusi

pertama pada saat Applet dijalankan.

Page 69: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

52

52

paint()

paint() berfungsi untuk meng-update tampilan.

add()

add() berfungsi untuk menambahkan komponen –

komponen ke Applet.

Untuk menjalankan Applet, kita perlu membuat file dalam

bentuk html (extention html).

2.8 Metode Penelitian

2.8.1 Metode Pengumpulan Data

Metode Pengumpulan data adalah prosedur sistematik dan standar untuk

memperoleh data yang diperlukan (Nazir, 2005). Data terbagi menjadi dua jenis,

yaitu data primer dan data sekunder. Data primer adalah data yang didapatakan

dan diolah sendiri oleh peneliti dari objek penelitian. Sedangkan data sekunder

adalah data yang didapatkan dan diolah peneliti tanpa melakukan pengamatan

langsung pada objek penelitian. Pada penelitian ini, penulis melakukan studi

lapangan untuk mendapatkan data primer dan studi literature untuk mendapatkan

data sekunder.

3. Studi Lapangan

a. Observasi

Observasi atau pengamatan (Observation) merupakan salah satu

teknik pengumpulan fakta/data yang cukup efektif untuk

Page 70: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

53

53

mempelajari suatu sistem. Observasi adalah pengamatan langsung

suatu kejadian yang sedang dilakukan (Jogiyanto, 2005).

b. Wawancara

Wawancara (interview) telah diakui sebagai teknik pengumpulan

data atau fakta yang penting dan banyak dilakukan dalam

pengembangan sistem informasi. Wawancara memungkinkan

analisis sistem sebagai pewawancara untuk mengumpulkan data

secara tatap muka langsung dengan orang yang diwawancarai

(Jogiyanto, 2005:617).

4. Studi Pustaka

Yang dimaksud dengan kepustakaan adalah segala usaha yang

dilakukan oleh peneliti untuk menghimpun informasi yang relevan

dengan topik atau masalah yang akan atau sedang diteliti. Informasi itu

didapat dari buku – buku ilmiah, laporan penelitian, karangan –

karangan ilmiah, peraturan – peraturan, ensiklopedia, dan sumber –

sumber tertulis baik tercetak maupun elektronik lain (Bintarto, 2002).

5. Studi Literatur

Beberapa sumber, ahli, maupun peneliti member istilah kajian literatur

dengan sebutan kajian teori atau studi literatur. Studi literature

merupakan salah satu kegiatan penelitian yang mencakup memeilih

teori – teori hasil penelitian, mengidentifikasi literatur, dan

menganalisa dokumen, serta menerapkan hasil analisis tadi sebagai

landasan teori bagi penyelesaian masalah dalam penelitian yang

Page 71: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

54

54

dilakukan. Maksud dari kegiatan literatur adalah mencari teori atau

landasan berfikir yang tepat sebagai penguat proses penyelesaian

masalah (M. Subana dan Sudrajat, 2005).

Menurut Suwarno dalam bukunya “Metode Penelitian Kuantitatif &

Kualitatif” (Suwarno, 2006), tujuan utama dari studi literatur ialah : 1)

menemukan variabel – variabel yang akan diteliti, 2) membedakan hal

– hal yang sudah dilakukan dan menentukan hal – hal yang diperlukan,

3) melakukan sintesa dan memperoleh perspektif baru, dan 4)

menentukan makna dan hubungan antar variabel. Suwarno juga

berpendapat (Suwarno,2006), sumber – sumber kepustakaan dalam

studi literatur dapat berasal dari 1) abstrak hasil penelitian, 2) indeks,

3) review, 4) jurnal dan 5) buku referensi.

2.8.2 Metode Pengembangan Sistem

Proses pengembangan sistem diartikan sebagai sekumpulan aktivitas,

metode, best practive, deliverable, dan tools – tools otomatis yang digunakan

stakeholder untuk mengembangkan sistem informasi dan software secara

kontinu. Artinya pengembangan dilakukan sampai hal – hal yang menjadi

kebutuhan sistem. Untuk mengembangkan sistem, dibutuhkan metode yang tepat

agar memenuhi tujuannya.

Dalam pengembangan prototipe pendeteksi jarak ini, peneliti

menggunakan metode pendekatan literatif dalam pengembangan sistem atau

biasa disebut Prototipe. Metode Prototipe merupakan salah satu metode

Page 72: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

55

55

pengembangan perangkat lunak yang banyak digunakan. Dengan metode

prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama

proses pembuatan sistem. Secara umum tujuan pengembangan sistem informasi

adalah untuk memberikan kemudahan dalam penyimpanan informasi,

mengurangi biaya dan menghemat waktu, meningkatkan pengendalian,

mendorong pertumbuhan, dan meningkatkan produktifitas.

Berikut akan dibahas dengan lebih jelas alasan peneliti menggunakan

metode prototipe dalam pengembangan sistem pendeteksi jarak beserta tahapan

dari alur prototipe tersebut.

Empat langkah yang menjadi karakteristik metode prototipe yaitu :

1. Pemilihan Fungsi

Mengacu pada pemilahan fungsi yang harus ditampilkan oleh

prototyping. Pemilahan harus selalu dilakukan berdasarkan pada

tugas – tugas yang relevan yang sesuai dengan contoh kasus yang

akan diperagakan.

2. Penyusunan Sistem

Bertujuan untuk memenuhi permintaan akan tersedianya prototipe.

3. Evaluasi

Evaluasi ini dilakukan oleh user apakah prototipe ini sesuai dengan

kebutuhan, jika yam aka sistem dilanjutkan, jika tidak sistem

diulangi.

Page 73: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

56

56

4. Penggunaan Selanjutnya

Perangkat lunak yang telah di evaluasi dan diterima user siap

digunakan.

Tahapan – tahapan Prototyping :

1. Pengumpulan kebutuhan : User dan pengembang bersama – sama

mendefinisikan format seluruh perangkat lunak, mengindentifikasikan

semua kebutuhan, dan garis besar sistem yang akan dibuat.

2. Membangun prorotyping : Membangun prototyping dengan membuat

perancangan sementara yang berfokus pada penyajian kepada user.

3. Evaluasi prototyping : Evaluasi ini dilakukan oleh user apakah

prototyping yang dibangun sudah sesuai keinginan. Jika sudah sesuai

maka langkah 4 akan diambil, jika tidak prototyping direvisi dengan

mengulangi langkah 1 dan 2.

4. Mengkodekan sistem : Dalam tahap ini prorotyping yang sudah

disepakati diterjemahkan kedalam bahasa pemrograman yang sesuai.

5. Pengujian sistem : Setelah sistem sudah menjadi suatu perangkat

lunak yang siap dipakai, harus di tes dahulu sebelum digunakan.

Pengujian ini digunakan dengan White Box, Black Box, Basis Path,

pengujian arsitektur dan lain – lain.

6. Evaluasi sistem : User mengevaluasi apakah sistem yang sudah jadi

sesuai dengan yang diharapkan. Jika ya, langkah 7 dilakukan, jika

tidak, ulangi langkah 4 dan 5.

Page 74: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

57

57

7. Menggunakan sistem : perangkat lunak yang telah diuji dan diterima

user siap untuk digunakan.

Page 75: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

58

BAB III

METODOLOGI PENELITIAN

Pembahasan pada bab 3 ini yaitu penulis mengumpulkan data – data dan

informasi sebagai bahan yang mendukung kebenaran materi uraian pembahasan.

Selain itu untuk menyelesaikan masalah yang ada dalam sebuah perancangan

sistem, maka diperlukan beberapa tahap yang harus dilakukan. Dalam bab ini

dijelaskan mengenai tempat dan waktu penelitian, bahan dan alat serta

metodologi penelitian yang digunakan penulis dalam pengembangan sistem.

3.1 Metode Penelitian

Metode Penelitian ini bertujuan untuk mengetahui sistematika proses

yang berjalan pada pembuatan penulisan. Pada tahapan ini ada beberapa tahap

yang dilakukan seperti observasi, studi pustaka, dan studi literatur. Pada

penelitian ini diperhatikan pemahaman tentang cara berfikir dan cara

melaksanakan hasil berfikir menurut langkah – langkah ilmiah.

3.2 Teknik Pengumpulan Data

Teknik pengumpulan data berguna pada saat melakukan analisis terkait

penelitian yang sedang dilakukan. Data yang didapat nantinya akan digunakan

untuk acuan lebih lanjut. Proses pengumpulan data dapat dilakukan dengan

teknik – teknik tertentu, tergantung pada karakteristik penelitian.

Page 76: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

59

3.2.1 Studi Lapangan

Pada observasi ini penulis mengamati langsung proses penempatan dan

pemindahan komponen produk dari dan menuju tempat tertentu pada sebuah

gudang penyimpanan untuk memperoleh informasi mengenai cara pemindahan

barang.

Hal ini sangat dibutuhkan agar penulis dapat melakukan analisis untuk

membuat suatu solusi terhadap proses pemindahan barang yang ada di gudang

tersebut serta menentukan rancangan pengembangan sistem yang akan dibangun

agar sesuai dengan harapan penulis. Adapun pelaksanaan observasi dilakukan

pada tanggal 7 – 15 April 2014 di sebuah gudang berukuran 30 x 50 m di daerah

Jakarta Timur.

3.2.2 Studi Pustaka

Pada tahapan pengumpulan data dengan cara studi pustaka, penulis

mencari referensi – referensi yang relevan dengan objek yang akan diteliti.

Pencarian referensi dilakukan di perpustakaan, toko buku, maupun secara online

melalui internet. Setelah mendapatkan referensi – referensi yang relevan,

kemudian penulis mencari berbagai informasi yang dibutuhkan dalam penelitian

ini. Adapun informasi yang didapat digunakan dalam penyusunan landasan teori,

metodologi penelitian serta pengembangan aplikasi secara langsung.

Page 77: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

60

3.2.3 Studi Literatur

Pada tahapan ini dilakukan studi literatur dengan cara manual yaitu

mempelajari jurnal yang berhubungan dengan konsep, analisis dan perancangan

aplikasi yang meliputi pemodelan visual melalui blok diagram sistem,

pemrograman dengan menggunakan bahasa Java, serta pemrograman pada

mikrokontroler.

Langkah selanjutnya adalah melakukan pencarian secara online maupun

manual dengan melakukan pembelajaran terhadap tiga jurnal sejenis yang

berkaitan dengan penelitian ini, dari tiga jurnal tersebut diambil beberapa

kesimpulan seperti mikrokontroler yang dipakai, tolak ukur pengujian, kelebihan

dan kekurangan penelitian, dan sebagainya. Berikut adalah tabel hasil studi

literatur dari tiga jurnal penelitian tersebut :

Page 78: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

61

Tabel 3.1 Hasil Studi Literatur

No Judul Penelitian Penulis Asal Universitas Tahun

Penelitian

Kelebihan Kekurangan

1. Detektor Jarak Dengan

Sensor Ultrasonik

Berbasis

Mikrokontroler

Kiki

Prawiroredjo

Tekhnik Elektro,

Universitas

Trisakti

2008 Sensor dapat mendeteksi

benda pada jarak sejauh 2

meter dengan baik.

Menggunakan 4 buah

mikrokontroler, sehingga

tidak ada jeda antara

pembacaan jarak.

Menggunakan dua warna

LED yang berbeda

sebagai penanda bahaya.

Tingkat pesentase

kesalahan sebesar

0.82% hingga 34.40%.

Hasil pengukuran

terkadang tidak akurat

karena interfensi

gelombang lain.

Kesalahan pengukuran

terjadi karena

pembulatan nilai waktu

tempuh pada proses

perhitungan.

2. Pembuatan Alat

Pendeteksi Jarak untuk

Kendaraan Roda Empat

Hendra Surya

Hutama

Universitas

Gunadarma

2011 Menggunakan sensor

inframerah yang

menggunakan media

Sensor cahaya, antara

inframerah dan

photodiode yang

Page 79: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

62

di Dalam Gedung

Parkir Berbasis

Mikrokontroler

cahaya.

Sensor dapat mendeteksi

perbedaan antara cahaya

inframerah terhalang

kendaraan atau tidak.

Begitu juga terhadap

indikator diode pemancar

cahaya dan alarm buzzer

yang digunakan untuk

memberikan informasi.

Tingkat keberhasilan dari

hasil pengujian dapat

diperoleh nilai rata – rata

keberhasilan 95%.

dirancang kurang rapih

dan tegak lurus,

sehingga dibutuhkan

bantuan alat untuk

meluruskannya.

Buzzer akan berbunyi

secara terus menerus

hingga sensor tidak

mendapat masukan.

Kesensitifan pada

resistor yang berubah,

membuat alat harus di

atur ulang sebelum

menjalankannya.

Membutuhkan biaya

perancangan yang

banyak karena

menggunakan 8 buah

sensor dan 4 buah LED,

Page 80: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

63

Buzzer, dan LCD.

3. Alat Pendeteksi Jarak

Pada Kendaraan Roda

Dua Menggunakan

Sensor Ultrasonic

Dengan Tampilan LCD

Dan Sistem Getar

Berbasis Jaringan

Nirkabel Dan

Mikrokontroler Atmega

Arif Usman Sistem

Komputer,

Universitas

Gunadarma

2011 Dapat memberikan

informasi secara realtime

pada pengguna kendaraan

roda dua.

Hanya diletakan

dibagian depan

kendaraan roda dua.

Penggunaan LCD

sebagai pengingat,

kemungkinan akan

menggangu fokus

pengendara roda dua

ketika penggetar

berhasil digerakan oleh

tengangan sensor.

Page 81: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

64

Berdasarkan hasil studi literatur sejenis tersebut maka didapat beberapa

informasi pendukung dan pembanding dalam penelitian ini yang dapat dijadikan

sebagai bahan acuan untuk meningkatkan kelebihan penelitian ini. Adapun

kelebihan yang dapat dideskripsikan dalam penelitian ini antara lain, yaitu :

1. Menggunakan sensor PING yang dapat melakukan pembacaan jarak

sejauh 3 meter, sehingga jangkauan yang dapt dibaca lebih luas tanpa

harus menambah jumlah sensor yang diperlukan.

2. Menggunakan dua buah micro servo yang diletakan di bawah sensor

PING, sehingga sensor akan diputar oleh kedua micro servo dengan

besar sudut mulai dari 450 hingga 3600.

3. Hasil dari pembacaan sensor dapat ditampilkan melalui grafik pada

layar PC, sehingga memudahkan pengguna untuk mengetahui jarak

dan sudut yang terdeteksi oleh sensor.

3.3 Metode Pengembangan Sistem Prototipe

3.3.1 Pemilihan Kebutuhan

Pada tahapan pengumpulan kebutuhan aplikasi, penulis melakukan

observasi pada sebuah gudang penyimpanan, guna mengetahui hal apa saja yang

sebenarnya dibutuhkan dalam proses pemindahan barang. Setelah mengetahui

kebutuhan apa saja yang diperlukan, kemudian melakukan pencarian data – data

dan referensi tentang bagaimana merancang suatu prototipe alat deteksi jarak,

bagaimana menggabungkan komponen – komponen sehingga dapat berjalan

dengan baik.

Page 82: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

65

3.3.2 Membangun Prototyping

Tahapan selanjutnya dalam metode prototyping yaitu membangun

aplikasi secara cepat (prototipe). Pada tahap ini dilakukan pembuatan aplikasi

secara cepat, lebih memfokuskan pada input / output aplikasi sesuai dengan

kebutuhan umum yang diketahui pada tahap pertama. Tahapan ini menghasilkan

prototipe 1. Setelah prototipe 1 dihasilkan maka dilanjutkan ke tahapan

berikutnya yaitu evaluasi prototyping.

3.3.3 Evaluasi Prototyping

Pada tahap ini prototipe 1 di serahkan kepada user untuk di evaluasi dan

untuk mendiskusikan solusi untuk kendala – kendala yang dialami pada saat

pembuatan prototipe. Pada tahap penyerahan prototipe 1 didapatkan informasi

baru tentang kebutuhan aplikasi yang dibangun nantinya. Jika hasil evaluasi

tidak sesuai, maka tahap selanjutnya adalah mengulangi tahapan pengumpulan

kebutuhan.

3.3.4 Mengkodekan Sistem

Setelah mendapatkan informasi baru tentang kebutuhan aplikasi,

prototipe 1 dikembangkan sesuai dengan kebutuhan baru hasil evaluasi prototipe

1 menjadi prototipe 2. Dengan menekankan proses input / output yang di

butuhkan oleh user. Proses pengkodean sistem ini dilakukan dua tahapan,

pertama dilakukan di dalam software arduino, kemudian dilanjutkan dengan

pemrograman pada software netbeans untuk interface di Java.

Page 83: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

66

3.3.5 Pengujian Sistem

Setelah prototipe 2 dirancang, maka dilakukan pengujian sistem, hal ini di

lakukan agar user dan pengembang dapat mengetahui cara kerja sistem serta

kekurangan yang ada pada sistem yang telah dirancang, baik dari segi

pemrograman arduino maupun pemrograman java.

3.3.6 Evaluasi Sistem

Pada tahapan ini, prototipe 2 diserahkan kepada user untuk kembali di

evaluasi, selanjutnya jika user setuju maka proses prototyping dinyatakan selesai.

3.3.7 Penggunaan Sistem

Setelah proses evaluasi oleh user dinyatakan sesuai, maka proses

prototyping sudah selesai, dan sistem dinyatakan dapat digunakan sesuai

kebutuhan user.

3.4 Peralatan Penelitian

Peralatan penelitian yang digunakan dalam penelitian ini antara lain

berupa perangkat keras dan perangkat lunak, yaitu :

1. Perangkat keras

Perangkat keras yang digunakan dalam penelitian ini berupa sebuah

laptop Asus A42F, Arduino Board, Sensor Ping, Mini Servo. Berikut

adalah spesifikasi dari tiap perangkat keras tersebut :

a. Laptop Asus A42F

Page 84: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

67

Laptop Asus A42F memiliki spesifikasi :Processor Intel Core i3-

307M processor (2.4 Ghz, Chace 3MB), DDR3 1066 MHz

SDRAM, 2 x SODIMM socket for expansion up to 8GB SDRAM.

b. Arduino Uno R3 Board

Arduino Uno R3 memiliki spesifikasi Mikrokontroler :

ATMEGA328, Tegangan Operasi : 5V, Tegangan Input

(recommended) : 7 - 12 V, Tegangan Input (limit) : 6-20 V, Pin

digital I/O : 14 (6 diantaranya pin PWM), Pin Analog input : 6,

Arus DC per pin I/O : 40 mA, Arus DC untuk pin 3.3 V : 150 mA,

Flash Memory : 32 KB dengan 0.5KB digunakan untuk

bootloader, SRAM : 2 KB, EEPROM : 1 KB, Kecepatan

Pewaktuan : 16 Mhz.

c. Sensor Ping

Sensor ping ini memiliki spesifikasi Power requirements : +5

VDC, Communication: Positive TTL pulse, Dimensions : 0.81 x

1.8 x 0.6 in (22 x 46 x 16 mm), Operating temp range: +32 to

+158 °F (0 to +70 °C).

d. Mini Servo

Mini servo memiliki spesifikasi Speed : 0.10 detik/60 derajat (4.8

V), Tegangan operasi 4.8V - 6V

Page 85: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

68

2. Perangkat Lunak

Perangkat lunak yang digunakan adalah Arduino yang digunakan

untuk pemrograman mikrokontroler Arduino, Java Netbeans IDE

yang digunakan untuk proses pengkodingan interface, serta Microsoft

Visio untuk pembuatan diagram. Pada sistem operasi yang penulis

gunakan dalam penelitian ini adalah Microsoft Windows 7.

3.5 Kerangka Penelitian

Gambar 3.1 Kerangka Penelitian

Page 86: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

69

BAB IV

ANALISIS DAN PEMBAHASAN

4.1 Pengembangan Prototipe

4.1.1 Pengumpulan Kebutuhan

Untuk mendapatkan hasil sistem yang maksimal peneliti memulai

penelitian dengan menggali semua informasi tentang sistem yang sedang

digunakan yaitu sistem penyimpanan dan pendistribusian barang yang ada di

gudang penyimpanan. Metode yang dilakukan pertama kali adalah mencari

masalah dari sistem tersebut lewat observasi pada sebuah gudang penyimpanan

berukuran 30 x 50 m di daerah Jakarta Timur. Dari metode observasi, peneliti

mendapat kelemahan yaitu dari sistem yang sedang dilakukan, yaitu karyawan

gudang terkadang menemui kesulitan dalam menata jarak antara barang yang di

simpan di gudang, serta proses kerja yang lambat, yang akhirnya menyebabkan

barang – barang tersebut di tumpuk begitu saja, tanpa memperhatikan keadaan

pada barang. Dari hasil observasi tersebut peneliti mencoba penelitiannya dengan

menjadikan sistem pemindahan barang bisa dijalankan secara efisien dengan

menggunakan alat bantu berupa mobil pengangkut yang diberi mikrokontroler

serta dikombinasikan dengan sensor yang bisa mendeteksi jarak benda agar mobil

penganggkut tidak mengenai barang lain yang ada di gudang.

Page 87: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

70

4.1.2 Membangun Prototyping

a. Diagram Blok dan Cara Kerja

Untuk lebih memudahkan proses perakitan dan cara kerja masing –

masing rangkaian maka akan dibuat suatu diagram blok terlebih dahulu. Hal ini

sangat penting, karena dalam pembuatan suatu alat setiap rangkaian saling

berhubungan dan mempengaruhi kinerja alat lainnya. Sehingga hasil yang

didapat sesuai dengan keinginan dan teori yang berlaku. Berikut gambar blok

diagram rancangan alat yang akan dibuat dapat dilihat seperti pada gambar 3.1

Gambar 4.1 Diagram Blok

Fungsi dan kegunaan masing – masing blok adalah sebagai berikut :

1. Sensor PING berfungsi sebagai pengukur jarak terhadap suatu benda

dan mengirimkan sinyal ke mikrokontroler arduino.

2. Mini Servo berfungsi sebagai penggerak sensor, agar sensor dapat

bergerak memutar 360 derajat, agar dapat bergerak mini servo ini

dihubungkan ke mikrikontroler dan di program bersamaan dengan

sensor.

3. Arduino Uno R3 berfungsi menerima sinyal dari sensor PING, dan

sebagai pengendali mini servo beserta buzzer.

ArduinoUno R3

Sensor PING

Mini Servo

Buzzer

Pemrograman Java

Page 88: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

71

4. Buzzer berfungsi sebagai alarm yang dikirimkan oleh arduino yang

bersumber dari sinyal sensor PING.

5. Pemrograman Java berfungsi sebagai indikator keluaran dari arduino

pada proses pembacaan jarak dalam bentuk grafik.

Berikut merupakan alur proses pembacaan jarak yang berjalan pada

prototipe :

Gambar 4.2 Alur Proses Pembacaan Jarak Pada Prototipe

1. Sensor PING ultrasonik memancarkan gelombang 40Khz sesuai

dengan kontrol dari mikrokontroler pengendali. Gelombang ultrasonik

ini melalui udara dengan kecepatan 344 meter per detik, mengenai

objek dan memantul kembali ke sensor. PING mengeluarkan pulsa

output high pada pin SIG setelah memancarkan gelombang ultrasonik

dan setelah gelombang pantulan terdeteksi PING akan membuat

output low pada pin SIG. Sensor PING ini akan membaca objek

Page 89: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

72

secara terus menerus sesuai dengan besar sudut dengan bantuan

penggerak micro servo.

2. Dua buah micro servo akan bergerak memutar 360 derajat berlawanan

dengan arah jarum jam, micro servo ini akan bergerak per 45 derajat,

dikarenakan sensor PING akan membaca objek setiap 45 derajat.

3. Arduino Uno R3 menerima sinyal dari pin SIG sensor, dan

mengendalikan perputaran dua buah micro servo serta pengirim sinyal

sensor PING ke buzzer.

4. Buzzer akan berbunyi ketika sinyal yang terdeteksi oleh sensor PING

kurang dari 200 cm.

5. Hasil yang terdeteksi oleh sensor dikirim ke arduino kemudian dibaca

melalui komunikasi serial port arduino dengan Java dan ditampilkan

dalam bentuk grafik polar.

b. Prototyping

Untuk memulai sebuah proyek, peneliti membuat prototipe sederhana

dengan gambar menggunakan aplikasi bernama Fritzing. Prototipe ini berupa

rangkaian jalur elektronika yang membangun sistem agar bisa bekerja secara

efektif. Bahan – bahan yang diperlukan dalam perancangan yaitu :

Tabel 4.1 Alat dan Bahan

No Nama Jumlah Tipe/ merek

1 Sensor Ultrasonik 1 unit Paralax

Page 90: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

73

2 Arduino UNO 1 unit ATMega 328P

3 Micro Servo 2 unit Tower Pro

4 Buzzer 1 unit -

5 Project Board 1 unit -

6 Kabel 1 m -

7 Baterai 4 unit ABC

Berikut adalah gambar prototipe awal :

Gambar 4.3 Prototipe Awal

4.1.3 Evaluasi Prototyping

Prototipe awal yang telah dibuat peneliti kemudian dirancang ulang

menggunakan aplikasi Fritzing dengan menambahkan output berupa buzzer dan

penambahan daya untuk memberikan daya pada kedua buah micro servo. Setelah

prototipe baru terancang, kemudian peneliti membeli bahan – bahan untuk

perancangan sistem.

Page 91: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

74

Berikut prototipe yang telah dirancang ulang :

Gambar 4.4 Rangkaian Alat

4.1.4 Mengkodekan Sistem

Pada bagian ini, peneliti mulai merancang alat berdasarkan rangkaian yang

telah dibuat sebelumnya. Proses ini terbagi kedalam dua tahapan, yaitu

pengkodean alat, kemudian pengkodean Interface. Perangkat lunak / software

yang digunakan untuk merancang alat yaitu Arduino 1.05. Aplikasi ini dirancang

secara portable, yang berarti aplikasi ini ada tanpa harus melalui proses instalasi.

Aplikasi ini digunakan untuk memprogram IC (Integrated Circuit) dengan bahasa

pemrograman C. Sedangkan software yang digunakan untuk mengkodekan

interface yaitu Netbeans, aplikasi ini menggunakan bahasa pemrograman Java.

Kode program yang digunakan untuk merancang alat pada arduino adalah

sebagai berikut :

Page 92: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

75

#include <Servo.h>

Servo myservo;

Servo myservo2;

int pos = 0;

//============

const int PINGPin = 7;

const int speakerPin = 8;

void setup() {

Serial.begin(9600);

myservo.attach(9);

myservo2.attach(10);

}

void loop()

{

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, LOW); // sound buzzer is defalutswitched off

myservo2.write(0);

delay(500);

myservo.write(0);

delay(500);

/* servo atas dan bawah 0 derajat (depan)ambil data */

pickData();

myservo.write(90);

delay(1000);

/* servo atas 90 derajat (kiri)ambil data */

pickData();

myservo.write(180);

delay(1000);

/* servo atas 180 derajat (belakang)ambil data */

pickData();

Page 93: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

76

Kode program “#include <servo.h>” merupakan library khusus agar bisa

memuat kode intruksi untuk servo. Sedangkan pada kode program “servo

myservo; servo myservo2;” merupakan pembeda yang mendefinisikan bahwa

program ini menggunakan dua buah servo.

Kode 1.

const int PINGPin = 7;

const int speakerPin = 8;

Pada kode 1 berfungsi untuk mendefinisikan pin yang digunakan oleh

sensor PING dan buzzer pada board arduino.

Kode 2.

void setup() {

Serial.begin(9600);

myservo.attach(9);

myservo2.attach(10);

}

myservo2.write(90);

delay(1000);

/* servo bawah 90 derajat (kanan)

ambil data */

pickData();

}

Page 94: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

77

Pada kode 2 berfungsi sebagai inisiasi yang digunakan dalam program,

dalam hal ini inisiasi komunikasi serial pada 9600 bps, serta untuk dua buah servo

yang menggunakan pin 9 dan pin 10. Void setup dalam pemrograman arduino

merupakan fungsi wajib yang harus disertakan dalam memprogram arduino, jika

tidak maka akan menghasilkan eror, isi void setup bisa juga kosong.

Kode 3.

void loop()

{

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, LOW); // sound buzzer is defalutswitched off

myservo2.write(0);

myservo.write(0);

/* servo atas dan bawah 0 derajat (depan)ambil data */

pickData(0);

delay (1000);

myservo.write(45);

/* servo atas 90 derajat (kiri)ambil data */

pickData(315);

delay(1000);

myservo.write(90);

/* servo atas 180 derajat (belakang)ambil data */

pickData(270);

delay(1000);

myservo.write(135);

/* servo atas 135 derajat (kiri)ambil data */

pickData(225);

delay(1000);

Page 95: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

78

myservo.write(180);

/* servo atas 180 derajat (belakang)ambil data */

pickData(180);

delay(1000);

myservo2.write(45);

/*servo bawah 225 derajat (kanan)ambil data */

pickData(135);

delay(1000);

myservo2.write(90);

/*servo bawah 270 derajat (kanan)ambil data */

pickData(90);

delay(1000);

myservo2.write(135);

/*servo bawah 315 derajat (kanan)ambil data */

pickData(45);

delay(1000);

}

Pada kode 3 void loop () berfungsi sebagai tempat menaruh source code

yang akan diproses, void loop ini akan dijalankan setelah void setup selesai.

Sekali dijalankan, maka void loop ini akan berualang secara terus menerus sampai

catu daya di lepaskan.

Kode program “pinMode (speakerPin, OUTPUT)” berfungsi untuk

mendeklarasikan bahwa pin speaker sebagai output. Ketika sebuah pin dijadikan

sebagai output, pin tersebut dapat dijadikan HIGH (ditarik menjadi 5V) atau LOW

Page 96: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

79

(diturunkan menjadi ground) dengan menuliskan kode “digitalWrite (speakerPin,

HIGH).

Pada kode program “myservo.write()” dan “myservo2.write()” berfungsi

untuk meggerakan kedua servo sesuai sudut yang dituliskan dalam tanda (), micro

servo ini dapat berputar hingga 180o.

Kode program “pickData” merupakan kode program yang berfungsi untuk

pengambilan data. Kode program ini di deklarasikan secara khusus di dalam “void

pickData()”, di dalamnya berisi pengaturan untuk sensor dan buzzer. Untuk lebih

jelasnya perhatikan source code berikut.

Void pickData(long sudut){

long duration, cm;

pinMode(PINGPin, OUTPUT);

digitalWrite(PINGPin, LOW);

delayMicroseconds(2);

digitalWrite(PINGPin, HIGH);

delayMicroseconds(5);

digitalWrite(PINGPin, LOW);

// convert the time into a distance

cm = microsecondsToCentimeters(duration);

Page 97: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

80

if(cm < 200) {

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(1000);

digitalWrite(speakerPin, LOW);

delay(200);

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(100);

digitalWrite(speakerPin, LOW);

delay(200);

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(1000);

digitalWrite(speakerPin, LOW);

}

Serial.print(sudut);

Serial.print(",");

Serial.print(cm);

Serial.println();

delay(100);

}

long microsecondsToInches(long microseconds)

{

}

Page 98: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

81

Kode program “pinMode (PINGPin, OUTPUT)” berfungsi untuk

mendeklarasikan bahwa pin sensor PING sebagai output. Pin tersebut ditarik

menjadi menjadi 5V “digitalWrite (PINGPin, HIGH) dan diturunkan menjadi

ground “digitalWrite (PINGPin, LOW).

Pada kode “if (cm >200) { pinMode (speakerPin, OUTPUT) …” berfungsi

untuk mengatur suara yang dihasilkan buzzer, dalam hal ini, ketika sensor

,membaca jarak kurang dari 200 cm, maka buzzer akan berbunyi sebanyak 3 kali

secara continue sampai sensor berhenti membaca jarak kurang dari 200 cm.

Pada kode program “serial.printIn()” berfungsi untuk mencetak hasil pada

serial monitor, dalam hal ini hasil dalam serial monitor di tampilkan dalam bentuk

besar sudut dan jarak yang terbaca ( dalam centimeter).

Setelah alat berhasil dirancang, penulis melanjutkan penelitian dengan

membuat interface (GUI) dengan menggunakan bahasa pemrograman Java

menggunakan software Netbeans. Source code yang dibuat terbagi dalam dua

nama file yaitu ConnectionSoket.java dan main.java. Kedua file ini disimpan

dalam satu paket (package) grafikjava (source code dapat dilihat dalam lampiran).

File ConnectionSoket.java di dalamnya berisi program inti yang

menghubungkan antara arduino dengan program java, sehingga program ini dapat

membaca hasil melalui komunikasi serial port dengan Arduino. Untuk dapat

mengakses komunikasi dengan arduino, pada program ini di beri tambahan library

berupa RXTX Java Library. Library ini sangat mirip dengan Java Communication

Page 99: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

82

API. Nantinya kita dapat menyesuaikan COM port yang digunakan oleh port

Arduino. Selain itu, file ini berisi beberapa perintah yang nantinya dapat diakses

oleh file main.java.

Pada file main.java di dalamnya berisi source code untuk menampilkan

GUI (Graphical User Interface). Dalam file ini terdapat source code :

public ConnectionSoket = c new ConnectionSoket ();

hal ini berarti class main dapat mengakses class ConnectionSoket. File ini akan

menampilkan output berupa grafik, keterangan jarak dan keterangan sudut.

4.2 Uji Coba

Pengujian yang dilakukan pada sistem ini bertujuan untuk mengetahui

tingkat keberhasilan suatu proyek dalam mencapai hasil yang diinginkan.

Berdasarkan pengujian yang dilakukan akan diperoleh hasil data sebagai bukti

bahwa sistem tersebut telah bekerja. Hasil data tersebut kemudian disusun dengan

rapi sedemikian rupa sehingga penulis dapat melakukan analisa terhadap data-data

tersebut dengan baik dan selanjutnya dapat digunakan sebagai bahan untuk

mendapatkan kesimpulan.

4.2.1 Uji Kepekaan Sensor PING

Uji kepekaan sensor PING merupakan sebuah tes untuk melihat fungsi

dari sensor PING yang bekerja secara efektif. Dalam tes ini sensor akan

Page 100: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

83

didekatkan dengan sebuah benda sebagai input , hasil pembacaan jarak pada

sensor dapat dilihat dalam serial monitor, kemudian di ukur secara manual

menggunakan penggaris, jarak antara benda dengan sensor, kemudian di

sesuaikan dengan hasil pembacaan sensor yang ada pada serial monitor.

Gambar 4.5 Sensor PING menerima input

(sumber : dokumentasi pribadi)

Gambar 4.6 Hasil pembacaan sensor PING pada serial monitor

(sumber : capture screen)

Hasil pembacaan yang ditunjukan pada serial monitor (gambar 4.8)

menunjukan 6in, 15cm. Hal ini berarti jarak benda di depan sensor berjarak 6

inchi atau 15 cm.

Page 101: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

84

Gambar 4.7 Hasil pengukuran manual menggunkan penggaris

(sumber : dokumentasi pribadi)

Dari gambar 4.6 didapat hasil pengukuran sejauh 15cm menggunakan

penggaris, maka dengan demikian hasil pembacaan yang terlihat pada serial

monitor dan hasil pengukuran secara manual adalah sama.

4.2.2 Uji Coba Interface (GUI)

Gambar 4.8 Tampilan Grafik Polar

(sumber : capture screen)

Page 102: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

85

Gambar 4.9 Tampilan Keterangan Sudut dan Jarak secara digital

(sumber : capture screen)

Gambar 4.10 Tampilan pemilihan COM port dan tombol on/off

(sumber : capture screen)

Page 103: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

86

Gambar 4.11 Tampilan console dari data yang diambil langsung

pada serial monitor Arduino

(sumber : capture screen)

Gambar 4.12 Tampilan keseluruhan

(sumber : capture screen)

Page 104: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

87

4.2.3 Uji Coba Keseluruhan

Gambar 4.13 Pemasangan Sensor PING dengan dua buah micro servo

(sumber : dokumentasi pribadi)

Gambar 4.14 Tampilan Interface (GUI) saat program dijalankan

(sumber : capture screen)

Page 105: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

88

4.2.4 Uji Kecepatan Antara Forklift dan Prototipe

Untuk mengetahui perbandingan kecepatan antara forklift dan prototipe,

dilakukan perhitungan sebagai berikut :

1. Kecepatan rata – rata forklift pada gudang penyimpan barang adalah 5

km/jam.

2. Kecepatan rata – rata Prototipe :

Prototipe = 1,2 m4 detik = 0,3 m/s= 0,3 m/s1000 m x 3600 s = 1,08 km/jam

Jadi, perbandingan kecepatan antara Forklift dan prototipe adalah

5 : 1,081 : 0,126

4.3 Analisis

Dari hasil pengujian yang telah dilakukan penulis memperoleh beberapa

hasil mengenai penelitian ini, diantaranya :

1. Sensor ultrasonik dapat membaca jarak dengan baik sejauh 3 meter

berdasarkan prinsip pemantulan gelombang ultrasonik.

2. Output yang dihasilkan berupa grafik polar dan indikator suara sebagai

tanda bahwa sensor semakin mendekati benda di sekitarnya.

3. Indikator suara yang dihasilkan buzzer didapat dari hasil pembacaan

sensor PING ketika membaca jarak kurang dari 200 cm.

4. Jarak minimal sensor PING mengirimkan sinyal ke buzzer adalah 200 cm,

dengan delay 1 detik pada kecepatan rata – rata forklift 5 km/jam.

Page 106: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

89

5. Perbandingan kecepatan antara forklift dengan prototipe adalah 1 : 0, 126

dengan delay 1 detik.

6. Masih terdapat jeda antara pergerakan mobil pengangkut dengan jarak

yang tampil dilayar, diakibatkan karena proses kerja prototipe.

Page 107: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

90

BAB V

PENUTUP

Setelah melakukan serangkaian penelitian, maka pada bab ini peneliti

akan memberikan kesimpulan beserta saran yang dapat menjadi pertimbangan

untuk penelitian yang selanjutnya.

5.1 Kesimpulan

Berdasarkan penelitian yang telah dilakukan, maka dapat ditarik

kesimpulan bahwa perancangan prototipe alat deteksi jarak dengan

menggunakan Arduino, sensor ping dan bahasa pemrograman Java telah

berhasil dirancang. Dimana sensor PING ultrasonik dapat membaca jarak

hingga 3m dengan menghasilkan output berupa grafik polar dan indikator

suara sebagai tanda bahwa sensor semakin mendekati benda di sekitarnya.

5.2 Saran

Detektor jarak yang dibuat ini masih dalam bentuk prototipe. Oleh

karena itu pada penelitian selanjutnya dapat mempertimbangkan hal – hal

berikut ini :

1. Pembacaan jarak dan hasil yang ditampilkan dalam grafik

dapat disesuaikan dengan kecepatan rata – rata dari mobil

pengangkut barang.

Page 108: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

91

2. Penambahan fitur penanda bahaya pada interface, sehingga

user dapat lebih memperhatikan jarak yang dibaca oleh sensor.

3. Hasil yang ditampilkan pada layar monitor dapat ditampilkan

pada layar LCD yang disimpan pada mobil pengangkut.

Page 109: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

DAFTAR PUSTAKA

Aji, Suhandono.2011. Desain Prototipe Jembatan Timbang Otomatis Berbasis

Mikrokontroler Dengan Sensor Flexiforce Program Studi Fisika UIN

Syarif Hidayatullah Jakarta : Skripsi Tidak Diterbitkan

Banzi, Massimo.2011.Getting Started with Arduino.Sebastopol : O’Reolly Media

Bintarto, Iwan. 2002.Metodologi Pengembangan Sistem. Yogyakarta : Andi

Evans, Brian. 2011. Beginning Arduino Programming. Apress

Houde, Stephanie & Hill, Charles. 2004. What do Prototypes Prototype?. USA :

Apple Computer,Inc

Jogiyanto HM. 2005. Analisis dan Desain Sistem Informasi : Pendekatan

terstruktur teori dan praktek aplikasi bisnis. Yogyakarta : Andi

Kadir, Abdul. 2013. Panduan Praktis Mempelajari Aplikasi Mikrokontroler dan

Pemrogramannya Menggunakan Arduino. Yogyakarta : Andi

Kurnia, Ahmad. 2007. Sistem Manajemen Gudang. STIE Swadaya Mitra.

Makalah Tidak Diterbitkan

Ladjamudin, Al-bahra. 2004. Analisis dan Desain Sistem Informasi. Yogyakarta :

Graha Ilmu

Mc Leod, Raymond. 2002. Sistem Informasi Manajemen. Jakarta : Prenhallindo

Nazir, Muhammad. 2005. Metode Penelitian. Jakarta : Ghalia Indonesia

Pressman, Roger S. 2002. Rekayasa Perangkat Lunak Buku 1. Yogyakarta : Andi

Page 110: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

Sasongko, Bagus H. 2006. Pemrograman Mikrokontroler Dengan Bahasa C.

Yogyakarta : Andi

Siallagan, Sariadin. 2009. Pemrograman Java Dasar – Dasar Pengenalan dann

Pemahaman. Yogyakarta : Andi

Spell, Brett. 2000. Profesional Java Programming. United States : Wrox Press

Ltd

Tamimi, Ahmad. Prototype Sistem Waktu Nyata Peringatan Dini Banjir

Menggunakan Mikrokontroler Arduino Uno (Studi Kasus Pada Pintu Air

Depok) Program Studi Teknik Informatika UIN Syarif Hidayatullah

Jakarta : Skripsi Tidak Diterbitkan

Tarigan, Pernatin. 2010. Sistem Tertanam (Embedded System).

Usman. 2008. Teknik Antar Muka +Pemograman Mikrokontroler AT89S52.

Yogyakarta : Andi

Widodo. 2005. Panduan Lengkap Belajar Mikrokontroler; Perancangan Sistem

dan Aplikasi.

Widodo. 2007. Radio Detection Ranging. Bandung : PT. Rosdakarya

William de Cooper. 1994. Instrumentasi Elektronik dan Teknik Pengukuran

(Terjemahan). Jakarta : Erlangga

Whitten et al. 2004. Metode Desain & Analisis Sistem Edisi 6 (Terjemahan).

Yogyakarta : Andi

Anonim. Arduino [online] Tersedia : www.arduino.cc diakses 12 Desember 2013

Anonim. PING Paralax [online] Tersedia : www.paralax.com diakses 15 November

2013

. 2006. Metode Penelitian Kuantitatif dan Kualitatif

Page 111: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

Lampiran 1

Source Code Program Java

Page 112: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

L – 1

- ConnectionSoket.java

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package grafikjava;

import gnu.io.CommPort;

import gnu.io.CommPortIdentifier;

import gnu.io.PortInUseException;

import gnu.io.SerialPort;

import java.awt.Color;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.util.Enumeration;

import java.util.HashMap;

import javax.swing.JComboBox;

import javax.swing.JLabel;

/**

*

* @author yuy

Page 113: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

*/

public class ConnectionSoket {

String s = "\r";

byte[] readBuffer = new byte[1];

private Enumeration ports = null;

private HashMap portMap = new HashMap();

private CommPortIdentifier selectedPortIdentifier = null;

private SerialPort serialPort = null;

final static int TIMEOUT = 1000;

final static int SPACE_ASCII = 32;

final static int DASH_ASCII = 45;

final static int NEW_LINE_ASCII = 10;

private InputStream input = null;

private OutputStream output = null;

int indeks = 0;

public void searchForPorts(JComboBox jb) {

ports = CommPortIdentifier.getPortIdentifiers();

while (ports.hasMoreElements()) {

CommPortIdentifier curPort = (CommPortIdentifier)ports.nextElement();

if (curPort.getPortType() ==CommPortIdentifier.PORT_SERIAL) {

jb.addItem(curPort.getName());

portMap.put(curPort.getName(), curPort);

}

}

}

Page 114: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

public boolean initIOStream() {

//return value for whather opening the streams issuccessful or not

boolean successful = false;

String a;

int sudut;

float jarak;

String data[];

try {

input = serialPort.getInputStream();

input.read(readBuffer);

indeks++;

a = new String(readBuffer);

if (a.equals("\n")) {

s = s.replaceAll("\r", "");

data = s.split(",");

if (indeks > 1 && indeks < 11 && data.length == 2){

sudut = Integer.valueOf(data[0]);

jarak = Float.valueOf(data[1]);

main.ta_console.append("Sudut: " + sudut + "Jarak: " + jarak);

main.ta_console.append("\n");

main.ta_console.setCaretPosition(main.ta_console.getDocument().getLength());

if (sudut == 0) {

main.series.updateByIndex(0, jarak);

main.l_depan.setText(jarak + " cm");

alretLabel(main.l_depan, jarak);

} else if (sudut == 45) {

main.series.updateByIndex(1, jarak);

Page 115: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

main.l_kanan_depan.setText(jarak + " cm");

alretLabel(main.l_kanan_depan, jarak);

} else if (sudut == 90) {

main.series.updateByIndex(2, jarak);

main.l_kanan.setText(jarak + " cm");

alretLabel(main.l_kanan, jarak);

} else if (sudut == 135) {

main.series.updateByIndex(3, jarak);

main.l_kanan_belakang.setText(jarak + "cm");

alretLabel(main.l_kanan_belakang, jarak);

} else if (sudut == 180) {

main.series.updateByIndex(4, jarak);

main.l_belakang.setText(jarak + " cm");

alretLabel(main.l_belakang, jarak);

} else if (sudut == 225) {

main.series.updateByIndex(5, jarak);

main.l_kiri_belakang.setText(jarak + "cm");

alretLabel(main.l_kiri_belakang, jarak);

} else if (sudut == 270) {

main.series.updateByIndex(6, jarak);

main.l_kiri.setText(jarak + " cm");

alretLabel(main.l_kiri, jarak);

} else if (sudut == 315) {

main.series.updateByIndex(7, jarak);

main.l_kiri_depan.setText(jarak + " cm");

alretLabel(main.l_kiri_depan, jarak);

}

}

indeks = 0;

Page 116: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

s = "\r";

} else {

s = s + a;

}

successful = true;

return successful;

} catch (IOException e) {

return successful;

}

}

void alretLabel(JLabel label, float value) {

if (value < 200) {

label.setForeground(Color.red);

} else {

label.setForeground(Color.black);

}

}

public void disconnect() {

//close the serial port

try {

serialPort.removeEventListener();

serialPort.close();

input.close();

} catch (Exception e) {

}

}

public void connect(JComboBox jb) {

Page 117: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

String selectedPort =String.valueOf(jb.getSelectedItem());

selectedPortIdentifier = (CommPortIdentifier)portMap.get(selectedPort);

CommPort commPort = null;

try {

commPort =selectedPortIdentifier.open("TigerControlPanel", TIMEOUT);

serialPort = (SerialPort) commPort;

serialPort.setSerialPortParams(9600,

SerialPort.DATABITS_8,

SerialPort.STOPBITS_1,

SerialPort.PARITY_NONE);

} catch (PortInUseException e) {

} catch (Exception e) {

}

}

}

- main.java

package grafikjava;

/** To change this template, choose Tools | Templates* and open the template in the editor.

package grafikjava;

import org.jfree.chart.ChartFactory;import org.jfree.chart.JFreeChart;import org.jfree.chart.PolarChartPanel;*/

import org.jfree.chart.ChartFactory;import org.jfree.chart.JFreeChart;

Page 118: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

import org.jfree.chart.PolarChartPanel;import org.jfree.chart.plot.PolarPlot;import org.jfree.chart.renderer.DefaultPolarItemRenderer;import org.jfree.data.xy.XYDataset;import org.jfree.data.xy.XYSeries;import org.jfree.data.xy.XYSeriesCollection;import org.jfree.ui.ApplicationFrame;import org.jfree.ui.RefineryUtilities;

/**** @author yuy*/

public class main extends ApplicationFrame implementsRunnable {

/*** Creates new form main*/

public ConnectionSoket c = new ConnectionSoket();protected static Thread th;private volatile boolean start;public static XYSeries series = new XYSeries("Jarak");JFreeChart chart;

public main(String title) {super(title);XYDataset dataset = createDataset();chart = createChart(dataset);initComponents();b_off.setVisible(false);start = false;c.searchForPorts(cb_COM);

}

private XYDataset createDataset() {XYSeriesCollection data = new XYSeriesCollection();series.add(0, 300);series.add(45, 300);series.add(90, 300);series.add(135, 300);series.add(180, 300);series.add(225, 300);series.add(270, 300);series.add(315, 300);data.addSeries(series);return data;

}

private JFreeChart createChart(final XYDataset dataset){

chart = ChartFactory.createPolarChart("Grafik Polar Jarak Antara Alat Dengan

Benda", dataset, true, true, false);final PolarPlot plot = (PolarPlot) chart.getPlot();

Page 119: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

final DefaultPolarItemRenderer renderer =(DefaultPolarItemRenderer) plot.getRenderer();

renderer.setSeriesFilled(2, true);return chart;

}

/*** This method is called from within the constructor to

initialize the form.* WARNING: Do NOT modify this code. The content of this

method is always* regenerated by the Form Editor.*/

@SuppressWarnings("unchecked")// <editor-fold defaultstate="collapsed" desc="Generated

Code">private void initComponents() {

jPanel1 = new javax.swing.JPanel();cb_COM = new javax.swing.JComboBox();b_on = new javax.swing.JButton();b_off = new javax.swing.JButton();jLabel1 = new javax.swing.JLabel();jPanel2 = new javax.swing.JPanel();jPanel5 = new javax.swing.JPanel();jPanel6 = new javax.swing.JPanel();jPanel7 = new javax.swing.JPanel();jLabel2 = new javax.swing.JLabel();jLabel3 = new javax.swing.JLabel();jLabel4 = new javax.swing.JLabel();jLabel5 = new javax.swing.JLabel();jLabel6 = new javax.swing.JLabel();jLabel7 = new javax.swing.JLabel();jLabel8 = new javax.swing.JLabel();jLabel9 = new javax.swing.JLabel();l_depan = new javax.swing.JLabel();l_kanan_depan = new javax.swing.JLabel();l_kanan = new javax.swing.JLabel();l_kanan_belakang = new javax.swing.JLabel();l_belakang = new javax.swing.JLabel();l_kiri_belakang = new javax.swing.JLabel();l_kiri = new javax.swing.JLabel();l_kiri_depan = new javax.swing.JLabel();jLabel11 = new javax.swing.JLabel();jPanel8 = new javax.swing.JPanel();jLabel10 = new javax.swing.JLabel();jScrollPane1 = new javax.swing.JScrollPane();ta_console = new javax.swing.JTextArea();jPanel3 = new javax.swing.JPanel();jPanel4 = new javax.swing.JPanel();grafik = new PolarChartPanel(chart);

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

Page 120: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

b_on.setText("On");b_on.addActionListener(new

java.awt.event.ActionListener() {public void

actionPerformed(java.awt.event.ActionEvent evt) {b_onActionPerformed(evt);

}});

b_off.setText("Off");b_off.addActionListener(new

java.awt.event.ActionListener() {public void

actionPerformed(java.awt.event.ActionEvent evt) {b_offActionPerformed(evt);

}});

jLabel1.setText("COM:");

javax.swing.GroupLayout jPanel1Layout = newjavax.swing.GroupLayout(jPanel1);

jPanel1.setLayout(jPanel1Layout);jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel1Layout.createSequentialGroup().addContainerGap().addComponent(jLabel1).addGap(3, 3, 3).addComponent(cb_COM,

javax.swing.GroupLayout.PREFERRED_SIZE, 174,javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(b_on,javax.swing.GroupLayout.PREFERRED_SIZE, 63,javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(b_off,javax.swing.GroupLayout.PREFERRED_SIZE, 70,javax.swing.GroupLayout.PREFERRED_SIZE)

.addContainerGap(571, Short.MAX_VALUE)));jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,jPanel1Layout.createSequentialGroup()

.addContainerGap(16, Short.MAX_VALUE)

Page 121: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(b_on)

.addComponent(b_off)

.addComponent(cb_COM,javax.swing.GroupLayout.PREFERRED_SIZE,javax.swing.GroupLayout.DEFAULT_SIZE,javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel1)).addContainerGap())

);

getContentPane().add(jPanel1,java.awt.BorderLayout.PAGE_START);

jPanel2.setLayout(new java.awt.BorderLayout());

javax.swing.GroupLayout jPanel5Layout = newjavax.swing.GroupLayout(jPanel5);

jPanel5.setLayout(jPanel5Layout);jPanel5Layout.setHorizontalGroup(

jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 21, Short.MAX_VALUE));jPanel5Layout.setVerticalGroup(

jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 505, Short.MAX_VALUE));

jPanel2.add(jPanel5,java.awt.BorderLayout.LINE_END);

jPanel6.setLayout(new java.awt.BorderLayout());

jLabel2.setText("Depan");

jLabel3.setText("Kanan-depan");

jLabel4.setText("Kanan");

jLabel5.setText("Kanan-belakang");

jLabel6.setText("Belakang");

jLabel7.setText("Kiri-belakang");

jLabel8.setText("Kiri");

jLabel9.setText("Kiri-depan");

l_depan.setText("300 cm");

Page 122: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

l_kanan_depan.setText("300 cm");

l_kanan.setText("300 cm");

l_kanan_belakang.setText("300 cm");

l_belakang.setText("300 cm");

l_kiri_belakang.setText("300 cm");

l_kiri.setText("300 cm");

l_kiri_depan.setText("300 cm");

jLabel11.setText("Keterangan :");

javax.swing.GroupLayout jPanel7Layout = newjavax.swing.GroupLayout(jPanel7);

jPanel7.setLayout(jPanel7Layout);jPanel7Layout.setHorizontalGroup(

jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel7Layout.createSequentialGroup().addContainerGap()

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel2)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 150, Short.MAX_VALUE)

.addComponent(l_depan))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel9)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 133, Short.MAX_VALUE)

.addComponent(l_kiri_depan))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel3)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 117, Short.MAX_VALUE)

.addComponent(l_kanan_depan))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel4)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 151, Short.MAX_VALUE)

Page 123: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

.addComponent(l_kanan))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel5)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 104, Short.MAX_VALUE)

.addComponent(l_kanan_belakang))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel6)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 138, Short.MAX_VALUE)

.addComponent(l_belakang))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel7)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 120, Short.MAX_VALUE)

.addComponent(l_kiri_belakang))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel8)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 167, Short.MAX_VALUE)

.addComponent(l_kiri))

.addGroup(jPanel7Layout.createSequentialGroup().addComponent(jLabel11).addGap(0, 152, Short.MAX_VALUE)))

.addContainerGap()));jPanel7Layout.setVerticalGroup(

jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel7Layout.createSequentialGroup().addContainerGap().addComponent(jLabel11).addGap(24, 24, 24)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel2)

.addComponent(l_depan)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel3)

.addComponent(l_kanan_depan)).addGap(18, 18, 18)

Page 124: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel4)

.addComponent(l_kanan)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel5)

.addComponent(l_kanan_belakang)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel6)

.addComponent(l_belakang)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel7)

.addComponent(l_kiri_belakang)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel8)

.addComponent(l_kiri)).addGap(18, 18, 18)

.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel9)

.addComponent(l_kiri_depan)).addContainerGap(23, Short.MAX_VALUE))

);

jPanel6.add(jPanel7,java.awt.BorderLayout.PAGE_START);

jLabel10.setText("Console:");

ta_console.setColumns(20);ta_console.setRows(5);ta_console.setCursor(new

java.awt.Cursor(java.awt.Cursor.TEXT_CURSOR));ta_console.setDragEnabled(true);ta_console.setFocusCycleRoot(true);ta_console.setOpaque(false);jScrollPane1.setViewportView(ta_console);

javax.swing.GroupLayout jPanel8Layout = newjavax.swing.GroupLayout(jPanel8);

jPanel8.setLayout(jPanel8Layout);jPanel8Layout.setHorizontalGroup(

Page 125: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel8Layout.createSequentialGroup().addContainerGap()

.addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel10)

.addComponent(jScrollPane1,javax.swing.GroupLayout.PREFERRED_SIZE, 212,javax.swing.GroupLayout.PREFERRED_SIZE))

.addContainerGap(13, Short.MAX_VALUE)));jPanel8Layout.setVerticalGroup(

jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel8Layout.createSequentialGroup().addContainerGap().addComponent(jLabel10)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

.addComponent(jScrollPane1,javax.swing.GroupLayout.DEFAULT_SIZE, 153, Short.MAX_VALUE)

.addContainerGap()));

jPanel6.add(jPanel8, java.awt.BorderLayout.CENTER);

jPanel2.add(jPanel6, java.awt.BorderLayout.CENTER);

getContentPane().add(jPanel2,java.awt.BorderLayout.LINE_END);

javax.swing.GroupLayout jPanel3Layout = newjavax.swing.GroupLayout(jPanel3);

jPanel3.setLayout(jPanel3Layout);jPanel3Layout.setHorizontalGroup(

jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 29, Short.MAX_VALUE));jPanel3Layout.setVerticalGroup(

jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 505, Short.MAX_VALUE));

getContentPane().add(jPanel3,java.awt.BorderLayout.LINE_START);

Page 126: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

javax.swing.GroupLayout jPanel4Layout = newjavax.swing.GroupLayout(jPanel4);

jPanel4.setLayout(jPanel4Layout);jPanel4Layout.setHorizontalGroup(

jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 938, Short.MAX_VALUE));jPanel4Layout.setVerticalGroup(

jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 32, Short.MAX_VALUE));

getContentPane().add(jPanel4,java.awt.BorderLayout.PAGE_END);

javax.swing.GroupLayout grafikLayout = newjavax.swing.GroupLayout(grafik);

grafik.setLayout(grafikLayout);grafikLayout.setHorizontalGroup(

grafikLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 653, Short.MAX_VALUE));grafikLayout.setVerticalGroup(

grafikLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGap(0, 505, Short.MAX_VALUE));

getContentPane().add(grafik,java.awt.BorderLayout.CENTER);

pack();}// </editor-fold>

private voidb_onActionPerformed(java.awt.event.ActionEvent evt) {

c.connect(cb_COM);cb_COM.setEnabled(false);b_on.setVisible(false);b_off.setVisible(true);start = true;mulai();// TODO add your handling code here:

}

private voidb_offActionPerformed(java.awt.event.ActionEvent evt) {

b_off.setVisible(false);b_on.setVisible(true);

Page 127: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

cb_COM.setEnabled(true);start = false;c.disconnect();// TODO add your handling code here:

}

private void mulai() {th = new Thread(this);th.start();

}

@Overridepublic void run() {

while (start) {c.initIOStream();

}}

/*** @param args the command line arguments*/

public static void main(String args[]) {main demo = new main("Grafik Polar Jarak Antara Alat

Dengan Benda");demo.pack();RefineryUtilities.centerFrameOnScreen(demo);demo.setVisible(true);

}// Variables declaration - do not modifyprivate javax.swing.JButton b_off;private javax.swing.JButton b_on;private javax.swing.JComboBox cb_COM;private javax.swing.JPanel grafik;private javax.swing.JLabel jLabel1;private javax.swing.JLabel jLabel10;private javax.swing.JLabel jLabel11;private javax.swing.JLabel jLabel2;private javax.swing.JLabel jLabel3;private javax.swing.JLabel jLabel4;private javax.swing.JLabel jLabel5;private javax.swing.JLabel jLabel6;private javax.swing.JLabel jLabel7;private javax.swing.JLabel jLabel8;private javax.swing.JLabel jLabel9;private javax.swing.JPanel jPanel1;private javax.swing.JPanel jPanel2;private javax.swing.JPanel jPanel3;private javax.swing.JPanel jPanel4;private javax.swing.JPanel jPanel5;private javax.swing.JPanel jPanel6;private javax.swing.JPanel jPanel7;private javax.swing.JPanel jPanel8;private javax.swing.JScrollPane jScrollPane1;public static javax.swing.JLabel l_belakang;public static javax.swing.JLabel l_depan;public static javax.swing.JLabel l_kanan;

Page 128: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

public static javax.swing.JLabel l_kanan_belakang;public static javax.swing.JLabel l_kanan_depan;public static javax.swing.JLabel l_kiri;public static javax.swing.JLabel l_kiri_belakang;public static javax.swing.JLabel l_kiri_depan;public static javax.swing.JTextArea ta_console;// End of variables declaration

}

Page 129: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta
Page 130: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

Lampiran 2

Source Code Program Arduino

L – 2

Page 131: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

#include <Servo.h>

Servo myservo; // create servo object to control a servo

// a maximum of eight servo objects can be created

Servo myservo2;

int pos = 0; // variable to store the servo position

//=================================

const int pingPin = 7;

const int speakerPin = 8;

void setup() {

// initialize serial communication:

Serial.begin(9600);

myservo.attach(9); // attaches the servo on pin 9 to the servoobject untuk atas

myservo2.attach(10); // untuk bawah

}

void loop()

{

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, LOW); // sound buzzer is defalutswitched off

myservo2.write(0);

myservo.write(0);

/*================================

servo atas dan bawah 0 derajat (depan)

Page 132: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

ambil data

==================================*/

pickData(0);

delay(1000);

myservo.write(45);

/*===================================

servo atas 45 derajat (kiri)

ambil data

======================================*/

pickData(315);

delay(1000);

myservo.write(90);

/*===================================

servo atas 90 derajat (kiri)

ambil data

======================================*/

pickData(270);

delay(1000);

myservo.write(135);

/*===================================

servo atas 135 derajat (kiri)

ambil data

======================================*/

pickData(225);

delay(1000);

myservo.write(180);

Page 133: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

/*====================================

servo atas 180 derajat (belakang)

ambil data

======================================*/

pickData(180);

delay(1000);

myservo2.write(45);

/*====================================

servo bawah 225 derajat (kanan)

ambil data

======================================*/

pickData(135);

delay(1000);

myservo2.write(90);

/*====================================

servo bawah 270 derajat (kanan)

ambil data

======================================*/

pickData(90);

delay(1000);

myservo2.write(135);

/*====================================

servo bawah 315 derajat (kanan)

ambil data

======================================*/

pickData(45);

delay(1000);

Page 134: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

}

void pickData(long sudut){

long duration, cm;

pinMode(pingPin, OUTPUT);

digitalWrite(pingPin, LOW);

delayMicroseconds(2);

digitalWrite(pingPin, HIGH);

delayMicroseconds(5);

digitalWrite(pingPin, LOW);

// The same pin is used to read the signal from the PING))): aHIGH

// pulse whose duration is the time (in microseconds) from thesending

// of the ping to the reception of its echo off of an object.

pinMode(pingPin, INPUT);

duration = pulseIn(pingPin, HIGH);

// convert the time into a distance

//inches = microsecondsToInches(duration);

cm = microsecondsToCentimeters(duration);

if(cm < 200) {

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(1000);

digitalWrite(speakerPin, LOW);

Page 135: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(100);

digitalWrite(speakerPin, LOW);

delay(200);

pinMode(speakerPin, OUTPUT);

digitalWrite(speakerPin, HIGH);

delay(1000);

digitalWrite(speakerPin, LOW);

}

Serial.print(sudut);

Serial.print(",");

Serial.print(cm);

Serial.println();

}

long microsecondsToInches(long microseconds)

{

return microseconds / 74 / 2;

}

long microsecondsToCentimeters(long microseconds)

{

return microseconds / 29 / 2;

}

Page 136: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

Lampiran 3

Tampilan Software Arduino

L – 3

Page 137: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

- Tampilan logo dan label tampilan awal

- Tampilan Sorce code dalam software Arduino

Page 138: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta

- Tampilan Upload ke mikrokontroler

- Hasil Pembacaan Sensor Pada Serial Monitor

Page 139: RANCANG BANGUN PROTOTIPE ALAT DETEKSI …repository.uinjkt.ac.id/dspace/bitstream/123456789/28963/1/NURUL... · pemrograman Java sebagai output yang menghasilkan indikator suara beserta