• Tidak ada hasil yang ditemukan

Aplikasi pengenalan objek untuk lengan robot pemisah benda berdasarkan bentuk benda.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Aplikasi pengenalan objek untuk lengan robot pemisah benda berdasarkan bentuk benda."

Copied!
137
0
0

Teks penuh

(1)

INTISARI

Perkembangan dunia teknologi sangat berpengaruh bagi kehidupan manusia. Perkembangan teknologi dapat mempermudah kinerja manusia dan meningkatkan efisieni tenaga dan waktu untuk mendukung proses operasional suatu usaha. Salah satunya adalah lengan robot untuk mengenali bentuk benda agar dapat mengambil dan memisahkan benda berdasarkan bentuk dengan menggunakan teknologi image processing. Proses pemisahan benda menggunakan lengan robot masih banyak dilakukan secara manual atau dioperasikan oleh operator. Hal ini dirasa kurang efisien dan memerlukan waktu yang lama.

Berdasarkan hal tersebut, dibutuhkan adanya lengan robot yang dapat mengenali bentuk benda secara otomatis agar dapat mengambil dan memisahkan benda secara otomatis tanpa dioperasikan operator. Urutan pengenalan bentuk benda yaitu citra RGB benda diubah menjadi citra grayscale untuk mempermudah proses pengenalan. Kemudian memproses citra grayscale menjadi citra biner, proses pemotongan citra (croping),

resizing, menjumlahkan nilai citra biner, dan pengenalan bentuk benda berdasarkan range

jumlah nilai citra biner berdasarkan masing-masing bentuk benda. Lengan robot digerakan oleh motor servo yang dikendalikan ATmega32 menggunakan fasilitas interrupt dan komunikasi serial antara komputer dengan ATmega32 menggunakan komunikasi serial USART yang diprogram menggunakan CodeVision AVR.

Hasil dari penelitian ini adalah sistem dapat membedakan 4 macam bentuk benda secara realtime serta lengan robot dapat mengambil dan memisahkan benda berdasarkan bentuk. Setelah melakukan percobaan sebanyak 40 kali, sistem dan lengan robot dapat bekerja 100% dengan toleransi kemiringan benda 10o dan tata peletakan benda sesuai dengan batasan masalah. Namun apabila tidak sesuai dengan batasan masalah, maka sistem dan lengan robot tidak dapat bekerja secara baik. Hal ini disebabkan gripper tidak dapat menjangkau objek untuk proses pemindahan.

(2)

ABSTRACT

The development of the technology very influential for human life. Technology development to simplify the human pershapeance and increase efficient of time and energy to support the process of operational a business. One is robotic arm for acquainted object shape in ordet to take and separate object base on object shape using image processing technology. Object separation process using robotic arm still operation with manually or operated by operator. This is not efficient and need more time. This is less efficient and requires a long time.

Based on this, it takes the robot arm that can automatically recognize the shape of the object in order to extract and separate objects automatically without operator operated. Object shape identification step is RGB image of object change to grayscale image for facilitate identification process. After that processing grayscale image to binary image, cropping process, resizing, counting binary image value, and identification object shape based on range binary image value for respectively object shape. Robotic arm movement by servo motor controlled ATmega32 using interrupt facilities and serial communication between computer and ATmega32 using USART serial communication programed with

CodeVision AVR.

The results of the research is the system can dicrimination four kinds of realtime objects and the robotic arm can pick up and separate objects based on shape. After experimenting as much as 40 times, system and the robotic arm can work 100% with a tolerance of 10o tilt objects and layout objects laying in accordance with problem definition. But, if the problem is not in accordance with the limits, then the system and the robotic arm can not work properly. This is due to the gripper can not reach the object to the moving process.

(3)

TUGAS AKHIR

APLIKASI PENGENALAN OBJEK

UNTUK LENGAN ROBOT PEMISAH BENDA

BERDASARKAN BENTUK BENDA

Diajukan untuk memenuhi salah syarat memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh :

IRVAN HASAN

Nim : 115114018

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

i

TUGAS AKHIR

APLIKASI PENGENALAN OBJEK

UNTUK LENGAN ROBOT PEMISAH BENDA

BERDASARKAN BENTUK BENDA

Diajukan untuk memenuhi salah syarat memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh :

IRVAN HASAN

Nim : 115114018

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(5)

ii

FINAL PROJECT

OBJECT IDENTIFICATION APPLICATION FOR

ROBOTIC ARM OBJECT SEPARATOR BASED ON

OBJECT SHAPE

In partial fulfilment of the requirements for the degree of Sarjana Teknik

in Electrical Engineering Study Program

Faculty of Science and Technology Sanata Dharma University

IRVAN HASAN

Nim : 115114018

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTEMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

(6)

HALAMAN

PERSETUJUAN

TUGAS

AKHIR

APLIKASI

PENGENALANI

OBJEK

