rancang bangun aplikasi pengukur tinggi...

18
RANCANG BANGUN APLIKASI PENGUKUR TINGGI GEDUNG DENGAN METODE PERBANDINGAN TRIGONOMETRI BERBASIS ANDROID NASKAH PUBLIKASI diajukan oleh Afif Nuril Huda 10.11.4282 kepada JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2014

Upload: votuyen

Post on 04-May-2018

223 views

Category:

Documents


5 download

TRANSCRIPT

RANCANG BANGUN APLIKASI PENGUKUR TINGGI GEDUNG DENGAN

METODE PERBANDINGAN TRIGONOMETRI BERBASIS ANDROID

NASKAH PUBLIKASI

diajukan oleh

Afif Nuril Huda

10.11.4282

kepada

JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA YOGYAKARTA

2014

RANCANG BANGUN APLIKASI PENGUKUR TINGGI GEDUNG DENGAN METODE

PERBANDINGAN TRIGONOMETRI BERBASIS ANDROID

DESIGN AND BUILD APPLICATIONS GAUGES BUILDING HEIGHT WITH

TRIGONOMETRIC COMPARISON METHODS ANDROID-BASED

Afif Nuril Huda Andi Sunyoto

Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA

ABSTRACT

Knowing the height of a building is probably the thing that is not very important for the

people, but the work / activity to make certain that high is very helpful. Storey building high

would be beneficial for the painter to take into account how many buckets of paint to be used.

Therefore, altimeter (tool to measure the height) of building applications made to facilitate the

calculation of building height.

This application is devoted for android smartphone because all android smartphones

ranging from the cheapest to the most expensive has a GPS (Global Positioning System),

accelerometer sensor, and the camera are needed for the calculation of this application.

calculation method used in this application trigonometric comparison with high object is as

high triangle, distance of the object to the user as the base triangle, and triangular corner taken

from the accelerometer sensor.

According with the name of this application is to measure the height. The application

is still in development so their accuracy still lacking, such as the accuracy in distance

depending on the signal captured by GPS and the angle taken by the accelerometer sensor

and camera.

Keywords : accelerometer, altimeter of building, android, GPS (Global Positioning System),

height gauge, trigonometric comparison.

1. Pendahuluan

Mengetahui berapa tinggi suatu gedung bertingkat, pohon, atau tiang bendera

mungkin adalah hal yang tidak penting bagi orang-orang, namun bagi suatu pekerjaan atau

aktifitas tertentu tinggi tersebut adalah informasi yang sangat membantu. Tinggi gedung

bertingkat akan bermanfaat bagi tukang cat yang mengecat tembok gedung tersebut, dengan

tinggi gedung sang tukang bisa menghitung luas tembok yang akan dicat, sehingga tukang

tersebut bisa memperhitungkan berapa ember cat yang dibutuhkan. Kemudian Seorang

penebang pohon tidak bisa menghitung tinggi pohon. Jika penebang tidak tahu tinggi pohon

bisa berakibat pada lingkungan sekitar, rumah di dekat pohon bisa saja tertimpa pohon,

namun jika si penebang tahu tinggi pohon tersebut si penebang bisa mengukur jangkauan

tumbangnya pohon dan bisa mengarahkan arah tumbang pohon agar lingkungan sekitarnya

aman. Seseorang membeli tali untuk tiang bendera, namun tidak tahu tinggi tiang tersebut,

akibatnya tali yang dibeli terlalu pendek atau terlalu panjang. Untuk membeli tali yang pas

orang tersebut membutuhkan tinggi tiang untuk mengetahui berapa panjang tali yang

dibutuhkan.

Dari tiga contoh kasus diatas mengetahui tinggi gedung yang akan dicat untuk

menghitung berapa ember yang dibutuhkan, mengetahui tinggi pohon yang akan di tebang

untuk memperkirakan jangkauan jatuhnya pohon tersebut, dan mengetahui tinggi tiang

bendera untuk mengukur panjang tali. Kegiatan tersebut perlu mengetahui tinggi objek yang

akan mereka hadapi, akan tetapi mereka tidak bisa mengukur tinggi tersebut karena tidak

mungkin mengukur tinggi dengan meteran dari bawah sampai atas.

2. Landasan Teori

Location-Based Service (LBS)

Menurut Riyanto (2010) Layanan Berbasis Lokasi dapat definiskan sebagai utilitas

