118
i TUGAS AKHIR ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH BARANG BERDASARKAN WARNA DENGAN MENGGUNAKAN ATMEGA8535 Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Oleh : Rio Arismarjito NIM : 065114011 PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2011

ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

i

TUGAS AKHIR

ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH BARANG BERDASARKAN WARNA DENGAN MENGGUNAKAN

ATMEGA8535

Diajukan Untuk Memenuhi Salah Satu SyaratMemperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh :

Rio ArismarjitoNIM : 065114011

PROGRAM STUDI TEKNIK ELEKTROFAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMAYOGYAKARTA

2011

Page 2: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

ii

FINAL PROJECT

AUTOMATIC ROBOT ARM AS SEPARATOR OBJECT BASED ON COLOR

USING ATMEGA8535

Presented as Partial Fulfillment of the RequirementsTo Obtain the Sarjana Teknik Degree

In Electrical Engineering Study Program

Rio ArismarjitoNIM : 065114011

ELECTRICAL ENGINEERING STUDY PROGRAM SCIENCE AND TECHNOLOGY FACULTY

SANATA DHARMA UNIVERSITYYOGYAKARTA

2011

Page 3: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

iii

HALAMAN PERSETUJUAN

TUGAS AKHIR

ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH BARANG BERDASARKAN WARNA DENGAN

MENGGUNAKAN ATMEGA8535(AUTOMATIC ROBOT ARM AS SEPARATOR

OBJECT BASED ON COLOR USING ATMEGA8535)

Oleh :

Rio ArismarjitoNIM : 065114011

Telah disetujui oleh:

Pembimbing,

Martanto, S.T.,M.T. Tanggal : 6 Juni 2011

Page 4: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

iv

HALAMAN PENGESAHAN

TUGAS AKHIR

ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH BARANG BERDASARKAN WARNA DENGAN MENGGUNAKAN ATMEGA8535

(AUTOMATIC ROBOT ARM AS SEPARATOR OBJECT BASED ON COLOR USING ATMEGA8535)

Oleh :

Rio Arismarjito

NIM : 065114011

Telah dipertahankan di depan panitia penguji pada tanggal: 21 Juni 2011

dan dinyatakan memenuhi syarat

susunan panitia

Nama lengkap Tanda Tangan

Ketua : B. Wuri Harini, S.T.,M.T.

Sekertaris : Martanto, S.T.,M.T.

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

Yogyakarta, 22 Juni 2011Fakultas Sains dan TeknologiUniversitas Sanata DharmaDekan,

Page 5: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

v

PERNYATAAN KEASLIAN KARYA

“Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya atau

bagian orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka,

sebagaimana layaknya karya ilmiah”

Yogyakarta, 6 Juni 2011

Rio Arismarjito

Page 6: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

vi

HALAMAN PERSEMBAHAN

Karya tulis ini kupersembahkan untuk :

Yesus Kristus Gembalaku

Bunda Maria dan Malaikat pelindungku…

Bapak dan Ibu tercinta, untuk doanya, serta dukungannya secara moral maupun materi

Almamaterku Teknik Elektro Universitas Sanata Dharma

“Tak ada kata terlambat,

Semua indah pada waktunya, berdoa dan berusahalah”

Page 7: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

vii

HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN

AKADEMIS

Yang bertandatangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Rio Arismarjito

Nomor Mahasiswa : 065114011

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas

Sanata Dharma karya ilmiah saya yang berjudul :

ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH BARANG BERDASARKAN WARNA DENGAN MENGGUNAKAN

ATMEGA8535

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk

media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan

mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu

meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan

nama saya sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya.

Yogyakarta, 6 Juni 2011

Rio Arismarjito

Page 8: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

viii

INTISARI

Dalam dunia teknologi maupun kehidupan manusia sehari-hari, penggunaan robot saat ini sangat membantu dalam menyelesaikan tugas atau pekerjaan yang tidak bisa dilakukan oleh manusia. Kelebihan yang dimiliki robot memudahkan manusia dalam menyelesaikan pekerjaan. Oleh karena itu, agar dapat membantu manusia, robot lengan sebagai pemisah barang dibuat dengan tujuan untuk menghemat waktu dalam menyelesaikan pekerjaan dalam mengambil dan memindahkan barang, mendapatkan hasil akhir yang berkualitas, mengurangi resiko yang dapat membahayakan manusia.

Robot lengan otomatis sebagai pemisah barang berdasarkan warna menggunakan ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang dihasilkan oleh sensor TCS3200 sebagai pengidentifikasi warna objek. Warna objek yang dideteksi ditampilkan dalam penampil LCD, jika warna merah, biru atau hijau maka akan tampil nilai R G B warna tersebut dan warna objek.

Robot lengan otomatis sebagai pemisah barang berdasarkan warna menggunakan ATmega8535 sudah berhasil dibuat dan dapat bekerja dengan baik. Sensor dapat membedakan warna tiap objek yaitu merah, biru dan hijau. Robot lengan mampu mengambil dan memindahkan objek berwarna yang telah diindentifikasi oleh sensor TCS3200 ke dalam wadah penampung sesuai dengan warna objek tersebut.

Kata kunci : Robot lengan, Motor servo, TCS3200, Warna, ATmega8535

Page 9: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

ix

ABSTRACT

In the world of technology and daily human life, the use of robots is very helpful in completing tasks or jobs that can’t be done by humans. Advantages of robot is to easy human in completing the work. Therefore, in order to help humans, the robot arm as separator items was created in order to save time in completing the work in taking and moving items, get a quality end result, and reducing the risks that could harm humans.

Automatic robot arm as separator items based on color using the ATmega8535 consist of a minimum system which controls the movement of the servo motor as the actuator arm robot and process data generated by sensors TCS3200 as the identifiers color of an object. The color of the detected object is displayed in the LCD viewer, if the colors red, blue or green it will show the RGB color value and color of the object.

Automatic robot arm as separator items based on color using the ATmega8535 has been successfully established and can work well. The sensor can distinguish the color of each object that is red, blue and green. The robot arm can pick up and move colored objects that have been identified by the sensor into the container receptacle TCS3200 matches the color of the object.

Keywords : Robot arm, Motor servo, TCS3200, Color, ATmega8535

Page 10: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

x

KATA PENGANTAR

Puji dan syukur penulis haturkan pada Tuhan Yesus Kristus, karena atas rahmat dan

karunia Nya penulis dapat menyelesaikan tugas akhir ini yang berjudul “Robot Lengan

Otomatis Sebagai Pemisah Barang Berdasarkan Warna Dengan Menggunakan

ATmega8535”. Penulis menyadari mulai dari proses perancangan, pengujian alat dan proses

penyusunan skripsi ini tidak dapat lepas dari bantuan, dorongan, dan bimbingan berbagai pihak.

Oleh karena itu dengan segala kerendahan hati, penulis mengucapkan terima kasih kepada :

1. Kedua orang tua tercinta dan adik-adikku, terimakasih atas perhatian, dukungan

dan kesabaran dalam mendidik penulis.

2. Bapak Yosef Agung Cahyanta, S.T., M.T. selaku Dekan Fakultas Sains dan

Teknologi Universitas Sanata Dharma Yogyakarta.

3. Bapak Martanto , S.T., M.Eng., selaku dosen pembimbing yang menyumbangkan

pemikiran, ide, tenaga dan memberikan saran serta kritik yang membantu dalam

menyelesaikan tugas akhir ini dari awal hingga selesai.

4. Seluruh dosen dan laboran teknik elektro yang memberikan ilmu dan membantu

selama perkuliahan.

5. Rocha Ifahyana Siagian, terimakasih atas dukungan dan motivasinya.

6. Teman-teman teknik elektro angkatan 2006 dan sahabat SMAku terimakasih atas

bantuannya.

Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak kekurangan,

kelemahan dan jauh dari sempurna. Oleh karena itu dengan segenap kerendahan hati, penulis

mengharapkan kritik dan saran yang membangun untuk penyempurnaan tugas akhir ini.

terimakasih.

Yogyakarta, 6 Juni 2011

Penulis

Rio Arismarjito

Page 11: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xi

DAFTAR ISI

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

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

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

LEMBAR KEASLIAN KARYA ..................................................................................... v

HALAMAN PERSEMBAHAN ...................................................................................... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH

UNTUK KEPENTINGAN AKADEMIS ......................................................................vii

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

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

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

DAFTAR ISI ............................................................................................................... xi

DAFTAR GAMBAR ..................................................................................................... xiv

DAFTAR TABEL ........................................................................................................xviii

BAB I. PENDAHULUAN1.1 Latar Belakang....................................................................................................... 1

1.2 Tujuan dan Manfaat................................................................................................ 2

1.3 Batasan Masalah ..................................................................................................... 2

1.4 Metodologi Penelitian............................................................................................. 2

1.5 Sistematika Penulisan ............................................................................................. 4

BAB II. DASAR TEORI2.1 Mikrokontroler AVR Atmega8535 ........................................................................ 5

2.2.1 Arsitektur AVR Atmega8535 ................................................................ 5

Page 12: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xii

2.2.2 Deskripsi Mikrokontroler Atmega8535 ................................................. 5

2.2.3 Organisasi Memori AVR Atmega8535.................................................. 7

2.2.3.1 Program Memori............................................................................ 7

2.2.3.2 Data Memori.................................................................................. 7

2.2.4 Interupsi ................................................................................................. 7

2.2.5 Timer/Counter ........................................................................................ 8

2.2.5.1 Timer/Counter0 ............................................................................. 8

2.2 LCD (Liquid Crystal Display) ............................................................................. 10

2.3 Robot Lengan ....................................................................................................... 12

2.4 Gripper .............................................................................................................. 14

2.5 Sensor TCS3200................................................................................................... 15

2.6 Motor Servo.......................................................................................................... 17

2.6.1 Torsi/Momen Gaya .............................................................................. 19

2.7 Regulator Tegangan IC 7805 dan IC 7806 .......................................................... 19

BAB III. PERANCANGAN PENELITIAN3.1 Proses Kerja dan Mekanisme Gerak Robot Lengan............................................. 22

3.2 Perancangan Mekanik Robot Lengan................................................................... 24

3.3 Perancangan Perangkat Keras .............................................................................. 29

3.3.1 Arsitektur AVR Atmega8535 .............................................................. 30

3.3.2 Rangkaian Konfigurasi LCD 16x2 ...................................................... 32

3.3.3 Perancangan Sensor TCS3200 ............................................................. 33

3.3.4 Motor Servo ......................................................................................... 34

3.3.5 Regulator Tegangan menggunakan IC 7805 dan IC 7806.................. 41

Page 13: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xiii

3.4 Perancangan Perangkat Lunak ............................................................................. 43

3.4.1 Program Pengaturan Awal Posisi Robot.............................................. 44

3.4.2 Program Indentifikasi Warna Objek menggunakan Sensor TCS3200. 45

3.4.3 Program Pengendali Sudut Putar Motor Servo dalam Pengambilan dan.

Peletakan Objek....................................................................................47

BAB III. HASIL PENGAMATAN DAN PEMBAHASAN4.1 Betuk Fisik dan Sistem Kerja Robot Lengan ....................................................... 51

4.2 Hasil Data Pengujian dan Pembahasan ................................................................ 53

4.2.1 Pengujian Sensor TCS3200 ................................................................. 53

4.2.2 Pengujian Jarak Jangkauan Sensor TCS3200 ...................................... 56

4.2.3 Pengujian Arus pada Motor Servo ....................................................... 59

4.2.4 Pengamatan Pergerakan Motor Servo sebagai Aktuator

Robot Lengan.......................................................................................60

4.3 Analisa dan Pembahasan Perangkat Lunak ......................................................... 63

4.3.1 Pengendali Motor Servo....................................................................... 63

4.3.2 Identifikasi Warna Sensor TCS3200.................................................... 68

4.4 Analisa Keberhasilan Alat .................................................................................... 72

Kesimpulan dan Saran ................................................................................................... 76

Daftar Pustaka .............................................................................................................. 77

Lampiran ..............................................................................................................L1

Page 14: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xiv

DAFTAR GAMBAR

Halaman

Gambar 1.1 Diagram Blok Sistem............................................................................. 3

Gambar 2.1 Konfigurasi Pin Mikrokontroller ATmega8535 .................................... 6

Gambar 2.2 Mode Phase Correct PWM.................................................................... 9

Gambar 2.3 Mode Fast PWM ................................................................................ 10

Gambar 2.4 Baris dan Kolom Karakter pada LCD 16x2......................................... 10

Gambar 2.5 Konfigurasi kaki LCD 16x2................................................................. 11

Gambar 2.6 Anatomi Robot Lengan........................................................................ 12

Gambar 2.7 Sistem Robot Lengan ........................................................................... 13

Gambar 2.8 Jenis Gripper Mekanik......................................................................... 14

Gambar 2.9 Konfigurasi pin dan Blok Fungsional TCS3200.................................. 15

Gambar 2.10 Sample Warna dan Komposisi RGB.................................................... 16

Gambar 2.11 Motor Servo ......................................................................................... 17

Gambar 2.12 Konfigurasi Pin Motor Servo............................................................... 17

Gambar 2.13 Sinyal untuk Mengendalikan Motor Servo .......................................... 18

Gambar 2.14 Lebar Pulsa dan Posisi Servo ............................................................... 18

Gambar 2.15 Penyearah Gelombang Penuh .............................................................. 20

Gambar 2.16 IC Regulator ....................................................................................... 20

Gambar 3.1 Diagram Blok Sistem Robot Lengan ................................................... 22

Gambar 3.2 Keseluruhan Sistem Robot Lengan...................................................... 23

Gambar 3.3 Model Anatomi Robot Lengan ............................................................ 24

Gambar 3.4 Robot Lengan Komponen 1 ................................................................. 25

Page 15: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xv

Gambar 3.5 Robot Lengan Komponen 2 ................................................................. 25

Gambar 3.6 Robot Lengan Komponen 3 dan 4 ....................................................... 26

Gambar 3.7 Tinggi Total Robot Lengan.................................................................. 26

Gambar 3.8 Posisi Penempatan Barang ................................................................... 27

Gambar 3.9 Sketsa Robot Lengan Komponen 1 dan Komponen 3 ......................... 27

Gambar 3.10 Sketsa Robot Lengan Komponen 2 , Komponen 4 dan Poros ............. 28

Gambar 3.11 Gripper................................................................................................. 28

Gambar 3.12 Jarak Robot Lengan dengan Objek dan Wadahnya ............................. 29

Gambar 3.13 Rangkaian Osilator ATmega8535........................................................ 30

Gambar 3.14 Rangkaian Reset ATmega8535............................................................ 30

Gambar 3.15 Rangkaian Sistem Minimum ATmega8535......................................... 32

Gambar 3.16 Rangkaian LCD 16x2........................................................................... 33

Gambar 3.17 Pengaturan Port LCD pada Code Vision AVR ..................................... 33

Gambar 3.18 Rangkaian Sensor TCS3200 terhubung ATmega8535 ........................ 34

Gambar 3.19 Motor Servo HXT5010 ........................................................................ 35

Gambar 3.20 Motor Servo Futaba3003 ..................................................................... 35

Gambar 3.21 Rangkaian Servo ke Mikrokontroler.................................................... 36

Gambar 3.22 PWM Motor Servo HXT5010.............................................................. 39

Gambar 3.23 PWM Motor Servo Futaba3003........................................................... 39

Gambar 3.24 Rangkaian Regulator Tegangan ........................................................... 42

Gambar 3.25 Diagram Alir Utama............................................................................. 43

Gambar 3.26 Diagram Alir Pengaturan Posisi Awal Robot ...................................... 44

Gambar 3.27 Perioda 1 Gelombang........................................................................... 45

Gambar 3.28 Diagram Alir Identifikasi Warna Objek............................................... 46

Gambar 3.29 Diagram Alir Servo Mode Merah ........................................................ 48

Page 16: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xvi

Gambar 3.30 Diagram Alir Servo Mode Biru ........................................................... 49

Gambar 3.31 Diagram Alir Servo Mode Hijau.......................................................... 50

Gambar 4.1 Sistem Minimum ATmega8535........................................................... 51

Gambar 4.2 Regulator Tegangan ............................................................................ 51

Gambar 4.3 Robot Lengan Keseluruhan.................................................................. 52

Gambar 4.4 Penempatan Objek, TCS3200 dan sistem minimum ........................... 52

Gambar 4.5 Robot Lengan....................................................................................... 52

Gambar 4.6 TCS3200 .............................................................................................. 52

Gambar 4.7 Objek Berwarna ................................................................................... 52

Gambar 4.8 Wadah Objek........................................................................................ 52

Gambar 4.9 Jarak Objek 2,5 cm............................................................................... 57

Gambar 4.10 Jarak Objek 3 cm.................................................................................. 57

Gambar 4.11 Jarak Objek 4 cm.................................................................................. 57

Gambar 4.12 Jarak Objek 5 cm.................................................................................. 58

Gambar 4.13 Jarak Objek 6 cm.................................................................................. 58

Gambar 4.14 Jarak Objek 7 cm.................................................................................. 58

Gambar 4.15 Jarak Objek 8 cm.................................................................................. 58

Gambar 4.16 Jarak Objek 9 cm.................................................................................. 59

Gambar 4.17 Pengukuran Arus Motor Servo ............................................................ 59

Gambar 4.18 Sudut Putar Motor Servo 0° ................................................................. 60

