BAB 2 LANDASAN TEORI
2.1. GPS (Global Positioning System) 2.1.1. Pengenalan GPS GPS atau Global Positioning System adalah suatu sistem navigasi satelit yang terdiri dari 24 satelit beroperasi dan 3 satelit cadangan. Ke-24 satelit itu mengorbit bumi pada jarak 20.200 km dan waktu orbit 12 jam, sambil memancarkan sinyal berita gelombang radio. Departemen Pertahanan AS yang mengoperasikan sistem GPS telah mengatur konfigurasi satelit sedemikian rupa, sehingga semua tempat di bumi dapat menerima sinyal dari 4 sampai 10 satelit. Sebagai penunjuk waktu, masing-masing satelit dibekali dengan 4 buah jam atom yang dapat mengukur waktu dengan ketelitian sepermilyar detik. Teknologi GPS sanggup menentukan lokasi manapun di muka bumi dengan ketelitian kurang lebih 1 meter.
Gambar 2.1 Sistem Satelit GPS 7
8
2.1.2. Bagian-bagian Daerah Kerja GPS GPS terdiri atas tiga segmen yaitu space segment, control segment, user segment, dengan penjelasan sebagai berikut: 1. Space Segment Space segment terdiri atas konstelasi 24 satelit. Masing-masing satelit mengirimkan sebuah sinyal, yang memiliki sejumlah komponen: dua buah gelombang sinus (yang juga dikenal sebagai carrier frequency / frekuensi pembawa), dua kode digital, dan sebuah pesan navigasi. Pesan kode dan navigasi ditambahkan ke dalam pembawa sebagai modulasi dua fasa biner. Pembawa dan kode digunakan terutama untuk menentukan jarak dari receiver pengguna sampai ke satelit GPS. Pesan nagivasi berisi koordinat (lokasi) satelit sebagai fungsi waktu bersama dengan informasi-informasi lain. 2. Control Segment Segmen kontrol dari sistem GPS terdiri atas jaringan lima stasiun pemantau di seluruh pelosok dunia, dengan stasiun kontrol utama (master control station/MCS) berlokasi di dekat Colorado Springs, Colorado, Amerika Serikat. Tugas utama segmen kontrol operasional adalah menjejaki
satelit
GPS
dengan
tujuan
untuk
menentukan
dan
memprediksikan lokasi satelit, integritas sistem, jam atom satelit, data atmosfer, perkiraan satelit, dan pertimbangan-pertimbangan lain. Informasi
9
ini kemudian digabungkan dan di-upload ke satelit GPS melalui jalur Sband. 3. User Segment User segment mencakup semua pengguna baik militer maupun sipil. Dengan sebuah penerima GPS yang terhubung dengan antena GPS, seorang pengguna dapat menerima sinyal GPS, yang dapat digunakan untuk menentukan posisi pengguna tersebut di manapun di bumi. Saat ini GPS tersedia bagi siapapun di seluruh dunia tanpa biaya apapun.
Gambar 2.2 Daerah Kerja GPS 2.1.3. Cara Kerja GPS Secara teoritis, GPS bekerja dengan cara mengumpulkan data dari satelit, masing-masing satelit akan memberikan informasi jarak antara lokasi satelit tersebut dengan sebuah titik di bumi (GPS receiver). Dari proses pengambilan lokasi-lokasi tersebut akan diperoleh koordinat-koordinat yang disebut waypoint (garis lintang dan bujur pada peta). Dari semua data itu, lokasi titik
10
(GPS receiver) dapat ditentukan dengan cara menerapkan konsep triangulasi. Konsep triangulasi dapat dianalogikan seperti berikut. A ingin datang ke di Gedung G, A tidak tahu di mana letak gedung itu. Ia hanya punya informasi bahwa Gedung G terletak 10 km dari Universitas X, 15 km dari Pasar Y dan 20 km dari Terminal Z. Dengan menggambar tiga lingkaran yang berpusat di Universitas X, Pasar Y dan Terminal Z, masing-masing dengan radius 10, 15 dan 20 km. Di titik perpotongan ketiga lingkaran itulah terletak Gedung G. Dalam hal ini, alat penerima akan berada pada titik potong tiga bidang bola; masing-masing dengan radius sebesar jarak alat penerima ke satelit, dengan satelit itu sebagai pusat bola. Dengan demikian, posisi titik itu dapat diketahui dengan titik perpotongan ketiga lingkaran tersebut.
Gambar 2.3 Teknik Triangulasi Pada praktiknya, satelit yang digunakan minimum 3 buah dan satelit keempat dibutuhkan untuk perhitungan sinkronisasi clock dari penerima GPS. Akurasi yang diperoleh dengan metode ini terbatas pada 100 meter untuk komponen horizontal, 156 meter untuk vertikal, dan 340 nanodetik untuk komponen waktu, semua pada tingkat probabilitas sebesar 95%. Tingkat
11
keakuratan yang rendah ini diakibatkan oleh teknik selective availability, yaitu teknik yang digunakan untuk menurunkan akurasi posisi waktu nyata bagi pengguna yang tak berhak. Dengan keputusan pemerintah Amerika Serikat tanggal 1 Mei 2000 untuk penghentian selective availability, akurasi horizontal dapat naik menjadi 22 meter (dengan tingkat probabilitas 95%). Untuk lebih lagi meningkatkan akurasi GPS, digunakan metode diferensial, yang menggunakan dua alat penerima bersamaan. Dalam kasus ini, tingkat keakuratan yang diperoleh mencapai beberapa meter saja. 2.1.4. Menentukan Posisi dari Receiver ke Satelit GPS Sebuah GPS receiver mengetahui lokasi dari satelit dengan cara menghitung seberapa jauh jarak antara satelit dan receiver dengan menggunakan rumus sebagai berikut : (2-1) Keterangan: Kecepatan
= kecepatan gelombang mikro yang dikirimkan dari satelit,
Waktu
= waktu yang dibutuhkan dari satelit mengirimkan sinyal hingga diterima GPS receiver,
Jarak
= jarak antara satelit dengan GPS receiver.
Dari diketahui jarak antara receiver dengan satelit, maka dapat ditentukan posisi receiver dengan cara mengirimkan balik sinyal ke satelit sehingga membentuk suatu lingkaran dari ketiga satelit yang ada.
12
2.1.5. TTFF (Time to First Fix) TTFF (Time to First Fix) adalah waktu yang diperlukan oleh sebuah GPS receiver untuk mengetahui posisinya saat ini. TTFF bergantung pada mode boot up mode GPS apakah hot start, warm start, atau cold start. Secara umum factor-faktor yang mempengaruhi boot mode antara lain sebagai berikut: •
Adanya data almanac dan ephemeris yang valid.
•
Kuat sinyal yang diterima receiver.
•
Posisi receiver dari tempat terakhir dimana dia fix atau memperoleh data yang valid (sekitar 100 km dari tempat terakhir dia memperoleh data yang valid).
•
Waktu terakhir fix atau memperoleh data yang valid. Setiap satelit GPS melakukan broadcast pesan navigasi dengan kecepatan
50 bit/s yang berisi kondisi informasi satelit GPS (ditransmisikan pada bagian pertama dari pesan), data ephemeris (ditransmisikan pada bagian kedua dari pesan), dan data almanac (ditransmisikan pada bagian akhir dari pesan). Pesan dikirim dalam frame dimana masing-masing frame memerlukan waktu 30 detik untuk mengirimkan 1500 bit. Setiap frame terdiri 5 subframe dengan lama 6 detik dan panjang 300 bit. Setiap subframe terdiri dari 10 words yang masing-masing terdiri dari 30 bit dengan masing-masing memerlukan 0,6 detik untuk dikirimkan.
13
Word 1 dan 2 dari setiap subframe memiliki tipe data yang sama. Word pertama mengindikasikan awal dari sebuah subframe dan digunakan oleh receiver untuk melakukan sinkronisasi dengan pesan navigasi. Word kedua merupakan
handover
memungkinkan
yang
word
receiver
untuk
memiliki
informasi
mengidentifikasi
waktu
yang
subframe
dan
memberitahukan waktu pengiriman subframe selanjutnya. Word 3 sampai 10 dari subframe 1 terdiri atas data yang menjelaskan clock satelit dan hubungan dengan waktu GPS. Word 3 sampai 10 dari subframe 2 dan 3 terdiri dari data ephemeris yang menunjukkan letak pasti dari satelit tersebut. Data ephemeris diperbaharui setiap sekitar 2 jam. Almanac terdiri dari posisi kasar (tidak begitu akurat) dan informasi status dari setiap satelit. Word 3 sampai 10 pada subframe 4 dan 5 terdiri dari sebuah bagian baru dari data almanac. Setiap frame memiliki 1/25 data almanac sehingga diperlukan waktu selama 12,5 menit untuk memperoleh almanac keseluruhan dari tiap satu satelit. Data almanac memiliki beberapa fungsi yakni untuk membantu penemuan satelit pada penyalaan atau membantu untuk memprediksi satelit mana yang terlihat dengan mengizinkan receiver untuk memberikan daftar satelit yang terlihat berdasarkan posisi dan waktu yang tersimpan sehingga mempersingkat waktu akuisisi. Data almanac akan disimpan di non-volatile memory. Sementara itu data ephemeris dari setiap satelit diperlukan untuk menghitung posisi menggunakan satelit tersebut. Jika receiver tidak memiliki data almanac maka akan menyebabkan waktu delay
14
yang lama sebelum memperoleh posisinya yang valid karena dilakukan pencarian terhadap masing-masing satelit merupakan proses yang lambat. Ketika sebuah GPS receiver sudah pernah fix dan dimatikan, posisi dan data yang valid akan disimpan. Ketika receiver dihidupkan kembali, dia akan berusaha untuk menggunakan informasi yang telah tersimpan dalam almanac untuk memprediksi satelit mana yang terlihat. Jika receiver telah berpindah terlalu jauh atau internal clock sudah tidak aktif (GPS tidak aktif dari 3 hari sebelumnya), maka data yang tersimpan tidak dapat digunakan untuk membantu memprediksi lokasi satelit. GPS memiliki beberapa mode start up, yaitu: •
Mode Cold Start GPS melakukan start up dalam mode ini ketika: o Receiver telah berpindah lebih dari 100 km dari lokasi fix terakhir. o Waktu saat ini tidak akurat atau tidak diketahui. o Sinyal yang diterima lemah. Satelit yang diprediksi secara fisik ada di atas atau terlihat tetapi receiver tidak bisa melihatnya misalnya karena adanya bangunan yang tinggi atau halangan lainnya. Situasi-situasi seperti di atas memiliki arti bahwa receiver tidak bisa memprediksi dan/atau membuktikan satelit mana yang terlihat. Receiver kemudian mencari semua satelit dan mencoba untuk memperolehnya secara bergantian. TTFF untuk cold start bisa mencapai belasan menit.
15
•
Mode Warm Start GPS melakukan start up dalam mode ini ketika: o Memiliki almanac yang valid. o Lokasi saat ini tidak lebih dari 100 km dari lokasi fix terakhir. o Waktu saat ini diketahui (GPS pernah aktif dalam tiga hari terakhir). o Tidak ada data ephemeris yang tersimpan. o Terdapat 4 atau lebih satelit dengan HDOP < 6 dan kekuatan sinyal yang bagus (misalnya satelit memiliki geometri yang bagus dan bisa melihat langit secara langsung). Receiver bisa memprediksi satelit mana yang terlihat tetapi perlu untuk memperoleh data ephemeris saat ini terlebih dahulu. TTFF untuk mode start ini biasanya sekitar 45 detik.
•
Mode Hot Start GPS receiver start up dengan mode hot start jika kondisi warm start terpenuhi dan ketika: o Sudah fix dalam 2 jam terakhir. o Receiver memiliki data ephemeris yang valid minimal untuk 5 satelit. Dalam mode ini, receiver dengan cepat mengetahui satelit yang terlihat dan hanya perlu memperoleh data yang sedikit untuk mengetahui posisinya. TTFF untuk hot start biasanya 22 detik.
16
TTFF bisa juga dipengaruhi oleh konstelasi atau posisi satelit. Semakin banyak satelit dalam lokasi yang bagus mengurangi TTFF dan meningkatkan akurasi. Minimal dibutuhkan 4 satelit untuk fix. Dengan 5 atau lebih dibutuhkan untuk kualitas fix yang lebih bagus. GPS bekerja dengan konsep triangulasi. Satelit yang berada tepat di atas (sudut elevasi 90o) memberikan hasil yang lebih tidak akurat dibandingkan dengan satelit dengan sudut elevasi yang lebih rendah. Namun sinyal dari satelit yang terlalu lemah pada langit yang harus melewati atmosfer bumi akan mengurangi akurasi juga. 2.1.6. Ketidakakuratan pada GPS Sistem GPS telah didesain untuk seakurat mungkin, tetapi masih ada penyimpangan yang terjadi. Ada banyak penyebab dari penyimpangan ini, yaitu : 1. Kondisi Atmosfer Kondisi atmosfer yang berubah mengakibatkan kecepatan sinyal GPS berubah karena sinyal tersebut melewati atmosfer bumi dan ionosfer sehingga kecepatan gelombang mikro dari satelit akan berubah, yang akan mempengaruhi perhitungan jarak menjadi tidak akurat. 2. Ephemeris Error dan Clock Error Sinyal pada GPS membawa informasi tentang error pada ephemeris (posisi secara orbital).
17
3. Selective Availabilty Selective Availability (SA) adalah teknik yang digunakan untuk menurunkan akurasi posisi waktu nyata bagi pengguna yang tak berhak, dimana merupakan suatu penyimpangan posisi yang disengaja dari sekitar 0 sampai ribuan kaki ke dalam sinyal navigasi yang ada secara umum. SA ini bisa dihilangkan dengan cara koreksi secara diferrensial. 4. Multipath Signal yang mengalami pantulan akibat memasuki atmosfer bumi ketika menuju ke antena GPS. 5. Dilution Of Precision (DOP) DOP merupakan sebuah indikator kualitas dari geometri pada konstelasi satelit. Perhitungan sebuah posisi bisa berbeda-beda tergantung pada satelit mana yang sedang digunakan. Perbedaaan geometri satelit bisa memperbesar atau bahkan memperkecil error pada GPS. Semakin besar sudut antara satelit yang satu dengan yang lainnya maka akan memperkecil nilai DOP, dan menghasilkan pengukuran yang lebih baik. Nilai yang tinggi pada DOP berarti mengindikasikan geometri yang buruk pada satelit.
18
Gambar 2.4 Posisi Baik pada Pemetaan
Gambar 2.5 Posisi Buruk pada Pemetaan 2.1.7. Format Kalimat GPS Perusahaan-perusahaan pembuat GPS memiliki format kalimat masingmasing untuk menyimpan hasil pengukuran GPS, sehingga sulit untuk menggabungkan data dari alat GPS yang berbeda. Masalah yang mirip terjadi saat ingin melakukan antar-muka terhadap berbagai alat yang berbeda, termasuk sistem GPS. Untuk mengatasi masalah ini, banyak peneliti yang membuat format standar untuk berbagai keperluan penggunanya. Format standar yang banyak digunakan saat ini ada empat, yaitu:
19
1. RINEX RINEX dibuat oleh sekelompok peneliti untuk mengatasi kesulitan mengkombinasikan data biner dari penerima GPS yang berbeda. Data RINEX merupakan format standar ASCII, sehingga memakan tempat yang lebih banyak dalam penyimpanannya. 2. NGS-SP3 NGS-SP3 dibangun oleh U.S. NGS yang merupakan akronim dari Standard Product #3, yang datanya berupa dokumen ASCII yang berisi data orbital yang presisi dan koreksi clock satelit yang bersangkutan. 3. RTCM SC-104 untuk Layanan DGPS Format ini merupakan format standar industri untuk mengirimkan koreksi waktu nyata DGPS yang diajukan oleh Radio Technical Commission for Maritime Services untuk memastikan operasi yang efisien dan koreksi pseudorange. 4. NMEA 0183 NMEA merupakan akronim dari National Marine Electronics Association, yang formatnya diadopsi sebagai format untuk antar-muka alat-alat elektronik kelautan. Format ini juga menggunakan data dalam format ASCII.
20
Tipe String: Tipe String
Deskripsi
$GPAAM
Waypoint Arrival Alarm
$GPALM
GPS Almanac Data
$GPBEC
Bearing & Distance to Waypoint, Dead Reckoning
$GPBOD
Bearing, Origin to Destination
$GPBWC
Bearing & Distance to Waypoint, Great Circle
$GPFSI
Frequency Set Information
$GPGGA
*Global Positioning System Fix Data (Time, Position,
$GPGLC
Elevation)
$GPGLL
Geographic Position, Loran-C
$GPGRS
*Geographic Position, Latitude/Longitude
$GPGSA
GPS Range Residuals
$GPGSV
*GPS DoP (Dilution of Precision) and Active Satellites
$GPHDG
*GPS Satellites in View
$GPHDT
Heading, Deviation & Variation
$GPHSC
Heading, True
$GPMWV
Heading Steering Command
$GPROT
(Time, Position, Velocity)
$GPRPM
Rate of Turn Tabel 2.1 Daftar kalimat NMEA
21
2.1.8. GGA (Global Positioning System Fix Data) (NMEA v2.3) Kalimat GGA menyediakan lokasi 3 dimensi. Format kalimatnya adalah: •
Data tidak valid $GPGGA,,,,,,0,03,,,M,,M,,*65
•
Data valid $GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,9.0,M,
,
,
,0000*18 Dimana: Istilah
Sintak
Satuan
Penjelasan
Sintak
$GPGGA
GGA protokol
Waktu UTC
161229.49
hhmmss.sss
Garis Lintang
3723.2475
ddmm.mmmm
Indikator N/S
N
N=north(utara) atau S=south(selatan)
Garis Bujur
12158.342
dddmm.mmmm
Indikator W/E
W
E= east(timur) atau W=west(barat)
Indikator Posisi
1
Satelit yang Digunakan
07
HDOP
1.0
Ketinggian Terhadap Air Laut
Horizontal Dilution of Precision 9.0
meter
(error secara horizontal)
22
Satuan
M
meter
Geoid Separation Satuan
meter M
meter
Age of Diff. Corr.
kosong bila DGPS tidak digunakan
Diff. Ref. Station ID
0000
Checksum
*18
Pegnecekan error
Akhir dari pesan Tabel 2.2 Kalimat GGA
2.2. GSM (Global System for Mobile Communication) 2.2.1. Pengenalan GSM Global system for mobile communication (GSM) merupakan standar yang diterima secara global untuk komunikasi selular digital. GSM adalah nama group standardisasi yang dimapankan pada tahun 1982 untuk menghasilkan standar telepon bergerak di Eropa, digunakan sebagai formula spesifikasi untuk sistem selular radio bergerak yang bekerja pada frekuensi 900 Mhz. 2.2.2. Spesifikasi Teknis GSM GSM didesain untuk beroperasi pada tiga jenis band frekuensi. Berikut dibawah ini adalah tabel perbandingan ketiga band frekuensi tersebut.
23
Tabel 2.3 Tabel Perbandingan 3 Band Frekuensi
2.3. SMS (Short Message Service) 2.3.1. Pengenalan SMS SMS merupakan singkatan dari Short Message Service yang berarti layanan pesan singkat. Ini merupakan teknologi yang memungkinkan pengiriman dan penerimaan pesan antara telepon mobile. SMS pertama kali muncul di Eropa pada tahun 1992. Pada awalnya ia dimasukkan ke dalam standar GSM (Global System for Mobile Communications). Kemudian dibawa oleh teknologi-teknologi wireless seperti CDMA dan TDMA. Standar GSM dan SMS awalnya dikembangkan oleh ETSI (European Telecommunications Standard Institute). Sekarang 3GPP (Third Generation Partnership Project)
24
yang bertanggungjawab atas perkembangan dan maintenance standar GSM dan SMS. Sesuai namanya “layanan pesan singkat”, data yang bisa dibawa oleh sebuah SMS sangat terbatas. Satu pesan SMS maksimal bisa memuat 140 bytes (1120 bits) data, sehingga satu SMS bisa terdiri dari: •
160 karakter jika encoding karakter 7-bit yang digunakan. (Encoding karakter 7-bit cocok untuk encoding karakter Latin seperti alfabet Inggris).
•
70 karater jika encoding Unicode UCS2 16 bit yang digunakan. (Pesan SMS terdiri dari karakter non-Latin seperti karakter Chinese, Jepang, Arab, Korea). Di samping teks, pesan SMS bisa juga membawa data biner. Hal ini
memungkinkan untuk mengirim ringtone, gambar, logo operator, wallpaper, business card (misalnya VCards), dan konfigurasi WAP untuk telepon selular dengan pesan SMS. Satu keuntungan utama dari SMS adalah ia 100% didukung oleh telepon selular GSM, tidak seperti halnya WAP dan mobile Java yang tidak didukung oleh model telepon selular lama. 2.3.2. Mekanisme Kerja SMS Mekanisme kerja pengiriman SMS dibagi menjadi tiga macam, yaitu:
25
•
Pengiriman SMS dalam satu operator (Intra-Operator SMS)
Gambar 2.6 Mekanisme Intra-operator SMS SMS yang dikirimkan oleh nomer pengirim akan dimasukkan terlebih dahulu ke dalam SMSC operator nomer pengirim, kemudian SMSC tersebut akan mengirimkan ke nomer yang dituju secara langsung. Nomer penerima akan mengirimkan delivery report yang menyatakan bahwa SMS telah diterima kepada SMSC. SMSC kemudian meneruskan report tersebut kepada nomer pengirim SMS, disertai status report dari proses pengiriman SMS tersebut. •
Pengiriman SMS antar operator yang berbeda (Inter-Operator SMS)
Gambar 2.7 Mekanisme inter-operator SMS
26
Selain masuk ke SMSC operator pengirim, SMS yang dikirimkan akan diteruskan oleh SMSC operator pengirim ke SMSC operator penerima SMS, kemudian baru diteruskan ke nomer tujuan. Delivery report yang dihasuilkanpun harus melewati mekanisme yang sama sebelum diterima oleh nomer pengirim. •
Pengiriman SMS dari suatu operator suatu negara ke negara lain (SMS Internasional) Mekanisme yang terjadi tidak jauh berbeda dengan mekanisme pada interoperator SMS. Perbedaannya hanya pada SMSC nomer penerima, yang tentu saja adalah SMSC operator luar negeri, dan penambahan kode negara pada nomer tujuan.
2.4. AT Command 2.4.1. Pengertian AT Command AT Command berasal dari kata attention command. Attention berarti peringatan atau perhatian, command berarti perintah atau instruksi. Jadi, AT Command ialah perintah atau instruksi yang dikenakan pada modem GSM atau telepon selular. AT Command diperkenalkan oleh Dennis Hayes pada tahun 1977 yang dikenal dengan “smart modem”. Modem bekerja pada baud rate 300 bps. Modem ini terdiri dari sederet instruksi yang mengatur komunikasi dan fiturfitur di dalamnya. Salah satu contoh sederhana penggunaan AT Command
27
misalnya komunikasi dua buah komputer menggunakan port COM(port RS232). AT Command mempunyai dua mode, yaitu mode data(data mode) dan mode perintah (command mode). Untuk berpindah dari mode data menuju mode perintah dipisahkan oleh tiga tanda plus dan jeda selama satu detik. Dalam perkembangannya AT Command banyak diterapkan pada mobile telepon selular. Instruksi dasar AT Command digunakan hampir oleh semua merk telepon selular. Namun demikian, ada beberapa instruksi yang ditambahkan sendiri pada handset tersebut oleh vendor pembuatnya. Penggunaan AT Command pada telepon selular telah mempermudah untuk mengetahui segala informasi yang terdapat pada handset tersebut. Dengan menggunkan instruksi tertentu kita akan dapat mengetahui merk, nomor IMEI dll. Selain itu dengan AT Command kita bisa menyetting instruksi atau mengaktifkan instruksi pada handset untuk melakukan fungsi tertentu, misalnya melakukan panggilan, mengirim sms, dsb. Perlu diketahui pula bahwa masing-masing vendor handset biasanya menyertakan AT Command yang mendukung produk tersebut. Setiap baris command dimulai dengan “AT” atau “at”. Oleh karena itu modem commands disebut dengan AT commands. Ada dua tipe AT command: •
Basic commands adalah AT command yang tidak dimulai dengan “+”. Contohnya, ATD (Dial), ATA (Answer), ATH (Hook control), dan ATO (kembali ke kondisi data online).
28
•
Extended command adalah AT command yang dimulai dengan “+”. Contohnya +CMGS (mengirim pesan SMS), +CMSS (mengirim pesan SMS dari media penyimpanan), +CMGL (mendaftar pesan SMS), dan +CMGR (membaca pesan SMS) merupakan extended commands.
2.4.2. Ketentuan dalam Penulisan Sintaks AT Command Semua command line harus dimulai dengan “AT” dan diakhiri dengan sebuah carriage return character (pindah baris (ASCII 13)). Misalkan untuk mendaftar semua pesan SMS masuk yang belum dibaca yang disimpan, ketik “AT” kemudian extended AT command “+CMGL”, dan terakhir sebuah carriage return character: AT+CMGL . Sebuah command line bisa terdiri atas lebih dari satu AT command. Hanya AT command pertama yang didahului dengan “AT”. AT command pada command-line string yang sama harus dipisahkan dengan titik koma. Misalnya untuk mendaftar semua pesan SMS masuk yang disimpan dan mendapatkan nama manufaktur dari mobile device, ketik “AT”, kemudian extended AT command “+CMGL”, diikuti dengan sebuah titik koma dan extended AT command selanjutnya “+CMGI”: AT+CMGL;+CGMI. Error akan terjadi apabila kedua AT command didahului dengan “AT”. Bila ingin menulis sebuah string dapat meggunakan tanda petik pada awal dan akhir kata. Misalnya untuk membaca semua pesan dari message storage, kita perlu memberikan string “ALL” untuk extended AT command +CMGL seperti berikut: AT+CMGL=”ALL”.
29
Respon informasi dan result code (baik final result code dan unsolicited result codes) selalu diawali dan diakhiri dengan sebuah carriage return character dan sebuah linefeed character. Misalnya setelah mengirim command line “AT+CGMI” ke mobile device, mobile device tersebut harus mengembalikan respon yang sama seperti berikut: Nokia OK Baris pertama merupakan respon informasi dari AT command +CGMI dan baris kedua merupakan final result code. dan mewakili sebuah carriage return character dan linefeed character. Hasil akhir “OK” menandakan akhir dari respon. Hal ini menandakan tidak ada data yang akan dikirim lagi dari mobile dvice. Dalam spesifikasi SMS, semua AT command merupakan huruf besar. Namun beberapa modem GSM/GPRS dan mobile phone mengizinkan penulisan AT command baik dalam huruf besar maupun huruf kecil. 2.4.3. Mode Operasi SMS: SMS Text Mode dan SMS PDU mode Terdapat dua mode yang bisa dioperasikan oleh GSM/GPRS modem atau mobile phone yakni SMS text mode dan SMS PDU mode. Berikut perbandingan SMS mode teks dan SMS mode PDU : •
Sintaks pada SMS AT command dan responnya Ketika modem GSM/GPRS atau mobile phone beroperasi pada mode teks maka pengiriman SMS dengan menggunakan format ASCII biasa.
30
Misalnya kita ingin mengirim SMS “It is easy to send text messages.” Ke nomor telepon +85291234567. Pada mode SMS mode teks harus dimasukkan command line berikut: AT+CMGS=”+85291234567”
It
is
easy
to
send
text
messages. Namun jika modem GSM/GPRS atau mobile phone beroperasi dalam mode PDU, eksekusi dari command line di atas akan menyebabkan terjadinya kesalahan dalam pengiriman. Hal ini disebabkan karena sintaks AT command +CMGS berbeda dalam mode SMS PDU. Untuk melakukan hal yang sama, command line berikut harus digunakan: AT+CMGS=4207915892000000F001000B915892214365F700002 1493A283D0795C3F33C88FE06CDCB6E32885EC6D341EDF27C1E3E 97E72E 2.4.4. Contoh Sintaks AT Command Beberapa contoh protokol AT Command yang biasa digunakan untuk melakukan SMS: •
AT+CMGF = Message Format
•
AT+CMGR = Read Message
•
AT+CMGS = Send Message
•
AT+CMGD = Delete Message
•
AT+CMGDA
= Delete All Message
31
Selain untuk melakukan SMS, terdapat beberapa AT Command untuk keperluan lainnya misalnya: •
ATH
•
AT+CSCLK = Configure Slow Clock
= Disconnect Existing Connection
Beberapa istilah yang perlu diketahui untuk memahami sintak-sintak dibawah ini: •
TA (Terminal Adapter) adalah suatu perangkat yang mengkonversikan jalur ISDN (Integrated Service Digital Network) ke POT (Plain Old Telephone) regular, sehingga bisa menyambungkan telepon standar atau modem ke saluran ISDN.
•
TE (Terminal Equipment) adalah jalur port keluaran (TX komunikasi Serial).
•
ME (Mobile Equipment) adalah alat komunikasi yang digunakan (Sim300).
2.4.4.1. Membaca Pesan SMS (AT+CMGR) •
Sintaks AT+CMGR=[,<mode>]
: nilai (dalam integer) dalam range dari nomor lokasi yang tempat penyimpanan SMS.
<mode>
: 0 untuk mode normal, 1 untuk tidak mengubah status dari SMS record.
32
•
Respon TA mengembalikan pesan SMS dengan nilai lokasi dari message storage <mem1> ke TE. +CMGR: <stat>,,[],<scts>[,,,,,<sca>, ,] Bila error terjadi berkaitan dengan fungsionalitas ME: +CMS ERROR: <err> Keterangan parameter: : representasi alfanumerik jenis string dari atau berkaitan dengan masukkan yang ditemukan di phonebook MT.
: destination address dalam format string
: user data dalam text mode <des>
: data coding scheme (default 0) atau Cell Broadcast Data Coding Scheme dalam format integer.
: oktet pertama dengan nilai default 17
: nilai integer yang menandakan panjang karakter dari body pesan <mid>
: message identifier dalam format integer
: nilai originating address dalam format string
: protocol identifier dalam format integer (default 0)
33
<sca>
: address value
<scts>
: service center time stamp dalam format time-string
<stat>
: 0 “REC UNREAD” pesan yang diterima dan belum dibaca; 1 “REC READ” pesan yang diterima dan sudah dibaca; 2 “STO UNSENT” pesan yang disimpan dan belum dikirim; 3 “STO SENT” pesan yang disimpan dan sudah dikirim; 4 “ALL” semua pesan.
: oktet
originating-address
type-of-address
dalam
format integer : oktet Type-of-Address dalam format integer 2.4.4.2. Mengirim Pesan SMS (AT+CMGS) •
Sintaks +CMGS = [,]teks yang dimasukkan
: destination address dalam format string
: oktet destination-address type-of-address : nilai integer yang menandakan panjang karakter dari body pesan •
Respon TA mengirim pesan dari TE ke jaringan. Nilai message reference <mr> dikembalikan ke TE bila pesan terkirim dengan sukses. +CMGS: <mr>
34
OK Jika terjadi error berkaitan dengan fungsionalitas ME: +CMS: <err> Keterangan parameter: <mr> 2.4.4.3.
: message reference dalam format integer
Menghapus Pesan SMS (AT+CMGD) •
Sintaks AT+CMGD =
•
Respon TA menghapus pesan dari lokasi pada message storage. OK ERROR Jika terjadi error berkaitan dengan fungsionalitas ME: +CMS ERROR: <err> Keterangan parameter:
: nilai (dalam integer) dalam range dari nomor lokasi yang didukung oleh associated memory
2.4.4.4. Menghapus Semua Pesan SMS (AT+CMGDA) •
Sintaks AT+CMGDA =
•
Respon OK
35
ERROR Keterangan parameter: “DEL READ”
: menghapus semua pesan yang telah dibaca
“DEL UNREAD” : menghapus semua pesan yang belum dibaca “DEL SENT”
: menghapus semua SMS yang telah dikirim
“DEL UNSENT” : menghapus semua SMS yang belum terkirim “DEL INBOX”
: menghapus semua SMS yang diterima
“DEL ALL”
: menghapus semua SMS
2.4.4.5. Mengatur Format Pesan SMS (AT+CMGF) •
Sintaks AT+CMGF=[<mode>]
•
Respon TA menset parameter format input dan output dari pesan yang digunakan Keterangan Parameter: <mode>
: 0 untuk PDU mode; 1 untuk text mode
2.4.4.6. Menolak Panggilan yang Masuk (ATH) •
Sintaks ATH[n]
•
Respon Memutuskan panggilan. OK
36
Keterangan parameter:
: 0 untuk memutuskan dari line dan mengakhiri panggilan
2.4.4.7. Konfigurasi Clock Rendah (AT+CSCLK) •
Sintaks AT+CSCLK = []
•
Respon OK ERROR Keterangan parameter:
: 0 – menon-aktifkan slow clock; 1 – mengaktifkan slow clock
2.5. Mikrokontroler 2.5.1. Pengertian Mikrokontroler Mikrokontroler merupakan sebuah prosesor yang digunakan khusus untuk kepentingan kontrol. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari elemen-elemen dasar yang sama. Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan instruksi-instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang
37
programmer. Program ini menginstruksikan komputer untuk melakukan jalinan yang panjang dari aksi-aksi sederhana untuk melakukan tugas yang lebih kompleks yang diinginkan oleh programmer. Beberapa fitur yang umumnya ada dalam mikrokontroler, yaitu: z
RAM (Random Access Memory) RAM digunakan oleh mikrokontroler untuk tempat penyimpanan variabel. Memori ini bersifat volatile yang berarti akan kehilangan semua datanya jika tidak mendapatkan catu daya.
z
ROM (Read Only Memory) ROM seringkali juga disebut sebagai code memory karena berfungsi untuk tempat penyimpanan program yang diberikan oleh user.
z
Register Register adalah tempat penyimpanan nilai-nilai yang akan digunakan dalam proses telah disediakan oleh mikrokontroller.
z
Special Function Register Special Function Register adalah register khusus yang berfungsi untuk mengatur jalannya mikrokontroller. Special Function Register ini terletak pada RAM.
•
Input dan Output Pin Pin input adalah bagian yang berfungsi sebagai penerima sinyal dari luar(sama seperti keyboard pada komputer), pin ini dapat dihubungkan ke berbagai media inputan seperti keypad, sensor, dan sebagainya. Pin
38
output adalah bagian yang berfungsi untuk mengeluarkan sinyal dari hasil proses algoritma mikrokontroler. •
Interrupt Interrupt bagian dari mikrokontroler yang berfungsi sebagai bagian yang dapat melakukan interupsi, sehingga ketika program utama sedang berjalan, program utama tersebut dapat diinterupsi (melompat ke program interrupt service routine). Beberapa interrupt pada umumnya, yaitu : 1. Interrupt external : interupsi akan terjadi bila ada inputan dari pin interrupt. 2. Interrupt timer
: interupsi akan terjadi bila waktu tertentu telah tercapai.
3. IInterrupt serial
: interupsi yang terjadi ketika terima data saat komunikasi serial.
2.5.2. Perbedaan Mikrokontroller dan Mikroprocessor Meskipun memiliki fungsi dan kemampuan yang hampir sama, terdapat beberapa perbedaan dari mikroprosesor dan mikrokontroller. Perbedaan tersebut antara lain terdapat pada hal berikut ini: 1. Mikrokontroller lebih ditujukan pada hal yang bersifat khusus untuk mengontrol dan memantau sesuatu yang lebih spesifik, sementara mikroprosesor biasanya digunakan untuk keperluan sistem kontrol dengan cakupan ruang lingkup yang lebih besar.
39
2. Sebagian besar mikrokontroller telah memiliki fasilitas yang telah terintegrasi seperti RAM, ROM, serta I/O,berbeda dengan mikroprosesor yang masih membutuhkan fasilitas lain sebagai komponen yang terpisah.
2.6. Komunikasi Serial Komunikasi serial merupakan komunikasi data dengan pengiriman data secara satu per satu per waktu tertentu. Sehingga komunikasi serial hanya menggunakan 2 kabel data yaitu kabel data untuk pengiriman yang disebut transmit (Tx) dan kabel data untuk penerimaan yang disebut receive (Rx). Kelebihan dari komunikasi serial adalah jarak pengiriman dan penerimaan dapat dilakukan dalam jarak yang cukup jauh dibandingan dengan komunikasi parallel tetapi kekurangannya adalah kecepatan lebih lambat daripada komunikasi parallel. Dalam komunikasi serial dikenal ada dua mode komunikasi serial: a. Mode Sinkron. Mode sinkron merupakan mode komunikasi yang pengiriman tiap bit data dilakukan dengan menggunakan sinkronisasi clock. Pada saat transmitter hendak mengirimkan data, harus disertai clock untuk sinkronisasi antara transmitter dengan receiver. b. Mode Asinkron. Komunikasi asinkron serial merupakan sebuah protocol transmisi asinkronus, dimana komunikasi ini tidak menggunakan clock, tetapi telah memiliki baud-rate yang telah disepakati oleh masing-masing sistem yang sedang berkomunikasi.
40
Kerja dari komunikasi ini adalah, sinyal start dikirimkan pada saat sebelum data dikirimkan, dan sinyal stop dikirimkan setelah setiap data selesai dikirimkan. Sinyal start digunakan untuk mempersiapkan mekanisme penerimaan untuk menerima dan memproses data yang akan dikirimkan dan sinyal stop berguna untuk mempersiapkan mekanisme penerimaan data berikutnya.
Gambar 2.8 Ilustrasi Cara Kerja Komunikasi Serial Asinkron
2.7. Komunikasi I2C 2.7.1. Pengenalan I2C I²C (Inter-Integrated Circuit) adalah multi-master serial komputer bus yang diciptakan oleh Philips yang digunakan untuk melampirkan kecepatan rendah peripheral ke motherboard, embedded sistem, atau ponsel. Sejak pertengahan 1990-an beberapa pesaing (misalnya Siemens AG (kemudian menjadi Infineon Technologies AG), NEC, ST Micron, Motorola (kemudian menjadi Freescale), Intersil, dll) membawa I²C produk di pasar. Pada 1 Oktober 2006, tidak ada biaya lisensi yang diperlukan untuk menggunakan protokol I²C.
Gambar 2.9 Skema I2C dengan Satu Master dan Tiga Slave
41
I²C menggunakan hanya dua jalur open-drain 2 arah (bidirectional), Serial Data Line (SDL) dan Serial Clock (SCL), dengan pull-up resistor. Tegangan yang digunakan adalah 5 V atau 3.3 V. I²C didesain memiliki 7-bit address dengan 16 reserved address, sehingga memungkinkan ada 112 slave yang dapat berkomunikasi pada bus yang sama. Umumnya I²C berkecepatan 100 kbit/s modus standar dan 10 kbit/s modus kecepatan rendah. Revisi terakhir I²C dapat berkomunikasi dengan kecepatan 400 kbit /s, 1 Mbit/s, dan bahkan 3,4 Mbit/s. 2.7.2. Referensi Desain Dalam perancangannya I2C menggunakan 2 jalur Clock (SCL) dan data (SDA) yang masing-masing memiliki peran sebagai berikut: •
Master chip yang mengatur kerja komunikasi (clock).
•
Slave chip yang diajak berkomunikasi. Pada I2C dimungkinkan terdapat multi master dan multi slave. Ada empat mode operasi untuk suatu perangkat bus, meskipun
kebanyakan perangkat hanya menggunakan satu peran dan dua mode: •
master mengirimkan - master mengirimkan data ke slave,
•
master menerima - master menerima data dari salah satu slave,
•
slave mengirimkan - slave pengiriman data ke master,
•
slave menerima - slave menerima data dari master.
42
Gambar 2.10 Timing Diagram dari I2C Master awalnya dalam mode mengirim akan mengirimkan start bit diikuti dengan 7-bit alamat dari slave, yang akhirnya diikuti oleh satu bit untuk memberitahu ingin menulis (0) atau membaca (1) ke atau dari slave. Jika slave telah menerima data dengan benar maka slave akan menjawab dengan sebuah ACK bit (logika low) untuk slave yang alamatnya benar. Master kemudian berlanjut dengan mengirimkan atau mode menerima. Alamat dan data byte yang dikirim dimulai bit yang paling signifikan (MSB) menuju ke (LSB). Start bit ditandai oleh pemberian logika high menuju ke logika low (Falling-Edge) dari SDA dengan SCL berlogik high, stop bit ditunjukkan dengan logika low ke logika high (Rising-Edge) dari SDA dengan SCL berlogika high.
Gambar 2.11 Master Menulis ke Slave
43
Jika master menulis data (1 byte) ke slave secara berulang maka slave akan mengirimkan sebuah bit ACK untuk setiap penerimaan 1 byte data. Dalam situasi ini, master dalam mode mengirim data dan slave dalam mode menerima data.
Gambar 2.12 Master membaca dari Slave Jika master ingin membaca dari slave secara berulang kali (lebih dari 1 byte), maka master harus mengirim bit ACK setelah sebuah byte diterima oleh master, tetapi apabila master tidak ingin membaca data lagi dari slave, maka master harus mengirim NACK setelah byte data terakhir. Dalam situasi ini, master dalam mode menerima dan slave dalam mode mengirimkan. Untuk menyelesaikan komunikasi master kemudian memberikan stop bit, atau dapat mengirimkan start bit lagi untuk mempertahankan bus kontrol untuk proses transfer data selanjutnya.
2.8. Komunikasi SPI 2.8.1. Referensi Desain Serial Peripheral Interface atau SPI adalah komunikasi data serial secara sinkron yang telah distandarkan oleh Motorola yang beroperasi secara mode full-duplex atau dengan kata lain dapat berkomunikasi dua arah secara
44
bersamaan. Dalam komunikasi SPI terjadi pertukaran data perangkat komunikasi antara master dan slave, di mana perangkat master berfungsi sebagai pengatur jalannya komunikasi data dan slave sebagai perangkat yang diajak
komunikasi.
Pada
komunikasi
SPI,
memungkinkan
untuk
berkomunikasi dengan beberapa slave dengan memanfaatkan pin chip select. SPI kadang disebut sebagai "four wire" atau empat jalur, karena pada SPI menggunakan empat buah jalur untuk berkomunikasi.
Gambar 2.13 Skema Jalur pada Komunikasi SPI Jalur pada SPI: •
SCLK - serial Clock (output dari master)
•
MOSI / SIMO - master Output, slave Input (output dari master)
•
MISO / SOMI - Input master, slave Output (output dari slave)
•
SS – pin pemilihan slave (aktif logic low , output dari master) Alternatif penamaan yang banyak digunakan:
•
SCK, CLK - Serial Clock (output dari master)
•
DI, DI, SI - Serial Data In, Data Dalam Serial, Dalam
•
SDO, DO, SO - Serial Data Out, Data Out, Serial Out
45
•
NCS, CS, NSS, STE – pin pemilihan slave (aktif rendah; output dari master) Pada penggunaannya SDO pada master harus dihubungkan ke SDI pada
slave, dan sebaliknya. Pin pemilihan slave pilih akan aktif bila diberi logic low. 2.8.2. Operasi Komunikasi SPI dapat beroperasi pada satu perangkat master dengan satu atau lebih perangkat slave. Jika hanya ada satu perangkat slave maka pin SS dimungkinkan untuk tetap berlogika low. Beberapa slave memerlukan falling-edge (logika high ke logika low) dari pin pemilihan slave untuk memulai tindakan seperti pada IC MAX124. Kebanyakan perangkat slave memiliki output tri-state sehingga pin MISO menjadi memiliki impedansi tinggi apabila perangkat tidak dipilih. Perangkat tanpa output tri-state SPI tidak dapat berbagi segmen bus dengan perangkat lain sehingga hanya satu slave yang dapat berkomunikasi dengan master. 2.8.3. Transmisi Data Untuk memulai komunikasi, master mengkonfigurasi nilai clock yang digunakan untuk kecepatan komunikasi. Kecepatan komunikasi SPI harus menggunakan frekuensi kurang dari atau sama dengan frekuensi maksimum dari perangkat slave. Frekuensi clock yang digunakan biasanya dalam kisaran
46
1-70 MHz. Kemudian, master akan memberikan logic low pada pin chip select dari perangkat slave yang akan diajak berkomunikasi. Pada setiap siklus clock, terjadi komunikasi data full-duplex: •
master mengirimkan satu bit data pada jalur MOSI, slave membaca data tersebut dari jalur yang sama,
•
slave mengirimkan satu bit data pada jalur MISO, master membaca data tersebut dari jalur yang sama.
Gambar 2.14 Skema Komunikasi Data pada SPI 2.8.4. Polaritas dan Fase Clock
Gambar 2.15 Diagram Polaritas dan Fase Clock Selain pengaturan frekuensi clock, master juga harus mengkonfigurasi polaritas dan fase clock sehubungan dengan spesifikasi dari perangkat slave.
47
Pengaturan polaritas dan fase clock dapat dilakukan pada CPOL dan CPHA. Sebagian besar vendor telah menggunakan penamaan ini. Berikut merupakan mode konfigurasi untuk clock: •
Pada CPOL = 0, nilai awal clock adalah 0 (warna merah): o untuk CPHA = 0, data dibaca ketika clock rising-edge (logika low ► logika high), data dapat diubah ketika clock falling-edge (logika high ► logika low), o untuk CPHA = 1, data dibaca ketika clock falling-edge (logika high ► logika low) dan data dapat diubah ketika clock rising-edge (logika low ► logika high).
•
Pada CPOL = 1 nilai awal clock adalah 1 (warna biru): o untuk CPHA = 0, data dibaca ketika clock falling-edge (logika low ► logika high), data dapat diubah ketika clock rising-edge (logika high ► logika low), o untuk CPHA = 1, data dibaca ketika clock rising-edge (logika high ► logika low) dan data dapat diubah ketika clock falling-edge (logika low ► logika high). Kombinasi polaritas dan fase sering disebut sebagai mode yang umumnya
berjumlah sesuai dengan konvensi berikut:
48
Mode
CPOL
CPHA
0
0
0
1
0
1
2
1
0
3
1
1
Tabel 2.4 Mode Komunikasi SPI
2.9. LCD (Liquid Crystal Display) 2.9.1. Pengenalan LCD LCD (Liquid Crystal Displays) adalah layar display yang mempunyai 2 lapisan material yang dipolarisasi dengan cairan semacam kristal. Bentuk paling sederhana dari teknologi LCD ini terdapat di kalkulator yang kita gunakan sehari-hari, atau penunjuk waktu (timer) pada microwave saat memanggang kue, dan tampilan jam digital. Bentuk canggih yang masih dapat kita nikmati di sekeliling kita ada pada layar monitor komputer dan laptop. Liquid Crystal diterjemahkan kristal (kristal benda padat) cair. Pada tahun 1888, seorang ahli botani, Friedrich Reinitzer, menemukan fase yang berada di tengah-tengah antara fase padat dan cair. Fase ini memiliki sifat-sifat padat dan cair secara bersama-sama. Molekul-molekulnya memiliki arah yang sama seperti sifat padat, tetapi molekul-molekul itu dapat bergerak bebas seperti pada cairan. Fase kristal cair ini berada lebih dekat dengan fase cair karena dengan sedikit penambahan temperatur (pemanasan) fasenya langsung
49
berubah menjadi cair. Sifat ini menunjukkan sensitivitas yang tinggi terhadap temperatur. Sifat inilah yang menjadi dasar utama pemanfaatan kristal cair. Jenis kristal cair yang digunakan dalam pengembangan teknologi LCD adalah tipe nematic (molekulnya memiliki pola tertentu dengan arah tertentu). Tipe yang paling sederhana adalah twisted nematic (TN) yang memiliki struktur molekul yang terpilin secara alamiah (dikembangkan pada tahun 1967). Struktur TN terpilin secara alamiah sebesar 900. Struktur TN ini dapat dilepas pilinannya (untwist) dengan menggunakan arus listrik. 2.9.2. Jenis-Jenis LCD Ada macam-macam jenis LCD, yaitu •
Monochrome LCD jenis ini sering kita jumpai di kalkulator, jam tangan digital, dan juga ponsel-ponsel
lama.
Cara
kerja
monochrome
di
ponsel
untuk
menghitamkan pixel adalah dengan memblokir cahaya yang akan keluar. Salah satu kelebihan dari monokrom adalah konsumsi daya yang lebih rendah dibandingkan dengan yang lain. •
Passive-Matrix Color Display Kebanyakan handphone layar berwarna awalnya menggunakan teknologi passive-matrix ini. Teknologi ini menggunakan sistem kawat yang berupa vertikal dan horizontal untuk memberi daya/menerangkan sebuah pixel. LCD ini mempunyai kelemahan di respon yang agak lambat, qualitas
50
tampilan kurang optimal dan kurang terang jika dibandingkan dengan tipe layar active-matrix. •
Active Matrix Color Display Active matrix memanfaatkan teknologi TFT (Thin Film Transistor) yang pada umumnya dipakai untuk notebook. Layar TFT menempatkan transistor di tiap-tiap pixel layar yang mampu dinyalakan dan dimatikan secara individual, sehingga menghasilkan tampilan gambar yang lebih tajam, terang, dan respon yang sangat cepat. Tetapi layar TFT mempunyain kelemahan yakni lebih mahal dan lebih mengonsumsi daya batterai. TFT adalah jenis LCD yang paling banyak digunakan hingga saat ini.
•
UFB UFB (Ultra Fine & Bright), sebuah teknologi LCD yang diciptakan dan diperkenalkan oleh Samsung pada tahun 2002. Dapat beroperasi hanya dengan 3mW dimana jauh lebih sedikit mengonsumsi daya dibandingkan TFT. Hal ini pastinya akan memperpanjang daya tahan baterai. Handphone yang menggunakan tipe layar UFB akan mempunyai ukuran yang lebih tipis. Ponsel yang menggunakan LCD jenis ini biasanya lebih tipis dibanding ponsel yang menggunakan LCD jenis lain, hal ini karena UFB hanya setebal 2,2 mm.
51
•
OLED OLED (Organic Light-Emitting Diode) juga dikenal sebagai LEP (LightEmitting Polymer) dan OEL (Organic Electro-Luminescence). Merupakan teknologi layar generasi baru yang terdiri dari titik-titik polimer organik yang memancarkan cahaya ketika diisi dengan listrik. Jika dibandingkan dengan LCD, layar OLED mempunyai kelebihan yakni lebih tipis (hanya sekitar 1 mm), ringan, terang, cepat, murah, dan mengonsumsi daya yang lebih dikit karena tidak memerlukan cahaya belakang/backlight). Kelemahan layar ini adalah sulit untuk melihat jika anda berada dibawah sumber cahaya seperti matahari.
2.10. Kompas Kompas adalah alat navigasi untuk mencari arah berupa sebuah panah penunjuk magnetis yang bebas menyelaraskan dirinya dengan medan magnet bumi secara akurat. Kompas memberikan rujukan arah tertentu, sehingga sangat membantu dalam bidang navigasi. Arah mata angin yang ditunjuknya adalah Utara, Selatan, Timur, dan Barat. Apabila digunakan bersama-sama dengan jam dan sekstan, maka kompas akan lebih akurat dalam menunjukkan arah. Alat ini membantu perkembangan perdagangan maritim dengan membuat perjalanan jauh lebih aman dan efisien dibandingkan saat manusia masih berpedoman pada kedudukan bintang untuk menentukan arah.
52
Lokasi magnet di Kutub Utara selalu bergeser dari masa ke masa. Penelitian terakhir yang dilakukan oleh The Geological Survey of Canada melaporkan bahwa posisi magnet ini bergerak kira-kira 40 km per tahun ke arah barat laut.
Gambar 2.16 Kompas Bentuk sederhana dari kompas adalah sebuah jarum (atau juga bisa menggunakan silet) yang kita beri muatan magnet (menggosok-gosokkan sebuah magnet di sepanjang jarum secara searah) lalu diletakkan di permukaan air (supaya mengapung kita bisa tusukkan ke sebuah gabus), maka secara ”ajaib” jarum itu akan menunjuk ke arah utara selatan. Bentuk kompas yang lebih modern adalah GPS (Global Position System) yaitu alat yang langsung dapat menunjukkan posisi kita di permukaan bumi dengan bantuan satelit yang berada di atas kita. Kompas elektronik seperti Wayfinder menggunakan paten teknologi sensor magnetis yang pertama kali dikembangkan oleh PNI, Inc untuk militer AS. Teknologi ini disebut "magneto-induktif" dan merupakan kemajuan terbesar dalam teknologi kompas sejak fulxgate diciptakan 60 tahun lalu.
53
Magneto-induktif yaitu teknologi elektronik yang dapat merasakan perbedaan medan magnet bumi yang disebabkan oleh unsur eksternal seperti bahan-bahan ferromagnetik dan medan magnet yang dihasilkan oleh sistem elektronik. Wayfinder kompas digital ini memiliki mikrokontroler yang tertanam untuk mengurangi medan magnet dari sistem elektronik (distorsi) dan medan magnetik bumi semakin dikuatkan sehingga kompas dapat secara akurat membaca arah mata angin. Kinerja sebuah kompas akan sangat tergantung pada lokasi instalasi. Sebuah kompas sangat bergantung pada medan magnet bumi untuk menentukan arah. Setiap distorsi medan magnet bumi dengan sumber-sumber magnet lain seperti kumparan pada motor harus dikompensasi dalam rangka untuk menentukan arah yang akurat. Sumber medan magnet di mobil Anda termasuk magnet permanen, motor, arus listrik dc atau ac, dan logam ferro-magnetik seperti baja atau besi. Kesalahan pembacaan kompas dapat dikurangi dengan menempatkan kompas jauh dari sumber-sumber magnet. Beberapa efek dari luar dapat dikompensasikan dengan cara mengkalibrasi kompas pada lokasi yang ditetapkan. Namun, beberapa gangguan tidak mungkin dikompensasi, misalnya gangguan gerak yang dihasilkan oleh logam magnetik, arus listrik atau dekat jaringan listrik. Magnetic shielding dapat digunakan untuk gangguan dari motor atau audio speaker. Cara terbaik untuk mengurangi gangguan adalah jarak, yaitu dengan menjauhkan kompas dari sumber-sumber medan magnet lain dan jangan pernah melapisi kompas magnetis dengan lapisan metalik atau logam.
54
2.11. Keypad dan Encoder Keypad adalah seperangkat tombol yang disusun dalam satu blok yang biasanya berisi angka, simbol lain, dan beberapa huruf-huruf abjad. Jika tombol-tombol tersebut kebanyakan berisi angka, maka juga dapat disebut keypad numerik. Keypad banyak ditemukan pada alfanumerik keyboard dan perangkat lain seperti kalkulator, kombinasi kunci dan telepon, yang sebagian besar memerlukan input numerik. Sesuai dengan persetujuan untuk standarisasi, tombol pada keypad gaya kalkulator diatur sedemikian rupa sehingga 123 ada di baris bawah. Sebaliknya, tombol 123 pada telepon berada di bagian atas. Juga tombol * (bintang) dan # (octothorpe) pada kedua sisi angka nol. Keypad juga sering digunakan sebagai perangkat input utama untuk embedded microcontrollers. Keypad sebenarnya terdiri dari sejumlah saklar, terbagi menjadi beberapa baris/kolom yang diatur sedemikian rupa.
Gambar 2.17 Struktur Fisik Keypad
55
Encoder adalah sebuah alat yang melakukan konversi data dari satu bentuk ke bentuk lainnya. Salah satu contohnya encoder keypad, encoder ini akan melakukan perubahan terhadap penekanan yang dilakukan pada keypad menjadi seurutan logika data.
2.12. MMC (Multi Media Card) 2.12.1. Penjelasan Umum Multi Media Card (MMC) adalah media penyimpanan dan komunikasi data yang kecil yang dirancang untuk aplikasi seperti pada mainan elektronik, PDA, kamera digital, telepon seluler, digital recorders, dan lain sebagainya. Tujuan dari fiturnya adalah mobilitas yang tinggi serta performa yang tinggi dengan biaya yang relatif rendah. Komunikasi MMC menggunakan 7 pin serial bus yang dirancang untuk beroperasi pada tegangan rendah. Protokol komunikasi didefinisikan sebagai suatu bagian dari standar ini dan disebut sebagai mode MultiMedia Card. Untuk kompabilitas, sebagai tambahan untuk mode MultiMedia Card, terdapat sebuat protocol komunikasi yang berbasis pada standar SPI. 2.12.2. Mode SPI pada MMC SPI mode terdiri dari sebuah protocol komunikasi opsional yang terdapat pada Flash-based MultiMedia Card. Mode ini merupakan bagian dari protocol MultiMedia Card yang dirancang untuk berkomunikasi dengan jalur SPI. Interface ini dipilih ketika pertama kali command reset setelah dinyalakan dan tidak bisa diubah ketika sudah menyala. Implementasi SPI pada MultiMedia Card menggunakan subset dari protocol MultiMedia Card dan command set. Standar ini ditujukan untuk digunakan oleh system yang hanya memerlukan satu card saja dan memiliki kecepatan
transfer
data
yang
lebih
rendah
(dibandingkan
dengan
56
MultiMediaCard protocol based system). Dari sudut pandang aplikasi, keuntungan dari mode SPI adalah kemampuan untuk menggunakan off-theshelf host (sudah terstandar). Kerugiannya adalah performa yang kalah dari MultiMediaCard protocol based system (misalnya dari jumlah card). Konsep dasar Multi Media Card adalah mengirim data melalui jalur-jalur komunikasi. Jalur-jalur komunikasi tersebut adalah: •
CLK: dengan setiap cycle dari sinyal ini pengiriman sebuah bit pada command dan data lines telah dilakukan.
•
CMD: jalur command yang dua arah yang digunakan untuk inisialisasi card dan data transfer command.
•
DAT: merupakan jalur data bidirectional. Sinyal DAT beroperasi pada mode push-pull.
2.12.3. Sistem File FAT-16 Sistem file FAT16 diperkenalkan pada MS-DOS pada tahun 1981. Awalnya dirancang untuk menangani file di floppy drive, dan telah memiliki modifikasi kecil selama bertahun-tahun sehingga dapat menangani hard disk. Keuntungan terbesar dari FAT16 adalah bahwa kompatibel di berbagai sistem operasi, termasuk Windows 95/98/ME, OS / 2, Linux, dan beberapa versi UNIX. Masalah terbesar dari FAT16 adalah bahwa ia tetap kerja maksimum pada setiap partisi, sehingga penggunaan hard disk menjadi lebih besar, ukuran setiap cluster harus mendapatkan lebih besar ruang. Dalam 2-GB partisi, masing-masing cluster adalah 32 kilobyte, yang berarti bahwa file terkecil sekalipun pada partisi akan mengambil ruang 32 KB. FAT16 juga tidak mendukung kompresi, enkripsi, atau keamanan yang canggih dengan menggunakan daftar kontrol akses. Media dengan kapasitas antara 16 MB sampai dengan 2 GB bisa menggunakan sistem file FAT 16. Setiap FAT16 memiliki komponen sebagai berikut :
57
•
Reserved region, yang mengandung boot sector,
•
FAT region, yang berisi table FAT,
•
Root directory,
•
File dan directory data region yang menyimpan file dan subdirectory. Bagian-bagian dalam FAT-16 yang perlu diketahui:
1. Reserved Region, 2. BIOS Parameter Block, 3. Boot Code, 4. Boot Signature, 5. File Allocation Table Region, 6. Root Directory Region, 7. File and Directory Data Region. 2.11.3.1. Reserved Region Reserved region merupakan bagian pertama pada FAT 16 yang terdiri dari sebuah sektor tunggal yang disebut boot sector. Alamat boot sector dimulai dari suatu nilai LBA yang disimpan di tabel partisi MBR (Master Boot Record). Pada media yang tidak memiliki master boot record, boot sector disimpan pada sector yang pertama. Boot sector terdiri dari sebuah BIOS Parameter Block (BPB) yang merupakan area yang terlah dipesan untuk boot code dan sebuah boot signature. 2.11.3.2. BIOS Parameter Block BPB adalah sector yang berisi informasi-informasi penting tentang MMC khusunya format (file sistemnya) yang akan digunakan. Data pada BIOS parameter block (BPB) terdapat pada byte ke 11 sampai 35 boot sector.
58
Byte
Deskripsi
Ukuran
Keterangan
11
Jumlah byte per
2
Umumnya digunakan
sector 13
512 byte
Jumlah sector per
1
cluster
Nilai yang dimungkinkan 1, 2, 4, 8, 16, 32, 64, dan 128.
14
Jumlah Reserve
2
Biasanya 1
Sektor 16
Jumlah FAT
1
Umumnya digunakan 2
17
Jumlah maksimum
2
Umumnya digunakan
data yang
512 byte
dimasukan pada root directory 22
Jumlah sector per FAT
2
Jumlah pada sebuah FAT
Tabel 2.5 Struktur dari Boot Sector FAT16 2.11.3.3. Boot Code Lokasi 62 sampai dengan 509 (448 byte) menyimpan boot code. Jika tabel partisi menandakan kalau sebuah volume dapat di-boot, pada boot up, kode yang dapat dieksekusi pada MBR loncat ke boot code pada volume boot sector. Boot code me-load sistem operasi. 2.11.3.4. Boot Signature Pada boot sector yang valid, byte ke-510 akan bernilai 55h dan byte ke-511 akan bernilai AAh. Untuk media dengan ukuran sector per cluster-nya lebih besar dari 512 byte, lokasi ini akan tetap sama walaupun bukan byte terakhir pada sektor. 2.11.3.5. File Allocation Table Region
59
File Allocation Table pada sistem tabel FAT 16 umumnya memiliki 2 copy yang identik. Setiap tabel FAT memiliki 16 bit entry untuk setiap volume cluster data. File yang membutuhkan beberapa cluster menggunakan FAT untuk me-maintain sebuah record dari cluster yang digunakan oleh setiap file. 2.11.3.6. Root Directory Region Dalam sebuah volume FAT 16, sektor-sektor setelah tabel FAT terdapat root directory. Root directory umumnya bisa menyimpan sampai dengan 512 masukkan dengan ukuran masing-masing 32 byte. Jika ukuran sector adalah 512 byte maka root directory memerlukan 32 sektor. Root directory memiliki informasi tentang file dan subfolder. Ukuran Byte
(byte)
Penjelasan
1
8 Nama file
9
3 Extension file
12
1 Attribute (hidden file, read only, dan lainnya)
13
1 Dipesan oleh windows
14
1
15
2 jam pembuatan
17
2 tanggal pembuatan
19
2 tanggal terakhir akses
21
2 dipesan oleh FAT32
23
2 Jam terakhir kali ditulis
25
2 Tanggal terakhir kali ditulis
27
2 Start cluster
29
4 Ukuran file Tabel 2.6 Struktur dari Root Directory FAT16
60
2.11.3.7. File and Directory Data Region Sektor- sektor setelah root directory dikelompokkan menjadi data cluster. Sebuah data cluster bisa terdiri dari satu atau beberapa sektor. Karena FAT memiliki masukkan untuk masing-masing cluster dan memesan dua masukkan pertama untuk tujuan lain, maka data cluster yang pertama merupakan cluster ke dua dengan yang sisanya mengikuti urutan dari cluster ke tiga dan seterusnya. File dan subdirectory disimpan pada cluster.
2.13. Algoritma Perhitungan Jarak dan Sudut antara Dua Titik 2.13.1. Garis Lintang Garis lintang suatu tempat di permukaan bumi adalah jarak sudut utara atau selatan dari garis khatulistiwa. Garis lintang biasanya dinyatakan dalam derajat (ditandai dengan °) berkisar dari 0° di khatulistiwa sampai 90 ° pada Kutub Utara dan Kutub Selatan. Garis lintang Kutub Utara adalah 90° N dan garis lintang Kutub Selatan adalah 90° S. Secara historisnya, para pelaut menghitung garis lintang di belahan bumi utara dengan melihat Bintang Utara Polaris dengan menggunakan alat sextant dan sight reduction tables untuk menghilangkan kesalahan ketinggian mata dan pembiasan atmosfer. Umumnya, ketinggian dari Polaris dalam derajat busur di atas cakrawala adalah lintang dari si pengamat. 2.13.2. Garis Bujur Mirip dengan garis lintang, garis bujur dari suatu tempat di permukaan bumi adalah jarak sudut timur atau barat dari meridian utama atau meridian
61
Greenwich. Bujur biasanya dinyatakan dalam derajat (ditandai dengan °) berkisar dari 0° di meridian Greenwich sampai 180° timur dan barat. Sydney, Australia, misalnya, memiliki sekitar bujur 151° timur. New York City memiliki bujur sekitar 74° barat. Dahulu pelaut berjuang untuk menentukan bujur tepat. Masalah ini dipecahkan dengan penemuan marine chronometer. Garis bujur dapat diketahui jika waktu yang tepat dari pengamatan diketahui. 2.13.3. Algoritma Perhitungan Jarak antara Dua Titik Menggunakan Rumus Haversine Rumus Haversine adalah persamaan yang penting dalam bidang navigasi, formula ini dapat memberikan jarak lingkaran besar antara dua titik pada sebuah bentuk bola dari garis lintang dan garis bujur. Nama rumus ini berasal dari kenyataan bahwa rumus tersebut biasa ditulis dalam bentuk fungsi haversine, atau haversin(θ) = sin2(θ/2). Secara historis, haversine, mungkin, memiliki sedikit keuntungan, yaitu nilai maksimum adalah satu, sehingga nilai-nilai dari tabel logaritmiknya bisa berakhir pada nol. Rumus ini hanyalah suatu perkiraan apabila diterapkan pada bumi, karena bumi bukanlah bola sempurna: jari-jari bumi R bervariasi dari 6.356,78 km di kutub ke 6.378,14 km di ekuator. Terdapat sedikit koreksi, biasanya sebesar 0,1% (dengan asumsi mean geometrik R = 6.367,45 km yang digunakan), karena ini bumi sedikit berbentuk lonjong dan tidak benar-benar berbentuk bulat.
62
Dengan rumus Haversine, jarak antara 2 titik pada permukaan bola dapat diketahui, maka rumus Haversine ini sering digunakan pada bidang navigasi untuk
perhitungan
jarak
titik-titik
di
permukaan
bumi.
Dengan
mengasumsikan bahwa bumi berbentuk bulat sempurna dengan jari-jari R (6.367,45 km) dan lokasi dari 2 titik di koordinat bola (lintang dan bujur) masing-masing adalah lon1, lat1 dan lon2, lat2 (lon dari longitude dan lat dari latitude), maka rumus Haversine dapat dituliskan dengan menggunakan fungsi atan2, menjadi: ∆
2
∆
2 sin 2
∆
1
(2-1)
1 cos
(2-2) 1
cos
2
sin
∆
2 √ , √1
(2-3) (2-4) (2-5)
keterangan: •
lon1 adalah bujur dari titik 1,
•
lat1 adalah lintang dari titik1,
•
lon2 adalah bujur dari titik 2,
•
lat2 adalah lintang dari titik2,
•
∆
adalah selisih bujur dari kedua titik,
•
∆
adalah selisih lintang dari kedua titik,
•
d adalah jarak antara dua titik (jarak melingkar dari bentuk bola),
63 •
R adalah radius dari bentuk bola, Paramater lon1, lat1 dan lon2, lat2 menggunakan bentuk radian. Untuk
mengkonversi dari bentuk derajat ke bentuk radian dapat dilakukan dengan mengalikan nilai derajat dengan
. Untuk mengubah kembali dari bentuk
radian ke derajat dapat dilakukan dengan mengalikan nilai radian dengan
.
Dalam deskripsi rumus di atas menggunakan fungsi atan2(y,x), atau inverse tangent dari y/x, dengan fitur tambahan untuk menentukan di kuadran mana sudut tersebut berdasarkan pada tanda pada x dan y. 2.13.4. Perhitungan Sudut Antara Dua Titik Terhadap Kutub Utara Bumi Algoritma untuk menghitung sudut antara dua titik adalah sebagai berikut: 1 sin
2 sin 2
sin
1
1 cos
2 1
cos 2 ,2
keterangan: •
lon1 adalah bujur dari titik 1,
•
lat1 adalah lintang dari titik 1,
•
lon2 adalah bujur dari titik 2,
•
lat2 adalah lintang dari titik 2,
•
tc1 adalah arah sudut dari titik 2 terhadap titik 1
•
pi adalah konstanta 3.141596…
2 , cos
1 (2-8)
64
Untuk algoritma di atas menggunakan referensi lintang Utara dan bujur Timur sebagai positif dan lintang Selatan dan bujur Barat sebagai negatif, sesuai dengan standar yang telah ditetapkan.