layanan secara dinamis mampu membedakan dan mentrasmisikan posisi seseorang dalam

jaringan mobile.

Menurut Reichenbacher (2004) Layanan berbasis lokasi memiliki lima kemampuan

dasar yaitu : locating ,searching, navigating ,identifying, checking. Locating merupakan

kemampuan untuk mengetahui tempat atau lokasi objek tertentu, searching merupakan

kemampuan untuk mencari objek pada suatu daerah, navigating berguna untuk menunjukkan

arah menuju lokasi, indentifying merupakan kemampuan untuk mengenali suatu objek pada

suatu lokasi dan menampilkan data yang berkaitan dengan objek tersebut, sedangkan

checking merupakan kemampuan untuk mencari dan memeriksa suatu event yang terjadi

pada daerah tersebut.

2.2.1. GPS (Global Positioning System)

GPS adalah sistem untuk menentukan letak di permukaan bumi dengan bantuan

penyelarasan (synchronization) sinyal satelit. Sistem ini menggunakan 24 satelit yang

mengirimkan sinyal gelombang mikro ke Bumi. Sinyal ini diterima oleh alat penerima di

permukaan, dan digunakan untuk menentukan letak, kecepatan, arah, dan waktu.

Google Map API

Edy Irwansyah (2013) menjelaskan bahwa Google Maps merupakan bentuk layanan

dari Google yang menawarkan teknologi pemetaan terkini yang dapat digunakan untuk

berbagai macam kebutuhan. Google Maps mempunyai platform opensource sehingga dapat

digunakan dengan bebas.

Google Maps API adalah kumpulan API yang memungkinkan pengguna

menghamparkan data di Google Map yang telah disesuaikan. Pengguna dapat membuat

aplikasi web dan seluler menarik dengan platform pemetaan canggih dari Google termasuk

basis data citra satelit, pemandangan jalan, profil ketinggian, petunjuk arah mengemudi, peta

dengan sentuhan gaya, demografi, analisis, dan tempat yang luas. Dengan cakupan global

yang paling akurat di dunia dan komunitas pemetaan yang aktif dalam membuat pembaruan

setiap harinya, pengguna akan mendapatkan manfaat dari layanan yang terus-menerus

ditingkatkan.

Sensor Accelerometer

Accelerometers, seperti namanya, digunakan untuk mengukur percepatan.

Percepatan didefinisikan sebagai laju perubahan kecepatan, sehingga mereka

mengukur seberapa cepat kecepatan perangkat berubah dalam arah tertentu. Menggunakan

accelerometer, Anda dapat mendeteksi gerakan dan, lebih berguna, laju perubahan

kecepatan gerakan itu.

Sangat penting untuk dicatat bahwa accelerometers tidak mengukur kecepatan,

sehingga Anda tidak dapat mengukur kecepatan secara langsung didasarkan pada

pembacaan accelerometer tunggal. Sebaliknya, Anda perlu untuk mengukur perubahan

dalam percepatan dari waktu ke waktu.

Umumnya, Anda akan tertarik pada perubahan percepatan relatif terhadap keadaan

istirahat, atau gerakan cepat (ditandai dengan perubahan yang cepat dalam percepatan )

seperti gerakan yang digunakan untuk input pengguna . Dalam kasus yang pertama, Anda

akan sering perlu untuk mengkalibrasi perangkat untuk menghitung orientasi awal dan

percepatan untuk mengambil efek tersebut ke dalam rekening hasil di masa mendatang.

Android SDK (Software Development Kit)

Android SDK adalah tools API (Application Programming Interface) yang diperlukan

untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa

pemrograman Java. Saat ini disediakan Android SDK (Software Development kit) sebagai alat

bantu dan API untuk mulai mengembangkan aplikasi pada platform Android menggunakan

bahasa pemrograman Java. Source code SDK Android ini dapat dilihat dan unduh langsung

di situs resmi pengembang SDK Android di http://www.developer.Android.com.

(Safaat:2012:5)

ADT (Android Development Tools)

Safaat (2012 : 6) juga memaparkan bahwa Android Development Tools (ADT) adalah

plug-in yang didesain untuk IDE Eclipse yang memberi kita kemudahan dalam

mengembangkan aplikasi Android dengan menggunakan IDE Eclipse. Dengan menggunakan

