• Tidak ada hasil yang ditemukan

Lengan robot penulis kata yang dikendalikan oleh aplikasi pada android.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Lengan robot penulis kata yang dikendalikan oleh aplikasi pada android."

Copied!
173
0
0

Teks penuh

(1)

Teknologi robotika di Indonesia telah berkembang dengan pesat. Perkembangan ini

diikuti dengan hadirnya

smartphone

dengan sistem operasi android. Penelitian ini bertujuan

membuat prototipe lengan robot 4 DOF yang dapat menulis kata yang dikendalikan oleh

aplikasi pada android melalui

bluetooth

. Lengan robot dapat bergerak ke segala arah dan

dirancang agar mampu mengikuti perintah dari android ke semua sudut dimensi dengan motor

servo. Lengan robot dirancang untuk menulis huruf kapital dengan jenis seperti

fourteen

segment

. Hasil dari penelitian ini adalah lengan robot telah dapat menulis kata dengan

persentase keberhasilan 62% dan dapat dikendalikan jarah jauh dengan maksimal jarak 15

meter.

Kata kunci

— lengan robot, menulis, Android,

Bluetooth

, 4 DOF

(2)

Robotics technology in Indonesia has grown rapidly. This development was followed by

the presence of a Smartphone with android operating system. This study aims to create a

prototype robot arm 4 DOF which can write words that are controlled by the application on

android via Bluetooth. The robotic arm can move in any direction and designed to be capable

to follow the orders from android to all corners of the dimension with servo motors. The

robotic arm is designed to write with a capital letter types like fourteen segments. The results

from this study is the robot arm has been able to write the words with a success percentage of

62% and can be controlled remotely with a maximum distance of 15 meters.

Keyword — Robot Arm, writing, Android, Bluetooth, 4 DOF

(3)

TUGAS AKHIR

LENGAN ROBOT PENULIS KATA YANG

DIKENDALIKAN OLEH APLIKASI PADA ANDROID

Diajukan untuk memenuhi salah satu syarat

memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

disusun oleh:

PETRUS CLAVER HENDAR KRISTYANTO

NIM : 125114031

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

FINAL PROJECT

ROBOT ARM WRITER OF WORDS CONTROLLED

BY THE APPLICATION ON ANDROID

In partial fulfilment of the requirements

for the degree of

Sarjana Teknik

In Electrical Engineering Study Program

PETRUS CLAVER HENDAR KRISTYANTO

NIM : 125114031

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

(5)
(6)
(7)
(8)

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO :

“I am not the best, but I try to do my best”

Dengan ini kupersembahkan karyaku ini untuk...

Tuhanku Yesus Kristus Pembimbingku yang setia,

Keluargaku tercinta,

Teman-temanku seperjuangan,

Dan semua orang yang mengasihiku

Terima Kasih untuk

semuanya...

(9)
(10)

INTISARI

Teknologi robotika di Indonesia telah berkembang dengan pesat. Perkembangan ini

diikuti dengan hadirnya

smartphone

dengan sistem operasi android. Penelitian ini bertujuan

membuat prototipe lengan robot 4 DOF yang dapat menulis kata yang dikendalikan oleh

aplikasi pada android melalui

bluetooth

. Lengan robot dapat bergerak ke segala arah dan

dirancang agar mampu mengikuti perintah dari android ke semua sudut dimensi dengan motor

servo. Lengan robot dirancang untuk menulis huruf kapital dengan jenis seperti

fourteen

segment

. Hasil dari penelitian ini adalah lengan robot telah dapat menulis kata dengan

persentase keberhasilan 62% dan dapat dikendalikan jarah jauh dengan maksimal jarak 15

meter.

Kata kunci

— lengan robot, menulis, Android,

Bluetooth

, 4 DOF

(11)

ABSTRACT

Robotics technology in Indonesia has grown rapidly. This development was followed by

the presence of a Smartphone with android operating system. This study aims to create a

prototype robot arm 4 DOF which can write words that are controlled by the application on

android via Bluetooth. The robotic arm can move in any direction and designed to be capable

to follow the orders from android to all corners of the dimension with servo motors. The

robotic arm is designed to write with a capital letter types like fourteen segments. The results

from this study is the robot arm has been able to write the words with a success percentage of

62% and can be controlled remotely with a maximum distance of 15 meters.

Keyword — Robot Arm, writing, Android, Bluetooth, 4 DOF

(12)
(13)

DAFTAR ISI

Halaman Sampul (Bahasa Indonesia) ... i

Halaman Sampul (Bahasa Inggris) ... ii

Halaman Persetujuan ... iii

Halaman Pengesahan ... iv

Pernyataan Keaslian Karya ... v

Halaman Persembahan dan Motto Hidup ... vi

Lembar Pernyataan Persetujuan Karya Ilmiah Untuk Kepentingan Akademis ... vii

Intisari ... viii

Abstract

... ix

Kata Pengantar ... x

Daftar Isi ... xi

Daftar Gambar ... xiv

Daftar Tabel ... xvii

Daftar Persamaan ... xviii

Daftar Lampiran ... xix

BAB I:PENDAHULUAN

1.1.

Latar Belakang ... 1

1.2.

Tujuan dan Manfaat Penelitian ... 2

1.3.

Batasan Masalah ... 3

1.4.

Metodologi Penelitian ... 3

BAB II:DASAR TEORI

2.1.

Mikrokontroler ... 5

2.1.1. Mikrokontroler Arduino Mega 2560 ... 6

2.1.2 . Perangkat Lunak Arduino ... 9

2.2.

Motor Servo ... 10

2.3.

Adafruit Servo

Shield

16

Channel

PWM ... 12

2.3.1

Komunikasi I

2

C ... 14

2.4.

Bluetooth ... 16

(14)

2.4.1

Modul

Bluetooth

HC-05 ... 17

2.4.2

Pengaturan HC-05 dengan

AT-COMMAND

... 19

2.5.

Pemodelan Kinematika Dalam Sistem Robotik ... 20

2.5.1

Konsep Kinematika ... 21

2.5.2

Penggunaan Persamaan Trigonometri ... 24

BAB III:PERANCANGAN

3.1.

Proses Kerja Sistem ... 28

3.2.

Perancangan Perangkat Keras (

Hardware)

... 29

3.2.1.

Desain Lengan Robot ... 29

3.2.2.

Perancangan Pengendali Utama ... 39

3.2.3.

Perancangan Rangkaian Motor Servo ... 40

3.3.

Perancangan Perangkat

Lunak (

Software)

... 41

3.3.1.

Diagram Alir Android ... 41

3.3.2.

Diagram Alir Robot Menulis Kata ... 42

BAB IV:HASIL DAN PEMBAHASAN

4.1.

Hasil Perancangan Perangkat Keras ... 44

4.2.

Hasil Pengujian ... 47

4.2.1. Pengujian Koneksi

Bluetooth

... 47

4.2.2. Pengujian Kinematika Lengan Robot ... 50

4.2.3. Pengujian

repeatabilitas

lengan robot ... 60

4.2.4. Pengujian keseluruhan sistem... 61

4.3.

Pembahasan Perangkat Lunak ... 65

4.3.1. Inisialisasi ... 65

4.3.2. Program

Home

... 66

4.3.3. Program Pemilihan Posisi Karakter ... 66

4.3.4. Pembacaan Data dari Android ... 67

4.3.5. Program Data Huruf ... 68

4.3.6. Program Garis Acuan ... 68

(15)

BAB V:KESIMPULAN DAN SARAN

5.1.

Kesimpulan ... 70

5.2.

Saran ... 70

DAFTAR PUSTAKA ... 71

LAMPIRAN ... 73

(16)

DAFTAR GAMBAR

Halaman

Gambar 1.1. Blok Diagram Prototipe Lengan Robot Menulis Kata ... 4

Gambar 2.1. Bentuk Fisik Arduino Mega 2560 ... 7

Gambar 2.2. Alokasi Penempatan Pin Arduino Mega 2560 ... 7

Gambar 2.3. Tampilan IDE Arduino ... 9

Gambar 2.4. Bentuk Fisik Motor Servo ... 10

Gambar 2.5. Konstruksi Motor Servo ... 11

Gambar 2.6. Kendali Pulsa Motor Servo ... 12

Gambar 2.7. Adafruit Servo

Shield

16

Channel

PWM ... 13

Gambar 2.8. Bentuk Fisik Modul

Bluetooth

Seri HC ... 17

Gambar 2.9. Pengaturan Modul

Bluetooth

Dengan AT-Command Melalui Arduino ... 19

Gambar 2.10 Diagram Sistem Robotik ... 20

Gambar 2.11. Diagram Sistem Kontrol Robotik ... 21

Gambar 2.12. Transformasi Kinematik Maju dan Kinematik Balik ... 21

Gambar 2.13. Gerakan Holonomic ... 23

Gambar 2.14. Gerakan Nonholonomic ... 23