Gambar 4.19 Sudut Putar Motor Servo 45° ............................................................... 60

Gambar 4.20 Sudut Putar Motor Servo 90° ............................................................... 61

Gambar 4.21 Pengamatan Sudut Putar Motor Servo 3 saat 0° .................................. 61

Gambar 4.22 Pengamatan Sudut Putar Motor Servo 3 saat 28° ................................ 61

Gambar 4.23 Pengamatan Sudut Putar Motor Servo Poros saat 40° ......................... 62

Page 17: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xvii

Gambar 4.24 Pengamatan Sudut Putar Motor Servo Poros saat 80° ......................... 62

Gambar 4.25 Pengamatan Sudut Putar Motor Servo Poros saat 120° ....................... 62

Gambar 4.26 Tampilan LCD saat Objek Merah........................................................ 71

Gambar 4.27 Tampilan LCD saat Objek Biru ........................................................... 71

Gambar 4.28 Tampilan LCD saat Objek Hijau ......................................................... 72

Gambar 4.29 Tampilan LCD saat Tidak Ada Objek ................................................. 72

Page 18: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

xviii

DAFTAR TABELHalaman

Tabel 2.1 Hubungan PIN dan Interrupt..................................................................8

Tabel 2.2 Konfigurasi kaki LCD 16x2.................................................................11

Tabel 2.3 Kombinasi Kaki Selektor.....................................................................16

Tabel 2.4 Penskalaan Frekuensi Output TC3200.................................................16

Tabel 2.5 Regulator Tegangan Positif Seri 78XX ...............................................21

Tabel 3.1 Penggunaan Port pada Mikrokontroler...............................................31

Tabel 3.2 Karakteristik Motor Servo ...................................................................35

Tabel 3.3 Perhitungan Sudut Putar Motor Servo .................................................37

Tabel 3.4 Data Pengujian Motor Servo................................................................38

Tabel 3.5 Perhitungan Torsi Motor Servo pada Robot Lengan ...........................40

Tabel 4.1 Data Pengujian Sensor TCS3200 pada Kondisi Cahaya Ruang Terang

dan pada Kondisi Ruang Gelap............................................................54

Tabel 4.2 Nilai Rata-Rata R G B Ruang Terang dan pada Ruang Gelap ............56

Tabel 4.3 Data Pengujian Jarak Jangkauan TCS3200 .........................................57

Tabel 4.4 Data Pengujian Tegangan dan Arus Motor Servo ...............................59

Tabel 4.5 Data Hasil Percobaan Robot dalam Mengambil dan Meletakan Objek

Berwarna yang Tersusun Secara Acak ................................................73

Tabel 4.6 Data Hasil Percobaan Robot dalam Mengambil dan Meletakan Objek

Berwarna yang Tersusun Secara Berurutan.........................................74

Page 19: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

1

BAB I

PEDAHULUAN

1.1 Latar Belakang

Penggunaan robot di dalam kehidupan manusia semakin meningkat dari waktu ke

waktu. Robot sering digunakan untuk menangani berbagai tugas yang tidak dapat ditangani

oleh manusia, seperti di bidang nuklir, kimia, perjalanan ke luar angkasa dan tugas-tugas

lain yang dilakukan di lingkungan yang berbahaya [1]. Hal ini terjadi karena robot

memiliki banyak kelebihan yang tidak dimiliki manusia, diantaranya : menghasilkan

output yang sama ketika mengerjakan suatu pekerjaan secara berulang-ulang, tidak mudah

lelah, ketelitian dan kecepatan menyelesaikan tugas, dapat diprogram ulang sehingga dapat

difungsikan untuk beberapa tugas yang berbeda, dan lebih sedikit melakukan kesalahan

dibandingkan manusia.

Berbagai variasi robot yang diciptakan oleh manusia dapat membantu melakukan

tugas-tugas yang tidak dapat atau sulit dilakukan oleh manusia, salah satunya adalah robot

lengan. Robot lengan biasanya digunakan untuk mengambil dan memindahkan

objek/barang. Pada umumnya robot lengan dapat melakukan dua gerakan yaitu gerakan

berputar dan gerakan memanjang atau memendek [2]. Robot lengan memiliki 2 sisi yang

digunakan dalam melakukan pergerakan tersebut. Salah satu sisi yang disebut poros

ditanam pada bidang yang statis dan sisi lain disebut ujung (end effector) yang dapat

dimuati dengan tool tertentu sesuai dengan tugas robot [2]. Umumnya tool yang digunakan

adalah gripper yang dapat difungsikan sebagai penjepit atau pencengkeram objek yang

akan diambil. Selain itu pergerakan robot lengan dapat diatur sesuai dengan kebutuhan

yang dinginkan, baik itu sudut putaran robot lengan atau pun jarak jangkauan lengan robot.

Melihat kemampuan robot lengan yang lebih dibandingkan manusia maka penulis

ingin membuat aplikasi robot lengan sebagai pemindah barang. Robot lengan ini berfungsi

untuk memindahkan barang dan menempatkannya berdasarkan warna barang tersebut.

Robot ini menggunakan sensor TCS3200 sebagai pengidentifikasi warna objek, 4 motor

servo sebagai aktuator robot lengan, dan gripper sebagai penjepit atau pencekram

objek/barang. Robot lengan bekerja secara otomatis sesuai dengan instruksi yang telah

diprogram. Saat TCS3200 mengidentifikasi warna objek/barang maka data yang dihasilkan

dikirim ke mikrokontroler lalu diolah dan kemudian menjalankan instruksi menggerakan

Page 20: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

2

motor servo untuk mengambil dan menempatkan barang tersebut pada kotak yang sudah

tersedia. Penempatan barang dan wadahnya sudah diatur sedemikian rupa sesuai dengan

jangkauan robot lengan dan karakteristik putaran motor servo yang digunakan.

1.2 Tujuan dan Manfaat

Tujuan penelitian ini adalah menghasilkan robot lengan sebagai pemindah barang

secara otomatis berdasarkan warna barang.

Manfaat dari penelitian ini adalah membantu memudahkan pekerjaan manusia baik

dari segi efisiensi waktu, tenaga, kualitas dan hasil yang didapat.

1.3 Batasan Masalah

Batasan masalah dari penelitian ini adalah :

1. Menggunakan sensor TCS3200 sebagai pengindentifikasi warna

objek/barang.

2. Warna barang yang dideteksi hanya tiga warna yaitu merah, biru, dan hijau.

3. Warna objek disusun secara acak dan terbuat dari bahan akrilik.

4. Barang berbentuk kotak yang berukuran 3x3x3 cm dengan berat sekitar 5

gram.

5. Jarak pengambilan barang dan wadah penampung barang dengan robot

lengan diatur dengan jarak 6 cm terhadap kotak penampung barang dan 18

cm terhadap posisi objek/barang, agar robot lengan dapat menjangkau barang

dalam proses pengambilan dan peletakan barang ke dalam wadah

penampung.

6. Menggunakan motor servo standar sebagai aktuator robot lengan.

7. Mikrokontroler menggunakan keluarga AVR ATmega8535 dan diprogram

menggunakan bahasa pemrograman C.

1.4 Metodologi Penelitian

Untuk dapat merealisasikan penelitian maka digunakan metode seperti berikut :

1. Mencari sumber informasi/literatur. Studi kepustakaan yang mencakup

literatur-literatur mengenai, datasheet ATmega8535, sensor TCS3200, dan

motor servo standar.

Page 21: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

3

2. Perancangan subsistem hardware dan software. Tahap ini bertujuan untuk

mencari bentuk model yang optimal dari sistem yang akan dibuat dengan

mempertimbangkan dari berbagai faktor permasalahan dan kebutuhan yang

telah ditentukan. Gambar 1.1 adalah model diagram blok sistem yang akan

dirancang.

Gambar 1.1. Diagram Blok Sistem

3. Perancangan dan pembuatan sistem mekanik penggerak robot lengan dengan

model gambar 3D (3 dimensi). Kemudian menggunakan aklrik sebagai bahan

dasar pembuat robot lengan.

4. Perancangan dan pembuatan rangkaian elektronik sistem minimum

ATmega8535 dan regulator tegangan. Tahap ini meliputi perhitungan teoritis

dan pembuatan rangkaian PCB menggunakan software EAGLE.

5. Perancangan dan pembuatan program menggunakan bahasa C dengan

software CodeVision AVR.

6. Proses pengambilan data. Teknik pengambilan data dilakukan dengan melihat

respon sensor TCS3200 terhadap warna merah, biru dan hijau serta motor

servo.

7. Analisa dan penyimpulan hasil percobaan. Analisa dan penyimpulan hasil

percobaan dapat dilakukan dengan melihat presentasi error yang terjadi pada

kinerja sistem secara keseluruhan, yaitu kondisi sensor TCS3200 terhadap

kondisi pencahayaan ruang yaitu jika mendapat cahaya terang atau dengan

pencahayaan yang kurang, jarak jangkau sensor, pergerakan motor servo

sebagai aktuator robot lengan , dan tingkat keberhasilan robot lengan dalam

memisahkan barang.

MikrokontrolerSensor TCS3200

Identifikasi warna

Motor servo

Aktuatorrobot lengan

Motor servo 1

Motor servo 2

Motor servo 4

Motor servo 3

Objek

Page 22: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

4

1.5 Sistematika Penulisan

Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I: PENDAHULUAN

Bab ini berisi latar belakang masalah, tujuan dan manfaat, batasan masalah,

metodologi penelitian dan sistematika penulisan.

BAB II : DASAR TEORI

Bab ini berisi teori-teori yang mendukung kerja sistem dan teori yang

digunakan dalam perancangan.

BAB III : PERANCANGAN PENELITIAN

Bab ini berisi penjelasan alur perancangan robot lengan sebagai pemisah

barang berdasarkan warna dengan menggunakan Atmega8535.

BAB IV : HASIL PENGAMATAN DAN PEMBAHASAN

Bab ini berisi pengamatan dan pembahasan data yang diperoleh, berupa

data sensor TCS3200, motor servo dan tingkat keberhasilan keseluruhan

sistem robot lengan.

BAB V : KESIMPULAN DAN SARAN

Bab ini berisi ringkasan hasil penelitian yang telah dilakukan dan usulan

yang berupa ide-ide untuk perbaikan atau pengembangan terhadap

penelitian yang telah dilakukan.

Page 23: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

5

BAB II

DASAR TEORI

2.1 Mikrokontroler AVR ATmega8535

AVR (Alf and Vegard’sRiscProcessor) merupakan seri mikrokontroler CMOS 8-bit

yang diproduksi oleh Atmel berbasis arsitektur RISC (Reduced Instruction Set Computer).

Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega8535. Hampir semua

instruksi dieksekusi dalam satu siklus clock dan mempunyai 32 register general-purpose,

timer/counter fleksibel dengan mode compare, interupsi internal dan eksternal, serial

UART, programmable Watchdog Timer, dan power saving mode. AVR juga mempunyai

ADC, PWM internal dan In-System Programmable Flash on-chip yang mengijinkan

memori program untuk diprogram ulang [3].

2.1.1 Arsitektur AVR ATmega8535

Mikrokontroler ATmega8535 memiliki arsitektur sebagai berikut [3] :

a. Saluran IO sebanyak 32 buah, yaitu Port A, Port B, Port C dan Port D

b. ADC 10 bit sebanyak 8 Channel

c. Tiga buah timer/counter yaitu Timer 0, Timer 1, dan Timer 2

d. Watchdog Timer dengan osilator internal

e. SRAM sebanyak 512 byte

f. Memori Flash sebesar 8 kb

g. Sumber Interupsi internal dan eksternal

h. Port SPI (Serial Pheriperal Interface)

i. EEPROM on board sebanyak 512 byte

j. Komparator analog

k. Port USART (Universal ShynchronousAshynchronous Receiver Transmitter)

2.1.2 Deskripsi Mikrokontroler ATmega8535

Konfigurasi Pin Mikrokontroller ATmega8535 dengan kemasan 40-pin DIP (dual

in-line package) dapat dilihat pada Gambar 2.1. Untuk memaksimalkan performa dan

paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah

Page 24: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

6

untuk program dan data). Ketika sebuah instruksi sedang dikerjakan maka instruksi

berikutnya diambil dari memori program [3].

Mikrokontroler Atmega 8535 memiliki konfigurasi Pin sebagai berikut [3] :

a. VCC (power supply)

b. GND (ground)

c. Port A (PA7..PA0) Port A berfungsi sebagai input analog pada ADC (analog

digital converter). Port A juga berfungsi sebagai suatu Port I/O 8-bit dua

arah.

d. Port B (PB7..PB0) Port B adalah suatu Port I/O 8-bit dua arah dengan

resistor internal pull-up (yang dipilih untuk beberapa bit).

e. Port C (PC7..PC0) Port C adalah suatu Port I/O 8-bit dua arah dengan

resistor internal pull-up (yang dipilih untuk beberapa bit).

f. Port D (PD7..PD0) Port D adalah suatu Port I/O 8-bit dua arah dengan

resistor internal pull-up (yang dipilih untuk beberapa bit).

g. RESET (Reset input)

h. XTAL1 (Input Oscillator)

i. XTAL2 (Output Oscillator)

j. AVCC adalah pin penyedia tegangan untuk Port A dan ADC.

k. AREF adalah pin referensi analog untuk ADC.

Port A berfungsi sebagai input analog pada A/D Konverter dan port I/O 8-bit dua

arah. Port B, Port C, Port D adalah suatu port I/O 8-bit dua arah dengan resistor internal

Gambar 2.1. Konfigurasi Pin Mikrokontroler ATmega8535 [3]

Page 25: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

7

pull-up (yang dipilih untuk beberapa bit). Pada rangkaian reset, waktu pengosongan

kapasitor dapat dihitung dengan persamaan 2.1.

T = R x C (2.1)

2.1.3 Organisasi Memori AVR ATmega8535

AVR arsitektur mempunyai dua ruang memori utama, Ruang. Memori data dan

Memori program. ATmega8535 juga memiliki fitur EEPROM Memori untuk penyimpanan

data.

2.1.3.1 Memori Program

Kode program disimpan dalam flash memory, yaitu memori jenis non-volatile yang

tidak akan hilang datanya meskipun catu daya dimatikan [5]. Dalam ATmega8535 terdapat

8Kbyte On-Chip di dalam sistem Memory Flash Reprogrammable untuk penyimpanan

program. Untuk keamanan perangkat lunak, flash memori dibagi menjadi dua bagian,

yaitu boot program dan bagian aplikasi program [3].

2.1.3.2. Memori Data

Memori data adalah memori RAM (Random Access Memory) yang digunakan untuk

keperluan program. Memori data terbagi menjadi 4 bagian yaitu : 32 General Purphose

Register adalah register khusus yang bertugas untuk membantu eksekusi program oleh

ALU (Arithmatich Logic Unit). Dalam istilah processor komputer sehari-hari GPR dikenal

sebagai “chace memory” [16].

I/O register dan Aditional I/O register adalah register yang difungsikan khusus untuk

mengendalikan berbagai pheripheral dalam mikrokontroler seperti pin, port, timer/counter

[16].

2.1.4 Interupsi

Interupsi adalah suatu kondisi dimana mikrokontroler akan berhenti sementara dari

program utama untuk melayani instruksi-instruksi pada interupsi kemudian kembali

mengerjakan instruksi program utama setelah instruksi-instruksi pada interupsi selesai

dikerjakan [4].

Page 26: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

8

Table 2.1. Hubungan PIN dan Interupsi [4]

Jenis interupt PIN pada Atemega 8535

INT0 PORTD.2

INT1 PORTD3

INT2 PORTB.2

ATmega8535 menyediakan tiga interupsi eksternal yaitu, INT0, INT1, dan INT2.

Masing-masing interupsi tersebut terhubung dengan pin ATmega8535 seperti ditunjukan

pada Tabel 2.1. Interupsi eksternal bisa dilakukan dengan memberikan logika 0 atau

perubahan logika (rissing edge dan falling edge) pada pin interupsi yang bersangkutan.

2.1.5 Timer/Counter

ATmega 8535 memiliki tiga modul timer yang terdiri dari dua buah timer/counter 8

bit dan satu buah timer/counter 16 bit. Ketiga modul ini dapat diatur dalam mode yang

berbeda-beda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu

semua timer/counter juga dapat difungsikan sebagai sumber interupsi [5].

2.1.5.1 Timer/conter0

Timer/counter0 merupakan modul timer/counter 8 bit dengan fitur sebagai berikut :

a. timer/counter 1 kanal

b. Auto reload yaitu timer akan dinolkan kembali saat match compare

c. Dapat menghasilkan pulsa PWM (pulse width modulation) dengan glitch

free

d. Frequency generator

e. Prescalar 10 bit untuk timer

f. Membangkitkan interupsi saat timer overflow dan atau match compare

Perhitungan overflow interrupt sebagai pembangkit PWM ditunjukan pada

persamaan 2.1 dan 2.2 berikut [14].

= (2.2)

ℎ = ∗ (2.3)

Page 27: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

9

T O = Timer Overflow (T x bit timer)

OCR = nilai cacahan pulsa (Output Compare Register/OCR)

T = Lebar pulsa

Berikut merupakan mode-mode operasi timer :

a. Mode normal, timer digunakan untuk menghitung saja, membuat delay, dan

mengitung selang waktu [11].

Gambar 2.2. Mode Phase Correct PWM [3]