UT{TUK

LENGAN ROBOT PEMISAH BENDA

BERDASARKAN BENTUK BENDA

(OBJECT IDE

ROBOTIC

Pembimbing

r

/1

v:?-

,t^

.-r

Dr.

Linggo

Sumarno

ranggar,

b

ru

/-(f

ilt

(7)

HALAMAN

PENGESAHAN

TUGAS

AKHIR

APLIKASI

PENGENALAN OBJEK

UNTUK LENGAN ROBOT PEMISAH BENDA

BERDASARKAI\ BENTUK

BEI\DA

(OBJECT

IDENTIFICATION

APPLICATION FOR

ROBOTIC

ARM

OBJECT

SEPARATOR BASED

ON

OBJECT

SHAPE)

Oleh :

IRVAN

HASAN

NIM:115114018

Telah dipertahankan di depan panitia penguji pada tanggal:

dan dinyatakan memenuhi syarat

susunan panitia

Nama lengkap

Ketua

: Ir. Th. Prima

Ari Setiyani,

M. T.

Sekertaris

: Dr. Linggo Sumarno

Anggota

: Dr.Iswanjono

Yogyakmta.

21

Afichrr-

ZotS Fakultas Sains dan Teknologi

iv

(8)

PERNYATAAI\ KEASLTAI\

KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas

akhir

yatrg berjudul

*APLIKASI

PENGENALATI

OBJEK UNTUK LENGAI[

ROBOT

PEMISAH

BENDA BERDASARKAI{ BENTUK BENDA' tidak memuat karya atau bagian karya

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

layaknya karya ilmiah.

Apabila dikemudian hari ditemukan indikasi plagiatisme dalam naskah ini, maka

saya bersedia menanggung segala sanksi sesuai peraturan perundang-undangan yang

berlaku.

Yogyakarta, 27 lunt20l5

(9)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO :

“Tidak ada orang yang terlahir dengan

kepintaran yang luar biasa, melainkan

orang terlahir dengan semangat juang yang

luar biasa

Skripsi ini kupersembahkan untuk :

Tuhan Yesus Kristus penyelamatku

Bunda Maria dan Malaikat pelindungku…

Papa dan Mama tercinta, untuk doanya, serta

dukungannya secara moral maupun materi

Almamaterku Teknik Elektro Universitas Sanata Dharma

(10)

HALAMAN

PERNYATAAN PERSETUJUAI\

PUBLIKASI

KARYA

ILMIAH

UNTUK

KEPENTINGAN

AKADEMIS

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

Nama

: IRVAN HASAN NomorMahasiswa : 115114018

Demi

pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

APLIKASI PENGENALAI\ OBJEK

UNTUK LENGAN ROBOT PEMISAH BENDA

BEDA.SARKAN BENTUK BENDA

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

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam

bentuk media lain, mengelolanya dalam bentuk pangkalan datq 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 setenarnya.

Yogyakarta, 27 Juni 2015

Irvan Hasan

(11)

viii

INTISARI

Perkembangan dunia teknologi sangat berpengaruh bagi kehidupan manusia. Perkembangan teknologi dapat mempermudah kinerja manusia dan meningkatkan efisieni tenaga dan waktu untuk mendukung proses operasional suatu usaha. Salah satunya adalah lengan robot untuk mengenali bentuk benda agar dapat mengambil dan memisahkan benda berdasarkan bentuk dengan menggunakan teknologi image processing. Proses pemisahan benda menggunakan lengan robot masih banyak dilakukan secara manual atau dioperasikan oleh operator. Hal ini dirasa kurang efisien dan memerlukan waktu yang lama.

Berdasarkan hal tersebut, dibutuhkan adanya lengan robot yang dapat mengenali bentuk benda secara otomatis agar dapat mengambil dan memisahkan benda secara otomatis tanpa dioperasikan operator. Urutan pengenalan bentuk benda yaitu citra RGB benda diubah menjadi citra grayscale untuk mempermudah proses pengenalan. Kemudian memproses citra grayscale menjadi citra biner, proses pemotongan citra (croping),

resizing, menjumlahkan nilai citra biner, dan pengenalan bentuk benda berdasarkan range

jumlah nilai citra biner berdasarkan masing-masing bentuk benda. Lengan robot digerakan oleh motor servo yang dikendalikan ATmega32 menggunakan fasilitas interrupt dan komunikasi serial antara komputer dengan ATmega32 menggunakan komunikasi serial USART yang diprogram menggunakan CodeVision AVR.

Hasil dari penelitian ini adalah sistem dapat membedakan 4 macam bentuk benda secara realtime serta lengan robot dapat mengambil dan memisahkan benda berdasarkan bentuk. Setelah melakukan percobaan sebanyak 40 kali, sistem dan lengan robot dapat bekerja 100% dengan toleransi kemiringan benda 10o dan tata peletakan benda sesuai dengan batasan masalah. Namun apabila tidak sesuai dengan batasan masalah, maka sistem dan lengan robot tidak dapat bekerja secara baik. Hal ini disebabkan gripper tidak dapat menjangkau objek untuk proses pemindahan.

(12)

ix

ABSTRACT

The development of the technology very influential for human life. Technology development to simplify the human pershapeance and increase efficient of time and energy to support the process of operational a business. One is robotic arm for acquainted object shape in ordet to take and separate object base on object shape using image processing technology. Object separation process using robotic arm still operation with manually or operated by operator. This is not efficient and need more time. This is less efficient and requires a long time.

Based on this, it takes the robot arm that can automatically recognize the shape of the object in order to extract and separate objects automatically without operator operated. Object shape identification step is RGB image of object change to grayscale image for facilitate identification process. After that processing grayscale image to binary image, cropping process, resizing, counting binary image value, and identification object shape based on range binary image value for respectively object shape. Robotic arm movement by servo motor controlled ATmega32 using interrupt facilities and serial communication between computer and ATmega32 using USART serial communication programed with

CodeVision AVR.

The results of the research is the system can dicrimination four kinds of realtime objects and the robotic arm can pick up and separate objects based on shape. After experimenting as much as 40 times, system and the robotic arm can work 100% with a tolerance of 10o tilt objects and layout objects laying in accordance with problem definition. But, if the problem is not in accordance with the limits, then the system and the robotic arm can not work properly. This is due to the gripper can not reach the object to the moving process.

(13)

x

KATA PENGANTAR

Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala berkat

dan rahmat-Nya, sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik.

Penulis menyadari bahwa banyak pihak yang telah memberikan doa, dukungan, perhatian

serta bantuan kepada penulis sehingga dapat menyelesaikan tugas akhir ini. Oleh karena

itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada:

1) Paulina Heruningsih Prima Rosa, S.Si., M.Sc selaku dekan Fakultas Sains dan

Teknologi Universitas Sanata Dharma Yogyakarta.

2) Petrus Setyo Prabowo, S.T.,M.T., Ketua Program Studi Teknik Elektro Universitas

Sanata Dharma Yogyakarta.

3) Theresia Prima Ari Setiyani S.T., M.T selaku dosen pembimbing akademik yang

telah mendampingi dan membimbing penulis selama perkuliahan.

4) Dr. Linggo Sumarno, dosen pembimbing yang dengan penuh pengertian, sabar dan

ketulusan hati memberi bimbingan, kritik, saran, serta motivasi dalam penulisan

tugas akhir ini.

5) Ibu Theresia Prima Ari Setiyani S.T., M.T dan Bapak Dr.Iswanjono selaku dosen

penguji yang telah bersedia memberikan masukan, bimbingan, dan saran dalam

memperbaiki tugas akhir ini.

6) Bapak/ Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh

pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi,

Universitas Sanata Dharma.

7) Kedua orang tua tercinta, papah Hasan Hamdan dan mamah Rina Wati atas kasih

sayang, dukungan dan doa yang tiada henti.

8) Adik-adik tercinta Erwin Kristiawan Hasan, Aldo Alfonsus Hasan, dan Putri

Juliana Hasan yang selalu mendukung dan mendoakan saya, sehingga dapat

menyelesaikan tugas belajar dengan baik.

9) Angeline Syahputri Fransiskus sebagai teman, sahabat, dan kekasih yang selalu

menyemangati dan mendukung penulis sampai terselesaikannya tugas akhir ini.

(14)

ll)Staff

dan petugas laboratorium Teknik Elektro yang telah membantu banyak hal untuk kelancaran tugas-tugas perkuliahan.

12) Teman-teman seperjuangan angkatan 2011 Teknik Elektro yang selalu mendukung

dan menyemangati saya dalam menyelesaikan tugas akhfu ini.

13) Semua pihak yang tidak dapat disebutkan satu persatu atas semua dukungan yang

telah diberikan dalam penyelesaian tugas akhir ini.

Penulis menyadari bahwa datam penulisan tugas

akhir ini

masih banyak

kekurangan, kelemahan dan jauh dari sempurna. Oleh sebab itu, dengan segala kerendahan

hati, penulis mengharapkan kdtik dan saran yang membangun untuk penyempwnaan tugas

akhir ini. Dan semoga tugas akhir ini dapat bernranfaat sebagaimana mestinya.

Yogyakarta 27 Juni 2015

W

Penulis

Irvan Hasan

(15)

xii

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ... vi

HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vii

INTISARI ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR TABEL ... xv

DAFTAR GAMBAR ... xvi

BAB I PENDAHULUAN 1.1. Latar Belakang ... 1

1.2. Tujuan dan Manfaat ... 2

1.3. Batasan Masalah ... 2

1.4. Metodologi Penelitian ... 3

1.5. Sistematika Penulisan ... 4

BAB II DASAR TEORI 2.1. Lengan Robot ... 5

2.2. Torsi/Momen Gaya ... 7

2.3. Motor Servo ... 7

2.4. Mikrokontroler AVR ATmega32 ... 8

2.4.1. Arsitektur AVR ATmega32 ... 9

2.4.2. Deskripsi Mikrokontroler ATmega32 ... 9

2.4.3. Organisasi Memori AVR ATmega32 ... 10

2.4.4. Interupsi ... 11

2.4.5. Timer/Counter ... 11

2.4.6. Komunikasi Serial USART ... 13

2.5. LCD 16x2 ... 18

(16)

xiii

2.7. Photodioda ... 22

2.8. Infrared ... 25

2.9. Transistor Sebagai Saklar ... 25

2.10. Relay ... 26

2.11. Webcam ... 26

2.12. Benda Tiga Dimensi ... 27

2.13. Pengolahan Citra Digital ... 27

2.14. Pemrosesan Citra ... 28

2.14.1.Citra Grayscale ... 28

2.14.2.Cropping ... 29

2.14.3.Citra Biner ... 29

2.14.4.Resizing ... 30

2.15. Metode Pengenalan Benda ... 30

BAB III PERANCANGAN PENELITIAN 3.1. Proses Kerja dan Mekanisme Lengan Robot ... 31

3.2. Perancangan Mekanik Lengan Robot ... 32

3.3. Perancangan Perangkat Keras ... 34

3.3.1. Minimum System ATmega32 + LCD 16x2 ... 34

3.3.1.1. Minimum System ATmega32 ... 34

3.3.1.2. Rangkaian Konfigurasi LCD 16x2 ... 35

3.3.2. Perhitungan Torsi Motor Servo ... 36

3.3.3. Motor Servo ... 38

3.3.4. Regulator ic 7805 dan Penguat Arus ... 40

3.3.5. Webcam ... 40

3.3.6. Sensor Photodioda dan Transistor Sebagai Saklar ... 41

3.3.7. Benda Tiga Dimensi ... 42

3.4. Perancangan Perangkat Lunak ... 43

3.4.1. Flowchart Program Interrupt Lengan Robot ... 45

3.4.2. Flowchart Program Pengenalan Bentuk Benda Pada MATLAB ... 49

3.4.3. Perancangan GUI MATLAB ... 50