Gambar 2.15. Gerakan Holonomic dan Nonholonomic ... 23

Gambar 2.16. Konfigurasi Lengan Robot Satu Sendi ... 24

Gambar 2.17. Konfigurasi Lengan Robot Dua Sendi ... 24

Gambar 2.18. Konfigurasi Lengan Robot Tiga Sendi ... 26

Gambar 3.1. Blok Diagram Sistem ... 29

Gambar 3.2. Tampilan Desain Gambar 3D Lengan Robot Menulis Kata ... 29

Gambar 3.3. Bagian

Base

dan Penggeraknya ... 30

Gambar 3.4. Dimensi Lengan Robot ... 30

Gambar 3.5. a. Desain 3D

End-Effector

Lengan Robot ... 31

Gambar 3.5. b. Desain 3D

Whiteboard

... 31

Gambar 3.6. Desain 3D Keseluruhan Prototipe Lengan Robot ... 34

Gambar 3.7. Desain 3D Keseluruhan Prototipe Lengan Robot Tampak Atas ... 35

Gambar 3.8. Desain 3D Keseluruhan Prototipe Lengan Robot Tampak Samping ... 35

(17)

Gambar 3.9. Desain 2D Sederhana Lengan Robot Tampak Atas ... 36

Gambar 3.10. Desain 3D Sederhana Lengan Robot Tampak Samping ... 37

Gambar 3.11. Contoh Beberapa Titik Acuan di tiap Huruf Serta Dimensi Huruf... 38

Gambar 3.12. Bentuk Keseluruhan Huruf Beserta Titik Acuannya ... 39

Gambar 3.13. Rangkaian Keseluruhan Sistem ... 40

Gambar 3.14. Gambar Rangkaian

Servo Controller

... 40

Gambar 3.15. Diagram Alir Android ... 41

Gambar 3.16. Diagram Alir Program Menulis Kata ... 42

Gambar 4.1.

Keseluruhan Bentuk Lengan Robot Menulis Kata ... 44

Gambar 4.2.

Motor Servo Sebagai Penggerak Lengan Robot ... 45

Gambar 4.3.

Motor Bagian

Base

yang Dihubungkan dengan Transmisi

Gear

... 45

Gambar 4.4.

Konektor Motor Servo ... 46

Gambar 4.5.

Rangkaian Elektrik Lengan Robot Menulis Kata ... 46

Gambar 4.6.

Ilustrasi Pengujian Koneksi

Bluetooth

... 47

Gambar 4.7.

Listing

Program Pengujian Koneksi

Bluetooth

... 48

Gambar 4.8.

Tampilan

Interface

Arduino

Bluetooth Terminal

... 48

Gambar 4.9.

Tampilan Serial Monitor pada IDE Arduino ... 49

Gambar 4.10.

Posisi

Home

Lengan Robot ... 50

Gambar 4.11.

Penyederhanaan 2D Lengan Robot Tampak Atas ... 50

Gambar 4.12.

Penyederhanaa 2D Lengan Robot Tampak Samping ... 51

Gambar 4.13.

Posisi Titik Acuan ... 53

Gambar 4.14.

Hasil Implementasi Titik Acuan Pada

Whiteboard

... 53

Gambar 4.15.

Permasalahan Mekanik Lengan Robot ... 58

Gambar 4.16.

Bentuk dan Posisi Garis Acuan ... 58

Gambar 4.17.

Hasil Implementasi Garis-Garis Acuan ... 59

Gambar 4.18.

End-effector

Menabrak Papan Tulis ... 59

Gambar 4.19.

Konfigurasi

Bluetooth

pada

Smartphone

... 61

Gambar 4.20.

Tampilan Awal Aplikasi Arduino

Bluetooth Terminal

... 61

Gambar 4.21.

Tampilan Aplikasi Arduino

Bluetooth Terminal

... 62

Gambar 4.22.

Bentuk Huruf A pada Posisi Karakter Pertama ... 62

(18)

Gambar 4.24.

Ilustrasi Bentuk Huruf yang Terbaca ... 64

Gambar 4.25.

Ilustrasi Bentuk Huruf yang Tidak Terbaca ... 64

Gambar 4.26.

Beberapa Huruf yang Membentuk Sebuah Kata ... 64

Gambar 4.27.

Listing

Program Inisialisasi Lengan Robot Menulis Kata ... 65

Gambar 4.28.

Listing

Program

Home

... 66

Gambar 4.29.

Listing

Program Pemilihan Posisi Karakter ... 66

Gambar 4.30.

Listing

Program Pembacaan Data dari Android ... 67

Gambar 4.31.

Data yang Diterima oleh Mikrokontroler... 67

Gambar 4.32.

Listing

Program Data Huruf ... 68

Gambar 4.33.

Listing

Sub

Program Garis Acuan ... 69

(19)

DAFTAR TABEL

Halaman

Tabel 2.1.

Keterangan Pin Arduino Mega 2560 ... 8

Tabel 2.2.

Keterangan Tombol Pada Tampilan IDE Arduino ... 10

Tabel 3.1.

Tabel Perkiraan Berat Lengan dan Beban yang Diangkat Lengan ... 32

Tabel 3.2.

Tabel Perkiraan Panjang Lengan dan Sudut Maksimal yang Dijangkau ... 34

Tabel 4.1.

Pengujian Koneksi

Bluetooth

... 49

Tabel 4.2.

Data Hasil Perhitungan Kinematika Setiap Titik Acuan ... 54

Tabel 4.3.

Perbandingan Hasil Perhitungan dengan Hasil Pengukuran ... 56

Tabel 4.4.

Hasil Pengujian

Repeatabilitas

Lengan Robot ... 60

Tabel 4.5.

Hasil Pengujian Keberhasilan Bentuk Huruf ... 63

(20)

DAFTAR PERSAMAAN

Halaman

Persamaan 2.1 ... 24

Persamaan 2.2 ... 25

Persamaan 2.3 ... 25

Persamaan 2.4 ... 25

Persamaan 2.5 ... 25

Persamaan 2.6 ... 25

Persamaan 2.7 ... 25

Persamaan 2.8 ... 25

Persamaan 2.9 ... 25

Persamaan 2.10 ... 25

Persamaan 2.11 ... 25

Persamaan 2.12 ...25

Persamaan 2.13 ...26

Persamaan 2.14 ...26

Persamaan 2.15 ...26

Persamaan 2.16 ...26

Persamaan 2.17 ...26

Persamaan 2.18 ...26

Persamaan 2.19 ...27

Persamaan 2.20 ...27

Persamaan 2.21 ...27

(21)

DAFTAR LAMPIRAN

Halaman

L1. Tabel Pengujian Koneksi

Bluetooth

... L1

L2. Tabel Data Hasil Perhitungan Kinematika Setiap Titik Acuan ... L2

L4. Tabel Perbandingan Hasil Perhitungan dengan Hasil Pengukuran ... L4

L6. Tabel Hasil Pengujian

Repeatabilitas

Lengan Robot ... L6

L7. Hasil Implementasi Keseluruhan Bentuk Huruf ... L7

L10.

Listing

Program Keseluruhan ... L10

(22)

BAB I

PENDAHULUAN

1.1

Latar Belakang

Dewasa ini teknologi robotika di indonesia berkembang dengan pesat.

Perkembangan ini telah meningkatkan kualitas kehidupan manusia. Teknologi robotika

telah menggantikan peralatan – peralatan manual menjadi otomatis yaitu dengan

penggunaan robot. Salah satu cara meningkatkan tingkat kecerdasan sebuah robot adalah

dengan menambah sensor atau aktuator pada robot tersebut. Di negara-negara maju

perkembangan robot mengalami peningkatan yang tinggi, saat ini robot telah digunakan

sebagai alat bantu dalam pekerjaan manusia. Seiring dengan berkembangnya teknologi,

khususnya teknologi elektronik, peran robot menjadi semakin penting tidak saja dibidang

sains, tapi juga di berbagai bidang lainnya, seperti di bidang industri manufaktur,

kedokteran, pertanian, bahkan militer. Teknologi robotika juga telah menjangkau sisi

hiburan dan pendidikan bagi manusia. Secara sadar atau tidak, saat ini robot telah “masuk”

dalam kehidupan sehari-hari manusia dalam berbagai bentuk dan jenis. Ada jenis robot

sederhana yang dirancang untuk melakukan kegiatan yang sederhana, mudah dan

berulang-ulang, ataupun robot yang diciptakan khusus untuk melakukan sesuatu yang

rumit, sehingga dapat berperilaku sangat kompleks dan secara otomatis dapat mengontrol

dirinya sendiri sampai batas tertentu.

Perkembangan teknologi robotika dan elektronik ini juga diikuti dengan

berkembangnya teknologi dalam bidang telekomunikasi. Yakni, dengan hadirnya

Smartphone

.

Smartphone

merupakan telepon genggam yang mempunyai kemampuan