b. Mode phase correct PWM (PCP), digunakan untuk menghasilkan sinyal

PWM dimana nilai register counter (TCNT0) yang mencacah naik dan

turun secara terus menerus akan selalu dibandingakan dengan register

pembanding OCR0 [5]. Hasil perbandingan register TCNT0 dan OCR0

digunakan untuk membangkitkan sinyal PWM yang dikeluarkan pada OC0

seperti ditunjukan Gambar 2.2.

c. CTC (Clear timer on compare match), register counter (TCNT0) akan

mencacah naik kemudian di-reset atau kembali menjadi 0x00 pada saat nilai

TCNT0 sama dengan OCR0. Sebelumnya OCR diset dulu, karena timer 0

dan 2 maksimumnya 255, maka range OCR 0-255 [5].

d. Fast PWM, mode ini hampir sama dengan mode phase correct PWM,

hanya perbedaannya adalah register counter TCNT0 mencacah naik saja

dan tidak pernah mencacah turun seperti terlihat pada Gambar 2.3 [5].

Page 28: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

10

Gambar 2.3. Mode Fast PWM [3]

2.2 LCD (Liquid Crystal Display)

Terdapat 2 jenis LCD yaitu LCD karakter dan LCD grafik. LCD karakter, adalah

LCD yang tampilannya terbatas pada tampilan karakter, khususnya karakter ASCII (seperti

karakter-karakter yang tercetak pada keyboard komputer). Sedangkan LCD grafik, adalah

LCD yang tampilannya tidak terbatas, bahkan dapat menampilkan foto. LCD grafik inilah

yang terus berkembang seperti layar LCD yang biasa dilihat di notebook/laptop [6].

Jenis LCD karakter yang beredar di pasaran biasa dituliskan dengan bilangan matriks

dari jumlah karakter yang dapat dituliskan pada LCD tersebut, yaitu jumlah kolom karakter

dikali jumlah baris karakter. Sebagai contoh, LCD16x2, artinya terdapat 16 kolom dalam 2

baris ruang karakter seperti ditunjukan pada Gambar 2.4, yang berarti total karakter yang

dapat dituliskan adalah 32 karakter [6].

Gambar 2.4. Baris dan Kolom Karakter pada LCD 16x2 [6]

Page 29: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

11

Agar dapat mengendalikan LCD karakter dengan baik, tentu diperlukan koneksi yang

benar. Untuk itu perlu diketahui pin-pin antarmuka yang dimiliki oleh LCD karakter

seperti yang ditunjukan pada Gambar 2.5 dan Tabel 2.2.

Gambar 2.5. Konfigurasi kaki LCD 16x2 [6]

Tabel 2.2. Konfigurasi kaki LCD 16x2 [6]

Nomor

PIN

PIN Keterangan

1 VSS GND

2 VDD 5V

3 Vo Kontras

4 RS

5 R/W Read / Write

6 EN Enable

7 DB0 Data 0

8 DB1 Data 1

9 DB2 Data 2

10 DB3 Data 3

11 DB4 Data 4

12 DB5 Data 5

13 DB6 Data 6

14 DB7 Data 7

15 - -

16 - -

Display karakter pada LCD diatur oleh pin EN, RS dan R/W, dimana: Jalur EN

dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa data sedang

Page 30: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

12

dikirimkan. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat

logika low “0” dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang

lain telah siap, set EN dengan logika “1” dan tunggu untuk sejumlah waktu tertentu (sesuai

dengan datasheet dari LCD tersebut) dan berikutnya set EN ke logika low “0” lagi. Jalur

RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan dianggap sebagai

sebuah perintah atau instruksi khusus (seperti clear screen, posisikursor, dll). Ketika RS

berlogika high “1”, data yang dikirim adalah data text yang akan ditampilkan pada display

LCD. Sebagai contoh, untuk menampilkan huruf “1” pada layer LCD maka RS harus diset

logika high “1”, jalur R/W adalah jalur control Read/Write. Ketika RW berlogika low (0),

maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high

”1”, maka program akan melakukan pembacaan memori dari LCD. Sedangkan pada

aplikasi umum pin R/W selalu diberi logika low “0”. Pada akhirnya, bus data terdiri dari 4

atau 8 jalur (bergantung pada mode operasi yang dipilih oleh user). Pada kasus bus data 8

bit, jalur diacukan sebagai DB0 s/d DB7.

2.3 Robot Lengan

Robot lengan merupakan gabungan dari beberapa segmen dan sendi yang secara

umum dibagi menjadi tiga bagian , yaitu : arm, wirst, dan gripper. Robotic Industries

Association (RIA) mendefinisikan robot lengan sebagai lengan yang didesain untuk

memindahkan material, benda, alat tertentu lewat pergerakan yang terprogram untuk

melakukan berbagai macam tugas [7].

Gambar 2.6. Anatomi Robot Lengan [7]

Page 31: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

13

Robot lengan diilustrasikan pada Gambar 2.6 adalah robot lengan yang memiliki dua

lengan dan pergelangan. Di ujung pergelangan dapat diinstal berbagai tool sesuai dengan

fungsi yang diharapakan. Jika dipandang dari sudut pergerakan maka terdiri dari tiga

pergerakan utama yaitu badan robot yang dapat berputar ke kiri dan ke kanan, lengan

masing-masing dapat bergerak ke atas dan ke bawah, dan gerak pergelangan sesuai dengan

sifat tool [8].

Perangkat pendukung robot lengan secara umum dapat ditunjukan pada Gambar 2.7

yang terdiri dari beberapa komponen, yaitu :

1. Manipulator

2. Sensor

3. Aktuator

4. Kontroler

Gambar 2.7. Sistem Robot Lengan [7]

Manipulator adalah bagian mekanik yang dapat difungsikan untuk memindah,

mengangkat dan memanipulasi benda kerja. Sensor adalah komponen berbasis

instrumentasi (pengukuran) yang berfungsi sebagai pemberi informasi tentang berbagai

keadaan atau kedudukan dari bagian-bagian robot.

Aktuator adalah komponen penggerak yang jika dilihat dari prinsip penghasil

geraknya dapat dibagi menjadi tiga bagian yaitu penggerak berbasi motor listrik (motor

Page 32: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

14

servo, motor steper, motor DC dan sebagainya), penggerak pneumatik (berbasis kompresi:

udara, nitrogen) dan penggerak hidrolik (berbasis benda cair: minyak pelumas)

Kontroler adalah rangkaian elekronik berbasis mikroprosesor yang berfungsi sebagai

pengatur seluruh komponen.

2.4 Gripper

Gripper adalah sebuah efektor yang berfungsi untuk menggenggam dan menahan

objek. Objek ini merupakan sebuah komponen yang akan dipindahkan oleh robot dapat

berupa kertas, botol, bahan mentah dan peralatan-peralatan lain [9].

Menurut jumlah peralatan penggenggam dan penahan, gripper dapat diklasifikasikan

menjadi dua, yaitu: gripper tunggal dan gripper ganda, masing masing memiliki kelebihan dan

kekurangan sesuai dengan tujuan dari sistem robot. Gripper tunggal diartikan bahwa hanya ada

satu peralatan untuk menggenggam dan menahan yang dipasang pada wrist. Gripper ganda

diartikan bahwa ada dua peralatan yang berfungsi sebagai penggenggam dan penahan objek

yang dipasang pada wrist [9].

Gambar 2.8. Jenis Gripper Mekanik [9]

Ada 3 jenis gripper yang dikenal seperti gripper mekanik, gripper vacuum dan gripper

magnetic. Mechanical gripper didesain untuk menggenggam dan menahan objek dengan

Page 33: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

15

memberikan kontak pada objek. Biasanya menggunakan finger/jari mekanik yang disebut

dengan jaws. Finger ini dapat dilepas dan dipasang sehingga sangat fleksibel pemakaiannya.

Sumber tenaga yang berikan pada gripper ini bisa berupa pneumatik, hidrolik, dan elektrik.

2.5 Sensor TCS3200

TCS3200 adalah IC pengkonversi warna cahaya ke frekuensi. Ada dua komponen

utama pembentuk IC ini yaitu, fotodioda dan pengkonversi arus ke frekuensi seperti di

tunjukan pada Gambar 2.9 [10].

Warna dasar penyusun ada tiga yaitu merah, hijau, dan biru atau lebih dikenal

dengan istilah RGB (Red, Green, Blue) . Gambar 2.10 menunjukan beberapa sample warna

dan komposisi RGB. Fotodioda pada IC TC3200 disusun secara array 8x8 dengan

konfigurasi sebagai berikut : 16 fotodioda untuk memfilter warna merah, 16 fotodioda

untuk memfilter warna hijau, 16 fotodioda untuk memfilter warna biru dan 16 fotodioda

tanpa filter.

Gambar 2.9. Konfigurasi Pin dan Blok Fungsional TCS3200 [10]

Page 34: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

16

Gambar 2.10. Sample Warna dan Komposisi RGB [18]

Dapat dilakukan pengaturan pada fotodioda yang akan dipakai sebagai pemfilter

warna yaitu dengan mengatur melalui kaki selektor S2 dan S3. Kombinasi kaki S2 dan S3

dapat dilihat pada Tabel 2.3.

Tabel 2.3 Kombinasi Kaki Selektor [10]

S2 S3 Fotodioda yang aktif

0 0 Pemfilter merah

0 1 Pemfilter biru

1 0 Tanpa filter

1 1 Pemfilter hijau

Frekuensi output TCS3200 bisa diskala dengan mengatur kaki selektor S0 dan S1.

Penskalaan output ditunjukan pada tabel 2.4 berikut.

Tabel 2.4 Penskalaan Frekuensi Output TC3200 [10]

S0 S1 Skala Frekuensi Output

0 0 Power Down0 1 2%1 0 20%1 1 100%

Page 35: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

17

2.6 Motor Servo

Motor servo biasanya digunakan untuk robot berkaki, lengan robot atau sebagai

aktuator pada mobil robot. Motor servo adalah sebuah motor dengan sistem umpan balik

tertutup di mana posisi dari motor akan diinformasikan kembali ke rangkaian kontrol yang

ada di dalam motor servo. Motor servo terdiri dari sebuah motor DC, beberapa gear,

sebuah potensiometer, sebuah output shaft dan sebuah rangkaian kontrol elektronik [11].

Gambar 2.11. Motor Servo [15]

Motor servo dikemas dalam bentuk kotak segiempat seperti ditunjukan pada Gambar

2.11, terdiri dari tiga kabel konektor yaitu power (Vdd), control (I/O pin) dan ground (Vss)

seperti ditunjukan pada gambar 2.12. Gear motor servo ada yang terbuat dari plastik, metal

atau titanium. Di dalam motor servo terdapat potensiometer yang digunakan sebagai sensor

posisi. Potensiometer tersebut dihubungkan dengan output shaft untuk mengetahui posisi

aktual shaft. Ketika motor dc berputar maka output shaft juga berputar dan sekaligus

memutar potensiometer. Rangkaian kontrol dapat membaca kondisi potensiometer tersebut

untuk mengetahui posisi akutal shaft. Jika posisinya sesuai dengan yang diingikan , maka

motor dc akan berhenti [4].

Gambar 2.12. Konfigurasi Pin Motor Servo [15]

ada dua jenis motor servo yaitu :

1. Motor servo standard, yaitu yang mampu bergerak CW (clockwise) dan

CCW (counter clockwise) dengan sudut operasi tertentu, misalnya 60°,

90°, atau 180°.

Page 36: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

18

2. Motor servo continous, motor servo yang mampu bergerak CW dan CCW

tanpa batasan sudut operasi (berputar secara kontiyu)

Motor servo biasanya menggunakan tegangan 4,8 V hingga 7,2 V. Motor servo

dikendalikan dengan cara mengirimkan sebuah pulsa yang lebarnya bervariasi. Lebar pulsa

antara 1 ms sampai 2 ms dengan periode pulsa sebesar 20 ms.

Gambar 2.13. Sinyal untuk Mengendalikan Motor Servo [4]

Lebar pulsa akan mengakibatkan perubahan posisi pada motor servo. Misalnya

sebuah pulsa 1,5 ms akan memutar motor pada posisi 90° (posisi netral). Agar posisi servo

tetap pada posisi maka pulsa harus terus diberikan pada servo. Jadi mesikipun ada gaya

yang melawan, servo akan tetap bertahan pada posisinya. Gaya maksimum servo

tergantung dari rentang torsi servo.

Gambar 2.14. Lebar Pulsa dan Posisi Servo [4]

Ketika sebuah pulsa yang dikirim ke servo kurang dari 1 ms servo akan berputar

CCW menuju ke posisi tertentu dari posisi netral. Jika pulsa yang dikirim lebih dari 1,5 ms

Page 37: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

19

servo akan berputar CW menuju posisi tertentu dari posisi netral seperti di tunjukan pada

gambar 2.14. Setiap servo memiliki spesifikasi lebar pulsa minimum dan maksimum

sendiri-sendiri, tergantung jenis dan merk servo. Umumnya antara 1 ms sampai 2 ms.

Parameter lain yang berbeda antara servo satu dengan servo lainnya adalah kecepatan

servo untuk berubah dari posisi satu ke posisi lainnya (operating speed) [4].

2.6.1 Torsi / Momen Gaya

Momen Gaya (Torsi (τ)) adalah kemampuan gaya F memutar/merotasi benda

terhadap poros diam. Sehingga semakin besar torsi (τ) maka gaya F memutar benda pun

semakin besar [21].

Rumus :

τ = F r sin 0 (2.4)

τ = Torsi (N-m)

F = Gaya (N), F = m x g

r = Jarak dari titik pangakal gaya sampai sumbu putar

0 = Derajat sumbu putar

2.7 Regulator Tegangan IC 7805 dan 7806

Perangkat elektronika mestinya dicatu oleh suplai arus searah DC (direct current)

yang stabil agar dapat bekerja dengan baik. Baterai atau accu adalah sumber catu daya DC

yang paling baik. Namun untuk aplikasi yang membutuhkan catu daya lebih besar, sumber

dari baterai tidak cukup. Sumber catu daya yang besar adalah sumber bolak-balik AC

(alternating current) dari pembangkit tenaga listrik. Untuk itu diperlukan suatu perangkat

catu daya yang dapat mengubah arus AC menjadi DC [12]. Dengan prinsip penyearah

(rectifier) maka dapat dihasilkan tegangan DC seperti ditunjukkan pada Gambar 2.15. Pada

saat terminal A positif dan terminal B negatif , dioda D2 dan D3 berada dalam kondisi

menghantar arus seadangkan D4 dan D1 tidak menghantar. Pada saat terminal A negatif dan

B positif , dioda yang menghantar adalah D4 dan D1, sedang D2 dan D3 tidak menghantar.

Dengan demikian setiap setengah perioda tegangan bolak balik ada dua dioda yang

menghantar (conduct) secara bersamaan dan dua buah dioda lainnya tidak menghantar.

sehingga menghasilkan bentuk gelombang penuh. Transformator diperlukan untuk

Page 38: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

20

menurunkan tegangan AC dari jala-jala listrik pada kumparan primernya menjadi tegangan

AC yang lebih kecil pada kumparan sekundernya.

Gambar 2.15. Penyearah Gelombang Penuh [12]

Penentuan nilai kapasitor yang berfungsi untuk memperkecil ripple Untuk itu dapat

digunakan persamaan 2.5 sebagai tegangan ripple [22].

Vripple = ∆ = (2.5)

Vr = Tegangan ripple

I = Arus

T = 1/f

C = kapasitor

Rangkaian penyearah pada dasarnya sudah cukup bagus jika tegangan ripple-nya

kecil, namun ada masalah pada stabilitas tegangan yang dihasilkan. Jika tegangan PLN

naik/turun, maka tegangan output-nya juga akan naik/turun. Untuk mengatasi hal tersebut

maka digunakan IC regulator sebagai penstabil tegangan. kongifurasi pin IC regulator

ditunjukan pada Gambar 2.16.

Gambar 2.16. Konfigurasi pin IC Regulator [17]

Page 39: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

21

Karakteristik IC Regulator :

a. Output arus 1A

b. Output Tegangan 5, 6, 8, 9, 10, 12, 15, 20, 24 V

c. Dapat bertahan pada suhu yang berlebihan

Tabel 2.5 menunjukkan beberapa contoh IC regulator seri 78XX dengan keluaran

dan tegangan minimum yang diperlukan.

Tabel 2.5. Regulator Tegangan Positif Seri 78XX [13]

IC Part Tegangan Keluaran Tegangan Masukan Minimum

7805 +5 V 7,37806 +6 V 8,37810 +10 V 12,57812 +12 V 14,67815 +15 V 17,77824 +24 V 27,1

Page 40: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

BAB III

PERANCANGAN PENELITIAN

Dalam bab III ini akan dibahas mengenai perancangan perangkat keras dan

perancangan perangkat lunak. Pembahasan ini meliputi :

a. Proses kerja dan mekanisme robot lengan

b. Perancangan mekanik

c. Perancangan perangkat keras

d. Perancangan perangkat lunak

3.1 Proses Kerja dan Mekanisme Gerak Robot Lengan

Pada tugas akhir ini, akan dibuat sebuah robot lengan yang mampu memindahkan

dan menempatkan barang secara otomatis berdasarkan warna barang. Digunakan sensor

TCS3200 yang mengidentifikasi warna barang dan motor servo sebagai aktuator. Saat