3.4.4. Perubahan m-file Menjadi exe file ... 51

(17)

xiv

BAB IV HASIL PENGAMATAN DAN PEMBAHASAN

4.1. Bentuk Fisik dan Sistem Kerja Lengan Robot ... 56

4.2. Hasil Data Pengujian dan Pembahasan ... 58

4.2.1.Sudut Motor Servo ... 58

4.2.2.Pengujian Nilai Citra Biner Bentuk Benda ... 61

4.2.3.Tata Peletakan Benda ... 62

4.2.4.Pengujian Keberhasilan Sistem Mendeteksi Bentuk Benda ... 63

4.2.5.Pengujian Keberhasilan Lengan Robot Saat Mengambil dan Memindahkan Benda ... 68

4.2.6.Pengujian Sistem Dalam Proses Pengenalan Benda dan Proses Pemindahan Benda ... 68

4.2.6.1. Menggunakan Lopping ... 68

4.2.6.2. Tidak Menggunakan Lopping ... 69

4.3. Analisa dan Pembahasan Perangkat Lunak ... 69

4.3.1.Aplikasi CodeVision AVR ... 69

4.3.1.1. Pengendali Sensor Photodioda ... 69

4.3.1.2. Pengendali Komunikasi USART ... 70

4.3.1.3. Pengendali Motor Servo ... 71

4.3.1.4. Subrutin Program Utama ... 74

4.3.2.Aplikasi MATLAB ... 76

4.3.2.1. Tampilan Gui MATLAB ... 76

4.3.2.2. Inisialisasi Komunikasi Serial ... 77

4.3.2.3. Inisialisasi Webcam ... 77

4.3.2.4. Proses Pengolahan Citra ... 78

4.3.2.5. Proses Pengenalan Bentuk Benda ... 78

Kesimpulan dan Saran ... 80

Daftar Pustaka ... 81

(18)

xv

DAFTAR TABEL

Tabel 2.1. Hubungan PIN dan Interupsi ... 11

Tabel 2.2. Penentuan Ukuran Karakter ... 17

Tabel 2.3. Operasi Dasar LCD 16x2 ... 19

Tabel 2.4. Konfigurasi Pin LCD 16x2 ... 19

Tabel 2.5. Konfigurasi Setting LCD 16x2 ... 20

Tabel 2.6. Karakteristik Regulator Tegangan ic 78xx ... 20

Tabel 2.7. Hubungan Arus Dengan Hambatan ... 24

Tabel 3.1. Perhitungan Torsi Motor Servo ... 37

Tabel 3.2. Perhitungan Nilai OCR ... 39

Tabel 3.3. Pemberian sudut motor servo ... 45

Tabel 4.1. Perhitungan Lebar Pulsa Motor Servo Towerpro MG946R ... 60

Tabel 4.2. Data Citra Biner Masing-Masing Bentuk Benda ... 61

Tabel 4.3. Pengujian Keberhasilan Sistem Mendeteksi Bentuk Benda ... 63

Tabel 4.4. Pengujian Keberhasilan Lengan Robot Mengambil dan Memindahkan Benda ... 68

(19)

xvi

DAFTAR GAMBAR

Gambar 2.1. Manipulator Pada Lengan Robot ... 5

Gambar 2.2. Contoh Gripper ... 6

Gambar 2.3. Model Fisik Motor Servo ... 7

Gambar 2.4. Cara Pengontrolan Motor Servo ... 8

Gambar 2.5. Konfigurasi Pin Mikrokontroler ATmega32 ... 9

Gambar 2.6. Mode Phase Correct PWM ... 12

Gambar 2.7. Mode fast PWM ... 13

Gambar 2.8. Register UDR ... 14

Gambar 2.9. Register UCSRA ... 14

Gambar 2.10. Register UCSRB ... 16

Gambar 2.11. Register UCSRC ... 17

Gambar 2.12. Contoh LCD 16x2 ... 18

Gambar 2.13. Rangkaian Umum Regulator 78xx ... 21

Gambar 2.14. Rangkaian Catu Daya Dengan Penguat ... 21

Gambar 2.15. Simbol Dan Bentuk Photodioda ... 23

Gambar 2.16. Respon Relatif Spektral Untuk Si, Ge, Dan Selenium Dibandingkan Dengan Mata Manusia ... 23

Gambar 2.17. Hubungan Iλ Dengan Fc Pada Photodioda ... 23

Gambar 2.18. Rangkaian Sensor Photodioda ... 24

Gambar 2.19. Aplikasi Sensor Photodioda ... 24

Gambar 2.20. Contoh Rangkaian Transistor Sebagai Saklar ... 25

Gambar 2.21. Bentuk Fisik Relay ... 26

Gambar 2.22. Contoh Webcam ... 27

Gambar 2.23. Contoh Benda Tiga Dimensi ... 27

Gambar 2.24. Contoh Koordinat Citra Digital ... 28

Gambar 2.25. Citra Skala Keabuan ... 29

Gambar 2.26. Contoh Citra Biner ... 29

Gambar 2.27. Aplikasi Citra Biner ... 30

Gambar 3.1. Blok Diagram Sistem ... 32

Gambar 3.2. Anatomi Lengan Robot ... 32

Gambar 3.3. Komponen 1 ... 33

(20)

xvii

Gambar 3.5. Komponen 3 ... 33

Gambar 3.6. Gripper Tampak Atas ... 33

Gambar 3.7. Peletakan Seluruh Komponen ... 34

Gambar 3.8. Rangkaian Osilator ATmega32 ... 35

Gambar 3.9. Rangkaian Reset ATmega32 ... 35

Gambar 3.10. Skematik LCD 16x2 ... 36

Gambar 3.11. Setting Port LCD ... 36

Gambar 3.12. Konstruksi Lengan Robot ... 36

Gambar 3.13. Rangkaian Pin Motor Servo ... 38

Gambar 3.14. Lebar Pulsa Motor Servo ... 39

Gambar 3.15. Rangkaian Regulator 7805 Dengan Penguat Arus ... 40

Gambar 3.16. Rangkaian Sensor Photodioda ... 41

Gambar 3.17. Rangkaian Transistor Sebagai Saklar dan Relay ... 42

Gambar 3.18. Benda Tiga Dimensi ... 42

Gambar 3.19. Flowchart Keseluruhan Sistem ... 44

Gambar 3.20. Flowchart Program Interrupt Lengan Robot Saat Posisi Siaga ... 46

Gambar 3.21. Flowchart Program Interrupt Lengan Robot Saat Mengambil Benda ... 46

Gambar 3.22. Flowchart Program Interrupt Lengan Robot Saat Meletakan Benda Kubus ... 47

Gambar 3.23. Flowchart Program Interrupt Lengan Robot Saat Meletakan Benda Balok ... 47

Gambar 3.24. Flowchart Program Interrupt Lengan Robot Saat Meletakan Benda Tabung ... 48

Gambar 3.25. Flowchart Program Interrupt Lengan Robot Saat Meletakan Benda Bola ... 48

Gambar 3.26. Flowchart Pengenalan Bentuk Benda Pada MATLAB ... 50

Gambar 3.27. Perancangan GUI pada MATLAB ... 51

Gambar 3.28. Langkah Pertama exe File ... 52

Gambar 3.29. Langkah Kedua exe File ... 52

Gambar 3.30. Langkah Ketiga exe File ... 53

Gambar 3.31. (Lanjutan) Langkah Ketiga exe File ... 53

(21)

xviii

Gambar 3.33. (Lanjutan) Langkah Keempat exe File ... 54

Gambar 3.34. Flowchart Menghitung Jumlah Benda yang Telah Terdeteksi ... 55

Gambar 4.1. Conveyor ... 56

Gambar 4.2. Minimum System ... 56

Gambar 4.3. Regulator ... 56

Gambar 4.4. Benda ... 57

Gambar 4.5. Lengan Robot ... 57

Gambar 4.6. Tempat Peletakan Benda ... 57

Gambar 4.7. Sudut 0o ... 59

Gambar 4.8. Sudut 10o ... 59

Gambar 4.9. Sudut 20o ... 59

Gambar 4.10. Sudut 30o ... 59

Gambar 4.11. Sudut 40o ... 59

Gambar 4.12. Sudut 50o ... 59

Gambar 4.13. Sudut 60o ... 59

Gambar 4.14. Sudut 70o ... 59