tingkat tinggi yang bekerja menggunakan seluruh perangkat lunak sistem operasi yang

menyediakan hubungan standar dan mendasar bagi pengembang aplikasi. Salah satu

contoh sistem operasi yang ada adalah Android. Saat ini,

Smartphone

dengan sistem

operasi android mudah kita jumpai dalam kehidupan sehari-hari karena android sudah

digemari di beberapa negara, khususnya Indonesia.

Berdasarkan paparan diatas maka penulis ingin menciptakan purwarupa lengan

robot dengan 4

Degree Of Freedom (DOF)

. Peneliti yang sudah pernah membuat adalah

Syarifah Hamidah, Seno D.Panjaitan, dan Dedi Triyanto dalam penelitian yang berjudul

Sistem Pengendali Robot Lengan Menggunakan Pemogramman Visual Basic”

. Pada

penelitian ini, mikrokontroler yang digunakan adalah Atmega16. Lengan robot yang

(23)

digunakan memiliki 4

Degree Of Freedom (DOF)

dan menggunakan

Graphical User

Interface (GUI) Visual Basic 2010

sebagai antarmuka antara pengguna dengan sistem

kendali lengan robot [1].

Purwarupa lengan robot dengan 4

Degree Of Freedom (DOF)

yang akan dibuat

penulis dapat diaplikasikan untuk menulis kata dengan sistem operasi android sebagai

antarmuka antara pengguna dengan sistem kendali lengan robot. Lengan robot tersebut

dapat dikendalikan oleh penggunanya dari jarak jauh melalui teknologi

Bluetooth

. Lengan

robot dapat digunakan sebagai alat peraga saat pameran atau model saat perancangan

sistem kontrol otomasi.

Dalam pembuatan lengan robot ini memerlukan beberapa motor servo sebagai

penggerak lengan robot. Untuk menggerakkan motor servo tersebut memerlukan

servo

controller

yang digunakan untuk mengatur pergerakan lengan robot tersebut sehingga

dapat bergerak secara bersamaan. Penelitian ini memaparkan salah satu sudut teknologi

robotika dengan lengan robot yang memiliki kemampuan menulis pada

whiteboard

dengan

sebuah ujung yang diberikan spidol. Lengan robot tersebut dirancang agar mampu

bergerak secara seimbang dengan menggerakan motor servo pada setiap sendi robot secara

bersamaan. Robot ini dikendalikan oleh sebuah mikrokontroler Arduino yang

menggunakan sebuah Android sebagai masukannya yang dikirimkan melalui teknologi

Bluetooth

sehingga pergerakkan dari robot ini berjalan secara otomatis sesuai dengan

program yang dibuat. Lengan robot ini memiliki pergerakan sebanyak 4 DOF

( Degree Of

Freedom)

mulai dari pangkal sampai

end-effector

. Lengan robot dapat bergerak ke segala

arah dan dirancang agar mampu mengikuti perintah dari android dengan mikrokontroler ke

semua sudut dimensi dengan motor servo.

1.2

Tujuan dan Manfaat Penelitian

Tujuan dari penelitian ini adalah membuat purwarupa lengan robot dengan 4

DOF

(24)

1.3

Batasan Masalah

Agar penelitian ini dapat sesuai dengan apa yang menjadi tujuannya dan

menghindari terlalu kompleksnya permasalahan yang muncul, maka perlu adanya

batasan-batasan masalah yang sesuai dengan judul penelitian ini. Adapun batasan-batasan masalahnya

adalah :

a.

Pembuatan lengan robot ini menggunakan 4 derajat kebebasan (DOF).

b.

Penelitian akan dibatasi pada lengan robot menulis dengan maksimal enam

huruf.

c.

Penulisan huruf menggunakan huruf kapital dengan jenis huruf seperti

fourteen

segment

.

d.

Robot akan dikendalikan dengan sebuah mikrokontroler yakni Arduino yang

akan dihubungkan dengan sebuah Android sebagai masukannya melalui

teknologi

Bluetooth

.

e.

Menggunakan motor RC-servo sebagai aktuator.

f.

Robot dapat bergerak pada sumbu X, Y, dan Z.

g.

Menggunakan modul

Bluetooth

HC-05.

h.

Menggunakan aplikasi Arduino

Bluetooth Terminal

pada android yang

digunakan untuk mengirim data masukan pada arduino.

i.

Mengirim data huruf per satu karakter secara bergantian.

1.4 Metodologi Penelitian

Berdasarkan pada tujuan yang ingin dicapai maka metode yang digunakan adalah :

1.

Studi literatur dan referensi, yaitu dengan cara mendapatkan data dari membaca

buku-buku dan jurnal-jurnal yang terkait dengan mikrokontroler khususnya

Arduino dan juga mengenai modul

Bluetooth

HC-05.

2.

Studi kasus terhadap alat yang telah dibuat sebelumnya. Tahap ini dilakukan

guna memahami prinsip kerja alat sebelumnya.

3.

Menguji modul

Bluetooth

HC-05. Tahap ini dilakukan guna memahami prinsip

kerja dan karakter modul

Bluetooth

HC-05.

(25)

5.

Menguji

Servo Controller

. Tahap ini dilakukan guna memahami prinsip kerja

Servo Controller

baik secara sekuensial maupun bersamaan dan mengetahui cara

menggunakan antarmuka pada

Servo Controller

.

6.

Menguji rangkaian kendali dengan mikrokontroler Arduino. Tahap ini guna

lebih memahami bahasa yang digunakan mikrokontroler Arduino dan lebih

memahami cara kerja dengan mencoba membuat rangkaian kendali sederhana

terlebih dahulu.

7.

Perancangan sistem

hardware

dan

software

. Tahap ini bertujuan untuk mencari

dan menentukan komponen-komponen suatu sistem yang akan dibuat dengan

mempertimbangkan faktor-faktor permasalahan dan kebutuhan yang telah

ditentukan.

8.

Pembuatan sistem

hardware

dan

software

. Berdasarkan gambar 1.1,

mikrokontroler sebagai kontrol utama pada purwarupa lengan robot ini.

Mikrokontroler akan memproses masukan dari Android yang dikirim melalui

modul

Bluetooth

sebagai masukan untuk motor bekerja yang akan membuat

lengan robot bergerak membentuk huruf.

Gambar 1.1. Blok Diagram Prototipe Lengan Robot Menulis Kata

9.

Proses pengujian dan pengambilan data. Teknik pengambilan data dilakukan

dengan cara menguji keseluruhan sistem dengan menggabungkan antara

rangkaian kendali dengan rangkaian aktuator. Pengujian dilakukan dengan

mengkomunikasikan Android dengan Arduino.

(26)

BAB II

DASAR TEORI

2.1. Mikrokontroler

Mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan

keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus.

Sederhananya, cara kerja mikrokontroler sebenarnya hanya membaca dan menulis data.

Sekedar contoh, bayangkan diri anda saat mulai belajar membaca dan menulis, ketika

Anda sudah bisa melakukan hal itu anda mulai bisa membaca tulisan apapun baik itu

tulisan buku, cerpen, artikel dan sebagainya, dan anda pun mulai bisa menulis hal-hal

sebaliknya. Begitu pula jika anda sudah mahir membaca dan menulis data pada

mikrokontroler maka anda dapat membuat program untuk membuat suatu sistem

pengaturan menggunakan mikrokontroler sesuai dengan keinginan anda. Mikrokontroler

merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik,

yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut

"pengendali kecil" dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan

komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil

dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini. Dengan penggunaan

mikrokontroler ini maka :

1.

Sistem elektronik akan menjadi lebih ringkas

2.

Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar dari

sistem adalah perangkat lunak yang mudah dimodifikasi

3.

Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak

Namun demikian tidak sepenuhnya mikrokontroler bisa mereduksi komponen IC

TTL dan CMOS yang seringkali masih diperlukan untuk aplikasi kecepatan tinggi atau

sekedar menambah jumlah saluran masukan dan keluaran (I/O). Dengan kata lain,

mikrokontroler adalah versi mini atau mikro dari sebuah komputer karena mikrokontroler

sudah mengandung beberapa periferal yang langsung bisa dimanfaatkan, misalnya

port

paralel,

port

serial, komparator, konversi digital ke analog (DAC), konversi analog ke

digital dan sebagainya hanya menggunakan sistem minimum yang tidak rumit atau

kompleks [2].

(27)

2.1.1. Mikrokontroler Arduino Mega 2560

Arduino adalah sebuah

platform

elektronik yang

open source.

Nama Arduino tidak

hanya digunakan untuk menamai

board

rangkaiannya saja, tetapi juga untuk menamai

bahasa dan

software

pemrogramannya, serta lingkungan pemrogramannya atau yang

dikenal dengan sebutan

Integrated Development Environment

(IDE). Arduino memiliki

beberapa keunggulan dibandingkan dengan

platform

elektronik lainnya [3]. Beberapa