sensor TC3200 medeteksi warna barang maka data yang dihasilkan TCS3200 akan diolah

di dalam mikrokontroler yang telah diprogram kemudian akan menjalankan motor servo

sebagai aktuator robot lengan seperti ditunjukan pada Gambar 3.1 yang merupakan

diagram blok sistem.

Gambar 3.1. Diagram Blok Sistem Robot Lengan

Page 41: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

23

Proses mekanisme pergerakan robot lengan diawali dengan proses untuk

memposisikan robot lengan dengan tepat yaitu pada posisi berdiri tegak. Robot lengan

akan mulai bergerak secara otomatis setelah menerima data dari sensor TCS3200 sebagai

identifikasi warna barang. Proses selanjutnya adalah pengambilan dan peletakan

barang/objek yang dimulai dengan pergerakan aktuator pada link 2. Motor servo 3 pada

link 2 menggerakan seluruh bidang pada joint 2 lalu di ikuti link 1 yang menggerakan

seluruh bidang pada joint 1. Pergerakan kedua link tersebut di atur dalam mikrokontoler

dengan memberi sudut putar dalam bentuk pulsa PWM pada motor servo yang sesuai

sehingga posisi robot lengan tepat pada barang agar pada saat pencengkeraman dilakukan

dapat mencengkeram barang dengan baik. Proses pencekraman dilakukan oleh motor servo

1 yang menggerakan gripper sebagai pencengkeram barang. Kemudian motor servo 3

bergerak ke posisi semula agar saat proses peletakan barang tidak terjadi benturan. Proses

selanjutnya adalah meletakan barang pada kotak penampungan barang yang disesuaikan

dengan warna barang. Pada proses ini motor servo 4 pada poros robot mempunyai peran

utama, motor tersebut akan menggerakan poros robot lengan dengan sudut putar yang telah

diatur sesuai dengan warna barang yang telah diidentifikasi oleh sensor TCS3200. Jika

barang berwana merah maka sudut putar motor servo 4 bergerak dari 180° ke 140°, jika

barang berwarna biru maka sudut putar motor dari 180° ke 100°, jika barang berwarna

hijau maka sudut putar motor dari 180° ke 120°. Keterbatasan gerakan link dikarenakan

oleh karakteristik motor yang digunakan yaitu motor servo standar yang memiliki sudut

putar dari 0° sampai 180°. Gambar 3.2 menunjukan keseluruhan sistem robot lengan.

Gambar 3.2. Keseluruhan Sistem Robot Lengan

Page 42: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

24

3.2 Perancangan Mekanik Robot Lengan

Pada tahap ini dilakukan perancangan mekanik dari robot tersebut, antara lain

mendisain ukuran robot, penggunaan bahan dasar untuk mekanik robot yaitu aklirik setebal

3 mm. Pendisainan robot menggunakan software Google Sketchup untuk gambar tiga

dimensi dan software Corel Draw untuk gambar dua dimensi. Robot lengan terdiri dari 5

bagian utama yaitu poros, gripper, komponen 1, komponen 2, komponen 3, komponen 4.

Gambar 3.3 menunjukan anatomi robot lengan secara keseluruhan.

Gambar 3.3. Model Anatomi Robot Lengan

Berikut adalah gambar detail dari bagian-bagian robot lengan, yaitu: komponen 1

ditunjukan Gambar 3.4, komponen 2 ditunjukan Gambar 3.5, komponen 3 dan 4

ditunjukan Gambar 3.6, tinggi robot ditunjukan Gambar 3.7

Page 43: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

25

Gambar 3.4. Robot Lengan Komponen 1

Gambar 3.5. Robot Lengan Komponen 2

Page 44: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

26

Gambar 3.6. Robot Lengan Komponen 3 dan 4

Gambar 3.7. Tinggi Total Robot Lengan

Page 45: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

27

Untuk penempatan posisi barang, didisain dengan model kemiringan yang bertujuan

agar barang dapat bergerak seperti berada pada konveyer sehingga dapat memudahkan

robot lengan dalam proses pengambilan seperti yang di tunjukan pada Gambar 3.8.

Objek/barang berbentuk kotak berukuran 3x3x3 cm yang terbuat dari bahan aklirik.

Gambar 3.8. Posisi Penempatan Barang

Perancangan mekanik robot lengan menggunakan metode puzzle dalam membentuk

tiap bagian dari anatomi robot lengan. Berikut adalah gambar dua dimensi menggunakan

software Corel Draw untuk tiap-tiap bagian dari robot lengan seperti yang terlihat pada

Gambar 3.9 dan 3.10.

Gambar 3.9. Sketsa Robot Lengan Komponen 1 dan Komponen 3

Page 46: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

28

Gambar 3.10. Sketsa Robot Lengan Komponen 2 , Komponen 4 dan Poros

Gambar 3.11 adalah model gripper penjepit barang, untuk bahan gripper digunakan

aklirik 5 mm dan seutas tali yang digunakan untuk menggerakan gripper dalam menjepit

barang. Penggunaan engsel bertujuan agar gripper memiliki sendi gerak dalam membuka

dan menutup sedangkan spring digunakan untuk memposisikan gripper ke keadaan

membuka setelah dilakukan proses penjepitan.

Gambar 3.11. Gripper

Jarak antara robot lengan dengan objek dan wadah penampung diatur sedemikan rupa

sehingga robot dapat menjangkau objek/barang dalam proses pengambilan dan peletakan

Page 47: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

29

barang. Dengan menggunakan software Autodesk 3ds Max sebagai animasi pergerakan

robot lengan maka dapat diketahui jarak jangkau robot lengan sehingga mempermudah

dalam memposisikan letak robot lengan dengan objek/barang dan wadah penampungnya.

Gambar 3.12 menunjukan jarak antara robot lengan dengan objek dan wadahnya.

Gambar 3.12. Jarak Robot Lengan dengan Objek dan Wadahnya

3.3 Perancangan Perangkat Keras

Ada beberapa bagian utama dalam perancangan subsitem perangkat keras robot

lengan otomatis , yaitu :

a. Sistem minimum menggunakan mikrokontorler ATmega8535

b. Sensor TCS3200

c. Motor servo

d. Regulator tegangan menggunakan IC 7805 dan 7806

Page 48: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

30

3.3.1 Sistem Minimum Mikrokontroler ATmega8535

Rangkaian Sistem Minimum berfungsi sebagai I/O untuk mengolah data dari sensor

TCS3200 dan mengontrol/mengendalikan sudut putar motor servo yang telah diprogram

dalam mikrokontroler ATmega8535 pada robot lengan. Mikrokontroler membutuhkan

sistem minimum yang terdiri dari rangkaian eksternal yaitu, rangkaian osilator, rangkaian

reset.

Untuk rangkaian osilator digunakan crystal dengan frekuensi sebesar 11,0592 MHz

dan menggunakan kapasitor 22 pf pada pin XTAL1 dan XTAL2 di mikrokontroler.

Rangkaian osilator ini berfungsi sebagai sumber clock bagi mikrokontroler. Pemberian

kapasitor bertujuan untuk memperbaiki kestabilan frekuensi yang diberikan oleh osilator

eksternal. Gambar 3.13 menunjukan rangkaian osilator.

Gambar 3.13. Rangkaian Osilator ATmega8535 [3]

Perancangan rangkaian reset bertujuan untuk memaksa proses kerja pada

mikrokontroler dapat diulang dari awal. Saat tombol reset ditekan maka mikrokontroler

mendapat input logika rendah, sehingga akan me-reset seluruh proses yang sedang

dilakukan mikrokontroler. Gambar 3.14 adalah rangkaian reset untuk ATmega8535.

Gambar 3.14. Rangkaian Reset ATmega8535

Page 49: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

31

Fungsi resistor dan kapasitor adalah untuk tunda waktu tegangan yang masuk ke

reset. Waktu yang dibutuhkan untuk reset eksternal tidak sama dengan waktu input VCC,

sehingga waktu reset diberikan setelah waktu input VCC. Untuk itu diperlukan kapasitor

dan resistor sebagai penundanya dan waktu pengisian kapasitor sebagai jedanya. Waktu

pengisian kapasitor minimum sesuai dengan datasheet yaitu 2us. Maka jika menggunakan

kapasitor sebesar 10nF, nilai resistor minimum dapat dihitung dengan persamaan 2.1.

T = R x C

Maka R = 2us/10nF

= 200Ω

Untuk memperoleh waktu yang lebih dari 2us , maka nilai resistor harus lebih besar dari

200 Ω. Oleh karena itu digunakan resistor 4700 Ω untuk meperoleh waktu pengisian 47us.

Perancangan penggunaan port sebagai input dan output pada mikrokontroler

ATmega8535 disesuaikan dengan kebutuhan yaitu sejumlah 11 pin. Sensor TCS3200

dengan 5 pin pada PORTD dan Out pada PORTC, motor servo dengan 4 pin pada PORTB

dan LCD dengan 7 pin pada PORTA. Tabel 3.1 menunjukan penggunaan port pada

mikrokontroler yang digunakan sebagai input dan output dari motor servo dan sensor

TCS3200.

Tabel 3.1. Penggunaan Port pada Mikrokontroler

Fungsi PORT Mikro Keterangan

INPUT

TCS3200

PORTC.1 Out TCS3200

PORTD.3 Input S0 (skala frekuensi output)

PORTD.4 Input S1 (skala frekuensi output)

PORTD.5 Input S2 (photodiode yang aktif)

PORTD.6 Input S3 (photodiode yang aktif)

PORTD.7 Led sensor

OUTPUT

Motor Servo

PORTB.0 Output PWM motor servo 1

PORTB.1 Output PWM motor servo 2

PORTB.2 Output PWM motor servo 3

PORTB.3 Output PWM motor servo 4

LCD PORTA.0-7 Display

Page 50: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

32

Secara keseluruhan rangkaian sistem minimum ATmega8535 ditunjukan pada

Gambar 3.15.

Gambar 3.15. Rangkaian Sistem Minimum ATmega8535

3.3.2 Rangkaian Konfigurasi LCD 16x2

Dengan menggunakan informasi pada Tabel 2.2 maka dapat dibuat rangkaian

pendukung LCD 16x2 seperti pada Gambar 3.16. Penentuan konfigurasi kaki LCD menuju

mikrokontroler ditentukan dengan melihat pada software compiler yang digunakan

(CodeVisionAVR) seperti pada Gambar 3.17.

Page 51: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

33

Gambar 3.16. Rangkaian LCD 16x2

Gambar 3.17. Pengaturan Port LCD pada Code Vision AVR

3.3.3 Perancangan Sensor TCS3200

Sensor yang dipakai pada pembuatan tugas akhir ini adalah sensor warna TCS3200,

sebagai pendeteksi warna objek yang memiliki range tegangan input 2,7-5,5 volt.

Page 52: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

34

Perlakuan terhadap sensor TCS3200 yaitu dengan memberikan logika high (1) dan low (0)

ke kaki selektor S2 dan S3 maka filter aktif, serta penskalaan frekuensi output 100% yaitu

dengan memberikan 5V ke kaki selektor S0 dan S1, yang semuanya dilakukan dengan

memberikan perintah pengalamatan dari mikrokontroler. Kaki S0 dihubungkan ke portD.3,

S1 ke PortD.4, S2 ke PortD.5, S3 PortD.6, Led ke PortD.7 dan Out ke PortC.1.

pemasangan kapasitor 10uF pada vdd dan 5V disesuaikan pada datasheet TCS3200 yang

berfungsi sebagai sebagai penstabil tegangan dan respon transien. Gambar 3.18 berikut ini

menunjukan hubungan pin sensor TCS3200 dengan mikrokontroler ATmega8535.

Gambar 3.18. Rangkaian Sensor TCS3200 terhubung ATmega8535

3.3.4 Motor Servo

Pada perancangan ini digunakan 4 buah motor servo sebagai aktuator robot lengan,

tiga diantaranya menggunakan merk motor servo HXT5010 dan satu lagi menggunakan

Page 53: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

35

merk Futaba S3003,seperti yang ditunjukan pada Gambar 3.19 dan 3.20. Pemilihan motor

servo yang berbeda disesuaikan dengan kebutuhan. Digunakan motor servo Futaba S3003

dengan sudut putar 0-180° karena motor tersebut akan difungsikan sebagai motor poros

robot lengan yang membutuhkan sudut putar yang lebih lebar dibanding motor link 1, link

2 dan link 3 dalam proses peletakan barang. Karakteristik motor servo HXT5010 dan

Futaba S3003 berdasarkan datasheet ditunjukan pada Tabel 3.2.

Tabel 3.2. Karakteristik Motor Servo

HXT5010 [19] Futaba S3003 [20]

Motor servo tipe standard HXT5010

dengan sudut putar 90 derajat:

Kecepatan (4,8V) : 0,2 sec/60 degree

Kecepatan (6V) : 0,16 sec/60 degree

Torsi (4,8V) : 5,5Kg-cm

Torsi (6V) : 6,5Kg-cm

Tegangan: 4,8-6 volt

Dimensi: 40 x 38 x 20 mm

Berat: 38 grams

Gambar 3.19. Motor Servo HXT5010

Motor servo tipe standard Futaba S3003

dengan sudut putar 180 derajat:

Kecepatan (4,8V) : 0,23 sec/60deg

Kecepatan (6V) : 0,19 sec/60deg

Torsi (4,8V) : 3,2 Kg-cm

Torsi (6V) : 4,1 Kg-cm

Tegangan: 4,8-6 volt

Dimensi : 1,6 x 0,8 x 1,4 in

Berat : 37,2 grams

Current Drain (4.8V): 7.2mA/idle

Current Drain (6.0V): 8mA/idle

Gambar 3.20. Motor Servo Futaba S3003

Rangkaian servo terdiri dari tiga port yaitu vcc, ground, dan data. Jalur data

terhubung dengan port pada mikrokontroler sebagai jalur pengiriman pulsa PWM untuk

Page 54: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

36

mengaktifkan motor servo dan mengatur sudut putarnya. Gambar 3.21 berikut merupakan

pin motor servo yang terhubung ke mikrokontroler.

Gambar 3.21. Pin Motor Servo ke Mikrokontroler

Pengujian dan pengambilan data pada keempat motor servo yang digunakan sebagai

aktuator robot lengan bertujuan, untuk mengetahui sudut putar yang terukur dari

karakterisktik motor servo tersebut. Pengujian dilakukan dengan memberi tegangan

masukan pada motor servo sebesar 5V dan masukan berupa PWM sebagai sinyal

pengontrol sudut putar motor yang berasal dari servo controller menggunakan

ATmega8535. Tabel 3.3 adalah hasil pengujian dari empat motor servo yang digunakan.

Digunakan interrupt timer sebagai pembangkit PWM. Secara prinsip, sebuah timer

adalah sebuah counter (penghitung). Tugas timer hanya menghitung, timer selalu

menyimpan hitungannya saat menghitung “satu, dua, tiga, …” hingga 255 (8 bit). Naiknya

hitungan timer dan berapa lama jeda antar hitungan ini ditentukan dari siklus pencacah uC,

mode timer. Pada perancangan motor servo, timer diset agar menghitung sampai 255. Dan

jika sudah mencapai 255, maka timer (overflow) akan memberikan sinyal, disinilah PWM

bekerja dan mengintruksikan timer untuk menghitung lagi dari 0. Demikian seterusnya

terjadi jika nilai 255 tercapai.

Perbandingan nilai lebar pulsa terhadap nilai overflow motor servo selama T= 20ms

adalah nilai OCR, yang merupakan cacahan pulsa selama 1ms dan 2ms. Sebagai berikut

Page 55: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

37

perhitung overflow interrupt sebagai pembangkit PWM untuk mengatur sudut putar motor

servo.

Frekuesi kristal = 11,059200 MHz

Dengan menggunakan timer0/8bit dan nilai prescaler 256 sebagai pengatur kecepatan clock

maka timer overflow yang dihasilkan (0,09 x 10-6 ) x 256 = 23,04 x 10-6. Tabel 3.2 berikut

adalah perhitungan sudut putar motor servo.

Tabel 3.3. Perhitungan Sudut putar Motor Servo

Merk

Servo

Arah Putaran Sudut

putar

Nilai OCR =

HXT5010

Kiri (lebar pulsa 1 ms) 0° 1 1023,04 10 = 43,40

Tengah (lebar pulsa 1,5 ms) 45° 1,5 1023,04 10 = 65,10

Kanan (lebar pulsa 2 ms) 90° 2 1023,04 10 = 86,80

Futaba

S3003

Kiri (lebar pulsa 0,3 ms) 0° 0,3 1023,04 10 = 19,02

Tengah (lebar pulsa 1,3 ms) 90° 1,3 1023,04 10 = 56,42

Kanan (lebar pulsa 2,3 ms) 180° 2,3 1023,04 10 = 99,80

Page 56: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

38

Tabel 3.4. Data Pengujian Motor Servo

Jenis Motor Servo Tegangan

Input

(Terukur)

Lebar

pulsa

Nilai

OCR

Sudut putar

(Terukur)

HXT5010 (motor 1) 5,01 V 1 ms

1,5 ms

2 ms

43,40

65,10

86,8

45°

90°

HXT5010 (motor 2) 5,01 V 1 ms

1,5 ms

2 ms

43,40

65,10

86,8

45°

90°

HXT5010 (motor 3) 5,00 V 1 ms

1,5 ms

2 ms

43,40

65,10

