• Tidak ada hasil yang ditemukan

Implementasi Bluetooth Serial Port Profile Pada Tutorial Pembelajaran Sistem Kontrol Sebagai Media Komunikasi Data Dengan Alat Peraga Sistem Kontrol Berbasis Android

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Bluetooth Serial Port Profile Pada Tutorial Pembelajaran Sistem Kontrol Sebagai Media Komunikasi Data Dengan Alat Peraga Sistem Kontrol Berbasis Android"

Copied!
116
0
0

Teks penuh

(1)

i

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

RIFAT FIRDAUS

10110379

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)
(3)
(4)

TTL : Bandung, 4 April 1991 Umur : 23 Tahun

Jenis Kelamin : Laki - laki

Alamat : Jl. Tangkuban parahu Kp. Cikareumbi Ds. Cikidang RT/RW 01/06 No. 26, Lembang 40391

No. Tlp : 085795409903 E-mail : rifatkun@gmail.com

Pendidikan Formal

1998 – 2004 SD Negeri Cikidang 1 2004 – 2007 SMP Mutiara 5 Lembang 2007 – 2010 SMA Negeri 1 Lembang

(5)

v

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... xi

DAFTAR SIMBOL ... xiii

DAFTAR LAMPIRAN ... xvi

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Identifikasi Masalah ... 3

1.3 Maksud dan Tujuan ... 3

1.4 Batasan Masalah ... 4

1.5 Metodologi Penelitian ... 4

1.5.1 Metode Pengumpulan Data ... 5

1.5.2 Metode Pembangunan Perangkat Lunak ... 5

1.6 Sistematika Penulisan ... 7

BAB 2 TINJAUAN PUSTAKA ... 9

2.1 Landasan Teori ... 9

2.1.1 Tutorial Pembelajaran ... 9

2.1.2 Konsep Dasar Bluetooth... 10

2.1.3 Bluetooth Serial Port Profile ... 13

(6)

vi

2.1.5 Inverted Pendulum ... 19

2.1.6 Eclipse ... 19

2.1.7 UML ... 22

BAB 3 ANALISIS DAN PERANCANGAN ... 27

3.1 Analisis ... 27

3.1.1 Analisis Masalah ... 27

3.1.2 Analisis Media Komunikasi Perangkat Inverted Pendulum 27 3.1.3 Analisis Implementasi Bluetooth Serial Port Profile ... 28

3.1.4 Analisis Kebutuhan Non Fungsional ... 34

3.1.5 Analisis Kebutuhan Fungsional ... 35

3.2 Spesifikasi Kebutuhan Perangkat Lunak ... 67

3.2.1 SKPL-NF-001 Sistem Dibangun Berbasis Android... 67

3.2.2 SKPL-NF-002 Sistem Dibangun dengan Spesifikasi Processor yang Tinggi ... 68

3.2.3 SKPL-NF-003 Pengguna Sistem Minimal Memiliki Kemampuan Mengoperasikan Sistem Operasi Android ... 68

3.3 Perancangan Sistem ... 69

3.3.1 Perancangan Arsitektur Perangkat Lunak ... 69

3.3.2 Perancangan Struktur Menu ... 70

3.3.3 Perancangan Antarmuka Perangkat Lunak ... 71

3.3.4 Jaringan Semantik ... 86

BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 89

4.1 Implementasi Sistem ... 89

4.1.1 Implementasi Kebutuhan Perangkat Keras ... 89

(7)

vii

4.1.3 Implementasi Antarmuka ... 90

4.1.4 Implementasi Kelas ... 91

4.2 Pengujuan Alpha ... 92

4.2.1 Rancangan Pengujian ... 92

4.2.2 Kasus dan Hasil Pengujian ... 93

4.2.3 Kesimpulan Pengujian Alpha ... 99

4.3 Pengujian Beta ... 99

4.3.1 Kesimpulan Pengujian Beta ... 103

BAB 5 KESIMPULAN DAN SARAN ... 105

5.1 Kesimpulan ... 105

5.2 Saran ... 105

(8)

107

dengan Sofware Matlab," Jurnal Edukasi@Elektro, vol. 1, no. 1, p. 8, Oktober 2004.

[2] Bluetooth Specification Version 1.1 Serial Port Profile., 2001.

[3] Eka Fitriyadi, Imam Santosa, and Imam Setiawan, "Aplikasi Kontrol PID untuk Pengolahan Suhu Model Sistem Hipertermia berbasis Sensor Thermopile MLX90247," 2011.

[4] Nhivekar , Nirmale , and Mudholker , "Implementation of fuzzy logic control algorithm in embedded microcomputers for dedicated application," vol. 3, no. 4, p. 8, 2011.

[5] Ian Sommerville, Software Engineering. Jakarta: Erlangga, 2003.

[6] IGAK Wardani, "Program Tutorial Dalam Sistem Pendidikan Tinggi Terbuka Dan Jarak Jauh," vol. 1, no. 12, September 2000.

[7] Ferrianto Gozali and Christopher Haroldt Loho, "Sistem Monitoring Petugas Keamanan dalam Gedung Bertingkat dengan Memanfaatkan Teknologi Bluetooth," 2007.

[8] BARB, Bluetooth Doc Serial Port Profile., July 2012.

[9] Nazruddin Syafaat H, Android Pemrograman Aplikasi Mobile Smartphonecdan Tablet PC Berbasis Android. Bandung: Informatika,

2012.

[10] Zoel Fachri, Achmad Hendriawan, and Andrik Wijayanto, "Perencanaan Balancing Robot Dengan Dua Roda," 2010.

[11] Wina Noviani Fatimah, ST., "Pengenalan Eclipse," p. 15, Februari 2011. [12] Rosa A.S. and M. Shalahuddin, Rekayasa Perangkat Lunak terstruktur

(9)

iii

Profile pada Tutorial Pemblajaran Sistem Kontrol Sebagai Media Komunikasi dengan Alat Peraga Sistem Kontrol Berbasis Android” sebagai

syarat untuk menyelesaikan program studi Strata I Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia dapat selesai dengan lancar.

Terima kasih Penulis ucapkan kepada:

1. Allah SWT yang telah melimpahkan nikmat, ide, kemampuan, dan kekuatan yang tak ternilai.

2. Keluarga tercinta yang selalu memberi doa, semangat, kasih sayang dan dorongan moril maupun materil.

3. Bapak Eko Budi Setiawan, S.Kom., M.T., dosen pembimbing yang telah mengarahkan dan membimbing penulis dalam menyelesaikan penulisan skripsi.

4. Bapak Andri Heryandi, S.T., M.T., dosen reviewer yang telah memberi masukan dan koreksi dalam aplikasi yang dibangun.

5. Bapak Galih Hermawan, S.Kom, M.T., dosen penguji yang telah memberi masukan dan koreksi mengenai penulisan skripsi.

6. Ibu Sufaatin S.T., M.Kom. selaku dosen wali IF-9 angkatan 2010 yang telah membimbing kami selama kuliah.

7. Seluruh Dosen dan Staff pengajar jurusan Teknik Informatika Universitas Komputer Indonesia.

8. Fajar Shidiq sebagai partner pengerjaan tugas akhir dan PKM yang telah sama – sama menempuh tugas akhir.

9. Reza, Dody, Zannuar, Aldio, Nuri, Rahayu, Dwikeu, Tita, Leni, Wulan, Agi, Iwan yang telah berjuang sama – sama dalam tugas akhir ini.

(10)

iv menempuh tugas akhir ini.

13. Semua pihak yang terlibat dan ikut membantu dalam tugas akhir ini baik secara langsung maupun tidak langsung.

14. Dan Putri Annisa Anggraini yang selalu penuh semangat dalam mengerjakan tugas – tugasnya yang telah menjadi sumber motivasi dan semangat dalam mengerjakan tugas akhir ini.

Sangat disadari bahwa dalam pelaksanaan dan penyusunan laporan tugas akhir skripsi ini masih banyak kekurangan dan jauh dari kesempurnaan. Oleh karena itu saran dan kritik yang membangun sangat diharapkan untuk pengembangan ke arah yang lebih baik.

Bandung, 8 Agustus 2014

(11)

1