keunggulan tersebut antara lain:

1.

Modul Arduino adalah sebuah

platform

elektronik yang

open source

yang berbasis

pada kemudahan dan fleksibilitas penggunaan

hardware dan software

. Artinya

pembaca dapat mengunduh

software

dan gambar rangkaian Arduino tanpa harus

membayar kepada pembuat Arduino.

2.

IDE Arduino merupakan

multiplatform

yang dapat dijalankan di berbagai sistem

operasi seperti

Windows, Macintosh, dan Linux

.

3.

Modul Arduino mudah digunakan sebagai sebuah

platform

komputasi fisik yang

sederhana serta menerapkan bahasa pemrograman

processing

.

4.

Modul Arduino merupakan

platform

interaktif karena dapat mengambil masukan

dari berbagai tombol atau sensor, mampu mengendalikan berbagai lampu, motor,

dan

output

fisik lainnya.

5.

Modul Arduino dapat berdiri sendiri, atau dapat melakukan komunikasi dengan

software

yang berjalan di komputer seperti

Flash, Processing,

dan

MaxMSP

.

6.

Pemrograman Arduino menggunakan kabel yang terhubung dengan

port

Universal

Serial Bus

(USB), bukan

port serial

. Fitur ini sangat berguna karena banyak

komputer sekarang ini tidak memiliki

port

serial.

7.

Biaya yang dibutuhkan untuk membeli modul Arduino cukup murah, sehingga

tidak terlalu menakutkan untuk membuat kesalahan.

8.

Proyek Arduino ini dikembangkan dalam dunia pendidikan, sehingga bagi pemula

akan lebih cepat dan mudah untuk mempelajarinya.

(28)

Arduino sudah memproduksi begitu banyak minimum sistem. Beberapa diantaranya

adalah Arduino Uno, Arduino Leonardo, Arduino Due, Arduino

Mega 2560, Arduino

Mega ADK, Arduino Mikro, Arduino Duemilanove, Arduino Nano. Dalam penelitian yang

dikerjakan oleh penulis, akan digunakan salah satu produk Arduino yang dikenal dengan

nama Arduino Mega 2560. Gambar 2.1. merupakan tampilan Arduino Mega 2560.

Gambar 2.1. Bentuk fisik Arduino Mega 2560 [4]

Arduino Mega 2560 adalah sebuah

board

mikrokontroler yang berbasis pada IC

ATmega 2560. Arduino

Mega 2560 memiliki 54 buah pin digital yang dapat digunakan

sebagai

input

ataupun

output

. Dari 54 buah pin tersebut, 15 pin diantaranya dapat

digunakan sebagai output

Pulse Width Modulation

(PWM), memiliki 16 buah pin

analog

input

, 4 buah pin UART yang berfungsi sebagai

port

serial

hardware

, sebuah osilator

kristal 16 MHz, sebuah

jack female

untuk koneksi USB,

jack female

adaptor, dan sebuah

tombol

reset

[4].

(29)

Tabel 2.1. Keterangan Pin Arduino Mega 2560 [4]

No.

Parameter

Keterangan

1

ATmega 2560

IC mikrokontroler yang digunakan pada Arduino Mega 2560.

2

Jack

USB

Untuk komunikasi mikrokontroler dengan PC

3

Jack

Adaptor

Masukan

power

eksternal bila Arduino bekerja mandiri (tanpa

komunikasi dengan PC melalui kabel serial USB).

4

Tombol

Reset

Tombol

reset

internal yang digunakan untuk mereset modul

Arduino.

5

Pin

Analog

Menerima input dari perangkat analog lainnya.

6

Pin

Power

Vin = Masukan tegangan input bagi Arduino ketika

menggunakan dumber daya eksternal.

5 V = Sumber tegangan yang dihasilkan regulator internal

board

Arduino

.

3,3 V = Sumber tegangan yang dihasilkan regulator internal

board

Arduino. Arus maksimal pada pin ini adalah 50 mA.

GND = Pin

ground

dari regulator tegangan

board

Arduino.

IOREF = Tegangan Referensi.

AREF = Tegangan Referensi untuk

input analog

.

7

Light-Emitting

Diode

(LED)

Pin

digital

13 merupakan pin yang terkoneksi dengan LED

internal Arduino.

8

Pin PWM

Arduino Mega menyediakan 8 bit output PWM. Gunakan

fungsi

analogWrite()

untuk mengaktifkan pin PWM ini.

9

Pin Serial

Digunakan untuk menerima dan mengirimkan data serial TTL

(

Receiver

(Rx),

Transmitter

(Tx)). Pin 0 dan 1 sudah terhubung

kepada pin serial USB

to

TTL sesuai dengan pin ATmega.

10

Pin

Two Wire

Interface

(TWI)

Terdiri dari

Serial Data Line

(SDA) dan

Serial Interface Clock

(SCL).

11

Pin Digital

Pin yang digunakan untuk menerima

input digital

dan memberi

(30)

Tabel 2.1. (Lanjutan) Keterangan Pin Arduino Mega 2560 [4]

12

Pin

Serial

Peripheral

Interface

(SPI)

Terdiri dari 4 buah Pin :

1.

Master In Slave Out

(MISO)

Jalur

slave

untuk mengirimkan data ke

Master.

2.

Master Out Slave In

(MOSI)

Jalur

master

untuk mengirimkan data ke peralatan.

3.

Serial Clock

(SCK)

Clock

yang berfungsi untuk memberikan denyut pulsa ketika

sedang menyinkronkan transmisi data oleh

master

4.

Slave Select

(SS)

Pin untuk memilih jalur

slave

pada perangkat tertentu.

2.1.2. Perangkat Lunak Arduino

Area pemrograman Arduino dikenal dengan

Integrated Development Environment

[image:30.595.83.528.122.739.2]

(IDE) [5]. Area pemrograman yang digunakan untuk menulis baris program dan

mengunggahnya ke dalam

board

Arduino . disamping itu juga dibuat lebih mudah dan

dapat berjalan pada beberapa sistem operasi seperti Windows, Macintosh, dan Linux [6].

Gambar 2.3. dan Tabel 2.2. merupakan area pemrograman Arduino dan keterangan

beberapa tombol utama.

(31)

Tabel 2.2. Keterangan Tombol Pada Tampilan IDE

Arduino

No.

Tombol

Nama

Fungsi

1

Verify

Menguji apakah ada kesalahan pada program

atau

sketch

. Apabila

sketch

sudah benar, maka

sketch

tersebut akan dikompilasi. Kompilasi

adalah proses mengubah kode program ke

dalam kode mesin.

2

Upload

Mengirimkan kode mesin hasil kompilasi ke

board Arduino

3

New

Membuat

sketch

yang baru

4

Open

Membuka

sketch

yang sudah ada

5

Save

Menyimpan

sketch

6

Serial

Monitor

Menampilkan data yang dikirim dan diterima

melalui komunikasi serial.

IDE Arduino membutuhkan beberapa pengaturan yang digunakan untuk

mendeteksi

board

Arduino yang sudah dihubungkan ke komputer. Beberapa pengaturan

tersebut adalah mengatur jenis

board

yang digunakan sesuai dengan

board

yang terpasang

dan mengatur jalur komunikasi data melalui perintah

Serial Port

. Kedua pengaturan

tersebut dapat ditemukan pada

pull down menu Tools

.

2.2. Motor Servo

Motor servo adalah sebuah motor DC yang dilengkapi rangkaian kendali dengan

sistem

closed feedback

yang terintegrasi dalam motor tersebut. Pada motor servo posisi

putaran sumbu (axis) dari motor akan diinformasikan kembali ke rangkaian kontrol yang

ada di dalam motor servo. Gambar 2.4 merupakan bentuk fisik dari motor servo.

(32)

Gambar 2.5 merupakan konstruksi dari motor servo yang disusun oleh sebuah

motor DC, gearbox, variabel resistor (VR) atau potensiometer dan rangkaian kontrol.

Potensiometer berfungsi untuk menentukan batas maksimum putaran sumbu (axis) motor

servo. Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar pulsa yang pada

pin kontrol motor servo.

Gambar 2.5. Konstruksi Motor Servo [7]

Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW) dimana

arah dan sudut pergerakan rotornya dapat dikendalikan dengan memberikan variasi lebar

pulsa (

duty cycle

) sinyal PWM pada bagian pin kontrolnya.

Jenis-jenis Motor Servo:

1.

Motor Servo Standar

Motor servo jenis ini hanya mampu bergerak dua arah (CW dan CCW)

dengan defleksi masing-masing sudut mencapai 90° sehingga total defleksi sudut

dari kanan – tengah – kiri adalah 180°.

2.

Motor Servo

Continuous

Motor servo jenis ini mampu bergerak dua arah (CW dan CCW) tanpa

batasan defleksi sudut putar (dapat berputar secara kontinyu).

Pulsa Kontrol Motor Servo