86,8

45°

90°

Futaba S3003

(motor 4/poros)

5,01 V 0,3 ms

1,3 ms

2,3 ms

13,02

56,42

99,80

90°

180°

Saat pengambilan data motor servo HXT5010, sudut putar yang terukur

menghasilkan data yang sesuai dengan lebar pulsa servo pada umumnya seperti ditunjukan

gambar 3.22. Namun untuk motor servo dengan merk Futaba S3003 menghasilkan data

yang berbeda dengan teori. Jika umumnya lebar pulsa servo minimum 1 ms dan

maksimum 2 ms, hal ini justru berbeda dengan servo Futaba S3003. Dari hasil pengamatan

yang dilakukan, ternyata lebar pulsa minimum 0,3 ms dan lebar pulsa maksimum motor

servo tersebut adalah sebesar 2,3 ms dengan sudut putar maksimum sebesar 0-180°, seperti

di tunjukan pada Gambar 3.23. Ini berarti setiap motor servo dengan merk yang berbeda

memiliki karakteristik lebar pulsa yang berbeda juga. Motor servo dengan merk Futaba

S3003 memiliki karakteristik interval waktu untuk mencapai sudut putar maksimum yang

lebih pajang jika dibandingkan dengan motor servo dengan merk HXT5010. Untuk lebih

detailnya Gambar 3.22 dan 3.23 menunjukan lebar pulsa dan posisi motor servo.

Page 57: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

39

Gambar 3.22. Lebar Pulsa dan Posisi Motor Servo HXT5010

Gambar 3.23. Lebar Pulsa dan Posisi Motor Servo Futaba S3003

3.3.4.1 Perhitungan Torsi Motor Servo terhadap Beban

Pada perancangan robot lengan digunakan motor servo yang berbeda sebagai

aktuator yaitu HXT5010 dan Futaba S3003. Kedua motor servo tersebut memiliki

kataktersitik yang berbeda-beda, untuk itu perlu diketahui seberapa besar torsi yang di

butuhkan untuk menggerakkan robot lengan. Dengan menggunakan persamaan 2.4 dapat di

perhitungkan torsi yang diperlukan masing-masing motor servo dalam menggerakan robot

lengan. Tabel 3.5 menunjukan perhitungan torsi motor servo dalam menggerakan robot

lengan.

Page 58: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

40

Tabel 3.5. Perhitungan Torsi Motor Servo pada Robot Lengan

Motor Penggerak Torsi

Motor 1 sebagai penggerak

gripper

Beban pada gripper = 32 gr

F = m x g

= 0,032 x 9,8 = 0,31 N

maka

τ = F r sin 0

= (0,31) (0,077) sin 90 = 0,02 N-m = 0,20 Kg-cm

Motor 2

Beban = 91 gr

Maka F = m x g

= 0.091 x 9,8 = 0,8918 N

τ = F r sin 0

= (0,8918)(0,11074) sin 5 = 0,008 N-m=0,08 kg-cm

Motor 3

Beban = 106 gr

Maka F = m x g

= 0,106 x 9,8 = 1,0388 N

τ = FR sin 0

= (1,0388)(0,16047) sin 28 = 0,074 N-m=0,79 kg-cm

Page 59: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

41

Tabel 3.5. (lanjutan)Perhitungan Torsi Motor Servo pada Robot Lengan

Motor 4

Beban = 182 gr

Maka F = m x g

= 0,182 x 9,8 = 1,7836 N

Untuk 400

τ = F r sin 0

= (1,7836) (0,2168) sin 40 = 0,248 N-m= 2,52 kg-cm

Untuk 800

τ = F r sin 0

= (1,7836) (0,2168) sin 80 = 0,38 N-m= 3,87 kg-cm

Untuk 1200

τ = F r sin 0

= (1,7836) (0,2168) sin 120 = 0,334 N-m=3,40 kg-cm

3.3.5 Regulator Tegangan menggunakan IC 7805 dan IC 7806

Regulator dengan IC7805 ini digunakan sebagai sumber tegangan bagi sistem

minimum ATmega8535, TCS3200 dan regulator dengan IC7806 digunakan untuk mencatu

motor servo sebagai aktuator. Digunakan trafo step-down 1A untuk mengubah tegangan

listrik AC 220V/50Hz menjadi lebih kecil. Setelah tegangan AC dikecilkan menggunakan

trafo step-down maka untuk menghasilkan tegangan DC digunakan diode bridge 1A

sebagai penyearah tegangan AC ke DC. Gambar 3.24 menunjukan rangkaian regulator 5

volt dan rangkaian regulator 6 volt.

Page 60: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

42

Gambar 3.24. Rangkaian Regulator Tegangan

Dalam merancang regulator agar memiliki tegangan ripple yang tidak lebih 0,75 vpp

dari jala-jala listrik PLN 220V/50Hz untuk menyuplai arus 1A, maka digunakan beberapa

nilai kapasitor untuk memperkecil ripple tegangan DC yang dihasilkan. Dengan persamaan

2.4 maka dapat dihitung nilai kapasitor yang harus digunakan.

c = I load ∗ TVrippleMaka c = ∗ .

. = 1333,3uFNamun karena nilai kapasitor 1333,3uF tidak terdapat di pasaran maka digunakan

kapasitor dengan nilai 2200uF. Pengubahan nilai kapasitor yang semakin besar justru

berdampak memperkecil tegangan ripple. Sesuai dengan rumus di atas, jika arus beban I

semakin besar, maka tegangan ripple akan semakin besar. Sebaliknya jika kapasitansi C

semakin besar, maka tegangan ripple akan semakin kecil.

Nilai T diperoleh dari T=1/2*50Hz = 0,01 dan agar diperoleh tegangan keluaran yang

lebih stabil di perlukan IC regulator sebagai penstabil tegangan. Untuk itu digunakan

IC7805 dan IC7806 untuk menghasilkan tegangan keluaran stabil 5 volt dan 6 volt. Nilai

kapasitor C2 dan C3 disesuaikan berdasarkan datasheet IC regulator 7805 dan 7806 yaitu

C2= 0,33uF dan C3 = 0,1uF. Fungsi kapasitor C1 sebagai filter tegangan DC, C2 sebagai

penstabil tegangan dan respon transien yaitu respon terhadap perubahan sinyal

input/sinyal gangguan, biasanya berupa delay time, peak time dan %overshoot.

Page 61: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

43

3.4 Perancangan Perangkat Lunak

Perancangan perangkat lunak merupakan tahap pembuatan program yang nantinya

difungsikan untuk menjalankan robot lengan agar sesuai dengan tugas dan tujuannya.

Perancangan perangkat lunak meliput program utama dan subroutine program.

Gambar 3.25 menunjukan program utama proses kerja mikrokontroler secara

keseluruhan. Proses diawali dengan inisialisasi port pada mikrokontroler, lalu proses

pengaturan posisi robot lengan, pada proses ini motor servo diatur pada posisi sudut putar

yang berbeda-beda,motor 1 pada posisi 0°, motor 2 pada posisi 90°, motor 3 pada posisi 0°

dan motor 4 pada posisi 180°. Kemudian dilanjutkan proses pengidentifikasian warna

objek oleh sensor TCS3200. Setelah TCS3200 mendeteksi warna objek maka,

mikrokontroler mulai menjalankan intruksi untuk menggerakan motor servo. Pengaturan

sudut putar servo tergantung pada warna objek yang dideteksi oleh sensor TCS3200.

Proses selanjutnya robot lengan mengambil objek dan meletakknya pada wadah yang telah

tersedia sesuai dengan warna objek tersebut. Proses akan terus berjalan selama sensor

TCS3200 masih mengidentifikasi adanya objek berwarna merah, biru, dan hijau dan akan

selesai jika barang telah habis dan jika sensor tidak mendeteksi adanya barang maka robot

kembali pada posisi awal.

Gambar 3.25. Diagram Alir Utama

Page 62: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

44

3.4.1 Program Pengaturan Awal Posisi Robot

Gambar 3.26 menunjukan proses pengaturan awal posisi robot. Pada proses ini,

semua motor servo diatur dengan sudut putar yang berbeda karena posisi peletakan motor

pada robot lengan tidak sama, motor 1 pada sudut 0°, motor 2 pada sudut 90°, motor 3

pada sudut 0° dan motor 4 pada sudut 180° . Hal ini bertujuan agar robot lengan berada

pada posisi yang dapat bergerak untuk menjangkau objek yang akan diambil dan dapat

begerak dalam proses peletakan objek pada tempatnya.

Mulai

X< m_1

PORTB.1 1 PORTB.1 0

Ya

Tidak

x==896

Selesai

Pemberian nilai OCR untuk tiap motor pada sudut 0, 90, dan 180

derajat

X 1

Tidak

Ya

Data overflow x==896, selama

T 20ms(x++)

Gambar 3.26. Diagram Alir Pengaturan Awal Posisi Robot

Page 63: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

45

3.4.2 Program Indentifikasi Warna Objek menggunakan Sensor

TCS3200

Dalam pembacaan data sensor ini cukup rumit karena data outputnya berupa

frekuensi pulsa kotak dengan duty cycle 50 %. Maka dari itu diperlukan suatu frekuensi

reader dengan memfungsikan uC ATmega8535 sebagai pembaca frekuensi. Pada

perancangan ini akan dihitung lama waktu high dan low satu gelombang penuh sebagai

periodenya, maka 1/periode akan menghasilkan nilai frekuensi seperti ditunjukan pada

Gambar 3.27 dalam menghitung frekuensi selama T=1ms.

Gambar 3.27. Perioda 1 Gelombang

Gambar 3.28 menujukan diagram alir proses pengecekan atau pengidentifikasian

warna objek. Sebagai langkah awal yaitu kalibrasi sensor dengan mencari nilai referensi

untuk tiap pemfilter terhadap warna putih. Nilai referensi tersebut diperoleh dari

pengukuran output sensor ketika difilter merah, biru dan hijau dengan objek sebagai

kalibrasi maksimum bernilai 255 atau diasumsikan 8 bit menggunakan kertas putih. Untuk

pemfilter merah nilai referensinya adalah 22795 Hz, referensi pemfilter biru adalah

33066,7 Hz dan referensi pemfilter hijau adalah 34720 Hz. Nilai referensi tersebut akan

digunakan sebagai pembagi hasil yang diperoleh pada proses scaning. Pada Gambar 3.28,

dimulai dengan pengaktifan filter dengan memberikan logika low pada selektor S2-S3

untuk filter warna merah, logika low dan high pada selektor S2-S3 untuk filter biru dan

logika high pada selektor S2-S3 untuk filter hijau. Masing-masing pemfilter yang

diaktifkan, yaitu pemfilter merah diberi nama sebagai variabel R, untuk pemfilter hijau

sebagai variabel G dan untuk pemfilter biru sebagai variabel B. Proses selanjutnya adalah

proses scaning, yaitu proses untuk memperoleh data R G B. Data R G B diperoleh dengan

cara meng-counter/menghitung jumlah cacahan pulsa high dan low selama satu gelombang

penuh sehingga diperoleh nilai periodanya yaitu dengan mengalikan jumlah cacahan

dengan lama waktu eksekusi satu kali counter (1/frekuensi kristal). Setelah itu dilakukan

Page 64: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

46

pembagian data frekuensi (1/perioda) R G B dari objek tersebut dengan terhadap data

referensi kalibrasi dan kemudian ditampilkan ke LCD yaitu berupa data R G B. Setelah

data R G B dari objek diketahui maka proses selanjutnya adalah pengaturan sudut putar

motor servo yang disesuaikan dengan warna objek yang telah diidentifikasi. Jika data R

yang diperoleh adalah lebih besar dibanding dengan data G dan B maka mikrokontroler

akan mengerjakan instruksi gerak servo mode merah, jika data B lebih besar dibanding

dengan data R dan G maka mikrokontroler akan mengerjakan instruksi gerak mode biru,

dan jika data G lebih besar dibanding data R dan B maka mikrokontroler akan

mengerjakan instruksi gerak servo mode hijau.

Mulai

Count ++Pada pulsa High

dan Low selama 1 gel. penuh

data R G B Frekuensi (1/T)

referensi

Tampil data R G B(LCD)

R G BR>G & R>B

(merah)

R G BB>R & B>G

(biru)

R G BG>R & G>B

(hijau)

selesai

Ya Ya Ya

Tidak Tidak Tidak

T= jumlah cacahan * t (1xcounter)

gerak servo mode merah

gerak servo mode biru

gerak servo mode hijau

selektor S2 dan S3 masukan logika

high dan lowPORTD.5 & 6

Red filter 0 0Green filter 1 1Blue filter 0 1

Gambar 3.28. Diagram Alir Identifikasi Warna

Page 65: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

47

3.4.3 Program Pengendali Sudut Putar Motor Servo dalam Pengambilan

dan Peletakan Objek

Pada perancangan program untuk mengendalikan motor servo dibagi dalam tiga

bagian berdasarkan warna objek, yaitu :

a. Gerak Servo mode merah

b. Gerak Servo mode biru

c. Gerak Servo mode hijau

Data cacahan yang diberikan untuk menggerakan motor servo memiliki range yang

disesuaikan dengan penggunaan kristal dan mode timer. Dengan periode servo selama

20ms maka diperoleh nilai cacahan overflow dengan persamaan 2.3 sebagai berikut

cacahan = 1/50(1/frek. kristal) ∗ 255cacahan = 1/50(1/11059200) ∗ 255

cacahan = 869Pada proses pengambilan barang, pergerakan motor servo mode merah, mode biru

dan mode hijau adalah sama. Diawali dengan pergerakan motor 3 dengan sudut dari 0°

menuju 28° kemudian motor 2 dengan sudut pergerakan 5°, lalu dilanjutkan dengan proses

pencengkeraman objek yang dilakukan oleh motor 1 dengan sudut 90°. Setelah proses

pengambilan dilakukan, motor 3 bergerak kembali ke posisi awal lalu motor 4 sebagai

penggerak poros bergerak sesuai dengan warna objek yang telah dideteksi oleh sensor

TCS3200. Untuk objek berwarna merah sudut putar motor 4 adalah 40°, objek berwarna

biru sudut putar motor poros adalah 80° dan objek berwarna hijau sudut putar motor poros

adalah 120°. Proses tersebut akan berjalan terus sampai sensor masih mendeteksi adanya

objek/barang berwarna. Dan untuk lebih detailnya sebagai berikut diagram alir servo,

Gambar 3.29 menunjukan diagram alir servo mode merah, Gambar 3.30 menunjukan

diagram alir servo mode biru, Gambar 3.31 menunjukan diagram alir servo mode hijau.

Page 66: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

48

a. Gerak Servo Mode Merah

Gambar 3.29. Diagram Alir Gerak Servo Mode Merah

Page 67: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

49

b. Gerak Servo Mode Biru

Gambar 3.30. Diagram Alir Gerak Servo Mode Biru

Page 68: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

50

c. Gerak Servo Mode Hijau

Gambar 3.31. Diagram Alir Gerak Servo Mode Hijau

Page 69: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

51

BAB IV

HASIL PENGAMATAN DAN PEMBAHASAN

Pada bab ini akan dibahas mengenai hasil pengamatan dari robot lengan sebagai

pemisah barang berdasarkan warna. Hasil pengamatan berupa pengujian sensor TCS3200

terhadap tiga warna yaitu merah, biru, dan hijau pada kondisi pencahayaan ruang terang dan

gelap, jarak jangkauan sensor TCS3200, tingkat keberhasilan robot lengan serta pengamatan

terhadap pergerakan motor servo sebagai aktuator robot lengan.

4.1 Betuk Fisik dan Sistem Kerja Robot Lengan

Perangkat keras robot lengan tersusun atas sistem minimum ATMega8535 dan

rangkaian regulator seperti pada Gambar 4.1 dan Gambar 4.2. dan bentuk fisik robot lengan

ditunjukkan pada Gambar 4.3, Gambar 4.4, Gambar 4.5, Gambar 4.6, Gambar 4.7 dan Gambar

4.8.

Gambar 4.1. Sistem Minimum ATmega8535 Gambar 4.2. Regulator Tegangan

Page 70: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

52

Gambar 4.3. Robot Lengan Keseluruhan

Gambar 4.5. Robot Lengan

Gambar 4.7. Objek Berwarna

Gambar 4.4. Penempatan Objek,TCS3200 dan Sistim Minimum

Gambar 4.6. TCS3200

Gambar 4.8. Wadah Objek

Page 71: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

53

Gambar 4.1 menunjukkan board dari sistem minimum Atmega8535 sebagai pengolah

data I/O dari sensor dan motor servo, Gambar 4.2 menunjukkan board dari regulator tegangan

sebagai catu daya untuk sistem, Gambar 4.3, 4.4, 4.5, 4.6, 4.7, 4.8 menunjukkan sistem

keseluruhan robot lengan dan bagian-bagiannya yang terdiri dari penempatan objek, sensor

TCS3200 dan sistem minimum, robot lengan , letak sensor terhadap objek berwarna, objek

yang berbentuk kotak, dan wadah penampung objek berwarna.

Mekanisme kerja sistem robot lengan adalah robot bekerja secara otomatis sesuai

dengan instruksi yang telah diprogram. Ketika tombol ON-OFF dinyalakan maka sistem aktif

dan secara otomatis robot akan memulai proses pengambilan dan peletakan objek berwarna.

Diawali dengan proses pendeteksian warna objek oleh sensor TCS3200 setelah itu motor servo