ADT untuk Eclipse, ini akan memudahkan kita dalam membuat aplikasi project Android,

membuat GUI aplikasi, dan menambahkan komponen – komponen yang lainnya. Selain itu

kita juga dapat melakukan running aplikasi menggunakan Android SDK melalui Eclipse.

Dengan ADT kita juga dapat melakukan pembuatan package Android (.apk) yang digunakan

untuk distribusi aplikasi Android yang kita rancang.

Mengembangkan aplikasi Android dengan menggunakan ADT di Eclipse sangat

mudah dan baik untuk memulai mengembangkan aplikasi Android. Semakin tinggi platform

Android yang kita gunakan, maka penggunaan ADT dianjurkan untuk memakai versi yang

lebih baru, karena munculnya platform baru diikuti oleh munculnya versi ADT yang terbaru.

IDE Eclipse

Menurut Wahana Komputer (2013) Eclipse adalah sebuah software develop

environment multibahasa yang berfitur extensible plugin dan untuk mengembangkan

perangkat lunak serta dapat dijalankan semua platform (platform-independen). Berikut ini sifat

eclipse :

a. Multi-platform : target untuk sistem operasi eclipse sendiri adalah Microsoft

Windows, Linux, Solaris, AIX, HP-UX, dan Mac OS-X.

b. Multi-language : Eclipse merupakan bahasa pemrograman yang dikembangkan

dalam bahasa java, akan tetapi eclipse mendukung pengembangan aplikasi

berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl,

PHP, dan lain sebagainya.

Pada saat ini ecplise merupakan salah satu IDE favorit dikarenakan bersifat open

source , yang berarti setiap orang dapat mengembangkan perangkat lunak ini. Eclipse bersifat

modular, didalamnya eclipse memuat bermacam-macam plugin , masing masing plugin

membuat fungsionalitas di dalamnya yang saling bekerja sama dengan baik membentuk

lingkaran pemrograman java yang terintergrasi.

3. Analisis Sistem

Berikut adalah teknik pemecahan masalah yang menguraikan bagian-bagian

komponen tersebut bekerja dan berinteraksi untuk mencapai tujuan mereka.

3.1. Identifikasi Masalah

Seorang tukang cat tidak bisa menghitung tinggi gedung bertingkat, akibatnya tukang

tersebut tidak bisa menghitung luas tembok yang di cat, sehingga tukang tersebut tidak bisa

memperhitungkan berapa ember cat yang akan digunakan, namun jika tukang cat mengetahui

tinggi gedung tukang tersebut bisa menghitung luas tembok yang di cat dan bisa menghitung

berapa ember cat yang diperlukan.

Untuk mengatasi permasalahan di atas penulis memutuskan untuk membuat aplikasi

untuk menghitung tinggi suatu benda/objek. Aplikasi ini akan membantu untuk mengetahui

tinggi suatu objek. Diharapkan aplikasi ini dapat membantu seseorang mengetahui tinggi

objek seperti tinggi tiang, tinggi gedung, tinggi pohon atau tinggi dari benda-benda yang

lainnya. Dengan adanya aplikasi ini pengguna tidak perlu repot-repot membawa meteran

untuk menghitung dari bawah objek ke puncak objek, pengguna juga tidak perlu membuang

banyak waktu dan tenaga.

3.2. Analisis Kebutuhan Sistem

Dalam perancangan sistem peneliti mendefinisikan kebutuhan sistem dan proses apa

saja yang akan dilakukan oleh sistem. Kebutuhan sistem sendiri terbagi menjadi dua yaitu

kebutuhan functional dan kebutuhan nonfunctional.

3.2.1. Kebutuhan Perangkat Keras

Kebutuhan Perangkat keras adalah kebutuhan perangkat keras yang dibutuhkan

dalam membangun aplikasi. Pada pembuatan aplikasi penulis menggunakan notebook atau

laptop. Berikut adalah spesifikasi perangkat keras yang digunakan:

Tabel 3.1 Kebutuhan Perangkat Keras

No Spesifikasi Kebutuhan

1 Processor Intel(R) Core(TM) i3 CPU @ 2.27GHz

2 RAM 2048MB

3 VGA NVIDIA GeForce GT 310M CUDATM 512MB

4 Harddisk 320GB

3.2.2. Kebutuhan Perangkat Lunak

Perangkat lunak yang dibutuhkan dalam membuat aplikasi oleh penulis adalah