(33)

Gambar 2.6. Kendali Pulsa Motor Servo [7]

Motor Servo akan bekerja secara baik jika pada bagian pin kontrolnya diberikan

sinyal PWM dengan frekuensi 50 Hz. Dimana pada saat sinyal dengan frekuensi 50 Hz

tersebut dicapai pada kondisi Ton

duty cycle

1.5 ms, maka rotor dari motor akan berhenti

tepat di tengah-tengah (sudut 0°/ netral).

Pada saat Ton

duty cycle

dari sinyal yang diberikan kurang dari 1.5 ms, maka rotor

akan berputar ke berlawanan arah jarum jam (

Counter Clock wise

, CCW) dengan

membentuk sudut yang besarnya linier terhadap besarnya Ton

duty cycle

, dan akan

bertahan diposisi tersebut. Dan sebaliknya, jika Ton

duty cycle

dari sinyal yang diberikan

lebih dari 1.5 ms, maka rotor akan berputar searah jarum jam (

Clock Wise

, CW) dengan

membentuk sudut yang linier pula terhadap besarnya Ton

duty cycle

, dan bertahan diposisi

tersebut [7].

2.3

. Adafruit Servo Shield 16 Channel PWM

(34)

I2C lainnya serta sensor untuk pin SDA dan SCL selama alamat mereka tidak konflik.

Gambar 2.7. merupakan bentuk fisik dari Adafruit

Servo

Shield

16

Channel

PWM[8].

Gambar 2.7. Adafruit

Servo

Shield

16

Channel

PWM [8]

Spesifikasi dari Adafruit

Servo

Shield

16

Channel

PWM :

1.

Dapat digunakan untuk mengendalikan hingga 16 motor servo secara serentak

maupun sekuensial.

2.

Mendukung motor servo tipe standar dan kontinus.

3.

Dilengkapi kemampuan untuk membaca pulsa kontrol (posisi) servo,

Enable

dan

Disable

servo, kemampuan menyimpan dan menjalankan hingga 32 sekuen

gerakan, serta kemampuan menyimpan dan kembali ke posisi home (

default

).

4.

Menggunakan komunikasi I

2

C, hanya dengan menggunakan 2 pin papan PWM

controller

akan mengendalikan semua 16

channel

atau pin sekaligus tanpa

tambahan pengeluaran untuk menambahkan arduino.

5.

Dapat menumpuk hingga 62 Adafruit

Servo

Shield

16

Channel

PWM dalam 1

arduino sehingga dapat mengendalikan hingga 992 motor servo hanya dengan 2

pin(SDA/SCL).

6.

Pengaturan alamat I

2

C secara

hardware

melalui pin A5 untuk SCL dan pin A4

untuk SDA pada arduino.

7.

Dilengkapi dengan

library

yang bisa di

download

untuk dimasukkan ke dalam

arduino.

8.

Menggunakan 2 catudaya. Catudaya modul terpisah dengan catudaya motor servo

dan dilengkapi dengan LED indikator catudaya.

(35)

10.

Hampir semua servo di desain untuk bekerja aktif kira-kira di tegangan 5V atau 6V.

Logikanya jika ingin mengendalikan banyak servo maka dibutuhkan arus yang

tidak sedikit agar semua servo dapat bekerja secara serentak sehingga terdapat

beberapa pilihan

power

dibawah ini yang direkomendasikan untuk catudaya motor

servo:

a.

5v 2A

switching power supply

(dapat mengendalikan hingga 4 motor

servo).

b.

5V 10A

switching power supply

(dapat mengendalikan hingga 16 motor

servo)

c.

Jika menggunakan

battery

dapat menggunakan 4x AA

battery

dengan

tegangan 6v atau 4,8v (6v dengan

cell battery

Alkaline dan 4,8v dengan

cell

battery

yang dapat dicas).

2.3.1. Komunikasi I

2

C

Bus adalah sistem pengantar yang dilengkapi dengan komponen pengendali untuk

melayani pertukaran data antara komponen

hardware

satu dengan komponen

hardware

lainnya. Pada sistem mikrokontroler terdapat bus Data, bus Alamat, dan beberapa

pengantar pengendali. Semakin tinggi frekuensi

clock

prosesor, maka semakin lebih cermat

pengembang untuk memperhatikan

timing

dari seluruh komponen yang terlibat, agar tidak

terjadi kesalahan dalam transaksi data.

Bus yang cukup sering digunakan adalah bus bersifat paralel. Transaksi data

dilakukan secara paralel sehingga transaksi data lebih cepat. Akan tetapi disisi lain Mahal.

Jika sistem relatif tidak membutuhkan transaksi yang cepat, maka penggunaan Serial Bus

menjadi pilihan. Salah satu pilihan sistem data bus yang sering digunakan adalah I

2

C (

Inter

Integrated Circuit

). Sistem Bus I

2

C pertamakali diperkenalkan oleh Firma Philips pada

tahun 1979.

Karakter I

2

C :

1.

Serial Bus Data dikirim serial secara per-bit.

2.

Menggunakan dua Penghantar Koneksi dengan ground bersama I

2

C terdiri dari dua

penghantar:

(36)

b.

SDA (

Serial Data

) untuk mentransaksikan data

3.

Jumlah Peserta Bus

maximal

127 peserta dialamatkan melalui 7-bit-alamat. Alamat

ditetapkan kebanyakan secara

hardware

dan hanya sebagian kecil dapat dirubah.

4.

Pengirim dan Penerima setiap transaksi data terjadi antara pengirim (

Transmitter

)

dan penerima (

Receiver

). Pengirim dan penerima adalah peserta bus.

5.

Master

and

Slave

Device

yang mengendalikan operasi transfer disebut Master,

sementara device yang di kendalikan oleh master di sebut Slave.

Aturan Komunikasi I

2

C :

1.

I

2

C adalah protokol transfer data serial. Device atau komponen yang mengirim data

disebut transmitter, sedangkan device yang menerimanya disebut receiver.

2.

Device

yang mengendalikan operasi transfer data disebut master, sedangkan

device

lainnya yang dikendalikan oleh master disebut slave.

3.

Master device

harus menghasilkan serial

clock

melalui pin SCL, mengendalikan

akses ke BUS serial dan menghasilkan sinyal kendali START dan STOP.

4.

I

2

C adalah protokol transfer data serial. Device atau komponen yang mengirim data

disebut transmitter, sedangkan device yang menerimanya disebut receiver.

5.

Device

yang mengendalikan operasi transfer data disebut master, sedangkan

device

lainnya yang dikendalikan oleh master disebut slave.

6.

Master device

harus menghasilkan serial

clock

melalui pin SCL, mengendalikan

akses ke BUS serial dan menghasilkan sinyal kendali START dan STOP.

Definisi-definisi Kondisi Bus :

1.

Bus not busy

:

Pada saat ini Bus tidak sibuk, SCL dan SDA dua-duanya dalam keadaan HIGH.

2.

Start data transfer

:

Ditandai dengan perubahan kondisi SDA dari HIGH ke LOW ketika SCL HIGH.

3.

Stop data transfer

:

Ditandai dengan perubahan kondisi SDA dari LOW ke HIGH ketika SCL HIGH.

4.

Data valid

:

(37)

menandakan pengiriman bit baru.

Duty cycle

untuk SCL tidak mesti 50%, tetapi

frekuensi kemunculannya hanya ada 2 macam, yaitu mode standar 100kHz dan fast

mode atau mode cepat 400kHz. Setelah SCL mengirimkan sinyal HIGH yang

kedelapan, arah transfer SDA berubah, sinyal kesembilan pada SDA ini dianggap

sebagai

acknowledge

dari

receiver

ke

transmitter

.

5.

Acknowledge

:

Setiap

receiver

wajib mengirimkan sinyal

acknowledge

atau sinyal balasan

setiap selesai pengiriman 1-byte atau 8-bit data.

Master

harus memberikan ekstra

clock

pada SCL, yaitu clock kesembilan untuk memberikan kesempatan

receiver

mengirimkan sinyal

acknowledge

ke

transmitter

berupa keadaan LOW pada SDA

selama SCL HIGH. Meskipun master berperan sebagai

receiver

, ia tetap sebagai

penentu sinyal STOP. Pada bit-akhir penerimaan byte terakhir, master tidak

mengirimkan sinyal

acknowledge

, SDA dibiarkan HIGH oleh receiver dalam hal

ini master, kemudian master mengubah SDA dari LOW menjadi HIGH yang berarti

sinyal STOP.

2.4.

Bluetooth

Bluetooth adalah spesifikasi industri untuk jaringan kawasan pribadi (personal area

networks atau PAN) tanpa kabel.

Bluetooth

menghubungkan dan dapat dipakai untuk

melakukan tukar-menukar informasi di antara peralatan-peralatan. Spesifiksi dari peralatan

Bluetooth ini dikembangkan dan didistribusikan oleh kelompok