Kegiatan belajar sistem kontrol di jurusan teknik komputer Universitas Komputer Indonesia (UNIKOM) masih menggunakan cara biasa, dimana dosen menyampaikan pelajaran sistem kontrol kepada mahasiswa, lalu memberikan latihan soal. Menurut salah satu mahasiswa teknik komputer, kegiatan pembelajaran tersebut membuatnya kesulitan dalam memahami pembelajaran sistem kontrol karena yang diterima dari pembelajaran tersebut hanya teori saja tanpa adanya praktek.

Kesulitan bagi mahasiswa dalam memahami sistem kontrol adalah ketika mereka mempelajari teori tanpa diberikan pengetahuan tentang bagaimana cara menerapkannya pada kehidupan nyata, sehingga, media pembelajaran diperlukan untuk menunjang pembelajaran sistem kontrol, agar mahasiswa dapat belajar menerapkan materi sistem kontrol yang telah dipelajari pada media pembelajaran tersebut.

Selain itu, algorima kontrol yang dipelajari tidak bisa dipastikan benar, karena algoritma tersebut tidak diuji untuk dipastikan bawah algoritma kontrol tersebut berjalan dengan benar, hal ini dikarenakan keterbatasan media pembelajaran yang dapat mensimulasikan algoritma kontrol tersebut.

(12)

diamati secara grafik sehingga mahasiswa kesulitan untuk mengamati pergerakan alat peraga tersebut.

Perangkat inverted pendulum adalah alat peraga untuk mengimplementasikan dan mensimulasikan algoritma pada bidang keahlian sistem kontrol berupa pendulum terbalik yang terdiri dari bagian pendulum yang dapat berputar 360 derajat yang terbuat dari besi, sensor sudut untuk menyeimbangkan pendulum agar tetap berada di atas, cart/plant objek penggerak pendulum yang dapat bergerak pada relnya secara horizontal dan dikendalikan oleh acuator, actuator yang berperan sebagai penggerak plant, serta microcontroller sebagai pengendali actuator.

Serial port profile adalah profil bluetooth yang berfungsi sebagai koneksi

kabel serial tiruan antara dua perangkat bluetooth. Profil ini digunakan sebagai pengganti kabel serial yang digunakan untuk memasukan algoritma dari komputer ke microcontroller [2]. Profil ini digunakan sebagai media komunikasi data dari tablet yang berisi materi – materi sistem kontrol dengan microcontroller yang ada pada perangkat inverted pendulum, profil ini digunakan karena data yang diterima oleh microcontroller yang ada pada perangkat inverted pendulum adalah data serial, oleh karena itu, profil bluetooth yang digunakan adalah serial port profil.

Aplikasi Tutorial Pembelajaran Sistem Kontrol berbasis android ini dibuat agar algoritma alat peraga dapat diatur secara dinamis melalui aplikasi pada tablet, serta dapat merepresentasikan data pergerakan pendulum menjadi grafik

yang dapat dilihat pada tablet dengan mengimplementasikan teknologi serial port profil (SPP) pada bluetooth sebagai media pengiriman dan penerimaan data antar

tablet dan perangkat inverted pendulum. Penggunaan tablet sebagai media pembelajaran bertujuan agar alat peraga lebih fleksibel dan praktis. Harga tablet lebih ekonomis jika dibandingkan dengan laptop, dan tablet dengan sistem operasi Android memiliki fitur bluetooth serial.

(13)

Pembelajaran ini adalah Bab classical control yaitu algoritma PID (Proportional, Derivative, Integral) dan algoritma Fuzzy, karena kontrol PID merupakan strategi

yang paling banyak diadopsi pada pengontrolan proses industri. Algoritma PID sebagai komponen kontrol proses dilatarbelakangi oleh kesederhanaan struktur serta kemudahan dalam melakukan tuning parameter kontrolnya [3]. Algoritma Fuzzy juga sering digunakan pada kontrol industri, serta kombinasinya dengan algoritma PID memiliki pendekatan yang lebih baik dalam sistem kontrol [4].

Aplikasi Tutorial Pembelajaran Sistem Kontrol ini diharapkan dapat membantu mahasiswa dalam mempelajari sistem kontrol dari materi yang ada dalam aplikasi tersebut dan dari simulasi algoritma yang dapat dijalankan dan divisualisasikan menjadi grafik sehingga mudah diamati.

1.2 Identifikasi Masalah

Berdasarkan uraian latar belakang masalah yang telah dijelaskan maka permasalahan yang muncul adalah:

1. Kesulitan mahasiswa dalam menerapkan teori sistem kontrol pada kehidupan nyata.

2. Algorima kontrol yang dipelajari tidak bisa dipastikan benar, karena algoritma tersebut tidak diuji untuk dipastikan bahwa algoritma kontrol tersebut berjalan dengan benar.

3. Media pembelajaran sistem kontrol saat ini tidak terlalu tervisualisasikan karena alat peraga yang ada kurang interaktif, karena hanya dapat memberikan pembelajaran satu arah.

1.3 Maksud dan Tujuan

Berdasarkan identifikasi masalah, maksud dari penelitian ini adalah membangun aplikasi Tutorial Pembelajaran sistem kontrol yang dapat berkomunikasi dengan alat peraga.

(14)

1. Membantu mahasiswa dalam menyediakan materi sistem kontrol yang dapat langsung diimplementasikan pada perangkat inverted pendulum, agar mahasiswa dapat menerapkan materi yang telah dipelajari.

2. Menyediakan media pembelajaran materi algoritma sistem kontrol yang dapat disimulasikan untuk memastikan bahwa algoritma kontrol yang telah dipelajari tersebut berjalan dengan benar.

3. Menyediakan media pembelajaran yang interaktif yang dapat merepresentasikan data yang dihasilkan oleh pergerakan alat peraga dalam bentuk grafik sehingga mahasiswa dapat mengamati pergerakan alat peraga tersebut dalam bentuk grafik.

1.4 Batasan Masalah

Ada beberapa batasan masalah dalam penelitian ini agar pembahasan lebih fokus dan sesuai dengan tujuan yang akan dicapai. Batasan masalah dalam pembangunan aplikasi ini adalah:

1. Media pembelajaran yang dibangun pada penelitian ini berupa aplikasi berbasis android.

2. Materi yang dibahas pada aplikasi Tutorial Pembelajaran ini adalah Bab classical control yaitu algoritma PID (Proportional, Derivative, Integral)

dan algoritma Fuzzy

3. Algoritma yang akan dipakai pada media pembelajaran sudah dipasang pada alat peraga, sehingga aplikasi hanya mengirim perintah untuk menjalankan algoritmanya.

4. Versi bluetooth yang dipakai pada alat peraga adalah versi 2.0 5. Protokol bluetooth yang digunakan adalah serial port profile

6. Aplikasi Tutorial Pembelajaran sistem kontrol yang dibangun berbasis Android dengan sistem operasi Android versi 4.2

1.5 Metodologi Penelitian

(15)

Metode penelitian ini memiliki dua tahap, yaitu tahap pengumpulan pengumpulan data dan tahap pembangunan perangkat lunak.

1.5.1 Metode Pengumpulan Data

Metode pengumpulan data yang digunakan dalam pembangunan Turorial pembelajaran sistem kontrol adalah sebagai berikut :

1. Studi Pustaka

Metode studi pustaka ini digunakan untuk mendapatkan teori untuk menyelesaikan permasalahan dengan mengumpulkan teori-teori lain yang mendukung dan membaca sumber seperti buku, jurnal, maupun artikel yang berkaitan.

2. Interview

Teknik pengumpulan data dengan mengadakan tanya jawab secara langsung mengenai pembelajaran sistem kontrol yang diperlukan serta alat peraga yang digunakan.

3. Kuesioner

Teknik pengumpulan data yang digunakan untuk mendapatkan hasil pengujian dengan cara pengisian kusioner yang akan diberikan kepada pelajar atau khalayak umum yang mempelajari sistem kontrol yang telah mencoba media pembelajaran yang dibangun.

1.5.2 Metode Pembangunan Perangkat Lunak

Metode yang digunakan untuk membangun perangkat lunak ini adalah metode waterfall. Model ini mengambil kegiatan proses dasar spesifikasi, pengembangan, validasi dan evolusi dan mewakili mereka sebagai tahap proses yang terpisah seperti spesifikasi kebutuhan, perancangan perangkat lunak, implementasi, pengujian, dan seterusnya [5].