sebagai berikut:

Tabel 3.2 Kebutuhan Perangkat Lunak

No Software Kebutuhan

1 Sistem Operasi Windows 8

2 Program Editor Eclipse Kepler

3 Database SQLite Manager

3.2.3. Kebutuhan Fungsional

Kebutuhan Functional adalah jenis kebutuhan yang berisi proses-proses apa saja

yang nantinya dilakukan oleh sistem. Kebutuhan fungsional juga berisi informasi-informasi apa

saja yang harus ada dan dihasilkan oleh sistem. Berikut adalah kebutuhan fungsional yang

dimiliki oleh aplikasi yang akan di buat :

1. Sistem harus dapat menghitung tinggi objek.

Gambar 3.1 Ilustrasi Menghitung Tinggi

Dalam ilustrasi diatas terlihat seseorang sedang menghitung tinggi, tinggi

tiang didapat dari rumus sebagai berikut:

𝑇𝑖𝑛𝑔𝑔𝑖 𝑡𝑜𝑡𝑎𝑙 = ℎ + 𝐻

dimana h adalah tinggi smartphone dari bidang datar yang nilai aslinya dalah 1.5

meter (nilai h bisa disesuaikan pada menu edit h) dan nilai H adalah hasil dari

perhitungan trigonometri yang dilakukan sistem. Berikut rumus trigonometri yang

digunakan :

𝐻 = tan 𝑦 ∗ 𝑗𝑎𝑟𝑎𝑘

dimana nilai sudut y didapat dari sensor accelerometer pada saat smartphone

membidik bagian atas/puncak objek. Nilai jarak didapat dari jarak antara objek dengan

pengguna.

2. Sistem harus bisa menghitung jarak pengguna dengan objek.

Ada dua metode yang digunakan untuk menghitung jarak, yaitu dengan

menghitung antara dua titik koordinat atau menggunakan rumus trigonometri.

Perhatikan ilustrasi berikut :

Gambar 3.2 Ilustrasi Menghitung Jarak

Ilustrasi diatas menggambarkan seseorang sedang menghitung jarak dengan tiang

bendera. Jarak tersebut diukur dengan menggunakan rumus trigonometri. Berikut

rumus yang digunakan :

𝑗𝑎𝑟𝑎𝑘 = tan 𝑦 ∗ ℎ

dimana nilai sudut y didapat dari sensor accelerometer dan nilai h adalah tinggi

smartphone dengan bidang datar.

Metode pengukuran jarak yang satunya adalah dengan koordinat user dan

objek, system akan menghitung jarak antara dua koordinat tersebut. Koordinat

tersebut didapat dari sensor GPS yang ditampilkan dalam Maps, berikut adalah

rumus untuk menghitung antara dua koordinat:

((acos (sin (𝑙𝑎𝑡𝑂𝑏𝑗𝑒𝑘 ∗ 𝜋

180) ∗ sin (

𝑙𝑎𝑡𝑈𝑠𝑒𝑟 ∗ 𝜋

180) + cos (

𝑙𝑎𝑡𝑂𝑏𝑗𝑒𝑘 ∗ 𝜋

180)

∗ cos (𝑙𝑎𝑡𝑈𝑠𝑒𝑟 ∗ 𝜋

180) ∗ cos (

(𝑙𝑜𝑛𝑔𝑂𝑏𝑗𝑒𝑘 − 𝑙𝑜𝑛𝑔𝑈𝑠𝑒𝑟) ∗ 𝜋

180)) ∗

180

𝜋) ∗ 60

∗ 1.1515) ∗ 1.609344 ∗ 1000

dimana latObjek adalah koordinat latitude/bujur objek, longObjek adalah koordinat

longitude/lintang objek, latUser adalah koordinat latitude/bujur user, longUser adalah

koordinat longitude/lintang user, dan nilai 𝜋 adalah 22

7. Hasil dari perhitungan jarak

tersebut akan ditampilkan dalam satuan meter.

3. Sistem harus bisa mengatur kalibrasi sudut.

4. Sistem harus bisa mengedit nilai h

5. Sistem harus bisa menyimpan history perhitungan.

3.2.4. Kebutuhan Non-Fungsional

Kebutuhan Non-Fungsional adalah tipe kebutuhan yang berisi properti perilaku yang

dimiliki oleh sistem. Berikut adalah kebutuhan Non-Fungsional yang ada pada aplikasi yang