Bluetooth Special Interest

Group.

Awal mula dari

Bluetooth

adalah sebagai 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 (sekitar 10 meter).

Bluetooth

berupa

card

yang menggunakan frekuensi radio standar IEEE 802.11 dengan jarak layanan

yang terbatas dan kemampuan data transfer lebih rendah dari

card

untuk

Wireless Local

Area Network

(WLAN).

Protokol

Bluetooth

menggunakan sebuah kombinasi antara

circuit switching

dan

(38)

asinkron dan suara sinkron. Setiap kanal suara mendukung sebuah kanal suara sinkron 64

kb/s. Kanal asinkron dapat mendukung kecepatan maksimal 723,2 kb/s asimetris, dimana

untuk arah sebaliknya dapat mendukung sampai dengan kecepatan 57,6 kb/s. Sedangkan

untuk mode simetris dapat mendukung sampai dengan kecepatan 433,9 kb/s. Sebuah

perangkat yang memiliki teknologi

Wireless Bluetooth

akan mempunyai kemampuan

untuk melakukan pertukaran informasi dengan jarak jangkauan sampai dengan 10 meter

(~30 feet). Sistem

Bluetooth

menyediakan layanan komunikasi point to point maupun

komunikasi point to multipoint.

Produk

Bluetooth

dapat berupa PC

card

atau USB

adapter

yang dimasukkan ke

dalam perangkat. Perangkat-perangkat yang dapat diintegerasikan dengan teknologi

Bluetooth

antara lain : mobile PC, mobile phone, PDA (

Personal Digital Assistant

),

headset, kamera, printer, router dan sebagainya. Aplikasi-aplikasi yang dapat disediakan

oleh layanan

Bluetooth

ini antara lain : PC to PC

file transfer

, PC to PC

file synch

(

notebook to desktop), PC to mobile phone, PC to PDA,

wireless headset

, LAN

connection

via ethernet access point

dan sebagainya[9].

2.4.1. Modul Bluetooth HC-05

[image:38.595.83.528.243.686.2]

Modul

Bluetooth

seri HC memiliki banyak jenis atau varian, yang secara garis

besar terbagi menjadi dua yaitu jenis

industrial series

yaitu HC-03 dan HC-04 serta

civil

series

yaitu HC-05 dan HC-06. Modul

Bluetooth serial

, yang selanjutnya disebut dengan

modul BT saja digunakan untuk mengirimkan data serial TTL via

Bluetooth

. Modul BT ini

terdiri dari dua jenis yaitu

Master

dan

Slave

.

Gambar 2.8. Bentuk Fisik Modul

Bluetooth

Seri HC-05 [10]

(39)

tidak dapat diubah mode kerjanya, contoh adalah HC-06-S. Modul BT ini akan bekerja

sebagai BT Slave dan tidak bisa diubah menjadi Master, demikian juga sebaliknya

misalnya HC-04M. Default mode kerja untuk modul BT HC dengan seri genap adalah

sebagai

Slave

.

Sedangkan modul BT HC dengan nomer seri ganjil, misalkan HC-05, kondisi

default biasanya diset sebagai

Slave

mode, tetapi pengguna bisa mengubahnya menjadi

mode

Master

dengan

AT Command

tertentu. Penggunaan utama dari modul BT ini adalah

menggantikan komunikasi serial via kabel, sebagai contoh:

1.

Jika akan menghubungkan dua sistem mikrokontroler agar bisa berkomunikasi via

serial port maka dipasang sebuah modul BT

Master

pada satu sistem dan modul BT

Slave

pada sistem lainnya. Komunikasi dapat langsung dilakukan setelah kedua

modul melakukan pairing. Koneksi via

Bluetooth

ini menyerupai komunikasi serial

biasa, yaitu adanya pin TXD dan RXD.

2.

Jika sistem mikrokontroler dipasangi modul BT

Slave

maka ia dapat berkomunikasi

dengan perangkat lain semisal PC yang dilengkapi adapter BT ataupun dengan

perangkat ponsel,

Smartphone

dan lain-lain

3.

Saat ini banyak perangkat seperti printer, GPS modul dan lain-lain yang bekerja

menggunakan media

Bluetooth

, tentunya sistem mikrokontroler yang dilengkapi

dengan BT

Master

dapat bekerja mengakses device-device tersebut

Pemakaian module BT pada sistem komunikasi baik antar dua sistem mikrokontrol

maupun antara suatu sistem ke device lain tidak perlu menggunakan driver, tetapi

komunikasi dapat terjadi dengan dua syarat yaitu :

1.

Komunikasi terjadi antara modul BT

Master

dan BT

Slave

, komunikasi tidak akan

pernah terjadi jika kedua modul sama-sama

Master

atau sama-sama

Slave

, karena

tidak akan pernah pairing diantara keduanya

2.

Password

yang dimasukkan cocok

(40)

rate

dan

password

saja. Sedangkan untuk modul HC-05 memiliki kemampuan lebih yaitu

bisa diubah

mode

kerjanya menjadi

Master

atau

Slave

serta diakses dengan lebih banyak

AT

Command

, modul ini sangat direkomendasikan, terutama dengan flexibilitasnya dalam

pemilihan mode kerjanya. Dalam penelitian ini penulis akan menggunakan modul

Bluetooth

seri HC-05[10].

2.4.2. Pengaturan HC-05 dengan AT-COMMAND

Pengaturan modul

Bluetooth

HC-05 dapat dilakukan dengan pengiriman

AT-Command. AT-Command adalah antarmuka perangkat lunak utama untuk modul nirkabel.

AT-Command menyediakan antarmuka untuk berinteraksi dengan modul untuk melakukan

berbagai tugas seperti mendapatkan informasi tentang modul

Bluetooth

, Menganti nama

devais modul, menganti kecepatan transmisi data dll Beberapa AT-Command yang

ditetapkan dalam spesifikasi adalah opsional. Dalam hal ini, pengiriman AT-Command

dilakukan melalui Arduino Uno. Untuk melakukan pengiriman AT-Command mode kerja

modul

Bluetooth

HC-05 perlu diubah dari mode transmisi data menjadi mode konfigurasi

dengan cara memberikan masukan

high

pada pin

KEY

pada modul

Bluetooth

HC-05.

Selain itu juga diperlukan beberapa

wiring

dan sedikit program pada Arduino Uno melalui

Arduino IDE. Pengiriman AT-Command dilakukan melalui serial monitor pada Arduino

IDE seperti yang terlihat pada Gambar 2.9.

(41)

2.5. Pemodelan Kinematika Dalam Sistem Robotik

Kinematika robot adalah studi analitis pergerakan lengan robot terhadap sistem

kerangka koordinat acuan yang diam/bergerak tanpa memperhatikan gaya yang

menyebabkan pergerakan tersebut. Model kinematika merepresentasikan hubungan

end-effector

dalam ruang tiga dimensi dengan variabel sendi dalam ruang sendi. Persamaan

kinematika maju mendeskripsikan posisi dan orientasi

end-effector

yang dinyatakan dalam

posisi sendi. Sedangkan persamaan kinematika balik mendeskripsikan konfigurasi posisi

sendi untuk menghasilkan posisi dan orientasi

end-effector

tertentu.

Secara garis besar sistem robotik terdiri dari sistem kontroler, elektronik dan

mekanik. Dalam bentuk diagram blok dapat dinyatakan seperti dalam Gambar 2.10 berikut

ini.

Gambar 2.10. Diagram Sistem Robotik [11]

G(s)

adalah fungsi alih pengendali, sedangkan

H(s)

adalah fungsi alih elemen

umpan balik untuk sistem robot secara fisik termasuk aktuator dan sistem elektroniknya.

Komponen

ri

adalah masukan acuan yang dalam penerapannya dapat berupa posisi,

kecepatan, dan percepatan. Dalam fungsi waktu, nilai masukan ini dapat bervariasi dan

kontinyu yang membentuk suatu konfigurasi trayektori. Komponen

e

adalah nilai galat

antara keluaran dan masukan acuan, sedangkan

u

adalah keluaran dari pengendali dan

y

adalah fungsi gerak robot yang diharapkan selalu sama dengan acuan yang didefinisikan

pada masukan

ri

.

Jika masukan merupakan fungsi dari suatu koordinat vektor posisi dan orientasi

P

(x,y,z) dan keluarannya adalah

θ

1

,

θ

2

,…,

θ

n

) dimana

n

adalah jumlah sendi atau DOF,

(42)

Gambar 2.11. Diagram Sistem Kontrol Robotik [11]

Dalam Gambar 2.11 di atas, keluaran yang diukur dari gerakan robot adalah dalam

domain sudut dari sendi-sendi, baik sendi pada sistem tangan/kaki atau sudut dari

perputaran roda jika robot tersebut adalah

mobile robot

. Sedangkan yang diperlukan oleh