akan menggerakan robot untuk mengambil objek berwarna dan meletakkannya ke kotak

penampung objek yang sesuai dengan warna objek tersebut. Proses pengambilan dan

peletakan objek akan terus dilakukan jika sensor TCS3200 masih mendeteksi adanya objek

dan akan berhenti ketika sensor sudah tidak mendeteksi adanya objek atau ketika tombol ON-

OFF dimatikan.

4.2 Hasil Data Pengujian dan Pembahasan

Pada sub bab ini, dilakukan pengujian dan pembahasan terhadap sensor TCS3200 yaitu

pada kondisi pencahayaan ruang terang dan gelap, jarak jangkauan sensor, dan pengamatan

pergerakan motor servo sebagai aktuator.

4.2.1 Pengujian Sensor TCS3200

Dilakukan pengujian sensor TCS3200 pada 2 kondisi yang berbeda yaitu pada kondisi

pencahayaan ruang terang dan gelap dengan objek yang terbuat dari bahan akrilik yang telah

dicat. Data yang diambil adalah nilai R G B untuk setiap sisi dari objek berwarna yang

berbentuk kotak yaitu sisi 1a-1f, 2a-2f dan 3a-3f. Tabel 4.1 menunjukkan perbandingan hasil

percobaan sensor TCS3200 pada kondisi ruang terang dan gelap.

Page 72: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

54

Tabel 4.1. Data Pengujian Sensor TCS3200 pada Kondisi Cahaya Ruang Terang dengan

Intesitas cahaya 77 lux dan pada Kondisi Ruang Gelap dengan intesitas cahaya 16 lux

OBJEK BERWARNA

DATASAAT KONDISI

CAHAYA RUANG TERANG (Objek

akrilik)

DATASAAT KONDISI

CAHAYA RUANG GELAP (Objek

akrilik)R G B R G B

MERAH 1a 44 9 9 46 9 91b 33 6 6 34 6 71c 48 13 5 47 14 151d 53 8 9 54 8 91e 36 6 6 36 7 81f 43 6 6 42 6 7

MERAH 2a 44 9 9 43 9 92b 30 6 6 30 6 62c 41 6 6 41 7 72d 51 7 8 52 7 82e 30 8 8 53 7 82f 44 10 10 44 10 10

MERAH 3a 52 8 9 51 7 83b 35 9 10 35 9 103c 26 6 6 28 6 63d 38 10 11 38 10 113e 44 12 13 38 10 113f 46 8 9 45 8 9

BIRU 1a 11 25 57 11 25 571b 8 24 62 8 24 621c 9 22 52 9 22 541d 8 20 49 8 20 501e 9 22 51 8 21 521f 10 24 60 10 24 60

BIRU 2a 9 25 59 9 24 602b 10 24 57 10 24 562c 9 22 50 8 22 492d 8 24 60 8 24 602e 10 23 50 10 3 512f 11 25 59 11 25 58

BIRU 3a 9 24 56 9 23 583b 8 21 54 9 22 53

Page 73: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

55

Tabel 4.1. (Lanjutan) Data Pengujian Sensor TCS3200 pada Kondisi Cahaya Ruang Terang

dengan Intesitas cahaya 77 lux dan pada Kondisi Ruang Gelap dengan intesitas cahaya 16 lux

Data Tabel 4.1 menunjukkan nilai R G B untuk kondisi pencahayaan ruang yang terang

dan gelap dengan intesitas cahaya ruang terang adalah 77 lux dan dengan intensitas cahaya

ruang gelap adalah 16 lux. Terlihat adanya perbedaan data yang dihasilkan, hal ini dipengaruhi

oleh ketidakmerataan warna pada saat proses pengecatan, ada yang tebal dan ada yang tipis.

Jika pada saat sensor membaca warna salah satu sisi objek yang tebal maka nilai R G B yang

dihasilkan lebih besar dibanding dengan warna yang tipis. Misalnya untuk nilai R pada objek

merah 1a dan 3a, nilai R pada objek 3a lebih besar dari objek merah 1a artinya objek merah 3a

memiliki tingkat warna cat yang lebih tebal dibanding objek merah 1a.

OBJEK BERWARNA

DATASAAT KONDISI

CAHAYA RUANG TERANG (Objek

akrilik)

DATASAAT KONDISI

CAHAYA RUANG GELAP (Objek

akrilik)R G B R G B

BIRU 3c 9 24 62 9 24 623d 9 24 60 9 24 623e 9 23 58 10 23 513f 9 24 58 11 25 583f 9 24 58 11 25 58

HIJAU 1a 37 58 22 37 59 221b 35 58 18 35 60 191c 35 55 22 36 55 221d 35 58 20 35 58 201e 35 58 20 35 58 201f 35 58 19 34 58 19

HIJAU 2a 33 56 18 33 55 182b 32 54 18 32 54 192c 34 58 19 33 58 192d 34 57 19 33 57 192e 34 56 18 34 57 182f 34 58 19 33 58 19

Page 74: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

56

Tabel 4.2. Nilai Rata-Rata R G B pada Kondisi Ruang Terang dan pada Kondisi Ruang Gelap

OBJEK

BERWARNA

DATA SAAT KONDISI CAHAYA RUANG

TERANG (objek akrilik)

DATA SAAT KONDISI CAHAYA RUANG

GELAP (objek akrilik)R G B R G B

MERAH 41 8,16 8,11 42 8,11 8,77

BIRU 9,16 23,33 56,33 8,5 23,22 56,66

HIJAU 34,41 57 19 34,16 57,25 19,5

Tabel 4.2 menunjukkan nilai rata-rata R G B pada setiap warna saat kondisi ruang

terang dan gelap. Nilai rata-rata tersebut diperoleh dengan menjumlahkan setiap nilai R G B

dan dibagi terhadap banyaknya jumlah warna tiap sisi yang dideteksi. Melihat nilai rata-rata R

G B yang diperoleh antara kondisi cahaya ruang gelap ataupun terang maka, nilai R G B yang

dihasilkan adalah relatif sama artinya kondisi pencahayaan ruang yang gelap ataupun terang

tidak berdampak pada kinerja sensor saat mendeteksi warna suatu objek. Misalnya, dengan

membandingkan nilai R G B objek berwarna merah dengan kondisi cahaya ruang terang yang

memiliki nilai rata-rata R=41, B=8.16, dan G=8,11 sedangkan pada kondisi cahaya gelap

dengan nilai R=42, B=8,11 dan B=8,77. Selisih antara kedua nilai tersebut memiliki range

perbandingan tiap nilai R G B yang kecil yaitu 0,05 sampai 1. Jadi nilai yang dihasilkan

adalah relatif sama. Untuk itu dapat disimpulkan bahwa, dengan kondisi cahaya ruang baik

gelap maupun terang tidak mempengaruhi kinerja sensor. Ketidakmerataan warna cat

mempengaruhi nilai R G B, jika objek yang terdeteksi berwarna merah maka nilai R bernilai

lebih besar dibanding nilai G dan B, jika objek yang terdeteksi berwarna biru maka nilai B

lebih besar dibanding nilai R dan G, dan jika objek yang terdeteksi berwarna hijau maka nilai

G lebih besar dibanding nilai R dan B.

4.2.2 Pengujian Jarak Jangkauan Sensor TCS3200

Dilakukan pengujian jarak jangkauan sensor dengan mengukur jarak objek berwarna

terhadap posisi sensor. Data pengujian yang diperoleh, sensor masih dapat medeteksi hingga

jarak 7 cm tetapi data yang dihasilkan kecil. Untuk itu sarankan sesuai datasheet agar jarak

sensor dengan objek adalah sejauh 2,5-3 cm dan pada tugas akhir ini jarak sensor terhadap

Page 75: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

57

objek adalah 2,5 cm. Tabel 4.3 menunjukkan data hasil pengujian jarak jangkauan sensor

TCS3200 dengan visualisasi Gambar 4.9 sampai Gambar 4.16 yang menunjukkan hasil

pengukuran jarak jangkau sensor terhadap objek berwarna.

Tabel 4.3. Data Pengujian Jarak Jangkauan TCS3200

No Jarak (cm) Hasil

1. 2,5 cm

Gambar 4.9. Jarak Objek 2,5 cm

2. 3 cm

Gambar 4.10. Jarak Objek 3 cm

3. 4 cm

Gambar 4.11. Jarak Objek 4 cm

Page 76: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

58

Tabel 4.3. (Lanjutan) Data Pengujian Sensor TCS3200

No Jarak (cm) Hasil

4. 5 cm

Gambar 4.12. Jarak Objek 5 cm

5. 6 cm

Gambar 4.13. Jarak Objek 6 cm

6. 7 cm

Gambar 4.14. Jarak Objek 7 cm

7. 8 cm

Gambar 4.15. Jarak Objek 8 cm

Page 77: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

59

Tabel 4.3. (Lanjutan) Data Pengujian Sensor TCS3200

No Jarak (cm) Hasil

8. 9 cm

Gambar 4.16. Jarak Objek 9 cm

4.2.3 Pengujian Arus pada Motor Servo

Pengujian arus pada motor servo dilakukan dengan cara menghubungkan multimeter

yang diset dalam pengukuran arus (Amperemeter) positif pada pin vcc sistem minimum dan

multimeter ground pada pin vcc motor servo, seperti ditunjukan pada gambar 4.17.

Gambar 4.17. Pengukuran Arus Motor Servo

Tabel 4.4. Data Pengujian Tegangan dan Arus

Regulator Tegangan Input (V) Arus (mA)

7805 4,95 TCS3200 = 1,8 mA

7806 5,99 Motor servo 1 = 190 mA

Motor servo 2 = 193 mA

Motor servo 3 = 203 mA

Motor servo 4 = 200 mA

Page 78: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

60

Data pada Tabel 4.4 menunjukkan kebutuhan arus motor servo yang berbeda-beda. Hal

ini disebabkan oleh beban yang ada pada motor tersebut saat menggerakan joint dan link pada

robot lengan. Semakin berat beban yang digerakkan motor servo maka konsumsi arus akan

semakin besar pula. Hal ini dipengaruhi karena pada motor servo dilengkapi encoder yang

berfungsi sebagai umpan balik, sehingga pusat pengendali dapat memberikan arus yang sesuai

dengan beban pada motor. Dari Tabel 4.4, kebutuhan maksimal arus motor servo adalah

203mA dan TCS3200 adalah 1,8mA. Melihat konsumsi arus yang dibutuhkan motor servo dan

TCS3200 maka dengan menggunakan regulator 5V dan 6V dengan arus 1A sebagai sumber

catu daya sudah dapat menyuplai kebutuhan tegangan dan arus untuk sensor dan motor servo

tersebut. Pemisahan sumber tegangan antara sistem minimum dan motor servo dimaksudkan

karena kebutuhan arus dan tegangan pada motor servo yang lebih besar dibanding sistem

minimum dan TCS3200. Pada datasheet, kebutuhan tegangan pada motor servo 4,8-6V

dengan arus 322mA pada beban 2kg, ATmega8535 sekitar 5V dengan arus sekitar 200mA dan

TCS3200 sekitar 3,3-5V dengan arus 2mA.

4.2.4 Pengamatan Pergerakan Motor Servo sebagai Aktuator Robot Lengan

Pengamatan dilakukan dengan cara mengukur sudut putar pergerakan motor servo

dalam proses pengambilan dan peletakan objek. Dengan menggunakan busur derajat maka

dapat dilihat sudut putar motor servo. Gambar 4.18 sampai 4.20 menununjukan hasil

pengukuran sudut putar motor servo.

Gambar 4.18. Sudut Putar Motor Servo 0° Gambar 4.19. Sudut Putar Motor Servo 45°

Page 79: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

61

Gambar 4.20. Sudut Putar Motor Servo 90°

Dari hasil pengukuran seperti pada Gambar 4.18, 4.19 dan 4.20 menunjukkan hasil yang

sama dengan perhitungan seperti Tabel 3.3 pada bab 3. Jika nilai OCR 43,40 maka sudut

putar servo 0°, jika nilai OCR 65,10 maka sudut putar servo 45°dan jika nilai OCR 86,8 maka

sudut putar servo adalah dan 90°. Namun hal tersebut berbeda dengan hasil yang ditujukan

saat motor servo sudah terpasang pada robot lengan seperti yang ditunjukan pada Gambar 4.21

dan 4.22.

Gambar 4.21. Pengamatan Sudut Putar Motor Servo 3 saat 0°

Gambar 4.22. Pengamatan Sudut Putar Motor Servo 3 saat 28°

Page 80: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

62

Gambar 4.21 dan 4.22 menunjukkan hasil pengamatan motor 3 yang telah terpasang

pada badan robot lengan. Posisi awal motor 3 berada pada sudut 0°, maka pergerakannya

adalah berlawanan dengan arah jarum jam yaitu dari 0° menuju 90°. Motor 3 sebagai

penggerak joint 2 pada robot lengan yang diset dengan nilai OCR 59,67 seharusnya bergerak

dengan sudut putar 28°, ternyata dari hasil pengamatan menunjukkan motor tersebut bergerak

hingga 34°, hal ini disebabkan oleh adanya beban pada sehingga beban tersebut

mempengaruhi sudut putar motor 3.

Gambar 4.23. Pengamatan Sudut Putar Motor

Servo poros saat 40°

Gambar 4.24 Pengamatan Sudut Putar Motor

Servo poros saat 80°

Gambar 4.25. Pengamatan Sudut Putar Motor Servo poros saat 120°

Gambar 4.23-4.25 menunjukkan hasil pengamatan pergerakan motor poros dengan

sudut putar masing-masing 40°, 80°, 120°. Posisi awal motor poros diatur berada pada sudut

180°, jadi pergerakannya adalah sesuai dengan arah jarum jam dari 180° menuju 0°. Dari hasil

Page 81: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

63

pengamatan diperoleh hasil yang sesuai dengan perhitungan teori, dengan memberikan nilai

OCR sebesar 80.46 maka sudut putar motor akan bergerak sebesar 40° dari 180° menuju 140°,

jika diberi nilai OCR=61,15 maka akan dihasilkan sudut putar 80°, yaitu motor bergerak dari

sudut 180°-100° dan jika nilai OCR=42,11 maka akan dihasilkan sudut putar 120°, yaitu

motor bergerak dari sudut 180°menuju 60°. Tidak terjadi adanya pergeseran sudut pada motor

4 karena beban tertumpu secara tegak lurus terhadap sumbu putar motor sehingga beban yang

ada pada motor tersebut tidak mempengaruhi gaya pada saat motor bergerak. Namum berbeda

dengan motor 3 dimana beban yang tertumpu pada sumbu putar motor berada pada posisi

miring sehingga berat beban mempengaruhi gaya pada saat motor bergerak.

4.3 Analisa dan Pembahasan Perangkat Lunak

Program yang terdapat pada mikrokontroler terdiri dari program pengendali motor servo

dan program pengidentifikasi warna. Digunakan CodeVision AVR Compiler sebagai software

dalam pembuatan program.

4.3.1 Pengendali Motor Servo

Program pengendali motor servo menggunakan interrupt timer0 sebagai pembangkit

pulsa untuk menggerakan motor servo. Listing program pengendali sudut putar motor servo

sebagai berikut :

unsigned int x,m_1,m_2,m_3,m_p; // variabel motor servo x++; if(x==869) x=1; // overflow servo T=20ms, logika high diberikan agar terus mencacah

else if (x <= m_1) PORTB.0=1; else PORTB.0=0; if (x <= m_2) PORTB.1=1; else PORTB.1=0; if (x <= m_3) PORTB.2=1; else PORTB.2=0; if (x <= m_4) PORTB.3=1; else PORTB.3=0;

Page 82: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

64

Listing program di atas adalah penyetingan port yang digunakan motor servo. Kodisi

nilai x++ artinya adalah timer mulai mencacah dari 0 hingga 255, jika lebih dari itu maka

timer overflow dan mulai mengaktifan PWM. Nilai 896 adalah nilai overflow selama perioda

motor servo yaitu 20ms. Kemudian pemberian logika high pada tiap port, jika kondisi nilai x

lebih kecil dari pada nilai variabel m_1, m_2, m_3, m_4 sehingga mulai memberikan pulsa

agar motor servo bergerak dan logika low jika kondisinya tidak terpenuhi maka portb akan di-

reset.

while (1) ========Proses Pengaturan Awal Sudut Putar Motor Servo ======= m_2=86.80; //90 derajat delay_ms(30); m_3=43.40; //0 derajat delay_ms(30); m_4=98.9; //180 derajat delay_ms(30); m_1=43.40; // 0 derajat delay_ms(600); ==============Proses Pengambilan Objek/barang================= m_3=43.40; delay_ms(12); m_3=44.25; delay_ms(12); m_3=45.25; delay_ms(12); m_3=46.25; delay_ms(12); m_3=47.25; delay_ms(12); m_3=48.25; delay_ms(12); m_3=49.25; delay_ms(12); m_3=50.25; delay_ms(12); m_3=51.25; delay_ms(12); m_3=52.25;

Page 83: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

65

