kontroler lengan robot berbasis - core.ac.uk · digerakkan dengan 4 buah motor servo. hastobot...

132
TUGAS AKHIR KONTROLER LENGAN ROBOT BERBASIS SMARTPHONE ANDROID Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Fakultas Sains dan Teknologi disusun oleh : YOEL ANGGUN WIRATAMA PUTRA NIM : 115114046 PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Upload: nguyendiep

Post on 27-May-2019

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

TUGAS AKHIR

KONTROLER LENGAN ROBOT BERBASIS

SMARTPHONE ANDROID

Diajukan untuk memenuhi salah satu syarat

memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi

disusun oleh :

YOEL ANGGUN WIRATAMA PUTRA

NIM : 115114046

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

i

TUGAS AKHIR

KONTROLER LENGAN ROBOT BERBASIS

SMARTPHONE ANDROID

Diajukan untuk memenuhi salah satu syarat

memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi

disusun oleh :

YOEL ANGGUN WIRATAMA PUTRA

NIM : 115114046

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

ii

FINAL PROJECT

ARM ROBOT CONTROLLER

USING ANDROID SMARTPHONE

In partial fulfilment of the requirements

for the degree of Sarjana Teknik

Electrical Engineering Study Program

Faculty of Science and Technology

YOEL ANGGUN WIRATAMA PUTRA

NIM : 115114046

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

iii

HALAMAN PERSETUJUAN

TUGAS AKHIR

KONTROLER LENGAN ROBOT BERBASIS

SMARTPHONE ANDROID

disusun Oleh :

YOEL ANGGUN WIRATAMA PUTRA

NIM : 115114046

Telah disetujui oleh :

Pembimbing

Djoko Untoro, S.Si, M.T Tanggal : __________________

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

iv

HALAMAN PENGESAHAN

TUGAS AKHIR

KONTROLER LENGAN ROBOT BERBASIS

SMARTPHONE ANDROID

disusun Oleh :

YOEL ANGGUN WIRATAMA PUTRA

NIM : 115114046

Telah dipertahankan di depan panitia penguji

pada tanggal 27 November 2015

dan dinyatakan memenuhi syarat

Susunan Panitia Penguji :

Nama Lengkap Tanda Tangan

Ketua : Ir. Tjendro, M.Kom

Anggota : Djoko Untoro, S.Si, M.T

Anggota : Petrus Setyo Prabowo, S.T., M.T.

Yogyakarta, ..............................

Fakultas Sains dan Teknologi

Universitas Sanata Dharma

Dekan,

Paulina Heruningsih Prima Rosa, S.Si., M.Sc.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

v

PERNYATAAN KEASLIAN KARYA

“Saya menyatakan dengan sesungguhnya bahwa

tugas akhir ini tidak memuat karya atau bagian karya orang lain,

kecuali yang telah disebutkan dalam kutipan dan daftar pustaka

sebagaimana layaknya karya ilmiah”

Yogyakarta, ......................

Yoel Anggun Wiratama Putra

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

“Aku adalah orang yang bodoh, keras kepala, tidak

menghargai hidup, tidak bersyukur dan egois ketika aku

tidak mencari, menyiakan bahkan tidak menggunakan

kesempatan yang ada.”

Yoel Anggun Wiratama Putra

Karya ini kupersembahkan untuk.......

Tuhan Yesus Kristus, Pembimbing dan Penyemangatku,

Keluarga tercinta,

Teman-teman seperjuangan TE 2011,

Dan semua pihak yang telah terlibat dalam proses penelitian ini

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

vii

HALAMAN PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : YOEL ANGGUN WIRATAMA PUTRA

Nomor Mahasiswa : 115114046

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan

Universitas Sanata Dharma karya ilmiah saya yang berjudul :

KONTROLER LENGAN ROBOT BERBASIS SMARTPHONE

ANDROID

Beserta perangkat yang diperlukan (bila ada). Dengan demikian, saya telah memberikan

kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan

dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan

secara terbatas, dan mempublikasikannya di internet atau media lain untuk kepentiingan

akademis tanpa perlu meminta ijin dari saya meupun memberikan royalti kepada saya

selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta,...............................

YOEL ANGGUN WIRATAMA PUTRA

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

viii

INTISARI

Hastobot adalah miniatur lengan robot industri yang dikembangkan oleh Program

Studi Teknik Elektro Universitas Sanata Dharma. Hastobot terbuat dari akrilik dan

digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian

ini difokuskan terhadap pembuatan kontroler untuk lengan robot Hastobot menggunakan

Arduino dan Android dengan komunikasi Bluetooth.

Arduino terhubung dengan modul Bluetooth HC-05 sebagai slave untuk menerima

data dari aplikasi Android. Aplikasi Android dibuat dengan Eclipse IDE( Integrated

Development Environment ). Motor servo digerakkan melalui mode geser touch screen

pada aplikasi Android. Format data yang dikirimkan aplikasi Android menggunakan

header data untuk mengidentifikasi pergerakan masing-masing motor servo. Aplikasi

Android dirancang mampu menggerakkan lengan robot sesuai dengan daerah kerja lengan

robot.

Aplikasi yang dihasilkan mampu menggerakkan lengan robot dengan baik. Aplikasi

juga memiliki sistem pengaman lengan robot dari kerusakan akibat pergerakan motor servo

yang tidak sesuai dengan daerah kerja lengan robot. Komunikasi data yang diterima

Arduino mampu ditrasmisikan dengan baik dalam radius 15 meter.

Kata Kunci: lengan robot Hastobot, Bluetooth, aplikasi Android, Arduino, Eclipse.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

ix

ABSTRACT

Hastobot is an arm robot miniature developed by Electrical Engineering Sanata

Dharma University. Hastobot made of acrylic and driven by 4 servo motors. Hastobot has

4 degree of freedom. This research was focused on Hastobot controller using Arduino and

Android via Bluetooth communication.

Arduino is connected to Bluetooth HC-05 as a slave to receive data from Android

Application. Android application was made from Eclipse IDE. Servo motors is driven by

seekbar interface on Android application. Data format that has been sent from Android

application has a data header to identificate which servo is desired to move. This

application was design to make the robot moves as its workspaces.

Application was able to work well. The application has a damaging prevention

from servo moves that‟s not equal to workspaces. Android application can only

communicate within 15 meters of radius.

Keyword: arm robot Hastobot, Bluetooth HC-05, Android Application, Arduino, Eclipse.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

x

KATA PENGANTAR

Puji dan syukur kepada Tuhan Yang Maha Esa yang telah memberikan kenikmatan

berupa kesehatan jasmani dan rohani sehingga penulis dapat menyelesaikan tugas akhir

dengan lancar dari awal hingga diakhiri dengan munculnya laporan akhir dengan judul

“KONTROLER LENGAN ROBOT BERBASIS SMARTPHONE ANDROID”.

Dalam pembuatan laporan akhir dari awal hingga akhir tentunya ada bantuan dari

beberapa pihak sehingga laporan akhir yang disusun oleh penulis sesuai dengan ketentuan

yang ada. Dengan adanya bantuan dari beberapa pihak, penulis dapat menyelesaikan

laporan akhir tersebut dan hendak mengucapkan terima kasih kepada beberapa pihak

diantaranya adalah sebagai berikut :

1. Tuhan Yang Maha Esa yang telah memberikan kenikmatan berupa kesehatan

jasmani dan rohani.

2. Kedua orang tua dan saudara penulis yang telah mendukung dan memberikan doa

restu.

3. Bapak Petrus Setyo Prabowo, S.T., M.T., sebagai Ka. Prodi Teknik Elektro

Universitas Sanata Dharma Yogyakarta

4. Bapak Djoko Untoro, S.Si,M.T., sebagai Dosen Pembimbing Tugas Akhir yang

dengan penuh pengertian dan kesabaran telah meluangkan waktu untuk

memberikan bimbingan, masukan, dan motivasi dalam penulisan laporan akhir ini.

5. Bapak Ir. Tjendro, M.Kom., dan Bapak Petrus Setyo Prabowo, S.T., M.T., sebagai

dosen penguji yang telah memberikan bimbingan dan masukan dalam merevisi

laporan akhir ini.

6. Teman-teman Teknik Elektro angkatan 2011 yang telah banyak membantu baik

lahir maupun batin.

7. Semua pihak yang telah memberikan bantuan dalam penyusunan laporan akhir ini.

Dalam penyusunan laporan akhir ini tentunya terdapat kekurangan dan kelemahan

serta jauh dari kata sempuna. Karena kesempurnaan hanya milik Tuhan semata. Oleh

Karena itu penulis menerima masukan berupa kritik dan saran dengan harapan menjadikan

penulis lebih baik lagi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xi

Semoga laporan akhir ini dapat diterima dengan baik oleh semua pihak. Dan semua

kekurangan yang ada dapat dimaklumi. Semoga laporan akhir ini dapat memberikan

manfaat kepada penulis dan pembaca.

Yogyakarta, ....................

Yoel Anggun Wiratama Putra

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xii

DAFTAR ISI

HALAMAN JUDUL ............................................................................................................. i

HALAMAN PERSETUJUAN ........................................................................................... iii

HALAMAN PENGESAHAN ............................................................................................ iv

PERNYATAAN KEASLIAN KARYA .............................................................................. v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ................................................. vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ......................................... vii

INTISARI .......................................................................................................................... viii

ABSTRACT ........................................................................................................................ ix

KATA PENGANTAR ......................................................................................................... x

DAFTAR ISI ...................................................................................................................... xii

DAFTAR GAMBAR ......................................................................................................... xv

DAFTAR TABEL ............................................................................................................ xvii

BAB I PENDAHULUAN

1.1 Latar Belakang ............................................................................................................... 1

1.2 Tujuan ............................................................................................................................. 2

1.3 Manfaat ........................................................................................................................... 2

1.4 Batasan Masalah ............................................................................................................. 3

1.5 Metodologi Penelitian .................................................................................................... 3

BAB II DASAR TEORI

2.1 Sistem Operasi Android

2.1.1 Sejarah dan Perkembangan ................................................................................... 4

2.1.2 Android Software Stack ......................................................................................... 7

2.1.3 Pengembangan Android ........................................................................................ 8

2.2 Bluetooth

2.2.1 Sejarah dan Pengertian ........................................................................................ 10

2.2.2 Bluetooth Protocol .............................................................................................. 10

2.2.3 Piconet dan Scatternet ......................................................................................... 12

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xiii

2.2.4 Jangkauan Bluetooth ........................................................................................... 14

2.2.5 Keamanan Bluetooth ........................................................................................... 14

2.2.6 Bluetooth Android ............................................................................................... 15

2.2.7 Modul Bluetooth HC-05 ...................................................................................... 16

2.3 Arduino Board ............................................................................................................... 17

2.4 Mikrokontroler ATmega

2.4.1 Fitur dan Arsitektur ............................................................................................. 20

2.4.2 Konfigurasi Pin ATmega 328 .............................................................................. 22

2.5 Robot

2.5.1 Lengan robot ........................................................................................................ 24

2.5.2 Kinematika Robot ................................................................................................ 25

2.5.3 Analisa Kinematika Dengan Persamaan Trigonometri ....................................... 26

2.6 Motor Servo

2.6.1 Pengertian ............................................................................................................ 27

2.6.2 Pengendalian Motor Servo .................................................................................. 29

2.6.3 Spesifikasi Motor Servo ...................................................................................... 30

BAB III PERANCANGAN

3.1 Pemodelan Sistem ......................................................................................................... 31

3.2 Perancangan dan Konfigurasi Modul Bluetooth

3.2.1 Pengkabelan Modul Bluetooth dengan Arduino Uno ......................................... 32

3.2.2 Konfigurasi Modul Bluetooth HC-05 .................................................................. 32

3.3 Desain Lengan Robot .................................................................................................... 36

3.4 Perancangan User Interface pada Android .................................................................... 42

3.5 Format Pengiriman Data ................................................................................................ 44

3.6 Perancangan Diagram Alir

3.6.1 Diagram Alir Aplikasi Android

Kontroler Lengan Robot ............................................................................................... 46

3.6.2 Diagram Alir Arduino Uno ................................................................................. 47

BAB IV HASIL DAN PEMBAHASAN

4.1 Lengan Robot

4.1.1 Bentuk Fisik dan Dimensi Lengan Robot ........................................................... 48

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xiv

4.1.2 Kalibrasi dan Daerah Kerja Lengan Robot ......................................................... 51

4.1.3 Analisa Matematis Lengan Robot ....................................................................... 57

4.2 Aplikasi Kontroler Lengan Robot

4.2.1 Antarmuka Aplikasi Kontroler Lengan Robot .................................................... 64

4.2.2 Cara Penggunaan Aplikasi Kontroler Lengan Robot .......................................... 68

4.2.3 Pembahasan Program Komunikasi Bluetooth .................................................... 68

4.2.4 Hasil Komunikasi Aplikasi Kontroler Lengan Robot ......................................... 72

KESIMPULAN DAN SARAN

5.1 Kesimpulan .................................................................................................................... 77

5.1 Saran .............................................................................................................................. 77

DAFTAR PUSTAKA ........................................................................................................ 78

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xv

DAFTAR GAMBAR

Gambar 2.1 Android Software Stack ............................................................................... 7

Gambar 2.2 Bluetooth Stack Protocol .......................................................................... 10

Gambar 2.3 Jaringan Piconet ......................................................................................... 12

Gambar 2.4 Jaringan Scatternet ..................................................................................... 12

Gambar 2.5 Proses Pairing ............................................................................................ 14

Gambar 2.6 Modul Bluetooth HC-05 ............................................................................ 15

Gambar 2.7 Diagram Blok Sederhana Arduino Uno .................................................... 16

Gambar 2.8 Bagian-Bagian Arduino ............................................................................. 17

Gambar 2.9 Arsitektur Mikrokontroler ATmega 328 ................................................... 20

Gambar 2.10 Konfigurasi Pin ATmega 328 .................................................................... 20

Gambar 2.11 Bagian umum lengan robot ....................................................................... 23

Gambar 2.12 Relasi Kinematika Maju dan balik ............................................................ 23

Gambar 2.13 Robot Lengan 1 DOF ................................................................................ 24

Gambar 2.14 Robot Lengan 2 DOF ................................................................................ 24

Gambar 2.15 Motor Servo ............................................................................................... 26

Gambar 2.16 Gerak Motor Servo .................................................................................... 27

Gambar 2.17 Motor Servo FITECH 5654 MG ............................................................... 28

Gambar 2.18 Perhitungan torsi lengan robot ................................................................... 29

Gambar 2.19 Perhitungan torsi lengan robot elbow ........................................................ 30

Gambar 3.1 Diagram Blok Sistem ................................................................................ 31

Gambar 3.2 Pengkabelan Modul Bluetooth HC-05 ...................................................... 32

Gambar 3.3 Listing Program setting Bluetooth HC-05 ................................................. 33

Gambar 3.4 Status Mode AT Command HC-05 ........................................................... 34

Gambar 3.5 Setting Nama Bluetooth HC-05 ................................................................. 34

Gambar 3.6 Setting Password Bluetooth HC-05 ........................................................... 34

Gambar 3.7 Setting Role Bluetooth HC-05 ................................................................... 35

Gambar 3.8 Setting baud rate, stop bit, parity

Bluetooth HC-05 ....................................................................................... 35

Gambar 3.9 Alamat Bluetooth HC-05 ........................................................................... 36

Gambar 3.10 Desain Gripper Me Arm v3 ...................................................................... 36

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xvi

Gambar 3.11 Desain Roda Gigi Gripper Me Arm v3 ..................................................... 37

Gambar 3.12 Desain Link dan Joint(1)............................................................................ 37

Gambar 3.13 Desain Link dan Joint(2)............................................................................ 38

Gambar 3.14 Susunan Motor Lengan Robot Me Arm v3(1) .......................................... 38

Gambar 3.15 Susunan Motor Lengan Robot Me Arm v3(2) .......................................... 39

Gambar 3.16 Acuan Sudut Pergerakan Lengan Shoulder ............................................... 39

Gambar 3.17 Acuan Sudut Pergerakan Lengan Elbow ................................................... 40

Gambar 3.18 Acuan Posisi End Effector ......................................................................... 40

Gambar 3.19 Acuan Lebar Cengkraman Gripper ........................................................... 41

Gambar 3.20 Desain Antarmuka Aplikasi Kontroler Lengan

Robot ......................................................................................................... 42

Gambar 3.21 Desain Masukan dengan Seekbar .............................................................. 43

Gambar 3.22 Format Frame USART .............................................................................. 44

Gambar 3.23 Diagram Alir Aplikasi

Kontroler Lengan Robot ............................................................................ 46

Gambar 3.24 Diagram Alir Aplikasi Arduino Uno ......................................................... 47

Gambar 4.1 Lengan Robot Tampak Samping(Elbow) .................................................. 48

Gambar 4.2 Lengan Robot Tampak Samping(Shoulder) .............................................. 50

Gambar 4.3 Keyboard Masukan Kalibrasi .................................................................... 52

Gambar 4.4 Hasil Kalibrasi Lengan Robot Elbow ........................................................ 53

Gambar 4.5 Hasil Kalibrasi Lengan Robot Shoulder .................................................... 54

Gambar 4.6 Daerah Kerja Lengan Robot Tampak Atas................................................ 56

Gambar 4.7 Daerah Kerja Lengan Robot Tampkak Samping ....................................... 56

Gambar 4.8 Analisa Grafis Lengan Robot Posisi 1 ....................................................... 57

Gambar 4.9 Analisa Grafis Lengan Robot Posisi 2 ....................................................... 58

Gambar 4.10 Proses Pengambilan Data x dan y.............................................................. 59

Gambar 4.11 Proses Pengambilan Data Sudut Lengan Elbow dan Base ........................ 59

Gambar 4.12 Proses Pengambilan Sudut Motor Base. .................................................... 60

Gambar 4.13 Sudut Nyata x=13cm dan y=10.51cm ....................................................... 63

Gambar 4.14 Sudut Nyata x=16cm dan y=9cm .............................................................. 63

Gambar 4.15 Analisa Grafis Lengan Robot Posisi 3 ....................................................... 64

Gambar 4.16 Splash Activity ........................................................................................... 65

Gambar 4.17 Main Activity.............................................................................................. 67

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

xvii

Gambar 4.18 Tampilan Data Melalui Serial Monitor ..................................................... 75

Gambar 4.19 Tampilan Kesalahan Sudut pada Serial Monitor ....................................... 75

DAFTAR TABEL

Tabel 2.1 Spesifikasi Motor Servo FITECH 5645 MG .................................................. 30