pengguna dalam pemrograman atau dalam pemetaan ruang kerja robot adalah posisi (ujung

tangan atau titik tertentu pada bagian robot) yang dinyatakan sebagai koordinat 2D

(kartesian) atau 3D. Dengan demikian perlu dilakukan transformasi koordinat antara ruang

kartesian dengan ruang sendi/sudut ini. Pada Gambar 2.12 dinyatakan sebagai kinematika

balik dan kinematika maju. Kombinasi antara transformasi koordinat

P

ke

θ

dengan

pengendali

G(s)

disebut sebagai pengendali kinematika. Masukannya berupa sinyal galat

P

,

e

p

,

sedangkan keluarannya adalah sinyal kemudi

u

untuk aktuator. Dalam konteks

praktis,

u

adalah sinyal sinyal analog dari DAC untuk seluruh aktuator robot.

2.5.1. Konsep Kinematika

Dari Gambar 2.11, pengendali dinyatakan sebagai pengendali kinematik karena

mengandung komponen transformasi ruang kartesian ke ruang sendi. Dengan demikian

diperoleh keluaran pengendali

u

yang bekerja dalam ruang sendi,

u

1

,

θ

2

,…,

θ

n

).

Sebaliknya, pengendali memerlukan umpan balik dalam bentuk koordinat karena acuan

diberikan dalam bentuk koordinat. Penjelasan ini dapat diilustrasikan dalam Gambar 2.12

berikut ini.

(43)

Dari Gambar 2.12 dapat diperoleh dua pernyataan mendasar, yaitu:

• Jika jari-jari r dan

θ

dari suatu struktur robot n-DOF diketahui, maka posisi

P

(x,y,z)

dapat dihitung. Jika

θ

merupakan sebuah fungsi berdasarkan waktu

θ

(t), maka posisi

dan orientasi

P

(t) dapat dihitung juga secara pasti. Transformasi koordinat ini dikenal

sebagai kinematika maju.

• Jika posisi dan orientasi

P

(t) diketahui maka,

θ

(t) tidak langsung dapat dihitung tanpa

mendefinisikan berapa DOF struktur robot itu. Jumlah sendi n dari n-DOF yang

dapat dibuat untuk melaksanakan tugas sesuai dengan posisi dan orientasi

P

(t) itu

dapat bernilai n=(m,m+1, m+2,…,m+p) dimana m adalah jumlah sendi minimum

dan p adalah jumlah sendi yang dapat ditambahkan. Robot berstruktur m-DOF

disebut dengan robot

nonredundant

, sedang bila (m+p)-DOF maka disebut sebagai

robot

redundant

. Transformasi ini dikenal sebagai kinematika balik (

Invers

Kinematics

).

Dari pernyataan di atas nampak bahwa analisis kinematika maju adalah relatif

sederhana dan mudah diimplementasikan. Di sisi lain, karena variabel-variabel bebas pada

robot yang diperlukan dalam akusisi kendali adalah berupa variabel-variabel sendi

(aktuator), sedang tugas yang didefinisikan hampir selalu dalam acuan koordinat kartesian,

maka analisis kinematika balik lebih sering digunakan dan dikaji secara mendalam dalam

dunia robotik. Jadi, kinematik dalam robotik adalah suatu bentuk pernyataan yang berisi

tentang deskripsi matematik geometri dari suatu struktur robot. Dari persamaan kinematik

dapat diperoleh hubungan antara konsep geometri ruang sendi pada robot dengan konsep

koordinat yang biasa dipakai untuk menentukan kedudukan dari suatu obyek.

Model kinematik robot dapat dibedakan dalam dua kelompok model pergerakan, yaitu :

1.

Holonomic

2.

Nonholonomic

(44)

Gambar 2.13. Gerakan Holonomic [11]

Berbeda dengan gerak nonholonomic. Ujung atau suatu titik yang memiliki sifat

nonholonomic mempunyai keterbatasan dalam arah gerakan. Gerak nonholonomic dapat

diilustrasikan seperti menggoreskan ujung pisau atau cutter ke atas permukaan kayu. Arah

gerak nonholonomic ini dibatasi oleh efek sentuhan ujung pipih yang menempel pada

permukaan kayu, sehingga tidak dapat bergerak dengan bebas ke kiri atau ke kanan tanpa

mengikuti arah sisi yang tajam. Jika diinginkan gerakan melengkung ataupun sudut tajam

terlebih dahulu harus mengarahkan sisi pisau yang tajam ke arah yang segaris dengan arah

gerak yang diinginkan. Contoh klasik kinematik dalam robotik yang memiliki sifat

nonholonomic adalah sistem penggerak dua roda kanan kiri pada mobile robot dengan satu

atau lebih roda bebas ( castor ) untuk menjaga keseimbangan.

Gambar 2.14. Gerakan Nonholonomic [11]

(45)

2.5.2. Penggunaan Persamaan Trigonometri

Analisis persamaan kinematik dapat diselesaikan dengan cara paling dasar yaitu

menggunakan persamaan trigonometri. Setiap komponen dalam koordinat (x, y, z)

dinyatakan sebagai transformasi dari tiap-

tiap komponen ruang sendi(r, θ). Jari

-jari r dalam

persamaan sering dituliskan sebagai panjang lengan atau link l. Untuk koordinat 2D

komponen z tidak dapat dituliskan. Pada robot manipulator dapat dianalisis mulai dari satu

sendi hingga tiga sendi.

Analisis kinematik lengan robot dengan satu sendi, yaitu

Gambar 2.16. Konfigurasi Lengan Robot Satu Sendi [11]

Kedudukan ujung lengan

(

,

)

dapat diperoleh dengan cara kinematik balik atau

invers kinematics

sebagai berikut,

= tan

1

(

y

x

)

(2.1)

Analisis kinematik lengan robot dengan dua sendi, yaitu

(46)

Kedudukan ujung lengan dinyatakan sebagai

(

,

)

sebagai berikut,

(

,

) =

(

�1

,

�2

)

( 2.2 )

Jika P diasumsikan sebagai vektor penjumlahan yang terdiri dari vektor r1 lengan-1

dan r2 lengan r2, yaitu :

�1

= [

�1

cos

�1

,

�1

sin

�1

]

( 2.3 )

�2

= [

�2

cos(

�1

+

�2

) ,

�2

sin(

�1

+

�2

)]

( 2.4 )

Maka,

=

�1

cos

�1

+

�2

cos

(

�1

+

�2

)

( 2.5 )

=

1

sin

1

+

2

sin

(

1

+

2

)

( 2.6 )

Kinematika balik lengan robot dapat dijabarkan sebagai berikut. Dengan

menggunakan hukum identitas trigonometri,

cos (

+

) = cos(

) cos(

)

sin(

) sin

(

)

(2.7)

sin (

+

) = sin(

) cos(

) + sin(

) cos

(

)

(2.8)

Persamaan (2.5) dan (2.6) dapat ditulis kembali,

=

1

cos

1

+

2

cos

1

cos

2

− �

2

sin

1

sin

2

(2.9)

=

1

���

1

+

2

sin

1

cos

2

+

2

cos

1

sin

2

(2.10)

Dari dua persamaan terakhir ini kita dapat mencari

2

terlebih dahulu dengan

mengeluarkan cos

2

dari kedua persamaan. Dengan operasi pangkat dua pada kedua nya,

dan dikombinasikan diperoleh,

��� �

2

=

2

+

2

−�

1 2

−�

22

2

1

2

(2.11)

Sehingga,

2

= arccos

(

2

+

2

−�

1 2

−�

22

2

1

2

)

(2.12)

(47)

tan

=

2

sin

2

2

cos

2

+

1

dan

(2.13)

tan

=

(2.14)

Sedangkan,

1

=

� − �

(2.15)

Dengan menggunakan hukum identitas trigonometri,

tan(

� − �

) =

tan (

)

tan

(

)

1+tan (

) tan (

)

(2.16)

Didapat

tan

1

=

(

y(

1

+

2

cos

θ

2

) – x .

2

sin

θ

2

x(

1

+

2

cos

θ

2) + y .

2

sin

θ

2

)

(2.17)

Sehingga

1

dapat dihitung,

1

= arctan

(

y(

1

+

2

cos

θ

2

) – x .

2

sin

θ

2

x(

1

+

2

cos

θ

2) + y .

2

sin

θ

2

)

(2.18)

Alhasil, Persamaan (2.12) dan (2.18) adalah persamaan kinematika balik bagi lengan robot

dua sendi.

[image:47.595.83.528.241.728.2]

Analisis kinematik lengan robot dengan tiga sendi, yaitu

(48)

Dengan cara analisis kinematik balik yang sama seperti pada persamaan (2.3)

hingga (2.8) koordinat

(

,

)

dapat diperoleh,

=

1

cos

1

+

2

cos(

1

+

2

) +

3

cos

(

1

+

2

+

3

)

(2.19)

=

1

sin

1

+

2

sin(

1

+

2

) +