(16)

1) Requirements analysis and definition.

Pada tahap ini akan dilakukan analisis terhadap layanan, kendala, dan tujuan sistem yang ditetapkan melalui konsultasi dengan pengguna sistem untuk membangun Tutorial pembelajaran sistem kontrol yang sedang dibangun ini, kemudian akan didefinisikan secara rinci dan berfungsi sebagai spesifikasi sistem. 2) System and software design.

Tahap selanjutnya, akan dilakukan proses desain sistem yang mengalokasikan kebutuhan baik untuk perangkat keras maupun perangkat lunak sistem dengan membentuk arsitektur sistem secara keseluruhan. Desain perangkat lunak melibatkan identifikasi dan menggambarkan abstraksi sistem perangkat lunak yang mendasar.

3) Implementation and unit testing.

Selama tahap ini, desain Aplikasi Tutorial Pembelajaran Sistem Kontrol akan direalisasikan sebagai serangkaian program atau unit program yang akan diuji. Pengujian ini melibatkan seluruh fungsional sistem, seperti isi materi, fungsional tombol, komunikasi dengan alat peraga, pengiriman data, penerimaan data, dan ploting data yang telah diterima.

4) Integration and system testing.

Pada tahap ini, aplikasi keseluruhan akan diintegrasikan dan diuji sebagai sistem yang lengkap untuk memastikan bahwa seluruh kebutuhan perangkat lunak telah terpenuhi.

5) Operation and maintenance.

(17)

Gambar 1.1 Model Waterfall

1.6 Sistematika Penulisan

Sistematika penulisan skripsi ini disusun untuk memenuhi gambaran umum tentang penelitian yang dilakukan. Sistematika penulisan skripsi ini adalah sebagai berikut :

BAB 1 PENDAHULUAN

Bab ini menguraikan tentang latar belakang permasalahan, merumuskan inti permasalahan yang dihadapi, menentukan tujuan dan kegunaan penelitian, yang kemudian diikuti dengan pembatasan masalah, metodelogi penelitian yang akan dilakukan dalam penelitian, metode pembangunan perangkat lunak yang akan di pakai, serta sistematika penulisan.

BAB 2 LANDASAN TEORI

(18)

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi tentang pemaparan analisis masalah, analisis kebutuhan fungsional dan analisis kebutuhan non fungsional. Hasil dari analisis tersebut digunakan untuk melakukan perancangan perangkat lunak yang terdiri dari perancangan model usecase, activity diagram, class diagram, sequence diagram, dan perancangan antar muka

BAB 4 KESIMPULAN DAN SARAN

(19)

9

Landasan teori merupakan penjelasan berbagai konsep dan teori – teori yang berkaitan dalam pembangunan aplikasi Tutorial Pembelajaran Sistem Kontrol. Beberapa teori yang terkait dengan pembangunan aplikasi Tutorial Pembelajaran Sistem Kontrol adalah tutorial, konsep dasar bluetooth, android, eclipse, perangkat inverted pendulum dan UML.

2.1.1 Tutorial Pembelajaran

Dalam kamus Besar Bahasa Indonesia, tutorial didefinisikan sebagai: pembimbingan kelas oleh seorang pengajar (tutor) untuk seorang mahasiswa atau sekelompok kecil mahasiswa atau pengajaran tambahan melalui tutor, sedangkan tutor didefinisikan sebagai: orang yang memberi pelajaran kepada seseorang atau sejumlah kecil siswa (di rumah, bukan di sekolah) atau dosen yang membimbing sejumlah mahasiswa di pelajarannya. Berdasarkan definisi tersebut, tutorial berarti mengajar orang lain atau memberikan bantuan belajar kepada seseorang. Kegiatan tutorial melibatkan orang yang mengajar/memberi bantuan yang disebut tutor dan orang yang belajar atau yang diberi bantuan belajar, yang disebut tutee. Di antara tutor dan tutee terdapat bahan belajar yang merupakan sumber ilmu yang dikaji oleh tutee bersama tutor, dan diantara tutor dan tutee terjadi interaksi atau komunikasi yang merupakan inti dari tutorial tersebut [6]. Menurut UU Nomor 20 tahun 2003 tentang Sistem Pendidikan Nasional, Pembelajaran adalah proses interaksi peserta didik dengan pendidik dan sumber belajar pada suatu lingkungan belajar.

(20)

2.1.2 Konsep Dasar Bluetooth

Bluetooth adalah teknologi komunikasi data nirkabel(tanpa kabel) jarak pendek yang digunakan untuk menggantikan kabel sebagai media komunikasi data. Teknologi bluetooth memanfaatkan gelombang radio yang beroperasi pada kelompok ISM(Industrial, Scientific, Medical), bekerja pada frekuensi 2.4GHz dan sinyal full duplex. Pada umumnya, frekuensi 2.4GHz ISM tersedia dan tidak membutuhkan lisensi pada sebagian negara.

Keuntungan dari penggunaan teknologi bluetooth adalah memiliki daya yang kecil, dapat beroperasi lama, dan biaya implementasi yang relatif rendah, akan tetapi, teknologi bluetooth memiliki kekurangan, diantaranya, bluetooth dapat digunakan untuk membangun jaringan adhoc yang terbatas, hanya untuk delapan perangkat yang terdiri satu Master dan tujuh active slave. [7]

2.1.2.1Protokol Bluetooth

Bluetooth melakukan pembagian tugas antara host dan sebuah host controller. Host bertanggung jawab untuk protokol lapisan seperti Logical Link Control dan Adaptasi Protokol (L2CAP) dan Service Discovery Protocol(SDP),

yaitu fungsi yang dilakukan oleh perangkat komputasi seperti komputer, Sedangkan host controller bertanggung jawab untuk lapisan Radio, Baseband, dan Link Manager Protocol(LMP) yang dilaksanakan secara integrasi atau eksternal.

Host dan Host controller saling mengirimkan informasi melalui Host controller Interface(HCI). Berdasarkan pengembangan Bluetooth Interest Group, penentuan

(21)

Gambar 2.1 Bluetooth Protocol dan hubungan antar layer

Fungsi dari masing-masing layer secara singkat dapat digambarkan sebagai berikut:

1. Layer radio adalah koneksi nirkabel fisik. Untuk menghindari gangguan dengan perangkat lain yang berkomunikasi pada pita ISM, modulasi ini didasarkan pada fast frequency hopping.

2. Layer baseband bertanggung jawab untuk mengendalikan dan mengirimkan paket data melalui radio link. Layer ini menyediakan saluran transmisi baik untuk data maupun suara. Lapisan baseband digunakan mempertahankan Synchronous Connection-Oriented (SCO) untuk link suara dan Asynchronous

Connectionless (ACL) untuk data.

3. Link Manager Protocol (LMP) untuk menjalin hubungan dan mengelola piconet. Tanggung Jawab LMP juga termasuk otentikasi dan keamanan, dan pemantauan kualitas layanan.

(22)

5. Logical Link Control And Adaptation Protocol (L2CAP) menerima data aplikasi dan menyesuaikan ke format Bluetooth dengan memperhatikan parameter Quality of Service.

2.1.2.2Pendeteksian Posisi Pada Bluetooth

Berdasarkan pada parameter sinyal elektromagnetik yang dipilih untuk penentuan posisi, pendekatan dasar untuk sistem radiolokasi dapat dilakukan dengan berbagai cara pengukuran, yaitu:

1. Pengukuran Received Signal Strength Indicator (RSSI)

2. Pengukuran Link Quality (LQ) untuk menentukan lokasi dari bluetooth yang dipantau. Penggunaan link quality dapat pula dikombinasikan dengan menggunakan nilai RSSI, yang digunakan untuk menunjang keakuratan teknik radio lokasi.

3. Pengukuran Sudut Kedatangan (Angle Of Arrival – AOA) 4. Pengukuran berdasarkan Waktu (Time Based System)

2.1.2.3Jaringan Piconet dan Scatternet

Piconet adalah sistem jaringan yang terdiri dari dua atau lebih (max 8)

