BAB II LANDASAN TEORIeprints.umm.ac.id/36037/3/jiptummpp-gdl-mahamegamu-47696-3-babii.pdf · BAB II...
Transcript of BAB II LANDASAN TEORIeprints.umm.ac.id/36037/3/jiptummpp-gdl-mahamegamu-47696-3-babii.pdf · BAB II...
5
BAB II
LANDASAN TEORI
2.1 Penelitian Terdahulu
Penelitian terdahulu yang menjadi acuan dan pedoman bagi penulis untuk
penelitian yang selanjutnya ini adalah sebagaimana telah dilakukan oleh Alvianto
Romansyah (2015) dengan judul “Aplikasi Sistem Pelacakan Kinerja Pengiriman
pada Truk Pengangkut Barang Berbasis Android” [1]. Hasil penelitian ini berupa
aplikasi client-server, dimana proses pengiriman data dari client menggunakan
aplikasi mobile android yang mengirimkan data ke server melalui web server,
kemudian data-data tersebut dipindai ke dalam peta digital untuk dimonitoring.
Sedangkan berdasarkan hasil analisa laporan sumber pada penelitian
tersebut menggunakan perangkat mobile Android sebagai media antar muka
dengan penggunanya. Namun pada penerapannya perangkat tersebut hanya dapat
berfungsi untuk mengetahui dimana lokasi kendaraan berada, tanpa dapat
mengetahui status keamanan pintu box/container apakah masih dalam keadaan
tersegel atau tidak karena tidak memanfaatkan sebuah sensor-pun yang digunakan
untuk memantau status pintu kontainer.
Selanjutnya pada tahun 2012 penelitian yang dilakukan oleh M. Junus
dengan judul “Sistem Pelacakan Posisi Kendaraan dengan Teknologi GPS dan
GPRS Berbasis Web” [2]. Hasil penelitian ini berupa aplikasi PHP dan
diintegrasikan dengan Google Maps API sehingga data tersebut dapat ditampilkan
pada situs Google Maps yang dapat diakses melalui web browser sebagai media
penampil. Sedangkan berdasarkan hasil analisa laporan sumber pada penelitian
tersebut informasi ditampilkan pada halaman web yang memuat konten peta dengan
data keterangan meliputi latitude, longitude, ketinggian, dan kecepatan kendaraan
yang akan muncul pada jendela Pop-Up.
2.2 Mikrokontroler
Mikrokontroler adalah sebuah sistem komputer atau sistem komputasi yang
dirancang untuk keperluan pengontrolan sistem. Mikrokontroler dilengkapi dengan
CPU (Unit Pusat Pemrosesan), memori dan perangkat perantara lainnya sehingga
6
sering disebut mikro komputer serpih tunggal. Tidak seperti sistem komputer yang
mampu menangani berbagai macam program aplikasi (misalnya pengolahan kata,
pengolahan angka, dan lain sebagainya), mikrokontroler hanya bisa digunakan
untuk suatu aplikasi tertentu saja (hanya satu program saja yang disimpan) [4].
2.2.1 Arduino Uno
Arduino Uno adalah sebuah board mikrokontroller yang berbasis
ATmega328. Arduino Uno memuat segala hal yang dibutuhkan untuk mendukung
sebuah mikrokontroler. Hanya dengan menghubungkannya ke sebuah komputer
melalui USB atau memberikan tegangan DC dari baterai atau adaptor AC ke DC
sudah dapat membuatnya bekerja. Arduino Uno menggunakan ATMega16U2 yang
diprogram sebagai USB-to-serial converter untuk komunikasi serial ke komputer
melalui port USB. Port serial yang ada pada Arduino juga bisa digunakan untuk
memantau data dari mikro tanpa menggunakan LCD [5]. Spesifikasi dari
mikrokontroler dengan jenis Arduino Uno adalah seperti pada Tabel 2.1 berikut:
Tabel 2.1 Spesifikasi Arduino Uno
No. Keterangan Spesifikasi
1. Microcontroller ATmega328P
2. Operating Voltage 5V
3. Input Voltage (recommended) 7-12V
4. Input Voltage (limit) 5-20V
5. Digital I/O Pins 14 (of which 6 provide PWM output)
6. Analog Input Pins 6
7. DC Current per I/O Pin 20 mA
8. DC Current for 3.3V Pin 50 mA
9. Flash Memory 32 KB (ATmega328P)
of which 0.5 KB used by bootloader
10. SRAM 2 KB (ATmega328P)
11. EEPROM 1 KB (ATmega328P)
7
Gambar 2.1. Arduino Uno [6].
2.3 Arduino Ethernet Shield
Ethernet Shield menambah kemampuan Arduino board agar terhubung ke
jaringan komputer. Ethernet Shield berbasis chip ethernet Wiznet W5100. Ethernet
library digunakan dalam menulis program agar Arduino board dapat terhubung ke
jaringan denga menggunakan Ehternet Shield. Arduino board berkomunikasi
dengan W5100 SPI (Serial Peripheral Interface). Komunikasi ini diatur oleh library
SPI.h dan Ethernet.h. Bus SPI menggunakan pin digital 11, 12, dan 13 pada
Arduino Uno. Pin digital 10 digunakan untuk memilih chip W5100 [7].
Pada Ethernet Shield biasanya juga memiliki port Power over Ethernet
(PoE). Tetapi ini jarang sekali digunakan karena power untuk tegangan untuk
ethernet shield bisa juga didapat dari Arduino board secara langsung. Koneksi data
yang digunakan oleh Ethernet Shield ke Arduino board menggunakan komunikasi
serial melalui SPI port [6].
8
Gambar 2.2. Arduino Ethernet Shield [7]
Spesifikasi dari Ethernet Shield adalah sebagai berikut:
1. Membutuhkan Arduino board
2. Operating voltage 5V (didapat dari Arduino board)
3. Ethernet Controller: W5100 with internal 16K buffer
4. Kecepatan koneksi: 10/100Mbps
5. Terkoneksi menggunakan SPI port Arduino
6. Memiliki slot SD card [7].
2.4 Global Positioning System
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. Sistem yang serupa dengan GPS
antara lain GLONASS Rusia, Galileo Uni Eropa, IRNSS India.
Sistem ini dikembangkan oleh Departemen Pertahanan Amerika Serikat,
dengan nama lengkapnya adalah NAVSTAR GPS (kesalahan umum adalah bahwa
NAVSTAR adalah sebuah singkatan, ini adalah salah, NAVSTAR adalah nama
yang diberikan oleh John Walsh, seorang penentu kebijakan penting dalam program
GPS). Kumpulan satelit ini diurus oleh 50th Space Wing Angkatan Udara Amerika
Serikat. Biaya perawatan sistem ini sekitar US$750 juta per tahun, termasuk
penggantian satelit lama, serta riset dan pengembangan.
9
GPS Tracker atau sering disebut dengan GPS Tracking adalah teknologi
AVL (Automated Vehicle Locater) yang memungkinkan pengguna untuk melacak
posisi kendaraan, armada ataupun mobil dalam keadaan Real-Time. GPS Tracking
memanfaatkan kombinasi teknologi GSM dan GPS untuk menentukan koordinat
sebuah obyek, lalu menerjemahkannya dalam bentuk peta digital [8].
2.4.1 Cara Kerja GPS
Sistem ini menggunakan sejumlah satelit yang berada di orbit bumi, yang
memancarkan sinyalnya ke bumi dan ditangkap oleh sebuah alat penerima sinyal
tersebut atau GPS Tracker. Selain satelit terdapat 2 sistem lain yang saling
berhubungan, sehingga jadilah 3 bagian penting dalam sistem GPS. Ketiga bagian
tersebut terdiri dari: GPS Control Segment (Bagian Kontrol), GPS Space Segment
(bagian angkasa), dan GPS User Segment (bagian pengguna).
Karena GPS bekerja mengandalkan satelit, maka penggunaanya disarankan
ditempat yang terbuka. Penggunaan di dalam ruangan, atau ditempat yang
menghalangi arah satelit (diangkasa), maka GPS tidak akan bekerja secara optimal
dan akurat. Setiap daerah di atas permukaan bumi ini minimal terjangkau oleh 3-4
satelit. Pada dasarnya, seiap GPS terbaru bisa menerima sampai 12 channel satelit
sekaligus. Kondisi langit yang cerah dan bebas dari halangan membuat satelit dapat
dengan mudah diterima oleh GPS, maka akurasi yang diberikan juga akan semakin
tinggi. Dengan mentransmisikan sinyal dari satelit ke perangkat GPS (portable
murni atau smartphone yang sudah memiliki GPS). GPS akan membutuhkan
transmisi dari 3 satelit untuk mendapatkan informasi dua dimensi (lintang dan
bujur), dan 4 satelit untuk 3 dimensi (lintang, bujur, dan ketinggian).
10
Gambar 2.1 Cara Kerja GPS [9]
5 Langkah cara kerja GPS:
1. Memakai perhitungan “triangulation” dari satelit.
2. Untuk perhitungan “triangulation”, GPS mengukur jarak menggunakan travel
time sinyal radio.
3. Untuk mengukur travel time, GPS memerlukan memerlukan akurasi waktu
yang tinggi.
4. Untuk perhitungan jarak, kita harus tahu dengan pasti posisi satelit dan
ketingian pada orbitnya.
5. Terakhir harus menggoreksi delay sinyal waktu perjalanan di atmosfer sampai
diterima reciever.
2.4.2 GPS uBlox Neo 6M
Pada penelitian kali ini modul GPS yang digunakan adalah berjenis uBlox
Neo 6M, jenis GPS ini cukup dapat diandalkan karena memiliki keakuratan yang
cukup baik dan juga beberapa fitur yang cukup menguntungkan di antaranya
terdapat baterai cadangan data, built-in elektronik kompas, dan built-in antena
keramik untuk menangkap sinyal dengan kuat. Kemudian untuk dapat
mengkomunikasikan GPS ini dengan Arduino diperlukan sebuah library yang
bernama “TinyGPS++.h”. Bentuk dari modul GPS uBlox Neo 6M dapat dilihat
pada Gambar 2.4 di bawah ini:
11
Gambar 2.4 GPS uBlox Neo 6M [15]
2.5 Sensor Limit Switch
Limit switch merupakan jenis saklar yang dilengkapi dengan katup yang
berfungsi menggantikan tombol. Prinsip kerja limit switch sama seperti saklar Push
ON yaitu hanya akan menghubung pada saat katupnya ditekan pada batas
penekanan tertentu yang telah ditentukan dan akan memutus saat saat katup tidak
ditekan. Limit switch termasuk dalam kategori sensor mekanis yaitu sensor yang
akan memberikan perubahan elektrik saat terjadi perubahan mekanik pada sensor
tersebut. Penerapan dari Limit Switch adalah sebagai sensor posisi suatu benda
(objek) yang bergerak. Simbol Limit Switch ditunjukan pada gambar berikut.
Gambar 2.5 Simbol dan Bentuk Limit Switch [3]
Limit Switch umumnya digunakan untuk:
1. Memutuskan dan menghubungkan rangkaian menggunakan objek atau benda
lain.
2. Menghidupkan daya yang besar, dengan sarana yang kecil.
3. Sebagai sensor posisi atau kondisi suatu objek.
12
Prinsip kerja Limit Switch diaktifkan dengan penekanan pada tombolnya
pada batas/daerah yang telah ditentukan sebelumnya sehingga terjadi pemutusan
atau penghubungan rangkaian dari rangkaian tersebut. Limit Switch memiliki 2
kontak yaitu NO (Normally Open) dan NC (Normally Close) dimana salah satu
kontak akan aktif jika tombolnya tertekan [3].
Kemudian alasan utama dipilihnya sensor Limit Switch sebagai indikator
tersegel atau tidaknya pintu yaitu bahwa pada tahap implementasinya nanti penulis
menggunakan sebuah alat peraga pintu kontainer dalam skala yang lebih kecil dari
ukuran pintu yang sebenarnya sehingga sensor Limit Switch ini telah cukup untuk
memenuhi kebutuhan.
2.6 Arduino Software IDE
IDE itu merupakan singkatan dari Integrated Developtment
Environment, atau secara bahasa mudahnya merupakan lingkungan terintegrasi
yang digunakan untuk melakukan pengembangan. Disebut sebagai lingkungan
karena melalui software inilah Arduino dilakukan pemrograman untuk melakukan
fungsi-fungsi yang dibenamkan melalui sintaks pemrograman.
Arduino menggunakan bahasa pemrograman sendiri yang menyerupai
bahasa C. Bahasa pemrograman Arduino (Sketch) sudah dilakukan perubahan
untuk memudahkan pemula dalam melakukan pemrograman dari bahasa aslinya.
Sebelum dijual ke pasaran, IC mikrokontroler Arduino telah ditanamkan suatu
program bernama Bootlader yang berfungsi sebagai penengah
antara compiler Arduino dengan mikrokontroler.
2.6.1 Menulis Sketch
Program yang ditulis dengan menggunaan Arduino Software (IDE) disebut
sebagai sketch. Sketch ditulis dalam suatu editor teks dan disimpan dalam file
dengan ekstensi .ino. Teks editor pada Arduino Software memiliki fitur”
seperti copy/cut/paste dan searching/replacing sehingga memudahkan dalam
menulis kode program.
Pada Software Arduino IDE, terdapat semacam message box berwarna
hitam yang berfungsi menampilkan status, seperti pesan error, compile,
13
dan upload program. Di bagian bawah paling kanan Sotware Arduino IDE,
menunjukan board yang terkonfigurasi beserta Port COM yang digunakan.
Gambar 2.6 Tampilan dari Arduino Software IDE
Kemudian fungsi dari beberapa tools yang terdapat pada toolbar di
antaranya adalah sebagai berikut:
1. Verify, berfungsi untuk melakukan checking kode yang dibuat apakah sudah
sesuai dengan kaidah pemrograman yang ada atau belum.
2. Upload, berfungsi untuk melakukan kompilasi dan mengunggah kode program
yang dibuat ke dalam Bootloader Arduino untuk dijalankan.
3. New, berfungsi untuk membuat Sketch baru.
4. Open, berfungsi untuk membuka Sketch yang pernah dibuat dan membuka
kembali untuk dilakukan editing atau sekedar upload ulang ke Arduino.
5. Save, berfungsi untuk menyimpan Sketch yang telah dibuat.
6. Serial Monitor, berfungsi untuk membuka serial monitor. Serial monitor disini
merupakan jendela yang menampilkan data apa saja yang dikirimkan atau
dipertukarkan antara Arduino dengan sketch pada port serial-nya. Serial
Monitor ini berguna sekali ketika ingin membuat program atau
melakukan debugging tanpa menggunakan LCD pada Arduino. Serial monitor
14
ini dapat digunakan untuk menampilkan nilai proses, nilai pembacaan, bahkan
pesan error.
2.7 MySQL
MySQL adalah sebuah program database server yang mampu menerima
dan mengirimkan datanya sangat cepat, multi user serta menggunakan perintah
dasar SQL (Structured Query Language). MySQL merupakan dua bentuk lisensi,
yaitu FreeSoftware dan Shareware. MySQL yang biasa kita gunakan adalah
MySQL FreeSoftware yang berada dibawah Lisensi GNU/GPL (General Public
License).
MySQL merupakan sebuah database server yang free, artinya kita bebas
menggunakan database ini untuk keperluan pribadi atau usaha tanpa harus membeli
atau membayar lisensinya. MySQL pertama kali dirintis oleh seorang programmer
database bernama Michael Widenius . Selain database server, MySQl juga
merupakan program yang dapat mengakses suatu database MySQL yang berposisi
sebagai Server, yang berarti program kita berposisi sebagai Client. Jadi MySQL
adalah sebuah database yang dapat digunakan sebagai Client mupun Server.
Database MySQL merupakan suatu perangkat lunak database yang berbentuk
database relasional atau disebut Relational Database Management System
(RDBMS) yang menggunakan suatu bahasa permintaan yang bernama SQL
(Structured Query Language).
2.7.1 Kelebihan MySQL
Database MySQL memiliki beberapa kelebihan dibanding database lain,
diantaranya :
1. MySQL merupakan Database Management System (DBMS).
2. MySQL sebagai Relation Database Management System ( RDBMS ) atau
disebut dengan database Relational.
3. MySQL Merupakan sebuah database server yang free, artinya kita bebas
menggunakan database ini untuk keperluan pribadi atau usaha tanpa harus
membeli atau membayar lisensinya.
4. MySQL merupakan sebuah database client.
15
5. MySQL mampu menerima query yang bertumpuk dalam satu permintaan atau
MultiThreading.
6. MySQL merupakan database yang mampu menyimpan data berkapasitas
sangat besar hingga berukuran GigaByte sekalipun.
7. MySQL didukung oleh driver ODBC, artinya database MySQL dapat diakses
menggunakan aplikasi apa saja termasuk berupa visual seperti Visual Basic dan
Delphi.
8. MySQL adalah database menggunakan enkripsi password, jadi database ini
cukup aman karena memiliki password untuk mengaksesnya.
9. MySQL merupakan database server yang multi-user, artinya database ini tidak
hanya digunakan oleh satu pihak orang akan tetapi dapat digunakan oleh banyak
pengguna.
10. MySQL mendukung field yang dijadikan sebagai kunci primer dan kunci unik
(Unique).
11. MySQL memliki kecepatan dalam pembuatan tabel maupun pembaruan tabel.
2.8 Web Server
Server atau Web Server adalah sebuah software yang memberikan layanan
berbasis data dan berfungsi menerima permintaan dari HTTP atau HTTPS pada
klien yang dikenal dan biasanya kita kenal dengan nama web browser (Mozilla
Firefox, Google Chrome, dan lainnya) dan untuk mengirimkan kembali yang
hasilnya dalam bentuk beberapa halaman web dan pada umumnya akan berbentuk
dokumen HTML.
Fungsi utama Web Server adalah untuk melakukan atau akan men-transfer
berkas permintaan pengguna melalui protokol komunikasi yang telah ditentukan
sedemikian rupa. Halaman web yang diminta terdiri dari berkas teks, video,
gambar, file dan banyak lagi. pemanfaatan web server berfungsi untuk men-transfer
seluruh aspek pemberkasan dalam sebuah halaman web termasuk yang di dalam
berupa teks, video, gambar dan banyak lagi.
Salah satu contoh dari Web Server adalah Apache. Apache (Apache Web
Server – The HTTP Web Server) merupakan web server yang paling banyak
dipergunakan di Internet. Program ini pertama kali didesain untuk sistem operasi
16
lingkungan UNIX. Apache mempunyai program pendukung yang cukup banyak.
Hal ini memberikan layanan yang cukup lengkap bagi penggunanya.
Beberapa dukungan Apache :
1. Kontrol Akses.
Kontrol ini dapat dijalankan berdasarkan nama host atau nomor IP CGI
(Common Gateway Interface) yang paling terkenal untuk digunakan adalah
PERL (Practical Extraction and Report Language), didukung oleh Apache
dengan menempatkannya sebagai modul (mod_perl)
2. PHP (Personal Home Page/PHP Hypertext Processor).
Program dengan metode semacam CGI, yang memproses teks dan bekerja di
server. Apache mendukung PHP dengan menempatkannya sebagai salah satu
modul-nya (mod_php). Hal ini membuat kinerja PHP menjadi lebih baik.
3. SSI (Server Side Includes).
Web Server Apache mempunyai kelebihan dari beberapa pertimbangan di
atas :
1. Apache termasuk dalam kategori freeware.
2. Apache mudah sekali proses instalasinya.
3. Mampu beroperasi pada berbagai platform sistem operasi.
4. Mudah mengatur konfigurasinya. Apache mempunyai hanya empat file
konfigurasi.
5. Mudah dalam menambahkan peripheral lainnya ke dalam platform web server-
nya.
Untuk contoh lain dari Web Server:
1. Apache Tomcat
2. Microsoft windows Server 2003 Internet Information Services (IIS)
3. Lighttpd
4. Sun Java System Web Server
5. Xitami Web Server
6. Zeus Web Server