Tabel 3.1 Format Data Aplikasi Kontroler Lengan Robot ............................................. 46

Tabel 3.2 Contoh Kode ASCII untuk Pengiriman a90 ................................................... 44

Tabel 3.3 Format Frame karakter a ................................................................................ 45

Tabel 3.4 Format Frame karakter 9 ................................................................................ 45

Tabel 3.5 Format Frame karakter 0 ................................................................................ 45

Tabel 4.1 Hasil Daerah Kerja 1 ...................................................................................... 55

Tabel 4.2 Hasil Daerah Kerja 2 ...................................................................................... 55

Tabel 4.3 Perbandingan Data Terukur dan Data Sebenarnya

Posisi x dan y Lengan Robot .......................................................................... 60

Tabel 4.4 Nilai Offset Elbow dan Shoulder yang dihasilkan

berdasarkan tabel 4.3 ...................................................................................... 61

Tabel 4.5 Pengiriman dan Penerimaan Data .................................................................. 74

Tabel 4.6 Jarak Jangkau Bluetooth HC-05 ..................................................................... 76

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik baik

menggunakan pengawasan dan kontrol manusia, ataupun program yang sudah tertanam

dalam sebuah prosesor. Istilah robot berasal dari bahasa Cheko “robota” yang berarti kuli

atau pekerja yang tidak mengenal lelah dan bosan [1]. Robot merupakan teknologi yang

saat ini dipakai dalam banyak hal terutama untuk membantu pekerjaan manusia. Robotika

berkembang seiring dengan perubahan kebutuhan hidup dalam kehidupan manusia. Robot

dinilai berguna karena dapat mengurangi kesalahan-kesalahan pekerjaan yang umumnya

dilakukan oleh manusia. Robot diaplikasikan dalam berbagai hal misalnya, bidang industri,

pendidikan dan kesehatan. Robot industri dan kesehatan umumnya dirancang untuk

melakukan perkerjaan yang membutuhkan tingkat akurasi dan tingkat presisi yang tinggi

dengan desain yang rumit. Berbeda dengan hal tersebut, robot pendidikan dirancang

dengan desain yang sederhana dan mudah digunakan.

Salah satu jenis robot adalah lengan robot. Lengan robot dapat digerakkan secara

otomatis dan manual. Menggerakkan lengan robot secara otomatis diperlukan kontroler.

Kontroler adalah alat yang dipakai untuk mengatur gerakan robot secara otomatis. Dewasa

ini, Kontroler dikembangkan dalam berbagai variasi. Istilah pengendali sering

diterjemahkan dengan kata controlling. Kedua istilah ini acapkali penggunaannya

dipertukarkan terutama di dalam dunia teknologi. Istilah pengendali didefinisikan sebagai

seluruh proses kegiatan penilaian terhadap obyek kontrol dan atau kegiatan tertentu dengn

tujuan untuk memastikan apakah pelaksanaan tugas dan fungsi obyek kontrol tersebut telah

sesuai dengan yang ditetapkan.

Salah satu kontroler yang dapat digunakan adalah smartphone berbasis Android.

Smartphone Android digunakan karena kemudahan dalam pengembangan. Karena sistem

operasi Android dapat diunduh dan dikembangkan secara gratis, produsen smartphone

banyak yang memakai sistem operasi tersebut.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

2

Dengan adanya website pendukung, para pengembang aplikasi disediakan

tempat untuk belajar dan bertukar pikiran secara online.

Smartphone digunakan sebagai kontroler karena fasilitas lengkap yang telah

disediakan. Banyaknya sensor dan koneksi nirkabel menjadi standar fasilitas

smartphone. Fasilitas smartphone yang sering digunakan sebagai kontroler robot adalah

sensor posisi dan koneksi Bluetooth. Bluetooth digunakan karena sudah dapat

dikembangankan menggunakan kelas-kelas yang disediakan oleh Android versi 2.0.

Teknologi yang digunakan untuk menghubungkan Arduino dengan smartphone

Android disebut AOA (Android Open Accessories). AOA memungkinkan para

pengembang memaksimalkan fungsi smartphone sebagai sebuah pengendali.

Berdasarkan teknologi AOA, maka dibuatlah sebuah lengan robot yang dapat

dikendalikan dengan smartphone berbasis Android. [2]

1.2 Tujuan

Tujuan dari penelitian ini adalah

1. Menghasilkan lengan robot untuk media pembelajaran.

2. Mengembangkan sebuah kontroler lengan robot menggunakan smartphone

Android.

3. Mengimplementasikan teknologi komunikasi RF (Radio Frequency)

menggunakan Bluetooth untuk mengendalikan lengan robot.

1.3 Manfaat

Manfaat dari penelitian ini adalah

1. Sebagai sarana pembelajaran lengan robot dengan 4 DOF (Degree of Freedom).

2. Sebagai sarana pembelajaran tentang sistem operasi Android dengan teknologi

AOA (Android Open Accessories) yang berhubungan dengan robotika.

3. Sebagai sarana pembelajaran komunikasi menggunakan Bluetooth.

4. Menghasilkan dokumentasi tentang robotika dan Android.

1.4 Batasan Masalah

Batasan masalah penelitian ini adalah

1. Desain lengan robot menggunakan desain open source.

2. Menggunakan mikrokontroler Atmega328P berbasis Arduino Uno.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

3

3. Menggunakan motor servo sebagai penggerak 4 axis lengan robot.

4. Kontroler menggunakan smartphone berbasis Android dengan bahasa

pemrograman Java.

5. Menggunakan Bluetooth sebagai media komunikasi.

1.5 Metodologi Penelitian

Metode penelitian yang digunakan dalam penyusunan tugas akhir ini adalah :

1. Studi Pustaka

Studi pustaka yang didapatkan dari buku cetak maupun elektronik, video

pembelajaran , website pengembang dan jurnal penelitian terkait.

2. Penentuan Hardware

Penentuan hardware Bluetooth modul dan smartphone Android yang

dapat digunakan sebagai sebuah pengendali. Tidak semua perangkat Android

memiliki fasilitas debugging, maka dilakukan penelitian untuk menentukan

smartphone yang dapat digunakan sebagai pengendali.

3. Perancangan Software

Perancangan software difokuskan untuk melakukan pengiriman data

melalui koneksi Bluetooth agar lengan robot dapat bergerak sesuai perintah.

4. Pengamatan dan Pengambilan Data

Pengamatan dan pengambilan data dilakukan terhadap kesesuian

pergerakan lengan robot dengan masukan dari smartphone Android.

Menggunakan proses normalisasi pergerakan lengan robot terhadap masukan

dari smartphone Android.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

4

BAB 2

DASAR TEORI

2.1 Sistem Operasi Android

2.1.1 Sejarah dan Perkembangan

Android adalah sistem operasi yang berbasis Linux untuk telepon seluler seperti

telepon pintar dan komputer tablet [1]. Android bersifat open source. Android

menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi sesuai

keinginan mereka sendiri yang digunakan untuk berbagai macam piranti bergerak.

Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak

untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset

Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi,

termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.

Perangkat mobile yang menggunakan Android setidaknya telah terinstal aplikasi [3]

:

1. Email pengguna.

2. Pengaturan SMS.

3. Personal Information Management yang terintegrasi dengan kalender dan daftar

kontak.

4. Browser.

5. Galeri gambar dan pemutar musik.

6. Kamera dan video recording.

7. Kalkulator.

8. Alarm.

Perkembangan dan kelebihan masing-masing versi Android adalah sebagai berikut

[4] :

1. Android versi 1.1

Pada 9 Maret 2009, Google merilis Android versi 1.1. Android versi ini dilengkapi dengan

pembaruan UI (User Interface) pada aplikasi, jam alarm, voice search, pengiriman pesan

dengan Gmail, dan pemberitahuan email.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

5

2. Android Versi 1.5 (Cupcake)

Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan

menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5

(Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur

dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus

kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon,

dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset

Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan

sistem.

3. Android Versi 1.6 (Donut)

Donut dirilis pada September dengan menampilkan proses pencarian yang lebih baik

dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur

lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan

dihapus, kamera, camcorder dan galeri yang dintegrasikan, CDMA / EVDO, 802.1x,

VPN, gestures, teknologi text to change speech.

4. Android Versi 2.1 (Eclair)

Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1

(Eclair), perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan

Google Maps 3.1.2, perubahan UI (User Interface) dengan browser baru dan dukungan

HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom,

dan Bluetooth 2.1.

5. Android Versi 2.2 (Froyo: Frozen Yogurt)

Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan

umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1,

kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript yang

dipakai Google Chrome yang mempercepat kemampuan rendering pada browser,

pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel, dan

kemampuan pembaruan otomatis dalam aplikasi Android Market.

6. Android Versi 2.3 (Gingerbread)

Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-

perubahan umum yang didapat dari Android versi ini antara lain peningkatan

kemampuan permainan, peningkatan fungsi copy paste, user interface didesain ulang,

dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

6

headphone virtualization, dan bass boost), dukungan kemampuan NFC ( Near Field

Communication ), dan dukungan jumlah kamera yang lebih dari satu.

7. Android Versi 3.0 (Honeycomb)

Android Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung

ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena

sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga

akselerasi perangkat keras untuk grafis.

8. Android Versi 4.0 (Ice Cream Sandwich)

Ice Cream Sandwich didesain untuk baik itu telepon ataupun tablet. Android ICS

menawarkan banyak peningkatan dari apa yang sudah ada di Gingerbread dan

Honeycomb dengan pada saat yang sama memberikan inovasi-inovasi baru. Beberapa

peningkatan itu antara lain kemampuan copy paste yang lebih baik, data logging dan

warnings, dan kemampuan untuk mengambil screenshot dengan menekan power dan

volume bersamaan. Selain itu keyboard dan kamus juga mendapat perbaikan. Inovasi-

inovasi baru di ICS antara lain penggunaan font “Roboto” di Android 4.0 Ice Cream

Sandwich System Bar dan Action Bar. adanya Android 4.0 Ice Cream Sandwich voice

control yang memungkinkan kita mendikte teks yang ingin kita ketik. Selain itu Face

Unlock merupakan salah satu hal yang menonjol di Android versi baru ini. Juga ada

NFC based app yang disebut Android Bump, yang memungkinkan pengguna untuk

bertukar informasi atau data hanya dengan menyentuhkan gadget.

9. Android Versi 4.1 (Jelly Bean)

Android Jelly Bean yang diluncurkan pada acara Google I/O membawa sejumlah

keunggulan dan fitur baru. Penambahan baru diantaranya meningkatkan input keyboard,

desain baru fitur pencarian, UI yang baru dan pencarian melalui voice search yang lebih

cepat. Google Now juga menjadi bagian yang diperbarui. Google Now memberikan

informasi yang tepat pada waktu yang tepat pula. Salah satu kemampuan Google Now

adalah dapat mengetahui informasi cuaca, lalu-lintas, ataupun hasil pertandingan

olahraga. Sistem operasi Android Jelly Bean 4.1 muncul pertama kali dalam produk

tablet Asus, yakni Google Nexus 7.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

7

2.1.2 Android Software Stack [3]

Android software stack dapat dilihat pada gambar 2.1

Gambar 2.1. Android software stack [3].

Dalam Android software stack terdapat beberapa hal penting antara lain :

1. Linux Kernel

Merupakan sebuah perangkat lunak yang menjadi bagian utama dari sebuah

sistem operasi. Di dalam Linux Kernel terdapat hardware driver, power

management, keamanan dan jaringan.

2. Dalvik Virtual Machine (DVM)

Salah satu elemen kunci dari Android adalah DVM. Android berjalan dalam

DVM bukan di Java Virtual Machine. DVM berjalan di dalam Kernel untuk

menangani fungsional tingkat rendah.

3. Application Framework

Application Framework menyediakan berbagai kelas yang digunakan untuk

membuat aplikasi dan mengatur user interface.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

8

4. Application Layer

Lapisan ini terdapat fungsi dasar smartphone seperti menelepon, menjalankan

browser, mengirim pesan singkat dan mengakses daftar kontak.

2.1.3 Pengembangan Android [5]

Untuk keperluan pengembangan Android diperlukan alat yang bernama SDK

(Software Development Kit). SDK merupakan alat bantu dan API (Application

Programming Interface) dalam mengembangkan aplikasi pada platform Android

menggunakan bahasa pemrograman Java. Di dalam sebuah SDK akan terdapat :

1. Android Application Programming Interface (API)

Inti dari sebuah SDK adalah pustaka dari Android API yang menyediakan

akses para pengembang ke Android stack. Pustaka tersebut adalah pustaka

yang sama digunakan oleh Google ketika membuat aplikasi.

2. Development tools

Di dalam SDK terdapat berbagai development tool yang akan meng-compile

dan melakukan debugging terhadap aplikasi yang dibuat sehingga aplikasi

tersebut dapat dijalankan.

3. Android Virtual Device (AVD) Manager dan Emulator

Android Emulator adalah aplikasi yang dapat digunakan untuk menjalankan

aplikasi Android di Personal Computer. Aplikasi tersebut menyediakan

beberapa model smartphone yang dapat disimulasikan mirip dengan

tampilan aslinya. Dengan menggunakan emulator, dapat diketahui

bagaimana aplikasi yang dibuat dapat berjalan dalam sebuah smartphone.

4. Dokumentasi

SDK menyediakan referensi tentang isi masing-masing paket dari sebuah

kelas dan cara menggunakannya.

5. Contoh koding

Di dalam SDK terdapat beberapa contoh koding dan cara penggunaan fitur

API.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

9

6. Dukungan Online

SDK menghubungkan para pengembang untuk saling bertukar ide

informasi, pengembangan dan penyelesaian masalah seputar Android di

http://developer.android.com/resources/community-groups.html.

2.2 Bluetooth

2.2.1 Sejarah dan Pengertian

Bluetooth berasal dari nama seorang Raja, Harald Blatand. Harald adalah anak

dari Raja Gorm yang menguasai Jultland semenanjung Denmark. Blatand dalam bahasa

Denmark berarti gigi biru. Raja Blatand telah berhasil mempersatukan Denmark dengan

sebagian wilayah Norwegia. Ericsson memilih nama Bluetooth karena harapan terhadap

teknologi tersebut. Bluetooth diharapkan dapat menjadi sambungan komunikasi

perangkat mobile di seluruh dunia.

Bluetooth adalah sebuah teknologi komunikasi wireless (tanpa kabel) yang

beroperasi dalam pita frekuensi 2,4 GHz unlicensed ISM (Industrial, Scientific and

Medical) dengan menggunakan sebuah frequency hopping tranceiver yang mampu

menyediakan layanan komunikasi data dan suara secara real time antara host-host

Bluetooth dengan jarak jangkauan layanan yang terbatas [6].

Bluetooth adalah teknologi jaringan RF (Radio Frequency) yang terdapat radio

frekuensi transceiver dan full set protocol jaringan dalam sebuah chip kecil yang cukup

untuk dimasukkan dalam sebuah perangkat mobile. Bluetooth adalah salah satu standar

jaringan RF yang digunakan untuk membuat jaringan Personal Area Network ad-hoc

dalam jangkauan tidak lebih dari 10 meter [7].

2.2.2 Bluetooth Protocol [7]

Protocol adalah sebuah aturan ataupun standar yang mengatur atau mengijinkan

terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik

komputer. Protocol dapat diterapkan pada perangkat keras maupun perangkat lunak.

Protocol dalam umumnya dikenal dengan spesifikasi dari sebuah perangkat keras.

Bluetooth memiliki beberapa protocol yang harus dipenuhi sesuai dengan

standar Institute for Electrical and Electronic Engineers (IEEE) 802.15.1 mengenai

komunikasi wireless Personal Area Network (PAN). PAN memungkinkan adanya

sebuah komunikasi dengan jarak 1 meter sampai 10 meter.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

10

Protokol-protokol Bluetooth dikelompokkan berdasarkan prioritas dan

penggunaan. Protokol-protokol tersebut membentuk sebuah susunan yang biasa disebut

