android bluetooth youl wiratama

Upload: eris-indra-chipyreally

Post on 02-Mar-2018

250 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 Android Bluetooth Youl Wiratama

    1/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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    2/132

    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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    3/132

    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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    4/132

    iii

    HALAMAN PERSETUJUAN

    TUGAS AKHIR

    KONTROLER LENGAN ROBOT BERBASIS

    SMARTPHONEANDROID

    disusun Oleh :

    YOEL ANGGUN WIRATAMA PUTRA

    NIM : 115114046

    Telah disetujui oleh :

    Pembimbing

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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    5/132

    iv

    HALAMAN PENGESAHAN

    TUGAS AKHIR

    KONTROLER LENGAN ROBOT BERBASIS

    SMARTPHONEANDROID

    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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    6/132

    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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    7/132

    vi

    HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

    Aku adalah orang yang bodoh, keras kepala, tidakmenghargai 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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    8/132

    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, mendistribusikansecara 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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    9/132

    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 menggunakanArduino 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 robotHastobot, Bluetooth, aplikasi Android, Arduino, Eclipse.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    10/132

    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 thats 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    11/132

    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 SMARTPHONEANDROID.

    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 yangdengan 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    12/132

    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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    13/132

    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 ............................................................................................................... 11.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 BluetoothProtocol.............................................................................................. 10

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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    14/132

    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 ArduinoBoard............................................................................................................... 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.1Lengan 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.3Desain Lengan Robot .................................................................................................... 36

    3.4Perancangan User Interfacepada Android .................................................................... 42

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

    3.6Perancangan 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.1Bentuk Fisik dan Dimensi Lengan Robot ........................................................... 48

  • 7/26/2019 Android Bluetooth Youl Wiratama

    15/132

    xiv

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

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

    4.2Aplikasi Kontroler Lengan Robot

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

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

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

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

    KESIMPULAN DAN SARAN

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

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

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

    LAMPIRAN

  • 7/26/2019 Android Bluetooth Youl Wiratama

    16/132

    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 ProgramsettingBluetooth HC-05 ................................................. 33

    Gambar 3.4 Status Mode AT CommandHC-05 ........................................................... 34Gambar 3.5 SettingNama Bluetooth HC-05 ................................................................. 34

    Gambar 3.6 Setting PasswordBluetooth HC-05 ........................................................... 34

    Gambar 3.7 Setting RoleBluetooth 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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    17/132

    xvi

    Gambar 3.11 Desain Roda Gigi GripperMe Arm v3 ..................................................... 37

    Gambar 3.12 DesainLinkdanJoint(1)............................................................................ 37

    Gambar 3.13 DesainLinkdanJoint(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 LenganElbow................................................... 40

    Gambar 3.18 Acuan PosisiEnd 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 FormatFrame 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 KeyboardMasukan Kalibrasi .................................................................... 52

    Gambar 4.4 Hasil Kalibrasi Lengan RobotElbow........................................................ 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 LenganElbow danBase........................ 59

    Gambar 4.12 Proses Pengambilan Sudut MotorBase. .................................................... 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 SplashActivity........................................................................................... 65

    Gambar 4.17 MainActivity.............................................................................................. 67

  • 7/26/2019 Android Bluetooth Youl Wiratama

    18/132

    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 FormatFrame karakter a ................................................................................ 45

    Tabel 3.4 FormatFramekarakter 9 ................................................................................ 45

    Tabel 3.5 FormatFramekarakter 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 OffsetElbow 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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    19/132

    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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    20/132

    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. Fasilitassmartphone 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 dengansmartphoneberbasis Android. [2]

    1.2Tujuan

    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 Bluetoothuntuk mengendalikan lengan robot.

    1.3Manfaat

    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.4Batasan Masalah

    Batasan masalah penelitian ini adalah

    1. Desain lengan robot menggunakan desain open source.

    2.

    Menggunakan mikrokontroler Atmega328P berbasis Arduino Uno.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    21/132

    3

    3.

    Menggunakan motor servo sebagai penggerak 4 axis lengan robot.

    4. Kontroler menggunakan smartphone berbasis Android dengan bahasa

    pemrograman Java.

    5.

    Menggunakan Bluetoothsebagai media komunikasi.

    1.5Metodologi 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.

    PenentuanHardware

    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

    darismartphoneAndroid.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    22/132

    4

    BAB 2

    DASAR TEORI

    2.1Sistem 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 lunakuntuk 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 mobileyang menggunakan Android setidaknya telah terinstal aplikasi [3]

    :

    1. Email pengguna.

    2. Pengaturan SMS.

    3.

    Personal Information Managementyang 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    23/132

    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 AndroidMarket.

    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 interfacedidesain ulang,dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization,

  • 7/26/2019 Android Bluetooth Youl Wiratama

    24/132

    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 pasteyang lebih baik, data loggingdan

    warnings, dan kemampuan untuk mengambil screenshot dengan menekan power dan

    volume bersamaan. Selain itu keyboarddan kamus juga mendapat perbaikan. Inovasi-

    inovasi baru di ICS antara lain penggunaan fontRoboto di Android 4.0 Ice Cream

    Sandwich System Bardan Action Bar. adanya Android 4.0 Ice Cream Sandwichvoice

    controlyang 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 searchyang 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

    tabletAsus, yakni Google Nexus 7.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    25/132

    7

    2.1.2 Android Software Stack[3]

    Androidsoftware stack dapat dilihat pada gambar 2.1

    Gambar 2.1. Androidsoftware stack [3].

    Dalam Androidsoftware 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    26/132

    8

    4.

    Application Layer

    Lapisan ini terdapat fungsi dasarsmartphone 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.

    AndroidApplication 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 sebuahsmartphone.

    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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    27/132

    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.2Bluetooth

    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 komunikasiperangkat 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 transceiverdanfull set protocoljaringan 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.

    http://developer.android.com/resources/community-groups.htmlhttp://developer.android.com/resources/community-groups.html
  • 7/26/2019 Android Bluetooth Youl Wiratama

    28/132

    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. Bluetoothstack 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 datadan 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

    mengaturphysical channel dan menyediakan sambungan dari dan ke sebuah

    komunikasi termasuk pengecekan kesalahan, hop selection dan keamanan

    jaringan.

    3. Link Manager Protocol

    Link Manager Protocolmengatur sambungan, konfigurasi dan memberikan

    izin komunikasi Bluetooth. Setelah Link Manager sebuah perangkat

    Bluetooth mendeteksi adanya perangkat Bluetooth lain, makaLink Manager

    Protocol akan membuat sebuah sambungan untuk berkomunikasi denganLink Manager Bluetooth terdeteksi.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    29/132

    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 komunikasiportserial.

    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 sebagaipoint to point. Satu masterdapat 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    30/132

    12

    Gambar 2.3. Jaringan Piconet [7].

    Gambar 2.4. Jaringan Scatternet [7].

  • 7/26/2019 Android Bluetooth Youl Wiratama

    31/132

    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 Bluetoothbiasanya berupa satu IC (Integrated Circuit) chip komunikasi khusus yang telah

    mengimplementasikan protocol Bluetooth. Setidaknya terdapat tiga kelas Bluetooth

    berdasarkan daya outputdari 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 dapatditambahkan 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 perangkatslave.

    Metode lain untuk menghubungkan 2 buah perangkat Bluetoothadalahpairing.

    Pairingmenggunakan 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

    handphoneketikapairing dengan perangkat lain.

    Penyusupan terhadap jaringan Bluetooth disebutBluejacking. Bluejacking dapat

    terjadi karena proses koneksi antar perangkat Bluetoothtidak memakaipairingsehingga

    ilegal userdapat langsung terkoneksi dan melakukan aktivitas komunikasi. Gambar 2.5

    berikut ini merupakan ilustrasi prosespairing.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    32/132

    14

    Gambar 2.5. ProsesPairing [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

    BluetoothSocket , 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 prosespairing saja yang

    dapat dikoneksikan. Namun perlu diketahui tidak setiap mobile Android mempunyai

    koneksi Bluetooth. Android menyediakan kelasuntuk perangkat dan jaringan Bluetooth

    dalam Androidpackagessebagai 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 penerimaaanstream data.

    d. BluetoothServerSocket

    Mendeteksi permintaan koneksi yang terdapat dalam BluetoothSocket.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    33/132

    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 danslave. Tipe modul BT dapatdiketahui 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 mastertidak bisa berubah menjadislave kecuali untuk modul

    seri tertentu yang memungkinkan untuk diubah menggunakanAT Commandyang 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

    melakukanpairing dengan perangkatslave.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 Commandmemungkinkan pengguna untuk memberikanpassword, user name, baud

    rate, parity dan parameter lainnya yang digunakan untuk komunikasi.

    2.3Arduino Board [8]

    Arduino dikatakan sebagai sebuah platform dari physical computing yang

    bersifat opensource. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi

    kombinasi dari hardware, bahasa pemrograman dan IDE (Integrated Development

  • 7/26/2019 Android Bluetooth Youl Wiratama

    34/132

    16

    Environment) yang canggih. IDE adalah sebuah softwareyang 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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    35/132

    17

    3.

    32KB RAM flashmemori 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 bootloaderselesai 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. Portinput/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/outputdigital (0-13)

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

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

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

    diprogram antara 0255, dimana hal itu mewakili nilai tegangan 05V.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    36/132

    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. Q1Kristal (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)

    PortICSP 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 1Mikrokontroler ATmega

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

    RAM.

    7. X1sumber 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 01023, dimana hal itu mewakili nilai tegangan 05V.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    37/132

    19

    2.4Mikrokontroler 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 clock16 MHz.

    4.

    32 KB Flash memory dan pada Arduino memiliki bootloader yang

    menggunakan 2 KB dariflash memorysebagai 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 danparallelism.Instruksiinstruksi 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

    registerpointer 16-bitini 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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    38/132

    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].

  • 7/26/2019 Android Bluetooth Youl Wiratama

    39/132

    21

    ATMega 328 memiliki 3 buahPORT utama yaituPORTB,PORTC, danPORT

    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

    PORTB merupakan jalur data 8 bityang dapat difungsikan sebagai input/output.

    Selain ituPORTB juga dapat memiliki fungsi alternatif seperti di bawah ini.

    1.

    ICP1 (PB0), berfungsi sebagai Timer/Counter1 input capturepin.

    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

    externaluntuk timer.

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

    mikrokontroler.

    2. PORT C

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

    digital. Fungsi alternatifPORTC 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 PORTB danPORT C,PORTDjuga memiliki fungsi alternatif dibawah ini.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    40/132

    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 externaluntuk timer 1 dan

    timer0.

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

    2.5Robot

    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 revoluteyang 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 effectorpada lengan robot.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    41/132

    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 setiapjointdiketahui 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].

  • 7/26/2019 Android Bluetooth Youl Wiratama

    42/132

    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 sebagaiberikut :

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

    b. Robot Lengan 2 DOF

    Gambar 2.14. Robot lengan 2 DOF [11].

  • 7/26/2019 Android Bluetooth Youl Wiratama

    43/132

    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.6Motor Servo (Servo motor) [11]

    2.6.1

    PengertianMotor 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 tidakkontinyu seperti motor DC maupun motor stepper. Walau demikian, untuk beberapa

  • 7/26/2019 Android Bluetooth Youl Wiratama

    44/132

    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. Internalgear.

    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,5milisecond, maka motor akan berputar lebih dekat ke 0. Jika lebih panjang dari 1,5ms,

  • 7/26/2019 Android Bluetooth Youl Wiratama

    45/132

    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 .

  • 7/26/2019 Android Bluetooth Youl Wiratama

    46/132

    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 6V0.17 detik / 600 tanpa

    beban

    Tegangan Kerja 4.8 V6.0 V

    Tipe Gear Metal

    Tipe Motor 3 kutub

    Modulasi Digital

  • 7/26/2019 Android Bluetooth Youl Wiratama

    47/132

    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 elbowdanshoulder. Untuk lengan

    elbowperhitungannya sebagai berikut.

    Diketahui :

  • 7/26/2019 Android Bluetooth Youl Wiratama

    48/132

    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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    49/132

    31

    BAB III

    PERANCANGAN

    3.1Pemodelan 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. Menggunakansmartphone 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

    AndroidModul

    Bluetooth

    Arduino

    Uno

    ServoBase

    Servo

    Shoulder

    Servo

    Elbow

    ServoGripper

    Serial

    Monitor

  • 7/26/2019 Android Bluetooth Youl Wiratama

    50/132

    32

    3.2Perancangan 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 melaluiserial

    monitoryang 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 prosespairing adalah 115114046.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    51/132

    33

    3.

    Modul Bluetooth dikonfigurasikan sebagai perangkatslave.

    4. Menggunakan baud rate38400 dengan 0 stop bitdan no parity.

    Gambar 3.3.Listingprogram untuksetting Bluetooth HC-05.

    Gambar 3.4 sampai dengan gambar 3.9 merupakan masukan AT Commanddari

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

    monitor yang terdapat dalam Arduino IDE.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    52/132

    34

    Gambar 3.4. Status mode AT CommandHC-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 Commandmode.

    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 passwordBluetooth HC-05.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    53/132

    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 olehBluetooth HC-05 adalah OK dan +UART:38400,0,0.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    54/132

    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.3Desain 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 terdapatgripperyang dapat digunakan

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

    Gambar 3.10. Desaingripper Me Arm v3.

    http://www.grabcad/http://www.grabcad/
  • 7/26/2019 Android Bluetooth Youl Wiratama

    55/132

    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 gigigripper Me Arm v3.

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

    3.13 di bawah ini.

    Gambar 3.12 Desain link danjoint (1).

  • 7/26/2019 Android Bluetooth Youl Wiratama

    56/132

    38

    Gambar 3.13 Desain link danjoint (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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    57/132

    39

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

    Perkiraan pergerakan untuk masing-masing motor adalah sebagai berikut :

    1. Motor basebergerak antara 00- 1800.

    2. Motorshoulderbergerak antara 450- 1500.

    3.

    Motor elbowbergerak antara 450- 1500.

    4.

    Motorgripperbergerak antara 300

    - 800

    .

    Titik acuan dalam perhitungan sudut pergerakan lengan robot adalah sebagai

    berikut:

    Gambar 3.16 Acuan sudut pergerakan lenganshoulder.

    Motor Elbow

    Motor Gripper

    Y

    X

  • 7/26/2019 Android Bluetooth Youl Wiratama

    58/132

    40

    Gambar 3.17 Acuan sudut pergerakan lengan elbow.

    Gambar 3.18 Acuan posisi end effector.

    Y

    X

    X

    Y

  • 7/26/2019 Android Bluetooth Youl Wiratama

    59/132

    41

    Gambar 3.19 Acuan lebar cengkramangripper.

    Acuan pada gripper berupa lebar pembukaan mulutgripperdengan satuan cm.

    Motor yang digunakan untukgrippermenggunakan motor servo mikro.

    Cm

  • 7/26/2019 Android Bluetooth Youl Wiratama

    60/132

    42

    3.4Perancangan User I nterf acepada Android

    Desain antarmuka aplikasi Kontroler Lengan Robot dibuat seperti gambar 3.16

    dan 3.17. Antarmuka bertujuan untuk memudahkan pengguna dalam menggerakkanlengan robot.

    Gambar 3.20. Desain antarmuka aplikasi Kontroler Lengan Robot..

    Keterangan desain antarmuka dalam gambar 3.20 adalah sebagai berikut:

    1.

    EnableDitekan untuk mengaktifkan koneksi Bluetooth padasmartphone Android.

    Status 1 merupakan textviewyang akan menginformasikan apakah Bluetooth

    sedang menyala atau mati.

    2. Paired

    Ditekan untuk melakukan proses pairing terhadap perangkat Bluetooth yang

    akan disambungkan. Status 2 merupakan textviewyang akan menginformasikan

    apakah Bluetooth sudahpaired atau belum.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    61/132

    43

    3. Scan

    Ditekan untuk melakukanscanningterhadap 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 bardigunakan dengan cara digeser atau di-drag.

    Gambar 3.21. Desain masukan denganseek bar.

    Keterangan desain antarmuka dalam gambar 3.21 adalah sebagai berikut :

    1. Seek Bar Base

    Digunakan untuk menggerakkan motor servo baselengan robot.

    2. Seek Bar Shoulder

    Digunakan untuk menggerakkan motor servoshoulder lengan robot.

    3. Seek Bar Elbow

    Digunakan untuk menggerakkan motor servo elbowlengan robot.

    4. Seek Bar Gripper

    Digunakan untuk menggerakkan motor servogripperlengan robot.

    Seek Bar

  • 7/26/2019 Android Bluetooth Youl Wiratama

    62/132

    44

    3.5Format Pengiriman Data

    Data akan dikirim menggunakan serial komunikasi UART dengan baud rate

    38400, tanpaparitydan 0stop bit. Gambar 3.22 di bawah ini merupakan format frame

    komunikasi UART secara umum.

    Gambar 3.22 FormatframeUSART.

    Data dari Aplikasi Kontroler Lengan Robot adalah berupa String yang memuat

    data headeryang 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 aSudut pergerakan lengan robot yang

    telah ternormalisasi (derajat).

    a90

    Shoulder bSudut pergerakan lengan robot yang

    telah ternormalisasi (derajat).

    b30

    Elbow cSudut pergerakan lengan robot yang

    telah ternormalisasi (derajat).

    c45

    Gripper d Lebar cengkramangripper(cm). d2

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

    adalah sebagai berikut :

  • 7/26/2019 Android Bluetooth Youl Wiratama

    63/132

    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 Formatframe karakter a.

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

    Tabel 3.4 Formatframe karakter 9.

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

    Tabel 3.5 Formatframekarakter 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 merupakanstart bituntuk mengawali proses pengiriman data.

    P merupakanparity, pengiriman data tidak menggunakanparity.

    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.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    64/132

    46

    3.6Perancangan 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 Enabledi klik

    Mengaktifkan

    perangkat

    Bluetooth

    Ada perangkat aktif

    dengan nama

    USD_115114046?

    N

    Y

    ApakahScan di

    tekan?

    N

    N

    Y

    Apakah Paired ditekan?

    Melakukan proses

    scanning

    Y

    N

    Y

    Y

    1

    1

    Memasukkan

    password

    untukpairing

    Apakah Connect

    ditekan?2

    N

    Proses

    penyambungan

    Arduino danAndroid

    Ada perubahan

    nilai pada seekbar?

    N

    Y

    Y

    2N

    Y

    Passwordbenar?

    Y

    N

    Mendeteksi perubahan

    seekbarmotor

    base,elbow,shoulderatau gripper

    Kirim data

    perubahan nilai

    seekbar ke

    Arduino

    3

    3

    Ada perubahan

    nilai pada seekbar?

    4

    4

    END

    Y

  • 7/26/2019 Android Bluetooth Youl Wiratama

    65/132

    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

  • 7/26/2019 Android Bluetooth Youl Wiratama

    66/132

    48

    BAB IV

    HASIL DAN PEMBAHASAN

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

    menggunakansmartphone 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 RobotPengukuran 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

    C1D

    E

    Servo

    Elbow

  • 7/26/2019 Android Bluetooth Youl Wiratama

    67/132

    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 servoshoulder. Panjang dari linktersebut adalah 15 cm

    dengan tebal 5mm.

    3.

    C1

    Adalah linkbantuan yang tersambung dengan linkbantuan 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 linktersebut adalah 15 cm dengan tebal 5mm.

    5. E

    Adalah bagian baselengan robot yang berfungsi untuk menopang bagian lengan

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

    dan dengan tinggi 1 cm.

  • 7/26/2019 Android Bluetooth Youl Wiratama

    68/132

    50

    Gambar 4.2. Lengan robot tampak samping (shoulder).

    Keterangan gambar 4.2 di atas adalah sebagai berikut:

    1.

    A2

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

    A2 terpasang secara parallel dengan link A1. Panjang dari linktersebut 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 linkbantuan yang tersambung dengan linkbantuan D.Link C2 terpasang

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

    tebal 5mm.

    MotorShoulder

    B1

    A2

    C2

  • 7/26/2019 Android Bluetooth Youl Wiratama

    69/132

    51

    4.1.2 Kalibrasi