1MPLEMENTAS1 SC A DA PADA ANDROID DENGAN...
Transcript of 1MPLEMENTAS1 SC A DA PADA ANDROID DENGAN...
1MPLEMENTAS1 SC A DA PADA ANDROID DENGANSIMULATOR MODBUSPAL STUDI KASUS
PERUSAHAAN X
Skr ips i
D isusun o l eh :
A u d y R a m a n d h a
10 9 0 9 10 0 0 159
PROGRAM STUDI TEKNIK IN FORM ATI KA FAKULTAS SAINS DAN TEK N O LO G I
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAHJAKARTA 2015 M / 1436 H
IMPLEMENTASI SCADA PADA ANDROID DENGANSIMULATOR MODBUSPAL STUDI KASUS
PERUSAHAAN X
S K K IPSI
Sebagai Salah Satu Syarat untuk M em peroleh Gelar
Sarjana K om puter
Pada Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Olch :
A udy Ramandha
109091000159
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2015 M / 1436 H
IMPLEMENTASI SCADA PADA ANDROID DENGAN SIMULATOR
MODBUSPAL STUDI KASUS PERUSAHAAN X
SKREPSI
Sebagai Sa lah Satu Syarat U ntuk M em pero leh G elar Sarjana K om puter
Fakultas Sains dan Tcknologi
U niversitas Islam N egcri S y a r if H idayatu llah Jakarta
Oleh:
A U D Y R A M A N D H A
109091000159
M enyetujui,
Pembimbing I P em bim bing II
Feri Fahrian to M .Sc
NIP. 19800029 201101 1 002
Hendra B lseno M.Kom
NIP. 1 9 8 2 1 2 1 1 2 0 0 9 1 2 1 003
M engetahui,
K ctua P rogram Studi T ckn ik Inform atika
Arini. M T
NIP. 19760131200901 2 001
IMPLEMENTASI SCADA PADA ANDROID DENGAN SIMULATOR
MODBUSPAL STUDI KASUS PERUSAHAAN X
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh G elar Sarjana Komputer
Pada Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh:
A U D Y R A M A N D I I AN I M : 109091000159
Menyetujui,
Pem bim bing I
Feri Fahrianto. M .Sc NIP. 19800829 2011 1 002
Pembjbnbing II
/Hendra Bavu no M.KomNIP. 1982121 f 200912 1 003
Penguji I
cA + Q ^
Andrew Fiade.M.Kom NIP. 19820811 2009 1 004
yns^j/m Teknologi
in. Nl.Si Hk3 999903 1 003
Mengetahui,
Ketua Program Studi Teknik Informatika
NIP. 19760131 200901 2 001
. 19820823 201101 2 013
Pengitji II
LEM BA R PER N Y A TA A N
D EN G A N INI SA Y A M E N Y A T A K A N BAHVVA SKRIPSI INI BEN A R
A S M H A SIL K A R Y A SEN D IR I Y A N G B E U J M PERNAH D IA JU K A N
SEBAG AI SKRIPSI ATA U K A R Y A ILM IAH PADA PER G U R UA N
TINGGI A TA U LEM BA G A M A N A PU N .
Jakarta, 10 Februari 2015
A udv Ramandha
NIM. 109091000159
v
AL'DY R A M A N D H A . Implementasi Scada Pada Android Dengan Simulator Modbuspal. Di bim bing oleh: Feri Fahrianto, M .Sc dan Hendra Bayu Suseno, M .Kom.
A BSTR A K
llingga saat ini (SCADA) m em pakan sistem control data dan pengawasan digital yang sedang populcr dan banyak ditcrapkan dalam bcrbagai b idang baik industri, perorangan, dan juga energi. Adanya dukungan perkem bangan teknologi jaringan komunikasi data scrta aplikasi sistem opcrasi yang mobile yang sudali dapat ditcrapkan di dalam perangkat handphone scperti Android, dengan dukungan teknologi didalam nya term asuk nirkabel, kem udahan akses data menjadi lebih terorganisir dengan menggunakan protokol Modbus. Dukungan Java untuk SCADA sudah mulai diberikan dengan adanya library open source yang bernam a Java M odbus (Jamod) yang m endukung protokol M odbus dengan TCP/IP. Proses monitoring yang dijalankan tcntu tidak optimal tanpa pcran sistem untuk mcncatat data yang ada mclalui library yang berpcran dalam proses pcncatatan atas akuisisi data yaitu Opcncsv. Dalam proses pcngopcrasian SCADA yang telah terkonsep dengan baik dengan Sistem Aplikasi Android tentunya dirancang dengan menu yang sederhana dan m udah dimengerti terutam a untuk proses training yang cfek tif sebelum operator bekerja di lapangan. Dalam pendukung proses pelatihan SCADA yang efektif, penulis berinisiatif untuk m enam bahkan sim ulator pendukung input data yang bernama ModbusPal. Piranti lunak ini selain m em perm udah pembelajaran juga diharapkan dapat menekan biaya atas pengadaan m odule perangkat keras yang dinilai mcm akan biaya yang tinggi juga konfigurasi yang menyita waktu. Diharapkan dengan adanya Skripsi ini bertujuan m em buat aplikasi yang m am pu melakukan pengendalian pengawasan dan juga akuisisi data yang baik dengan dukungan teknologi terbaru yang diharapkan dapat dikembangkan untuk pelatihan dan ju g a implementasi di lapangan. M etode yang digunakan pada skripsi ini adalah model proses extreme programming karena aplikasi yang akan dibuat tidak membutuhkan waktu yang lama (Agile method) dengan method pengetcsan Blackbox testing. Bahasa pem rogram an Java pada smartphone Android. Inti dari skripsi ini yaitu tcrlctak pada implementasi SCA D A pada OS Android dengan menggunakan Library SCA D A yaitu Jamod, transfer data menggunakan jaringan Nirkabel yang didukung protokol Modbus TCP/IP dengan sim ulator transmisi data menggunakan ModbusPal dengan library O penCSV untuk m enyim pan data yang tcrakuisisi dengan form at file CSV. Data dan informasi yang ditampilkan pada aplikasi ini diharapkan dapat m enjawab kcndala implementasi SCA D A yang dinilai cukup sulit terutama dalam pcngaplikasian dengan teknologi terbaru untuk bcrbagai keperluan.
Kata kunci: Implementasi, SCA D A , Android, Simulator, M odbus, ModbusPal, JaM od, OpenCSV, Nirkabel
K A TA PEN G A N TA R
B i sm i 1 lah irrahmanirrah i m ,
Alhamdulillah, puji syukur penulis panjatkan kepada Allah Subhanahu Wa
Ta 'a la atas seluruh rahmat dan karunia-Nya yang diberikan kepada penulis
schingga penulis dapat mclaksanakan pcnclitian skripsi ini dan mcnyclcsaikan
penulisannya dengan baik. Shalawat serta salam selalu tersampaikan kepada
Rasulullah Shalallahu Alaihi W asallam, keluarganya, sahabatnya, serta
pengikutnya yang setia hingga akhir zaman.
Skripsi ini berjudul Im plem entasi SC A D A pada Android dengan
Sim ulator M odbuspal Studi Kasus Perusahaan X , yang disusun untuk
mem enuhi salali satu syarat dalam m enyelesaikan program Strata 1 pada Program
Studi Tcknik Informatika di Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Harapan bahwa skripsi ini dapat bcrmanfaat bagi sem ua pihak yang
berkepentingan, merupakan kebahagiaan tersendiri bagi penulis w alaupun disadari
bahwa tiada gading yang tak retak tidak ada sesuatu pun yang sempurna
mclainkan Allah SW T S an g M ah a Penguasa Alam Semesta.
Pada kesempatan ini, penulis ingin menyam paikan ueapan terima kasih
kepada pihak-pihak yang telah m endukung terselesaikannya skripsi ini. Karena
tanpa dukungan dari mereka, penulis tidak akan m am pu menyelesaikan skripsi ini
dengan baik. Mereka yang telah m endukung penulis adalah :
1. Ibu dan Almarhum Ayah tercinta yang selalu mengiringi d o 'a dalam setiap
langkah.
2. Bapak DR. Agus Salim, M. Si, selaku Dekan Fakultas Sains dan Teknologi,
Universitas Islam Ncgeri Syarif Hidayatullah Jakarta.
3. Ibu Arini. MT, sebagai Ketua Program Studi Teknik Informatika, Fakultas
Sains dan Teknologi. Universitas Islam Negeri Syarif Hidayatullah Jakarta.
4. Bapak Feri Fahrianto M .Sc, selaku dosen pem bim bing I dan Sekretaris Ketua
Program Studi Teknik Informatika, Fakultas Sains dan Teknologi, Universitas
Islam Negeri Syarif Hidayatullah Jakarta, yang telah memberi banyak
masukan bagi penulis dalam m enyelesaikan skripsi ini.
5. Bapak Hendra Bayu Suseno M .Kom . selaku dosen pem bim bing II penulis
yang selalu menyemangati anak didiknya dan juga telah m em berikan banyak
bantuan bagi penulis dalam m enyelesaikan skripsi ini.
6. Anggi Cipla Bcrliani, istri saya, yang tak henti-hentinya memberikan
sem angat, waktu dan d o a untuk menyelesaikan skripsi ini, memberikan
motivasi di saal penulis mulai jenuh dengan skripsi ini.
7. Luthfi A urum Arrasyid, Anakku yang selalu menemani ayahnya begadang dan
mengganggu ayahnya dengan mem bantu mengetik serta senyum annya yang
m cm buat lelah pergi menghilang.
8. Saudara-saudaraku seperjuangan di Teknik Informatika yang sudah menemani
penulis dalam m enyelesaikan skripsi ini. terutam a sahabat-sahabatku sem ua di
FST TI angkatan 2009. Terima kasih.
9. Tem an-tem an saya di Perusahaan X, terima kasih sem angat dan sarannya
untuk penyclesaian skripsi ini.
10. Seluruh Dosen dan s ta f karyawan Fakultas Sains dan Teknologi, khususnya
Program Studi Tcknik Informatika. yang telah m cm bim bing penulis sclama
menuntut ilmu di Universitas Islam Negeri Syarif H idayatullah Jakarta.
11. Sem ua pihak yang sudah membantu dan tidak dapat disebutkan satu-persatu.
Penulis m engharapkan kritik serta saran yang mem bangun dari pem baca
untuk pcnulisan laporan yang lebih baik lagi. Kritik dan saran serta pcrtanyaan
dapat disampaikan ke penulis melalui email A udy.R am andha@ gm ail.com .
Semoga skripsi ini dengan izin Allah SW T dapat bermanfaat bagi semua
pembaca. Amin.
Jakarta, 10 Februari 2015
A udy Ramandha
NIM . 109091000159
mailto:[email protected]
DAFTAR ISI
H alam an
LEMBAR SAM PUL........................................................................................................i
LEMBAR PERNYATAAN......................................................................................... iv
ABSTRAK.........................................................................................................................v
KATA PENGANTAR................................................................................................... vi
DAFTAR IS I ................................................................................................................... ix
DAFTAR GAMBAR...................................................................................................xiii
DAFTAR TA B EL.........................................................................................................xv
BAB I PENDAHULUAN.............................................................................................. 1
1.1. Latar Belakang............................................................................................................1
1.2. Rumusan Masalah..................................................................................................... 4
1.3. Batasan M asalah........................................................................................................ 5
1.4. Tujuan Penelitian.......................................................................................................6
1.5. Manfaat Penelitian.................................................................................................... 6
1.6. Metodologi Penelitian...............................................................................................7
1.6.1. Metote Pengumpulan D ata....................................................................................7
1.6.2. Metode Pengembangan Sistem.............................................................................8
1.7. Sistematika Penulisan..............................................................................................9
BAB II TINJAUAN PUSTAKA............................................................................... 10
2.1. Konsep Implementasi............................................................................................ 11
2.2. Konsep SCADA..................................................................................................... 11
2.2.1 Konsep Akuisisi Data .................................................................................. 11
2.3. Konsep Modbus ................................................................................................... 12
2.3.1. Port Serial AT89S51......................................................................................19
2.4. Konsep Aplikasi Mobile.......................................................................................22
2.4.1. Pengertian A plikasi.......................................................................................22
2.4.2. Aplikasi M obile ..............................................................................................24
2.5. Simulator................................................................................................................25
ix
2.6. Google Android ................................................................................................... 26
2.6.1. Arsitektur Android........................................................................................ 27
2.6.2. Fitur Android.................................................................................................. 29
2.6.3. Versi Sistem Operasi Android.....................................................................30
2.6.4. Kelebihan dan Kekurangan Android...........................................................36
2.7. Basis D ata...............................................................................................................38
2.8. Software / Perangkat Lunak................................................................................. 38
2.8.1. Eclipse.......................................................................................................... 38
2.8.2. Android SDK(Software Development K it) .............................................. 39
2.8.3. Java................................................................................................................39
2.8.4. SQLite.......................................................................................................... 41
2.9. Library / Classpath............................................................................................ 42
2.10. Java Modbus Library (Jamod).......................................................................... 43
2.11. OpenCSV Library.............................................................................................. 44
2.12. Modbuspal........................................................................................................... 44
2.13. Agile Software Development.............................................................................49
2.14. Extreme Programming (XP) M odel................................................................. 51
BAB III METODOLOGI PEN ELITIA N .............................................................. 54
3.1. Tempat dan waktu penelitian................................................................................. 54
3.2. Metode Pengumpulan D ata....................................................................................54
3.2.1. Studi Pustaka.................................................................................................. 54
3.2.2. W awancara.....................................................................................................58
3.3. Metode Pengembangan Sistem.............................................................................. 58
3.4. Kerangka Berfikir................................................................................................... 59
BAB IV ANALISA DAN PEMBAHASAN............................................................. 61
4.1. Planning ................................................................................................................... 61
4.1.1. Visi Aplikasi.................................................................................................. 62
4.1.2. Fitur Kunci......................................................................................................63
4.1.3. Tujuan Aplikasi..............................................................................................63
x
4.1.4. Pengguna Aplikasi.......................................................................................64
4.1.5. Informasi yang Dibutuhkan.......................................................................64
4.1.6. Kebutuhan Aplikasi untuk A ndroid......................................................... 64
4.1.7. Kebutuhan atas Simulator Pendukung...................................................... 65
4.2. Design....................................................................................................................... 65
4.2.1. Use Case.........................................................................................................65
4.2.2. User Stories....................................................................................................66
4.2.3. Design CRC Card..........................................................................................67
4.2.4. Design G U I....................................................................................................72
4.2.5. Design Database............................................................................................ 75
4.3. Coding...................................................................................................................... 78
4.3.1. Pembahasan Fungsi...................................................................................... 78
4.4. Testing...................................................................................................................... 84
4.4.1. Pengujian dengan Unit Testing ................................................................. 84
4.4.2. Pengujian dengan Implementation Testing.............................................. 85
4.4.2.1. Bukti Pengujian Implementasi.......................................................87
4.5. Evaluasi Sistem....................................................................................................... 96
4.6 Contoh Training dan Simulasi................................................................................96
4.6.1 Contoh Kasus..................................................................................................96
4.6.2 Pembahasan Kasus.........................................................................................97
BAB V PEN UTUP................................................................................................... 104
5.1. Kesimpulan..........................................................................................................104
5.2. Saran..................................................................................................................... 105
DAFTAR PUSTAKA...............................................................................................107
LAM PIRAN...............................................................................................................109
Lampiran Hasil Wawancara..............................................................................109
Lampiran Koding................................................................................................113
xi
DAFTAR GAMBAR
Halaman
Gambar 2.1. Konsep SCADA...................................................................................... 11
Gambar 2.2. Sistem Pengiriman Query Respond .......................................................13
Gambar 2.3. Interval antar 3,5(atas) dan 1,5 (bawah) di dalam fram e ....................15
Gambar 2.4. Driver dan receiver pada SN75176...................................................... 21
Gambar 2.5. Logo Android.......................................................................................... 27
Gambar 2.6. Struktur Android......................................................................................28
Gambar 2.7. Logo Android versi 1.5 (Cupcake)........................................................31
Gambar 2.8. Logo Android versi 1.6 (Donut)............................................................32
Gambar 2.9. Logo Android versi 2.0/2.1 (Eclair).....................................................32
Gambar 2.10. Logo Android versi 2.2 (Froyo)...........................................................33
Gambar 2.11. Logo Android versi 2.3 (Gingerbread)............................................... 34
Gambar 2.12. Logo Android versi 3.0/3.1 (Honeycomb)..........................................34
Gambar 2.13. Logo Android versi 4.0 (Ice Cream Sandwich)..................................35
Gambar 2.14. Logo Android versi 4.1 (Jelly Bean)...................................................35
Gambar 2.15. Logo Java............................................................................................. 40
Gambar 2.16. Skema Model X P....................................................................................51
Gambar 3.1. Implementasi Scada pada Android dengan Simulator Modbuspal Studi
Kasus Perusahaan X ................................................................................... 60
Gambar 4.1. Use Case untuk Aplikasi DroidSCADA.....................................................66
Gambar 4.2. Desain Dashboard......................................................................................73
Gambar 4.3. Desain Device List.....................................................................................74
Gambar 4.4. Desain Tag Form .......................................................................................74
Gambar 4.5. Desain Device Form...................................................................................75
Gambar 4.6. Rancangan Database................................................................................... 76
Gambar 4.7. File Instalasi DroidSCADA.apk..................................................................88
Gambar 4.8. Menu instalasi DroidSCADA.apk.............................................................. 88
Gambar 4.9. Proses instalasi DroidSCADA.apk............................................................. 89
Gambar 4.10. Icon DroidSCADA terpasang di perangkatAndroid.................................89
Gambar 4.11. File Instalasi DroidSCADA.apk............................................................... 90
Gambar 4.12. Gambar Notifikasi atas belum adanya Device yang sudah dimasukkan.. 90
xiii
Gambar 4.13. Menu pada Dashboard DroidSCADA...................................................... 91
Gambar 4.14. Notifikasi apabila tidak ada data pada aplikasi.........................................91
Gambar 4.15. Tampilan Device List................................................................................92
Gambar 4.16. Tampilan input Sync Period pada Device Editor..................................... 92
Gambar 4.17. Detail Device Editor................................................................................. 93
Gambar 4.18. Gambar Detail untuk Setting untuk Suspend terhadap Device..................94
Gambar 4.19. Tampilan pada device list di yang sudah tersimpan..................................94
Gambar 4.20. Gambar Tag Editor....................................................................................95
Gambar 4.21. Gambar tampilan untuk mengatur Register Format.................................95
Gambar 4.22. Gambar Tentang Pengaturan tipe Register............................................... 96
Gambar 4.23. Gambar Tag yang sudah atur dan tersimpan............................................. 96
Gambar 4.24. Konfigurasi modbuspal.............................................................................99
Gambar 4.25. Konfigurasi device................................................................................101
Gambar 4.26. Device List........................................................................................... 101
Gambar 4.27. Konfigurasi Tag................................................................................... 101
Gambar 4.28. Dashboard setelah menambah 4 sensor............................................... 102
Gambar 4.29. Dashboard setelah service dijalankan................................................. 102
Gambar 4.30. Notifikasi Ekspor Data......................................................................... 103
Gambar 4.31. File hasil ekspor dibuka pada aplikasi MS Excel................................ 103
Gambar 4.32. Hasil rata - rata dari program MS Excel.............................................. 104
xiv
DAFTAR TABEL
H alam an
Tabel 2.1. ASCII Framing Frame pada transmisi ASCII........................................14
Tabel 2.2. RTU Framing Frame pesan pada mode transmisi R T U ....................14
Tabel 2.3. Tabel fungsi M odbus................................................................................. 16
Tabel 2.4. Exception Code .......................................................................................... 19
Tabel 2.5. Mode pada port serial AT89S51........................................................... 20
Tabel 2.6. Mode Pengiriman dan penerimaan data SN75176..........................................22
Tabel 3.1. Perbandingan Literatur Sejenis.....................................................................60
Tabel 4.1. CRC Card Dashboard.....................................................................................68
Tabel 4.2. CRC Card Device List.....................................................................................68
Tabel 4.3. CRC Card Device Form ................................................................................. 69
Tabel 4.4. CRC Card Tag Form.......................................................................................69
Tabel 4.5. CRC Device List Adapter................................................................................ 69
Tabel 4.6. CRC Card Tag List Adapter............................................................................69
Tabel 4.7. CRC Card Core............................................................................................ 70
Tabel 4.8. CRC Card Worker.......................................................................................... 70
Tabel 4.9. CRC Card Converter.......................................................................................70
Tabel 4.10. CRC Card CSV........................................................................................... 70
Tabel 4.11. CRC CardLocalDB...................................................................................... 71
Tabel 4.12. CRC Card Device......................................................................................... 71
Tabel 4.13. CRC Card Tag............................................................................................ 71
Tabel 4.14. CRC Card TagValue.....................................................................................71
Tabel 4.15. CRC Card Scale........................................................................................... 72
Tabel 4.16. CRC CardDeviceListObject.......................................................................72
Tabel 4.17. CRC Card TagListObject..............................................................................72
Tabel 4.18. CRC Card Modbus........................................................................................ 72
Tabel 4.19. Struktur Database Device.............................................................................77
Tabel 4.20. Struktur Database Tag.................................................................................. 78
Tabel 4.21. Struktur Database TagValue......................................................................78
Tabel 4.22. Hasil Pengujian Dengan Unit Testing........................................................ 86
Tabel 4.23. Hasil Pengujian Implementasi................................................................... 87
xv
BAB I
PENDAHULUAN
Pada saat ini, kemajuan teknologi sangat berpengaruh terutama sebagai
sistem pengawasan dan pengendalian, terutama dalam bentuk proses yang
menerapkan suatu sistem yang mengawasi setiap proses pada sistem dukungan
dalam bentuk penyimpanan akusisi data.
Dalam mendukung efisiensi dan efektifitas kegiatan industri dibutuhkan
metode pengawasan yang memiliki biaya lebih murah dibanding harus membeli
perangkat monitoring sistem yang terkontrol dan terakuisisi dengan implementasi
yang berbiaya tinggi yang disamping itu juga untuk memenuhi kebutuhan training
dan testing. Pada suatu industri yang memiliki banyak peralatan (plant) dengan
letak geografis yang tersebar pada jarak yang cukup jauh, diperlukan sebuah sistem
yang dapat melakukan pengawasan dan pengendalian jarak jauh. Sistem tersebut
harus mampu melakukan pengawasan (supervisory) dan pengendalian (controlling)
terhadap semua proses yang sedang berjalan.
Untuk mengatasi permasalahan tersebut, banyak industri yang menerapkan
SCADA (Supervisory Control and Data Acquisition) atau dapat juga diartikan
dalam Bahasa Indonesia sebagai pengawasan kontrol dan akusisi Data sebagai
sistem pengawasan dan pengendalian. Salah satu perusahaan yang bergelut di
bidang pengawasan seperti ini adalah perusahaan X, dimana perusahaan ini
memfokuskan diri sebagai penyedia perangkat PLC dengan koneksi Modbus TCP.
1.1. Latar Belakang
1
2
Sebagai perusahaan baru, perusahaan X ini belum mempunyai sarana untuk
kebutuhan pelatihan dan testing konfigurasi PLC mereka. Hasil wawancara dengan
beberapa orang yang terlibat (karyawan) di perusahaan X memang menunjukkan
belum ada solusi untuk pelatihan dan pengetesan perangkat mereka, sedangkan
solusi sementara membutuhkan pemahaman untuk bisa membaca data dari
perangkat seperti perangkat Modbus TCP. Hal ini mengindikasikan kebutuhan
aplikasi ringan berbasis Mobile untuk melihat hasil konfigurasi perangkat
monitoring mereka. Mereka juga membutuhkan aplikasi tersebut untuk melatih
pegawai mereka yang bertugas dengan peralatan untuk melakukan konfigurasi di
lapangan, yang difokuskan pada penggunaan aplikasi beserta pengenalan
fungsionalitas di dalamnya.
Berdasarkan kebutuhan diatas, untuk menyelesaikan permasalahan dalam
perusahaan X, penulis tertarik untuk melakukan implementasi sistem telekontrol
SCADA berbasis Android. Untuk mendapatkan informasi yang relevan dalam
identifikasi masalah dan penentuan atas fungsionalitas terhadap applikasi yang
akan dibuat di dalamnya, penulis melakukan tahap wawancara pada para pegawai
di perusahaan X dengan pendekatan User Stories yang menjadi bagian dari metode
Extreme Programming. Pembahasan tentang metodologi ini termasuk pembahasan
tentang penentuan permasalahan hingga proses testing dengan metode blackbox
testing akan dibahas dalam bab selanjutnya (bab 4). Dalam sistem telekontrol
SCADA ini, akan menggunakan Modbuspal yang didedikasikan sebagai simulator
pembentuk komponen Master dan Slave. Komunikasi antara Master dan Slave
menggunakan komunikasi fungsi dasar protokol Modbus. Kemudian peralatan yang
3
digunakan untuk input akuisisi data adalah android. Sistem perangkat mobile ini
memiliki keunggulan dalam mobilitas yang tinggi dengan aplikasi berbasis android
yang dibenamkan sebuah library yang bernama Java Modbus Library (Jamod)
untuk mempersingkat waktu pembuatan aplikasi. Dalam transfer data tentunya
diperlukan sebuah dukungan jaringan yang dapat diandalkan dengan sambungan
secara nirkabel (Wireless), sebagai bentuk implementasi jaringan yang akan
dipergunakan adalah pemancar nirkabel dengan menggunakan router yang sudah
tersambung dengan perangkat pemancar data dengan dukungan protokol Modbus
dan juga perangkat android. Untuk setiap data yang ditransfer tentunya
menggunakan port tertentu yang terhubung dari IP pada setiap PC yang terpasang
Modbuspal. Default port untuk Modbus adalah 502. Penulis akan
mengimplementasikan sebuah aplikasi yang bernama DroidSCADA yang berarti
SCADA yang berjalan pada sistem operasi Android. Dalam aplikasi tersebut fungsi
yang akan diterapkan dapat mengindentifikasi setiap Device dan Tag yang
terhubung dengan dengan aplikasi SCADA, menampilkan data yang yang
diakuisisi di dalam menu, pengaturan atas device dan tag serta proses backup data
dan beberapa menu akan meliputi View Dashboard System, View Device,
Device Menu , Tag menu , Export Data to CSV , dan fungsi yang pada setiap
penjelasannya akan dibahas pada bab 2 dan juga bab 4 untuk ulasan mengenai setiap
fungsi dari mekanisme atas aplikasi yang berjalan. Dan sebagai bentuk persiapan
aplikasi ini terhadap training, penulis akan mensisipkan contoh training yang akan
diterapkan oleh perusahaan X.
4
Berdasarkan identifikasi masalah yang penulis dapatkan dari proses
wawacancara dengan internal perusahaan X (User Stories) maka perumusan
masalah yang telah didapatkan adalah sebagai berikut :
1. Metode apa yang akan digunakan untuk menentukan kebutuhan sehingga dapat
menjawab pertanyaan utama tentang Aplikasi apa yang akan dibuat dengan
dasar dari akuisisi data yang dapat dipantau dalam kurun jangka waktu tertentu
dalam proses pelatihan.
2. Apa yang dapat dipakai sebagai solusi dari perangkat modul yang dinilai mahal
untuk kebutuhan testing dan memiliki nilai kepraktisan dari sisi hardware dan
software
3. Apa yang dapat dilakukan menyimpan data yang didapat sehingga dapat
ditentukan track record dari hasil pengarsipan atas akuisisi data
4. Bagaimana menentukan library khusus yang tepat terutama untuk proses
pendukung SCADA dan proses Back Up?
5. Bagaimana membangun aplikasi yang dapat menyesuaian terhadap kebutuhan
(User Requirement) yang berubah seperti perubahan konfigurasi, dan backup
dalam aplikasi monitoring SCADA dengan menggunakan smartphone berbasis
android 4.1.1 (Jelly Bean).
1.2. Rumusan Masalah
5
Berdasarkan masalah di atas maka ruang lingkup penelitian dibatasi pada:
1. Dalam Implementasinya aplikasi ini menggunakan user story sebagai acuan
yang didapat daripada para engineer di lapangan dan beberapa orang dari
internal perusahaan.
2. Penulis hanya memfokuskan pada bagaimana implementasi aplikasi
sehingga bisa berjalan, tidak pada sisi keamanan maupun infrastruktur
pendukung terhadap performa melainkan pada kecepatan pembuatan
aplikasi yang sederhana dan mendukung aspek pelatihan bagi tiap individu
yang berkecimpung di bidang otomasi, control dan monitoring. Apabila ada
hal yang dirasa akan berdampak pada hal-hal tersebut, akan dimasukkan ke
dalam bab saran yang akan digunakan untuk pengembangan selanjutnya.
3. Aplikasi ini mendukung pengaturan terhadap penentuan Port, dengan
koneksi nirkabel terhadap simulator Modbuspal dengan koneksi TCP/IP dan
batas register address 0-65535 yang dapat di simpan dengan Sampling
Period ke dalam format CSV.
4. Aplikasi dibuat dengan menggunakan mobile development system android.
5. Penulis hanya akan menggunakan Modbuspal sebagai simulator pendukung
dalam akuisisi data terutama dalam transfer data.
6. Aplikasi hanya mendukung koneksi Modbus TCP/IP dan dijalankan
menggunakan koneksi wireless.
7. Penggunaan library jamod (java Modbus) untuk akuisisi data menggunakan
protokol modbus dan library opencsv untuk ekspor data yang tersimpan
1.3. Batasan Masalah
6
kedalam format csv. Contoh simulasi training akan disisipkan di akhir bab
4, tidak disertai hasil pengerjaan dan hasil atas contoh training.
1.4. Tujuan Penelitian
Tujuan dari pembuatan tugas akhir ini adalah agar perusahaan X dapat
menyediakan sarana yang mudah dan murah bagi para engineer di perusahaan x
untuk dapat melakukan konfigurasi perangkat ataupun training untuk konfigurasi
PLC Modbus mereka sebelum terjun ke lapangan dengan menggunakan perangkat
android.
1.5. M anfaat Penelitian
1. Bagi Penulis
Sebagai masukan dan memperluas cakrawala penulis dalam
mengimplementasikan suatu sistem untuk memecahkan masalah-masalah yang
dihadapi dengan hal yang sederhana dan mendasar, serta bertujuan untuk
melengkapi tugas-tugas dan memenuhi syarat guna meraih gelar strata satu (S1)
program studi Teknik Informatika, Fakultas Sains dan Teknologi UIN Syarif
Hidayatullah Jakarta. Penulis juga mendapatkan manfaat teknis seperti reusable
codes yang dapat digunakan pada sistem serupa namun berbeda kasus
dikemudian hari. Ditambah penulis mendapatkan sebuah basis aplikasi yang
bisa lebih mudah untuk dikembangkan menjadi aplikasi SCADA dengan fitur
yang lebih lengkap.
7
2. Bagi Umum
Membantu dalam pemahaman terhadap suatu sistem yang mendukung
applikasi berbasis mobile SCADA untuk tujuan khusus seperti edukasi dan
keterampilan.
3. Bagi Perusahaan
Mempermudah dan menekan biaya pengadaan perangkat SCADA yang
lebih besar yang digunakan hanya untuk testing konfigurasi perangkat mereka.
4. Bagi Universitas
Memperkaya literatur tentang aplikasi mobile android khususnya pada
monitoring dan otomasi yang diaplikasikan ke berbagai bidang terutama
rekayasa teknologi (engineering).
1.6. Metodologi Penelitian
Metodologi penelitian yang digunakan dalam penulisan skripsi ini meliputi:
1.6.1. Metode Pengumpulan Data
Di dalam menyusun skripsi ini, penulis berusaha mendapatkan serta
mengumpulkan data yang lengkap guna menyusun karya ilmiah ini. Adapun
metode yang penulis gunakan dalam mendapatkan data-data sebagai berikut :
a. Penelitian Kepustakaan (Library Research)
Pengumpulan data dan informasi dengan cara membaca buku-buku dan
referensi dari internet yang dapat dijadikan acuan pembahasan dalam masalah.
Juga digunakan penelitian atas karya Studi literatur sebagai pembanding yang
baik dalam perencanaan dan pengembangan.
8
b. Penelitian Lapangan (Field Research)
Dalam hal ini penelitian dilakukan dengan wawancara bebas didalam
meeting yang dirangkum secara tertulis di perusahaan X.
1.6.2. Metode Pengembangan Sistem
Metode pengembangan sistem yang akan digunakan yaitu metode yang
mengikuti kaidah berbasis objek (object oriented). Pada kasus ini menggunakan
Agile Software Development dan proses model menggunakan Extreme
Programming (XP). Pemilihan metode ini dikarenakan aplikasi yang akan dibuat
tidak terlalu kompleks dan tergolong perangkat lunak kecil dan juga hanya
membutuhkan waktu pengerjaan yang singkat.
XP mencakup beberapa aturan dan praktek yang terdiri atas planning,
design, coding dan test. Berikut penjelasan dari masing-masing tahapan yang akan
dilakukan pada pembuatan aplikasi ini.
1. Planning : Perencanaan terhadap software yang diinginkan mengacu pada user
stories. User stories menggambarkan fitur dan fungsi yang dibutuhkan terhadap
software tersebut.
2. Design : Proses desain pada XP mengikuti prinsip KIS (Keep It Simple) dan
menggunakan CRC cards untuk design aplikasi.
3. Coding : Aplikasi akan dibuat menggunakan ADT (Android Development
Tools), juga akan membahas tentang implementasi coding berupa fungsi yang
berjalan.
4. Testing : testing terhadap aplikasi menggunakan Black box Testing dengan
cara Unit Testing.
9
Skripsi ini terdiri dari lima bab yang disusun sedemikian rupa dengan materi
pembahasan yang saling berhubungan dengan sistematika sebagai berikut :
BAB I PENDAHULUAN
Bab ini akan diuraikan latar belakang, perumusan masalah, batasan
masalah, tujuan dan manfaat penelitian, metodologi penelitian, dan
sistematika penulisan.
BAB II LANDASAN TEORI
Dalam bab ini akan dijelaskan mengenai landasan teori yang relevan
dengan permasalahan yang ada.
BAB III M ETODOLOGI PENELITIAN
Bab ini akan diuraikan metodologi penelitian yang digunakan
diantaranya metodologi pengumpulan data dan metodologi
pengembangan sistem.
BAB IV ANALISA DAN PEMBAHASAN
Bab ini akan diuraikan dan membahas hasil penelitian pengembangan
sistem SCADA meliputi hasil wawancara, analisis, desain,
implementasi, operasi dan sistem pendukung.
BAB V PENUTUP
Bab ini akan disajikan kesimpulan dan saran-saran yang penulis angkat
berdasarkan pembahasan pada bab-bab sebelumnya.
1.7. Sistematika Penulisan
BAB II
LANDASAN TEORI
2.1 . Konsep Implementasi
Implementasi adalah proses untuk memastikan terlaksananya suatu
kebijakan dan tercapainya kebijakan tersebut. Implementasi juga dimaksudkan
menyediakan sarana untuk membuat sesuatu dan memberikan hasil yang bersifat
praktis terhadap sesama. Van Horn Dan Van Meter mengartikan implementasi
kebijakan sebagai tindakan-tindakan oleh individu publik dan swasta (atau
kelompok) yang diarahkan pada prestasi tujuan yang ditetapkan dalam keputusan
kebijakan sebelumnya (Subarsono (2006 : 100)).
Jadi implementasi dimaksudkan sebagai tindakan individu publik yang
diarahkan pada tujuan serta ditetapkan dalam keputusan dan memastikan
terlaksananya dan tercapainya suatu kebijakan serta memberikan hasil yang
bersifat praktis terhadap sesama. Sehingga dapat tercapainya sebuah kebijakan
yang memberikan hasil terhadap tindakan-tindakan individu publik dan swasta.
Berdasarkan pengertian implementasi yang dikemukakan di atas, dapat
dikatakan bahwa implementasi adalah tindakan-tindakan yang dilakukan pihak-
pihak yang berwenang atau kepentingan baik pemerintah maupun swasta yang
bertujuan untuk mewujudkan cita-cita atau tujuan yang telah ditetapkan,
implementasi dengan berbagai tindakan yang dilakukan untuk melaksanakan atau
merealisasikan program yang telah disusun demi tercapainya tujuan dari program
yang telah direncanakan.
10
11
2.2. Konsep SCADA
Sistem SCADA (Supervisory Control And Data Acquisition) yang dalam
terjemahan Bahasa Indonesia Kontrol Pengawas dan Akuisisi Data adalah sebuah
sistem pengawasan dan pengendalian, dengan cara melakukan pengumpulan dan
analisa data secara real time. Sistem SCADA terdiri dari 3 bagian utama yaitu
Master, slave, dan media komunikasi. Arsitektur SCADA diperlihatkan pada
Gambar 2.1.
Sistem SCADA memiliki fungsi yaitu untuk pengukuran jarak jauh
(telemetering) dan pengendalian jarak jauh (telecontrolling). Dengan fungsi
tersebut, sistem SCADA mampu melakukan pengawasan dan pengendalian plant
jarak jauh.
2.2.1 Konsep Akuisisi Data
Akuisisi data adalah suatu proses pengambilan data sampel dari fenomena
fisik (suhu, tekanan dan lain-lain) dan mengkonversikan data sampel yang didapat
menjadi nilai numerik yang dapat dimanipulasi oleh sebuah komputer. Sistem
akuisisi data adalah kumpulan dari berbagai elemen-elemen elektronik yang
saling bekerja sama dengan tujuan melakukan pengumpulan, penyimpanan,
Gambar 2.1 konsep SCADA
12
pengolahan data, dan penyaluran data untuk dijadikan sebagai suatu bentuk
informasi yang berarti. Elemen-elemen dasar dari sistem akuisisi data berbasis
komputer (PC), sebagaimana ditunjukkan pada Gambar 2.1, antara lain :
Transduser;
Pengkondisi sinyal (signal conditioning);
Perangkat keras (hardware) akuisisi data;
Sebuah komputer PC; dan
Perangkat lunak (software) yang terkait.
(sumber : http://elib.unikom.ac.id/files/disk1/459/jbptunikompp-gdl-ahmadzaena-
22924-2-unikom_a-i.pdf)
2.3. Konsep Modbus
Protokol Modbus merupakan aturan-aturan komunikasi data dengan teknik
Master-Slave. Dalam konunikasi tersebut hanya terdapat satu Master dan satu
atau beberapa slave yang membentuk sebuah jaringan. Komunikasi Modbus
selalu diawali dengan query dari Master dan slave memberikan respon dengan
mengirimkan data atau melakukan aksi sesuai perintah dari Master. Master hanya
melakukan satu komunikasi dalam satu waktu. Slave hanya akan melakukan
komunikasi jika ada perintah (query) dari Master dan tidak bisa melakukan
komunikasi dengan slave yang lain. Pada saat mengirimkan query ke slave,
Master menggunakan 2 mode pengalamatan, yaitu:
Unicast mode : Master mengirimkan query kepada satu slave. Setelah
menerima dan memproses query, slave akan memberikan jawaban berupa respon
kepada Master.
http://elib.unikom.ac.id/files/disk1/459/jbptunikompp-gdl-ahmadzaena-
13
Broadcast mode : Master mengirimkan perintah (query) kepada semua
slave. Pada mode pengalamatan ini, slave tidak mengirimkan respon kepada
Master. Protokol Modbus membentuk sebuah format pesan untuk query Master
dan respon slave.
(Ju d y Adri) M V r
- r v i i v SJrtw Aillra-*;
h t f i t t m L t tk l in - ln r t t 1V
Q a a y D tila Rlmmhi-.i: Q it i
r r m rO ie r i i Ft t t ChSvk'
R flJU tt M r ftiitn StovC"
G am bar 2.2. System Pengirim an Query Respond
Mode Transmisi Serial Dalam jaringan Modbus terdapat 2 mode transmisi
serial, yaitu mode RTU dan mode ASCII. Setiap peralatan dalam sebuah jaringan
Modbus harus mempunyai mode dan parameter serial yang sama. Pengaturan
default Modbus adalah RTU, sedangkan mode ASCII adalah pilihan.
Pada Mode RTU (Remote Terminal Unit) Format masing-masing byte (11
bit) dalam mode RTU adalah:
Coding system : 8 bit biner, heksadesimal 0-9,A-F.
Bits per byte : 1 start bit. 8 data bits, Least Significant Bit (LSB) dikirim
pertama. 1 bit untuk even/odd parity, no bit untuk no parity. 1 stop bit jika
menggunakan parity, 2 bits untuk no parity.
Error check fie ld : Cyclical Redundancy Check (CRC).
Pada Mode ASCII (American Standard Code for Information Interchange)
Format masing-masing byte (10 bit) dalam mode ASCII adalah: coding system
heksadesimal, karakter ASCII 0-9, A-F. Bits per byte: 1 start bit. 7 data bits,
14
Least Significant Bit (LSB) dikirim pertama. Satu bit untuk even/odd parity, no
bit untuk no parity. Satu stop bit jika menggunakan parity, 2 bits untuk no parity.
Kemudian pada error check fie ld adalah penentuan jenis tipe pada Longitudinal
Redundancy Check (LRC). Kemudian hal yang perlu diketahui dari jenis
Modbus Message Framing yaitu ASCII Framing Frame dengan konsep
pengiriman pesan pada mode transmisi ASCII ditunjukkan pada Tabel 2.1.
Tabel 2.1 ASCII Framing Frame pada transm isi ASCII
START ADDRESS FUNCTION DATA LRCCHECK
END
1CHAR
2 CHAR 2 CHAR nCHAR
2CHAR
2CHARCRLF
Pada mode ASCII, pesan dimulai dengan sebuah karakter colon (:) dalam
ASCII 3A hex, dan diakhiri dengan sebuah pasangan carriage return - line feed
(CRLF) dalam ASCII 0D dan 0A hex. Kemudian selanjutnya, RTU framing
frame pesan pada mode transmisi RTU ditunjukkan pada gambar tabel 2.2
dibawah ini:
Table 2.2 RTU Framing Frame pesan pada mode transm isi RTU
START ADDRESS FUNCTION DATA CRCCHECK
END
>3,5CHAR
S BIT 3 BIT nxEBIT
i6B rr T3,>3.5
CHAR
Pada mode RTU, frame pesan dipisahkan oleh silent interval paling sedikit
waktu 3,5 karakter. Interval waktu ini disebut T3,5. Seluruh karakter dalam frame
pesan harus ditransmisikan secara bersambung. Interval antar karakter dalam
frame pesan tidak boleh lebih besar dari waktu 1,5 karakter (T1,5). Jika interval
15
antar karakter lebih besar dari T1,5, maka frame pesan tersebut dinyatakan tidak
lengkap dan akan diabaikan.
G am bar 2.3 interval an ta r 3,5(atas) dan 1,5 (bawah) di dalam frame
Address fie ld masing-masing slave harus mempunyai alamat yang berbeda
dalam range 1 - 247 untuk pengalamatan individual. Alamat 0 digunakan untuk
pengalamatan broadcast. Function fie ld function fie ld pada frame pesan berisi
nomer kode fungsi (function code). Kode fungsi yang valid mempunyai range 1 -
255, dimana kode 1 - 127 untuk fungsi normal, sedangkan 128 - 255 untuk fungsi
exception response. Function code berfungsi untuk memberitahu slave tentang
perintah yang harus dikerjakan dan sebagai indikasi respon normal atau jenis
error yang terjadi (exception response). Pada sistem komunikasi Modbus, jumlah
function code yang didukung bervariasi tergantung kontroler dan peralatan slave
yang digunakan.
16
Table 2.3 Tabel fungsi Modbus
KodeFungsi
Fungsi Aksi yang dikerjakan
1 = 01H Read CoiJ Status
Membaca status ON/OFF coil (output digital).
2 = 02H Read Input Status
Membaca status ON/OFF input digital.
3 = 03H Read Holding Registers
Membaca nilai output analog.
4 = 04H Read Input Registers
Membaca nilai input analog.
5 = 05H Force Single Coil
Mengset status satu coil pada keadaan ON/OFF.
6 = 06H Preset Single Register
Mengset nilai satu output analog.
15 = OFH
Force Multiple Coils
Mengset status beberapa coil pada keadaan ON/OFF.
16= 10H Preset Multiple Registers
Mengset nilai beberapa output analog.
Keterangan beberapa fungsi dasar yang perlu diperhatikan:
1. Coil = fungsi input secara biner untuk menyatakan input 1 adalah ON dan
0 adalah off, dapat diatur untuk fungsi unt.uk membaca, mengatur juga
menetapkan fungsi status (force) dengan output digital baik untuk satu
input/output maupun banyak sekaligus (multiple).
2. Input status (Input Contact) = menyatakan fungsi input yang dimasukkan
sebagai sebuah output pada hasil secara langsung secara digital..
3. Registers = menyatakan input/output yang dihasilkan dari penerimaan data
dari input secara analog baik digital baik untuk satu input/output maupun
banyak sekaligus (multiple).
Data field pada query berisi kode sebagai informasi tambahan pada
function code tentang aksi yang harus dikerjakan slave. Informasi tersebut bisa
berupa alamat input-output, jumlah input- output, jumlah byte data, atau nilai data
17
pengesetan. Jika tidak terjadi error, data field pada respon berisi data yang
diminta. Sedangkan pada exception response, data fie ld berisi exception code.
Error Checking Field. LRC (Longitudinal Redundancy Check) Pada mode
ASCII, error checking field berisi 2 karakter ASCII yang didasarkan metode
LRC. Prosedur perhitungan nilai LRC adalah:
1. Tambahkan semua byte pesan tanpa mengikutkan karakter start yaitu colon dan
karakter end yaitu CRLF, dan tanpa melibatkan carry.
2. Kurangkan nilai FF hex dengan nilai hasil penjumlahan semua byte pesan,
untuk menghasilkan komplemen 1.
3. Tambahkan hasilnya dengan 1 untuk menghasilkan komplemen dua. Hasilnya
merupakan nilai LRC.
CRC (Cyclical Redundancy Check) Pada mode RTU, error checking field
berisi sebuah nilai 16 bit (2 byte) yang didasarkan pada metode CRC. Prosedur
perhitungan CRC adalah:
1. Inisialisasi nilai register 16 bit CRC dengan FFFF hex.
2. Eksklusif OR 8 bit data pesan pertama dengan low order byte register CRC,
letakkan hasilnya di register CRC.
3. Geser kanan register CRC 1 bit ke arah LSB, dan MSB diisi dengan 0. Nilai
LSB register CRC yang tergeser diperiksa.
4. Jika LSB tergeser adalah 0, ulangi langkah 3 (pergeseran yang lain). Jika LSB
tergeser 1, eksklusif-OR register CRC dengan nilai A001 hex (1010 0000 0000
0001).
18
5. Ulangi langkah 3 dan 4 sampai delapan pergeseran. Setelah delapan pergeseran,
proses 8 bit data pesan pertama selesai.
6. Ulangi langkah 2 - 5 untuk 8 bit data pesan berikutnya sampai semua data
diproses.
7. Nilai akhir register CRC adalah nilai CRC. 8. Pada saat CRC ditempatkan di
pesan, nilai CRC low order byte dikirimkan terlebih dahulu dikuti high order
byte.
Pada exception response terdapat 4 proses komunikasi yang mungkin
terjadi antaraMaster dan slave, yaitu:
Jika slave menerima pesan query tanpa adanya kesalahan komunikasi, dan
Slave dapat menangani query tersebut, Slave akan memberikan sebuah respon
normal.
Jika slave tidak menerima query dikarenakan adanya kesalahan komunikasi,
maka tidak ada respon yang dikirimkan. Master akan memberikan kondisi
time-out untuk pengiriman query tersebut.
Jika Slave menerima pesan query, tetapi terdeteksi kesalahan komunikasi
(parity, LRC, atau CRC), maka tidak ada respon yang dikirimkan. Master
akan memberikan kondisi time-out.
Jika Slave menerima query tanpa adanya kesalahan komunikasi, tetapi Slave
tidak dapat menangani perintah tersebut (contoh: perintah untuk membaca coil
atau register yang tidak ada), Slave akan mengirimkan sebuah respon
pengecualian (exception response) untuk memberikan informasi kepada
master letak kesalahan yang terjadi. Pada sebuah exception response, slave
19
mengembalikan kode fungsi dengan MSB (Most Significant Bit) di set 1 dan
data fie ld diisi dengan kode pengecualian (exception code). Hal ini
dimaksudkan agar master mengetahui exception yang terjadi. Beberapa
exception code berikut keterangannya ditunjukkan pada gambar tabel 2.4.
Tabel 2.4 Exception Code
Kode Nama Arti01 ILLEGAL
FUNCTIONKode fungsi yang terdapat dalam query merupakan perintah (action) yang tidak diizinkan untuk Slave.
02 ILLEGALDATAADDRESS
Alamat data dalam quer\m merupakan alamat yang tidak diizinkan untuk Slave.
03 ILLEGAL DATA VALUE
Nilai dalam data field quenm merupakan nilai yang tidak diizinkan untuk Slave.
Komunikasi Serial Komunikasi serial ada 2 macam, yaitu komunikasi
sinkron dan asinkron. Komunikasi sinkron dilakukan dengan menambahkan
sinyal sinkronisasi. Komunikasi asinkron dilakukan dengan menetapkan
kecepatan bit (baud rate) dan menyisipkan beberapa bit protokol, yaitu bit start,
parity dan bit stop.
2.3.1 Port Serial AT89S51
Mikrokontroler AT89S51 memiliki fasilitas port serial yaitu P3.0 untuk
RxD dan P3.1 untuk TxD. Port serial AT89S51 ini bersifat fu ll duplex, artinya
dapat mengirim dan menerima data secara simultan. Selain itu memiliki buffer
penerima, sehingga port serial dapat bersiap menerima data kedua sebelum data
20
pertama dibaca dari register penerima. Register penerima dan pengirim port serial
diakses melalui SBUF (Serial Buffer).
Port serial AT89S51 dapat bekerja dalam 4 mode, dengan pemilihan
seperti dalam tabel 2.5.
Tabel 2.5 Mode pada port serial AT89S51
SMO SMI Mode Keteranaan Baud Rate0 0 0 Shift
Register1/12 Frekuensi Oscillator
0 L 1 8 bit UART Diset oleh Timer1 0 2 9 bit UART 1/64 atau 1/32 Frek.
Oscillator1 1 3 9 bit UART Diset oleh Timer
Baud rate untuk Mode 1 dan Mode 3 ditentukan oleh overflow rate Timer
1 dan nilai SMOD dengan persamaan sebagai berikut:
ySMODBaud Rate Mode 1,3 = ------- x Timer 1 Overflow Rate
32
Baud Rate Mode 1,3 = Frekuensi Osilator32 12 x [256-(77/1)]
Standar RS232 merupakan aturan mengenai level tegangan, konektor dan
aturan komunikasi. Standar RS232 memiliki level tegangan antara -3 sampai -15
Volt untuk logika high, dan antara +3 sampai +15 Volt untuk logika low. Level
tegangan antara -3 sampai +3 Volt tidak didefinisikan, sebab di daerah ini
kemungkinan adalah noise.
Pada komunikasi serial RS485 digunakan sepasang kabel untuk
mengirimkan satu sinyal. Tegangan antara kedua kabel saluran selalu berlawanan.
Logika ditentukan dari beda tegangan antara kedua kabel tersebut. SN75176
21
merupakan IC multipoint RS485 transceiver. Di dalam SN75176 terdapat sebuah
driver dan receiver seperti pada Gambar 2.4.
SN75176 dapat mendukung 32 unit paralel dalam satu jalur. Sensitivitas
tegangan input receiver 0,2 V dan jarak maksimum 4000 feet. Pada mode
pengiriman (transmitting), kaki enable kirim DE diberi logika 1. Keluaran A dan
B ditentukan oleh masukan driver D, dimana keluaran A akan sesuai dengan
logika driver D, sedangkan B berkebalikan. Jika input D berlogika 1, maka output
A akan bertegangan 5 Volt dan output B 0 Volt. Sebaliknya jika input D berlogika
0 maka output A bertegangan 0 Volt dan output B 5 Volt.
Pada mode penerimaan (receiving), kaki enable terima RE diberi logika 0.
Output receiver R ditentukan oleh tegangan diferensial antara input A dan B (VA
- VB). Jika tegangan diferensial VB A - VB lebih besar dari +0,2 Volt, maka
receiver R akan berlogika 1, sedangkan jika VA - VBB lebih kecil dari -0,2 Volt
maka receiver R akan berlogika 0. Untuk tegangan VA - VB antara -0,2 Volt
sampai +0,2 Volt, maka level logika keluaran tidak terdefinisi. Mode pengiriman
dan penerimaan data SN75176 ditunjukkan pada tabel 2.6.
DE
G am bar 2.4 Driver dan receiver pada SN75176
22
Tabel 2.6 Mode pengiriman dan penerim aan data SN75176
IN PU TD
E N A B L ED E
O U T PU TA B
H H H LL H L HX L Z Z
D IFFE R E N T IA L IN PU T S (A - B)
EN A B LE
R E
O U T PU TR
v m > < u v L H-0,2V < Vm < 0j2V L o
Vro < -0.2V L LX H Z
O PE N L 7
H = High Level, L = L ew Level, x = Irrelevant, Z high impedance (off), ? = Indeterm inate
Jika terdapat gangguan listrik yang menimpa saluran transmisi, maka
induksi tegangan gangguan akan diterima kedua kabel saluran sama besar. Karena
receiver membandingkan selisih tegangan antara dua kabel saluran, maka induksi
tegangan tidak akan berpengaruh pada output. Dengan kemampuan menangkal
gangguan yang sangat baik ini, RS485 bisa dipakai untuk membangun saluran
transmisi jarak jauh sampai 4000fee t dengan kecepatan tinggi.
2.4. Konsep Aplikasi Mobile
2.4.1. Pengertian Aplikasi
Aplikasi menurut Jogiyanto (1999:12), adalah penggunaan dalam
suatu komputer, instruksi (instruction) atau pernyataan (statement) yang disusun
sedemikian rupa sehingga komputer dapat memproses input menjadi output.
23
Menurut Kamus Besar Bahasa Indonesia (1998 : 52), Aplikasi adalah
penerapan dari rancang sistem untuk mengolah data yang menggunakan aturan
atau ketentuan bahasa pemrograman tertentu.
Aplikasi adalah suatu program komputer yang dibuat untuk mengerjakan
dan melaksanakan tugas khusus dari pengguna. Aplikasi merupakan rangkaian
kegiatan atau perintah untuk dieksekusi oleh komputer.
Program merupakan kumpulan instruction set yang akan dijalankan oleh
pemroses, yaitu berupa software. Bagaimana sebuah sistem komputer berpikir
diatur oleh program ini. Program inilah yang mengendalikan semua aktifitas yang
ada pada pemroses. Program berisi konstruksi logika yang dibuat oleh manusia,
dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada
pada instruction set.
Program aplikasi merupakan program siap pakai. Program yang direka
untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain. Contoh-
contoh aplikasi ialah program pemproses kata dan WebBrowser. Aplikasi akan
menggunakan system operation (OS) komputer dan aplikasi yang lainnya yang
mendukung.
Istilah ini mulai perlahan masuk ke dalam istilah Teknologi Informasi
semenjak tahun 1993, yang biasanya juga disingkat dengan app. Secara historis,
aplikasi adalah software yang dikembangkan oleh sebuah perusahaan. Aplikasi
adalah software yang dibeli perusahaan dari tempat pembuatnya. Industri PC
tampaknya menciptakan istilah ini untuk merefleksikan medan pertempuran
24
persaingan yang baru, yang paralel dengan yang terjadi antar sistem operasi yang
dimunculkan.
2.4.2. Aplikasi Mobile
Aplikasi adalah suatu perangkat lunak atau program yang ditulis oleh
manusia untuk melakukan tugas-tugas atau memecahkan masalah tertentu.
Sedangkan mobile dapat diartikan sebagai perpindahan yang mudah dari suatu
tempat ke tempat yang lain.
Aplikasi mobile merupakan aplikasi yang dapat digunakan walaupun
pengguna berpindah dengan mudah dari satu tempat ke tempat lain tanpa terjadi
pemutusan atau terputusnya komunikasi. Aplikasi ini dapat diakses melalui
perangkat nirkabel seperti handphone, smartphone, tablet dan PDA (Romdani,
2010).
Berikut ini merupakan karakteristik perangkat mobile, yaitu:
1. Ukurannya kecil; perangkat mobile memiliki ukuran yang kecil, konsumen
menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitas
mereka.
2. Memory yang terbatas; perangkat mobile juga memiliki memory yang
kecil yaitu primary (RAM) dan secondary (disk).
3. Daya akses yang terbatas; sistem mobile tidaklah setangguh desktop.
4. Mengkonsumsi daya yang rendah; perangkat mobile menghabiskan sedikit
daya dibandingkan dengan mesin desktop.
5. Konektivitas yang terbatas; perangkat mobile memiliki bandwidth rendah
bahkan beberapa perangkat tidak tersambung.
25
6. Kuat dan dapat diandalkan; karena perangkat mobile selalu dibawa
kemana saja, mereka harus cukup kuat untuk menghadapi benturan-
benturan, gerakan, dan sesekali tetesan air.
7. Masa hidup yang pendek; perangkat konsumen ini menyala dalam
hitungan detik kebanyakan dari mereka selalu menyala.
2.5. Simulator
Simulator dalam Depdiknas (2005: 1068) adalah program yang berfungsi
untuk menyimpulkan suatu peralatan, tetapi kerjanya agak lambat daripada
keadaan yang sebenarnya. Simulator juga dapat diartikan sebagai simulasi atau
objek fisik-benda nyata.
Simulasi dalam Depdiknas (2005: 1068) adalah metode pelatihan yang
meragakan sesuatu dalam bentuk tiruan yang mirip dengan keadaan
sesungguhnya. Bambang Sridadi (2009: 65) mengemukakan bahwa simulasi
adalah proses implementasi model menjadi program komputer (software) atau
rangkaian elektronik dan mengeksekusi software tersebut sedemikian rupa
sehingga perilakunya menirukan atau menyerupai sistem nyata (realitas) tertentu
untuk tujuan mempelajari perilaku (behaviour) sistem, pelatihan (training), atau
permainan yang melibatkan sistem nyata (realitas). Arief S. Sadiman (2010: 76
77) berpendapat tentang simulasi yang merupakan suatu model hasil
penyederhanaan suatu realitas.
Selain harus mencerminkan situasi yang sebenarnya, simulasi harus
bersifat operasional, artinya simulasi menggambarkan proses yang sedang
berlangsung. Simulasi dapat bersifat fisik (misalnya simulasi ruangan pengemudi
26
pesawat terbang), verbal (misalnya simulasi untuk pelajaran membaca
permulaan), ataupun matematis (untuk mengajarkan sistem ekonomi). Anderson
(1987: 181) berpendapat tentang pengaruh objek fisik atau benda nyata digunakan
dalam pendidikan akan memberikan rangsangan yang amat penting bagi siswa
dalam mempelajari tugas yang menyangkut keterampilan psikomotorik.
2.6. Google Android
Android adalah sistem operasi untuk perangkat mobile seperti handphone,
smartphone dan tablet pc yang berbasis Linux. Android menyediakan platform
terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk
digunakan oleh bermacam-macam piranti bergerak. Awalnya, Google.Inc
membeli Android.Inc, pendatang baru yang membuat piranti lunak untuk ponsel.
Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance,
konsorsium dari 34 perusahaan piranti keras, piranti lunak dan telekomunikasi,
termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia.
Pada saat perilisan perdana Android, 5 November 2007 Android bersama
Open Handset Alliance menyatakan mendukung pengembangan standar terbuka
pada perangkat seluler. Di lain pihak, Google merilis kode-kode Android dibawah
lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat
seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android.
Pertama, yang mendapat dukungan penuh dari Google atau Google Mail Services
(GMS) dan kedua adalah yang benar-benar bebas distribusinya tanpa dukungan
langsung dari Google, atau dikenal sebagai Open Handset Distribution (OHD).
27
wG am bar 2.5 Logo Android
2.6.1. A rsitektur Android
Arsitektur sistem terdiri atas lima layer, pemisahan layer bertujuan untuk
memberikan abstraksi sehingga memudahkan pengembangan aplikasi. Layer-
layer tersebut adalah layer aplikasi, layer framework aplikasi, layer libraries,
layer run-time, dan layer kernel. Gambar 2.6 memberikan gambaran umum
komponen-komponen dalam arsitektur sistem operasi Android.
G am bar 2.6 S truk tu r Android
28
Applications
Adalah semua aplikasi yang user miliki pada perangkat Android dimana
aplikasi utama Android berjalan seperti email client, program SMS, kalender,
peta, browser, dan lain-lain Semua aplikasi ditulis dalam bahasa
pemrograman java.
Application Fram ew ork
Adalah bagian dari struktur Android yang berisi framework API yang dapat
digunakan oleh pengembang / programmer. Android tidak membedakan core
applications dengan third-party applications dimana semuanya mempunyai
akses ke API yang sama. Framework Android dirancang untuk memudahkan
konsep re-use dari komponen.
L ibraries
Android memiliki satu set library, merupakan inti yang menjalankan aplikasi
yang bertujuan agar pengembang dapat langsung mengaksesnya. Beberapa
library inti tersebut adalah:
- Freetype ,berfungsi untuk rendering huruf bitmap dan vector.
- SQLite ,engine untuk database relasional yang ringan.
- LibWebCore ,engine untuk web browser.
- SGL ,engine untuk grafik 2D.
A ndroid Runtime
Terdapat 2 bagian penting dalam struktur ini yaitu Library Core dan Dalvik
Virtual Machine. Library Core berisi core libraries yang menyediakan
sebagian besar fungsionalitas yang serupa dengan API standar pada
29
pemrograman Java. Dalvik Virtual Machine merupakan register bases
sementara dari JVM (Java Virtual Machine) atau stack based. DVM
menggunakan kernel linux untuk menangani fungsionalitas tingkat rendah. Ini
memungkinkan user untuk menulis aplikasi C/C+ sama hal nya seperti pada
OS linux kebanyakan.
Linux Kernel
Google menggunakan kernel linux versi 2.6 untuk membangun sistem
Android, yang mencakup manajemen memori, pengaturan keamanan,
manajemen proses dan beberapa driver hardware. Kernel berperan sebagai
abstraksi atau penghubung antara hardware dan keseluruhan software.
2.6.2. F itur Android
Dalam perkembangannya ada beberapa fitur-fitur pokok yang ditawarkan
dari sistem operasi Android yang di implementasikan pada perangkat yang
digunakan. Adapun beberapa fitur yang terdapat pada Android, antara lain :
Kerangka Aplikasi : Memungkinkan penggunaan dan penghapusan komponen
yang tersedia.
Dalvik Virtual Mesin : Mesin virtual yang dioptimalkan untuk perangkat
mobile.
Grafik : Grafik di 2D dan 3D berdasarkan pada pustaka OpenGL.
SQLite : Tempat penyimpanan data yang terinstal didalam operating sistem.
Dukungan Media : Android mendukung berbagai media audio, video dan
format gambar.
30
Kamera, GPS (Global Positioning System), NFC dan Accelerometer
(tergantung perangkat yang digunakan.
Multi Touch : Kemampuan layaknya handset modern yang dapat
menggunakan dua jari atau lebih untuk berinteraksi dengan perangkat.
Lingkungan Development : Android menyediakan lingkungan development
yang lengkap dan kaya, termasuk perangkat emulator, tools untuk debugging,
profil dan kinerja memori dan plugin untuk Eclipse IDE.
Market : Seperti kebanyakan telepon selular yang memiliki tempat penjualan
aplikasi, Android juga memiliki tempat khusus bernama Android market yang
kini berganti nama menjadi Google Play Store yang merupakan katalog
aplikasi yang dapat di unduh dan di install pada perangkat Android melalui
media internet.
2.6.3. Versi Sistem O perasi Android
Dalam sistem operasi nya Android memiliki beberapa versi yang selalu
diperbaharui yang berguna untuk memberikan interface dan layanan yang terbaik
bagi pengguna nya. Berikut ini beberapa versi Android yang pernah dirilis :
1. Android versi 1.0 beta
Merupakan Android beta, pertama kali dirilis tanggal 5 november 2007
dan versi SDK (Software Development Kit) dirilis 7 hari setelah sistem operasi
nya yaitu pada tanggal 12 november 2007.
31
2. Android versi 1.0
Merupakan versi software Android komersial pertama yang dirilis pada
tanggal 23 September 2008. Perangkat Android pertama yang menggunakan
dan memperkenalkan Android 1.0 ialah ponsel HTC Dream (G1).
3. Android versi 1.1
Android versi 1.1 dirilis pada tanggal 9 februari 2009 dan pada awalnya
versi ini hanya diperuntukan untuk T-Mobile G1. Versi ini diluncurkan guna
untuk memecahkan masalah (bug), merubah API dan menambah sejumlah
fitur dari versi sebelumnya.
4. Android versi 1.5 (cupcake)
G am bar 2.7 Logo Android versi 1.5 (Cupcake)
Dirilis pada tanggal 30 April 2009 dan pada versi ini diberikan sebutan
lain yaitu cupcake. Dengan berbasis Linux Kernel 2.6.29 update ini membawa
sejumlah fitur dan perubahan pada antarmuka (user interface) dipercantik
dengan penambahan efek-efek animasi. Inovasi yang dikembangkan pada
versi ini lebih ke segi multimedia seperti kemampuannya yang dapat merekam
dan memutar video, dapat mengunggah foto ke Picasa dan video ke YouTube,
dilengkapi dengan soft keypad dengan fitur autocomplete, mendukung
32
penggunaan Bluetooth A2DP, dan ada penambahan Widget baru mengikuti
pola pada desktop.
5. Android versi 1.6 (donut)
G am bar 2.8 Logo Android versi 1.6 (Donut)
Pada 15 September 2009 google kembali merilis versi terbaru dari
sistem operasi Android yaitu versi 1.6 yang diberi nama donut. Didalamnya
terdapat sejumlah fitur terbaru seperti pengintegrasian antara kamera, kamera
video dan galeri foto, penggunaan baterai indikator dan kontrol applet VPN,
penambahan fitur seleksi multi untuk foto pada galeri foto, peningkatan fitur
voice search dan pengembangan fitur voice dial, pengembangan fitur
pencarian untuk bookmark kontak dan halaman web beserta kecepatan
pencarian, peningkatan teknologi jaringan CDMG (EVDO), wifi, gesture dan
mesin text-to-speech, mendukung layar dengan resolusi WVGA.
6. Android versi 2.0 / 2.1 (eclair)
G am bar 2.9 Logo Android versi 2.0/2.1 (Eclair)
33
Versi yang dirilis pada tanggal 3 desember 2009 ini banyak mengalami
pembaruan dari segi optimasi hardware dan juga segi perangkat lunaknya.
Perubahan user interface dengan browser baru dan dukungan HTML 5,
pengingkatan Google Maps 3.1.2, daftar kontak baru, dukungan tambahan
cahaya / flash pada kamera 3,2 Mega Pixel, keyboard virtual, Bluetooth versi
2.1.
7. Android versi 2.2 (frozen yoghurt/ froyo)
G am bar 2.10 Logo Android versi 2.2 (Froyo)
Merupakan versi penyempurnaan dari Android versi 2.0 eclair. Dirilis
pada tanggal 20 mei 2010 dan perbaikan pada 20 juni 2010. Pada versi ini
kinerja hardware bekerja lebih cepat, dapat melakukan instalasi aplikasi pada
memori eksternal, didukung dengan Adobe Flash 10.1, fitur Wifi portable
dapat digunakan pada area hotspot, dan fungsi update otomatis pada Android
Market sudah tersedia.
34
8. Android versi 2.3 (gingerbread)
i s k
G am bar 2.11 Logo Android versi 2.3 (Gingerbread)
Versi ini dirilis pada tanggal 6 desember 2010. Perubahan-perubahan
umum yang didapat dari Android versi ini antara lain peningkatan kemampuan
permainan (gaming), peningkatan kemampua copy-paste, layar user interface
di desain ulang menjadi lebih atraktif dan menarik, mendukung tingkat
resolusi yang lebih besar. Namun tidak semua perangkat selular bisa di
upgrade ke versi ini, ada spesifikasi minimum agar dapat di upgrade ke versi
gingerbread seperti kapasitas CPU 1 GHZ, RAM 512 MB dan diagonal layar
minimal 3.5 inci.
9. Android versi 3.0 / 3.1 (honeycomb)
T
G am bar 2.12 Logo Android versi 3.0/3.1 (Honeycomb)
Pada tanggal 22 februari 2011 versi Android 3.0 atau yang disebut
honeycomb dirilis. Merupakan versi Android pertama yang diperuntukan untuk
tablet. Mendukung layar yang lebih besar karena memang didesain khusus untuk
35
tablet. Honeycomb juga mendukung multi prosesor dan juga akselerasi perangkat
keras (hardware) untuk grafis. Perangkat tablet komputer pertama yang
menggunakan Android versi honeycomb ini adalah Motorola Xoom yang dirilis 24
februari 2011.
10. Android versi 4.0 (ice cream sandwich)
Dirilis pada tanggal 19 oktober 2011, versi terbaru ini banyak menawarkan
cukup banyak perbaikan dan perkembangan, versi ini membawa fitur honeycomb
untuk dapat digunakan pada smartphone dan menambahkan fitur baru termasuk
membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan
dan pengaturan, kontak jejaring sosial yang dapat terhubung dengan aplikasi
jejaring sosial lainnya beserta kontak secara terpadu, dapat mencari email secara
offline.
11. Android versi 4.1 (jelly bean)
G am bar 2.13 Logo Android versi 4.0 (Ice Cream Sandwich)
G am bar 2.14 Logo Android versi 4.1 (Jelly Bean)
36
Pada Android versi terbaru ini membawa sejumlah keunggulan dan fitur
baru diantaranya seperti meningkatkan input keyboard, desain baru pada fitur
pencarian, user interface dengan desain yang lebih menarik menawarkan bentuk
icon aplikasi yang lebih besar, pencarian melalui voice search yang lebih
responsive, serta kemampuannya dalam mengetahui informasi cuaca, lalu lintas
ataupun hasil pertandingan olahraga.
2.6.4. Kelebihan dan K ekurangan Android
Pada dasarnya setiap sistem operasi memiliki keunggulan dan
kekurangannya masing-masing, begitupun pada sistem operasi Android. Berikut
ini beberapa kelebihan / keunggulan yang terdapat pada sistem operasi Android,
antara lain :
Menawarkan kepada user untuk dapat menyesuaikan platform Google
Android yang membuka kesempatan membuat aplikasi untuk pemain kecil
dan baru yang tidak memiliki kekuatan financial untuk berinteraksi dengan
operator nirkabel seperti AT&T dan Orange.
Android merupakan sistem operasi terbuka (open source) yang
memungkinkan pengembang untuk menciptakan aplikasi nya sendiri untuk
Android.
Dengan berbasis open source maka banyak pengembang yang rajin
melakukan upgrade atas aplikasi yang mereka buat.
User dapat memiliki berbagai aplikasi mobile sebagai pilihan lain sejak
monopoli mobile phone yang dipecahkan oleh Google Android.
37
User dapat mengkostumasi perangkat Android menggunakan platform Google
Android dari mulai tampilan layar hingga aplikasi, namun tergantung dari
operator.
Fitur seperti rincian cuaca, membuka layar, RSS feed dan bahkan ikon pada
layar pembukaan dapat disesuaikan.
Dikarenakan banyaknya ponsel yang menggunakan Android sehingga banyak
juga perusahaan pengembang yang menawarkan produk aplikasi inovatif
seperti layanan berdasarkan lokasi dan menyediakan informasi yang
dibutuhkan.
Terkoneksi dengan seluruh layanan milik Google seperti youtube, picasa,
google talk, google search, dll.
Dapat membuka lebih dari satu aplikasi / multitasking tanpa harus menutup
salah satunya.
Terdapat widget di homescreen sehingga user dapat dengan mudah mengakses
berbagai pengaturan dengan cepat dan mudah.
Selain terdapat kelebihan pasti ada kekurangan dalam setiap sistem
operasi. Berikut ini beberapa kekurangan / kelemahan yang terdapat pada sistem
operasi Android, antara lain :
Karena banyak aplikasi yang bisa didapat secara mudah dan gratis maka
terdapat pula konsekuensinya seperti banyaknya iklan terpampang pada
aplikasi tersebut.
38
Diperlukannya koneksi internet yang simultan atau terus menerus guna
memaksimalkan penggunaan aplikasi-aplikasi pada perangkat Android, karena
perangkat berbasis sistem operasi seperti ini memerlukan koneksi internet.
Akses data tidak dibatasi dan tidak memiliki kompresi, sehingga user sendiri
yang harus mengontrol ukuran file yang akan di download.
2.7. Basis D ata (Database)
Basis data ( database ) adalah kumpulan dari berbagai data yang saling
berhubungan satu dengan lainnya. Basis data tersimpan di perangkat keras, serta
dimanipulasi dengan menggunakan perangkat lunak. Pendefinisian basis data
meliputi spesifikasi dari tipe data, struktur, dan batasan dari data atau informasi
yang akan disimpan. Database merupakan salah satu komponen yang penting
dalam aplikasi, karena merupakan basis dalam menyediakan informasi pada para
pengguna.
2.8. Software / Perangkat lunak
Dalam membuat suatu aplikasi diperlukan adanya perangkat lunak /
software. Perangkat lunak sendiri dapat terdiri dari beberapa macam, misalnya
perangkat lunak utama maupun perangkat lunak pendukung. Untuk membangun
program aplikasi SCADA berbasis Android diperlukan beberapa software, berikut
adalah beberapa software yang digunakan dalam membuat program aplikasi pada
Android :
2.8.1. Eclipse
Eclipse adalah sebuah software library berbasis IDE (Integrated
Development Environment) untuk mengembangkan perangkat lunak dan dapat
39
dijalankan di semua platform. Eclipse pada saat ini merupakan salah satu IDE
favorit dikarenakan gratis / freeware dan bersifat open source, yang berarti setiap
orang boleh melihat kode pemrograman perangkat lunak ini dan juga karena
kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen
pendukung yang dinamakan plug-in.
2.8.2. Android SDK (Software Development Kit)
Android SDK (Software Development Kit) merupakan alat atau tool yang
digunakan untuk membuat aplikasi platform Android menggunakan bahasa
pemrograman Java (Supardi, 2011:10).
Android SDK mencakup proyek sampel source code, alat-alat untuk
membangun sebuah aplikasi, sebuah emulator dan perpustakaan yang dibutuhkan
untuk membangun aplikasi Android. Aplikasi yang ditulis menggunakan bahasa
Java dan berjalan di DVM, mesin virtual yang dirancang khusus untuk
penggunaan embedded yang berjalan diatas kernel Linux.
Android SDK dapat di unduh secara gratis di situs
http://www.developer.Android.com . Instalasi Android SDK sebenarnya bukan
seperti menginstal perangkat lunak kebanyakan karena sebenarnya hanya
menyalin folder yang berisi tentang versi sistem operasi Android yang akan
dibuatkan aplikasinya.
2.8.3. Java
Java merupakan perangkat lunak produksi Sun Microsystem Inc. Untuk
pemrograman beberapa tujuan (multi purpose), multi platform (dapat berjalan di
beberapa sistem operasi), mudah dipelajari dan powerful (Supardi, 2011:1).
http://www.developer.
40
Bahasa pemrograman Java merupakan multiplatform, karena dapat berjalan
di beberapa sistem operasi seperti sistem operasi Android, namun Android hanya
menyediakan lingkungan runtime/sebagai interpreter. Dimana kode sumber yang
telah kita compile dengan compiler Java akan dioptimasi dengan Delvik. Sebuah
virtual machine yang memang dibuat dengan bahasa pemrograman Java yang
terbentuk menjadi sebuah Class. Kemudian oleh dex tools (merupakan bagian dari
DVM) mengubah Java Class yang telah di compile oleh Java compiler ke
lingkungan native dengan format *.dex (format dalvik executable), yang
teroptimasi untuk lingkungan perangkat keras dengan komputasi yang rendah.
JavaG am bar 2.15 Logo Java
Berikut adalah beberapa keutamaan yang dimiliki Java, antara lain :
1. Compatibility dan stability
Kode program Java dapat berjalan pada sistem operasi yang memiliki runtime
environment dan telah banyak kesalahan yang dibenahi, serta keberadaan
sebuah virtual machine juga mendukung stabilitas Java.
2. Monitoring dan management
Java menyediakan fungsi untuk memonitor dan mengelola aplikasi yang
biasanya mempunyai skala enterprise dengan menggunakan teknologi Java
management extentension.
41
3. Enterprise desktop
Java menyediakan integrasi dengan fasilitas desktop untuk mengatasi
keterbatasan yang dimiliki oleh aplikasi berbasis browser.
4. XML
Java juga mendukung penggunaan xml, diantaranya adalah digital signature
dan streaming A P I untuk xml.
2.8.4. SQLite
SQLite adalah sebuah embedded database yang sangat terkenal karena
menggabungkan antarmuka SQL dengan memori yang sangat kecil dan kecepatan
yang baik: Murphy (2010, p225). SQLite adalah sebuah open source database
yang telah ada cukup lama, cukup stabil, dan sangat terkenal pada perangkat kecil,
termasuk Android: Gargenta (2011, p119).
Android menyediakan database relasional yang ringan untuk setiap
aplikasi menggunakan SQLite: Meier (2010, p7). Aplikasi dapat mengambil
keuntungan dari itu untuk mengatur relational database engine untuk menyimpan
data secara aman dan efisien. Murphy (2010, p225) Untuk Android, SQLite
dijadikan satu di dalam Android runtime, sehingga setiap aplikasi Android dapat
membuat basis data SQLite. Karena SQLite menggunakan antarmuka SQL, cukup
mudah untuk digunakan orang orang dengan pengalaman lain yang berbasis
database.
Terdapat beberapa alasan mengapa SQLite sangat cocok untuk
pengembangan aplikasi Android, yaitu:
42
Database dengan konfigurasi nol, artinya tidak ada konfigurasi database untuk
para developer. Ini membuatnya relatif mudah digunakan.
Tidak memiliki server, tidak ada proses database SQLite yang berjalan. Pada
dasarnya satu set libraries menyediakan fungsionalitas database.
Single-file database, ini membuat keamanan database secara langsung.
Open source, hal ini membuat developer mudah dalam pengembangan
aplikasi.
2.9. Library / Classpath
Disebut juga dengan istilah Classpath (Kelas dalam bentuk biner) Menurut
M. Huda dan B.Nugroho, dengan definisi pendekatan atas Classpath, memiliki
pemisahan definisi atas Path yaitu "Pemetaan suatu direktori pada sistem operasi
agar direktori tersebut bisa dikenal secara global pada sistem". Kemudian fungsi
utama dari Classpath/Library adalah berkomunikasi pada Java bahwa sebuah
class pada Java tertentu (bisa berbentuk .jar atau .class) disimpan pada
direktori/alamat file tertentu.
Contoh dari classpath/library adalah sebuah file berformat jar yang bisa
dipakai untuk driver database mysql dengan alamat filenya adalah c:\libku\mysql-
conbin.jar. Maka, untuk mengenalkan pada Java Engine tentang driver tersebut
adalah dengan melakukan pengaturan classpath/library (M. Huda-B. Nugroho,
2010).
Dalam definisi yang penulis simpulkan, Library merupakan paket dari
kumpulan program atau syntax yang telah ada pada compiler untuk memudahkan
pemrogram membuat program dan tidak perlu mengakses langsung sistem
43
komputer untuk memprogram. Misalnya dapat kita pada bahasa pemrograman
Java dibagian paling atas kode program ditambahkan sintaks import java.match.
2.10. Java Modbus Library (Jamod)
Java Modbus Library adalah sebuah library khusus yang didesain dengan
Object Oriented Programming yang sangat baik dalam dipahami, digunakan dan
dikembangkan oleh pengembang yang menggunakan library ini sebagai hak atas
open source (gratis) menyediakan dukungan untuk protocol Modbus Master dan
Slave.
Menurut sumber Thesis dari Ulrik L .J - Adaptive Energy Controller dari
University IT Copenhagen Denmark (kutipan terjemahan, p41): Bahwa dengan
memanfaatkan popularitas Java yang semakin baik ada kesempatan baik untuk
menemukan library tambahan dengan fungsionalitas yang diperlukan. Hal ini
berlaku untuk Library Modbus TCP/ IP. Ada ada dua library Open source
dengan dukungan Modbus TCP / IP yang ditulis di Bahasa pemrograman Java.
Salah satunya adalah Modbus4j (Modbus4j) yang mudah untuk menggunakan
implementasi protokol Modbus yang mendukung ASCII dan RTU komunikasi.
Kemudian adalah Java for Modbus (Jamod) yang juga mendukung Modbus
ASCII dan komunikasi RTU.
Kemudian proses dan konsep dasar yang dapat diadaptasi adalah: Hal ini
diimplementasikan dengan menggunakan perpustakaan Modbus TCP / IP
bernama Jamod (Jamod). Ketika menulis atau membaca dari alamat Modbus,
perlu untuk membuat sambungan ke unit Modbus Slave. Membuat koneksi
dilakukan dengan menggunakan TCP MasterConnection, bila menggunakan
44
protokol TCP. Untuk koneksi tertentu adalah batas waktu yang ditetapkan.
Timeout adalah periode dalam milidetik yang memungkinkan untuk menunggu
respon ketika mengirimkan permintaan. Nomor port ke unit Modbus slave juga
harus ditentukan. Untuk Modbus TCP / IP, port 502 adalah nomor port default
yang digunakan. Ketika konfigurasi dilakukan, sambungan dapat dibentuk dengan
memanggil metode koneksi seperti yang digambarkan. sumber Thesis dari Ulrik
L.J - Adaptive Energy Controller-University IT Copenhagen Denmark (kutipan
terjemahan, p:80)
2.11. Open CSV Library
OpenCSV Library adalah sebuah dukungan Library untuk file khusus
dalam menerima/membaca dan juga penyimpanan data hasil akuisis ke dalam
format CSV. Definisi tentang CSV dari Wisconsin Valley Library Service
(WVLS.org-terjemahan) adalah: CSV Comma-Separated-Value, Format data
yang sangat sederhana yang menyimpan informasi dalam sebuah file teks. CSV
popular justru karena dapat dengan mudah dibaca oleh banyak aplikasi yang
berbeda, termasuk spreadsheet, pengolah kata, eitor tek