Gambar 4.15. Sudut 80o ... 59

Gambar 4.16. Sudut 90o ... 59

Gambar 4.17. Sudut 100o ... 59

Gambar 4.18. Sudut 110o ... 59

Gambar 4.19. Sudut 120o ... 60

Gambar 4.20. Sudut 130o ... 60

Gambar 4.21. Sudut 140o ... 60

Gambar 4.22. Sudut 150o ... 60

Gambar 4.23. Sudut 160o ... 60

Gambar 4.24. Sudut 170o ... 60

Gambar 4.25. Sudut 180o ... 60

Gambar 4.26. Grafik Data Citra Biner ... 62

Gambar 4.27. Peletakan Benda Kubus ... 62

Gambar 4.28. Peletakan Benda Balok ... 62

Gambar 4.29. Peletakan Benda Tabung ... 63

Gambar 4.30. Peletakan Benda Bola ... 63

(22)

xix

Gambar 4.32. Pengujian Benda Kubus ... 65

Gambar 4.33. Pengujian Benda Tabung ... 66

Gambar 4.34. Pengujian Benda Bola ... 67

Gambar 4.35. Listing Program ADC ... 69

Gambar 4.36. Listing Program Pengendali Conveyor ... 70

Gambar 4.37. Listing Program Komunikasi USART ... 70

Gambar 4.38. Listing program pengendali sudut putar motor servo ... 71

Gambar 4.39. Pemberian Nilai OCR Motor Servo ... 71

Gambar 4.40. Listing Program Gerakan Mengambil Benda ... 72

Gambar 4.41. Listing Program Memindahkan Benda Kubus ... 73

Gambar 4.42. Listing Program Memindahkan Benda Balok ... 73

Gambar 4.43. Listing Program Memindahkan Benda Tabung ... 74

Gambar 4.44. Listing Program Memindahkan Benda Bola ... 74

Gambar 4.45. Subrutin Program Utama ... 75

Gambar 4.46. Tampilan GUI MATLAB ... 76

Gambar 4.47. Inisialisasi Komunikasi Serial ... 77

Gambar 4.48. Inisialisasi Webcam ... 77

Gambar 4.49. Proses Pengolahan Citra ... 78

(23)

1

BAB I

PENDAHULUAN

1.1.

Latar Belakang

Pada masa kini teknologi memiliki peranan penting dalam aktivitas yang dilakukan

manusia untuk mempermudah melakukan pekerjaan. Salah satu hasil perkembangan

teknologi yaitu adanya teknologi yang dinamakan lengan robot [1] dan computer vision

[2]. Lengan robot atau biasa disebut robot manipulator adalah gabungan dari beberapa

segmen dan joint yang secara umum dibagi menjadi tiga bagian yaitu arm, wrist, dan

gripper [1]. Sedangkan computer vision merupakan bidang pengetahuan yang berfokus

pada bidang sistem kecerdasan buatan dan berhubungan dengan akuisisi data dan

pemrosesan citra [2].

Lengan robot memiliki banyak fungsi diantaranya yaitu untuk memindahkan

material, benda, alat, atau peralatan tertentu lewat pergerakan yang terprogram untuk

melakukan berbagai macam tugas [1] seperti pada penelitian terdahulu yang dilakukan

oleh Arismarjito[3] mengenai lengan robot pemisah benda berdasarkan warna

menggunakan sensor warna TCS3200. Dari penelitian tersebut dan berdasarkan manfaat

lengan robot serta computer vision, maka peneliti memiliki gagasan membuat lengan robot

untuk memisahkan benda berdasarkan bentuk dengan menggunakan webcam sebagai

sensor.

Cara kerja lengan robot secara keseluruhan yaitu mula-mula benda diletakan diatas

conveyor yang akan membawa benda ke arah webcam untuk diproses dan dikenali

bentuknya. Setelah benda dikenali, maka lengan robot akan mengambil benda tersebut

(24)

1.2.

Tujuan dan Manfaat

Tujuan penulisan tugas akhir ini yaitu membuat lengan robot yang dapat

membedakan 4 macam bentuk benda secara realtime. Manfaat dari penulisan tugas akhir

ini adalah untuk membantu pekerjaan manusia, khususnya memisahkan beberapa jenis

benda yang memiliki bentuk berbeda. Pengembangan dari pembuatan tugas akhir ini yaitu

lengan robot industri otomatis untuk memisahkan benda-benda maupun material tertentu

yang memiliki bentuk berbeda secara otomatis.

1.3.

Batasan Masalah

Pada perancangan alat ini, penulis berfokus pada pembuatan lengan robot beserta

programnya dengan menggunakan codevision AVR dan image processing menggunakan

software MATLAB. Sedangkan untuk hardware berupa webcam, conveyor, dan USB to

TTL converter menggunakan modul yang sudah jadi dan tersedia di pasaran. Penulis

menetapkan beberapa batasan masalah pada perancangan ini, yaitu sebagai berikut:

1) Masukan berupa empat buah benda yaitu kubus, balok, tabung, bola yang terbuat dari

styrofoam.

2) Benda disusun secara acak diatas conveyor dengan jarak antara masing-masing benda

yaitu +10 cm.

3) Posisi peletakan benda sesuai dengan batasan penulis yaitu maksimal toleransi sudut

kemiringan benda sebesar 10o.

4) Menggunakan webcam untuk mengidentifikasi bentuk benda yang terhubung dengan

softwareMATLAB melalui “Image Processing Toolbox”.

5) Menggunakan webcam logitech c270h yang diletakan 24 cm diatas benda.

6) Lengan robot dan gripper terbuat dari bahan akrilik dengan tebal 3mm yang di desain

dengan menggunakan google sketchup.

7) Lengan robot terdiri dari empat buah servo standar yang diprogram menggunakan

codevision AVR melalui ATmega32.

8) Komunikasi antara laptopdengan ATmega32 menggunakan komunikasi serial USART

yang dihubungkan dengan modul yang sudah tersedia di pasaran yaitu modul USB to

(25)

9) Benda berada 15cm didepan lengan robot dan tempat peletakan benda berada

disamping lengan robot. Terdapat empat buah tempat untuk meletakan benda yaitu

tempat untuk benda berbentuk kubus, tempat untuk benda berbentuk balok, tempat

untuk benda berbentuk tabung, dan tempat untuk benda berbentuk bola yang telah

ditetapkan tempatnya pada saat perancangan.

10) Keluaran berupa nama benda yang terdeteksi pada LCD 16x2.

11) Terdapat tampilan GUI pada MATLAB sebagai user interface agar dapat melihat data

benda yang akan dikenali, dan jumlah benda yang terdeteksi.

1.4.

Metodologi Penelitian

Langkah-langkah yang dilakukan dalam pengerjaan tugas akhir ini yaitu :

1) Pengumpulan bahan-bahan referensi berupa buku dan jurnal ilmiah yang membahas

mengenai image processing dengan MATLAB, lengan robot, pemrograman dengan

code vision AVR, ATmega32, serta buku-buku pendukung lainnya.

2) Perancangan hardware dan software

Tahap ini merupakan perancangan desain lengan robot beserta skema-skema

rangkaian pendukung dan pembuatan flowchart untuk memprogram Atmega32 dan

MATLAB.

3) Pembuatan hardware dan software. Tahapan ini berisi tentang pembuatan alat sesuai

dengan desain lengan robot yang telah dirancang beserta program-program yang

mengacu pada flowchart yang telah dibuat pada perancangan.

4) Proses pengambilan data. Teknik pengambilan data dilakukan dengan mencari data

pada masing-masing benda, melihat tanggapan sistem dalam mendeteksi benda, sudut

motor servo pada lengan robot, dan keakuratan lengan robot saat memisahkan benda.

5) Analisa dan penyimpulan hasil percobaan. Analisa dan penyimpulan hasil percobaan

dapat dilakukan dengan melihat persentase error alat saat mendeteksi benda, dan

(26)

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

BAB III : PERANCANGAN PENELITIAN

Bab ini berisi penjelasan alur perancangan lengan robot serta flow chart program

pendukung.

BAB IV : HASIL PENGAMATAN DAN PEMBAHASAN

Bab ini berisi pengamatan dan pembahasan data yang diperoleh, berupa data

tingkat keberhasilan sistem mendeteksi benda, data motor servo dan tingkat keberhasilan