delay_ms(12); m_3=53.25; delay_ms(12); m_3=54.25; delay_ms(12); m_3=55.25; delay_ms(12); m_3=56.25; delay_ms(12); m_3=57.25; //28 derajat delay_ms(700); m_2=85.41; delay_ms(10); m_2=84; //5 derajat delay_ms(800); ==================Proses Pencengkraman Objek/barang=============== m_1=86.8; //90 derajat cw delay_ms(800); ==================Proses Peletakan Objek/barang==================== m_3=57.25; delay_ms(10); m_3=56.25; delay_ms(10); m_3=55.25; delay_ms(10); m_3=54.25; delay_ms(10); m_3=53.25; delay_ms(10); m_3=52.25; delay_ms(10); m_3=51.25; delay_ms(10); m_3=50.25; delay_ms(10); m_3=49.25; delay_ms(10); m_3=48.25; delay_ms(10); m_3=47.25; delay_ms(10); m_3=46.25; delay_ms(10); m_3=45.25;

Page 84: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

66

delay_ms(10); m_3=44.25; delay_ms(10); m_3=43.40; delay_ms(500); m_4=42.11; 61.15; 80.46; //120 ; 80 ; 40 derajat delay_ms(80);

m_3=43.40; delay_ms(20); m_3=44.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=56.25; delay_ms(20); m_3=57.25; delay_ms(20); m_3=58.25; delay_ms(500);

m_1=43.40; delay_ms(500);

m_3=57.25; delay_ms(20);

Page 85: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

67

m_3=56.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=44.25; delay_ms(20); m_3=43.40; delay_ms(20); m_2=83.8; delay_ms(50); m_2=84.8; delay_ms(50); m_2=85.8; delay_ms(50); m_2=86.8; delay_ms(50); m_4=98.9; delay_ms(100); ;

Listing program di atas adalah pemberian nilai OCR yang merupakan cacahan pulsa

selama 1ms dan 2ms untuk menggerakan motor servo sesuai dengan sudut yang diinginkan.

Pergerakan motor servo tersebut adalah secara bertahap satu persatu dengan pemberian delay

Page 86: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

68

masing-masing pergerakan utama motor servo adalah 500 ms dan 800 ms. Gerakan servo

hanya dibedakan pada proses peletakan barang yaitu motor 4 (m_4) bergerak 40° untuk objek

warna merah, 80° untuk objek warna biru, 120° untuk objek warna hijau.

4.3.2 Identifikasi Warna Sensor TCS3200

Pada program identifikasi warna, akan dihitung lama waktu high dan low satu

gelombang penuh sebagai periodenya, maka 1/periode akan menghasilkan nilai frekuensi.

Listing program proses identifikasi warna objek sebagai berikut :

#define redref (27795/255) //nilai referensi frekuensi tiap 8 bitnya maka di bagi 255#define greenref (33066.7/255)#define blueref (34720/255)

unsigned char lcd_buffer[33];unsigned int count, red, green, blue;float periode, frekuensi

void red_filter() PORTD.4=0; PORTD.5=0; while(PINC.1 == 0) while(PIND.1 == 1) while(PINC.1 == 0) count++; while(PINC.1 == 1) count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode); red = (frekuensi/redref); count=0;

void green_filter() PORTD.4=1;

Page 87: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

69

PORTD.5=1; while(PINC.1 == 0) while(PINC.1 == 1)

while(PIND.1 == 0) count++; while(PIND.1 == 1) count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode); green = (frekuensi/greenref); count=0;

void blue_filter() PORTD.4=0; PORTD.5=1; while(PINC.1 == 0) while(PINC.1 == 1) while(PINC.1 == 0) count++; while(PINC.1 == 1) count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode); blue = (frekuensi/blueref); count=0; void tampil_warna() if (((red>blue)&&(red>green)))

Page 88: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

70

lcd_gotoxy(4,1); lcd_putsf("MERAH"); delay_ms(20); if (((blue>red)&&(blue>green))) lcd_gotoxy(4,1); lcd_putsf("BIRU"); delay_ms(20); if (((green>red)&&(green>blue))) lcd_gotoxy(4,1); lcd_putsf("HIJAU"); delay_ms(20);

if (((red<4)&&(blue<4)&&(green<4))) lcd_gotoxy(0,1); lcd_putsf("TIDAK ADA OBJEK"); delay_ms(20); while () red_filter(); delay_ms(20); green_filter(); delay_ms(20); blue_filter(); delay_ms(20); lcd_gotoxy(0,1); lcd_clear(); sprintf(lcd_buffer,"R:%d G:%d B:%d",red,green,blue); lcd_puts(lcd_buffer); tampil_warna() ;

Listing program di atas adalah proses scanning untuk memperoleh nilai frekuensi dari

masing-masing warna merah, biru dan hijau. Pada baris paling atas adalah pendeklarasian nilai

referensi tiap warna redref untuk warna merah, blueref untuk warna biru, greenref untuk

warna hijau yang di peroleh dengan cara pengaktifan pemfilter merah, biru, dan hijau terhadap

warna putih dengan menggunakan kertas HVS kemudian dicatat nilai outputnya. Unsigned

Page 89: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

71

char lcd_buffer[33] digunakan untuk mendeklarasikan variabel array dengan lebar kolom 33.

Variabel array ini digunakan untuk menyimpan data string ke dalam memori SRAM

menggunakan sprintf yang selanjutnya akan ditampilkan ke LCD menggunakan lcd_putsf.

Void red_filter, blue_filter, dan green_filter adalah 3 fungsi untuk tiap warna merah,

biru dan hijau. Di dalam fungsi tersebut terjadi proses scanning untuk memperoleh nilai

frekuensi objek. Pemberian logika high dan low pada PORTD.4 dan 5 adalah bertujuan untuk

pengaktifan pemfilter pada sensor. Kemudian pada PINC.1, jika bernilai 0 dan 1 maka akan

mencacah lama waktu data sensor pada kondisi pulsa high dan kondisi low. Eksekusi satu kali

siklus counter adalah 1 dibagi dengan nilai frekuensi kristal yang digunakan (T=1/11059200)

kemudian frekuesi yang diperoleh dibagi dengan nilai refrensi sehingga diperoleh nilai

frekuensi warna tiap objek yang diidentifikasi oleh TCS3200.

Void tampil_warna adalah fungsi untuk menampilkan tulisan pada LCD. Ada tiga

kondisi menggunakan pernyataan if yang masing-masing kondisi memiliki blok pernyataan

yang berbeda. Jika nilai “red>blue && red>green” maka akan muncul tulisan MERAH, jika

nilai “blue>red && blue>green” maka akan muncul tulisan BIRU, jika nilai “green>red &&

green>blue” maka akan muncul tulisan HIJAU, jika nilai “red<4&&blue<4&&green<4”

maka akan muncul tulisan TIDAK ADA OBJEK. Perintah lcd_gotoxy (4,1) menyatakan letak

karakter tulisan di kolom 4 baris 1 pada LCD, lcd_putsf( ) sebagai perintah menampilkan

karakter tulisan “OBJEK MERAH, OBJEK BIRU, dan OBJEK HIJAU”, dan

sprintf(lcd_buffer,"R:%d G:%d B:%d",red,green,blue); adalah perintah untuk menampilkan

data array yang tersimpan dalam memori SRAM dari proses scanning red, blue, dan green

untuk ditampilkan ke LCD. Gambar 4.25, Gambar 4.26, Gambar 4.27, dan Gambar 4.28,

menunjukkan tampilan LCD.

Gambar 4.25. Tampilan LCD Saat Objek

Merah

Gambar 4.26. Tampilan LCD Saat Objek

Biru

Page 90: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

72

Gambar 4.27. Tampilan LCD Saat Objek

Hijau

Gambar 4.28. Tampilan LCD Saat Tidak

Ada Objek

4.4 Analisa Keberhasilan Alat

Pada tugas akhir ini, dilakukan analisa tingkat keberhasil robot saat proses pengambilan

dan peletakan barang untuk objek berwarna merah, biru dan hijau. Namun jika ada objek lain

selain warna tersebut dan data yang dihasilkan oleh sensor memenuhi syarat maka robot akan

tetap melakukan proses pengambilan barang. Misalnya, objek berwarna kuning dengan nilai

R=46, B=25, G=23 maka sensor akan mendeteksi objek tersebut adalah berwarna merah dan

robot akan mengambil barang tersebut dan meletakkannya pada kotak penampung warna

merah. Hal ini disebabkan karena pada perancangan program, hanya dibuat untuk 3 kondisi

warna dasar yaitu merah biru dan hijau. Dengan masing-masing kondisi adalah jika nilai R>G

dan R>B maka objek merah, jika G>R dan G>B maka objek hijau, dan jika B>G dan B>R

maka objek biru. Jadi apapun warna objek yang dideteksi dan jika nilai R G B yang dihasilkan

memenuhi kondisi yang telah disebutkan diatas, maka robot akan tetap melakukan proses

pengambilan dan peletakan barang. Untuk mengatasi hal tersebut maka perlu kondisi yang

berbeda yaitu pemberian range untuk tiap nilai R G B pada masing-masing warna yang

dideteksi. Misalnya untuk warna merah yang memiliki nilai R=44, G=9, dan B=9 maka

kondisinya adalah (R>40)&&(R<50) && (G>7)&&(G<15) && (B>7)&&(B<15).

Tingkat keberhasilan robot lengan secara keseluruhan dapat diketahui dengan

melakukan beberapa kali percobaan dalam proses pengambilan dan peletakan objek sesuai

warna. Percobaan dilakukan dengan 2 cara yaitu penempatan barang/objek berwarna secara

acak dan penempatan objek berwarna secara berurutan. Robot bekerja dengan baik artinya saat

proses pedeteksian warna hingga ke proses pergerakan motor servo sebagai aktuator bekerja

dengan baik dan sesuai dengan perintah yang diberikan sehingga dapat mengambil dan

Page 91: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

73

meletakan objek yang sesuai dengan warna objek tersebut kedalam wadah penampung. Robot

tidak bekerja dengan baik jika tidak dapat melakukan salah satu proses yaitu proses scaning

objek berwarna, pengambilan atau proses peletakan objek. Data percobaan diambil pada

kondisi ruang terang dengan objek tersusun secara acak ditunjukkan oleh Tabel 4.5 dan Tabel

4.6 menunjukkan data percobaan dengan objek yang tersusun berurutan.

Tabel 4.5. Data Hasil Percobaan Robot dalam Mengambil dan Meletakan Objek Berwarna

yang Tersusun Secara Acak

Percobaan Objek Berwarna

Data R G B Hasil

I Merah 44 ; 9 ; 9 Robot bekerja dengan baik

II Biru 8 ; 20 ; 49 Robot bekerja dengan baik

III Hijau 35 ; 55 ; 22 Robot bekerja dengan baik

IV Hijau 35 ; 55 ; 20 Robot bekerja dengan baik

V Biru 10 ; 24 ; 60 Robot bekerja dengan baik

VI Merah 51 ; 7 ; 9 Robot bekerja dengan baik

VII Biru 9 ; 22 ; 50 Robot bekerja dengan baik

VIII Merah 35 ; 9 ; 10 Robot bekerja dengan baik

IX Merah 30 ; 8 ; 8 Robot bekerja dengan baik

X Merah 43 ; 6 ; 6 Robot bekerja dengan baik

XI Hijau 34 ; 58 ; 19 Robot bekerja dengan baik

XII Biru 9 ; 22 ; 51 Robot bekerja dengan baik

XIII Merah 41 ; 6 ; 6 Robot bekerja dengan baik

XIV Biru 11 ; 25 ; 59 Robot bekerja dengan baik

XV Merah 43 ; 6 ; 7 Robot bekerja dengan baik

Page 92: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

74

Tabel 4.5. (Lanjutan) Data Hasil Percobaan Robot dalam Mengambil dan Meletakan Objek

Berwarna yang Tersusun Secara Acak

Percobaan Objek Berwarna

Data R G B Hasil

XVI Hijau 34 ; 58 ; 19 Robot bekerja dengan baik

XVII Hijau 35 ; 58 ; 20 Robot bekerja dengan baik

XVIII Biru 38 ; 10 ; 11 Robot bekerja dengan baik

XIX Biru 10 ; 24 ; 57 Robot bekerja dengan baik

XX Biru 10 ; 23 ; 50 Robot bekerja dengan baik

Tabel 4.6. Data Hasil Percobaan Robot dalam Mengambil dan Meletakan Objek Berwarna

yang Tersusun Secara Berurutan

Percobaan Objek Berwarna

Data R G B Hasil

I Merah 48 ; 13 ; 5 Robot bekerja dengan baik

II Biru 9 ; 22 ; 52 Robot bekerja dengan baik

III Hijau 33 ; 56 ; 18 Robot bekerja dengan baik

IV Merah 36 ; 6 ; 6 Robot bekerja dengan baik

V Biru 9 ; 22 ; 51 Robot bekerja dengan baik

VI Hijau 34 ; 58 ; 19 Robot bekerja dengan baik

VII Merah 51 ; 7 ; 8 Robot bekerja dengan baik

VIII Biru 8 ; 24 ; 62 Robot bekerja dengan baik

IX Hijau 35 ; 55 ; 22 Robot bekerja dengan baik

X Merah 44 ; 12 ; 13 Robot bekerja dengan baik

Dari Tabel 4.5 dan 4.6 menunjukkan bahwa dari beberapa kali percobaan yang

dilakukan semua berhasil, baik dengan objek yang tersusun secara acak maupun dengan objek

Page 93: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

75

yang tersusun secara berurutan. Robot lengan mampu mengambil dan meletakkan objek

berwarna dengan tempat ke wadah penampung objek sesuai dengan warna objek tersebut.

Tingkat keberhasilan alat dapat dihitung dengan persamaan sebagai berikut :

Robot lengan memiliki tingkat keberhasilan 100% dalam menjalankan tugasnya untuk

mengambil dan memindahkan objek berwarna kedalam kotak penampung sesuai dengan

warna objek tersebut.

Page 94: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

76

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil pengujian serta pengambilan data pada robot lengan otomatis sebagai

pemisah barang berdasarkan warna dengan menggunakan Atmega8535, dapat diambil

kesimpulan:

1. Robot lengan sudah dapat bekerja dengan baik dalam proses pengambilan dan

peletakan objek berwarna yang tersusun secara acak ataupun tersusun secara

berurutan.

2. Motor servo berfungsi dengan baik sebagai aktuator robot lengan dalam

mengerjakan proses pengambilan dan peletakan objek/barang.

3. Jarak jangkauan sensor untuk mendeteksi objek berwarna dapat mencapai jarak

jangkau 2,5-7 cm.

4. Kondisi pencahayaan ruang yang gelap ataupun terang tidak mempengaruhi

kinerja sensor TCS3200.

5. Robot lengan sebagai pengambil dan peletak objek berwarna memiliki tingkat

keberhasilan 100%.

5.2 Saran

Saran-saran bagi pengembangan selanjutnya adalah:

1. Robot lengan memiliki daya jangkauan lebih jauh agar dapat mengambil dan

meletakan barang lebih banyak.

2. Lebih banyak variasi warna objek yang dideteksi.

Page 95: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

77

DAFTAR PUSTAKA

[1] Muhammad Afiq Bin Zulkifli, 2007, Design for Robot Welding Rotation Jig

with Workspace, Faculty of Manufacturing Engineering TECHNICAL

UNIVERSITY of MALAYSIA.

[2] http://www.robotindonesia.com, diakses 11 Januari 2011

[3] ----, 2011,Data Sheet Mikrokontroler Atmega8535, Atmel

[4] Ari Heryanto M., ST., Ir. Wisni Adi P., 2008, Pemorgraman Bahasa C untuk

Mikrokontroler ATMEGA8535, 1st ed, C.V ANDI OFFSET, Yogyakarta.

[5] Agus Bejo, 2008, C dan AVR Rahasia Kemudahan Bahasa C dalam

Mikrokonroler ATMEGA8535, 1st ed, GRAHA ILMU, Yogyakarta.

[6] http://depokinstruments.com/2010/02/08/teknik-pengendalian-lcd-karakter-

i/#more-585, diakses tanggal 6 Januari 2011.

[7] Sigit Suyantoro F., 2010, Robotika - Teori dan Implementasinya, 1st ed, C.V

ANDI OFFSET, Yogyakarta.

[8] Endra Pitowarno, 2006, ROBOTIKA : Desain, kontrol, dan kecerdasan Buatan,

1st ed, C.V ANDI OFFSET, Yogyakarta.

[9] Sumbodo, W., 2008, Jilid 3, Teknik Produksi Mesin Industri, Direktorat

Pembinaan Sekolah Menengah Kejuruan, Dirjen Manajemen Pendidikan Dasar

dan Menengah, Hak Cipta Depdiknas.