akan dibuat:

1. Operasional

a. Digunakan pada sistem operasi Android dengan versi minimal Android 3.0

Honeycomb.

b. Kebutuhan memori 256MB RAM.

c. Membutuhkan koneksi internet.

d. Membutuhkan layanan GPS.

e. Membutuhkan kamera untuk membidik objek.

f. Membutuhkan memori menyimpan database.

2. Informasi

a. Digunakan untuk menghitung tinggi suatu objek.

b. Digunakan untuk menghitung jarak suatu objek.

3. Kinerja

a. Dibutuhkan koneksi internet yang baik agar aplikasi dapat bekerja dengan lancar.

b. Dibutuhkan service dari GPS untuk menentukan lokasi saat aplikasi digunakan.

c. Dibutuhkan kamera untuk menentukan sudut kemiringan dari smartphone.

3.3. Analisis SWOT

Analisis SWOT merupakan metode perencanaan strategis yang digunakan untuk

melakukan pendekatan bisnis dengan lebih mudah dalam suatu proyek. Analisis tersebut

dapat dilakukan dengan cara mengevaluasi kekuatan (strength), kelemahan (weakness),

kesempatan (oportunity), dan ancaman (threats).

3.3.1. Kekuatan (Strength)

Kekuatan yang dimiliki Aplikasi penghitung tinggi ini adalah:

1. Aplikasi ini dapat menghitung tinggi objek dengan mudah.

2. Aplikasi ini dilengkapi dengan Maps yang bisa digunakan untuk menentukan titik

koordinat dari objek.

3. Untuk meningkatkan tingkat akurasi perhitungan, aplikasi ini disediakan dua pilhan

menu yaitu untuk objek jarak dekat dan untuk objek jarak jauh.

4. Aplikasi ini dilengkapi dengan fitur kalibrasi untuk mengatur sudut kemiringan

smartphone yang digunakan untuk menambah tingkat akurasi.

5. Aplikasi ini dapat menghitung semua objek yang mempunyai tinggi.

3.3.2. Kelemahan (Weakness)

1. Nilai yang didapat dari sensor accelerometer tergantung pada pengguna,pengguna

harus dengan tepat membidik kamera ke objek.

2. Penghitungan nilai h atau tinggi smartphone dengan bidang datar yang digunakan

masih manual. Hal tersebut akan mempengaruhi nilai dari hasil perhitungan.

3. Aplikasi ini hanya bisa mengukur objek yang berada pada satu bidang datar dengan

pengguna aplikasi.

3.3.3. Kesempatan (Opportunity)

1. Aplikasi ini berbasis Android yang sekarang ini banyak digunakan.

2. Harga smartphone Android saat ini semakin terjangkau

3.3.4. Ancaman (Threats)

1. Dikhawatirkan jika suatu saat smartphone Android tidak lagi banyak di gunakan.

2. Adanya aplikasi lain yang lebih canggih dan lengkap.

3.4. Perancangan Sistem

Perancangan sistem merupakan bagian yang penting dalam membuat suatu sistem

ataupun aplikasi, perancangan sistem ini dimaksudkan untuk memberikan gambaran umum

tentang aplikasi yang akan dibuat.

3.4.1. Perancangan UML

Untuk lebih memperjelas tentang gambaran sistem maka penulis membuat UML

dengan beberapa tipe yaitu Use case diagram, Activity diagram, Sequence diagram, dan

Class diagram.

3.4.2. Use Case Diagram

Berikut adalah gambaran interaksi antara aplikasi dan aktor yang ada pada aplikasi

ini:

Gambar 3.3 Use Case Diagram

3.4.3. Activity Diagram

Activity diagram menggambarkan rangkaian aliran dari atifitas, digunakan untuk

mendeskripsikan aktivitas yang dibentuk dalam suatu operasi sehingga dapat juga

digunakan untuk aktifitas lainnya seperti use case atau interaksi.

1. Menghitung Jarak Dekat

Gambar 3.4 Diagram Menghitung Jarak Dekat

4. Menghitung Jarak Jauh

Gambar 3.5 Activity Diagram Menghitung Jarak Jauh (Maps)

3.4.4. Sequence Diagram

Sequence diagram ini akan menggambarkan rangkaian langkah-langkah yang

menggambarkan respon dari event pada aplikasi ini. Berikut adalah gambaran dari Sequence