keseluruhan sistem lengan robot.

BAB V : KESIMPULAN DAN SARAN

Bab ini berisi ringkasan hasil penelitian yang telah dilakukan dan usulan yang

berupa gagasan-gagasan untuk perbaikan atau pengembangan terhadap penelitian yang

(27)

5

BAB II

DASAR TEORI

Pada bab ini akan dibahas mengenai landasan-landasan teori yang digunakan dalam

pembuatan tugas akhir “Aplikasi Pengenalan Objek Untuk Lengan Robot Pemisah Benda

Bedasarkan Bentuk Benda”.

2.1.

Lengan Robot

Lengan robot atau biasa disebut robot manipulator adalah gabungan dari beberapa

segmen dan joint yang secara umum dibagi menjadi tiga bagian yaitu arm, wrist, dan

gripper. Konfigurasi robot biasanya digunakan untuk mengklasifikasikan robot-robot

idustri. Konfigurasi robot mengarah pada bentuk geometri dari manipulator robot, yaitu

informasi hubungan dari setiap joint pada manipulator [1]. Sistem lengan robot memiliki

empat komponen dasar, yaitu: manipulator, end effector, aktuator, dan kontroler.

a.

Manipulator

Manipulator pada robot lengan memiliki tiga bagian, yaitu bagian dasar (base),

bagian lengan (arm), dan bagian pergelangan (wrist). Bagian-bagian manipulator pada

lengan robot dapat dilihat pada gambar 2.1.

Gambar 2.1. Manipulator Pada Lengan Robot

Bagian dasar (base) manipulator bisa secara paten terpasang pada dasar area kerja

ataupun terpasang pada rel. Bagian lengan (arm) berfungsi untuk memposisikan end-

(28)

effector, dan bagian pergelangan (wrist) berfungsi untuk mengatur orientasi dari end

effector. Bagian ujung pada robot lengan terpasang end effector atau yang sering disebut

dengan gripper yang berfungsi sebagai alat mencengkram pada lengan robot.

b.

End Effector

End effector dapat ditemukan hampir di semua aplikasi robot, walaupun

keberadaannya bukan merupakan komponen dasar dari sistem robot. End effector

berfungsi sebagai bagian terakhir yang menghubungkan antara manipulator dengan objek.

Sebagai contoh efektor dapat berupa peralatan las, penyemprot cat ataupun hanya berupa

pencekam objek[2].

Gambar 2.2. Contoh Gripper [2]

c.

Kontroler

Kontroler merupakan otak dari sistem robot sehingga keberadaannya sangat

penting. Kontroler menyimpan informasi yang berkaitan dengan data-data robot, dalam hal

ini data gerakan robot yang telah diprogram sebelumnya.

Kontroler berfungsi untuk mengontrol pergerakan dari manipulator. Kontroler

sendiri diatur oleh sebuah informasi atau program yang diisikan dengan menggunakan

bahasa pemrograman tertentu. Informasi tersebut kemudian disimpan didalam memori.

(29)

2.2.

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

Rumus :

τ = F r sin ϴ (2.1)

keterangan : τ = Torsi (N-m)

r = Jarak dari titik pangakal gaya sampai sumbu putar

F = Gaya (N), F = m x g ϴ = Derajat sumbu putar

2.3.

Motor Servo

Motor servo merupakan motor DC yang seudah dilengkapi dengan sistem kontrol

didalamnya. Pada aplikasinya, motor servo sering digunakan sebagai kontrol loop tertutup,

sehingga dapat menangani perubahan posisi secara tepat dan akurat [1].

Gambar 2.3. Model Fisik Motor Servo [5]

Bentuk fisik motor servo dapat dilihat pada gambar 2.3. sistem pengkabelan motor

servo terdiri dari tiga bagian, yaitu Vcc, Gnd, dan Kontrol (PWM). Penggunaan PWM

pada motor servo berbeda dengan penggunaan PWM pada motor DC. Pada motor servo,

pemberian nilai PWM akan membuat motor servo bergerak pada posisi tertentu lalu

(30)

Motor servo terdiri dari dua macam, yaitu motor servo standar dan motor servo

[image:30.595.92.498.176.402.2]

continuous. Motor servo standar yaitu motor servo yang hanya bergerak mulai dari 0o sampai dengan 180o, sedangkan motor servo continuous merupakan motor servo yang dapat berputar 360o sehingga memungkinka untuk bergerak rotasi seperti pada motor DC pada umumnya.

Gambar 2.4. Cara Pengontrolan Motor Servo [5]

Prinsip utama pengontrolan motor servo yaitu dengan memberikan nilai PWM pada

kontrolnya. Perubahan duty cycle akan menentukan perubahan posisi dari motor servo.

Motor servo memiliki frekuensi sebesar 50 Hz sehingga pulsa yang dihasilkan yaitu setiap

20 ms. Lebar pulsa akan menentukan posisi motor servo yang dikehendaki seperti contoh

pada gambar 2.4 yaitu jika ingin menggerakan servo pada sudut 180o, maka lebar pulsa yang diperlukan yaitu 1ms. Artinya yaitu dengan memberikan pulsa high selama 1ms dan

kemudian diberikan pulsa low selama 19ms[1].

2.4.

Mikrokontroler AVR ATmega32

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

(31)

2.4.1.

Arsitektur AVR ATmega32

Mikrokontroler ATmega32 memiliki arsitektur sebagai berikut :

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 32 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 Shynchronous Ashynchronous Receiver

Transmitter)

2.4.2.

Deskripsi Mikrokontroler ATmega32

Konfigurasi Pin Mikrokontroller ATmega32 dengan kemasan 40 pin DIP (dual

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

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

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

[image:31.595.94.501.105.424.2]

berikutnya diambil dari memori program [6].

(32)

Mikrokontroler ATmega32 memiliki konfigurasi Pin sebagai berikut:

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 (ADC) 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 pull-up (yang dipilih untuk beberapa bit). Pada rangkaian reset, waktu

pengosongan kapasitor dapat dihitung dengan persamaan 2.9 [7].

T = R x C (2.9)

2.4.3.

Organisasi Memori AVR ATmega32

Arsitektur AVR mempunyai dua ruang memori utama, yaitu ruang memori data

dan memori program. ATmega32 juga memiliki fitur EEPROM Memori untuk

penyimpanan data [6].

Memori Program

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

tidak akan hilang datanya meskipun catu daya dimatikan [7]. Dalam ATmega32 terdapat

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

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

(33)

Memori Data

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

untuk keperluan program. Memori data terbagi menjadi empat 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”. I/O register dan Aditional I/O register adalah

register yang difungsikan khusus untuk mengendalikan berbagai pheripheral dalam

mikrokontroler seperti pin, port, timer/counter [6].

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

[image:33.595.86.528.282.516.2]

dikerjakan.

Table 2.1. Hubungan PIN dan Interupsi [6]

Jenis interupt PIN pada ATmega32

INT0 PORTD.2

INT1 PORTD.3

INT2 PORTB.2

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

Masing-masing interupsi tersebut terhubung dengan pin ATmega32 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 [6].

2.4.5.

Timer/Counter

Timer/Counter pada mikrokontroler AVR dapat digunakan untuk melakukan

pencacahan waktu seperti pada jam digital maupun untuk menghasilkan sinyal PWM

(Pulse Width Modulation) yakni sinyal kotak dengan frekuensi dan duty cycle yang

nilainya bisa diatur. ATmega32 memiliki tiga unit Timer/Counter yaitu Timer/Counter 0 (8

(34)

TIMER/COUNTER 0

Fitur-fitur yang dimiliki:

1. Satu buah unit Compare Counter (Unit ini akan meng-count dan meng-compare)

2. Clear timer pada saat compare match (Auto reload)

3. Phase Correct PWM yang bebas glitch

4. Frequency generator

5. External event counter

6. Prescaler clock hingga 10 bit

7. Membangkitkan interupsi saat timer overflow dan atau compare match

Perhitungan overflow interrupt sebagai pembangkit PWM ditunjukan pada persamaan 2.2,

2.3, dan 2.4 berikut [6].

(2.2)

(2.3)

(2.4)

Keterangan :

f = frekuensi yang digunakan untuk eksekusi program

T = periode

N = prescaller yang digunakan

OCR = nilai cacahan pulsa

Pulse = lebar pulsa

Berikut merupakan mode-mode operasi timer [7]:

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

mengitung selang waktu.

(35)

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

perbandingan register TCNT0 dan OCR0 digunakan untuk membangkitkan sinyal

PWM yang dikeluarkan pada OC0 seperti ditunjukan Gambar 2.6.

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.

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

Gambar 2.7. Mode Fast PWM [6]

2.4.6.

Komunikasi Serial USART

Komunikasi data adalah perpindahan data antara dua atau lebih peranti, baik yang

berjauhan maupun yang berdekatan. Perpindahan data antara dua atau lebih peranti dapat

dilaksanakan secara paralel atau seri. Komunikasi seri dapat dibedakan menjadi dua

macam, yaitu komunikasi dara seri sinkron dan komunikasi data asinkron. Dikatakan

sinkron jika sisi pengirim dan sisi penerima ditabuh (clocked) oleh penabuh (clock) yang

sama, satu sumber penabuh, data dikirim beserta penabuh. Dikatakan asinkron jika sisi

pengirim dan sisi penerima ditabuh oleh penabuh yang terpisah dengan frekuensi yang

(36)

Pada proses inisialisasi ini setiap perangkat yang terhubung harus memiliki

baudrate yang sama. Beberapa fasilitas yang disediakan USART AVR adalah sebagai

berikut:

a) Operasi full duplex (mempunyai register receive dan transmit yang terpisah)

b) Mendukung kecepatan multiprosesor