perangkat Bluetooth dalam jarak fisik yang dekat dan beroperasi pada channel yang sama menggunakan frekuensi yang sama urutan loncatannya. Bluetooth memungkinkan perangkat untuk membangun jaringan, baik ad hoc atau infrastruktur. Jaringan Infrastruktur menggunakan Bluetooth Access Point (AP) yang tetap, yang memfasilitasi komunikasi antar perangkat Bluetooth. Walaupun hanya satu perangkat yang berfungsi sebagai master untuk setiap piconet, Time Division Multiplexing (TDM) memungkinkan slave dalam satu piconet dapat juga

(23)

2.1.3 Bluetooth Serial Port Profile

Profil ini mendefinisikan persyaratan untuk perangkat Bluetooth yang diperlukan untuk menyiapkan tiruan kabel data serial menggunakan RFCOMM antara dua rekan perangkat. Persyaratan dinyatakan dalam layanan yang disediakan untuk aplikasi, dan oleh mendefinisikan fitur dan prosedur yang diperlukan untuk interoperabilitas antara perangkat Bluetooth.

2.1.3.1Ruang lingkup

Serial port profile yang mendefinisikan protokol dan prosedur yang akan

digunakan oleh perangkat menggunakan Bluetooth untuk kabel serial emulasi RS232 (atau sejenisnya). Hal ini dapat digantikan oleh profil ini berkaitan dengan aplikasi-aplikasi legasi yang menggunakan Bluetooth sebagai kabel pengganti, melalui virtual serial port abstraksi (yang dalam dirinya sendiri beroperasi sistem ketergantungan).

2.1.3.2Struktur Profil Bluetooth

Pada Gambar 2.2, struktur profil Bluetooth dan dependensi profil digambarkan. Profil bergantung pada profil lain jika kembali menggunakan bagian profil, oleh secara implisit ataupun eksplisit merujuknya. Ketergantungan diilustrasikan pada gambar: memiliki profil ketergantungan pada profile(s) di mana itu terkandung-langsung dan tidak langsung

(24)

2.1.3.3Profile Stack

Pada gambar 2-3 menunjukkan protokol dan entitas yang digunakan dalam profil ini

Gambar 2.3 Model Protokol

Baseband LMP dan L2CAP adalah OSI layer 1 dan 2 protokol Bluetooth. RFCOMM adalah adaptasi Bluetooth GSM TS 07,10, menyediakan sebuah protokol transport emulasi serial port. SDP adalah Bluetooth Service Discovery Protocol. Aplikasi di kedua sisi yang biasanya aplikasi legasi, dapat dan bisa

berkomunikasi melalui kabel serial. Namun demikian, aplikasi-aplikasi legasi tidak tahu tentang prosedur Bluetooth untuk mengatur tiruan kabel serial. Aplikasi non-legasi yang akan melakukan komunikasi serial Bluetooth harus juga mengikuti aturan yang ditentukan dalam profil ini. [8]

2.1.4 Android

(25)

2.1.4.1The Dalvik Virtual Machine

Salah satu elemen kunci dari Android adalah Dalvik Virtual Machine (DVM). Android berjalan di dalam DVM bukan di Java Virtual Machine (JVM), sebenarnya banyak persamaannya dengan JVM seperti Java ME (Java Mobile Edition), tetapi Android menggunakan Virtual Machine sendiri yang dapat dikustomisasi dan dirancang untuk memastikan bahwa beberapa fitur – fitur berjalan lebih efisien pada perangkat mobile.

DVM adalah “Register based” sementara JVM adalah “stack based”,

DVM didisain dan ditulis oleh Dan Bornsten dan beberapa engineers Google

alinnya. Jadi, bisa dikatakan “Dalvik equals(Java) == false”. DVM menggunakan kernel Linux untuk menangani fungsionalitas tingkat rendah termasuk keamanan, threading, dan preses serta manajemen memori. Hal ini memungkinkan kita untuk

menulis aplikasi C / C++ sama halnya seperti pada OS Linux kebanyakan. Meskipun dalam kenyataannya kita harus banyak memahami arsitektur dan proses sistem dari kernel Linux yang di gunakan Android tersebut.

Semua hardware yang berbasis Android dijalankan dengan menggunakan Virtual Machine untuk eksekusi aplikasi, pengembang tidak perlu khawatir tentang implementasi perangkat keras tertentu. DVM mengeksekusi executable file, sebuah format yang dioptimalkan untuk memastikan memori yang digunakan

sangat kecil. The executable file diciptakan dengan mengubah kelas bahasa Java dan dikompilasi dengan menggunakan tools yang disediakan dalam SDK Android. [9]

2.1.4.2Android SDK

Android SDK(Software Development Kit) adalah tools API(Appplication Programing Interface) yang diperlukan untuk memulai mengembangkan aplikasi

(26)

mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Sebagai platform aplikasi-netral, Android memberi kita kesempatan untuk membuat aplikasi yang kita butuhkan yang bukan merupakan bawaan ponsel. Beberapa fitur – fitur Android yang paling penting adalah: [9] 1. Framework aplikasi yang mendukung penggantian komponen dan reuseable. 2. DVM dioptimalkan untuk perangkat mobile.

3. Integrated browser berdasarkan engine open source WebKit.

4. Grafis yang dioptimalkan dan didukung oleg libraries grafis 2d, grafis 3d berdasarkan spesifikasi openGL ES 1,0 (Optional akselerasi hardware)

5. SQL Lite untuk menyimpan data 6. Bluetooth, EDGE, 3G, dan Wifi

7. Media Support yang mendukung audio, video, dan gambar (MPEG4, H.262, MP3, AAC, AMR, JPG, PNG, GIF) GSM telepon (tergantung hardware) 8. Kamera, GPS, kompas, dan accelerometer (tergantung Hardware)

9. Lingkungan development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk IDE Eclipse.

2.1.4.3Arsitektur Android

Secara garis besar arsitektur Android dapat dijelaskan dan digambarkan sebagai berikut: [9]

1. Applications dan Widgets

Application dan Widgets ini adalah layer dimana kita berhubungan

dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. Semua aplikasi ditulis menggunakan bahasa pemrograman Java.

2. Application Frameworks

Android adalah “Open Development Platform” yaitu Android

(27)

untuk membangun aplikasi yang bagus dan inovatif. Pengembang bebas untuk mengakses perangkat keras, akses informasi resources, menjalankan service background, mengatur alarm, dan menambahkan status notification, dan sebagainya. Pengembang memiliki akses penuh menuju API framework seperti yang dilakukan oleh aplikasi yang kategori inti. Arsitektur aplikasi dirancang supaya dapat menggunakan kembali komponen yang sudah digunakan dengan mudah (reuse).

Sehingga dapat disimpulkan bahwa Application frameworks ini adalah layer dimana para pembuat aplikasi melakukan pengembangan/pembuatan

aplikasi yang akan dijalankan di sistem operasi Android, karena pada layer inilah aplikasi dapat dirancang dan dibuat, seperti content-providers yang berupa SMS dan panggilan telepon. [9]

Komponen – komponen yang termasuk di dalam Application Frameworks adalah sebagai berikut:

Libraries ini adalah layer dimana fitur – fitur Android berbeda, biasanya para pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, layer ini meliputi berbagai library C/C++ inti seperti Libc dan SSL, serta:

- Libraries media untuk pemutaran media audio dan video

- Libraries untuk manajemen tampilan

- Libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D dan 3D

- Libraries SQLite untuk dukungan database.

- Libraries SSL dan Webkit terintegrasi dengan web browser dan security

(28)

- Libraries 3D yang mencakup implementasi OpenGL ES 1.0 API‟s 4. Android Run Time

