BAB 2 LANDASAN TEORI 1. Landasan Teori 1.1.
GPS (Global Positioning System)
Gambar 1. GPS. GPS (Global Positioning System) adalah sebuah sistem navigasi berbasiskan satelit yang dibangun dari sebuah jaringan yang terdiri dari 24 satelit yang diletakkan dalam orbit. GPS bekerja pada berbagai kondisi cuaca, di manapun posisi di dunia, dan 24 jam satu hari (Alde, Lange, Kadam, 2011:1). GPS (Global Positioning System) adalah sistem satelit navigasi dan penentuan posisi yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk memberikan posisi dan kecepatan tiga dimensi serta informasi mengenai waktu. GPS terdiri dari 3 segmen yaitu segmen angkasa, kontrol/pengendali, dan pengguna. Segmen angkasa terdiri dari 24 satelit yang
beroperasi dalam 6 orbit pada ketinggian 20.200 km dengan periode 12 jam (satelit akan kembali ke titik yang sama dalam 12 jam). Segmen Kontrol/Pengendali terdapat pusat pengendali utama yang terdapat di Colorodo Springs, dan 5 stasiun pemantau lainnya dan 3 antena yang tersebar di bumi ini. Pada sisi pengguna dibutuhkan penerima GPS yang biasanya terdiri dari penerima, prosesor, dan antena. (Budiawan, Santoso, Zahra). Sebuah GPS receiver harus terkunci dengan sinyal dari setidaknya 3 satelit untuk menghitung posisi 2D (latitude dan longitude) dan pergerakan track. Dengan 4 atau lebih satelit, receiver dapat menentukan posisi 3D user (latitude, longitude, dan altitude). Begitu posisi user sudah ditentukan, unit GPS dapat menghitung informasi lain, seperti kecepatan, pelacakan, jarak tempuh, jarak tujuan, waktu matahari terbit dan terbenam, dan sebagainya (Alde, Lange, Kadam, 2011:1).
1.2.
A-GPS
Gambar 2. Arsitektur A-GPS A-GPS adalah sebuah teknologi yang menintegrasi handphone dengan GPS untuk memberikan ketepatan pelacakan lokasi sekitar 5 sampai 10 meter. Sistem integrasi ini memperbaiki posisi setiap detiknya, memiliki area jangkauan yang lebih baik, terkadang bisa dijalankan dalam bangunan, memerlukan konsumsi daya yang lebih sedikit, dan memerlukan satelit yang lebih sedikit dibanding dengan biasanya. A-GPS mendapatkan dan menyimpan informasi lokasi satelit melalui base station terdekat sehingga informasi tidak perlu didownload via satelit. A-GPS menggunakan perkiraan ke tower terdekat untuk melakukan kalkulasi saat signal GPS tidak tersedia (Singhal, Shukla, 2012:238).
1.3.
Android
Gambar 3. Logo Android. Android adalah sebuah sistem operasi open source yang berbasis pada platform Linux dan dikembangkan oleh Google. Android terdiri dari sistem operasi, user interface dan juga program aplikasi, dan platform Android mengintegrasikan berbagai aplikasi yang memerlukan berbagai data service seperti Email, electronic market, Youtube, dan sebagainya. Android yang ada saat ini pada umumnya mengintegrasikan aplikasi-aplikasi internet yang populer seperti micro blog, facebook, dan sebagainya (Liu, 2012). Setiap versi Android memiliki nama dan nomor versi. Google menggunakan nama-nama dessert dengan susuan secara alfabetis. Secara teknis, versi Android dibedakan dengan kode nomor yang disebut API level. API level terdiri dimulai dari API level 1 ke atas. Setiap ada perubahan di API Android, nomornya akan dinaikkan. Setiap versi Android memiliki nama, nomor versi, dan API level. Berikut ini adalah table yang menunjukkan versi Android yang telah dirilis sejauh ini. Jika diamati akan ada versi yang hilang seperti Android 2.0. Itu adalah versi yang diupdate ke Android 2.1 sedemikian cepatnya
sehingga tidak ada device yang menggunakannya lagi, karena itu tidak dicantumkan di list versi Android (Lehtimaki, 2013:52).
Tabel 1. Kode versi, nama, dan API level Android.
1.4.
Android SDK
Android SDK adalah suatu software yang menyediakan peralatan-peralatan untuk mengembangkan program Android dan juga sebuah library untuk penyimpan API (Application Programming Interface). Peralatan ini berguna untuk membuat, menguji, dan mendebug aplikasi dari sebuah Android (http://developer.android.com/sdk/index.html).
1.5.
Android ADT
Android developer tools adalah sebuah plug-in yang menghubungkan antara SDK dengan IDE eclipse yang dipakai oleh developer sehingga eclipse dapat membuat aplikasi dengan berbasis Android (http://developer.android.com/sdk/index.html).
1.6.
Location Based Service Pada Android
Ide menggunakan mobile phone adalah untuk memberikan layanan lain yang juga berguna selain layanan komunikasi dasar dan telah dimulai sejak 1990 semenjak adanya Internet pada Voice Telephony. Location based service (LBS) mengacu pada kumpulan aplikasi yang memberdayakan pengetahuan posisi geografis mobile device untuk memberikan layanan-layanan. Location basedservice banyak memberikan keuntungan pada client, seperti: -
Untuk menentukan lokasi bisnis atau layanan terdekat seperti Bank atau Hotel.
-
Memperoleh peringatan, misalnya notifikasi Sale pada Shopping Mall atau berita dari area kemacetan terdekat.
-
Pencari teman atau pencari lokasi phone yang tercuri.
Lokasi dapat ditentukan dari terminology spasial ataupun dalam deskripsi teks. Lokasi spasial dapat direpresentasikan pada penggunaan sistem kordinat latitude-longitude-altitude. Latitude didefinisikan sebagai 0-90 derajat utara atau selatan ekuator. Longitude sebagai 0-180 derajat barat atau timur dari meridian utama yang melewati Greenwich, Inggris. Altitude
direpresentasikan sebagai satuan meter di atas permukaan laut. Deksripsi teks didefinisikan sebagai lokasi jalan, yang mengandung nama kota, kode pin, dan sebagainya (Singhal, Shukla, 2012:238).
1.7.
Java
Java adalah bahasa pemograman yang dikembangkan oleh Sun Microsystems dibawah pengawasan James Gosling dan Bill Joy. Kode Java dikonversikan menjadi instruksi kode biner yang sederhana, seperti kode biner microprocessor. Java byte code yang dikompilasi kemudian akan diinterpretasikan. Sistem runtime menjalankan aktivitas normal seperti processor asli, tetapi itu dilakukan di sebuah lingkungan yang aman, tepatnya kedalam sebuah virtual machine (http://www.java.com/en/download/faq/whatis_java.xml).
1.8.
Java-Eclipse
Gambar 4.Tampilan Eclipse pada Windows XP SP2. Eclipse SDK adalah sebuah integrated development environment (IDE) yang ditemukan IBM dan bersifat open source. Eclipse pada dasarnya adalah sebuah platform, namun kemampuan mengembangkan plug-in untuk Eclipse inilah yang akhirnya menjadikan Eclipse sebuah alat yang handal. Banyak perusahaan produk tertentu telah merebuilding ataupun merepacking produknya ke dalam Eclipse plug-in. Basic Java tools yang ada di Eclipse dapat digunakan untuk formatting, building, debugging, dan integration menggunakan Ant. Ada banyak sekali plug-in yang sifatnya free ataupun komersial yang ada di Eclipse (Hemrajani, 2006:16).
1.9.
HTML (Hyper Text Markup Language)
HTML (Hyper Text Markup Language) adalah sebuah bahas markup yang digunakan untuk menampilkan informasi dalam format ASCII yang sederhana agar dapat ditampilkan ke web. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C) (http://www.w3schools.com/web/web_html.asp).
1.10.
XML (Extensible Markup Language)
XML adalah sistem gramatikal untuk membangun markup language yang khusus (Castro, E. 2001:21). Sebuah dokumen XML terdiri dari bagian-bagian yang disebut dengan node-node. Node-node itu adalah: •
Root Node Yaitu node yang melingkupi keseluruhan dokumen. Dalam satu dokumen XML
terdapat satu root node. Node yang lainnya berada di dalam root node. •
Element Node Ditandai dengan tag pembuka dan tag penutup, atau bisa juga sebuah tag tunggal
elemen kosong. •
Attribute Node Termasuk nama dan nilai atribut ditulis pada tag awal sebuah elemen atau pada
tag tunggal.
•
Text Node Adalah teks yang merupakan isi dari suatu elemen, ditulis diantara tag pembuka
dan penutup. •
Comment Node Adalah baris yang tidak dieksekusi oleh parser.
•
Processing Instruction Node Adalah perintah pengolah dalam dokumen XML. Node ini diawali dengan
karakter Dan diakhiri dengan ?>. •
Name Space Node Node ini mewakili deklarasi namespace.
1.11.
JSON (Java Script Object Notation)
JSON adalah standar berbasis teks ringan yang diracang terbuka dan mudah untuk dibaca dan ditulis manusia serta mudah bagi mesin untuk mengurai dan menghasilkan dalam pertukaran data. JSON merupakan format text bahasa independen tetapi menggunakan konvensi bahasa yang akrab dari bahasa C, meliputi C, C++, C#, Java, JavaScript, Perl, Python, dan lainnya. Properti ini yang membuat JSON sebagai bahasa pertukaran yang ideal. Format JSON awalnya ditentukan oleh Douglas Crockford dan dijelaskan dalam RFC4627. Jenis media internet yang resmi untuk JSON adalah aplikasi/json. Format JSON sering digunakan untuk serialisasi dan mengirimkan data terstruktur melalui koneksi jaringan. Terutama untuk pengiriman data antara server dan aplikasi web, melayani sebagai alternative ke XML (http://www.json.org).
1.12.
Google Maps
Google Maps mapping service adalah sebuah online tool yang memberikan user berbagai fitur-fitur map seperti tampilan street maps, arahan kemudi point-to-point, dan jalur-jalur untuk mencari lokasi bisnis di berbagai kota. Dengan tambahan street map dan terrain view, satellite atau aerial views dapat memberikan tampilan yang mudah dipahami user dan dapat diakses siapa saja melalui online connection (Frazel, 2009:39).
Gambar 5. Tampilan Google Maps. Cara penggunaan Google Maps API dapat dilihat pada contoh code html di bawah ini: history.html <meta charset="utf-8" />
GPS Tracking Systems
<style type="text/css"> body { font: normal 14px Verdana; } h1 { font-size: 24px; } h2 { font-size: 18px; } #sidebar { float: right; width: 30%; } #main { padding-right: 15px; } .infoWindow { width: 220px; } <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> <script type="text/javascript">
Pada contoh di atas ditunjukkan potongan code untuk menampilkan peta dari Google Maps ke web. Untuk menampilkan peta dari Google Maps, diperlukan Google Maps API, yang pemakaiannya dengan cara memasukkan code: <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> <script type="text/javascript">
ke dalam program .html.
1.13.
MySQL
MySQL merupakan software database open source yang paling populer di dunia, di mana saat ini digunakan lebih dari 100 juta pengguna di seluruh dunia. Dengan kehandalan, kecepatan dan kemudahan penggunaannya, MySQL menjadi pilihan utama bagi banyak pengembang software dan aplikasi baik di platform web maupun desktop. Pengguna MySQL tidak hanya sebatas pengguna perseorangan maupun perusahaan kecil, namun perusahaan seperti Yahoo!, Alcatel‐Lucent, Google, Nokia, Youtube, Wordpress dan Facebook juga merupakan pengguna MySQL. MySQL pertama kali dibuat dan dikembangkan di Swedia, yaitu oleh David Axmark, Allan Larsson dan Michael "Monty" Widenius. Mereka mengembangkan MySQL sejak tahun
1980‐an. Saat ini versi MySQL yang sudah stabil mencapai versi 5x, dan sedang dikembangkan versi 6x (Solichin, 2010:2).
1.14.
PhpMyAdmin
PhpMyAdmin adalah sebuah aplikasi web yang disusun menggunakan PHP. PhpMyAdmin juga mengandung beberapa client code (seperti aplikasi web pada umumnya) seperti XHTML, CSS, dan JavaScript. Aplikasi ini menyediakan tampilan web yang lengkap untuk melakukan administrasi pada MySQL database. PhpMyAdmin memberikan fitur-fitur untuk pengaturan database MySQL dasar dan operasioperasi pada tabel di database. Ia juga memiliki sistem internal yang melakukan maintain terhadap metadata untuk mendukung fitur-fitur yang lebih canggih. System administrator juga dapat melakukan pengaturan terhadap user maupun priviledge melalui PhpMyAdmin (Delisle, 2012).
1.15.
Real-time
Real time adalah sebuah ukuran seberapa cepat respon komputer sehingga user merasakannya sesegera mungkin. Real time juga dapat diartikan sebagai tingkat responsif komputer yang membuat komputer selalu mengikuti proses-proses eksternal (misalnya, untuk memberikan visualisasi keadaan cuaca ketika terjadi perubahan secara konstan) (Rouse, 2006).
1.16.
WCDMA HSDPA
Gambar 6. Evolusi 2G ke 3G dan Seterusnya. WCDMA HSDPA adalah sebuah jaringan wireless yang dapat memberikan layanan paket data sampai dengan 10 Mbps dan efisiensi spectral yang lebih tinggi (Qiu, Zhu, Zhang). HSDPA dirancang untuk meningkatkan kecepatan transfer data 5x lebih tinggi daripada jaringan 3G dan 15x lebih cepat dari GPRS (http://www.telecomspace.com/latesttrends-hsdpa.html).
1.17.
WAMP-Server
Gambar 7. Konektifitas WAMP server. Wamp server adalah sebuah wadah pengembangan web yang berbasis windows. Wamp server ini mampu membuat aplikasi web dengan menggunakan apache, PHP, dan MySQL database. Beberapa keuntungan dari wamp server adalah cepat waktu instalasinya, mudah untuk diatur, bisa di instalasi pada flash drive, gratis dan memerlukan spesifikasi komputer yang kecil. (Bhandari, 2011:17).
1.18.
Reverse Geocoding
Geocoding adalah sebuah proses konversi alamat (misalnya "1600 Amphitheatre Parkway, Mountain View, CA") ke dalam kordinat geografis (misalnya latitude 37.423021 dan longitude -
122.083739), di mana dapat digunakan untuk menempatkan marker atau posisi pada map. Reverse Geocoding kebalikannya, yaitu adalah prose konversi dari kordinat geografis ke alamat yang mudah dimengerti. Geocoding dimaksudkan untuk para pengembang baik website ataupun mobile yang ingin menggunakan data geocoding di map yang disediakan oleh salah satu Google Maps API. Ketika geocoder mengembalikan nilai, nilai tersebut akan diletakkan di dalam (JSON) array dengan nama results. Jika geocoder tidak mengembalikan nilai apapun (misalnya tidak ada alamat), ia akan tetap mengembalikan array results namun kosong. Biasanya result terdiri dari field formatted_address. Formatted_address adalah string yang berisi alamat dari lokasi tertentu. Alamat ini biasanya terdiri dari satu atau lebih komponen alamat. Misalnya alamat “111 8th Avenue, New York, NY” terdiri dari "111" (the nomor jalan, "8th Avenue" (nama jalan), "New York" (kota) and "NY" (state di US). Geocoding API juga mendukung reverse geocoding secara langsung menggunakan parameter latlng. Misalnya, query yang mengandung latitude/longitude suatu lokasi di Brooklyn: http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,73.961452&sensor=true_or_false
Akan menghasilkan: { "status": "OK", "results": [ { "types": street_address, "formatted_address": "275-291 Bedford Ave, Brooklyn, NY 11211, USA", "address_components": [ { "long_name": "275-291", "short_name": "275-291", "types": street_number }, {
"long_name": "Bedford Ave", "short_name": "Bedford Ave", "types": route }, { "long_name": "New York", "short_name": "New York", "types": [ "locality", "political" ] }, { "long_name": "Brooklyn", "short_name": "Brooklyn", "types": [ "administrative_area_level_3", "political" ] }, { "long_name": "Kings", "short_name": "Kings", "types": [ "administrative_area_level_2", "political" ] }, { "long_name": "New York", "short_name": "NY", "types": [ "administrative_area_level_1", "political" ] }, { "long_name": "United States", "short_name": "US", "types": [ "country", "political" ] }, { "long_name": "11211", "short_name": "11211", "types": postal_code } ], "geometry": { "location": { "lat": 40.7142298, "lng": -73.9614669 }, "location_type": "RANGE_INTERPOLATED", "viewport": { "southwest": { "lat": 40.7110822, "lng": -73.9646145 }, "northeast": { "lat": 40.7173774, "lng": -73.9583193 } } } }, ... Additional results[] ...
Dapat dilihat bahwa reverse geocoder mengembalikan lebih dari satu hasil. Hasil dari “formatted_addresses” tidak hanya alamat portal, namun nama geografis dari lokasi (https://developers.google.com/maps/documentation/geocoding/).
1.19.
Rumus Haversine
Rumus Haversine digunakan untuk menghitung jarak great-circle antara dua point, yaitu jarak terdekat, terhadap permukaan bumi. Formula Haversine masih dianggap baik untuk perhitungan numeris, bahkan untuk permukaan yang kecil.Rumus Haversine dipulikasikan oleh Roger Sinnott pada majalah Sky & Telescope pada tahun 1984 (“Virtues of the Haversine”) (http://www.movable-type.co.uk/scripts/latlong.html).
Di mana: φ = latitude, λ = longitude R = radius bumi (mean radius = 6,371 km)