c) Mode kecepatan berorde Mbps

d) Operasi asinkron atau sinkron

e) Operasi master atau slave clock sinkron

f) Dapat menghasilkan baud-rate (laju data) dengan resolusi tinggi

g) Modus komunikasi kecepatan ganda pada asinkron

Inisialisasi USART

Pada mikrokontroler AVR untuk mengaktifkan dan mengeset komunikasi USART

dilakukan dengan cara mengaktifkan register-register yang digunakan untuk komunikasi

USART. Register-register yang digunakan untuk komunikasi USART antara lain:

USART I/O Data Register (UDR)

UDR merupakan register 8 bit yang terdiri dari dua buah dengan alamat yang sama,

yang digunakan sebagai tempat untuk menyimpan data yang akan dikirimkan (TXB) atau

tempat data diterima (RXB) sebelum data tersebut dibaca [6].

Gambar 2.8. Register UDR [6]

USART Control and Status Register A (UCSRA)

(37)

Penjelasan bit penyusun UCSRA [6]:

a) RXC (USART Receive Complete)

Bit ini akan set ketika data yang masuk ke dalam UDR belum dibaca dan akan

berlogika nol ketika sudah dibaca. Flag ini dapat digunakan untuk membangkitkan

interupsi RX jika diaktifkan dan akan berlogika nol secara otomatis bersamaan dengan

eksekusi vektor interupsi yang bersangkutan.

b) TXC (USART Transmit Complete)

Bit ini akan set ketika data yang dikirim telah keluar. Flag ini akan membangkitkan

interupsi TX jika diaktifkan dan akan clear secara otomatis bersamaan dengan

eksekusi vektor interupsi yang bersangkutan.

c) UDRE (USART Data Register Empty)

Flag ini sebagai indikator isi UDR. Jika bernilai satu maka UDR dalam keadaan

kosong dan siap menerima data berikutnya, jika flag bernilai nol berarti sebaliknya.

d) FE (Frame Error)

Bit ini sebagai indikator ketika data yang diterima error, misalnya ketika stop bit

pertama data dibaca berlogika nol maka bit FE bernilai satu. Bit akan bernilai 0 ketika

stop bit data yang diterima berlogika nol.

e) DOR (Data OverRun)

Bit ini berfungsi untuk mendeteksi jika ada data yang tumpang tindih. Flag akan

bernilai satu ketika terjadi tumpang tindih data.

f) PE (Parity Error)

Bit yang menentukan apakah terjadi kesalahan paritas. Bit ini berfungsi jika ada

kesalahan paritas. Bit akan berlogika satu ketika terjadi bit parity error apabila bit

paritas digunakan.

g) U2X (Double the USART Transmission Speed)

Bit yang berfungsi untuk menggandakan laju data manjadi dua kalinya. Hanya

berlaku untuk modus asinkron, untuk mode sinkron bit ini diset nol.

h) MPCM (Multi Processor Communication Mode)

Bit untuk mengaktifkan modus multi prosesor, dimana ketika data yang diterima

(38)

USART Control and Status Register B (UCSRB)

Gambar 2.10. Register UCSRB [6]

Penjelasan bit penyusun UCSRB [6]:

a) RXCIE (RX Complete Interrupt Enable)

Bit pengatur aktivasi interupsi penerimaan data serial, akan berlogika satu jika

diaktifkan dan berlogika nol jika tidak diaktifkan.

b) TXCIE (TX Complete Interrupt Enable)

Bit pengatur aktivasi pengiriman data serial, akan berlogika satu jika diaktifkan dan

berlogika nol jika tidak diaktifkan.

c) UDRIE (USART Data Register Empty Interrupt Enable)

Bit ini berfungsi untuk mengaktifkan interupsi data register kosong, berlogika satu

jika diaktifkan dan sebaliknya.

d) RXEN (Receiver Enable)

Bit ini berfungsi untuk mengaktifkan pin RX saluran USART. Ketika pin

diaktifkan maka pin tersebut tidak dapat digunakan untuk fungsi pin I/O karena sudah

digunakan sebagai saluran penerima USART.

e) TXEN (Transmitter Enable)

Bit ini berfungsi untuk mengaktifkan pin TX saluran USART. Ketika pin diaktifkan

maka pin tersebut tidak dapat digunakan untuk fungsi pin I/O karena sudah digunakan

sebagai saluran pengirim USART.

f) UCSZ2 (Character Size)

Bit ini bersama dengan UCSZ1 dan UCSZ0 dalam register UCSRC digunakan

(39)

Tabel 2.2. Penentuan Ukuran Karakter [6]

UCSZ[2..0] Ukuran Karakter dalam bit

0 5

1 6

10 7

11 8

100-110 Tidak dipergunakan

111 9

g) RXB8 (Receive Data Bit 8)

Bit ini digunakan sebagai bit ke-8 ketika menggunakan format data 9-10 bit, dan bit

ini harus dibaca dahulu sebelum membaca UDR.

h) TXB8 (Transmit Data Bit 8)

Bit ini digunakan sebagai bit ke-8 ketika menggunakan format data 9-10 bit, dan bit

ini harus ditulis dahulu sebelum membaca UDR.

USART Control and Status Register C (UCSRC)

Gambar 2.11. Register UCSRC [6]

Penjelasan bit penyusun UCSRC [6]:

a) URSEL (Register Select) :

Bit ini berfungsi untuk memilih register UCSRC dengan UBBRH, dimana untuk

menulis atau membaca register UCSRC maka bit harus berlogika satu.

b) UMSEL (USART Mode Select)

Bit pemilih mode komunikasi serial antara sinkron dan asinkron.

c) UPM[1…0] (Parity Mode)

Bit ini berfungsi untuk memilih mode paritas bit yang akan digunakan. Transmittter

USART akan membuat paritas yang akan digunakan secara otomatis.

d) USBS (Stop Bit Select)

(40)

e) UCSZ1 dan UCSZ0

Merupakan bit pengatur jumlah karakter serial Bit yang berfungsi untuk memilih

lebar data yang digunakan dikombinasikan dengan bit UCSZ2 dalam register UCSRB.

f) UCPOL (Clock Parity)

Bit yang berguna hanya untuk modus sinkron. Bit in berhubungan dengan

perubahan data keluaran dan sampel masukkan, dan clock sinkron (XCK).

2.5.

LCD 16x2

LCD merupakan salah satu perangkat penampil yang sekarang ini banyak

digunakan. Kontruksi LCD yaitu memanfaatkan silikon atau galium dalam bentuk kristal

cair sebagai pemendar cahaya. Kelebihan LCD 16x2 yaitu [8] :

1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk

membuat program tampilan.

2. Mudah dihubungkan dengan port I/O karena hanya menggunakan delapan bit data

dan tiga bit kontrol.

3. Ukuran modul yang proporsional.

4. Daya yang digunaka relatif kecil.

Operasi dasar pada LCD 16x2 terdiri dari empat, yaitu instruksi mengakses proses

internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan instruksi membaca