Layer yang membuat aplikasi Android dapat dijalan kan dimana dalam prosesnya menggunakan implementasi Linux. Dalvik Virtual Machine (DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android. Di dalam Android Run Time dibagi menjadi dua bagian, yaitu:

- Core Libraries: Aplikasi Android dibangun dalambahasa Java, sementara

Dalvik sebagai virtual mesinnya bukan virtual mesin Java, sehingga diperlukan libraries yang berfungsi untuk menterjemahkan bahasa Java/C yang ditangani oleh Core Libraries.

- Dalvik Virtual Machine: Virtual mesin berbasis register yang dioptimalkan

untuk menjalankan fungsi – fungsi secara efisien, dimana merupakan pengembang yang mampu membuat Linux kernel untuk melakukan threading dan manajemen tingkat rendah.

5. Linux Kernel

Linux Kernel adalah layer dimana inti dari operating system dari Android itu berada. Berisi file – file system yang mengatur sistem processing, memory, resource, drivers, dan sistem – sistem operasi Android lainnya. Linux Kernel yang digunakan Android adalah Linux kernel Release 2.6. [9]

(29)

2.1.5 Inverted Pendulum

Inverted Pendulum adalah bandul yang memiliki massa yang berputar di atas titik. Hal ini sering dilakukan dengan berporos titik menjulang pada kereta yang dapat bergerak horisontal dan dapat disebut sebagai tiang dan kereta. Sedangkan biasa bandul stabil ketika gantung ke bawah, sebuah bandul terbalik adalah memiliki sifat tidak stabil, dan harus seimbang aktif untuk tetap tegak, baik oleh tenaga putaran (tourqe) yang berlaku pada persendian atau dengan menggerakan berporos horizontal titik sebagai bagian dari arus balik sistem [10].

2.1.6 Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:

1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.

2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lain seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.

3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi. Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak seperti dokumentasi, pengujian perangkat lunak, pengembangan web, dan lain sebagainya.

(30)

Gambar 2.5 Tampilan Antarmuka Eclipse

2.1.6.11. Sejarah

Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak pengembangan IBM Visual Age for Java 4.0. Produk Eclipse ini diluncurkan oleh IBM pada tanggal 5 November 2001. IBM menginvestasikan US$ 40 juta untuk pengembangannya. Sejak 5 November 2001, konsorsium Eclipse Foundation mengambil alih pengembangan Eclipse lebih lanjut.

2.1.6.22. Arsitektur

Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah dipasang (diinstal). Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP: 1. Core platform

2. OSGi

(31)

4. JFace

5. Eclipse Workbench

Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang bersifat: 1. Terbuka (open),

2. Mudah diperluas (extensible) untuk apa saja 3. Tidak untuk sesuatu yang spesifik

Eclipse tidak saja untuk mengembangkan program Java, tetapi juga untuk berbagai macam keperluan. Perluasan apapun cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ maka telah terdapat plug-in CDT (C/C++ Development Tools) yang dapat dipasang di Eclipse untuk Eclipse menjadi perangkat untuk pengembangan C/C++.

Pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya.

2.1.6.33. Histori Eclipse

(32)

Tabel 2.1 Peluncuran Eclipse

Kode Peluncuran Tanggal Peluncuran

Platform Nama Proyek

Eclipse 3.0 28 Juni 2004 3.0

UML(Unified Modeling Language) merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks – teks pendukung untuk menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak [12].

2.1.7.1Sejarah UML

Bahasa pemrograman berorientasi objek yang pertama dikembangkan dikenal dengan nama Simula-67 yang dikembangkan pada tahun 1967. Bahasa pemrograman ini kurang berkembang dan dikembangkan lebih lanjut, namun dengan kemunculannya telah memberikan sumbangan yang besar pada developer pengembang bahasa pemrograman berorientasi objek selanjutnya.

(33)

berorientasi objek. Metode yang pertama diperkenalkan oleh Sally Shaler dan Stephen Mellor (Shaler-Mellor, 1988) dan Peter Coad dan Edward Yourdon (Coad-Yourdon, 1991), diikuti oleh Grady Booch (Booch, 1991), James R. Rumbaugh, Michael R. Blaha, William Lorensen, Frederick Eddy, William Premerlani (Rumbaugh-Blaha-Premerlani-Eddy-Lorensen, 1991), dan masih banyak lagi.

Buku terkenal yang juga berkembang selanjutnya adalah karangan Ivar Jacobson (Jacobson, 1992) yang menerangkan perbedaan pendekatan yang fokus pada use case dan proses pengembangan. Sekitar lima tahun kemudian muncul buku yang membahas mengenai metodologi berorientasi objek yang diikuti dengan buku – buku yang lainnya. Didalamnya juga membahas mengenai konsep, definisi, notasi, terminologi, dan proses mengenai metodologi berorientasi objek.

Karena banyaknya metodologi – metodologi yang berkembang pesat itu, maka muncullah ide untuk membuat sebuah bahasa yang dapat dimengerti semua orang. Usaha penyatuan ini banyak mengambil dari metodologi – metodologi yang berkembang saat itu. Maka dibuat bahasa yang merupakan gabungan dari beberapa konsep seperti konsep Object Modeling Technique (OMT) dari Rumbaugh dan Booch (1991), konsep The Classes, Responsibilities, Collaborators (CRC) dari Rebecca Wirfs-Brock (1990), konsep pemikiran Ivar Jacobson, dan beberapa konsep lainya dimana James R. Rumbaigh, Grandy Booch, dan Ivar Jacobson bergabung dalam sebuah perusahaan Rational Software Corporation menghasilkan bahasa yang disebut dengan Unified Modeling Language (UML) [12].

2.1.7.2Diagram UML

(34)

1. Use Case Diagram

Use case diagram merupakan pemodelan untuk behavior aplikasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan aplikasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah aplikasi dan siapa saja yang berhak mengguankan fungsi – fungsi itu. Penjelasan tentang simbol – simbol use case dapat dilihat pada tabel 2.2.

Tabel 2.2 Definisi Simbol Use Case Diagram

Simbol Nama Simbol Fungsi

Aktor Merupakan orang, proses, atau sistem lain yang berinteraksi dengan aplikasi yang akan dibuat di luar aplikasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu orang

Use Case Merupakan orang, proses, atau sistem lain yang berinteraksi dengan aplikasi yang akan dibuat di luar aplikasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu orang

Association Merelasikan Aktor dengan use case

System

Boundary

Menggambarkan batasan sistem terhadap lingkungannya

(35)

2. Class Diagram

Class diagram menggambarkan struktur sistem dari segi pendefinisian kelas – kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.

1. Atribut, merupakan variabel – variabel yang dimiliki oleh satu kelas. 2. Operasi, atau metode adalah fungsi – fungsi yang dimiliki oleh suatu kelas

Class diagram dibuat agar pembuat program atau programmer membuat kelas – kelas sesuai rancangan di dalam diagram kelas agar antara dokumentasi perancangan dan perangkat lunak sesuai. Contoh class diagram dapat dilihat pada gambar

Gambar 2.6 Contoh Class Diagram

3. Sequence Diagram

Sequence diagram menggambarkan behavior objek pada use case dengan

mendeskripsikan waktu hidup dan pesan yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambar sequence diagram maka harus diketahui objek – objek yang terlibat dalam sebuah use case beserta metode – metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Membuat sequence diagram yang harus dibuat semakin banyak. Penjelasan tentang simbol

(36)

Tabel 2.3 Definisi Simbol Sequence Diagram

Simbol Nama Simbol Fungsi

Lifelines Representasi dari sebuah class

Activity diagram menggambarkan aliran kerja atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan adalah activity diagram menggambarkan aktivitas sistem bukan apa yang dilakukan aktor. Berikut adalah penjelasan tentang simbol – simbol activity diagram:

Tabel 2.4 Definisi Simbol Activity Diagram

Simbol Nama Simbol Fungsi

Initial State Pernyataan awal dari sebuah aktivitas

Final State Pernyataan akhir dari sebuah aktivitas

Transisi Menggambarkan alur dari aksi – aksi yang ada pada aktivitas

Aksi Menggambarkan aksi

yang ada pada aktivitas

(37)

27

Analisis bertujuan untuk mengidentifikasi permasalahan-permasalahan yang terdapat pada sistem serta menentukan kebutuhan-kebutuhan dari sistem yang dibangun. Analisis tersebut meliputi analisis masalah, analisis kebutuhan data, analisis kebutuhan non fungsional, dan analisis fungsional.

3.1.1 Analisis Masalah

Mempelajari teori sistem kontrol tanpa praktek membuat mahasiswa kesulitan menerapkan ilmu sistem kontrol dalam kehidupan nyata, sehingga, media pembelajaran sistem kontrol diperlukan untuk menunjang pembelajaran. Media pembelajaran yang diperlukan adalah media pembelajaran yang interaktif yang dapat berkomunikasi dengan alat peraga, seperti mensimulasikan algoritma dan dapat merepresentasikan data pergerakan alat peraga dalam bentuk grafik agar mahasiswa dapat menganalisis algoritma yang dijalankan, serta berisi materi PID (Proportional Integral Derivative) dan Fuzzy karena kedua algoritma tersebut sering digunakan pada kontrol industri.

3.1.2 Analisis Media Komunikasi Perangkat Inverted Pendulum

Perangkat Inverted Pendulum adalah salah satu alat peraga sistem kontrol yang menjadi bahan studi kasus yang diambil. Analisis media komunikasi perangkat inverted pendulum menjelaskan tentang media komunikasi yang digunakan pada alat peraga sistem kontrol tersebut agar dapat berkomunikasi dengan aplikasi Tutorial Pembelajaran Sistem Kontrol.

Perangkat inverted pendulum adalah alat peraga yang memerlukan station, yang berfungsi untuk memonitoring dan sebagai pengendali. Station dapat

(38)

antara komputer dan perangkat peraga yang dipilih adalah bletooth, Karena data yang dikirim dari alat peraga berupa data serial, komunikasi data yang digunakan sebagai pengganti kabel data port serial adalah bluetooth, karena bluetooth memiliki profil untuk pengiriman data serial yaitu serial port profile (SPP).

3.1.3 Analisis Implementasi Bluetooth Serial Port Profile

Media komunikasi yang digunakan aplikasi Tutorial Pembelajaran Sistem Kontrol sebagai media transmisi data dengan Perangkat Inverted Pendulum adalah Bluetooth serial port profile.

3.1.3.1Penerapan Bluetooth

Penerapan bluetooth dibagi menjadi tiga tahap, Inisialisasi, Pencarian Paired Bluetooth, dan Menghubungkan Perangkat. Berikut skema penerapan

bluetooth.

Gambar 3.1 Skema penerapan bluetooth

Sebelum mengimplementasikan Bluetooth Serial Port Profile, bluetooth alat peraga harus sudah pair dengan tablet. Berikut adalah penjelasan dari tahapan

– tahapan dalam mengimplementasikan Bluetooth serial port profile beserta penggunaan code dalam bahasa Java di Android dalam komunikasi data dengan mikrokontroller yang ada pada Perangkat Inverted Pendulum.

1. Inisialisasi

(39)

Implementasi Bluetooth dapat dilihat pada gambar 3.2.

Gambar 3.2 Inisialisasi Bluetooth

BluetoothSocket berfungsi untuk menggunakan serial port profile untuk mengirim data secara real time, sedangakan BluetoothDevice berfungsi untuk menyimpan alamat perangkat yang akan dihubungkan. Kedua tipe data tersebut akan digunakan pada tahap selanjutnya.

BluetoothAdapter digunakan untuk menginisialisasi bluetooth yang ada pada tablet/device Android yang digunakan. Code tersebut diimplementasikan pada constructor class Bluetooth yang digunakan. Berikut implementasinya:

Gambar 3.3 Constructor Bluetooth Adapter

2. Pencarian Paired Device

Tahap ini menjelaskan tentang mencari perangkat yang sudah pair. Bluetooth alat peraga harus sudah pair terlebih dengan tablet. BluetoothDevice

(40)

Gambar 3.4 Implementasi Pencarian Paired Device

BtAdapter.getBoundedDevices adalah fungsi untuk mengambil data daftar bluetooth yang telah pair. Cek apabila terdapat bluetooth yang telah pair, lakukan pengulangan dengan pengecekan mac address, apabila mac address cocok dengan mac address yang dimiliki alat peraga, maka variabel btDevice diisi dengan bluetooth tersebut. “20:13:05:20:21:50" adalah contoh mac address perangkat inverted pendulum.

3. Menghubungkan Perangkat

Tahap ini menjelaskan tentang cara menghubungkan perangkat dengan aplikasi melalui serial port profile. Berikut implementasinya:

(41)

"00001101-0000-1000-8000-00805F9B34FB" adalah kode standar SerialPortService ID, sebagai standar UUID(Universal Unique Identifier) untuk profil Serial Port. BeginListenForData() adalah method atau prosedur yang digunakan untuk melakukan pengecekan data yang masuk dari waktu ke waktu yang akan di bahas pada tahap Listen Data.

3.1.3.2Listen Data

Tahap ini adalah tahap transmisi atau penerimaan dan pengiriman data antar bluetooth. Berikut implementasinya:

(42)

Gambar 3.7 Prosedur Listen Data Bagian 2

Listendata dilakukan secera terus menerus. Dengan cara mengecek nilai masukan yang diterima dengan mmInputStream.available(), apabila terdapat nilai masukan, maka dilanjutkan dengan mmInputStream.read(packetBytes). Setelah itu, lakukan perulangan sejumlah paket data yang diterima, lalu cacah satu per satu data yang diterima, apabila menemukan delimiter, maka masukan data kedalam variabel _data dan siap untuk diolah.

3.1.3.3Pengiriman Data

Pengiriman data dapat dilakukan secara langsung dengan menggunakan prosedur sebagai berikut

Gambar 3.8 Prosedur Pengiriman Data

(43)

3.1.3.4Plotting Data

Plotting data dilakukan dengan plug-in “achartengine” yaitu sebuah class engine yang digunakan untuk membuat grafik atau chart. Ploting data dilakukan

apabila ada data yang diterima oleh ListenData dan data tersebut tidak null. Berikut skema pengiriman datanya.

Gambar 3.9 Skema plotting data

Data, dikirim dari alat peraga melalui bluetooth dan diterima oleh ListenData yang diambil dengan mmInputstream() seperti pada proses ListenData. Kemudian, data tersebut diubah menjadi point dengan prosedur kode sebagai berikut

Gambar 3.10 Prosedur Point

Variabel x diisi dengan perulangan waktu dalam satuan millisecond, sedangkan variabel y diisi dengan data yang diterima dari alat peraga. Setelah data diubah menjadi point, point tersebut ditambahkan kedalam dataset yang telah dibuat, dengan kode sebagai berikut

(44)

Baris kode yang digunakan untuk menambahkan point yaitu dataset.add(p.getX(), p.getY()). Dataset merupakan objek dari kelas Timeseries, yaitu sebuah tipe data yang disediakan oleh achartengine, sedangkan p adalah point yang telah dibuat pada proses membuat point.

Setelah data ditambahkan kedalam dataset, grafik digambar ulang dengan baris kode repaint() agar data baru ditampilkan.

3.1.4 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional adalah analisis yang menggambarkan kebutuhan luar sistem yang diperlukan untuk menjalankan aplikasi yang dibangun. Adapun kebutuhan non fungsional yang diperlukan untuk menjalankan aplikasi Tutorial Pembelajaran Sistem Kontrol adalah kebutuhan perangkat keras, kebutuhan perangkat lunak, dan pengguna yang akan memakai aplikasi tersebut. Analisis kebutuhan non fungsional bertujuan agar aplikasi yang dibangun dapat digunakan sesuai dengan pengguna.

3.1.4.1Analisis Perangkat Keras

Analisis perangkat keras bertujuan untuk memudahkan peroses perancangan dan implementasi dalam pembangunan aplikasi Tutorial Pembelajaran Sistem Kontrol. Agar aplikasi Tutorial Pembelajaran Sistem Kontrol ini dapat berjalan dengan baik. Adapun kebutuhan minimum perangkat keras yang dibutuhkan untuk menjalankan aplikasi Tutorial Pembelajaran Sistem Kontrol dapat dilihat pada tabel 3.1.

Tabel 3.1 Kebutuhan Minimun Perangkat Keras

No Perangkat Keras Spesifikasi

1 Processor 1 GHz

2 WLAN Bluetooth 2.0

3 Ukuran Layar 7.9 Inch

4 Resolusi 1024 x 768 pixels

(45)

Kebutuhan processor dengan kecepatan tinggi sangat dibutuhkan untuk menerima data yang dikirim oleh alat peraga kepada tablet yang akan diproses dan di-plot menjadi grafik secara real-time. Bluetooth digunakan untuk komunikasi data nirkabel dengan alat peraga. Dibutuhkan ukuran layar dan resolusi yang cukup besar untuk menampilkan grafik real-time agar visualisasi grafik terlihat jelas dan mudah diamati.

Berdasarkan analisis tersebut, perangkat yang sesuai dengan kebutuhan yang digunakan adalah Acer Iconia A1-811, perangkat ini akan menjadi satu bundel dengan alat peraga dan menjadi prodak Perangkat Inverted Pendulum.

3.1.4.2Analisis Perangkat Lunak

Aplikasi Tutorial Pembelajaran Sistem Kontrol yang dibangun membutuhkan perangkat lunak pendukung sehingga aplikasi tersebut dapat berjalan dengan baik. Adapun perangkat lunak minimum yang dibutuhkan untuk menjalankan aplikasi yang dibangun adalah sistem operasi Android versi 4.2 Jeally Bean. Android Jelly Bean dipilih karena sistem operasi Android sangat cepat berkembang, sehingga, Jelly Bean adalah sistem operasi Android yang cukup baru dan stabil dalam menjalankan aplikasi dan mendukung library kode untuk plot grafik.

3.1.5 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional dilakukan untuk memberikan gambaran mengenai sistem yang berjalan pada Aplikasi Tutorial pembelajaran sistem kontrol.

3.1.5.1Usecase Diagram Tutorial Pembelajaran Sistem Kontrol

Usecase diagram menggambarkan proses dari setiap prosedur berjalan

(46)

Gambar 3.12 Usecase diagram aplikasi Tutorial pembelajaran sistem kontrol

3.1.5.2Definisi Aktor

Definisi aktor mendeskripsikan peranan aktor yang ada pada sistem. Definisi aktor pada aplikasi Tutorial Pembelajaran Sistem Kontrol dapat dilihat pada Tabel 3.2 Tabel Definisi Aktor Tutorial Pembelajaran Sistem KontrolTabel 3.2.

Tabel 3.2 Tabel Definisi Aktor Tutorial Pembelajaran Sistem Kontrol

No Aktor Deskripsi

(47)

3.1.5.3Definisi Use Case

Definisi use case mendeskripsikan setiap use case yang terdapat pada usecase diagram aplikasi Tutorial Pembelajaran Sistem Kontrol. Definisi use case

dapat dilihat pada tabel 3.3.

Tabel 3.3 Tabel Definisi Use Case Tutorial Pembelajaran Sistem Kontrol

No Use case Deskripsi

1 Menampilkan Pendahuluan Merupakan proses menampilkan materi pendahuluan sebelum mempelajari materi sistem kontrol

2 Menampilkan Materi Kontrol Merupakan Proses yang menampilkan pilihan materi sistem kontrol

3 Menampilkan Materi PID Merupakan proses menampilkan materi

–materi tentang algoritma PID(Proportional, Integral, Derivatif) 4 Menampilkan Materi Fuzzy Merupakan proses menampilkan materi

– materi tentang algoritma Fuzzy 5 Menampilkan Kebutuhan

Disain

Merupakan proses menampilkan bahasan tentang kebutuhan disain 6 Menampilkan Pemodelan Merupakan proses menampilkan materi

pemodelan 7 Menampilkan Simulasi

Algoritma

Merupakan proses yang menampilkan pilihan simulasi algoritma

8 Menampilkan Simulasi Algoritma Fuzzy

Merupakan proses simulasi algoritma fuzzy, pengiriman variabel pemilih

algoritma yang ada dalam alat peraga dan parameter algoritmanya

10 Menampilkan Simulasi Algoritma PID

(48)

No Use case Deskripsi 11 Menampilkan Grafik

Algoritma Fuzzy

Merupakan proses pengolahan data fuzzy yang diterima dari alat peraga

menjadi grafik dan menampilkannya 12 Menampilkan Grafik

Algoritma PID

Merupakan proses pengolahan data PID yang diterima dari alat peraga menjadi grafik dan menampilkannya

13 Menampilkan Uji Materi Merupakan proses menampilkan latihan soal dari materi – materi yang ada pada aplikasi untuk evaluasi pembelajaran 14 Menampilkan Nilai Merupakan proses untuk menampilkan

nilai hasil dari uji materi

3.1.5.4Skenario Use Case

Skenario use case menjelaskan proses berjalannya suatu use case. Berikut skenario use case yang ada pada Use case Diagram aplikasi Tutorial Pembelajaran Sistem Kontrol.

Tabel 3.4 Use case skenario menampilkan pendahuluan

Nama Use case : Menampilkan Pendahuluan

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu pendahuluan

2. Menampilkan halaman pendahuluan Tabel 3.5 Use case skenario menampilkan materi kontrol

Nama Use case : Menampilkan Materi Kontrol

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu materi kontrol

(49)

Tabel 3.6 Use case skenario menampilkan materi PID

Nama Use case : Menampilkan Materi PID Use case berkaitan : Materi Kontrol

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu materi kontrol

2. Menampilkan halaman materi kontrol

3. Memilih menu materi PID

4. Menampilkan menu materi PID

Tabel 3.7 Use case skenario menampilkan materi fuzzy

Nama Use case : Menampilkan Materi Fuzzy Use case berkaitan : Materi Kontrol

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu materi kontrol

2. Menampilkan halaman materi kontrol

3. Memilih menu materi fuzzy

4. Menampilkan menu materi fuzzy

Tabel 3.8 Use case skenario menampilkan kebutuhan disain

Nama Use case : Menampilkan Kebutuhan Disain

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu kebutuhan disain

(50)

Tabel 3.9 Use case skenario menampilkan pemodelan

Nama Use case : Menampilkan Pemodelan

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu pemodelan

2. Menampilkan halaman pemodelan

Tabel 3.10 Use case skenario menampilkan simulasi algoritma

Nama Use case : Menampilkan Simulasi Algoritma

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu simulasi

2. Menampilkan halaman simulasi

Tabel 3.11 Use case skenario menampilkan simulasi algoritma fuzzy

Nama Use case : Menampilkan Simulasi Algoritma Fuzzy Use case berkaitan : Simulasi

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu materi simulasi

2. Menampilkan halaman simulasi 3. Memilih menu simulasi Algoritma

Fuzzy

4. Menampilkan menu simulasi Algoritma Fuzzy

5. Mengisi Parameter algoritma fuzzy 6. Tekan tombol proses

(51)

Aksi Aktor Reaksi Sistem Skenario Gagal

1. Memilih menu materi simulasi

2. Menampilkan halaman simulasi 3. Memilih menu simulasi Algoritma

Fuzzy

4. Menampilkan menu simulasi Algoritma Fuzzy

5. Mengisi Parameter algoritma fuzzy 6. Tekan tombol proses

7. Mengirim parameter algoritma fuzzy

8. Pengiriman gagal

9. Menampilkan pesan pengiriman gagal

Tabel 3.12 Use case skenario simulasi menampilkan algoritma PID

Nama Use case : Menampilkan Simulasi Algoritma PID Use case berkaitan : Simulasi

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu materi simulasi

2. Menampilkan halaman simulasi 3. Memilih menu simulasi

Algoritma PID

4. Menampilkan menu simulasi Algoritma PID

5. Mengisi Parameter algoritma PID

6. Tekan tombol proses

(52)

Aksi Aktor Reaksi Sistem Skenario Gagal

1. Memilih menu materi simulasi

2. Menampilkan halaman simulasi 3. Memilih menu simulasi

Algoritma PID

4. Menampilkan menu simulasi Algoritma PID

5. Mengisi Parameter algoritma PID

6. Tekan tombol proses

7. Mengirim parameter algoritma PID 8. Pengiriman gagal

9. Menampilkan pesan pengiriman gagal

Tabel 3.13 Use case skenario menampilkan grafik algoritma fuzzy

Nama Use case : Menampilkan Grafik Algoritma Fuzzy Use case berkaitan : Simulasi Algoritma Fuzzy

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Menerima data dari alat peraga 2. Mengubah data menjadi grafik 3. Menampilkan grafik

Skenario Gagal

(53)

Tabel 3.14 Usecase skenario menampilkan grafik algoritma PID

Nama Use case : Menampilkan Grafik Algoritma PID Use case berkaitan : Simulasi Algoritma PID

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Menerima data dari alat peraga 2. Mengubah data menjadi grafik 3. Menampilkan grafik

Skenario Gagal

1. Data dari alat peraga gagal diterima 2. Tampilkan pesan gagal menerima da Tabel 3.15 Use case skenario menampilkan uji materi

Nama Use case : Menampilkan Uji Materi Use case berkaitan : Tampil Nilai

Aksi Aktor Reaksi Sistem

Skenario Normal

1. Memilih menu uji materi

2. Menampilkan halaman uji materi 3. Mengisi soal uji materi

4. Tampil Nilai 5. Menekan tombol tampil nilai

6. Menampilkan nilai hasil uji materi

Tabel 3.16 Use case skenario menampilkan nilai

Nama Use case : Menampilkan Nilai

Aksi Aktor Reaksi Sistem

Skenario Normal

(54)

3.1.5.5Activity Diagram Tutorial Pembelajaran Sistem Kontrol

Activity diagram menggambarkan aliran kerja atau aktivitas dari sebuah sistem atau proses bisnis dan menu yang ada pada perangkat lunak.

1. Activity Diagram Use Case MenampilkanPendahuluan

Activity diagram use case pendahuluan menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan pendahuluan dapat dilihat pada Gambar 3.13.

(55)

2. Activity Diagram Use Case MenampilkanMateri Kontrol

Activity diagram use case materi kontrol menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan materi kontrol dapat dilihat pada Gambar 3.14.

Gambar 3.14 Activity diagram use case menampilkan materi kontrol

3. Activity Diagram Use Case MenampilkanMateri PID

Activity diagram use case materi PID menjelaskan aliran kerja aktor

(56)

Gambar 3.15 Activity diagram use case menampilkan materi PID

4. Activity Diagram Use Case MenampilkanMateri Fuzzy

Activity diagram use case materi fuzzy menjelaskan aliran kerja aktor

(57)

Gambar 3.16 Activity diagram use case menampilkan materi fuzzy

5. Activity Diagram Use Case MenampilkanKebutuhan Disain

Activity diagram use case kebutuhan disain menjelaskan aliran kerja aktor

(58)

Gambar 3.17 Activity diagram use case menampilkan kebutuhan disain

6. Activity Diagram Use Case MenampilkanPemodelan

Activity diagram use case pemodelan menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan pemodelan dapat dilihat pada Gambar 3.18.

(59)

7. Activity Diagram Use Case MenampilkanSimulasi Algoritma

Activity diagram use case simulasi menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan simulasi algoritma dapat dilihat pada Gambar 3.19.

Gambar 3.19 Activity diagram use case menampilkan simulasi algoritma

8. Activity Diagram Use Case MenampilkanSimulasi Algoritma Fuzzy

Activity diagram use case simulasi menjelaskan aliran kerja aktor

(60)
(61)

9. Activity Diagram Use Case MenampilkanSimulasi Algoritma PID

Activity diagram use case simulasi PID menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan simulasi algoritma PID dapat dilihat pada Gambar 3.21.

(62)

10.Activity Diagram Use Case MenampilkanGrafik Algoritma Fuzzy

Activity diagram use case grafik algoritma fuzzy menjelaskan aliran kerja

aktor pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan grafik algoritma fuzzy dapat dilihat pada Gambar 3.22.

(63)

11.Activity Diagram Use Case MenampilkanGrafik Algoritma PID

Activity diagram use case grafik algoritma PID menjelaskan aliran kerja

aktor pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan grafik algoritma PID dapat dilihat pada Gambar 3.23.

(64)

12.Activity Diagram Use Case MenampilkanUji Materi

Activity diagram use case uji materi menjelaskan aliran kerja aktor

pengguna untuk melihat halaman pendahuluan. Activity diagram use case menampilkan uji materi dapat dilihat pada Gambar 3.24.

Gambar 3.24 Activity diagram use case menampilkan uji materi

13.Activity Diagram Use Case MenampilkanNilai

Activity diagram use case tampil nilai menjelaskan aliran kerja aktor

(65)

Gambar 3.25 Activity diagram use case menampilkan nilai

3.1.5.6Class Diagram Tutorial Pembelajaran Sistem Kontrol

(66)
(67)

3.1.5.7Sequence Diagram Tutorial Pembelajaran Sistem Kontrol

Sequence diagram menggambarkan behavior objek pada use case dengan

mendeskripsikan waktu hidup dan pesan yang dikirimkan dan diterima antar objek.

1. Sequence Diagram Use Case Pendahuluan

Squence diagram Pendahuluan pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.27.

Gambar 3.27 Sequence diagram pendahuluan

2. Sequence Diagram Use Case Materi Kontrol

(68)

Gambar 3.28 Sequence diagram materi kontrol

3. Sequence Diagram Use Case Materi PID

Squence diagram Materi PID pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.29.

(69)

4. Sequence Diagram Use Case Materi Fuzzy

Squence diagram Materi fuzzy pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.30.

Gambar 3.30 Sequence diagram materi fuzzy

5. Sequence Diagram Use Case Kebutuhan Disain

Squence diagram Kebutuhan disain pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.31.

(70)

6. Sequence Diagram Use Case Pemodelan

Squence diagram Pemodelan pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.32.

Gambar 3.32 Sequence diagram pemodelan

7. Sequence Diagram Use Case Simulasi

(71)

Gambar 3.33 Sequence diagram simulasi

8. Sequence Diagram Use Case Simulasi Algoritma Fuzzy

(72)
(73)

9. Sequence Diagram Use Case Simulasi Algoritma PID

Squence diagram simulasi algoritma PID pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.35.

(74)

10.Sequence Diagram Use Case Grafik Algoritma Fuzzy

Squence diagram Grafik algoritma fuzzy pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.36.

(75)

11.Sequence Diagram Use Case Grafik Algoritma PID

Squence diagram grafik algoritma PID pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.37.

(76)

12.Sequence Diagram Use Case Uji Materi

Squence diagram Uji materi pada aplikasi Tutorial pembelajaraan sistem kontrol dapat dilihat pada Gambar 3.38.

Gambar 3.38 Sequence diagram uji materi

13.Sequence Diagram Use Case Tampil Nilai

(77)

Gambar 3.39 Sequence diagram tampil nilai

3.2 Spesifikasi Kebutuhan Perangkat Lunak

3.2.1 SKPL-NF-001 Sistem Dibangun Berbasis Android

Fakta perangkat lunak yang tersedia:

1. Sistem Operasi Android versi 4.2 Jellybean Kebutuhan perangkat lunak:

1. Sistem Operasi Android versi 4.2 Jellybean Kesimpulan:

(78)

3.2.2 SKPL-NF-002 Sistem Dibangun dengan Spesifikasi Processor yang Tinggi

Fakta perangkat keras yang tersedia: 1. Processor Quad-core 1.2 GHz 2. WLAN Bluetooth v4.0

3. Ukuran layar 7.9 inch 4. Resolusi 1024x768 px Kebutuhan perangkat keras: 1. Processor Dual-core 1 GHz 2. WLAN Bluetooth v2.0 3. Ukuran layar 7.9 inch 4. Resolusi 1024x768 px Kesimpulan:

Perangkat keras tidak perlu ada perubahan karena telah mendukung sistem yang akan dibuat.

3.2.3 SKPL-NF-003 Pengguna Sistem Minimal Memiliki Kemampuan Mengoperasikan Sistem Operasi Android

Fakta perangkat pikir yang ada:

Tabel 3.17 Perangkat Pikir yang Ada

Stakeholder Tanggung jawab

Tingakat Pendidikan

Gambar

Gambar  2.5 Tampilan Antarmuka Eclipse
Tabel  2.3 Definisi Simbol Sequence Diagram
Gambar  3.5 Implementasi Menghubungkan Perangkat
Grafik Merupakan proses pengolahan data
+7

Referensi

Dokumen terkait

Sistem informasi ini, menggunakan metode air terjun (waterfall) sebagai metode pengembangan perangkat lunak, perancangan sistem digunakan Flowchart System dan

Mata kuliah ini mempelajari tentang metode dan teknik pengembangan perangkat lunak, yang digunakan sebagai acuan atau pedoman dalam melakukan pengujian sistem, dimana metode

Pengembangan sistem untuk penelitian ini akan menggunakan metode pengembangan perangkat lunak dengan model prototype , karena metode ini dianggap lebih memudahkan

Pada penelitian ini pembuatan website akan menggunakan Model RAD (Rapid Application Development), untuk Metode pengembangan perangkat lunak yaitu menggunakan

Model proses pengembangan perangkat lunak yang digunakan dalam penelitian ini yaitu menggunakan metode waterfall yang terdiri dari tahap analisa kebutuhan, tahap perancangan