[10] ----, 2011,Data Sheet TCS3200-DB (#28302): Color Sensor Module, Parallax

[11] Heri Adrianto, 2008, Pemrograman Mikrokontroler AVR ATMEGA 16, 1st ed,

INFORMATIKA, Bandung.

[12] http://www.electroniclab.com, diakses 20 Febuari 2011.

[13] Honeycutt, Richard A., 1988, Op Amps and Linear Integrated Circuits, Delmar

Publishers Inc., New York.

[14] http://www.avrku.com, diakses 23 Febuari 2011

[15]

[16]

[17]

http://www.parralax.com/motor servo, diakses 23 Febuari 2011.

Ardi Winoto, 2002, Mikrokontroler AVR ATMEGA8/32/8535 dan

Pemrogramannya dengan Bahasa C pada WinAVR, INFORMATIKA, Bandung

http://www.fairchildsemi.com/regulator7805, diakses 20 Febuari 2011.

Page 96: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

78

[18]

[19]

[20]

[21]

[22]

[23]

http://delta-electronic.com/sensorwarna, diakses 1 Febuari 2011.

http://www.rctronic.com/index.php?main_page=product_info&cPath=2_18&pr

oducts_id=192&zenid=6d042f1cef76d193910fa6fbdab0bf9c, diakses 2 Febuari

2011.

http://www.servocity.com/html/s3003_servo_standard.html diakses 2 Febuari

2011.

Paul A. Tipler, 1998, FISIKA Untuk Sains dan Teknik, edisi 3 jilid 1, Erlangga,

Bandung.

Mark N. Horesnstein, 1996, Microlectronic Circuit and Devices, 2st ed, Prentice

Hall nternational.Inc, New Jersey.

http://www.ofremmi.info/F3A/Technic/ServoTesting/servo_test_results.htm,

diakses 14 April 2011.

Page 97: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L1

LAMPIRAN

Rangkaian Sistem Minimum

Rangkaian Regulator Rangkaian TCS3200

Page 98: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L2

Servo HXT5010 Test Result [23]

SERVO HXT5010 [19]

Page 99: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L3

SERVO FUTABAS3003[20]

LISTING PROGRAM

/*****************************************************This program was produced by theCodeWizardAVR V1.25.8 ProfessionalAutomatic Program Generator© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l.http://www.hpinfotech.com

Project : Robot Lengan Otomatis sebagai Pemisah Barang Berdasarkan Warna Version : Date : 5/14/2011Author : Rio Arismarjito Company : Electro USD Comments :”Pengakuan” Datang Dari Usaha Kita untuk “Melayakkan” Diri

Page 100: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L4

Chip type : ATmega8535Program type : ApplicationClock frequency : 11.059200 MHzMemory model : SmallExternal SRAM size : 0Data Stack size : 128

S0 dan S1 5 voltS2=0 ; S3=0 -> filter merah S2=0 ; S3=1 -> filter biruS2=1 ; S3=0 -> filter clearS2=1 ; S3=1 -> filter hijau

S0 = PORTD.3S1 = PORTD.4S2 = PORTD.5S3 = PORTD.6LED putih di sensor PORTD.7out = PORTC.1

SERVO m_1 = PORTB.0SERVO m_2 = PORTB.1SERVO m_3 = PORTB.2SERVO m_4 = PORTB.3*****************************************************/#include <mega8535.h>// Alphanumeric LCD Module functions#asm .equ __lcd_port=0x1B ;PORTA#endasm#include <lcd.h>unsigned int x,m_4,m_2,m_3,m_1;

// Timer 0 overflow interrupt service routineinterrupt [TIM0_OVF] void timer0_ovf_isr(void)// Place your code herex++; if(x==869) x=1; else if (x <= m_1) PORTB.0=1; else PORTB.0=0; if (x <= m_2) PORTB.1=1; else PORTB.1=0;

Page 101: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L5

if (x <= m_3) PORTB.2=1; else PORTB.2=0; if (x <= m_4) PORTB.3=1; else PORTB.3=0; //=================================================================////SCANNING WARNA

#include <stdio.h> #include <delay.h>#define redref (27795/255) //nilai frekuensi warna merah, warna tiap 8 bitnya maka dbagi 255#define greenref (33066.7/255)#define blueref (34720/255) unsigned char lcd_buffer[33];unsigned int count, red, green, blue;float periode, frekuensi, ;

void red_filter() //fungsi untuk scaning pemfilter merah

PORTD.5=0; //selector S1 PORTD.6=0; //selector S2 while(PINC.1 == 0) while(PINC.1 == 1) while(PINC.1 == 0) //Output sensor, bernilai low count++;//proses counter output sensor while(PINC.1 == 1)//Output sensor, bernilai high count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode);// hitung lama waktu pulsa high dan low dlm gel.penuhred = (frekuensi/redref); //hasil pemfilter merah (R)

count=0; //proses counter selesai

void green_filter() //fungsi untuk scaning pemfilter hijau

Page 102: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L6

PORTD.5=1;// selector S1 PORTD.6=1;// selector S2 while(PINC.1 == 0) while(PINC.1 == 1) while(PINC.1 == 0) //Output sensor, bernilai low count++; //proses counter output sensor while(PINC.1 == 1)//Output sensor, bernilai high count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode); green = (frekuensi/greenref); count=0;

void blue_filter() //fungsi untuk scaning pemfilter biru

PORTD.5=0;//selector S1 PORTD.6=1;//selektror S2 while(PINC.1 == 0) while(PINC.1 == 1) while(PINC.1 == 0) count++; while(PINC.1 == 1) count++; periode = ((float)count*(1/11059200)); frekuensi = ((float)1/periode); blue = (frekuensi/blueref); count=0;

Page 103: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L7

//===========================================================////MODE GERAK SERVO

void tampil_warna() if (((red>blue)&&(red>green))) lcd_gotoxy(4,1); lcd_putsf("OBJEK MERAH"); delay_ms(20); ===========Pengaturan Awal Posisi Robot============= m_2=86.80; //90 derajat delay_ms(30); m_3=43.40; //0 derajat delay_ms(30); m_4=99.82; //180 derajat delay_ms(30); m_1=43.40; // 0 derajat delay_ms(600);

============Proses Pengambilan===================== m_3=43.40; delay_ms(12); m_3=44.25; delay_ms(12); m_3=45.25; delay_ms(12); m_3=46.25; delay_ms(12); m_3=47.25; delay_ms(12); m_3=48.25; delay_ms(12); m_3=49.25; delay_ms(12); m_3=50.25; delay_ms(12); m_3=51.25; delay_ms(12); m_3=52.25; delay_ms(12); m_3=53.25; delay_ms(12); m_3=54.25;

Page 104: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L8

delay_ms(12); m_3=55.25; delay_ms(12); m_3=56.25; delay_ms(12); m_3=57.25; //28 derajat delay_ms(700); m_2=85.41; delay_ms(10); m_2=84; //5 derajat delay_ms(00); =============Proses Pencengkraman Objek================== m_1=86.8; //90 derajat cw delay_ms(800);

=============Proses Peletakan=========================== m_3=57.25; delay_ms(10); m_3=56.25; delay_ms(10); m_3=55.25; delay_ms(10); m_3=54.25; delay_ms(10); m_3=53.25; delay_ms(10); m_3=52.25; delay_ms(10); m_3=51.25; delay_ms(10); m_3=50.25; delay_ms(10); m_3=49.25; delay_ms(10); m_3=48.25; delay_ms(10); m_3=47.25; delay_ms(10); m_3=46.25; delay_ms(10); m_3=45.25; delay_ms(10); m_3=44.25; delay_ms(10);

Page 105: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L9

m_3=43.40; delay_ms(500); m_4=80.46; //40 derajat delay_ms(80);

m_3=43.40; delay_ms(20); m_3=44.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=56.25; delay_ms(20); m_3=57.25; delay_ms(20); m_3=58.25; delay_ms(500); m_1=43.40; delay_ms(500); m_3=57.25; delay_ms(20); m_3=56.25; delay_ms(20);

Page 106: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L10

m_3=55.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=44.25; delay_ms(20); m_3=43.40; delay_ms(20); m_2=83.8; delay_ms(50); m_2=84.8; delay_ms(50); m_2=85.8; delay_ms(50); m_2=86.8; delay_ms(50);

m_4=99.82; delay_ms(100);

if (((green>red)&&(green>blue)))

lcd_gotoxy(4,1); lcd_putsf("OBJEK HIJAU"); delay_ms(20);

Page 107: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L11

m_2=86.80; delay_ms(30); m_3=43.40; delay_ms(30); m_4=99.82; //180 derajat delay_ms(30); m_1=43.40; delay_ms(600); m_3=43.40; delay_ms(12); m_3=44.25; delay_ms(12); m_3=45.25; delay_ms(12); m_3=46.25; delay_ms(12); m_3=47.25; delay_ms(12); m_3=48.25; delay_ms(12); m_3=49.25; delay_ms(12); m_3=50.25; delay_ms(12); m_3=51.25; delay_ms(12); m_3=52.25; delay_ms(12); m_3=53.25; delay_ms(12); m_3=54.25; delay_ms(12); m_3=55.25; delay_ms(12); m_3=56.25; delay_ms(12); m_3=57.25; delay_ms(700);

m_2=85.41; delay_ms(10); m_2=84; delay_ms(700);

m_1=86.8;

Page 108: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L12

delay_ms(800); m_3=57.25; delay_ms(10); m_3=56.25; delay_ms(10); m_3=55.25; delay_ms(10); m_3=54.25; delay_ms(10); m_3=53.25; delay_ms(10); m_3=52.25; delay_ms(10); m_3=51.25; delay_ms(10); m_3=50.25; delay_ms(10); m_3=49.25; delay_ms(10); m_3=48.25; delay_ms(10); m_3=47.25; delay_ms(10); m_3=46.25; delay_ms(10); m_3=45.25; delay_ms(10); m_3=44.25; delay_ms(10); m_3=43.40; delay_ms(500); m_4=42.11; // 120 derajat delay_ms(350); m_3=43.40; delay_ms(20); m_3=44.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=47.25; delay_ms(20);

Page 109: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L13

m_3=48.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=56.25; delay_ms(20); m_3=57.25; delay_ms(20); m_3=58.25; delay_ms(500); m_1=43.40; delay_ms(500);

m_3=57.25; delay_ms(20); m_3=56.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=48.25; delay_ms(20);

Page 110: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L14

m_3=47.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=44.25; delay_ms(20); m_3=43.40; delay_ms(20); m_2=83.8; delay_ms(50); m_2=84.8; delay_ms(50); m_2=85.8; delay_ms(50); m_2=86.8; delay_ms(50); m_4=99.82; delay_ms(100);

if (((blue>red)&&(blue>green))) lcd_gotoxy(4,1); lcd_putsf("OBJEK BIRU"); delay_ms(20); m_2=86.80; delay_ms(30); m_3=43.40; delay_ms(30); m_4=99.82; //180 derajat delay_ms(30); m_1=43.40; delay_ms(500);

m_3=43.40; delay_ms(12); m_3=44.25; delay_ms(12); m_3=45.25; delay_ms(12); m_3=46.25; delay_ms(12);

Page 111: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L15

m_3=47.25; delay_ms(12); m_3=48.25; delay_ms(12); m_3=49.25; delay_ms(12); m_3=50.25; delay_ms(12); m_3=51.25; delay_ms(12); m_3=52.25; delay_ms(12); m_3=53.25; delay_ms(12); m_3=54.25; delay_ms(12); m_3=55.25; delay_ms(12); m_3=56.25; delay_ms(12); m_3=57.25; delay_ms(700); m_2=85.41; delay_ms(10); m_2=84; delay_ms(700);

m_1=86.8; delay_ms(800); m_3=57.25; delay_ms(10); m_3=56.25; delay_ms(10); m_3=55.25; delay_ms(10); m_3=54.25; delay_ms(10); m_3=53.25; delay_ms(10); m_3=52.25; delay_ms(10); m_3=51.25; delay_ms(10); m_3=50.25;

Page 112: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L16

delay_ms(10); m_3=49.25; delay_ms(10); m_3=48.25; delay_ms(10); m_3=47.25; delay_ms(10); m_3=46.25; delay_ms(10); m_3=45.25; delay_ms(10); m_3=44.25; delay_ms(10); m_3=43.40; delay_ms(500);

m_4=61.15; //80 derajat delay_ms(80);

m_3=43.40; delay_ms(20); m_3=44.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=56.25;

Page 113: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L17

delay_ms(20); m_3=57.25; delay_ms(20); m_3=58.25; delay_ms(500);

m_1=43.40; delay_ms(500); m_3=57.25; delay_ms(20); m_3=56.25; delay_ms(20); m_3=55.25; delay_ms(20); m_3=54.25; delay_ms(20); m_3=53.25; delay_ms(20); m_3=52.25; delay_ms(20); m_3=51.25; delay_ms(20); m_3=50.25; delay_ms(20); m_3=49.25; delay_ms(20); m_3=48.25; delay_ms(20); m_3=47.25; delay_ms(20); m_3=46.25; delay_ms(20); m_3=45.25; delay_ms(20); m_3=44.25; delay_ms(20); m_3=43.40; delay_ms(20); m_2=83.8; delay_ms(50); m_2=84.8; delay_ms(50); m_2=85.8; delay_ms(50);

Page 114: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L18

m_2=86.8; delay_ms(50);

m_4=99.82; delay_ms(100);

if (((green<4)&&(blue<4)&&(red<4)))

lcd_gotoxy(0,1); lcd_putsf("TIDAK ADA OBJEK"); delay_ms(20);

m_3=43.40; delay_ms(100); m_2=86.80; delay_ms(100); m_4=99.82; //180 derajat delay_ms(100); m_1=43.40; delay_ms(800);

// Declare your global variables here

void main(void)// Declare your local variables here

// Input/Output Ports initialization// Port A initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;DDRA=0x00;

// Port B initialization// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 PORTB=0x00;DDRB=0xFF;

// Port C initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=P State0=T PORTC=0x02;

Page 115: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L19

DDRC=0x00;

// Port D initialization// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 PORTD=0x00;DDRD=0xFF;

// Timer/Counter 0 initialization// Clock source: System Clock// Clock value: 11059.200 kHz// Mode: Normal top=FFh// OC0 output: DisconnectedTCCR0=0x01;TCNT0=0x00;OCR0=0x00;

// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: Timer 1 Stopped// Mode: Normal top=FFFFh// OC1A output: Discon.// OC1B output: Discon.// Noise Canceler: Off// Input Capture on Falling Edge// Timer 1 Overflow Interrupt: Off// Input Capture Interrupt: Off// Compare A Match Interrupt: Off// Compare B Match Interrupt: OffTCCR1A=0x00;TCCR1B=0x00;TCNT1H=0x00;TCNT1L=0x00;ICR1H=0x00;ICR1L=0x00;OCR1AH=0x00;OCR1AL=0x00;OCR1BH=0x00;OCR1BL=0x00;

// Timer/Counter 2 initialization// Clock source: System Clock// Clock value: Timer 2 Stopped// Mode: Normal top=FFh// OC2 output: Disconnected

Page 116: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

L20

ASSR=0x00;TCCR2=0x00;TCNT2=0x00;OCR2=0x00;

// External Interrupt(s) initialization// INT0: Off// INT1: Off// INT2: OffMCUCR=0x00;MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=0x01;

// Analog Comparator initialization// Analog Comparator: Off// Analog Comparator Input Capture by Timer/Counter 1: OffACSR=0x80;SFIOR=0x00;// LCD module initializationlcd_init(16);// Global enable interrupts#asm("sei")count=0;PORTD=0b10011000;

while (1) // Place your code here red_filter(); delay_ms(20); green_filter(); delay_ms(20); blue_filter(); delay_ms(20); lcd_gotoxy(0,1); lcd_clear(); sprintf(lcd_buffer,"R:%d G:%d B:%d",red,green,blue); lcd_puts(lcd_buffer); tampil_warna(); ;

Page 117: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

Rio Arismarjito

DAFTAR RIWAYAT HIDUP

Rio ArismarjitoTEMPAT & TGL LAHIR : NABIRE, 11 APRIL 1989JENIS KELAMIN : LAKI-LAKI

AGAMA : KATOLIK

PEKERJAAN : MAHASISWA

PROGRAM STUDI : TEKNIK ELEKTRO,UNIVERSITAS SANATA DHARMA

PENDIDIKAN :

1994-2000, SD YPPK St. Petrus, Nabire, Papua2000-2003, SLTP YPPK St. Antonius, Nabire, Papua2003-2006, SMA Adhi Luhur, Nabire, Papua2006-2011, Universitas Sanata Dharma, Yogyakarta, Teknik Elektro

KEAHLIAN :

Menguasai Code Vision AVR studioMenguasai Eagle Layout EditorMenguasai PLC omronMenguasai Orcad SimulatorPemograman C,C++,Assambler, Visual BasicMenguasai Google Sketchup dan 3D maxMenguasai Microsoft Office

PRESTASI :Juara Harapan I Kontes Robot Cerdas Indonesia 2010 (KRCI) Regional III Divisi Battle.Masuk dalam 13 besar Kontes Robot Cerdas Indonesia 2010 (KRCI) tingkat Nasional Divisi Battle.Juara I Basket antar SMA 2005Peserta ajang kreativitas tingkat Provinsi Papua 2005

Page 118: ROBOT LENGAN OTOMATIS SEBAGAI PEMISAH ...ATmega8535 terdiri dari sistim minimum yang berfungsi mengontrol pergerakan motor servo sebagai aktuator robot lengan dan mengolah data yang

Rio Arismarjito

DAFTAR RIWAYAT HIDUP

PENGALAMAN KERJA :Praktek Kerja di PT. Produk Rekreasi Kids Fun, YogyakartaPraktek Kerja di PT. Pertamina Field Jatibarang, CirebonOperator Internet

TERTARIK :

Graphics Designing in Adobe Photoshop & Corel DrawEditing Photo, Sound EditorRobotic, Komputer dan Jaringan

HOBI : Photography, Footsal, Browsing, Basket, gitar, dengar musik.

.

Alamat :Jln. Kepuhsari No.21

Paingan, Maguwoharjo,Depok, Sleman, Yogyakarta-------------------------------------

Phone : 085743545777E-mail :

[email protected]