diagram pada aplikasi ini:

Gambar 3.6 Sequence Diagram Menghitung Jarak Dekat

Gambar 3.7 Sequence Diagram Menghitung Jarak Jauh

4. Implementasi dan Pembahasan

4.1. Listing Program

Untuk pembahasaan listing program dalam aplikasi ini, penulis akan membahas script

satu activity yaitu menu Hitung Jarak Jauh.

4.1.1. Class Hitung_jarak_jauh.java

Class ini berfungsi untuk menghitung tinggi objek, setelah pada menu sebelumnya

system sudah menghitung jarak objek. Pada menu ini terdapat rumus trigonometri dimana

sudut segitiga diambil dari sensor accelerometer dan sisi segitiga (jarak) didapat pada menu

sebelumnya. Setelah perhitungan selesai user diminta untuk memasukkan nama objek untuk

disimpan dalam menu history.

private double hitungZpositif(Double jarak, Double y, Double tanB, double

tinggiSegitiga) {

tanB = Math.tan(Math.toRadians(90-((y*10)+konstanta)));

return tinggiSegitiga = tinggi_h-(tanB*jarak);

}

private double hitungZnegatif(Double jarak, Double y, Double tanB, double

tinggiSegitiga) {

tanB = Math.tan(Math.toRadians(90-((y*10)+konstanta)));

return tinggiSegitiga = (tanB*jarak)+tinggi_h;

}

4.1.2. Class Hitung_jarak_dekat.java

Pada class ini system dapat menghitung jarak sekaligus tinggi objek, dalam

menghitung jarak tidak diperlukan koordinat karena system menghitung jarak dengan

menggunakan rumus trigonometri. Setelah menghitung jarak sistem baru bisa menghitung

tinggi, sistem menghitung tinggi dengan menggunakan rumus trigonometri. Setelah

perhitungan selesai user diminta untuk memasukkan nama objek untuk disimpan dalam menu

history.

private double hitungJarak(Double y, Double tanA, double jarak) {

tanA = Math.tan(Math.toRadians((y*10)+konstanta));

return jarak = tanA*tinggi_h;

}

private double hitungZpositif(Double jarak, Double y, Double tanB, double

tinggiSegitiga) {

tanB = Math.tan(Math.toRadians(90-((y*10)+konstanta)));

return tinggiSegitiga = tinggi_h-(tanB*jarak);

}

private double hitungZnegatif(Double jarak, Double y, Double tanB, double

tinggiSegitiga) {

tanB = Math.tan(Math.toRadians(90-((y*10)+konstanta)));

return tinggiSegitiga = (tanB*jarak)+tinggi_h;

}

4.1.3. Class Menu_utama.java

Pada class ini user akan disajikan pilihan menu, hitung jarak dekat dan hitung jarak

jauh. User juga disajikan menu pilihan seperti edit h, history, bantuan, tentang, dan exit.

Pilihan menu edit h disini berfungsi untuk menyesuaikan tinggi smartphone ketika digunakan

untuk menghitung jarak atau tinggi objek.

Cursor cursor = baseManager.select("SELECT h FROM tinggi_hp");

while (cursor.moveToNext()) {

Double tinggi_hp = cursor.getDouble(cursor.getColumnIndex(COLUMN_NAME));

h = tinggi_hp;

txtEdit.setText(String.valueOf(h));

}

cursor.close();

btnEdit.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

edit_tinggi();

dialog.dismiss();

}

public Double edit_tinggi() {

String tinggi_h = txtEdit.getText().toString();

double tinggi__h = Double.parseDouble(tinggi_h);

ContentValues cv=new ContentValues();

cv.put("h", tinggi__h);

String whereClause = "id=1";

Cursor cursor = baseManager.update(TABLE_NAME, cv, whereClause);

return tinggi__h;

}

5. penutup

5.1. Kesimpulan

Berdasarkan uraian-uraian yang telah penulis jelaskan dalam bab-bab sebelumnya

dan pembuatan aplikasi, maka dapat diambil kesimpuan sebagai berikut :

1. Cara kerja aplikasi untuk menghitung tinggi adalah dengan menggunakan rumus

segitiga trigonometri. Dengan sudut segitiga yang diambil dari sensor accelerometer

dan jarak pengguna dengan objek sebagai sisi segitiga. Jarak bisa didapat melalui