data [8]. Operasi dasar LCD 16x2 dapat dilihat pada tabel 2.3.

(41)

Tabel 2.3. Operasi Dasar LCD 16x2 [8]

RS R/W Operasi

0 0 Input instruksi ke LCD

0 1 Membaca status flag (DB7) dan alamat counter (DB0-DB6)

1 0 Menulis data

1 1 Membaca data

Tabel 2.4. Konfigurasi Pin LCD 16x2 [8] Pin No. Keterangan Konfigurasi hubung

1 GND Ground

2 VCC Tegangan +5Vdc

3 VEE Ground

4 RS Kendali RS

5 RW Ground

6 E Kendali E/Enable

7 D0 Bit 0

8 D1 Bit 1

9 D2 Bit 2

10 D3 Bit 3

11 D4 Bit 4

12 D5 Bit 5

13 D6 Bit 6

14 D7 Bit 7

15 A Anoda (+5Vdc)

(42)

Tabel 2.5. Konfigurasi Setting LCD 16x2 [8] Pin Bilangan biner Keterangan

RS

0 Inisialisasi

1 Data

RW

0 Tulis LCD/W (Write)

1 Baca LCD/R (Read)

E

0 Pintu data terbuka

1 Pintu data tertutup

2.6.

Regulator IC 78xx dan Transistor Penguat Arus

Pengatur tegangan (voltage regulator) berfungsi menyediakan suatu tegangan

keluaran dc tetap yang tidak dipengaruhi oleh perubahan tegangan masukan. Salah satu

tipe regulator tegangan tetap adalah 78xx. Regulator tegangan tipe 78xx adalah salah satu

regulator tegangan tetap dengan tiga terminal, yaitu terminal Vin, GND dan Vout.

Regulator tegangan 78xx dirancang sebagai regulator tegangan tetap, meskipun demikian

keluaran dari regulator ini dapat diatur tegangan dan arusnya melalui tambahan komponen

eksternal. Spesifikasi ic regulator seri 78xx dapat dilihat pada tabel 2.6.

Tabel 2.6. Karakteristik Regulator Tegangan ic 78xx [9]

Type VOUT (Volt)

VIN (Volt)

Min Maks

7805 5 7,3 20

7806 6 8,3 21

7808 8 10,5 23

7810 10 12,5 25

7812 12 14,6 27

7815 15 17,7 30

7818 18 21 33

(43)

Gambar 2.13. Rangkaian Umum Regulator 78xx [9]

Nilai komponen c1 dan c2 difungsikan sebagai filter capasitor yang bertujuan untuk

menghilangkan tegangan ripple agar tegangan keluaran menjadi lebih stabil. Untuk

mendapatkan nilai capasitor yang sesuai, dapat mengacu pada persamaan 2.5 dan 2.6 [9].

(2.5)

(2.6)

Komponen eksternal yang digunakan yaitu transistor 2N3055 karena kemampuan

arus maksimal adalah 15 A [10]. Untuk gambar rangkaian lengkap dengan ic regulator

dapat ditunjukan gambar 2.14.

Gambar 2.14. Rangkaian Catu Daya Dengan Penguat [10]

Dari gambar 2.14, maka diperleh persamaan-persamaan sebagai berikut [10] :

VB = Vreg + VD (2.7)

Tegangan keluaran rangkaian menjadi,

(44)

Jika VD VBE, maka

Vo = Vreg (2.9)

Tegangan diantara kolektor dan emittor transistor 2N3055 adalah,

VCE = VIN– VR1 (2.10)

Disipasi daya transistor NPN 2N3055 adalah,

PD = VCE x IC (2.11)

Untuk nilai penguatan arus diperoleh dengan persamaan dibawah ini [9] :

Ic = β IB (2.12)

Ie = (β+1) IB (2.13)

2.7.

Photodioda

Photodioda adalah dioda yang bekerja berdasarkan intensitas cahaya, jika

photodioda terkena cahaya maka photodioda bekerja seperti dioda pada umumnya, tetapi

jika tidak mendapat cahaya maka photodioda akan berperan seperti resistor dengan nilai

tahanan yang besar sehingga arus listrik tidak dapat mengalir.

Photodioda merupakan sensor cahaya semikonduktor yang dapat mengubah

besaran cahaya menjadi besaran listrik. Photodioda merupakan sebuah dioda dengan

sambungan p-n yang dipengaruhi cahaya dalam kerjanya. Cahaya yang dapat dideteksi

oleh photodioda ini mulai dari cahaya infra merah, cahaya tampak, ultra ungu sampai

dengan sinar-X.

Karena photodioda terbuat dari semikonduktor p-n junction maka cahaya yang

diserap oleh photodioda akan mengakibatkan terjadinya pergeseran foton yang akan

menghasilkan pasangan electron-hole dikedua sisi dari sambungan. Ketika

elektron-elektron yang dihasilkan itu masuk ke pita konduksi maka elektron-elektron-elektron-elektron itu akan

mengalir ke arah positif sumber tegangan sedangkan hole yang dihasilkan mengalir ke arah

negatif sumber tegangan sehingga arus akan mengalir di dalam rangkaian. Besarnya

pasangan elektron ataupun hole yang dihasilkan tergantung dari besarnya intensitas cahaya

yang diserap oleh photodioda [9].

Photodioda digunakan sebagai penangkap gelombang cahaya yang dipancarkan

oleh infrared. Besarnya tegangan atau arus listrik yang dihasilkan oleh photodioda

(45)
[image:45.595.95.500.71.441.2]

Gambar 2.15. Simbol dan Bentuk Photodioda

Gambar 2.16. Respon Relatif Spektral Untuk Si, Ge, dan Selenium Dibandingkan Dengan

Mata Manusia.[9]

(46)

Grafik pada gambar 2.17 menunjukan bahwa arus maksimal pada sensor

photodioda adalah sebesar 800 µA, sehingga untuk penentuan nilai hambatan agar arus

sensor photodioda tidak terlalu besar yaitu [9]:

(2.14)

Sehingga nilai hambatan untuk sensor photodioda dengan asumsi bahwa Vcc = 5 Volt

dapat dilihat pada tabel 2.7.

Tabel 2.7. Hubungan Arus Dengan Hambatan

ARUS (µA) HAMBATAN KΩ 200 25 400 12,5 600 8,33 800 6,25

Rangkaian umum sensor photodioda dapat ditunjukan pada gambar 2.18.

Gambar 2.18. Rangkaian Sensor Photodioda

(47)

2.8.

Infrared

Infrared merupakan suatu komponen elektronika yang merupakan sumber cahaya

dengan panjang gelombang 750nm-1000nm dan arus maksimal sebesar 100 mA [8].

Aplikasi infrared biasa dijumpai pada modul sensor yang berhubungan dengan cahay

seperti photodioda dan photo transistor. Menurut gambar 2.19, infrared merupakan sumber

cahaya yang paling baik untuk sumber sensor cahaya. Penentuan nilai hambatan untuk

infrared dengan asumsi Vcc = 5 Volt yaitu :

sehingga, R =

= 50 Ω

Agar aman, maka digunakan resistor sebesar 100 Ω yang bertujuan untuk membuat

infra red tidak berlebihan arus.

2.9.

Transistor Sebagai Saklar

Keluaran dari op-amp memiliki arus yang kecil, oleh karena itu biasanya

dipergunakan suatu penguat untuk menguatkan arus keluaran dengan menggunakan

transistor atau ic penguat. Contoh rangkaia dapat dilihat pada gambar 2.20 [11].

Gambar 2.20. Contoh Rangkaian Transistor Sebagai Saklar [11]

Transistor dapat digunakan sebagai saklar elektronika dengan membuat transistor

tersebut berada dalam kondisi cut-off (saklar terbuka, arus tidak mengalir) atau saturasi

(48)

kita dapat menghitung nilai masing-masing komponen agar transistor tersebut dapat

men-drive komponen lain yang membutuhkan arus yang besar [11].

IB(saturasi) = IC(saturasi)/βDC (2.15) Untuk memastikan bahwa transistor sudah saturasi, diperlukan setidaknya arus overdrive 4

sampai 10 kali dari IB(saturasi), sehingga [11]:

IB = (di isi angka 4 sampai 10) x IB(saturasi) (2.16)

Dengan diperolehnya IB, maka hambatan basis dapat dihitung dengan persamaan [11]:

RB = (Vin-VBE)/IB (2.17)

2.10.

Relay

Relai merupakan suatu komponen elektronika yang berfungsi untuk

menghubungkan atau memutuskan aliran arus listrik yang dikontrol dengan memberikan

tegangan dan arus tertentu pada koilnya. Ada dua macam relay berdasarkan tegangan

untuk menggerakan koilnya yaitu AC dan DC [8].

Pada dasarnya relay adalah sebuah kumparan yang dialiri arus listrik, sehingga

kumparan mempunyai sifat seperti magnet. Magnet sementara tersebut digunakan untuk

menggerakan suatu sistem saklar yang terbuat dari logam sehingga pada saat relay dialiri

arus listrik maka kumparan akan terjadi kemagnetan dan menarik logam tersebut. Saat arus

listrik diputus, maka logam akan kembali pada posisi semula [8].

Gambar 2.21. Bentuk Fisik Relay [8]

2.11.

Webcam

Web camera atau biasa disingkat webcam adalah kamera video digital kecil yang

dihubungkan ke komputer melalui port USB atau serial. Fungsi webcam yang paling

populer saat ini yaitu untuk melakukan video conference melalui internet. Dalam

perkembangan selanjutnya, webcam tidak hanya difungsikan sebagai video conference

tetapi juga untuk home monitoring atau memantau rumah selama 24 jam [12]. Contoh

(49)

Gambar 2.22. Contoh Webcam [13]

2.12.

Benda Tiga Dimensi

Benda 3 dimensi merupakan benda yang memiliki ruang atau volume sehingga

benda akan tampak lebih nyata. Benda 3 dimensi memiliki ukuran panjang, lebar, dan

tinggi. Contoh benda 3 dimensi dapat dilihat pada gambar 2.23.

Gambar 2.23. Contoh Benda Tiga Dimensi [14]

2.13.

Pengolahan Citra Digital

Pengolahan citra atau Image Processing adalah suatu sistem dimana proses

dilakukan dengan masukan (input) berupa citra (image) dan hasilnya (output) juga berupa

citra (image). Pada awalnya pengolahan citra ini dilakukan untuk memperbaiki kualitas

citra, namun dengan berkembangnya dunia komputasi yang ditandai dengan semakin

(50)

komputer yang memungkinkan manusia dapat mengambil informasi dari suatu citra, maka

image processing tidak dapat dilepaskan dengan bidang computer vision [2].

Sebuah citra dapat didefinisikan sebagai fungsi dua dimensi f(x,y), dimana x dan y

adalah koordinat spasial dan amplitude dari f. Citra digital terdiri dari sejumlah elemen

tertentu, setiap elemen mempunyai lokasi dan nilai tertentu. Elemen–elemen ini disebut

picture element, image element, pels dan pixels. Sumber noise pada citra digital bisa terjadi

sejak pengambilan atau transmisi citra. Kinerja dari sensor citra atau kamera dipengaruhi

oleh banyak faktor seperti kondisi lingkungan selama pengambilan citra dengan kamera

webcam, level pencahayaan dan suhu sensor adalah faktor utama yang mempengaruhi

tingkat noise pada citra yang dihasilkan [15].

Gambar 2.24. Contoh Koordinat Citra Digital

2.14.

Pemrosesan Citra

2.14.1.

Citra Grayscale

Proses awal yang banyak dilakukan dalam image processing adalah mengubah citra

berwarna (citra RGB) menjadi citra grayscale, hal ini bertujuan untuk menyederhanakan

model citra tersebut karena citra berwarna terdiri dari tiga layer matrik yaitu Red- layer,

Green-layer dan Blue-layer. Sehingga untuk melakukan proses-proses selanjutnya tetap

harus memperhatikan tiga layer di tersebut. Bila setiap proses perhitungan dilakukan

menggunakan tiga layer, berarti dilakukan tiga perhitungan yang sama, sehingga konsep

itu diubah dengan mengubah tiga layer di atas menjadi satu layer matrik grayscale dan

hasilnya adalah citra grayscale. Dalam citra ini tidak ada lagi warna, yang ada adalah

(51)

Citra grayscale merupakan citra digital yang hanya memiliki suatu nilai kanal pada

setiap piksel. Warna yang dimiliki adalah keabuan, hitam dan putih. Citra hitam putih

mempunyai nilai kuantisasi derajat keabuan sampai tingkatan ke 256 artinya mempunyai

skala abu dari 0 sampai 255 atau selang [0 255]. Citra ini membutuhkan 1 byte (8 bit)

untuk representasi setiap pikselnya (256 =28) [3]. Gambar 2.25 menunjukkan contoh citra

skala keabuan [15].

Gambar 2.25. Citra Skala Keabuan [16]

2.14.2.

Cropping

Cropping citra merupakan salah satu langkah dalam pengolahan citra yang

dilakukan untuk memotong satu bagian dari citra tertentu untuk memperoleh bagian yang

diinginkan untuk diolah. Hal ini dilakukan untuk mendapatkan data yang tepat sehingga

memudahkan dalam proses pengolahan data.

2.14.3.

Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel

yaitu hitam dan putih. Citra biner juga bisa disebut sebagai citra B&W (black and white)

atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap piksel dari citra

biner. [15]

Citra biner sering kali muncul sebagai hasil dari proses pengolahan seperti

segmentasi, pengambangan, morfologi, ataupun dithering. Contoh citra biner dapat dilihat

pada gambar 2.26.

(52)

2.14.4.

Resizing

Rezising citra adalah mengubah besarnya ukuran citra dalam piksel. Tampilan citra

tidak ada yang berubah tetapi hanya ukuran pixel dan matriksnya yang dirubah. Ukuan

resizing menentukan kualitas gambar yang akan diproses.

2.15.

Metode Pengenalan Benda

Untuk dapat mengenali suatu citra atau gambar, maka diperlukan suatu metode

yang digunakan untuk melihat perbedaan data atau nilai yang dimiliki oleh masing-masing

citra atau gambar yang akan dikenali. Metode yang digunakan yaitu dengan melihat data

nilai citra biner dari masing-masing bentuk benda.

Langkah untuk mengenalinya yaitu dengan terlebih dahulu mengamati dan melihat

nilai citra biner dari masing-masing citra yang akan dikenali. Setelah mendapatkan data

yang diinginkan, maka dibuat sebuat range data yang merepresentasikan citra dari

masing-masing benda yang akan dikenali. Gambar 2.27 akan menjelaskan penerapan citra biner

saat pengenalan citra digital.

Gambar 2.27. Aplikasi Citra Biner

Dari gambar 2.27 dapat diperhatikan bahwa huruf “Y” memiliki jumlah angka 0

sebanyak 10 buah.

Gambar

Gambar 2.4. Cara Pengontrolan Motor Servo [5]
Gambar 2.5. Konfigurasi Pin Mikrokontroler ATmega32 [6]
Table 2.1. Hubungan PIN dan Interupsi [6] PIN pada ATmega32
Gambar 2.15. Simbol dan Bentuk Photodioda
+7

Referensi

Dokumen terkait

Peraturan Menteri Agama Nomor 68 Tahun 2015 tentang Pengangkatan dan Pemberhentian Rektor dan Ketua pada Perguruan Tinggi Keagamaan yang diselenggarakan oleh Pemerintah (Berita

PT.EMAX Fortune International yang lebih dikenal dengan EMAX ini merupakan APR (Apple Premium Resseler) yang ada di Indonesia, store EMAX juga tersebar dibeberapa

A k!rp!taljai magyarok eset$ben is a form!lis nyelvhaszn!lati sz#nterek azok, amelyek kapcs!n a k'l- cs'nszavak nagyar!ny( haszn!lat!t figyelhetj"k meg, ugyanis ezek

Penelitian ini bertujuan untuk mengetahui strategi penyingkapan diri ( self disclosure ) ibu tunggal dengan remaja perempuan di Kelurahan Mangga Kecamatan Medan Tuntungan Kota

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

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

Jika tahap harga di Malaysia meningkat secara relatifhya berbandingkan dengan negara asing lain, apakah kesan yang mungkin terjadi keatas keluk penawaran agregat dan

Hasil nilai pengujian didapatkan nilai sebesar 0,05 dengan nilai p value sebesar 0,975, karena p ≥ 0,05, maka disimpulkan bahwa tidak ada hubungan antara tingkat