3

sin

(

1

+

2

+

3

)

(2.20)

Dengan

= (

1

+

2

+

3

)

(2.21)

Dimana,

adalah sudut arah hadap lengan-3 terhadap sumbu X. Sehingga, jika

(

,

)

dan

(

,

)

diketahui maka

2

dan

1

dapat dicari dengan menggunakan

Persamaan (2.12) dan (2.18). Dari

(

,

)

dan

(

,

)

,

juga dapat dicari, sehingga

3

(49)

BAB III

PERANCANGAN SISTEM

Bab ini menjelaskan mengenai perancangan purwarupa

lengan robot dengan 4

Degree

Of Freedom (DOF)

yang dikontrol dari Android berbasis Arduino. Perancangan sistem yang

akan dibahas pada bab ini terdiri dari dua bagian, yaitu perangkat keras (

hardware

) dan

perangkat lunak (

software

). Perancangan sistem yang dibahas dalam bab ini terbagi dalam

tiga bagian besar, yaitu:

a.

Proses Kerja Sistem.

b.

Perancangan perangkat keras

-

Perancangan lengan robot.

-

Rangkaian pengendali utama dan motor servo.

c.

Perancangan perangkat lunak

-

Diagram Alir Utama.

-

Perangkat lunak pengendali utama dengan Arduino IDE.

-

Perangkat lunak antarmuka dengan Android.

3.1. Proses Kerja Sistem

Gambar 3.1. merupakan blok diagram sistem. Pada blok diagram tersebut,

perangkat keras yang akan dibuat terdiri dari lima bagian, yaitu sistem dari sistem operasi

Android, Modul

Bluetooth

HC-05, Arduino Mega 2560,

Servo Controller

, dan Motor RC

Servo. Rangkaian kontroler Arduino Mega 2560

pada prinsipnya akan menerima data yang

dikirimkan dari sistem operasi Android melalui

Bluetooth

yang akan diolah oleh modul

Bluetooth

HC-05 yang terhubung secara serial dengan Arduino Mega 2560.

Data yang diterima oleh kontroler Arduino Mega 2560 tersebut akan diolah.

Selanjutnya rangkaian kontroler Arduino Mega 2560 memberikan instruksi pada Motor RC

Servo yang dikendalikan oleh

Servo Controller

.

(50)

Modul

Bluetooth

HC-05

Arduino Mega 2560

RC-Servo (Sendi 1)

RC-Servo (Sendi 2)

RC-Servo (Sendi 3)

RC-Servo (Sendi 4)

SO Android

BT

Servo Controller

Gambar 3.1. Blok Diagram Sistem

3.2. Perancangan Perangkat Keras ( Hardware )

3.2.1. Desain Lengan Robot

Gambar 3.2. merupakan gambar keseluruhan

design

3D lengan robot menulis kata

berbasis mikrokontroler arduino. Lengan robot ini disusun dengan 5 bagian utama sebagai

aktuator yang akan digerakkan dengan motor RC

servo

. Kelima bagian utama ini disebut

sebagai penghubung atau

link

, yang meliputi :

1.

Base

(bagian dasar)

2.

Shoulder

(bagian bahu)

3.

Elbow

(bagian siku)

4.

Pitch

(bagian pergelangan)

5.

End-Effector

(bagian ujung yang diberi spidol)

Sedangkan bagian yang berperan sebagai penggerak (sendi) berdasarkan gerakkan

motor RC

servo

disebut sebagai

joint

.

(51)

Gambar 3.3. merupakan design 3D bagian dasar (

base

) yang berbentuk lingkaran

berdiameter 25cm. Bagian ini terhubung dengan sebuah as yang memanjang ke bawah dan

mempunyai roda gigi. Roda gigi pada as berhubungan dengan roda gigi pada sebuah motor

RC

servo

yang digunakan sebagai penggerak.

Base

bergerak secara rotasi dan dapat

menyebabkan perubahan posisi pada lengan-lengan penghubung yang lain.

Gambar 3.3. Bagian Base dan Penggeraknya

Gambar 3.4. merupakan dimensi dari lengan robot dimana bagian

shoulder

memiliki panjang lengan 18cm dan bergerak secara rotasi dengan 2 buah motor RC

servo

.

Bagian

elbow

memiliki panjang lengan 12cm dan bergerak secara rotasi dengan sebuah

motor RC

servo

. Bagian

pitch

memiliki panjang lengan 5cm dan bergerak secara rotasi

dengan sebuah motor RC

servo

. Bagian

end-effector

adalah bagian yang digunakan untuk

mencekam spidol

.

Panjang

end-effector

sampai pada ujung spidol memiliki panjang 10cm.

Total keseluruhan panjang lengan robot dari pangkal

shoulder

sampai pada ujung spidol

adalah 45cm. Besarnya dimensi berupa panjang yang dimiliki oleh keseluruhan

penghubung (

link

) menentukan kemampuan sebagai jangkauan lengan robot ketika

melakukan gerakkan.

(52)

Bagian yang berperan sebagai penggerak adalah sendi (

joint

) terhubung langsung

dengan motor RC

servo

. Gerakkan yang terjadi pada

joint

di setiap bagian pangkal dari

link

adalah rotasi. Gerakkan secara rotasi menyebabkan adanya perbedaan besarnya

sudut-sudut yang terjadi pada setiap penghubung (

link

) dari titik acuan awal yaitu pada bagian

pangkal dari bahu (

shoulder

).

(a)

(b)

Gambar 3.5. (a) Desain 3D

End-Effector

Lengan Robot. (b) Desain 3D

Whiteboard

Gambar 3.5.a adalah desain 3D

end-effector

dari prototipe lengan robot yang akan

dibuat. Berfungsi sebagai tempat menaruh spidol yang akan digunakan untuk menulis.

Bagian ini akan ditempelkan pada bagian ujung dari lengan 3 pada lengan robot dengan

bantuan 2 buah baut untuk mengunci

end-effector

dengan lengan 3. Gambar 3.5.b adalah

desain dari whiteboard yang akan digabung dengan meja.

(53)

Tabel 3.1. Tabel Perkiraan Berat Lengan dan Beban yang Diangkat Lengan

NO.

Lengan Penghubung (link)

Perkiraan Berat

setiap lengan

Beban yang

diangkat setiap

lengan

1.

End-Effector

200gr

200gr

2.

Pitch

120gr

320gr

3.

Elbow

200gr

520gr

4.

Shoulder

500gr

1020gr

5.

Base

200gr

200gr

Pada tabel 3.1. untuk perkiraan berat setiap lengan merupakan total berat dari

material lengan dan motor RC

servo

yang menempel pada lengan. Sedangkan pada kolom

beban yang diangkat setiap lengan merupakan penjumlahan berat dari keseluruhan beban

yang harus diangkat oleh setiap lengan. Perancangan mekanik untuk desain lengan robot

menulis kata menggunakan material aluminium karena ringan dan mudah dikerjakan. Pada

tabel 3.1. bagian

base

diasumsikan memiliki berat yang ringan walaupun terletak paling

dasar karena bagian

base

tidak terbebani oleh berat keseluruhan dari

prototype

lengan

robot karena seluruh lengan

Gambar

Gambar 2.3. dan Tabel 2.2. merupakan area pemrograman Arduino dan keterangan
Gambar 2.8. Bentuk Fisik Modul Bluetooth Seri HC-05 [10]
Gambar 2.18. Konfigurasi Lengan Robot Tiga Sendi [11]
Gambar 3.7. Desain 3D Keseluruhan Prototipe Lengan Robot Tampak Atas
+7

Referensi

Dokumen terkait

Penyewa guna usaha memiliki hak opsi untuk membeli aktiva yang disewa guna usaha pada akhir masa sewa guna usaha dengan harga yang telah disetujui bersama pada saat

ketersediaan sumber makanan, untuk habitat yang kurang sumber makanan maka daya jelajahnya lebih jauh, dan sebaliknya habitat yang banyak sumber makanan maka

Risk factors for severe early childhood caries in children younger than 4 years old in Bejing, China.. Efficiency of caries risk assessment in young adults

Besarnya dampak prestasi belajar verbal rendah yang dapat dicegah pada populasi apabila anak tidak menga- lami status gizi kurang pada saat usia sekolah dasar adalah 9%. Puskesmas

Istraživanje je pokazalo kako proizvodi s oznakom krovne marke Zagrebačke županije nisu dovoljno prepoznati među ispitanicima jer 85,71% ispitanika nije upoznato s

[r]

Penelitian ini bertujuan untuk mempelajari proses pembuatan Dietanolamida (DEA) dari asam lemak sawit destilat (ALSD) dan minyak kelapa (MK), mengetahui kinerja surfaktan

Para Negara Pihak juga harus mengambil langkah-Iangkah yang efcktif untuk mencegah dan mcnghukum perlakuan lain yang kejam, tidak manusiawi, atau hukuman yang menghinakan