dua cara, yaitu dengan menghitung jarak antar dua koordinat dari GPS atau dengan

rumus segitiga trigonometri dengan tinggi smartphone dengan bidang datar sebagai

sisi segitiga. Rumus trigonometri yang digunakan dalam pengukuran aplikasi ini

adalah :

tan α =sisi depan

sisi samping

2. Dari hasil percobaan yang sudah dilakukan dapat disimpulkan bahwa tingkat akurasi

untuk menu hitung jarak dekat adalah 82% dan menu hitung jarak jauh sebesar

88,7%.

3. Aplikasi ini berjalan pada platform Android dengan API minimal 11 atau Android 3.0

(Honeycomb) ke atas.

4. Aplikasi ini membutuhkan koneksi internet dan layanan GPS, membutuhkan sensor

accelerometer dan kamera untuk mengukur sudut kemiringan smartphone, dan

membutuhkan storage untuk menyimpan data history.

5. Keakuratan hasil aplikasi ini tergantung pada tinggi smartphone dengan bidang datar

(tinggi h), dari sensor accelerometer dan GPS, dan dari pengguna ketika membidik

objek.

6. Aplikasi ini berjalan maksimal pada device dengan resolusi layar 480 x 800 pixel

karena pada resolusi layar lainnya gambar yang digunakan untuk membidik objek

akan berubah posisi dan hal tersebut mengurangi tingkat akurasi, atau dalam kata

lain interface dari aplikasi ini belum responsif.

5.2. Saran

Pada penulisan Skripsi ini tentu masih ada kekurangan, dan mungkin dapat

disempurnakan oleh penelitian-penelitian berikutnya. Untuk lebih menyempurnakan program

ini penulis memberikan beberapa saran diantaranya :

1. Pada menu hitung tinggi ditambahkan fungsi untuk mengukur tinggi objek yang

tidak berada dalam satu bidang datar, misal objek yang berada di atas bukit. Pada

menu utama ditambah fungsi untuk mengukur tinggi jika pengguna aplikasi

berada paca puncak objek. Missal ketika pengguna berada di puncak gedung dan

ingin mengukur tinggi gedung tersebut.

2. Pada menu edit h ditambah rumus untuk perhitungan secara otomatis, karena

pada aplikasi yang sekarang nilai h baru bisa dimasukkan secara manual dan

kurang akurat.

3. Ditambahkan fitur untuk mengambil foto objek agar pada saat melihat history

pengguna disajikan foto objek beserta nama dan tinggi objek.

DAFTAR PUSTAKA

Chamin, A. N. (2010). Penggunaan Microcontroller Sebagai Pendeteksi Posisi Dengan

Menggunakan Sinyal GPS. JURNAL INFORMATIKA VOL.4 NO.1.

Fatta, H. A. (2007). Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing

Perusahaan dan Organisasi Modern. Yogyakarta: Andi.

google. (2014, Februari 23). Google Maps for Business. Retrieved from www.google.com:

http://www.google.com/intl/id/enterprise/mapsearth/products/mapsapi.html

Hermawan, B. (2007). Menguasai JAVA 2 & Object Oriented Programming. Yogyakarta:

Andi.

Kariadinata, R. (2013). Trigonometri Dasar. Bandung: Pustaka Setia.

Kusrini. (2006). Strategi Perancangan dan Pengelolaan Basis Data. Yogyakarta: Andi.

Meier, R. (2009). Professional Android™ Application Development. Indianapolis: Wiley

Publishing.

Owens, M. (2006). The Definitive Guide to SQLite . United States of America: Apress.

Raharjo, B. (2011). Belajar Otodidak Membuat Database Menggunakan MySQL. Bandung:

Informatika.

Riyanto. (2010). Sistem Informasi Geografis Berbasis Mobile. Yogyakarta: Gava Media.

Safaat, N. (2012). Android Pemrograman Aplikasi Mobile Smartphone dan Tablet PC

Berbasis Android. Bandung: Informatika.

Sakur, S. B. (2011). Pemrograman Berorientasi Objek-Konsep & Implementasi. Yogyakarta:

Andi.

Yasin, V. (2012). REKAYASA PERANGKAT LUNAK BERORIENTASI OBJEK Pemodelan,

Arsitektur dan Perancangan (Modeling, Architecture and Design) tahun. Jakarta:

Mitra Wasana Media.