Bluetooth Stack Protocol.`Gambar 2.2 di bawah ini adalah gambar Bluetooth Stack

Protocol.

Gambar 2.2. Bluetooth stack protocol [7].

1. Bluetooth Radio Layer

Merupakan lapisan paling bawah dalam spesifikasi Bluetooth. Lapisan ini

menentukan operasi dan sistem minimum dalam komunikasi Bluetooth

termasuk perangkat penerima, pengiriman dan penerimaan data dan sinyal

RF dalam ISM (Industrial, Scientific and Medical) band.

2. Baseband

Baseband adalah sebuah physical layer protocol Bluetooth yang terletak

diatas Bluetooth Radio Layer dalam Bluetooth stack protocol. Baseband

mengatur physical channel dan menyediakan sambungan dari dan ke sebuah

komunikasi termasuk pengecekan kesalahan, hop selection dan keamanan

jaringan.

3. Link Manager Protocol

Link Manager Protocol mengatur sambungan, konfigurasi dan memberikan

izin komunikasi Bluetooth. Setelah Link Manager sebuah perangkat

Bluetooth mendeteksi adanya perangkat Bluetooth lain, maka Link Manager

Protocol akan membuat sebuah sambungan untuk berkomunikasi dengan

Link Manager Bluetooth terdeteksi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

11

4. Logical Link Control and Adaptation Protocol (L2CAP)

L2CAP merupakan data-link layer dalam pemodelan Open System

Interconnection (OSI). LC2AP memungkinkan layer di atasnya dapat

menerima dan mengirim paket data sampai 64kb.

5. RFCOMM

RFCOMM merupakan cable replacement protocol dalam Bluetooth stack.

RFCOMM menciptakan sebuah serial port virtual yang dapat digunakan

sesuai dengan standar EIA (Electronics Industry Association) 232. Dengan

adanya RFCOMM berbagai adapted protocol dengan dasar serial dapat

berkomunikasi dengan Bluetooth.

6. AT Command

AT Command adalah berbagai set instruksi untuk memberikan perintah

dalam komunikasi port serial.

2.2.3 Piconet dan Scatternet [7]

Komunikasi antar peralatan Bluetooth akan menghasilkan sebuah jaringan

Bluetooth yang dinamakan dengan Piconet . Sebuah Piconet paling sederhana terdiri

atas dua buah peralatan Bluetooth dimana salah satu modul yang menginisiasi koneksi

disebut sebagai master sedangkan peralatan lain yang menerima tawaran inisiasi

dinamakan sebagai slave. Jika hanya dua peralatan yang berkomunikasi ,maka

koneksinya dikatakan sebagai point to point. Satu master dapat memiliki lebih dari satu

koneksi secara simultan dengan beberapa slave pada saat bersamaan . Koneksi ini

dinamakan dengan koneksi point to multipoint. Kedua tipe koneksi tersebut masih

merupakan bagian dari Piconet. Piconet-piconet dapat saling berkomunikasi untuk

membentuk sebuah jaringan baru yang dinamakan Scatternet. Gambar 2.3 dan 2.4 di

bawah ini adalah gambar jaringan Scatternet dan Piconet.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

12

Gambar 2.3. Jaringan Piconet [7].

Gambar 2.4. Jaringan Scatternet [7].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

13

2.2.4 Jangkauan Bluetooth [7]

Umumnya peralatan-peralatan Bluetooth dapat saling berkomunikasi dalam

jarak yang sedang antara 1 hingga 100 m. Jarak maksimal ini dapat dihasilkan

tergantung dari daya output yang digunakan dalam modul Bluetooth. Modul Bluetooth

biasanya berupa satu IC (Integrated Circuit) chip komunikasi khusus yang telah

mengimplementasikan protocol Bluetooth. Setidaknya terdapat tiga kelas Bluetooth

berdasarkan daya output dari jarak jangkauannya yaitu :

a. Daya kelas 1 yang beroperasi pada daya antara 1mW hingga 100mW dan

didesain untuk peralatan Bluetooth dengan jangkauan hingga 100 meter.

b. Daya kelas 2 beroperasi antara 0.25mW hingga 2.5mW dan didesain untuk

jarak jangkauan hingga sekitar 20m.

c. Daya kelas 3 memiliki daya maksimal hingga 1mW dan bekerja untuk

peralatan dengan jarak sekitar 10cm.

2.2.5 Keamanan Bluetooth [7]

Bluetooth mencegah perangkat asing untuk mengakses atau terhubung dengan

sebuah perangkat secara ilegal. Standar pilihan keamanan pada Bluetooth dapat

ditambahkan dalam perangkat Bluetooth. Keamanan yang biasa digunakan pada

beberapa perangkat Bluetooth adalah dengan meminta PIN (Personal Idetification

Number) yang dibuat dalam perangkat master ketika membuka jaringan yang akan

terhubung dengan perangkat slave.

Metode lain untuk menghubungkan 2 buah perangkat Bluetooth adalah pairing.

Pairing menggunakan PIN yang ditentukan sendiri oleh user. Pertukaran dan verifikasi

terjadi antara kedua perangkat Bluetooth ketika pairing. Sebagian besar Bluetooth

mobile tidak memiliki built-in PIN sehingga harus memasukkan kode kedalam

handphone ketika pairing dengan perangkat lain.

Penyusupan terhadap jaringan Bluetooth disebut Bluejacking. Bluejacking dapat

terjadi karena proses koneksi antar perangkat Bluetooth tidak memakai pairing sehingga

ilegal user dapat langsung terkoneksi dan melakukan aktivitas komunikasi. Gambar 2.5

berikut ini merupakan ilustrasi proses pairing.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

14

Gambar 2.5. Proses Pairing [7].

2.2.6 Bluetooth Android [3]

Android menyediakan fasilitas bagi pengembang untuk melakukan komunikasi

secara wireless menggunakan teknologi Bluetooth. API (Application Programming

Interface) pada Android menyediakan fasilitas untuk mengatur dan memonitoring

perangkat Bluetooth. Dengan menginisiasikan sebuah komunikasi menggunakan

Bluetooth Socket , sebuah perangkat dapat mengirim dan menerima stream data dalam

sebuah aplikasi. Pustaka Bluetooth telah ada dalam Android versi 2.0 (SDK API level

5).

Sejak Android 2.1, hanya data yang terhubung melalui proses pairing saja yang

dapat dikoneksikan. Namun perlu diketahui tidak setiap mobile Android mempunyai

koneksi Bluetooth. Android menyediakan kelas untuk perangkat dan jaringan Bluetooth

dalam Android packages sebagai berikut :

a. BluetoothAdapter

Digunakan untuk mengidentifikasi koneksi Bluetooth dalam Android.

b. BluetoothDevice

Setiap perangkat yang akan terhubung direpresentasikan dalam

BluetoothDevice.

c. BluetoothSocket

Sebagai jalur pengiriman dan penerimaaan stream data.

d. BluetoothServerSocket

Mendeteksi permintaan koneksi yang terdapat dalam Bluetooth Socket.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

15

2.2.7 Modul Bluetooth HC-05 [9]

Modul Bluetooth lebih dikenal dengan nama modul BT. Modul ini digunakan

untuk mengirimkan data serial TTL (Transistor Transistor Logic) melalui Bluetooth.

Modul Bluetooth memiliki dua tipe yakni, tipe master dan slave. Tipe modul BT dapat

diketahui dari nomer seri yang berasal dari pabrik pembuat. Modul BT dengan nomer

ganjil dapat digunakan sebagai master dan slave. Tipe tersebut tidak dapat diubah oleh

pengguna. Jadi modul BT master tidak bisa berubah menjadi slave kecuali untuk modul

seri tertentu yang memungkinkan untuk diubah menggunakan AT Command yang ada.

Gambar 2.6. Modul BT HC-05 [9].

Modul BT HC-05 merupakan tipe modul BT yang dapat diubah dari master ke

slave maupun sebaliknya. Modul BT dapat digunakan ketika perangkat master telah

melakukan pairing dengan perangkat slave. Komunikasi tidak akan terjadi ketika semua

perangkat adalah master atau semua perangkat adalah slave. Komunikasi yang terjadi

antara modul BT master dan modul BT slave menyerupai komunikasi serial biasa

dengan adanya TXD dan RXD.

Untuk dapat mengkonfigurasi perangkat modul BT, digunakan AT Command.

AT Command memungkinkan pengguna untuk memberikan password, user name, baud

rate, parity dan parameter lainnya yang digunakan untuk komunikasi.

2.3 Arduino Board [8]

Arduino dikatakan sebagai sebuah platform dari physical computing yang

bersifat open source. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi

kombinasi dari hardware, bahasa pemrograman dan IDE (Integrated Development

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

16

Environment) yang canggih. IDE adalah sebuah software yang sangat berperan untuk

menulis program, meng-compile menjadi kode biner dan meng-upload ke dalam

memori mikrokontroler.

Komponen utama didalam papan Arduino adalah sebuah mikrokontroler 8 bit

dengan merk ATmega yang dibuat oleh Atmel Corporation. Berbagai papan Arduino

menggunakan tipe Atmega yang berbeda-beda tergantung dari spesifikasinya. Sebagai

contoh Arduino Uno menggunakan Atmega328 sedangkan Arduino Mega 2560 yang

lebih canggih menggunakan Atmega2560. Pada gambar 2.7 berikut ini diperlihatkan

contoh diagram blok sederhana dari mikrokontroler Atmega328 yang dipakai pada

Arduino Uno.

Gambar 2.7. Diagram blok sederhana Arduino Uno [8].

Blok-blok pada gambar 2.7 dijelaskan sebagai berikut:

1. Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka

yang digunakan untuk komunikasi serial seperti pada RS-232, RS-422 dan

RS-485.

2. 2KB RAM pada memori kerja bersifat volatile (hilang saat daya dimatikan),

digunakan oleh variabel-variabel di dalam program.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

17

3. 32KB RAM flash memori bersifat non-volatile, digunakan untuk menyimpan

program yang dimuat dari komputer. Selain program, flash memory juga

menyimpan bootloader.

4. Bootloader adalah program inisiasi yang ukurannya kecil, dijalankan oleh

CPU saat daya dihidupkan. Setelah bootloader selesai dijalankan, berikutnya

program di dalam RAM akan dieksekusi.

5. 1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang

tidak boleh hilang saat daya dimatikan.

6. Central Processing Unit (CPU), bagian dari mikrokontroler untuk

menjalankan setiap instruksi dari program.

7. Port input/output, pin-pin untuk menerima data (input) digital atau analog, dan

mengeluarkan data (output) digital atau analog.

Pada gambar 2.8 di bawah ini adalah bagian-bagian Arduino.

Gambar 2.8. Bagian-bagian Arduino [8].

Bagian-bagian komponen dari Arduino Board pada gambar 2.8 dapat dijelaskan

sebagai berikut:

1. 14 Pin input/output digital (0-13)

Berfungsi sebagai input atau output, dapat diatur oleh program. Khusus untuk 6

buah pin 3, 5, 6, 9, 10 dan 11, dapat juga berfungsi sebagai pin analog output

dimana tegangan output-nya dapat diatur. Nilai sebuah pin output analog dapat

diprogram antara 0 – 255, dimana hal itu mewakili nilai tegangan 0 – 5V.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

18

2. USB (Universal Serial Bus)

Berfungsi untuk:

1. Memuat program dari komputer ke dalam papan .

2. Komunikasi serial antara papan dan komputer.

3. Memberi daya listrik kepada papan.

3. Q1 – Kristal (quartzcrystal oscillator)

Jika mikrontroler dianggap sebagai sebuah otak, maka kristal adalah jantungnya

karena komponen ini menghasilkan detak-detak yang dikirim kepada

mikrokontroler agar melakukan sebuah operasi untuk setiap detaknya. Kristal ini

memakai 16 juta kali per detik (16MHz).

4. Tombol Reset S1

Untuk me-reset mikrokontroler sehingga program akan mulai lagi dari awal.

Perhatikan bahwa tombol reset ini bukan untuk menghapus program atau

mengosongkan mikrokontroler.

5. In-Circuit Serial Programming (ICSP)

Port ICSP memungkinkan pengguna untuk memprogram mikrokontroler secara

langsung, tanpa melalui bootloader. Umumnya pengguna Arduino tidak

melakukan cara tersebut, sehingga ICSP tidak sering dipakai walaupun

disediakan.

6. IC 1 – Mikrokontroler ATmega

Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan

RAM.

7. X1 – sumber daya eksternal

Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat

diberikan tegangan DC antara 9-12V.

8. 6 Pin input analog (0-5)

Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor

analog, seperti sensor suhu. Program dapat membaca nilai sebuah pin input

antara 0 – 1023, dimana hal itu mewakili nilai tegangan 0 –5V.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

19

2.4 Mikrokontroler ATmega 328 [10]

2.4.1 Fitur dan Arsitektur

ATMega328 adalah mikrokontroller keluaran dari atmel yang mempunyai

arsitektur RISC (Reduce Instruction Set Computer) di mana setiap proses eksekusi data

lebih cepat dari pada arsitektur CISC (Completed Instruction Set Computer).

Beberapa fitur yang dimiliki oleh Atmega 328 antara lain :

1. 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.

2. 32 x 8-bit register serba guna.

3. Kecepatan mencapai 16 MIPS dengan clock 16 MHz.

4. 32 KB Flash memory dan pada Arduino memiliki bootloader yang

menggunakan 2 KB dari flash memory sebagai bootloader.

5. Memiliki EEPROM ( Electrically Erasable Programmable Read Only Memory)

sebesar 1KB sebagai tempat penyimpanan data semi permanen karena EEPROM

tetap dapat menyimpan data meskipun catu daya dimatikan.

6. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM ( Pulse Width

Modulation) output.

7. Master / Slave SPI Serial interface.

Mikrokontroller ATmega328 memiliki arsitektur Harvard Yaitu memisahkan

memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan

kerja dan parallelism.Instruksi – instruksi dalam memori program dieksekusi dalam satu

alur tunggal, dimana pada saat satuinstruksi dikerjakan instruksi berikutnya sudah

diambil dari memori program. Konsep inilah yang memungkinkan instruksi – instruksi

dapat dieksekusi dalam setiap satu siklus clock.

32x8-bit register serba guna digunakan untuk mendukung operasi pada ALU

(Arithmatic Logic unit) yang dapat dilakukan dalam satu siklus. Dari 6 register

serbaguna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode

pengalamatan tak langsung untuk mengambil data pada ruang memori data. Ketiga

register pointer 16-bit ini disebut dengan register X ( gabungan R26 dan R27 ), register

Y(gabungan R28 dan R29 ), dan register Z (gabungan R30 dan R31).

Hampir semua instruksi AVR memiliki format 16-bit. Setiap alamat memori

program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna di

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

20

atas,terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar

64byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai register

kontrol Timer/ Counter, Interupsi, ADC, USART, SPI, EEPROM, dan fungsi I/O

lainnya. Register – register ini menempati memori pada alamat 0x20h –0x5Fh. Untuk

mengetahui alur hubungan dari arsitektur ATmega328 dapat dilihat pada gambar 2.9

berikut:

Gambar 2.9. Arsitektur mikrokontroler ATmega 328 [10].

2.4.2 Konfigurasi Pin ATmega 328

Gambar 2.10 di bawah ini menunjukkan konfigurasi pin ATmega 328.

Gambar 2.10. Konfigurasi Pin ATmega 328 [10].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

21

ATMega 328 memiliki 3 buah PORT utama yaitu PORT B, PORT C, dan PORT

D dengan total pin input/output sebanyak 23 pin. PORT tersebut dapat difungsikan

sebagai input/output digital atau difungsikan sebagai periperial lainnya. Di bawah ini

merupakan penjelasan PORT yang ada di ATMega 328.

1. PORT B

PORT B merupakan jalur data 8 bit yang dapat difungsikan sebagai input/output.

Selain itu PORT B juga dapat memiliki fungsi alternatif seperti di bawah ini.

1. ICP1 (PB0), berfungsi sebagai Timer/Counter 1 input capture pin.

2. OC1A (PB1), OC1B (PB2) dan OC2 (PB3) dapat difungsikan sebagai

keluaran PWM (Pulse Width Modulation).

3. MOSI (PB3), MISO (PB4), SCK (PB5), SS (PB2) merupakan jalur

komunikasi SPI.Selain itu pin ini juga berfungsi sebagai jalur pemograman

serial (ISP).

4. TOSC1 (PB6) dan TOSC2 (PB7) dapat difungsikan sebagai sumber clock

external untuk timer.

5. XTAL1 (PB6) dan XTAL2 (PB7) merupakan sumber clock utama

mikrokontroler.

2. PORT C

PORT C merupakan jalur data 7 bit yang dapat difungsikan sebagai input/output

digital. Fungsi alternatif PORT C antara lain sebagai berikut:

1. ADC6 channel (PC0, PC1, PC2, PC3, PC4, PC5) dengan resolusi sebesar 10

bit. ADC dapat digunakan untuk mengubah input yang berupa tegangan

analog menjadi data digital.

2. I2C (SDA dan SDL) merupakan salah satu fitur yang terdapat pada PORTC.

I2C digunakan untuk komunikasi dengan sensor atau perangkat lain yang

memiliki komunikasi data tipe I2C seperti sensor kompas, accelerometer

nunchuck.

3. PORT D ffffffffffffffffffffffffffffff

PORT D merupakan jalur data 8 bit yang masing-masing pin-nya juga dapat

difungsikan sebagai input/output. Sama seperti PORT B dan PORT C, PORT D

juga memiliki fungsi alternatif dibawah ini.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

22

1. USART (TXD dan RXD) merupakan jalur data komunikasi serial dengan

level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data serial,

sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi untuk

menerima data serial.

2. Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai

interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari

program, misalkan pada saat program berjalan kemudian terjadi interupsi

hardware/software maka program utama akan berhenti dan akan

menjalankan program interupsi.

3. XCK dapat difungsikan sebagai sumber clock external untuk USART,

namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu

membutuhkan external clock.

4. T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan

timer 0.

5. AIN0 dan AIN1 keduanya merupakan masukan untuk analog komparator.

2.5 Robot

2.5.1 Lengan Robot[11]

Robot Manipulator adalah nama yang popular untuk lengan mekanik atau lengan

robot. Manipulator merupakan gabungan dari beberapa segmen dan joint yang secara

umum dibagi menjadi 3 bagian yaitu arm, wrist, end effector. RIA (Robotic Industries

Association) mendefinisikan robot sebagai manipulator yang didesain untuk

memindahkan material, benda, alat atau peralatan tertentu lewat pergerakan yang

terprogram untuk melakukan berbagai tugas.

Konfigurasi merujuk pada setiap sambungan (link) manipulator terhubung antara

satu lengan dengan yang lain pada setiap joint. Setiap sambungan akan terhubung

dengan sambungan berikutnya, baik berupa linear joint (prismatik) yang selanjutnya

disingkat dengan huruf P, atau berupa hubungan revolute yang dapat disingkat dengan

huruf R. Setiap joint minimal terdiri atas 1 Degree of Freedom (DOF). Sebuah robot

lengan dengan 3 DOF setidaknya dapat bergerak keatas-bawah, kanan-kiri, depan-

belakang. Gambar 2.11 menunjukkan wrist dan end effector pada lengan robot.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

23

Gambar 2.11. Bagian umum lengan robot [11].

2.5.2 Kinematika Robot[11]

Kinematika dapat didefinisikan sebagai studi pergerakan robot (motion) tanpa

memperhatikan gaya (force) ata factor lainnya yang memengaruhi pergerakan tersebut.

Pada sebuah analisa kinematic, posisi, kecepatan dan akselerasi dari seluruh link

digitung tanpa memperhatikan gaya yang menyebabkan pergerakan. Kinematika robot,

secara umum terbagi menjadi dua, yaitu :

1. Kinematika Maju (Forward Kinematics)

Kinematika maju juga disebut dengan kinematika direct, di mana panjang

dari setiap link dan sudut dari setiap joint diketahui untuk menghitung posisi

robot.

2. Kinematika Balik (Inverse Kinematics)

Kinematika balik adalah analisa kinematik yang digunakan untuk

menghitung sudut dari masing-masing joint dengan panjang setiap link dan

posisi robot telah diketahui.

Gambar 2.12. Relasi kinematika maju dan balik [11].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

24

2.5.3 Analisa Kinematik Dengan Persamaan Trigonometri[11]

a. Robot Lengan 1 DOF

Gambar 2.13. Robot lengan 1 DOF [11].

Dengan menggunakan kinematika maju maka kedudukan ujung lengan P(x,y)

dapat dinyatakan dengan :

= ........................................................................................ (2.1)

= .......................................................................................... (2.2)

Menggunakan kinematika balik, maka didapatkan dengan perhitungan sebagai

berikut :

=

........................................................................................... (2.3)

b. Robot Lengan 2 DOF

Gambar 2.14. Robot lengan 2 DOF [11].

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

25

Kedudukan ujung lengan dinyatakan sebagai P(x,y) dimana :

.............................................................. (2.4)

.............................................................. (2.5)

Persamaan di atas dapat diperoleh dengan menggunakan analisa kinematika

maju dengan hukum identitas trigonometri :

.............................................. (2.6)

............................................... (2.7)

Maka didapatkan :

............................ (2.8)

........................... (2.9)

Dari dua persamaan terakhir dan menggunakan analisa kinematika balik maka

akan didapatkan :

{

} ......................................................... (2.10)

Dan sudut dapat dicari melalui

Dengan hukum identitas trigonometri :

............................................................... (2.11)

Didapatkan:

............................................... (2.12)

Sehingga :

=

........................................... (2.13)

2.6 Motor Servo (Servo motor) [11]

2.6.1 Pengertian

Motor servo adalah sebuah motor dengan sistem closed feedback dimana posisi

dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam motor

servo. Motor terdiri dari sebuah motor, serangkaian gear, potentiometer dan rangkaian

kontrol. Potentiometer berfungsi untuk menentukan batas sudut dari putaran servo.

Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar pulsa yang dikirim

melalui kaki sinyal kabel motor.

Motor servo biasanya hanya bergerak mencapai sudut tertentu saja dan tidak

kontinyu seperti motor DC maupun motor stepper. Walau demikian, untuk beberapa

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

26

keperluan tertentu, motor servo dapat dimodifikasi agar bergerak kontinyu. Pada robot,

motor ini sering digunakan untuk bagian kaki, lengan atau bagian-bagian lain yang

mempunyai gerakan terbatas. Motor servo adalah motor yang mampu bekerja dua arah,

yaitu searah jarum jam atau clockwise (CW) dan berlawanan arah jarum jam atau

counterclockwise (CCW) di mana arah dan sudut pergerakan rotornya dapat

dikendalikan hanya dengan memberikan pengaturan duty cycle sinyal Pulse Width

Modulation (PWM) pada bagian pin kontrolnya. Motor servo merupakan sebuah motor

DC yang memiliki rangkaian kontrol elektronik dan internal gear untuk mengendalikan

pergerakan dan sudut angularnya.

Sistem mekanik pada motor servo seperti yang ditunjukkan gambar 2.15 terdiri

dari :

a. 3 jalur kabel : power, ground dan control.

b. Internal gear.

c. Potentiometer.

d. Feedback control.

Gambar 2.15. Motor servo.

2.6.2 Pengendalian Motor Servo [11]

Kabel kontrol digunakan untuk mengatur sudut posisi dari batang output. Sudut

posisi ditentukan oleh durasi pulsa yang diberikan oleh kabel kontrol. Motor sevo

digerakkan dengan menggunakan PWM (Pulse Width Modulation). Motor sevo akan

mengecek pulsa setiap 20 milisecond. Panjang pulsa akan menentukan seberapa jauh

motor akan berputar. Contohnya, pada pulsa 1,5 milisecond akan membuat motor

berputar sejauh 90° (lebih sering disebut posisi netral). Jika pulsa lebih pendek dari 1,5

milisecond, maka motor akan berputar lebih dekat ke 0°. Jika lebih panjang dari 1,5ms,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

27

maka akan berputar mendekati 180°. Dari Gambar 2.16 di bawah, durasi pulsa

menentukan sudut dari batang output.

Gambar 2.16. Gerak motor servo .

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

28

2.6.3 Spesifikasi Motor Servo

Spesifikasi untuk motor servo yang digunakan ditunjukkan dalam tabel 2.1. di

bawah ini.

Gambar 2.17. Motor Servo FITECH 5654 MG.

Tabel 2.1. Spesifikasi Motor Servo FITECH 5645 MG.

2.6.4 Torsi Lengan Robot

Perhitungan torsi maksimal yang dibutuhkan diambil pada saat lengan robot

dalam posisi seperti pada gambar 2.18, karena lengan robot memiliki jarak jangkau

terpanjang dari tumpuan lengan. Gambar 2.18 berikut merupakan posisi yang akan

menjadi acuan perhitungan torsi maksimal lengan robot.

Berat 52g/1.84 oz

Dimensi 40.5 x 20 x 42 mm

Torsi saat 6V 14.2 kg/cm

Kecepatan saat 6V 0.17 detik / 60

0 tanpa

beban

Tegangan Kerja 4.8 V – 6.0 V

Tipe Gear Metal

Tipe Motor 3 kutub

Modulasi Digital

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

29

Gambar 2.18. Perhitungan torsi lengan robot.

Rumus yang digunakan untuk menghitung torsi adalah sebagai berikut

∑ .......................................................................................................... (2.14)

.................................................................................................. (2.15)

........................................................................................................ (2.16)

..................................................................................................... (2.17)

Keterangan :

=Torsi (Nm)

=Jarak antara titik pusat rotasi dengan titik yang terkena gaya (m).

=Gaya (N)

=Panjang titik yang terkena gaya terhadap titik pusat rotasi secara tegak lurus (m).

=Massa benda. (Kg)

=Gaya Gravitasi. (9.8m/s2)

Berdasarkan persamaan 217x dengan besar gaya dan arah gaya yang sama,

semakin besar jari-jari yang diukur maka semakin besar pula torsi yang dibutuhkan.

Oleh karena itu maka pengukuran torsi maksimal dilakukan saat end effector lengan

robot berada di titik jangkau terjauh dari base.

Torsi yang dihitung adalah torsi untuk lengan elbow dan shoulder. Untuk lengan

elbow perhitungannya sebagai berikut.

Diketahui :

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

30

.

.

Torsi motor=12kg/cm.

.

Misal

Gambar 2.19 Perhitungan torsi lengan elbow.

∑ .......................................................................................................... (2.18)

................................................................................... (2.19)

....................................................................... (2.20)

............................................................................................... (2.21)

.................................................................................................... (2.22)

Hasil perhitungan pada persamaan 2.22 tidak mempertimbangkan kekuatan

bahan serta kekuatan desain lengan robot.

𝑟

𝑟

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

31

BAB III

PERANCANGAN

3.1 Pemodelan Sistem

Perancangan sistem dan blok diagram dapat dilihat pada gambar 3.1 di bawah ini.

Gambar 3.1. Diagram blok sistem.

Parameter gambar diatas adalah sebagai berikut:

1. Sistem yang digunakan adalah open loop.

2. Menggunakan smartphone Android sebagai kontroler.

3. Menggunakan papan Arduino Uno sebagai kontroler lengan robot.

4. Menggunakan 4 buah mikro servo sebagai penggerak lengan robot.

5. Menggunakan Bluetooth modul HC-05.

6. Memanfaatkan Serial Monitor untuk mengecek data yang dikirim dari Android ke

Arduino Uno.

7. Catu daya Arduino didapatkan dari USB konektor.

8. Susunan motor pada lengan robot dapat dilihat pada gambar 3.14 dan 3.15

Android

Modul

Bluetooth

Arduino

Uno

Servo

Base

Servo

Shoulder

Servo

Elbow

Servo

Gripper

Serial

Monitor

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

32

3.2 Perancangan dan Konfigurasi Modul Bluetooth

3.2.1 Pengkabelan Modul Bluetooth dengan Arduino Uno

Modul Bluetooth dihubungkan dengan Arduino seperti gambar 3.2 di bawah ini.

Gambar 3.2. Pengkabelan Modul Bluetooth HC-05 [12].

Parameter gambar 3.2 adalah sebagai berikut :

1. Modul Bluetooth pin TX dihubungkan dengan pin 10 pada Arduino Uno.

2. Modul Bluetooth pin RX dihubungkan dengan pin 11 pada Arduno Uno.

3. Modul Bluetooth pin VCC dihubungkan dengan pin VCC pada Arduno Uno.

4. Modul Bluetooth pin GND dihubungkan dengan pin GND pada Arduno Uno.

5. Modul Bluetooth pin KEY dihubungkan dengan pin 9 pada Arduno Uno. Pin 9

Arduino Uno difungsikan sebagai keluaran digital tinggi. Pin KEY pada modul

Bluetooth hanya digunakan ketika mengkonfigurasi parameter-parameter pada

modul Bluetooth atau untuk memasuki mode AT Command.

6. Catu daya Arduino Uno didapatkan dari USB konektor yang dihubungkan ke

Personal Computer. Dengan menggunakan USB konektor sebagai catu daya,

komunikasi modul Bluetooth dengan Arduino Uno dapat di-debug melalui serial

monitor yang terdapat dalam Arduino IDE.

3.2.2 Konfigurasi Modul Bluetooth HC-05

Dengan menggunakan mode AT Command, modul Bluetooth

dikonfigurasi sebagai berikut :

1. Nama perangkat modul Bluetooth adalah USD_115114046.

2. Password untuk dapat melakukan proses pairing adalah 115114046.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

33

3. Modul Bluetooth dikonfigurasikan sebagai perangkat slave.

4. Menggunakan baud rate 38400 dengan 0 stop bit dan no parity.

Gambar 3.3. Listing program untuk setting Bluetooth HC-05.

Gambar 3.4 sampai dengan gambar 3.9 merupakan masukan AT Command dari

Arduino ke modul Bluetooth HC-05. Proses pengiriman command dilihat melalui serial

monitor yang terdapat dalam Arduino IDE.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

34

Gambar 3.4. Status mode AT Command HC-05.

Gambar 3.4 menunjukkan Arduino mengirimkan command dengan format AT.

Respon yang dikembalikan oleh Bluetooth HC-05 adalah OK. Respon tersebut

menandakan HC-05 sudah dalam AT Command mode.

Gambar 3.5. Setting nama Bluetooth HC-05.

Gambar 3.5 menunjukkan Arduino mengirimkan command dengan format

AT+NAME=USD_115114046. Respon yang dikembalikan oleh Bluetooth HC-05

adalah OK. Untuk mengetahui bahwa nama sudah terganti digunakan format

AT+NAME dengan respon yang dikembalikan oleh Bluetooth HC-05 adalah OK dan

+NAME:USD_115114046.

Gambar 3.6. Setting password Bluetooth HC-05.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

35

Gambar 3.6 menunjukkan Arduino mengirimkan command dengan format

AT+PSWD=USD_115114046. Respon yang dikembalikan oleh Bluetooth HC-05

adalah OK. Untuk mengetahui bahwa password sudah terganti digunakan format

AT+PSWD dengan respon yang dikembalikan oleh Bluetooth HC-05 adalah OK dan

+PSWD:115114046.

Gambar 3.7. Setting role Bluetooth HC-05.

Gambar 3.7 menunjukkan Arduino mengirimkan command dengan format

AT+ROLE=0. Respon yang dikembalikan oleh Bluetooth HC-05 adalah OK. Untuk

mengetahui bahwa role sudah terganti menjadi slave digunakan format AT+ROLE

dengan respon yang dikembalikan oleh Bluetooth HC-05 adalah OK dan +ROLE:0.

Gambar 3.8. Setting baud rate, stop bit, parity Bluetooth HC-05.

Gambar 3.8 menunjukkan Arduino mengirimkan command dengan format

AT+UART=38400,0,0. Respon yang dikembalikkan oleh Bluetooth HC-05 adalah OK.

Untuk mengetahui bahwa baud rate, stop bit, parity sudah menjadi 38400, no stop bit

dan no parity digunakan format AT+UART dengan respon yang dikembalikan oleh

Bluetooth HC-05 adalah OK dan +UART:38400,0,0.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

36

Gambar 3.9. Alamat Bluetooth HC-05

Gambar 3.9 menunjukkan Arduino mengirimkan command dengan format

AT+ADDR. Respon yang dikembalikan oleh Bluetooth HC-05 adalah OK dan

+ADDR=2014:11:282428. Command tersebut digunakan untuk mengetahui alamat

Bluetooth HC-05.

3.3 Desain Lengan Robot

Desain lengan robot yang digunakan merupakan desain lengan robot yang

bersifat open source. Desain lengan robot ini bernama Me Arm v3. Desain lengan robot

dapat diunduh di situs www.grabcad.com/library/me-arm-v3-0-1. Lengan robot Me

Arm v3 dapat digerakkan hanya dengan menggunakan mikro servo. Me Arm v3 terdiri

dari 4 buah motor penggerak. Pada end effector terdapat gripper yang dapat digunakan

untuk mencapit benda. Berikut gambar-gambar desain lengan robot Me Arm v3.

Gambar 3.10. Desain gripper Me Arm v3.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

37

Gripper pada Me Arm v3 digerakkan dengan satu buah motor servo. Untuk

dapat membuat kedua penjepit bergerak secara bersamaan, gripper Me Arm v3

dilengkapi konfigurasi roda gigi seperti yang akan ditunjukkan pada gambar 3.11.

Gambar 3.11. Desain roda gigi gripper Me Arm v3.

Desain link dan joint lengan robot Me Arm v3 ditunjukkan oleh gambar 3.12 dan

3.13 di bawah ini.

Gambar 3.12 Desain link dan joint (1).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

38

Gambar 3.13 Desain link dan joint (2).

Gambar 3.14 dan gambar 3.15 di bawah ini merupakan susunan motor pada

lengan robot Me Arm v3.

Gambar 3.14 Susunan motor lengan robot Me Arm v3(1) .

Motor Base

Motor Shoulder

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

39

Gambar 3.15 Susunan motor lengan robot Me Arm v3(2) .

Perkiraan pergerakan untuk masing-masing motor adalah sebagai berikut :

1. Motor base bergerak antara 00 - 180

0.

2. Motor shoulder bergerak antara 450 - 150

0.

3. Motor elbow bergerak antara 450 - 150

0.

4. Motor gripper bergerak antara 300 - 80

0.

Titik acuan dalam perhitungan sudut pergerakan lengan robot adalah sebagai

berikut:

Gambar 3.16 Acuan sudut pergerakan lengan shoulder.

Motor Elbow

Motor Gripper

Y

X

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

40

Gambar 3.17 Acuan sudut pergerakan lengan elbow.

Gambar 3.18 Acuan posisi end effector.

Y

X

X

Y

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

41

Gambar 3.19 Acuan lebar cengkraman gripper.

Acuan pada gripper berupa lebar pembukaan mulut gripper dengan satuan cm.

Motor yang digunakan untuk gripper menggunakan motor servo mikro.

Cm

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

42

3.4 Perancangan User Interface pada Android

Desain antarmuka aplikasi Kontroler Lengan Robot dibuat seperti gambar 3.16

dan 3.17. Antarmuka bertujuan untuk memudahkan pengguna dalam menggerakkan

lengan robot.

Gambar 3.20. Desain antarmuka aplikasi Kontroler Lengan Robot..

Keterangan desain antarmuka dalam gambar 3.20 adalah sebagai berikut:

1. Enable

Ditekan untuk mengaktifkan koneksi Bluetooth pada smartphone Android.

Status 1 merupakan textview yang akan menginformasikan apakah Bluetooth

sedang menyala atau mati.

2. Paired

Ditekan untuk melakukan proses pairing terhadap perangkat Bluetooth yang

akan disambungkan. Status 2 merupakan textview yang akan menginformasikan

apakah Bluetooth sudah paired atau belum.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

43

3. Scan

Ditekan untuk melakukan scanning terhadap perangkat Bluetooth yang aktif dan

akan melakukan sambungan. Status 3 merupakan textview yang akan

menginformasikan apakah ada perangkat Bluetooth lain yang aktif dan akan

melakukan sambungan.

4. Connect

Ditekan untuk membuka sebuah sambungan terhadap perangkat Bluetooh yang

aktif dan sudah ter-paired dengan smartphone Android. Status 4 merupakan

textview yang akan menginformasikan apakah Bluetooth sudah tersambung

dengan perangkat lain atau belum.

Untuk memberikan masukan pada motor servo lengan robot, digunakan

seek bar. Seek bar digunakan dengan cara digeser atau di-drag.

Gambar 3.21. Desain masukan dengan seek bar.

Keterangan desain antarmuka dalam gambar 3.21 adalah sebagai berikut :

1. Seek Bar Base

Digunakan untuk menggerakkan motor servo base lengan robot.

2. Seek Bar Shoulder

Digunakan untuk menggerakkan motor servo shoulder lengan robot.

3. Seek Bar Elbow

Digunakan untuk menggerakkan motor servo elbow lengan robot.

4. Seek Bar Gripper

Digunakan untuk menggerakkan motor servo gripper lengan robot.

Seek Bar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

44

3.5 Format Pengiriman Data

Data akan dikirim menggunakan serial komunikasi UART dengan baud rate

38400, tanpa parity dan 0 stop bit. Gambar 3.22 di bawah ini merupakan format frame

komunikasi UART secara umum.

Gambar 3.22 Format frame USART.

Data dari Aplikasi Kontroler Lengan Robot adalah berupa String yang memuat

data header yang akan digunakan sebagai tanda untuk mendeteksi masing-masing motor

yang ingin digerakkan dan data sudut pergerakan pada lengan robot yang telah

ternormalisasi. Tabel 3.1 di bawah ini menunjukkan format data yang dikirim dari

Aplikasi Kontroler Lengan Robot.

Tabel 3.1 Format data Aplikasi Kontroler Lengan Robot.

Motor Header Data

Contoh Hasil

Akhir

(Header+Data)

Base a Sudut pergerakan lengan robot yang

telah ternormalisasi (derajat).

a90

Shoulder b Sudut pergerakan lengan robot yang

telah ternormalisasi (derajat).

b30

Elbow c Sudut pergerakan lengan robot yang

telah ternormalisasi (derajat).

c45

Gripper d Lebar cengkraman gripper (cm). d2

Jika data yang dikirim adalah a90, maka format data yang dikirim secara UART

adalah sebagai berikut :

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

45

Tabel 3.2 Contoh Kode ASCII untuk pengiriman a90.

KODE ASCII

Desimal Biner Karakter

97 01100001 a

57 00111001 9

48 00110000 0

Tabel 3.3 Format frame karakter a.

St(1) 0 1 1 0 0 0 0 1 P(no) Sp(0) St(1)

Tabel 3.4 Format frame karakter 9.

St(1) 0 0 1 1 0 0 0 1 P(no) Sp(0) St(1)

Tabel 3.5 Format frame karakter 0.

St(1) 0 0 1 1 0 0 0 0 P(no) Sp(0) St(1)

Keterangan tabel 3.3, tabel 3.4 dan tabel 3.5 adalah sebagai berikut :

St merupakan start bit untuk mengawali proses pengiriman data.

P merupakan parity, pengiriman data tidak menggunakan parity.

Sp merupakan stop bit untuk menandai bahwa data sudah selesai dikirim.

Dalam komunikasi UART, start bit dan stop bit wajib ada karena untuk

menandai awal dan akhir proses pengiriman data. Hal ini disebabkan karena pengiriman

data dilakukan secara asinkron. Dengan adanya start bit dan stop bit, perangkat

penerima dapat mendeteksi adanya data baru yang dikirim sehingga tidak terjadi

kesalahan penerimaan data.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

46

3.6 Perancangan Diagram Alir

3.6.1 Diagram Alir Aplikasi Android Kontroler Lengan Robot

Gambar 3.23. Diagram alir Aplikasi Kontroler Lengan Robot.

START

Menampilkan

tampilan utama

Apakah Enable di klik

Mengaktifkan

perangkat

Bluetooth

Ada perangkat aktif

dengan nama

USD_115114046?

N

Y

Apakah Scan di

tekan?

N

N

Y

Apakah Paired ditekan?

Melakukan proses

scanning

Y

N

Y

Y

1

1

Memasukkan

password

untuk pairing

Apakah Connect

ditekan?2

N

Proses

penyambungan

Arduino dan

Android

Ada perubahan

nilai pada seekbar?

N

Y

Y

2N

Y

Password benar?

Y

N

Mendeteksi perubahan

seekbar motor

base,elbow,shoulder

atau gripper

Kirim data

perubahan nilai

seekbar ke

Arduino

3

3

Ada perubahan

nilai pada seekbar?

4

4

END

Y

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

47

3.5.1 Diagram Alir Arduino Uno

Gambar 3.24. Diagram alir aplikasi Arduino Uno

Start

Inisialisasi

variabel

Apakah tersedia serial

komunikasi?

Apakah Bluetooth sudah dalam

mode Connect ?

Ada data yang

dkirim?

Y

N

Y

Y

N

N

Memisahkan data

berdasarkan

header

Menampilkan

data melalui

serial monitor

Menggerakkan

motor

2

2

Ada data yang

dikirim

Y

N

END

3

3

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

48

BAB IV

HASIL DAN PEMBAHASAN

Bab ini akan dibahas tentang lengan robot dan aplikasi kontroler lengan robot

menggunakan smartphone Android. Hasil pengamatan meliputi ruang gerak dari lengan

robot yang akan dikendalikan dan aplikasi kontroler lengan robot menggunakan

smarphone Android.

4.1 Lengan Robot

4.1.1 Bentuk Fisik dan Dimensi Lengan Robot

Pengukuran dimensi pada lengan robot disesuaikan dengan desain yang telah

dicetak. Penjelasan dimensi ditunjukkan oleh gambar 4.1 dan 4.2.

Gambar 4.1. Lengan robot tampak samping (elbow).

A1

B2

C1

D

E

Servo

Elbow

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

49

Keterangan gambar 4.1. di atas adalah sebagai berikut:

1. A1

Adalah link utama yang tersambung pada motor servo elbow. Link A1 terpasang

secara paralel dengan link A2 yang ada pada gambar 4.1. Panjang dari link

tersebut adalah 5 cm dengan tebal 5mm.

2. B2

Adalah link bantuan yang terpasang secara paralel terhadap link utama yang

tersambung pada motor servo shoulder. Panjang dari link tersebut adalah 15 cm

dengan tebal 5mm.

3. C1

Adalah link bantuan yang tersambung dengan link bantuan D. Link C1 terpasang

secara paralel dengan link C2. Panjang dari link tersebut adalah 20 cm dengan

tebal 5mm.

4. D

Adalah link bantuan yang terhubung secara langsung oleh link utama motor

servo elbow. Panjang dari link tersebut adalah 15 cm dengan tebal 5mm.

5. E

Adalah bagian base lengan robot yang berfungsi untuk menopang bagian lengan

robot yang ada di atasnya. Panjang dari base adalah 10 cm dengan lebar 10 cm

dan dengan tinggi 1 cm.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

50

Gambar 4.2. Lengan robot tampak samping (shoulder).

Keterangan gambar 4.2 di atas adalah sebagai berikut:

1. A2

Adalah link bantuan yang tersambung pada link utama motor servo elbow. Link

A2 terpasang secara parallel dengan link A1. Panjang dari link tersebut adalah 5

cm dengan tebal 5mm.

2. B1

Adalah link utama yang tersambung pada motor servo shoulder. Link B1

terpasang secara parallel terhadap link bantuan B2. Panjang dari link tersebut

adalah 15 cm dengan tebal 5mm.

3. C2

Adalah link bantuan yang tersambung dengan link bantuan D. Link C2 terpasang

secara parallel dengan link C1. Panjang dari link tersebut adalah 20 cm dengan

tebal 5mm.

Motor

Shoulder

B1

A2

C2

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

51

4.1.2 Kalibrasi dan Daerah Kerja Lengan Robot

Kalibrasi lengan robot diperlukan agar pergerakan motor servo dapat bergerak

sesuai dengan daerah kerja yang dapat dijangkau oleh lengan robot. Selain itu, kalibrasi

dapat mencegah bagian lengan robot agar tidak rusak atau patah karena pergerakan

motor servo tidak sesuai dengan daerah kerja lengan robot. Digunakan sebuah program

untuk mengkalibrasi dan menentukan daerah kerja lengan robot. Berikut listing program

untuk mengkalibrasi dan menentukan daerah kerja lengan robot.

//Listing 1 #include<Servo.h> void loop() { if(Serial.available()>0) { input_servo=Serial.read(); if(input_servo==50){//ASCII 2 Serial.print("nilai elbow sekarang = "); Serial.println(elbowx); elbowx+=5; Serial.print("nilai elbow setelah = "); Serial.println(elbowx); } if(input_servo==49){ //ASCII 1 Serial.print("nilai elbow sekarang = "); Serial.println(elbowx); elbowx+=-5; Serial.print("nilai elbow setelah = "); Serial.println(elbowx); } if(input_servo==52){ //ASCII 4 Serial.print("nilai base sekarang = "); Serial.println(basex); basex+=5; Serial.print("nilai base setelah = "); Serial.println(basex); } if(input_servo==51){ //ASCII 3 Serial.print("nilai base sekarang = "); Serial.println(basex);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

52

Program di atas mengambil masukan dari keyboard laptop untuk menambah atau

mengurangi sudut gerak motor servo. Gambar 4.3 di bawah ini adalah tampilan

keyboard dan kegunaannya sebagai masukan.

Gambar 4.3. Keyboard sebagai masukan kalibrasi.

Keterangan penggunaan tombol keyboard adalah sebagai berikut :

1. Tombol 1

Adalah tombol untuk mengurangi sudut gerak motor servo untuk lengan elbow.

Dengan nilai decimal ASCII 49.

2. Tombol 2

Adalah tombol untuk menambah sudut gerak motor servo untuk lengan elbow.

Dengan nilai decimal ASCII 50.

3. Tombol 3

Adalah tombol untuk mengurangi sudut gerak motor servo untuk lengan base.

Dengan nilai decimal ASCII 51.

4. Tombol 4

Adalah tombol untuk mengurangi sudut gerak motor servo untuk lengan base.

//Listing 1 (lanjutan) Serial.println(basex); }

if(input_servo==54){ //ASCII 6 Serial.print("nilai shoulder sekarang = "); Serial.println(shoulderx); shoulderx+=5; Serial.print("nilai shoulder setelah = "); Serial.println(shoulderx); } if(input_servo==53){ //ASCII 5 Serial.print("nilai shoulder sekarang = "); Serial.println(shoulderx); shoulderx+=-5; Serial.print("nilai shoulder setelah = "); Serial.println(shoulderx); }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

53

Dengan nilai decimal ASCII 52.

5. Tombol 5

Adalah tombol untuk mengurangi sudut gerak motor servo untuk lengan

shoulder. Dengan nilai decimal ASCII 53.

6. Tombol 6

Adalah tombol untuk mengurangi sudut gerak motor servo untuk lengan

shoulder. Dengan nilai decimal ASCII 54.

Hasil dari kalibrasi dan daerah kerja lengan robot ditunjukkan oleh gambar 4.4.

dan gambar 4.5. sebagai berikut :

Gambar 4.4. Hasil kalibrasi lengan robot elbow.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

54

Gambar 4.5. Hasil kalibrasi lengan shoulder.

Hasil dari proses kalibrasi menggunakan masukan keyboard ditunjukkan oleh

tabel 4.1. dan 4.2.

Dengan data pada tabel 4.1 dan tabel 4.2 dapat dikatakan bahwa untuk lengan

elbow dan lengan shoulder memiliki hubungan yang tidak linear. Akurasi yang

digunakan dalam pengujian daerah kerja adalah sebesar 50.

Hasil dari tabel 4.1 dan tabel 4.2 digunakan untuk menentukan nilai maksimal

dan minimal yang akan diproses oleh Aplikasi Kontroler Lengan Robot melalui

smartphone Android. Proses kalibrasi pada masing-masing motor servo bertujuan agar

motor servo dapat bergerak sesuai dengan daerah kerja yang mampu diraih oleh lengan

robot dan dapat mengantisipasi kerusakan motor servo maupun lengan robot karena

menahan beban yang berlebihan. Berikut tabel 4.1 dan 4.2 yang menunjukkan hubungan

antara gerak lengan shoulder dan lengan elbow. Kalibrasi pada motor shoulder dan

elbow hanya digunakan saat pemasangan awal motor servo pada lengan robot. Acuan

pengambilan data sudut ditampilkan pada gambar 4.12 dan 4.13.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

55

Berdasarkan tabel 4.1 dan tabel 4.2 maka posisi awal lengan robot adalah pada

saat motor servo lengan elbow dan lengan shoulder mendapat masukan 900. Karena

pada saat lengan mendapat masukan 900, masing-masing jangkauan minimal lengan

memiliki nilai yang sama. Hasil daerah kerja 2 menunjukkan bahwa motor elbow

memiliki nilai minimal yang tidak berubah-ubah, hal ini disebabkan keterbatasan

mekanik pada lengan robot. Pada motor pada base tidak memerlukan kalibrasi karena

perubahan pergerakan sudut sudah sesuai dengan kondisi sebenarnya. Pada motor

gripper data yang diambil berupa kondisi ketika gripper membuka penuh dan menutup

Tabel 4.1. Hasil daerah kerja 1 Tabel 4.2.Hasil daerah kerja 2

ELBOW (0)

SHOULDER (0)

MIN MAX

30 25 165

35 20 160

40 15 160

45 10 160

50 0 150

55 5 150

60 5 145

65 10 140

70 15 140

75 15 135

80 20 130

85 20 130

90 30 120

95 30 115

100 35 110

105 40 115

110 40 100

115 40 100

120 40 95

125 45 90

130 45 85

135 45 80

140 45 75

145 45 70

150 45 65

155 40 60

SHOULDER (0)

ELBOW (0)

MIN MAX

30 30 90

35 30 100

40 30 110

45 30 165

50 30 165

55 30 160

60 30 150

65 30 150

70 30 140

75 30 135

80 30 130

85 30 125

90 30 125

95 30 120

100 30 110

105 30 110

110 30 100

115 30 95

120 30 90

125 30 80

130 30 80

135 30 70

140 30 60

145 30 55

150 30 55

155 30 55

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

56

penuh atau kondisi ON/OFF. Sudut motor servo yang dibutuhkan adalah dari 450-90

0.

Jarak pembukaan gripper tidak dapat diambil secara pasti karena desain mekanik roda

gigi gripper tidak sempurna dalam menanggapi perubahan sudut motor servo (hysterysis

motion). Daerah kerja lengan robot ditunjukkan oleh gambar 4.6. dan 4.7 berikut ini:

Gambar 4.6. Daerah kerja lengan robot tampak atas.

Gambar 4.7. Daerah kerja lengan robot tampak samping.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

57

4.1.3 Analisa Matematis Lengan Robot

Pada sub bab 4.1.3 akan dibahas mengenai perhitungan matematis dan pengaruh

desain lengan robot terhadap kinematika lengan robot. Pemodelan secara grafis

dilakukan untuk menganalisa torsi dan kinematika lengan robot.

Gambar 4.8. Analisa grafis lengan robot posisi 1.

Dari analisa menggunakan grafis dapat diketahui persamaan kinematika lengan

robot pada saat posisi lengan shoulder 900 terhadap ground. Persamaan kinematika yang

dihasilkan adalah sebagai berikut.

.................................................................................................. (4.1)

............................................................................ (4.2)

Keterangan gambar 4.8 :

1. h merupakan jarak ground dengan dudukan lengan.

2. L2 merupakan panjang lengan shoulder sebesar 15cm.

3. L3 merupakan panjang lengan elbow sebesar 15cm.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

58

Gambar 4.9. Analisa grafis lengan robot posisi 2.

Dari analisa menggunakan grafis dapat diketahui persamaan kinematika lengan

robot pada saat posisi lengan shoulder kurang dari 900 terhadap ground. Persamaan

kinematika yang dihasilkan adalah sebagai berikut.

................................................................................ (4.3)

................................................................... (4.4)

Keterangan gambar 4.9:

1. h merupakan jarak ground dengan dudukan lengan.

2. L2 merupakan panjang lengan shoulder sebesar 15cm.

3. L3 merupakan panjang lengan elbow sebesar 15cm.

Pengambilan data untuk posisi koordinat x dan y dilakukan pada saat lengan

robot berada dalam posisi 2 seperti yang ditunjukkan oleh gambar 4.8. Dengan

pertimbangan bahwa posisi 2 merupakan posisi awal lengan robot dan posisi 2

merupakan posisi lengan robot yang sering dikerjakan lengan robot. Cara pengambilan

posisi x dan y ditunjukkan oleh gambar 4.9 di bawah ini.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

59

Gambar 4.10. Proses pengambilan data x dan y.

Gambar 4.11. Proses pengambilan data sudut lengan robot elbow dan shoulder.

X

Y

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

60

Gambar 4.12. Proses pengambilan sudut motor base.

Akurasi yang digunakan dalam pengambilan data adalah sebesar 50. Dalam

proses pengambilan data busur harus ditempelkan ditempat yang sama untuk

menghindari kesalahan pengambilan data karena acuan sudut yang berbeda. Selain itu,

diperlukan sebuah garis bantu yang digambar pada lengan robot yang akan menjadi

acuan untuk pengambilan masing-masing data. Hasil pengambilan data dan data

sebenarnya dari posisi x dan y lengan robot ditunjukkan oleh tabel 4.3 di bawah ini.

Tabel 4.3 Perbandingan data terukur dan data sebenarnya posisi x dan y lengan robot.

NO SUDUT SERVO(0) SUDUT TERUKUR(0)

NILAI TERUKUR(cm) SUDUT NYATA(0)

ELBOW SHOULDER ELBOW SHOULDER X Y beta alfa

1 90 90 60 75 13 10.5 75 53

2 100 90 65 75 12 9 75 58

3 110 90 75 75 10 8 75 66

4 120 90 80 75 7.5 7.5 75 76

5 90 80 60 65 16.5 10 61 53

6 100 80 65 65 14.5 8.5 61 61

7 110 80 75 65 12 7.5 61 71

8 120 80 80 65 10 7 61 79

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

61

Tabel 4.3 Perbandingan data terukur dan data sebenarnya posisi x dan y lengan robot

(lanjutan).

NO SUDUT SERVO(0) SUDUT TERUKUR(0)

NILAI TERUKUR(cm) SUDUT NYATA(0)

ELBOW SHOULDER ELBOW SHOULDER X Y beta alfa

9 90 70 60 55 18.5 9 51 53

10 100 70 70 55 16.5 7.5 51 62

11 110 70 80 55 14 6.5 51 72

12 120 70 80 55 12 6 51 80

13 90 60 60 45 20.5 7.5 40 53

14 100 60 65 45 18.5 6 40 62

15 110 60 80 45 16 5 40 72

16 120 60 80 45 13.5 3.5 40 82

Tabel 4.4. Nilai offset elbow dan shoulder yang dihasilkan berdasarkan tabel 4.3.

NO Nilai Offset

Elbow(0) Error Elbow(0) Shoulder(0) Error Shoulder(0)

1 30 0 15 0

2 35 0 15 0

3 45 15 15 0

4 40 10 15 0

5 30 0 15 0

6 35 5 15 0

7 45 15 15 0

8 30 10 15 0

9 30 0 15 0

10 30 0 15 0

11 40 10 15 0

12 40 10 15 0

13 30 0 15 0

14 35 5 15 0

15 40 10 15 0

16 40 10 15 0

Keterangan tabel 4.3 adalah sebagai berikut:

1. Sudut servo merupakan nilai sudut yang diberikan kontroler untuk motor

servo.

2. Sudut terukur merupakan sudut posisi lengan robot yang diukur secara

langsung menggunakan busur.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

62

3. Nilai terukur merupakan nilai yang diukur posisi x dan y menggunakan garis

seperti yang ditunjukkan pada gambar 4.9.

4. Sudut nyata merupakan sudut sebenarnya yang dibentuk oleh lengan robot.

Sudut nyata diambil dari desain grafis lengan robot. Cara pengambilan sudut

nyata ditunjukkan oleh gambar 4.13. dan gambar 4.14.

5. Sudut nyata beta merupakan sudut untuk lengan shoulder dan sudut nyata

alfa merupakan sudut untuk lengan elbow.

Keterangan tabel 4.4 adalah sebagai berikut:

1. Nilai offset elbow merupakan nilai selisih antara sudut servo shoulder

dengan sudut terukur servo elbow pada tabel 4.3.

2. Nilai offset shoulder merupakan nilai selisih antara sudut servo shoulder

dengan sudut terukur servo shoulder pada tabel 4.3.

3. Diketahui bahwa terdapat nilai offset sudut pada motor servo elbow yaitu

sebesar 300. Nilai offset terjadi karena pemasangan motor servo tidak tegak

lurus terhadap posisi awal lengan robot.

4. Diketahui bahwa terdapat nilai offset sudut pada motor servo shoulder yaitu

sebesar 150. Nilai offset terjadi karena pemasangan motor servo tidak tegak

lurus terhadap posisi awal lengan robot.

Proses pengambilan sudut nyata dan posisi x dan y lengan robot ditunjukkan

oleh gambar 4.13 dan 4. 14.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

63

Gambar 4.13. Sudut nyata x=13cm dan y=10.51cm.

Gambar 4.14. Sudut nyata x=16.50cm dan y=9cm.

Dari pengambilan data dapat diketahui bahwa perbedaan antara sudut servo

shoulder dan sudut nyata shoulder yang dihasilkan oleh lengan robot adalah sebesar

150. Perbedaan antara sudut servo elbow dan sudut nyata elbow yang dihasilkan oleh

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

64

lengan robot adalah sebesar 300. Perlu diketahui bahwa proses pengambilan data sudut

terukur terpangaruh oleh ketelitian pembacaan sudut pada busur.

.

Gambar 4.15. Analisa grafis lengan robot posisi 3.

Dari analisa menggunakan grafis dapat diketahui persamaan kinematika lengan

robot pada saat posisi lengan 3 atau shoulder lebih dari 900 terhadap ground. Persamaan

kinematika yang dihasilkan adalah sebagai berikut.

....................................................................... (4.5)

......................................................... (4.6)

Keterangan gambar 4.13 :

1. h merupakan jarak ground dengan dudukan lengan.

2. L2 merupakan panjang lengan shoulder sebesar 15cm.

3. L3 merupakan panjang lengan elbow sebesar 15cm.

4.2 Aplikasi Kontroler Lengan Robot

Pada sub bab 4.2 akan dibahas mengenai Aplikasi Kontroler Lengan Robot yang

sudah dibuat pada smartphone Android.

4.2.1 Antarmuka Aplikasi Kontroler Lengan Robot

Dalam Aplikasi Kontroler Lengan Robot terdapat 2 buah activity. Activity yang

pertama adalah splash activity dan yang kedua adalah main activity. Splash activity

adalah activity yang berfungsi sebagai start up untuk Aplikasi Kontroler Lengan Robot.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

65

Main activity adalah activity yang berfungsi sebagai kontrol utama komunikasi Android

dengan Bluetooth HC-05. Splash activity ditunjukkan pada gambar 4.16 dan main

activity ditujukkan oleh gambar 4.17 di bawah ini.

Gambar 4.16. Splash activity.

Splash activity pada gambar 4.16 di atas tampil selama 5 detik dan setelah itu

tampilan akan berganti ke main activity seperti pada gambar 4.17. Splash activity terdiri

dari sebuah relative layout yang berisi ImageView dan TextView. Selain itu, terdapat

background sound yang akan terdengar bersamaan dengan terbukanya splash activity.

Dengan menggunakan fasilitias Thread, background sound dan tampilan dapat berjalan

bersamaan. Berikut listing program untuk splash activity.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

66

Pada splash activity warna tulisan tidak diatur dalam program xml, melainkan

diatur menggunakan fasilitas yang terdapat dalam class graphics.color yang sudah ada

dalam Eclipse IDE. Dan untuk melakukan pengubahan warna pada tulisan digunakan

method .setTextColor yang ada dalam class TextView. Pada pengujian splash activity

sudah dapat berjalan dengan baik baik sebagai tampilan awal Aplikasi Kontroler

Lengan Robot.

//Listing 2 public class Splash_Activity extends Activity{ MediaPlayer Coc; ImageView robot; TextView judul; TextView bawahjudul; TextView bawahjudul1; TextView bawahjudul2; TextView bawahjudul3; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Coc=MediaPlayer.create(Splash_Activity.this, R.raw.coc); Coc.start(); setContentView(R.layout.splash); judul=(TextView)findViewById(R.id.textView3); judul.setTextColor(Color.BLUE); bawahjudul=(TextView)findViewById(R.id.textView1); bawahjudul.setTextColor(Color.BLUE); bawahjudul1=(TextView)findViewById(R.id.textView2); bawahjudul1.setTextColor(Color.BLUE); bawahjudul2=(TextView)findViewById(R.id.textView4); bawahjudul2.setTextColor(Color.BLUE); bawahjudul3=(TextView)findViewById(R.id.textView5); bawahjudul3.setTextColor(Color.BLUE); Thread th = new Thread(){ public void run(){try { sleep(5000); }catch (Exception e) {}finally { Intent i = newIntent(Splash_Activity.this,MainActivity.class); startActivity(i); } } }; th.start(); }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

67

Gambar 4.17. Main activity

Main activity pada gambar 4.17 terdiri dari linear layout yang di dalammnya

terdapat relative layout. Main activity merupakan activity utama sebagai pengontrol

komunikasi Bluetooth dan memberi masukan nilai ke Arduino. Main activity dilengkapi

dengan sistem proteksi terhadap kesalahan penggunaan komunikasi dan masukan nilai.

Ketika panel Enable masih menunjukkan OFF maka pengguna tidak akan bisa

mengirimkan data ataupun melakukan proses komunikasi atau dengan kata lain aplikasi

tidak akan menerima perintah maupun masukan ketika Enable dalam keadaan OFF.

Sistem proteksi tersebut dapat mencegah aplikasi tertutup secara paksa karena kesalahan

pengguna.

Antarmuka yang digunakan untuk memberikan masukan terhadap pergerakan

lengan robot adalah menggunakan antarmuka seekbar. Akurasi atau step yang

digunakan adalah sebesar 50 untuk setiap pergeseran.

Seekbar

Linear Layout

Relative Layout

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

68

4.2.2 Cara Penggunaan Aplikasi Kontroler Lengan Robot

Cara untuk menggunakan Aplikasi Kontroler Lengan adalah sebagai berikut:

1. Tekan icon pada Home Screen Android.

2. Tunggu sampai Aplikasi Kontroler Lengan Robot terbuka dan menampilkan

splash activity lalu menuju main activity.

3. Setelah main activity terbuka, proses pengaktifan Bluetooth baru bisa

dinyalakan.

4. Proses pengaktifan dan penyambungan komunikasi Bluetooth harus

dilakukan secara sekuensial sesuai dengan protokol Bluetooth.

5. Tekan Enable >> Scan >> Paired >> Masukan password “115114046” >>

Connect.

6. Setelah proses pada nomer 5 di atas berhasil, geser seekbar untuk

menggerakkan lengan robot.

4.2.3 Pembahasan Program Komunikasi Bluetooth Aplikasi Kontroler

Lengan Robot

Dalam membuat aplikasi kontroler lengan robot dalam sistem operasi Android

menggunakan komunikasi Bluetooth, berbagai kelas digunakan terutama kelas untuk

komunikasi Bluetooth. Dalam sub bab ini akan dibahas mengenai penggunaan kelas

Bluetooth yang digunakan.

Kelas yang pertama adalah kelas BluetoothAdapter. Kelas ini merupakan kelas

yang diinisialisasikan pertama kali. BluetoothAdapter digunakan untuk melakukan

pengecekan apakah perangkat smartphone yang akan digunakan telah memiliki

komunikasi Bluetooth atau tidak.

Listing 3 program di atas akan mengaktifkan dan mematikan Bluetooth pada

smartphone yang memiliki komunikasi Bluetooth yang sesuai dengan kebutuhan

//Listing 3 private BluetoothAdapter btAdapter; import android.bluetooth.BluetoothAdapter; if (btAdapter.isEnabled()) { btAdapter.disable(); statusOff(); } else if (!btAdapter.isEnabled()) { Intent openBT = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(openBT,OPEN_BLUETOOTH); } else if (btAdapter == null) { showToast("Tidak support Bluetooth");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

69

aplikasi kontroler lengan robot. Jika smartphone tidak memiliki komunikasi Bluetooth

atau versi Bluetooth tidak sesuai yang dibutuhkan aplikasi maka akan muncul

peringatan bahwa smartphone tidak didukung dengan komunikasi Bluetooth.

BluetoothAdapter juga dapat mendeteksi apakah Bluetooth sedang dalam kondisi aktif

atau tidak.

Setelah menangani pengaktifan Bluetooth, BluetoothAdapter melakukan proses

scanning dan pairing. Listing program untuk proses scanning dan pairing adalah

sebagai berikut.

Bluetooth akan dapat melakukan proses pairing ketika perangkat dengan alamat

"20:14:11:28:24:28" terdeteksi ketika proses scanning. Dalam program ini dibatasi

hanya perangkat Bluetooth SPP (Serial Port Profile) dengan alamat

"20:14:11:28:24:28" yang dapat berkomunikasi dengan aplikasi kontroler lengan robot.

Alamat tersebut merupakan alamat modul Bluetooth HC-05 yang terhubung dengan

Arduino.

Kelas yang kedua adalah kelas BluetoothDevice. Kelas ini menampung

informasi mengenai nama dan alamat perangkat Bluetooth yang terdeteksi dan yang

dapat berkomunikasi dengan smartphone. Selain itu, BluetoothDevice dapat mendeteksi

apakah perangkat yang terdeteksi sedang dalam proses pairing, sudah ter-paired atau

belum ter-paired. Listing program untuk penggunaan kelas BluetoothDevice adalah

sebagai berikut.

//Listing 5 scanBT.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { btAdapter.startDiscovery();

}

pairedBT.setOnClickListener(new OnClickListener() { private String address = "20:14:11:28:24:28";

BluetoothDevice prosesPairing=btAdapter.getRemoteDevice(address); public void onClick(View arg0) { if (prosesPairing.getBondState() == BluetoothDevice.BOND_BONDED){ unpairDevice(prosesPairing); USD_1146 = prosesPairing; } else { pairDevice(prosesPairing); } } });

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

70

Kelas ketiga yang digunakan adalah BluetoothSocket. BluetoothSocket berperan

dalam membuka jalur yang akan digunakan untuk melakukan komunikasi antara

smartphone dengan perangkat Bluetooth yang sudah ter-paired. Listing program untuk

penggunaan kelas BluetoothSocket adalah sebagai berikut.

UUID adalah Universally Unique Identifier yaitu merupakan kode standar untuk

komunikasi Serial Port Profile (SPP). Jalan komunikasi tidak akan terbuka jika UUID

yang digunakan tidak sesuai dengan yang dibutuhkan.

BluetoothSocket juga mengatur pengiriman dan penerimaan data. Dalam

Aplikasi Kontroler Lengan Robot yang dibuat, aplikasi hanya dapat mengirimkan data

saja. Untuk setiap proses pengiriman komunikasi, Android mewajibkan pengembang

untuk menggunakan IOException. Berikut listing program pengiriman data Aplikasi

Kontroler Lengan Robot.

//Listing 6 if (state == BluetoothDevice.BOND_BONDED && prevState == BluetoothDevice.BOND_BONDING) { showToast("Paired"); statusPaired.setText("to USD_115114046"); pairedBT.setText("Unpair"); connectBT.setEnabled(true); } else if (state == BluetoothDevice.BOND_NONE && prevState == BluetoothDevice.BOND_BONDED) { showToast("Unpaired"); pairedBT.setText("Pair"); statusPaired.setText("Belum paired "); } }}};

//Listing 7 private BluetoothSocket mmSocket; void closeBT() throws IOException { UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb"); mmSocket = USD_1146.createRfcommSocketToServiceRecord(uuid); mmSocket.close(); } void openBT() throws IOException { UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb"); mmSocket =USD_1146.createRfcommSocketToServiceRecord(uuid); mmSocket.connect(); mmOutputStream = mmSocket.getOutputStream(); statusConnect.setText("Bluetooth Opened" + "\n"); }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

71

mmOutputStream merupakan objek yang dibentuk untuk dapat mengirimkan

data. Semua program yang digunakan untuk membuka, menutup, mengirimkan dan

menerima data pasti dijalankan dengan method throws IOException sesuai dengan

aturan Android Application Programming Interface yang terdapat di website

developer.android.com

Kelas terakhir yang digunakan adalah kelas Intent dan BroadcastReceiver. Intent

digunakan untuk menyimpan dan melanjutkan nilai dari sebuah activity ke activity yang

lain. Untuk menghemat pemrosesan activity, maka digunakan BroadcastReceiver yang

akan menginformasikan perangkat ketika ada perubahan data. Berikut listing program

penggunaan Intent dan BroadcastReceiver.

Intent Filter digunakan untuk membuat daftar kejadian yang akan menjadi fokus

utama BroadcastReceiver dalam menangkap perubahan data. Kejadian yang dapat

ditangkap dan diinformasikan oleh BroadcastReceiver ke seluruh sistem antara lain :

1. Perubahan kondisi Bluetooth aktif atau non aktif.

2. Ketika terdeteksi perangkat Bluetooth yang aktif.

3. Ketika terjadi perubahan status pairing dalam perangkat Bluetooth.

4. Ketika proses scanning dimulai dan berakhir.

Listing program untuk penggunaan kelas BroadcasReceiver adalah sebagai

berikut.

//Listing 8 private OutputStream mmOutputStream; void sendData(String msg0) throws IOException { msg0 += "\n"; mmOutputStream.write(msg0.getBytes()); statusConnect.setText("Data Sent"); }

IntentFilter filter = new IntentFilter();//Listing 9 filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_STARTED); filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED); filter.addAction(BluetoothDevice.ACTION_FOUND); filter.addAction(BluetoothAdapter.ACTION_STATE_CHANGED); filter.addAction(BluetoothDevice.ACTION_BOND_STATE_CHANGED);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

72

4.2.4 Hasil Komunikasi Aplikasi Kontroler Lengan Robot

Pada sub bab ini akan dibahas mengenai data komunikasi antara Arduio sebagai

penerima data dan Aplikasi Kontroler Lengan Robot sebagai pengirim data. Proses

penerimaan data dari Aplikasi Kontroler Lengan Robot dikerjakan oleh Arduino dengan

listing program sebagai berikut.

//Listing 10 private final BroadcastReceiver Receiver = new BroadcastReceiver() public void onReceive(Context context, Intent intent) { String data = intent.getAction(); if (BluetoothAdapter.ACTION_STATE_CHANGED.equals(data)) { final int state = intent.getIntExtra( BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR); if (state == BluetoothAdapter.STATE_ON) { showToast("Enabled BT"); statusOn(); } else if (state == BluetoothAdapter.STATE_OFF) { showToast("Disabled BT"); statusOff(); }

} else if (BluetoothAdapter.ACTION_DISCOVERY_STARTED.equals(data)) { objekProgressDlg.show(); } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(data)) { objekProgressDlg.dismiss(); showToast("Proses Scanning Selesai"); } else if (BluetoothDevice.ACTION_FOUND.equals(data)) {

BluetoothDevice device = (BluetoothDevice) intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);

showToast("Found device " + device.getName()); statusScan.setText(device.getName()); deviceList.add(device);

//Listing 11 baca data void baca_data(){ while (BTSerial.available() > 0) { nilai_sekarang(); int inChar = BTSerial.read(); if (isDigit(inChar)) { data_awal1 += (char)inChar; }

//Listing 11 penggabungan data if ((inChar)) { data_awal2 += (char)inChar; } }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

73

Listing program di atas merupakan proses pembacaan data yang diterima oleh

Bluetooth HC-05 dari Aplikasi Kontroler Lengan Robot. Fungsi isDigit digunakan

untuk mendeteksi data berupa angka dan fungsi inChar digunakan untuk menampung

semua data termasuk header data.

Program di atas akan menerima data melalui BTSerial.read() yang kemudian

untuk masing-masing byte data di uraikan berdasarkan header data dan nilai sudut yang

dikirim dari Aplikasi Kontroler Lengan Robot. Jika header data berupa karakter „a‟

maka nilai sudut ditujukan untuk motor servo base. Jika header data berupa karakter „b‟

maka nilai sudut ditujukan untuk motor servo shoulder . Jika header data berupa

karakter „c‟ maka nilai sudut ditujukan untuk motor servo elbow. Jika header data

berupa karakter „g‟ maka nilai sudut ditujukan untuk motor servo gripper .Setelah data

diuraikan, dilakukan penggabungan data dan data ditampilkan melalui serial monitor

yang terdapat pada IDE Arduino. Program penerimaan data juga dapat mengatasi

pemberian masukan yang terlalu cepat terhadap motor servo. Program akan membuat

motor servo tidak terinterupsi oleh perintah selanjutnya sebelum motor servo telah

// Listing 12 if (inChar=='\n'){ Serial.println(); Serial.print("Nilai Sudut: "); Serial.println(data_awal1.toInt()); Serial.print("Data yang dikirim dari Android: "); Serial.println(data_awal2); nilai_derajat=data_awal1.toInt(); char header_data=data_awal2.charAt(0); if(header_data=='a'){ Serial.println("Data terdeteksi untuk motor BASE"); nilai_derajat_base=nilai_derajat; } else if(header_data=='b'){ Serial.println("Data terdeteksi untuk motor SHOULDER"); nilai_derajat_shoulder=nilai_derajat; } else if(header_data=='c'){ Serial.println("Data terdeteksi untuk motor ELBOW"); nilai_derajat_elbow=nilai_derajat; } else if(header_data=='g'){ Serial.println("Data terdeteksi untuk motor GRIPPER"); nilai_derajat_gripper=nilai_derajat; } } } }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

74

sampai pada derajat yang diinginkan sebelumnya. Hasil dari pengiriman dan

penerimaan data Aplikasi Kontroler Lengan Robot ditunjukkan oleh tabel 4.5 di bawah

ini.

Tabel 4.5 Pengiriman dan penerimaan data.

Pengiriman

ke

Aplikasi

(Pengirim)

Arduino

(Penerima)

Lengan yang

digerakkan

Nilai sudut

(derajat)

1 a45 a45 Base 45

2 a115 a115 Base 115

3 a105 a105 Base 105

4 a60 a60 Base 60

5 a90 a90 Base 90

6 b110 b110 Shoulder 110

7 b45 b45 Shoulder 45

8 b75 b75 Shoulder 75

9 b85 b85 Shoulder 85

10 b90 b90 Shoulder 90

11 c80 c80 Elbow 80

12 c110 c110 Elbow 110

13 c60 c60 Elbow 60

14 c115 c115 Elbow 115

15 c90 c90 Elbow 90

16 g80 g80 Gripper 80

17 g70 g70 Gripper 70

18 g40 g40 Gripper 40

19 g60 g60 Gripper 60

20 g90 g90 Gripper 90

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

75

Data yang diterima oleh Arduino ditampilkan melalui serial monitor yang

ditunjukkan oleh gambar 4.18. di bawah ini.

Gambar 4.18. Tampilan data melalui serial monitor.

Dari data percobaan, diketahui bahwa sistem pengiriman dan penerimaan data

antara Aplikasi Kontroler Lengan Robot dan Arduino berjalan dengan baik dan

mempunyai tingkat keberhasilan 100%. Jika terdapat kesalahan pada pemberian nilai

sudut motor servo, maka akan ditampilkan peringatan “Sudut tidak valid” pada serial

monitor Arduino. Hal tersebut menandakan bahwa terjadi kesalahan pemberian nilai

sudut servo yang tidak sesuai daerah kerja lengan robot. Tampilan peringatan pada

serial monitor Arduino ditunjukkan oleh gambar 4.19 berikut ini.

Gambar 4.19. Tampilan kesalahan sudut pada serial monitor.

Jarak yang mampu dijangkau oleh modul Bluetooth HC-05 adalah sekitar 15

meter. Setelah jarak melebihi 15 meter, maka Aplikasi Kontroler Lengan Robot tidak

mampu memberikan perintah kepada Blutooth HC-05.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

76

Jarak yang mampu dijangkau oleh Bluetooth HC-05 ditunjukkan oleh tabel 4.5

sebagai berikut. Proses pengukuran dilakukan ketika modul Bluetooth HC-05 tidak

terhalang oleh tembok ataupun benda lainnya.

Tabel 4.6. Jarak jangkau Bluetooth HC-05.

NO

Jarak (m) Hasil

Diterima Tidak

Diterima

1 1 √

2 2 √

3 3 √

4 4 √

5 5 √

6 6 √

7 7 √

8 8 √

9 9 √

10 10 √

11 11 √

12 12 √

13 13 √

14 14 √

15 15 √

16 16 √

17 17 √

18 18 √

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

77

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil analisa dan pembahasan kontroler lengan robot berbasis smartphone

Android dapat disimpulkan bahwa :

1. Lengan robot memiliki nilai offset sebesar 00-15

0 antara sudut nyata dan sudut

yang dibentuk oleh motor servo. Hal ini dikarenakan pemasangan motor servo

tidak tegak lurus terhadap lengan robot.

2. Pada bagian gripper terjadi hysterisys motion yang mengakibatkan gripper tidak

dapat membuka dan menutup seperti yang seharusnya. Pemberian batas pada

daerah kerja lengan robot berhasil membuat lengan robot bergerak tidak

melebihi daerah kerja.

3. Aplikasi Kontroler Lengan Robot dapat digunakan dengan baik dan memiliki

tingkat keberhasilan 100% dalam hal komunikasi data yang dikirim. Dengan

memanfaatkan data daerah kerja yang dapat dijangkau oleh lengan robot,

Aplikasi Kontroler Lengan Robot mampu mengendalikan lengan robot dengan

baik.

4. Dari hasil pengamatan didapatkan sebuah rumusan perhitungan untuk

menghitung koordinat x dan y yang sesuai dengan desain lengan robot.

5.2 Saran

Dari hasil analisa dan pembahasan kontroler lengan robot berbasis smartphone

Android, saran untuk penelitian selanjutnya adalah :

1. Desain mekanik pada lengan robot disarankan memiliki akurasi dan presisi yang

tinggi. Untuk bagian gripper sebaiknya menggunakan bahan yang keras agar

tidak terjadi hysterysis motion. Perlu adanya pra penelitian untuk dapat

menggunakan gripper dengan baik terkait desain roda gigi yang akan digunakan.

2. User Interface pada Aplikasi Kontroler Lengan Robot lebih baik menggunakan

mode increment dan decrement yang menerapkan fungsi hold atau touch pada

Android.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

78

DAFTAR PUSTAKA

[1] Juliansah Amar, 2014, Perancangan Sistem Kontrol Robot Pemindah Barang

Menggunakan Aplikasi Android Berbasis Arduino Uno, Skripsi Jurusan Sistem

Komputer Universitas Raharja, Tangerang.

[2] Goranssin Andreas dan Ruiz Cuartielles, 2013, Professional Android Open

Accessory Programming with Arduino, John Wiley and Son Inc, Indianapolis.

[3] Meier Roto, 2010, Professional Android 2 Application, John Wiley and Son Inc,

Indianapolis.

[4] Wahana, Komputer, 2010, Cara Mudah Membangun Jaringan Komputer &

Internet, Media kita, Jakarta.

[5] Meier Roto, 2012, Professional Android 4 Application, John Wiley and Son Inc,

Indianapolis.

[6] Dwi Agus Diartono, 2009, Teknologi Bluetooth untuk Layananan Internet pada

Wireless Local Area Network, Jurnal Teknologi Informasi DINAMIK, Semarang Vol.

XIV, pp. 70-78. (Januari 2009).

[7] Price Ron, 2007, Fundamental of Wireless Networking, McGraw-Hill Companies

Inc, New York, Amerika Serikat.

[8] Feri Djuandi, 2011, Pengenalan Arduino.E-book. www.tobuku.com.

[9] Datasheet modul Bluetooth HC-05, Guangzhou HC Information Technology Co.

[10] Datasheet Micocontroller ATMega 328-P, Atmel.

[11] Pitowarno Endra, 2006, Desain, Kontrol, dan Kecerdasan Buatan, Andi Offset,

Yogyakarta.

[12] www.computacaonaescola.ufsc.br diakses pada tanggal 15 februari 2015 jam 18.35

WIB.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

LAMPIRAN 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L1

Lampiran Program Java Android Yoel Anggun Wiratama Putra

----------------------------------------------------------------------------------

package com.yowell.kontrolerlenganrobot; import java.io.IOException; import java.io.OutputStream; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.UUID; import android.app.Activity; import android.app.ProgressDialog; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothSocket; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.IntentFilter; import android.graphics.Color; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.SeekBar; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { int progress_value_shoulder; int plus_shoulder; int hasil_progress_value_shoulder; int progress_value_elbow; int plus_elbow; int hasil_progress_value_elbow; int penambah_elbow=30; int penambah_shoulder=30; int progress_value_gripper; int plus_gripper; int hasil_progress_value_gripper; // initialisasi objek interface int OPEN_BLUETOOTH = 0; private Button enableBT; private Button pairedBT; private Button scanBT; private Button connectBT; private TextView statusEnable; private TextView statusPaired; private TextView statusScan; private TextView statusConnect; private TextView teksBase; private TextView teksShoulder; private TextView teksElbow; private TextView teksGripper;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L2

private SeekBar seekBarBase; private SeekBar seekBarShoulder; private SeekBar seekBarElbow; private SeekBar seekBarGripper; private BluetoothAdapter btAdapter; private ProgressDialog objekProgressDlg;

private ArrayList<BluetoothDevice> deviceList = new ArrayList<BluetoothDevice>();

// private BluetoothDevice device; private BluetoothDevice USD_1146; private BluetoothSocket mmSocket; private OutputStream mmOutputStream; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); enableBT=(Button)findViewById(R.id.button1); scanBT=(Button)findViewById(R.id.button3); pairedBT=(Button)findViewById(R.id.button2); connectBT=(Button)findViewById(R.id.button4); //teks view statusEnable=(TextView)findViewById(R.id.textView1); statusPaired=(TextView)findViewById(R.id.textView2); statusScan=(TextView)findViewById(R.id.textView3); statusConnect=(TextView)findViewById(R.id.textView4);

btAdapter = BluetoothAdapter.getDefaultAdapter(); enableBT.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if (btAdapter.isEnabled()) { btAdapter.disable(); statusOff(); } else if (!btAdapter.isEnabled()) { Intent openBT = new Intent( BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(openBT, OPEN_BLUETOOTH); } else if (btAdapter == null) { showToast("Tidak support Bluetooth"); }

}

}); scanBT.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub btAdapter.startDiscovery();

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 100: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L3

objekProgressDlg.show(); } }); pairedBT.setOnClickListener(new OnClickListener() { private String address = "20:14:11:28:24:28"; BluetoothDevice prosesPairing = btAdapter.getRemoteDevice(address);

// Set<BluetoothDevice> listPairing=btAdapter.getBondedDevices();

@Override public void onClick(View arg0) { // if (listPairing.contains(prosesPairing)){ // showToast("USD_115114046 sudah terpaired"); // statusPaired.setText("to USD_115114046"); // } if (prosesPairing.getBondState() == BluetoothDevice.BOND_BONDED) { unpairDevice(prosesPairing); USD_1146 = prosesPairing; } else { pairDevice(prosesPairing); } } }); connectBT.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { try { openBT(); gerakSeekBar(); //ditambahin nilai yang mengirimkan bahwa plus shoulder dan plus elbow nilai default 90 } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } private void gerakSeekBar() { // TODO Auto-generated method stub seekBarBase(); seekBarShoulder(); seekBarElbow(); seekBarGripper(); } });

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 101: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L4

// membuat progress dialog objekProgressDlg = new ProgressDialog(this); objekProgressDlg.setMessage("Mencari perangkat aktif..."); objekProgressDlg.setCancelable(false); objekProgressDlg.setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); btAdapter.cancelDiscovery(); } }); IntentFilter filter = new IntentFilter(); filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_STARTED); filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED); filter.addAction(BluetoothDevice.ACTION_FOUND); filter.addAction(BluetoothAdapter.ACTION_STATE_CHANGED); filter.addAction(BluetoothDevice.ACTION_BOND_STATE_CHANGED); registerReceiver(Receiver, filter); if (btAdapter.isEnabled()) { statusOn(); } else { statusOff(); } //ini untuk mengecek saja //plus_shoulder=90; // plus_elbow=90; //seekBarElbow(); //seekBarShoulder(); }

private void seekBarElbow() {

seekBarElbow = (SeekBar) findViewById(R.id.seekBar3);

seekBarElbow.setMax(25);

seekBarElbow.setProgress(0);

teksElbow = (TextView) findViewById(R.id.textView15);

seekBarElbow

.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

@Override

public void onStopTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

Toast.makeText(getBaseContext(), "STOP",

Toast.LENGTH_LONG).show();

teksElbow.setText("c" + plus_elbow);

String hasil_akhir = ("c" + plus_elbow);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 102: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L5

// MEMBATASI DAERAH KERJA

//nilai minimal elbow masih 30 drajat

//hasil modifikasi

try { sendData(hasil_akhir); } catch (IOException e)

{ // TODO Auto-generated catch block

e.printStackTrace(); }

}

@Override

public void onStartTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

Toast.makeText(getBaseContext(), "START",

Toast.LENGTH_LONG).show();

}

@Override

public void onProgressChanged(SeekBar seekBar,

int progress, boolean arg2) {

// TODO Auto-generated method stub

progress_value_elbow = progress;// ELBOW MINIMAL SUDUT

// ADALAH 30 derajat

hasil_progress_value_elbow = progress_value_elbow * 5;// UNTUK

// MEMBUAT

// AKURASI

// 5

// DRAJAT

plus_elbow = 30+hasil_progress_value_elbow;// HASIL

// YANG

// TERTAMPIL

Toast.makeText(getBaseContext(), "progrees",

Toast.LENGTH_LONG).show();

}

});

}

private void seekBarGripper() {

// TODO Auto-generated method stub

seekBarGripper = (SeekBar) findViewById(R.id.seekBar4);

seekBarGripper.setMax(10);

seekBarGripper.setProgress(0);

teksGripper = (TextView) findViewById(R.id.textView16);

seekBarGripper.setOnSeekBarChangeListener(new

SeekBar.OnSeekBarChangeListener() {

int progress_value;

@Override

public void onStopTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

Toast.makeText(getBaseContext(), "STOP",

Toast.LENGTH_LONG).show();

teksGripper.setText("g" + plus_gripper);

String hasil_akhir = ("g" + plus_gripper);

try {

sendData(hasil_akhir);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 103: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L6

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

@Override

public void onStartTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

Toast.makeText(getBaseContext(), "START",

Toast.LENGTH_LONG).show();

}

@Override

public void onProgressChanged(SeekBar seekBar,

int progress, boolean arg2) {

// TODO Auto-generated method stub

progress_value_gripper = progress;

hasil_progress_value_gripper = progress_value_gripper * 5;

plus_gripper = 40+hasil_progress_value_gripper;

Toast.makeText(getBaseContext(), "progrees",

Toast.LENGTH_LONG).show();

}

});

}

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 104: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

LAMPIRAN 2

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 105: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L7

Lampiran Program Java Splash Activity Android Yoel Anggun Wiratama Putra

----------------------------------------------------------------------------------

package com.yowell.kontrolerlenganrobot; import android.app.Activity; import android.content.Intent; import android.graphics.Color; import android.media.MediaPlayer;

import android.os.Bundle;

import android.widget.ImageView;

import android.widget.TextView;

public class Splash_Activity extends Activity{

MediaPlayer Coc;

ImageView robot;

TextView judul;

TextView bawahjudul;

TextView bawahjudul1;

TextView bawahjudul2;

TextView bawahjudul3;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

Coc=MediaPlayer.create(Splash_Activity.this, R.raw.coc);

Coc.start();

setContentView(R.layout.splash);

judul=(TextView)findViewById(R.id.textView3);

judul.setTextColor(Color.BLUE);

bawahjudul=(TextView)findViewById(R.id.textView1);

bawahjudul.setTextColor(Color.BLUE);

bawahjudul1=(TextView)findViewById(R.id.textView2);

bawahjudul1.setTextColor(Color.BLUE);

bawahjudul2=(TextView)findViewById(R.id.textView4);

bawahjudul2.setTextColor(Color.BLUE);

bawahjudul3=(TextView)findViewById(R.id.textView5);

bawahjudul3.setTextColor(Color.BLUE);

//robot=(ImageView)findViewById(R.id.imageView1);

Thread th = new Thread(){

public void run(){

try {

sleep(5000);

}catch (Exception e) {

// TODO: handle exception

}finally {

Intent i = new Intent(Splash_Activity.this, MainActivity.class);

startActivity(i);

}

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 106: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L8

}

};

th.start();

}

protected void onPause(){

super.onPause();

finish();

}

}

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 107: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

LAMPIRAN 3

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 108: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L9

Lampiran Program Xml GUI Android Yoel Anggun Wiratama Putra

----------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <Button android:id="@+id/button1" android:layout_width="100dp" android:layout_height="wrap_content" android:text="Enable"/> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/button1" android:layout_alignBottom="@+id/button1" android:layout_alignParentRight="true" android:layout_marginRight="46dp" android:text="ON/OFF" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <Button android:id="@+id/button2" android:layout_width="100dp" android:layout_height="wrap_content" android:enabled="false" android:text="Paired"/> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 109: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L10

android:layout_alignBaseline="@+id/button2" android:layout_alignBottom="@+id/button2" android:layout_alignParentRight="true" android:layout_marginRight="46dp" android:text="to Device_Name" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <Button android:id="@+id/button3" android:layout_width="100dp" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:enabled="false" android:text="Scan" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/button3" android:layout_alignBottom="@+id/button3" android:layout_alignParentRight="true" android:layout_marginRight="48dp" android:text="Devices Scanned" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <Button android:id="@+id/button4" android:layout_width="100dp" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:enabled="false" android:text="Connect" /> <TextView android:id="@+id/textView4" android:layout_width="wrap_content"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 110: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L11

android:layout_height="wrap_content" android:layout_alignBaseline="@+id/button4" android:layout_alignBottom="@+id/button4" android:layout_alignParentRight="true" android:layout_marginRight="50dp" android:text="Not Connected" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout> //untuk desain motor <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <TextView android:id="@+id/textView12" android:layout_width="match_parent" android:layout_height="40dp" android:layout_marginBottom="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:paddingRight="5dp" android:paddingTop="1dp" android:text="Kontrol Motor Servo" android:gravity="center" android:textAppearance="?android:attr/textAppearanceLarge" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingBottom="5dp" android:paddingLeft="10dp" android:paddingRight="5dp"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 111: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L12

android:paddingTop="5dp" android:text="Base" android:textAppearance="?android:attr/textAppearanceLarge" /> <SeekBar android:id="@+id/seekBar1" android:layout_width="200dp" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView5" android:layout_alignParentRight="true" android:enabled="false" /> <TextView android:id="@+id/textView13" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/textView5" android:layout_alignBottom="@+id/textView5" android:layout_toLeftOf="@+id/seekBar1" android:text="0" android:layout_marginRight="10dp" android:textAppearance="?android:attr/textAppearanceSmall" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <TextView android:id="@+id/textView6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Shoulder" android:textAppearance="?android:attr/textAppearanceLarge" android:paddingLeft="10dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp"/> <SeekBar android:id="@+id/seekBar2" android:layout_width="200dp" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView6" android:layout_alignParentRight="true" /> <TextView android:id="@+id/textView14" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/textView6" android:layout_alignBottom="@+id/textView6" android:layout_marginRight="10dp"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 112: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L13

android:layout_toLeftOf="@+id/seekBar2" android:text="0" android:textAppearance="?android:attr/textAppearanceSmall" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <TextView android:id="@+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Elbow" android:textAppearance="?android:attr/textAppearanceLarge" android:paddingLeft="10dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp"/> <SeekBar android:id="@+id/seekBar3" android:layout_width="200dp" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView7" android:layout_alignParentRight="true" /> <TextView android:id="@+id/textView15" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/textView7" android:layout_alignBottom="@+id/textView7" android:layout_toLeftOf="@+id/seekBar3" android:text="0" android:layout_marginRight="10dp" android:textAppearance="?android:attr/textAppearanceSmall" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" > <TextView android:id="@+id/textView8"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 113: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L14

android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingBottom="5dp" android:paddingLeft="10dp" android:paddingRight="5dp" android:paddingTop="5dp" android:text="Gripper" android:textAppearance="?android:attr/textAppearanceLarge" /> <SeekBar android:id="@+id/seekBar4" android:layout_width="200dp" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView8" android:layout_alignParentRight="true" /> <TextView android:id="@+id/textView16" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toLeftOf="@+id/seekBar4" android:text="0" android:layout_marginRight="10dp" android:textAppearance="?android:attr/textAppearanceSmall" /> </RelativeLayout> //tulisan dibawah sendiri <TextView android:id="@+id/textView9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Yoel Anggun Wiratama Putra" android:layout_gravity="center_horizontal" android:layout_marginTop="20dp" android:textAppearance="?android:attr/textAppearanceMedium" /> <TextView android:id="@+id/textView10" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Teknik Elektro" android:layout_gravity="center_horizontal" android:textAppearance="?android:attr/textAppearanceMedium" /> <TextView android:id="@+id/textView11" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Universitas Sanata Dharma" android:layout_gravity="center_horizontal" android:textAppearance="?android:attr/textAppearanceMedium" /> </LinearLayout> </LinearLayout>

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 114: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L15

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/background"> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="76dp" android:text="YOEL ANGGUN WIRATAMA PUTRA" android:textAppearance="?android:attr/textAppearanceMedium" /> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:src="@drawable/splashpic" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/imageView1" android:layout_centerHorizontal="true" android:layout_marginBottom="32dp" android:text="TEKNIK ELEKTRO" android:textAppearance="?android:attr/textAppearanceMedium" /> <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/textView2" android:layout_centerHorizontal="true" android:layout_marginTop="22dp" android:text="UNIVERSITAS SANATA DHARMA" android:textAppearance="?android:attr/textAppearanceMedium" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView2" android:layout_centerHorizontal="true" android:layout_marginBottom="17dp" android:text="TUGAS AKHIR" android:textAppearance="?android:attr/textAppearanceMedium" /> <TextView android:id="@+id/textView4"

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 115: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L16

android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="31dp" android:text="115114046" android:textAppearance="?android:attr/textAppearanceMedium" /> </RelativeLayout>

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 116: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

LAMPIRAN 4

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 117: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L17

HC Serial Bluetooth Products

User Instructional Manual

1 Introduction

HC serial Bluetooth products consist of Bluetooth serial interface module and Bluetooth adapter, such

as: (1) Bluetooth serial interface module: Industrial level: HC-03, HC-04(HC-04-M, HC-04-S) Civil level: HC-05, HC-06(HC-06-M, HC-06-S)

HC-05-D, HC-06-D (with baseboard, for test and evaluation) (2) Bluetooth adapter:

HC-M4 HC-M6

This document mainly introduces Bluetooth serial module. Bluetooth serial module is used for

converting serial port to Bluetooth. These modules have two modes: master and slaver device. The

device named after even number is defined to be master or slaver when out of factory and can‟t be

changed to the other mode. But for the device named after odd number, users can set the work mode

(master or slaver) of the device by AT commands.

HC-04 specifically includes: Master device: HC-04-M, M=master Slave device: HC-04-S, S=slaver

The default situation of HC-04 is slave mode. If you need master mode, please state it clearly or

place an order for HC-O4-M directly.The naming rule of HC-06 is same.

When HC-03 and HC-05 are out of factory, one part of parameters are set for activating the device.

The work mode is not set, since user can set the mode of HC-03, HC-05 as they want.

The main function of Bluetooth serial module is replacing the serial port line, such as:

1. There are two MCUs want to communicate with each other. One connects to Bluetooth master

device while the other one connects to slave device. Their connection can be built once the pair is made.

This Bluetooth connection is equivalently liked to a serial port line connection including RXD, TXD

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 118: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L18

signals. And they can use the Bluetooth serial module to communicate with each other.

2. When MCU has Bluetooth salve module, it can communicate with Bluetooth adapter of

computers and smart phones. Then there is a virtual communicable serial port line between MCU and

computer or smart phone.

3. The Bluetooth devices in the market mostly are salve devices, such as Bluetooth printer,

Bluetooth GPS. So, we can use master module to make pair and communicate with them.

Bluetooth Serial module‟s operation doesn‟t need drive, and can communicate with the other

Bluetooth device who has the serial. But communication between two Bluetooth modules requires at

least two conditions: (1) The communication must be between master and slave.

(2) The password must be correct.

However, the two conditions are not sufficient conditions. There are also some other conditions

basing on different device model. Detailed information is provided in the following chapters.

In the following chapters, we will repeatedly refer to Linvor‟s (Formerly known as Guangzhou HC

Information Technology Co., Ltd.) material and photos.

2 Selection of the Module

The Bluetooth serial module named even number is compatible with each other; The salve module

is also compatible with each other. In other word, the function of HC-04 and HC-06, HC-03 and HC-05

are mutually compatible with each other. HC-04 and HC-06 are former version that user can‟t reset the

work mode (master or slave). And only a few AT commands and functions can be used, like reset the

name of Bluetooth (only the slaver), reset the password, reset the baud rate and check the version

number. The command set of HC-03 and HC-05 are more flexible than HC-04 and HC-06‟s. Generally,

the Bluetooth of HC-03/HC-05 is recommended for the user.

Here are the main factory parameters of HC-05 and HC-06. Pay attention to the differences:

HC-05 HC-06

Master and slave mode can be switched Master and slave mode can‟t be switched

Bluetooth name: HC-05 Bluetooth name: linvor

Password:1234 Password:1234

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 119: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L19

Master role: have no function to remember the last

paired salve device. It can be made paired to any

slave device. In other words, just set Master role: have paired memory to remember

AT+CMODE=1 when out of factory. If you want last slave device and only make pair with that

HC-05 to remember the last paired slave device device unless KEY (PIN26) is triggered by high

address like HC-06, you can set AT+CMODE=0 level. The default connected PIN26 is low level.

after paired with the other device. Please refer the

command set of HC-05 for the details.

Pairing: The master device can not only make pair

with the specified Bluetooth address, like

cell-phone, computer adapter, slave device, but Pairing: Master device search and make pair with

also can search and make pair with the slave the slave device automatically.

device automatically. Typical method: On some specific conditions,

Typical method: On some specific conditions, master and slave device can make pair with each

master device and slave device can make pair with other automatically.

each other automatically. (This is the default

method.)

Multi-device communication: There is only point Multi-device communication: There is only point

to point communication for modules, but the to point communication for modules, but the

adapter can communicate with multi-modules. adapter can communicate with multi-modules.

AT Mode 1: After power on, it can enter the AT

mode by triggering PIN34 with high level. Then

the baud rate for setting AT command is equal to

the baud rate in communication, for example: AT Mode: Before paired, it is at the AT mode.

9600.

After paired it‟s at transparent communication.

AT mode 2: First set the PIN34 as high level, or

while on powering the module set the PIN34 to be

high level, the Baud rate used here is 38400 bps.

Notice: All AT commands can be operated only

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 120: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L20

when the PIN34 is at high level. Only part of the

AT commands can be used if PIN34 doesn‟t keep

the high level after entering to the AT mode.

Through this kind of designing, set permissions for

the module is left to the user‟s external control

circuit, that makes the application of HC-05 is very

flexible.

During the process of communication, the module

can enter to AT mode by setting PIN34 to be high

level. By releasing PIN34, the module can go back During the communication mode, the module

to communication mode in which user can inquire can‟t enter to the AT mode.

some information dynamically. For example, to

inquire the pairing is finished or not.

Default communication baud rate: 9600, Default communication baud rate: 9600,

4800-1.3M are settable. 1200-1.3M are settable.

KEY: PIN34, for entering to the AT mode. KEY: PIN26, for master abandons memory.

LED1: PIN31, indicator of Bluetooth mode. Slow

flicker (1Hz) represents entering to the AT mode2,

while fast flicker(2Hz) represents entering to the LED: The flicker frequency of slave device is

AT mode1 or during the communication pairing. 102ms. If master device already has the memory

Double flicker per second represents pairing is of slave device, the flicker frequency during the

finished, the module is communicable. pairing is 110ms/s. If not, or master has emptied

LED2: PIN32, before pairing is at low level, after the memory, then the flicker frequency is 750m/s.

the pairing is at high level. After pairing, no matter it‟s a master or slave

The using method of master and slaver‟s indicator device, the LED PIN is at high level.

is the same. Notice: The LED PIN connects to LED+ PIN.

Notice: The PIN of LED1 and LED2 are connected

with LED+.

Consumption: During the pairing, the current is Consumption: During the pairing, the current is

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 121: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L21

fluctuant in the range of 30-40mA. The mean fluctuant in the range of 30-40 m. The mean

current is about 25mA. After paring, no matter current is about 25mA. After paring, no matter

processing communication or not, the current is processing communication or not, the current is

8mA. There is no sleep mode. This parameter is 8mA. There is no sleep mode. This parameter is

same for all the Bluetooth modules. same for all the Bluetooth modules.

Reset: PIN11, active if it‟s input low level. It can Reset: PIN11, active if it‟s input low level. It can

be suspended in using. be suspended in using.

Level: Civil Level: Civil

The table above that includes main parameters of two serial modules is a reference for user

selection.

HC-03/HC-05 serial product is recommended.

3. Information of Package

The PIN definitions of HC-03, HC-04, HC-05 and HC-06 are kind of different, but the package size

is the same: 28mm * 15mm * 2.35mm.

The following figure 1 is a picture of HC-06 and its main PINs. Figure 2 is a picture of HC-05 and

its main PINs. Figure 3 is a comparative picture with one coin. Figure 4 is their package size information.

When user designs the circuit, you can visit the website of Guangzhou HC Information Technology Co.,

Ltd. (www.wavesen.com) to download the package library of protle version.

Figure 1 HC-06 Figure 2 HC-05

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 122: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L22

Figure 3 Comparative picture with one coin

Figure 4 Package size information

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 123: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L23

4. The Using and Testing Method of HC-06 for the First Time

This chapter will introduce the using method of HC-06 in detail. User can test the module

according to this chapter when he or she uses the module at the first time.

PINs description:

PIN1 UART_TXD , TTL/CMOS level, UART Data output

PIN2 UART_RXD, TTL/COMS level, s UART Data input

PIN11 RESET, the reset PIN of module, inputting low level can reset the module,

when the module is in using, this PIN can connect to air.

PIN12 VCC, voltage supply for logic, the standard voltage is 3.3V, and can work

at 3.0-4.2V

PIN13 GND

PIN22 GND

LED, working mode indicator

Slave device: Before paired, this PIN outputs the period of 102ms square

wave. After paired, this PIN outputs high level.

PIN24 Master device: On the condition of having no memory of pairing with a

slave device, this PIN outputs the period of 110ms square wave. On the

condition of having the memory of pairing with a slave device, this PIN

outputs the period of 750ms square wave. After paired, this PIN outputs

high level.

For master device, this PIN is used for emptying information about

PIN26 pairing. After emptying, master device will search slaver randomly, then

remember the address of the new got slave device. In the next power on,

master device will only search this address.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 124: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L24

(1) The circuit 1 (connect the module to 3.3V serial port of MCU) is showed by figure 5.

Figure 5 The circuit 1

In principle, HC-06 can work when UART_TXD, UART_RXD, VCC and GND are connected.

However, for better testing results, connecting LED and KEY are recommended (when testing the

master).

Where, the 3.3V TXD of MCU connects to HC-06‟s UART_RXD, the 3.3V RXD of MCU connects

to HC-06‟s UART_TXD, and 3.3V power and GND should be connected. Then the minimum system is

finished.

Note that, the PIN2:UART_RXD of Bluetooth module has no pull-up resistor. If the MCU TXD

doesn‟t have pull-up function, then user should add a pull-up resistor to the UART_RXD. It may be easy

to be ignored.

If there are two MCU which connect to master and slave device respectively, then before

paired(LED will flicker) user can send AT commands by serial port when the system is power on. Please

refer to HC-04 and HC-06‟s data sheet for detailed commands. In the last chapter, the command set will

be introduced. Please pay attention to that the command of HC-04/HC-06 doesn‟t have terminator. For

example, consider the call command, sending out AT is already enough, need not add the CRLF

(carriage return line feed).

If the LED is constant lighting, it indicates the pairing is finished. The two MCUs can communicate

with each other by serial port. User can think there is a serial port line between two MCUs.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 125: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L25

(2) The circuit 2 (connect the module to 5V serial port of MCU) is showed by figure 6.

Figure 6 is the block diagram of Bluetooth baseboard. This kind of circuit can amplify Bluetooth

module‟s operating voltage to 3.1-6.5V. In this diagram, the J1 port can not only be connected with

MCU system of 3.3V and 5V, but also can be connected with computer serial port.

Figure 6 The circuit 2

(3) AT command test

Before paired, the mode of HC-04 and HC-06 are AT mode. On the condition of 9600N81, OK will be received when user send the two letters AT. Please refer to the

last chapter of datasheet for other commands of HC-06. Please pay attention to that sending out AT is

already enough, need not add the CRLF (carriage return line feed).

The command set of Version V1.4 doesn‟t include parity. The version V1.5 and its later version

have parity function. Moreover, there are three more commands of V1.5 than V1.4. They are: No parity (default) AT+PN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 126: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L26

Odd parity AT+PO Even parity AT+PE

Do not let the sending frequency of AT command of HC-06 exceed 1Hz, because the command of

HC-06 end or not is determined by the time interval.

(4) Pairing with adapter

User can refer to the download center of the company‟s website for “The Introduction of IVT” that

introduces the Bluetooth module makes pair with computer adapter. That document taking HC-06-D for

example introduces how the serial module makes pair with the adapter. That method is like to make pair

with cell-phone. But the difference is that cell-phone need a third-party communication software to help.

It‟s liked the kind of PC serial helper of and the hyper terminal. A software named “PDA serial helper”

provided by our company is suitable for WM system. It has been proven that this serial module is

supported by many smart phone systems‟ Bluetooth, such as, sybian, android, windows mobile and etc.

(5) Pairing introduction

HC-06 master device has no memory before the first use. If the password is correct, the mater

device will make pair with the slave device automatically in the first use. In the following use, the

master device will remember the Bluetooth address of the last paired device and search it. The searching

won‟t stop until the device is found. If master device‟s PIN26 is input high level, the device will lose the

memory. In that occasion, it‟ll search the proper slave device like the first use. Based on this function,

the master device can be set to make pair with the specified address or any address by user.

(6) Reset new password introduction

User can set a new password for the HC-06 through AT+PINxxxx command. But the new password

will become active after discharged all the energy of the module. If the module still has any energy, the old

one is still active. In the test, for discharging all the system energy and activating the new password, we can

connect the power supply PIN with GND about 20 seconds after the power is cut off. Generally, shutting

down the device for 30 minutes also can discharge the energy, if there is no peripheral circuit helps discharge

energy. User should make the proper way according to the specific situation.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 127: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L27

(7) Name introduction

If the device has no name, it‟s better that user doesn‟t try to change the master device name. The

name should be limited in 20 characters.

Summary: The character of HC-06: 1 not many command 2 easy for application 3 low price. It‟s

good for some specific application. HC-04 is very similar with HC-06. Their only one difference is HC-

04 is for industry, HC-06 is for civil. Except this, they don‟t have difference. The following reference about HC-04 and HC-06 can be downloaded from company website

www.wavesen.com:

HC-06 datasheet .pdf (the command set introduction is included)

HC-04 datasheet .pdf (the command set introduction is included)

IVT BlueSoleil-2.6 (IVT Bluetooth drive test version)

Bluetooth FAQ.pdf

HC-04-D(HD-06-D)datasheet(English).pdf

HC-06-AT command software (test version) (some commands in V1.5 is not supported by V1.4)

PCB package of Bluetooth key modules (PCB package lib in protel)

IVT software manual.pdf (introduce how to operate the modern and make pair

with Bluetooth module)

PDA serial test helper.exe (serial helper used for WM system)

5 manual for the first use of HC-05

This chapter will introduce how to test and use the HC-05 if it‟s the first time for user to operate it. (1) PINs description

PIN1 UART_TXD, Bluetooth serial signal sending PIN, can connect with MCU‟s RXD PIN

PIN2 UART_RXD, Bluetooth serial signal receiving PIN, can connect with the MCU‟s TXD PIN,

there is no pull-up resistor in this PIN. But It needs to be added an eternal pull-up resistor.

PIN11 RESET, the reset PIN of module, inputting low level can reset the module, when the module

is in using, this PIN can connect to air.

PIN12 VCC, voltage supply for logic, the standard voltage is 3.3V, and can work at 3.0-4.2V

PIN13 GND

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 128: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L28

LED1, indicator of work mode. Has 3 modes:

When the module is supplied power and PIN34 is input high level, PIN31 output 1Hz square

wave to make the LED flicker slowly. It indicates that the module is at the AT mode, and the

baud rate is 38400;

When the module is supplied power and PIN34 is input low level, PIN31 output 2Hz square

wave to make the LED flicker quickly. It indicates the module is at the pairable mode. If PIN31

PIN34 is input high level, then the module will enter to AT mode, but the output of PIN31 is

still 2Hz square wave.

After the pairing, PIN31 output 2Hz square ware.

Note: if PIN34 keep high level, all the commands in the AT command set can be in

application. Otherwise, if just excite PIN34 with high level but not keep, only some command

can be used. More information has provided at chapter 2.

Output terminal. Before paired, it output low level. Once the pair is finished, it output high PIN32

level.

Mode switch input. If it is input low level, the module is at paired or communication mode. If

it‟s input high level, the module will enter to AT mode. Even though the module is at PIN34

communication, the module can enter to the AT mode if PIN34 is input high level. Then it

will go back to the communication mode if PIN34 is input low level again.

(2) Application circuit 1 (connect to the 3.3V system)

Figure 7 Application 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 129: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L29

(3) Application circuit 2 (connect to 5V serial system or PC serial)

Figure 8 Application circuit 2

(4) AT command test

This chapter introduces some common commands in use. The detail introduction about HC-05

command is in HC-0305 AT command set. Enter to AT mode: Way1: Supply power to module and input high level to PIN34 at the same time, the module will enter to

AT mode with the baud rate-38400. Way2: In the first step, supply power to module; In the second step, input high level to PIN34. Then the

module will enter to AT mode with the baud rate-9600. Way1 is recommended.

Command structure: all command should end up with “\r\n” (Hex: 0X0D X0A) as the terminator. If

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 130: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L30

the serial helper is installed, user just need enter “ENTER” key at the end of command. Reset the master-slave role command: AT+ROLE=0 ----Set the module to be salve mode. The default mode is salve. AT+ROLE=1 ----Set the module to be master mode. Set memory command: AT+CMODE=1

Set the module to make pair with the other random Bluetooth module (Not specified address). The

default is this mode. AT+CMODE=1

Set the module to make pair with the other Bluetooth module (specified address). If set the module

to make pair with random one first, then set the module to make pair with the Bluetooth module has

specified address. Then the module will search the last paired module until the module is found.

Reset the password command AT+PSWD=XXXX Set the module pair password. The password must be 4-bits.

Reset the baud rate AT+UART== <Param>,<Param2>,<Param3>. More information is provided at HC-0305 command set Example: AT+UART=9600,0,0 ----set the baud rate to be 9600N81 Reset the Bluetooth name AT+NAME=XXXXX

Summary:

HC-05 has many functions and covers all functions of HC-06. The above commands are the most

common ones. Besides this, HC-05 leaves lots of space for user. So HC-05 is better than HC-06 and

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 131: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L31

recommended. HC-03 is similar with HC-05. The above introduction also suits HC-03

The following reference about HC-03 and HC-05 can be downloaded from company website www.wavesen.com:

HC-03 datasheet .pdf

HC-05 datasheet .pdf

IVT BlueSoleil-2.6

Bluetooth FAQ.pdf PCB package of Bluetooth key

modules IVT software manual.pdf

PDA serial test helper.exe HC-03/05 Bluetooth serial command set.pdf

6. Ordering information

The website of Guangzhou HC Information Technology Co., Ltd is www.wavesen.com The contact

information is provided at the company website.

Order Way: If you want our product, you can give order to the production center of our company

directly or order it in Taobao. There is a link to Taobao in our company website.

Package: 50 pieces chips in an anti-static blister package. The weight of a module is about 0.9g.

The weight of a package is about 50g.

(PCB package lib in protel)

(introduce how to operate the modern and make pair with

Bluetooth module)

(serial helper used for WM system)

(the command set introduction is included)

(the command set introduction is included)

(IVT Bluetooth drive test version)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 132: KONTROLER LENGAN ROBOT BERBASIS - core.ac.uk · digerakkan dengan 4 buah motor servo. Hastobot memiliki 4 derajat kebebasan. Penelitian ini difokuskan terhadap pembuatan kontroler

L32

Please provide the product‟s model when you

order: HC-04-M HC-04 master module HC-04-S HC-04 slave module HC-

06-M HC-06 master module HC-06-

S HC-06 slave module HC-03

HC-05 HC-03/05 can be preset to be master module or slave module.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI