aplikasi computer vision pada lengan robot ...nya, sehingga saya dapat menyelesaikan tugas akhir ini...

226
TUGAS AKHIR APLIKASI COMPUTER VISION PADA LENGAN ROBOT PEMINDAH BENDA BERDASARKAN OBJEK DAN POSISI BENDA Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Jurusan Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma disusun oleh : YOSHUA ADHI PERKASA NIM : 155114032 JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERITAS SANATA DHARMA YOGYAKARTA 2019 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Upload: others

Post on 30-Jan-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

  • TUGAS AKHIR

    APLIKASI COMPUTER VISION PADA LENGAN

    ROBOT PEMINDAH BENDA BERDASARKAN

    OBJEK DAN POSISI BENDA

    Diajukan untuk memenuhi salah satu syarat

    memperoleh gelar Sarjana Teknik pada

    Program Studi Teknik Elektro

    Jurusan Teknik Elektro

    Fakultas Sains dan Teknologi Universitas Sanata Dharma

    disusun oleh :

    YOSHUA ADHI PERKASA

    NIM : 155114032

    JURUSAN TEKNIK ELEKTRO

    FAKULTAS SAINS DAN TEKNOLOGI

    UNIVERITAS SANATA DHARMA

    YOGYAKARTA

    2019

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • i

    TUGAS AKHIR

    APLIKASI COMPUTER VISION PADA LENGAN

    ROBOT PEMINDAH BENDA BERDASARKAN

    OBJEK DAN POSISI BENDA

    Diajukan untuk memenuhi salah satu syarat

    memperoleh gelar Sarjana Teknik pada

    Program Studi Teknik Elektro

    Jurusan Teknik Elektro

    Fakultas Sains dan Teknologi Universitas Sanata Dharma

    disusun oleh :

    YOSHUA ADHI PERKASA

    NIM : 155114032

    JURUSAN TEKNIK ELEKTRO

    FAKULTAS SAINS DAN TEKNOLOGI

    UNIVERITAS SANATA DHARMA

    YOGYAKARTA

    2019

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • ii

    FINAL PROJECT

    THE APPLICATION OF COMPUTER VISION ON

    MOVING ROBOTIC ARMS BASED ON THE

    OBJECT AND ITS POSITION

    In a partial fulfilment of the requirements

    for the degree of Sarjana Teknik

    Department of Electrical Engineering

    Faculty of Science and Technology, Sanata Dharma University

    YOSHUA ADHI PERKASA

    NIM : 155114032

    JURUSAN TEKNIK ELEKTRO

    FAKULTAS SAINS DAN TEKNOLOGI

    UNIVERITAS SANATA DHARMA

    YOGYAKARTA

    2019

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • iii

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • iv

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • v

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • vi

    MOTTO :

    “Serahkanlah perbuatanmu kepada TUHAN,

    maka terlaksanalah segala rencanamu.”

    Amsal 16:3

    Skripsi ini kupersembahkan untuk ……

    Tuhan Yesus Kristus Penolong setiaku

    Bapak , Ibu serta kakak dan adik tercinta

    Dosen-dosen yang selalu membimbingku

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • vii

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • viii

    INTISARI

    Peran teknologi telah banyak digunakan diberbagai kehidupan manusia saat ini.

    Penggunaan robot khusunya lengan robot dapat membantu dalam memindahkan benda dari

    satu tempat ke tempat yang lain. Teknologi computer vision dapat digunakan untuk

    membantu otomatisasi pergerakan lengan robot.

    Dalam penelitian ini, peneliti menggunakan lengan robot yang sudah dilengkapi

    dengan teknologi computer vision yang memanfaatkan webcam untuk memindahkan benda

    satu ke tempat yang lain. Untuk itu pertama kali, webcam menangkap citra objek berupa

    sejumlah wadah kubus dan tabung. Citra hasil tangkapan ini, kemudian di proses

    menggunakan software MATLAB untuk mengidentifikasi jenis dan posisi objek. Hasil

    identifikasi kemudian dikirimkan menggunakan komunikasi serial USB-TTL ke

    mikrokontroler ATmega32. Setelah itu berdasarkan perintah dari mikrokontroler lengan

    robot akan mengisi bola ke sejumlah wadah kubus dan tabung.

    Hasil implementasi sistem lengan robot ini mempunyai keberhasilan 100%. Sebagai

    catatan, wadah tabung dan kubus harus diletakkan di tengah area peletakan wadah.

    Kata kunci: lengan robot, computer vision, webcam, MATLAB, ATmega32, USB-TTL.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • ix

    ABSTRACT

    Technology has been used in every part of human’s life. Robotic tools such as robotic

    arms can be used for transporting an object from one place to another. Computer Vision

    Technology can be used to optimize the automatic move of robotic arms.

    In this research, researcher used robotic arms with computer vision technology as

    well as the use of webcam to transport an object from one place to another. The first step

    was using webcam to record the object’s images which are a couple of cubes and tubes. The

    images then are processed using MATLAB software to identify the kind of objects as well

    as their position. The result then is sent using USB-TTL to Atmega32 micro-controller.

    Furthermore, the robotic arms would add balls to the cubes and tubes.

    The result of the implementation of robotic arms are working properly, reaching out

    to 100% possibility, if the cubes and tubes are placed in the center.

    Keywords: robotic arms, computer vision, webcam, MATLAB, ATmega32, USB-TTL.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • x

    KATA PENGANTAR

    Puji syukur penulis ucapkan kepada Tuhan Yesus Kristus atas berkat dan bimbingan-

    Nya, sehingga saya dapat menyelesaikan tugas akhir ini yang berjudul “Aplikasi Computer

    vision Pada Lengan Robot Pemindah Benda Berdasarkan Bentuk dan Posisi Benda”.

    Penelitian yang berupa tugas akhir ini merupakan salah satu untuk syarat bagi

    mahasiswa Jurusan Teknik Elektro untuk memperoleh gelar Sarjana Teknik di Universitas

    Sanata Dharma Yogyakarta. Penelitian ini dapat diselesaikan dengan baik atas bantuan,

    gagasan dan dukungan dari berbagai pihak. Oleh karena itu, peneliti ingin mengucapkan

    terima kasih kepada :

    1. Kedua orang tua tercinta, Bapak Basuki Sapto Sulasno dan Ibu Theresia Mulyati

    atas doa, kasih sayang, dukungan serta motivasi.

    2. Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D., selaku Dekan Fakultas Sains dan

    Teknologi Universitas Sanata Dharma Yogyakarta.

    3. Dr. Linggo Sumarno., selaku Dosen Pembimbing tugas akhir yang telah

    membimbing dan memberikan arahan dalam penyusunan tugas akhir ini.

    4. Bapak Petrus Setyo Prabowo, S.T.,M.T., dan Bapak Djoko Sumarno, S.T.,M.T.,

    selaku dosen penguji yang telah bersedia memberi kritik, saran dan bimbingan

    dalam memperbaiki tugas akhir ini.

    5. Petrus Setyo Prabowo, S.T., M.T, dan Ir Tjendro, selaku kepala program studi

    teknik elektro dan wakil kepala program studi teknik elektro.

    6. Desi Tri Prasetya A.Md., sebagai teman, sahabat dan kekasih yang selama ini

    telah memberikan doa dan dukungan dalam menyelesaikan tugas akhir ini.

    7. Kakak dan adik tersayang yang terus mendukung dan memberi semangat penulis.

    8. Albertus Adit .T, R. Wenang S.N, dan Openyear S, teman seperjuangan yang

    telah memberikan tenaga, pikiran, dan dukungan demi kelancaran dan

    terselesaikanya tugas akhir ini.

    9. Saudara-saudara yang terus memberikan semangat dan dukungan kepada

    penulis.

    10. Segenap dosen dan laboran Teknik Elektro Universitas Sanata Dharma

    Yogyakarta.

    11. Segenap karyawan sekretariat Fakultas Sains dan Teknologi.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xi

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xii

    DAFTAR ISI

    HALAMAN JUDUL (BAHASA INDONESIA) ......................................................... i

    HALAMAN JUDUL (BAHASA INGGRIS) .............................................................. ii

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

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

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

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

    HALAMAN PERNYATAAN PERSETUJUAM PUBLIKASI KARYA

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

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

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

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

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

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

    DAFTAR GAMBAR .................................................................................................... xix

    BAB I: PENDAHULUAN

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

    1.2. Batasan Masalah ...................................................................................................... 3

    1.3. Metodelogi Penelitian .............................................................................................. 5

    BAB II: DASAR TEORI

    2.1. Matlab ................................................................................................................ 6

    2.2. Computer Vision ................................................................................................ 6

    2.2.1. Pengolahan Citra Digital ............................................................................ 7

    2.2.2. Pemrosesan Citra ........................................................................................ 8

    2.2.2.1. Citra Grayscale .............................................................................. 8

    2.2.2.2. Citra Biner ....................................................................................... 8

    2.2.2.3. Konversi Citra Graschale ke Citra Biner ........................................ 9

    2.2.2.4. Noise Filtering ................................................................................. 10

    2.2.2.5. Labeling Objek ................................................................................ 11

    2.2.2.6. Segmentasi Citra .............................................................................. 12

    2.2.3. Pengenalan Ukuran dan Posisi Benda ........................................................ 12

    2.2.3.1. Pengenalan Ukuran .......................................................................... 12

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xiii

    2.2.3.1.1. Area ................................................................................. 12

    2.2.3.1.2. Perimeter ......................................................................... 13

    2.2.3.1.3. Thinnessratio ................................................................... 13

    2.2.3.2. Pengenalan Posisi ............................................................................ 14

    2.2.3.2.1. Centroid .......................................................................... 14

    2.2.4. Metode Pengenalan Benda ......................................................................... 15

    2.2.4.1. Proses Capture Objek ................................................................... 15

    2.2.4.2. Citra Grayscale ke Citra Biner ..................................................... 16

    2.2.4.3. Proses Labeling ............................................................................ 16

    2.2.4.4. Proses Segmentasi Citra ............................................................... 17

    2.2.4.5. Proses Mencari Luas Objek .......................................................... 18

    2.2.4.6. Proses Mencari Keliling Objek ..................................................... 19

    2.2.4.7. Proses Mencari Thinnessratio Objek ............................................ 19

    2.2.4.8. Proses Mencari Posisi Objek ........................................................ 20

    2.3. Lengan Robot .................................................................................................... 21

    2.3.1. Manipulator ............................................................................................ 21

    2.3.2. End effector ............................................................................................. 22

    2.3.3. Kontroler ................................................................................................. 22

    2.4. Torsi/Momen Gaya ............................................................................................ 22

    2.5. Inverse Kinematics ............................................................................................ 25

    2.6. Aktuator Robot .................................................................................................. 27

    2.6.1. Motor Servo ............................................................................................ 27

    2.6.2. PWM (Pulse Width Modulation) ............................................................ 28

    2.7. Mikrokontroller AVR ATmega32 ..................................................................... 28

    2.7.1. Diskripsi Mikrokontroler AVR ATmega32 ............................................ 29

    2.7.2. Timer/Counter ......................................................................................... 30

    2.7.2.1. TIMER/COUNTER 0 ................................................................. 31

    2.7.3. Komunikasi Serial USART ..................................................................... 33

    2.7.3.1. Inisialisasi USART .................................................................. 33

    2.7.3.2. USART I/O Data Register (UDR) ........................................... 34

    2.7.3.3. USART Control and Status Register A (UCSRA) .................. 34

    2.7.3.4. USART Control and Status Register B (UCSRB) ................... 35

    2.7.3.5. USART Control and Status Register C (UCSRC) ................... 37

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xiv

    2.8. Adaptor / Power Supply .................................................................................... 38

    2.9. Webcam ............................................................................................................ 38

    2.10. Minimum Sistem ATmega32 .......................................................................... 39

    BAB III: PERANCANGAN PENELITIAN

    3.1. Proses Kerja Sistem ........................................................................................... 40

    3.2. Perancangan Mekanik Lengan Robot ................................................................ 41

    3.2.1. Robot Arm Assembly .............................................................................. 44

    3.2.2. Desain Keseluruhan Sistem ................................................................... 44

    3.2.3. Posisi dan Penempatan Motor Servo ...................................................... 45

    3.2.3. Metode Pergerakan Lengan Robot .......................................................... 45

    3.2.4. Area Peletakan Benda ............................................................................. 46

    3.2.5. Proses Penentuan Sudut Pergerakan Motor Servo .................................. 48

    3.3. Perancangan Perangkat Keras (hardware) ........................................................ 49

    3.3.1. Wiring keseluruhan sitem ........................................................................ 49

    3.3.2. Perhitungan Torsi Motor Servo ............................................................... 51

    3.3.4. Motor Servo ............................................................................................ 56

    3.3.5. Webcam ................................................................................................... 59

    3.3.6. Objek dan Benda ..................................................................................... 60

    3.4. Persancangan Perangkat Lunak (software) ....................................................... 61

    3.4.1. Diagram Alir Utama ................................................................................ 61

    3.4.2. Flowchart Akusisi Citra .......................................................................... 63

    3.4.3. Flowchart Image Preprocessing ............................................................. 63

    3.4.4. Labeling dan Segmentasi ........................................................................ 65

    3.4.5. Flowchart Program Pengenalan Bentuk Benda Pada MATLAB ............ 66

    3.4.6. Flowchart Program Pengenalan Posisi Benda Pada Matlab ................... 67

    3.4.7. Flowcart Komunikasi Data Matlab Dengan Mikrokontroler .................. 68

    3.4.8. Flowchart Program Lengan Robot .......................................................... 70

    3.4.4. Perancangan GUI MATLAB .................................................................. 73

    BAB IV: HASIL DAN PEMBAHASAN

    4.1. Perangkat Keras (Hardware) Lengan Robot ................................................... 75

    4.1.1. Bentuk Fisik dan Sistem Jerja Lengan Robot ........................................ 75

    4.1.2. Wiring Motor Servo Pada Minimum Sistem ATmega32

    Beserta LCD 16x2 ................................................................................. 77

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xv

    4.1.3. Webcam dan Area Peletakan Objek ....................................................... 77

    4.1.4. Objek 3 Dimensi dan Kotak Peletakan Benda ....................................... 79

    4.1.5. Mekanisme Kerja Lengan Robot ........................................................... 82

    4.2. Hasil Pengujian dan Pembahasan .................................................................... 83

    4.2.1. Menentukan Sudut Pergerakan Lengan Robot ........................................ 83

    4.2.1.1 Metode Analisis Gambar dengan Ukuran Sebenarnya ............... 83

    4.2.1.2. Metode Hitung dengan Invers Kinematics ................................ 87

    4.3. Analisa dan Pembahasan Perangkat Lunak (software) .................................... 94

    4.3.1. Aplikasi MATLAB ................................................................................. 94

    4.3.1.1. Tampilan GUI Pada Sistem ....................................................... 94

    4.3.1.2. Inisialisai Komunikasi Serial ..................................................... 95

    4.3.1.3. Inisialisasi webcam .................................................................... 96

    4.3.1.4. Proses Akusisi Citra .................................................................. 97

    4.3.1.5. Proses Pengolahan Citra ............................................................ 97

    4.3.1.6. Proses Labeling dan Segmentasi ............................................... 98

    4.3.1.7. Proses Pengenalan Posisi dan BentukObjek .............................. 98

    4.3.1.8. Proses Penggolongan Posisi dan Objek ..................................... 99

    4.3.1.9. Proses Pengiriman Data dari Matlab ke Mikrokontroler ........... 101

    4.3.2. Aplikasi Code Vision AVR ...................................................................... 104

    4.3.2.1. Inisialisasi Komunikasi Serial ................................................... 104

    4.3.2.2. Inisialisasi Timer 0 .................................................................... 105

    4.3.2.3. Program Menerima Data Serial dari Matlab .............................. 106

    4.3.2.4. Inisialisasi Port Motor Servo ..................................................... 107

    4.3.2.5. Pengendali Motor Servo ............................................................ 107

    4.3.2.6. Program Utama .......................................................................... 108

    4.3.2.7. Program Fungsi Pergerakan ...................................................... 109

    4.4. Hasil Pengujian dan Analisa Pengambilan Data .............................................. 111

    4.4.1. Nilai OCR Untuk Menentukan Sudut Pada Tiap Motor Servo ............. 111

    4.4.1.1. Motor Servo SG90 (Servo 4) ................................................... 114

    4.4.1.2. Motor Servo JX PDI-6225-300 (Servo 3) ................................ 114

    4.4.1.3. Motor Servo JX PDI-6225-300 (Servo 2) ................................ 115

    4.4.1.4. Motor Servo JX PDI-6225-300 (Servo 1) ................................ 116

    4.5. Pengujian Arah Gerak Tiap Motor Servo ........................................................ 118

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xvi

    4.6. Pengujian Nilai Sudut Pergerakan Berdasarkan Perbandingan

    Gambar Skala 1:1 dengan Perhitungan Invers Kinematics (Teori) .................. 120

    4.7. Pengujian dan Perbandingan Nilai Sudut Teori dengan Praktik ..................... 120

    4.8. Pengujian Nilai Area ........................................................................................ 122

    4.9. Pengujian Nilai Perimeter ................................................................................ 123

    4.10. Pengujian Nilai Thinnessratio ........................................................................ 124

    4.11. Pengujian Keberhasilan Sistem Mendeteksi Satu Objek Pada Posisi ............ 125

    4.12. Pengujian Keberhasilan Lengan Robot Saat Mengambil dan

    Memindahkan Benda ..................................................................................... 126

    BAB V: KESIMPULAN

    5.1. Kesimpulan .............................................................................................................. 130

    5.2. Saran ........................................................................................................................ 130

    DAFTAR PUSTAKA ................................................................................................... 131

    LAMPIRAN .................................................................................................................. L-1

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xvii

    DAFTAR TABEL

    Tabel 2.1. Penentuan Ukuran Karakter .......................................................................... 36

    Tabel 3.1. Variabel Sudut Pergerakan Tiap Motor Servo Objek Kubus dan

    Tabung Tabel ................................................................................................. 48

    Tabel 3.2. Data yang digunakan untuk perhitungan torsi ............................................... 51

    Tabel 3.3. Hasil Perhitungan Torsi Motor Servo ........................................................... 56

    Tabel 3.4. Perhitungan Nilai OCR .................................................................................. 59

    Tabel 3.5. Spesifikasi Webcam Logitech C 170 ............................................................. 59

    Tabel 3.6. Inisialisasi Objek Tabung Beserta Posisinya ................................................. 69

    Tabel 3.7. Inisialisasi Objek Kubus Beserta Posisinya .................................................. 69

    Tabel 3.8. Keterangan Tampilan Utama Program .......................................................... 74

    Tabel 4.1. Batas nilai pixel pada sumbu x dan y untuk masing-masing posisi .............. 79

    Tabel 4.2. Tabel Sudut Pergerakan Metode Analisis Gambar Skala 1:1 ....................... 87

    Tabel 4.3. Tabel Hasil Perhitungan Invers Kinematics .................................................. 93

    Tabel 4.4. Tabel Perbandingan Error Nilai Sudut Secara Gambar

    Skala 1:1 dengan Invers Kinematics ............................................................. 93

    Tabel 4.5. Tabel Perbandingan Error Nilai OCR Secara Teori dengan Praktik

    Motor Servo JX PDI-6225-300 (Servo 1) .................................................... 116

    Tabel 4.6. Tabel Perbandingan Error Nilai OCR Secara Teori dengan Praktik

    Motor Servo JX PDI-6225-300 (Servo 2) .................................................... 117

    Tabel 4.7. Tabel Perbandingan Error Nilai OCR Secara Teori dengan Praktik

    Motor Servo JX PDI-6225-300 (Servo 3) .................................................... 117

    Tabel 4.8. Tabel Perbandingan Error Nilai OCR Secara Teori dengan Praktik

    Motor Servo SG90 (Servo 4) ........................................................................ 117

    Tabel 4.9. Hasil pengujian arah gerak motor servo berdasarkan gambar skala 1:1 ....... 119

    Tabel 4.10. Hasil pengujian arah gerak motor servo berdasarkan metode

    invers kinematics ......................................................................................... 119

    Tabel 4.11. Tabel Perbandingan Sudut Berdasarkan Gambar Skala 1:1 dengan

    Perhitungan Invers Kinematics ..................................................................... 120

    Tabel 4.12. Tabel Perbandingan Sudut Berdasarkan Gambar Skala 1:1 dengan

    Implementasi ............................................................................................... 121

    Tabel 4.13 Tabel Hasil Implementasi Sudut Terhadap Nilai OCR ................................ 121

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xviii

    Tabel 4.14. Pengujian hasil perhitungan nilai area ........................................................ 122

    Tabel 4.15. Pengujian hasil perhitungan nilai perimeter ................................................ 123

    Tabel 4.16. Pengujian hasil perhitungan nilai thinnessratio .......................................... 124

    Tabel 4.17. Keberhasilan mendeteksi Objek .................................................................. 125

    Tabel 4.18. Keberhasilan memindahkan bola ke dalam objek ........................................ 126

    Tabel 4.19. Percobaan ke-1 ............................................................................................ 126

    Tabel 4.20. Percobaan ke-2 ............................................................................................ 127

    Tabel 4.21. Percobaan ke-3 ............................................................................................ 127

    Tabel 4.22. Percobaan ke-4 ............................................................................................ 128

    Tabel 4.23. Percobaan ke-5 ............................................................................................ 128

    Tabel 4.24. Percobaan ke-6 ............................................................................................ 129

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xix

    DAFTAR GAMBAR

    Gambar 1.1. Batas area kerja .......................................................................................... 3

    Gambar 1.2. Jumlah maksimal benda ............................................................................. 4

    Gambar 2.1. Sistem koordinat citra berukuran MxN (M baris dan N kolom) ............... 7

    Gambar 2.2. Citra grayscale ........................................................................................... 8

    Gambar 2.3. Citra biner Representasi dalam bentuk biner 1 dan 0 ................................ 9

    Gambar 2.4. Pengubahan nilai piksel pada proses thresholding .................................... 10

    Gambar 2.5. Median Filtering ........................................................................................ 11

    Gambar 2.6. Contoh Noise Filtering Pada Citra ............................................................ 11

    Gambar 2.7. Contoh labeling pada objek ....................................................................... 12

    Gambar 2.8. Perimeter (keliling) pada objek citra ......................................................... 13

    Gambar 2.9. Titik pusat (centroid) dari suatu objek dengan koordinat (x,y) ................. 15

    Gambar 2.10 Hasil capture objek ................................................................................... 15

    Gambar 2.11. Hasil grayscale ke dalam citra biner 1 dan 0 ........................................... 16

    Gambar 2.12. Proses labeling pada objek ...................................................................... 17

    Gambar 2.13. Proses Segmentasi pada objek ................................................................. 18

    Gambar 2.14. Proses mencari luas area pada objek ....................................................... 18

    Gambar 2.15. Proses mencari luas perimeter pada objek ............................................... 19

    Gambar 2.16. Proses mencari nilai centroid ................................................................... 20

    Gambar 2.17. Manipulator Pada Lengan Robot ............................................................. 21

    Gambar 2.18. end-effector jenis gripper ........................................................................ 22

    Gambar 2.19. Momen gaya ............................................................................................ 22

    Gambar 2.20. Contoh soal dan pembahasan tentang torsi .............................................. 24

    Gambar 2.21. Invers Kinematics dua sendi .................................................................... 25

    Gambar 2.22. Ukuran lengan robot ................................................................................. 26

    Gambar 2.23. Model fisik motor servo .......................................................................... 27

    Gambar 2.24. Pensinyalan motor servo .......................................................................... 28

    Gambar 2.25. Konfigurasi Pin Mikrokontroler AVR ..................................................... 29

    Gambar 2.26. Mode Phase Correct PWM ..................................................................... 32

    Gambar 2.27. Mode Fast PWM ..................................................................................... 33

    Gambar 2.28. Register UDR .......................................................................................... 34

    Gambar 2.29. Register UCSRA ...................................................................................... 34

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xx

    Gambar 2.30. Register UCSRB ...................................................................................... 35

    Gambar 2.31. Register UCSRC ...................................................................................... 37

    Gambar 2.32. Adaptor / Power supply ........................................................................... 38

    Gambar 2.33. webcam Logitech c170h .......................................................................... 39

    Gambar 2.34. Minimum sistem ATemega32 ................................................................. 39

    Gambar 3.1. Blok Diagram Sistem Kerja ....................................................................... 41

    Gambar 3.2. Kumpulan Desain Part Lengan Robot ...................................................... 43

    Gambar 3.3. Assemmbly Part Lengan Robot ................................................................. 44

    Gambar 3.4. Desain Keseluruhan Sistem ....................................................................... 44

    Gambar 3.5. Penempatan dan pengurutan peletakkan motor servo ............................... 45

    Gambar 3.6. Analisis gambar keseluruhan sistem .......................................................... 46

    Gambar 3.7. Luas Area ................................................................................................... 46

    Gambar 3.8. Area penempatan objek ............................................................................. 47

    Gambar 3.9. wiring sistem keseluruhan ......................................................................... 50

    Gambar 3.10. Kontruksi Lengan Robot .......................................................................... 51

    Gambar 3.11. Perhitungan torsi motor servo 2 ............................................................... 52

    Gambar 3.12. Perhitungan torsi motor servo 3 ............................................................... 53

    Gambar 3.13. Perhitungan torsi motor servo 4 ............................................................... 54

    Gambar 3.14. Perhitungan torsi motor servo 1 ............................................................... 55

    Gambar 3.15. Motor Servo JX PDI-6225-300 ............................................................... 57

    Gambar 3.16. Motor Servo SG90 ................................................................................... 57

    Gambar 3.17. Rangkaian pin motor servo pada minimum system Mikrokontroler

    ATmega32 ................................................................................................ 58

    Gambar 3.18. Posisi peletakkan webcam terhadap objek ................................................ 60

    Gambar 3.19 Objek berupa gelas dan benda berupa bola .............................................. 60

    Gambar 3.20. Diagram Alir Utama Sistem .................................................................... 62

    Gambar 3.21. Flowchart Akusisi Citra .......................................................................... 63

    Gambar 3.22. Flowchart Image Preprocessing ............................................................. 64

    Gambar 3.23. Labeling dan Segmentasi ......................................................................... 65

    Gambar 3.24. Flowchart Pengenalan Bentuk ................................................................. 66

    Gambar 3.25. Flowchart Pengenalan posisi ................................................................... 67

    Gambar 3.26. Flowchart Komunikasi Data ................................................................... 68

    Gambar 3.27. Pergerakan lengan robot .......................................................................... 70

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xxi

    Gambar 3.28. Lanjutan I Pergerakan lengan robot ......................................................... 71

    Gambar 3.29. Lanjutan II Pergerakan lengan robot ....................................................... 72

    Gambar 3.30. Lanjutan III Pergerakan lengan robot ...................................................... 73

    Gambar 3.31. Perancangan Desain GUI ......................................................................... 74

    Gambar 4.1. Lengan robot dan gripper .......................................................................... 75

    Gambar 4.2. Minimum system dan LCD 16x2 ............................................................... 76

    Gambar 4.3. Pencahayaan dan peletakkanya .................................................................. 76

    Gambar 4.4. Webcam dan area peletakan webcam ......................................................... 78

    Gambar 4.5. Area kerja ................................................................................................... 78

    Gambar 4.6. Nilai pixel tiap posisi ................................................................................. 79

    Gambar 4.7. Hasil capture minim cahaya ...................................................................... 80

    Gambar 4.8. Objek berupa wadah berbentuk tabung dan kubus .................................... 80

    Gambar 4.9. Hasil capture objek pencahayaan merata .................................................. 81

    Gambar 4.10. Benda berupa bola dan area peletakan bola ............................................. 81

    Gambar 4.11. Hasil implementasi sistem ....................................................................... 82

    Gambar 4.12. Analisis menggunakan gambar dengan skala 1:1 .................................... 84

    Gambar 4.13. Dimensi lengan robot ............................................................................... 88

    Gambar 4.14. Posisi Siaga .............................................................................................. 88

    Gambar 4.15. Ambil benda ............................................................................................. 89

    Gambar 4.16. Posisi 1 dan 3 ........................................................................................... 90

    Gambar 4.17. Posisi 2 ..................................................................................................... 90

    Gambar 4.18. Posisi 4 dan 6 ........................................................................................... 91

    Gambar 4.19. Posisi 5 ..................................................................................................... 92

    Gambar 4.20. Tampilan GUI pada sistem ...................................................................... 94

    Gambar 4.21. Inisialisasi Komunikasi Serial ................................................................. 95

    Gambar 4.22. Program popupmenu ................................................................................ 96

    Gambar 4.23. Inisialisasi Webcam ................................................................................. 96

    Gambar 4.24. Listing program akuisisi citra .................................................................. 97

    Gambar 4.25. Proses pengolahan citra ........................................................................... 97

    Gambar 4.26. Proses segmentasi dan labeling citra ....................................................... 98

    Gambar 4.27. Pengenalan bentuk dan posisi .................................................................. 99

    Gambar 4.28. Pengenalan bentuk dan posisi .................................................................. 100

    Gambar 4.29. Nilai centroid tiap posisi .......................................................................... 101

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xxii

    Gambar 4.30. Listing program penambahan array ......................................................... 102

    Gambar 4.31. Penambahan isi data array ....................................................................... 103

    Gambar 4.32. Pengurutan data array .............................................................................. 103

    Gambar 4.33. Konversi angka ke karakter ..................................................................... 104

    Gambar 4.34. Program inisialisasi komunikasi USART ................................................ 105

    Gambar 4.35. Listing program inisialisasi timer 0 ......................................................... 106

    Gambar 4.36. Listing program menerima data serial USART dengan scanf ................. 106

    Gambar 4.37. Inisialisasi port motor servo .................................................................... 107

    Gambar 4.38. Pengendali motor servo ........................................................................... 107

    Gambar 4.39. Program utama ......................................................................................... 108

    Gambar 4.40. Program penampil data komunikiasi yang diterima ................................ 109

    Gambar 4.41. Program pengisian dua kali ..................................................................... 109

    Gambar 4.42. Fungsi Pergerakan ................................................................................... 110

    Gambar 4.43. Listing program pergerakan lengan ......................................................... 110

    Gambar 4.44. PWM berdasrkan spesifikasi motor servo SG90 ...................................... 112

    Gambar 4.45. PWM berdasrkan spesifikasi motor servo JX PDI-6225-300 .................. 113

    Gambar 4.46 Sudut 0° .................................................................................................... 114

    Gambar 4.47 Sudut 90° .................................................................................................. 114

    Gambar 4.48 Sudut 180° ................................................................................................ 114

    Gambar 4.49 Sudut 0° .................................................................................................... 114

    Gambar 4.50 Sudut 90° .................................................................................................. 114

    Gambar 4.51 Sudut 180° ................................................................................................ 115

    Gambar 4.52 Sudut 0° .................................................................................................... 115

    Gambar 4.53 Sudut 90° .................................................................................................. 115

    Gambar 4.54 Sudut 180° ................................................................................................ 115

    Gambar 4.55 Sudut 0° .................................................................................................... 116

    Gambar 4.56 Sudut 90° .................................................................................................. 116

    Gambar 4.57 Sudut 180° ................................................................................................ 116

    Gambar 4.58. Pengujian sudut arah gerak tiap motor servo ........................................... 115

    Gambar 4.59. Grafik pengujian hasil perhitungan nilai area ......................................... 122

    Gambar 4.60. Grafik pengujian hasil perhitungan nilai perimeter ................................. 123

    Gambar 4.61. Grafik pengujian hasil perhitungan nilai thinnessratio ........................... 124

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • xxiii

    Gambar 4.62. Hasil GUI percobaan ke-1 ....................................................................... 126

    Gambar 4.63. Hasil GUI percobaan ke-2 ....................................................................... 127

    Gambar 4.64. Hasil GUI percobaan ke-3 ....................................................................... 127

    Gambar 4.65. Hasil GUI percobaan ke-4 ....................................................................... 128

    Gambar 4.66. Hasil GUI percobaan ke-5 ....................................................................... 128

    Gambar 4.67. Hasil GUI percobaan ke-6 ....................................................................... 129

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 1

    BAB I

    PENDAHULUAN

    1.1. Latar Belakang

    Dewasa ini teknologi memiliki peranan penting untuk menunjang serta

    mempermudah berbagai aktivitas dan pekerjaan manusia. Salah satu hasil perkembangan

    teknologi yaitu adanya teknologi yang dinamakan legan robot dan computer vision. Lengan

    robot disebut juga robot manipulator merupakan gabungan dari beberapa segmen dan joint

    yang secara umum dibagi menjadi tiga bagian yaitu arm, wrist, dan gripper [1]. Sedangkan

    computer vision adalah ilmu dan teknologi mesin atau sistem yang mampu mengekstrak

    informasi dari gambar yang diperlukan untuk menyelesaikan tugas tertentu. Data gambar

    dapat terambil dalam banyak bentuk seperti video, kamera, webcam, scanner dan lain-lain.

    Proses penggabungan teknologi antara lengan robot dan computer vision dapat

    menjadi jawaban atas tantangan perkembangan teknologi masa yang akan datang.

    Keberadaan dua sistem tersebut dapat dijadikan satu keutuhan sistem yang dapat

    dimanfaatkan di dalam bidang perindustrian, pengetahuan dan media pembelajaran. Salah

    satu contoh teknologi yang terkait adalah seperti pada penelitian terdahulu yang dilakukan

    oleh Hasan mengenai aplikasi pengenalan objek untuk lengan robot pemisah benda

    berdasarkan bentuk. Dari penelitian tersebut dan berdasarkan manfaat lengan robot serta

    computer vision, maka peneliti memiliki gagasan membuat aplikasi computer vision pada

    lengan robot pemindah benda berdasarkan objek dan posisi benda menggunakan camera

    webcam C170 sebagai sensor.

    Perbandingan antara peneliti terdahulu dengan penelitian saat ini terletak pada

    prinsip kerja. Pada peniliti terdahulu webcam digunakan untuk mendeteksi objek berupa

    berbagai macam bentuk, kemudian objek dipindahkan ke suatu wadah yang telah ditentukan

    berdasarkan kriteria bentuk objek. Sementara pada peneliti saat ini berkebalikan, webcam

    digunakan untuk mendeteksi objek berupa dua macam bentuk wadah. Kemudian lengan

    robot akan memindahkan benda berupa bola kedalam wadah yang telah terdeteksi oleh

    webcam. Keistimewaan pada penelitian saat ini objek atau wadah berupa dua macam bentuk

    wadah diletakkan secara acak. Dalam konteks ini, peneliti dituntut bagaimana suatu sistem

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 2

    aplikasi computer vision dapat mengenali jenis objek, dan posisi objek kemudian

    memberikan sinyal pada mikrokontroler untuk menggerakan lengan robot.

    Hasil yang diperoleh kontroler, yaitu mengetahui sinyal yang telah dikirim oleh

    aplikasi computer vision menggunakan program MATLAB. Isi sinyal tersebut adalah posisi

    objek berupa dua macam jenis bentuk wadah yang diletakkan secara acak kemudian, dapat

    menggerakan lengan robot untuk mengambil benda berupa bola dan akan dipindahkan ke

    objek berupa dua macam jenis bentuk wadah yang telah teridentifikasi. Dari dua macam

    jenis bentuk wadah tersebut yaitu, wadah berbentuk tabung, dan gelas berbentuk kubus yang

    mana dua macam bentuk itu telah ditentukan dari perbedaan jumlah pengisianya.

    1.2. Tujuan Penelitian

    Tujuan penulisan tugas akhir ini yaitu membuat aplikasi computer vision yang dapat

    mengidentifikasi serta membedakan dari dua macam bentuk objek berupa wadah berbentuk

    tabung dan kubus, kemudian aplikasi computer vision dapat berkomunikasi dengan kontroler

    berupa mikrokontroler yang akan mengontrol pergerakan lengan robot. Perbedaan bentuk

    wadah tersebut lengan robot akan menerima sinyal dan dapat membedakan jumlah pengisian

    ke wadah. Wadah berbentuk tabung berisikan satu buah bola, sementara wadah berbentuk

    kubus berisikan dua buah bola.

    1.3. Manfaat Penelitian

    Penelitian ini diharapkan dapat bermanfaat bagi masyarakat yang ingin mengenal,

    mempelajari, serta mampu menerapkan mengenai computer vision dan pengenalan objek.

    Jika dapat dikembangkan serta diterapkan di dalam dunia perindustrian yaitu, membantu

    pekerjaan manusia serta meminimalisir terjadinya human error seperti contoh untuk

    membedakan objek-objek maupun material tertentu yang memiliki bentuk kemudian posisi

    benda yang acak dengan sistem otomatis.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 3

    1.4. Batasan Masalah

    Aplikasi computer vision pada lengan robot pemindah benda berdasarkan objek dan

    posisi benda, memiliki perangkat keras (hardware) dan perangkat lunak (software).

    Hardware yang digunakan yaitu webcam dan lengan robot, sedangkan software yang

    digunakan yaitu matlab dan Code Vision AVR. Matlab digunakan untuk pengolahan citra dan

    Code Vision AVR digunakan untuk memprogram controller pergerakan motor servo.

    Agar Tugas Akhir ini bisa mengarah pada tujuan dan untuk menghindari terlalu

    kompleksnya permasalahan yang muncul, maka perlu adanya batasan-batasan masalah yang

    sesuai dengan judul dari tugas akhir ini. adapun batasan masalah adalah :

    1. Masukan berupa dua jenis bentuk objek berupa dua macam wadah yang berbentuk

    tabung dan kubus, serta benda yang dipindahkan berupa bola.

    2. Tempat peletakan benda berupa bola berada disamping lengan robot dengan tinggi

    25 cm.

    3. Ukuran ojek berupa wadah dan benda berupa bola yang dijual dipasaran yang

    digunakan yaitu :

    a) Wadah Tabung (diameter = 70 mm, tinggi = 75 mm)

    b) Wadah Kubus (panjang = 70 mm, lebar =70mm, tinggi = 75 mm)

    c) Bola (diameter = 40mm)

    4. Objek disusun secara acak diatas area berwarna hitam berukuran 28 cm x 21 cm.

    5. Posisi peletakan objek satu ke objek lain sesuai dengan batasan penulis yaitu tidak

    boleh berhimpitan dan dalam cakupan camera webcam.

    6. Posisi peletakan objek secara acak namun berada di titik tengah kotak sampling,

    seperti pada gambar berikut ini,

    Gambar 1.1. Batas area kerja

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 4

    7. Jumlah maksimal objek yang dapat diletakkan yaitu 6 gelas, seperti yang terlihat

    pada gambar 1.2, serta pemilihan dari dua macam jenis bentuk dari ke-6 gelas diubah

    secara bebas.

    Gambar 1.2. Jumlah maksimal benda

    8. Menggunakan webcam C170 untuk mengidentifikasi objek yang terhubung dengan

    software MATLAB.

    9. Jarak peletakan camera webcam menyesuaikan dengan luas area peletakan benda

    agar citra yang di akuisisi webcam hanya area peletakan benda.

    10. Lengan robot dan gripper terbuat dari akrilik dengan tebal 3mm yang didesain

    dengan menggunakan Autodesk Invertor 2015.

    11. Lengan robot terdiri dari empat buah servo uncontiuous yang deprogram

    menggunakan codevision AVR melalui ATmega32.

    12. Komunikasi antara leptop dengan ATmega32 menggunakan komunikasi serial

    USART yang dihubungkan dengan modul yang sudah tersedia di pasaran yaitu modul

    USB to TTL converter.

    13. Terdapat tampilan GUI pada MATLAB sebagai graphic user interface agar dapat

    melihat data objek yang akan dikenali, dan jumlah benda yang terdeteksi.

    14. Keluaran pada GUI berupa bentuk benda dan posisinya.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 5

    1.5. Metodologi Penelitian

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

    1) Melakukan studi pustaka / refrensi berupa buku dan jurnal ilmiah yang membahas

    mengenai image processing dengan MATLAB, lengan robot, pemrograman dengan

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

    2) Perancangan desain lengan robot beserta skema-skema rangkaian pendukung dan

    pembuatan flowchart untuk memprogram Atmega32 dan MATLAB.

    3) Pembuatan hasil perancangan berupa 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 dilakukan dengan mencari data tentang kordinat posisi objek,

    jenis bentuk objek, melihat tanggapan sistem dalam mendeteksi objek, sudut putaran

    motor servo pada lengan robot, dan keakuratan lengan robot saat mengambil benda serta

    menaruh benda pada objek yang telah terdeteksi.

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

    dapat dilakukan dengan melihat presentase error alat saat mendeteksi objek, dan tingkat

    keberhasilan lengan robot saat memindahkan benda ke objek yang telah terdeteksi.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 6

    BAB II

    DASAR TORI

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

    pembuatan tugas akhir ”Aplikasi Computer Vision Pada Lengan Robot Pemindah Benda

    Berdasarkan Objek dan Posisi Benda“.

    2.1. MATLAB

    Matlab (matrix labortary) dikembangkan oleh MathWorks adalah sebuah Bahasa

    dengan high performance untuk komputasi masalah teknik. Matlab mengintegerasikan

    komputasi, visualisasi, dan pemrograman dalam satu model yang sangat mudah untuk

    dipakai dimana masalah dan penyelesaianya diekspresikan dalam notasi matematika yang

    familiar. Saat ini matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem

    solver mulai dari simpel sampai masalah-masalah yang kompleks dari berbagai disiplin ilmu

    [2]. Beberapa manfaat yang didapatkan dari matlab antara lain:

    a) Perhitungan Matematika

    b) Komputasi numerik

    c) Simulasi dan pemodelan

    d) Visualisasi dan analisis data

    e) Pembuatan grafik untuk keperluan sains dan teknik

    f) Pengembangan aplikasi, misalnya dengan memanfaatkan GUI.

    g) Robotika

    2.2. Computer Vision

    Computer vision merupakan ilmu yang menggunakan image processing untuk

    membuat keputusan berdasarkan citra yang didapat dari sensor [4]. Dengan kata lain,

    computer vision bertujuan untuk membangun sebuah mesin pandai yang dapat “melihat”.

    Kerangka kerja umum yang biasa dilakukan dalam computer vision adalah proses akuisisi

    citra, pra pemrosesan, ekstraksi fitur, deteksi atau segmentasi citra, pemrosesan tingkat

    tinggi, dan terakhir pengambilan keputusan [7]

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 7

    2.2.1. Pengolahan Citra Digital

    Secara umum, istilah pengolahan citra digital menyatakan ”pemrosesan gambar

    berdimensi-dua melalui komputer digital” [jain, 1989]. Menurut Efford [2000], pengolahan

    citra adalah istilah umum untuk berbagi teknik yang keberadaanya untuk memanipulasi dan

    memodifikasi citra dengan berbagai cara [12]. Ditinjau dari sudut pandang matematis, citra

    merupakan fungsi malar (continue) dari intensitas cahaya pada bidang dwimatra. Sumber

    cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut.

    Pantulan cahaya ini ditangkap oleh alat-alat optik, misalnya mata pada manumur, kamera,

    pemindai (scanner), dan sebagainya, sehingga bayanagan objek yang disebut citra tersebut

    terekam [13].

    Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (pexel atau “picture

    element”). Setiap pixel digambarkan sebagai satu kotak kecil. Setiap piksel mempunyai

    koordinat posisi. Sistem koordinat yang dipakai untuk menyatakan citra digital ditunjukan

    di Gambar 2.1 [12].

    Gambar 2.1. Sistem koordinat citra berukuran MxN (M baris dan N kolom) [12].

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 8

    2.2.2. Pemrosesan Citra

    2.2.2.1. Citra Grayscale (Black White)

    Citra skala keabuan atau disebut juga citra grayscale yaitu citra yang nilai pixelnya

    mempresentasikan derajat keabuan atau intensitas warna putih. Nilai intensitas paling rendah

    merepresentasikan warna hitam dan nilai intensitas tinggi merepresentasikan warna putih.

    Pada umumnya citra grayscale memiliki kedalaman pixel 8 bit (256 derajat keabuan), tetapi

    ada juga citra grayscale yang kedalaman pixelnya tepi bukan 8 bit, misalnya 16 bit untuk

    penggunaan yang memerlukan ketelitian tinggi [14]. Berikut contoh gambar 2.2 tentang citra

    grayscale.

    Gambar 2.2. Citra grayscale [21].

    2.2.2.2. Citra Biner

    Citra biner adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah nilai

    dari dua kemungkinan (yaitu nilai 0 dan 1). Nilai 0 menyatakan warna hitam dan nilai 1

    menyatakan warna putih. Citra jenis ini banyak dipakai dalam pemrosesan citra, misalnya

    untuk kepentingan memperolah tepi bentuk suatu objek. Gambar 2.3 menyatakan citra biner

    [14].

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 9

    Gambar 2.3. Citra biner representasi dalam bentuk biner 1 dan 0 [15].

    2.2.2.3. Konversi Citra Grayscale ke Citra Biner

    Proses pengkonversian citra grayscale ke citra biner membutuhkan suatu nilai batas

    atau yang biasa disebut nilai threshold. Nilai intensitas dari citra grayscale yang lebih dari

    atau sama dengan nilai threshold akan diubah menjadi 1 (warna putih) sedangkan untuk nilai

    intensitas citra grayscale yang kurang dari nilai threshold akan diubah menjadi 0 (warna

    hitam). Sehingga citra yang keluar dari hasil thresholding merupakan citra biner [22].

    Untuk mengkonversi nilai piksel citra grayscale menjadi citra biner pada metode

    thresholding dapat digunakan persamaan sebagai berikut :

    𝑔(𝑥, 𝑦) = {1, 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) ≥ 𝑇

    0, 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) < 𝑇 (2.1)

    Keterangan :

    f(x,y) : Nilai intensitas citra grayscale

    g(x,y) : Citra biner

    T : Nilai Threshold

    Contoh pengubahan nilai piksel citra grayscale ke citra biner menggunakan metode

    thresholding dapat dilihat pada gambar 2.4.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 10

    Gambar 2.4. Pengubahan nilai piksel pada proses thresholding [24].

    2.2.2.4. Noise Filtering

    Noise adalah gangguan yang dapat terjadi pada citra digital, noise biasa terjadi

    dikarenakan pencahayan yang kurang bagus dan juga gangguan fisik pada alat akuisisi.

    Noise pada citra digital dapat berupa titik-titik hitam di area citra yang berwarna putih

    ataupun titik-titik putih pada area yang berwarna hitam. Untuk mengurangi noise pada citra

    digital dapat dilakukan dengan median filtering.

    Median filter merupakan salah satu filter non-linear. Tujuan dari penggunaan median

    filter yaitu untuk mengurangi noise atau gangguan pada citra. Dikatakan non-linear karena

    cara kerja metode ini tidak termasuk kedalam kategori operasi konvolusi. Operasi non-linear

    dihitung dengan mengurutkan nilai intensitas sekelompok pixel, kemudian nilai pixel yang

    diproses akan digantikan dengan nilai tertentu [23]. Median filtering dan contoh citra biner

    hasil median filtering ditunjukan oleh gambar 2.5 dan 2.6. Secara matematis dapat

    dirumuskan sebagai berikut :

    𝑔(𝑥, 𝑦) = 𝑀𝑒𝑑𝑖𝑎𝑛{𝑓(𝑥 − 𝑖, 𝑦 − 𝑗), (𝑖, 𝑗) ∈ 𝑊} (2.2)

    g (x,y) merupakan citra yang dihasilkan dari citra f (x,y), sedangkan W merupakan

    window yang ditempatkan pada bidang citra dan (i,j) elemen dari window. Median filtering

    dan contoh noise filtering ditunjukan oleh gambar 2.5 dan gambar 2.6.

    𝑔(𝑥, 𝑦) = {1, 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) ≥ 𝑇1 = 100

    0, 𝑗𝑖𝑘𝑎 𝑓(𝑥, 𝑦) < 𝑇2 = 150

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 11

    (a) (b)

    Gambar 2.5. Median Filtering (a) input (b) output.

    (a) (b)

    Gambar 2.6. Contoh Noise Filtering Pada Citra (a) input (b) output.

    2.2.2.5. Labeling Objek

    Labeling adalah proses pelabelan komponen atau suatu objek yang terhubung dalam

    gambar biner. Pada proses pelabelan piksel berlabel 0 adalah latar belakang, piksel berlabel

    1 membuat satu objek dan, piksel berlabel 2 membuat objek kedua, dan seterusnya seperti

    contoh gambar 2.7 berikut ini.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 12

    (a) (b)

    Gambar 2.7. Contoh labeling pada objek (a) input (b) output.

    2.2.2.6. Segmentasi Citra

    Proses segmentasi citra bertujuan untuk memisahkan dari beberapa objek yang

    terekstrak. Segementasi citra yang nantinya akan mempermudah proses pengenalan objek.

    Hasil keluaran segmentasi citra berupa citra biner 1 dan 0.

    2.2.3. Pengenalan Ukuran dan Penentuan Posisi

    Salah satu ciri yang dapat diolah dari suatu objek yaitu ukuran dan juga posisi,

    dengan demikian dapat dimanfaatkan untuk proses pengenalan objek satu, objek dua, dan

    lainya. Sebelum mengetahui atau mencari ukuran dan posisi dari suatu objek, didalam proses

    mengekstrak dibutuhkan proses pengolahan citra seperti noise filtering, labeling, dan

    segmentasi citra agar mendapat data yang bagus.

    2.2.3.1 Pengenalan Ukuran

    2.2.3.1.1. Area

    Area adalah banyaknya jumlah piksel pada wilayah objek (luas objek). Objek pada

    citra biner berwarna direpresentasikan dengan warna putih. Nilai pixel citra berwarna putih

    pada area tersebut bernilai 1. Jumlah pixel (yang bernilai 1) pada suatu objek dalam citra

    digital adalah nilai area-nya. Untuk mengetahui area digunakan rumus berikut [21] :

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 13

    𝐴𝑖 = ∑ ∑ 𝑂𝑖 (𝑥, 𝑦)𝑁𝑦=1

    𝑀𝑥=1 (2.3)

    Keterangan :

    𝐴𝑖 = Jumlah pixel dari luas objek (area)

    M = Kolom pixel

    N = Baris pixel

    𝑂𝑖 = Objek dalam suatu citra

    2.2.3.1.2. Perimeter

    Perimeter (keliling) objek menyatakan panjang dari kerangka yang dihasilkan seperti

    yang terlihat pada gambar 2.8. Perimeter didapatkan dari hasil deteksi tepi suatu objek dalam

    citra digital. Jumlah pixel perimeter dari setiap objek berbeda-beda.

    Gambar 2.8. Perimeter (keliling) pada objek citra.

    2.2.3.1.3. Thinnessratio

    Thinnessratio adalah perbandingan antara jumlah pixel area dengan banyaknya pixel

    perimeter dalam suatu objek pada citra digital. Setiap bentuk benda / objek memiliki nilai

    thinesratio yang berbeda-beda. Untuk benda yang bentuknya sama tetapi ukuranya berbeda,

    nilai thinnessratio nya tetap sama, hal ini karena perbandingan jumlah pixel area dan pixel

    perimeter-nya tetap sama [22] Rumus thinnessratio yaitu :

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 14

    𝑇𝑖 =4𝜋𝐴𝑖

    𝑃𝑖2 (2.4)

    Keterangan :

    𝑇𝑖 = thinnessratio

    𝐴𝑖 = jumlah pixel dari luas objek (area)

    𝑃𝑖 = jumlah pixel dari keliling objek (perimeter)

    2.2.3.2. Pengenalan Posisi

    2.2.3.2.1. Centroid

    Centroid didefinisikan sebagai titik tengah atau pusat dari region. Elemen pertama

    dari centroid adalah koordinat horizontal (“X” koordinat) dan vertical (“Y” koordinat) dari

    objek [19]. Perbedaan nilai centroid disebabkan oleh letak dari masing-masing objek dalam

    citra. Rumus centroid yaitu :

    𝑥𝑖 =1

    𝐴𝑖∑ ∑ 𝑥𝑂𝑖

    𝑁𝑦=1

    𝑀𝑥=1 (𝑥, 𝑦) (2.5)

    𝑦𝑖 =1

    𝐴𝑖∑ ∑ 𝑦𝑂𝑖

    𝑁𝑦=1

    𝑀𝑥=1 (𝑥, 𝑦) (2.6)

    Keterangan :

    𝑥𝑖 = koordinat pada sumbu x

    𝑦𝑖 = koordinat pada sumbu y

    𝐴𝑖 = jumlah pixel dari luas objek (area)

    𝑀 = kolom pixel

    𝑁 = baris pixel

    𝑂𝑖 = objek dalam suatu citra

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 15

    Gambar 2.9. Titik pusat (centroid) dari suatu objek dengan koordinat (x,y) [19].

    2.2.4. Metode Pengenalan Benda

    2.2.4.1. Proses capture Objek

    Untuk mengenali suatu objek atau gambar diperlukan metode yang dapat difungsikan

    untuk mendeteksi adanya perbedaan. Perbedaan tersebut berupa perubahan data atau suatu

    nilai yang dimiliki oleh masing-masing objek atau gambar yang akan diidentifikasi

    menggunakan software matlab.

    Langkah untuk mengenali suatu citra dengan terlebih dahulu objek ter-capture

    dengan baik dan sesuai hasil yang akan dicapai pada tiap-tiap objek. Hasil capture objek

    inilah yang menjadi dasar dalam proses pengambilan dan pengamatan nilai atau data yang

    terkandung pada objek. Hasil capture terhadap objek akan diubah terlebih dahulu ke dalam

    bentuk citra grayscale (keabuan), berikut merupakan contoh hasil capture serta pengubahan

    ke grayscale dilihat pada gambar 2.10.

    Gambar 2.10. Hasil capture objek.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 16

    2.2.4.2. Citra Grayscale ke Citra Biner

    Citra grayscale akan diubah ke dalam bentuk citra biner (0 dan 1), dapat dilihat pada

    gambar 2.11. Citra biner sebagai dasar didalam image preprocessing, yang mana objek dapat

    diolah jika telah melalui perubahan ke dalam bentuk itra biner.

    a) Citra grayscale b) Citra biner

    Gambar 2.11. Hasil grayscale ke dalam citra biner 1 dan 0.

    2.2.4.3. Proses Labeling

    Untuk mengetahui jumlah objek yang terdeteksi menggunakan sebuah metode

    menggunakan prinsip labeling. Labeling dapat memisahkan objek satu dengan objek yang

    lainya. Proses labeling dapat dilihat pada gambar 2.12.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 17

    a) Citra biner sebelum proses labeling b) Hasil sesudah proses labeling

    Gambar 2.12. Proses labeling pada objek.

    2.2.4.4. Proses Segmentasi Citra

    Segmentasi citra yang akan mengelola setelah proses labeling telah berhasil, tujuan

    adanya segmentasi citra sebagai pemisah antara objek satu dengan yang lain. Pemisahan

    memudahkan didalam mengenali tiap objek yang telah terproses sebelumnya. Jika proses

    segmentasi tidak dilakukan, maka proses pencarian luas, keliling, dan area akan dieksekusi

    secara keseluruhan tidak memperdulikan ada berapa jumlah objek didalam citra. Proses

    segmentasi dapat dilihat pada gambar 2.13.

    a) Hasil labeling

    Gambar 2.13. Proses segmentasi pada objek.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 18

    b) Hasil Segmentasi objek 1 c) Hasil Segmentasi objek 2

    Gambar 2.13. (Lanjutan) Proses segmentasi pada objek.

    2.2.4.5. Proses Mencari Luas Objek

    Luas objek suatu citra dapat diketahui dengan menghitung luas objek citra biner

    yang memiliki nilai 1, sementara nilai 0 menyatakan bahwa tidak terdapat objek. Proses

    pencarian nilai luas dari objek dapat dilihat pada gambar 2.14.

    Gambar 2.14. Proses mencari luas area pada objek.

    Berdasarkan gambar 2.14, dapat diketahui nilai area objek persegi menggunakan

    persamaan 2.3. Area objek persegi tersebut adalah 36. Nilai area ini didapatkan dari jumlah

    pixel yang bernilai 1 pada objek.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 19

    2.2.4.6. Proses Mencari Keliling Objek

    Keliling objek dapat diketahui nilainya dengan menghitung panjang garis tepi dari

    objek citra biner yang terdeteksi. Proses pencarian nilai keliling dari objek dapat dilihat pada

    gambar 2.15.

    Gambar 2.15. Proses mencari luas perimeter pada objek.

    Berdasarkan gambar 2.15, dapat diketahui nilai perimeter objek persegi tersebut

    adalah 20. Nilai perimeter ini didapatkan dari jumlah pixel yang bernilai 1 pada tepi objek.

    2.2.4.7. Proses Mencari Thinnessratio Objek

    Proses thinnessratio digunakan sebagai perbandingan untuk menentukan bentuk

    suatau objek yang diamati. Agar menentukan hasil pengamatan bentuk suatu objek dari

    gambar 2.14 dan 2.15 didapatkan nilai area (Ai) = 36 dan nilai perimeter (Pi) = 20. Dari data

    tersebut dapat dicari nilai thinnessratio menggunakan persamaan 2.4. Contoh penyelesaian

    perhitungan nilai thinnessratio sebagai berikut :

    𝑇𝑖 =4𝜋𝐴𝑖

    𝑃𝑖2

    𝑇𝑖 =4𝜋 𝑥 36

    (20)2

    𝑇𝑖 = 1,13

    Berdasarkan hasil perhitungan, didapatkan nilai thinnessratio yaitu 1,13.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 20

    2.2.4.8. Proses Mencari Posisi Objek

    Segmentasi citra yang akan mengelola setelah proses labeling telah berhasil, dan

    disinilah proses pencarian nilai centroid (titik kordinat x dan y) dan luas area objek. Dapat

    dilihat pada gambar 2.16. adalah proses pencarian centroid.

    1 2 3 4 5 6 7

    1 0 0 0 0 0 0 0

    2 0 1 1 1 0 0 0

    3 0 1 1 1 0 0 0

    4 0 1 1 1 0 0 0

    5 0 0 0 0 0 0 0

    6 0 0 0 0 0 0 0

    7 0 0 0 0 0 0 0

    Gambar 2.16. Proses mencari nilai centroid.

    Bersasarkan contoh pada gambar 2.16 dapat dicari nilai centroid dengan

    menggunakan persamaan 2.4 dan 2.5. Berikut ini adalah contoh cara menghitung nilai

    centroid.

    a) Koordinat x

    𝑥𝑖 =1

    9 (2𝑥1) + (2𝑥1) + (2𝑥1) + (3𝑥1) + (3𝑥1) + (3𝑥1) + (4𝑥1) + (4𝑥1) + (4𝑥1)

    𝑥𝑖 =1

    9 (27)

    𝑥𝑖 = 3

    b) Koordinat y

    𝑦𝑖 =1

    9 (2𝑥1) + (2𝑥1) + (2𝑥1) + (3𝑥1) + (3𝑥1) + (3𝑥1) + (4𝑥1) + (4𝑥1) + (4𝑥1)

    𝑦𝑖 =1

    9 (27)

    𝑦𝑖 = 3

    Berdasarkan hasil perhitungan, didapatkan nilai centroid (x, y) yaitu (x = 3, y = 3).

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 21

    2.3. Lengan Robot

    Lengan robot atau bisa 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 industri.

    Konfigurasi robot mengarah pada bentuk geometri dari manipulator [1]. Sistem lengan robot

    memiliki empat komponen dasar, yaitu : Manipulator, end effector, actuator, dan kontroler.

    2.3.1. Manipulator

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

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

    robot dapat dilihat pada gambar 2.17 [10].

    Gambar 2.17. Manipulator Pada Lengan Robot [1]

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

    ataupun terpasang pada rel. bagian lengan (arms) berfungsi untuk memposisikan end-

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

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

    dengan gripper yang berfungsi untuk sebagai alat mencengkram pada lengan robot [10].

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 22

    2.3.2. End effector

    End-effector dapat ditemukan hampir di semua aplikasi robot, walaupun

    keberadaanya bukan merupakan komponen dasar dari sistem robot. End-effector berfungsi

    sebagai bagian terakhir yang menghubungkan antara manipulator dengan objek [10].

    Berikut ini adalah contoh jenis end-effector dilihat pada gambar 2.18.

    Gambar 2.18. end-effector jenis gripper [11].

    2.3.3. Kontroler

    Kontroler adalah rangkaian elektronik berbasis mikroprosesor yang berfungsi sebaga

    pengatur seluruh komponen dalam membentuk fungsi kerja [3]. Kontroler menyimpan

    informasi berupa data–data pergerakan lengan robot yang telah deprogram dengan bahasa

    pemrograman tertentu pada mikrokontroler. Informasi dan data-data tersebutdisiman dalam

    mmori. Data tersebut dapat dioputkan untuk menentukan pergerakan dari manipulator yang

    menggunakan motor servo sebagai aktuator.

    2.4. 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 [8].

    Gambar 2.19. Momen gaya

    𝑟

    𝜃

    F

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 23

    Rumus:

    𝐹 = 𝑚 𝑥 𝑔 (2.7)

    𝜏 = 𝐹 𝑟 𝑆𝑖𝑛𝜃 (2.8)

    Keterangan :

    𝑚 = Masa benda (kg)

    𝑔 = Grafitasi (m/s2)

    𝜏 = Torsi (N-m)

    𝑟 = Jarak dari titik pangkal gaya sampai sumbu putar (m)

    𝐹 = Gaya(N)

    𝜃 = Derajat sumbu putar

    Selain bergerak secara vertical servo juga dapat bergerak secara horizontal, untuk

    menghitung total torsi yang bekerja pada servo horizontal bisa menggunakan hokum Newton

    II [25].

    ∑ τ = I α (2.9)

    Dimana :

    𝐼 = 𝑚 𝑥 𝑟2 (2.10)

    𝛼 = ∆𝜔

    ∆𝑡 (2.11)

    𝜔 = 2𝜋

    𝑇 (2.12)

    Keterangan :

    ∑ 𝜏 = Resultan torsi (N.m)

    I = Momen inersia (kg.m2)

    α = Percepatan sudut (rad/s2)

    m = Massa (kg)

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 24

    r = Jari-jari antara sumbu rotasi dengan gaya (m)

    ω = Kecepatan sudut (rad/sec)

    T = Periode (s)

    Gambar 2.20. Contoh soal dan pembahasan tentang torsi

    Dengan melihat informasi dari data atau nilai yang terkandung pada gambar 2.20,

    𝑚 = 500 𝑔𝑟𝑎𝑚 = 0,5 𝑘𝑔, 𝑔 = 9,8 𝑚/𝑠2, 𝑟 = 10 𝑐𝑚 = 0,1 𝑚 . Berikut adalah contoh

    pembahasan dari gambar 2.19 :

    𝐹 = 𝑚 𝑥 𝑔

    𝐹 = 0,5 𝑥 9,8

    = 4,9 N

    𝜏 = 𝐹 𝑟 𝑆𝑖𝑛𝜃

    𝜏 = 4,9 𝑥 0,1 𝑥 𝑆𝑖𝑛 90°

    = 0,49 N-m

    Berdasarkan persoalan tersebut, dibutuhkan motor servo yang memiliki torsi lebih

    besar dari 0,49 N.m untuk dapat mengangkat beban tersebut.

    10 cm

    M = 500 gram

    𝜃

    𝑟

    F

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 25

    2.5. Inverse Kinematics

    Kinematika robot adalah studi analistis pergerakan lengan robot terhadap sistem

    kerangka koordinat acuan yang diam/bergerak tanpa memperlihatkan gaya yang

    menyebabkan pergerakan tersebut [19]. Lengan robot 2 sendi yaitu sebuah lengan robot yang

    terdiri dari 2 buah lengan dan 2 buah derajat kebebasan. Ilustrasi dari lengan robot ini

    ditunjukan oleh gambar 2.21.

    Gambar 2.21. Invers Kinematics dua sendi.

    Pada inverse kinematics, nilai koordinat 𝑥 dan 𝑦 serta 𝑙1 dan 𝑙2 sudah ditentukan

    sehingga hanya dicari nilai 𝜃2 dan 𝜃1. Persamaan untuk mendapatkan nilai 𝜃2 dan 𝜃1

    ditunjukan pada rumus 2.13 dan 2.14[19].

    𝜃2 = 𝑎𝑟𝑐𝑜𝑠 ( 𝑥2+𝑦2− 𝑙1

    2−𝑙22

    2 𝑙1 𝑙𝑙2 ) (2.13)

    𝜃1 = 𝑎𝑟𝑐𝑠𝑖𝑛 ( 𝑙2 sin(𝜃2)

    √𝑥2+𝑦2 ) + 𝑎𝑟𝑐𝑡𝑎𝑛(

    𝑦

    𝑥 ) (2.14)

    Keterangan :

    𝑥 = Jarak antar robot dan benda

    𝑦 = Tinggi benda

    𝑙1 = Panjang lengan 1

    𝑙2 = Panjang lengan 2

    𝜃1 = Sudut 𝜃1

    𝜃2 = Sudut 𝜃2

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 26

    Gambar 2.22. Ukuran lengan robot.

    Dengan melihat informasi dari data atau nilai ukuran yang terkandung pada tiap-tiap

    bagian robot pada gambar 2.22 yaitu, 𝑥 = 16 cm, 𝑦 = 8 cm, 𝑙1= 14 cm, 𝑙2 = 24 cm. Berikut

    pembahasan untuk mendapatkan nilai 𝜃2 dan 𝜃1 dari contoh soal pada gambar 2.21.

    𝜃2 = 𝑎𝑟𝑐𝑜𝑠 ( 𝑥2 + 𝑦2 − 𝑙1

    2 − 𝑙22

    2 𝑙1 𝑙2 )

    𝜃2 = cos−1 (

    162 + 82 − 142 − 242

    2 𝑥 14 𝑥 24)

    𝜃2 = 132,269𝑜

    𝜃1 = 𝑎𝑟𝑐𝑠𝑖𝑛 ( 𝑙2 sin(𝜃2)

    √𝑥2 + 𝑦2 ) + 𝑎𝑟𝑐𝑡𝑎𝑛(

    𝑦

    𝑥 )

    𝜃1 = 𝑎𝑟𝑐𝑠𝑖𝑛 ( 24 sin(132,269)

    √162 + 82 ) + 𝑎𝑟𝑐𝑡𝑎𝑛(

    1

    16 )

    𝜃1 = 86,7𝑜

    Berdasarkan persoalan tersebut, dibutuhkan sudut putar pada 𝑙1 = 132,269𝑜, dan

    𝑙2 = 86,7𝑜 untuk dapat menuju dan mengambil benda.

    24 cm

    14 cm

    16 cm

    8 cm

    𝒍𝟏

    𝒍𝟐

    𝒙

    𝒚

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 27

    2.6. Aktuator Robot

    Istilah yang digunakan untuk mekanisme yang mengeerakkan lengan robot. Aktuator

    dapat berupa hidrolik dan pneumatic yang digunakan untuk mengendalikan persendian

    prismatik karena dapat menghasilkan gerakan linear secara langsung, atau pula actuator

    motor listrik yang menghasilkan gerakan rotasi. Penggerak yang umum digunakan pada saat

    ini adalah penggera motor servo. Penggerak motor ini lebih mudah dikontrol dibanding

    pergerakan lainya.

    2.6.1. Motor Servo

    Motor DC sering disebut ”motor servo”. Dalam realitanya, berbeda dengan motor

    DC. Motor servo merupakan motor DC yang mempunyai kualitas tinggi. Motor ini sudah

    dilengkapi dengan system control. Pada aplikasinya, motor servo sering digunakan sebagai

    control loop tertutup, sehingga dapat menangani perubahan posisi secara tepat dan akurat

    begitu juga dengan pengaturan kecepatan dan percepatan [1].

    Gambar 2.23. Model fisik motor servo [1].

    Bentuk fisik dari motor servo dapat dilihat pada gambar 2.23. Sistem pengkabelan

    motor servo terdiri dari 3 bagian, yaitu Vcc, Gnd, dan Kontrol (PWM). Penggunan 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 berhenti

    (kontrol posisi) [1].

    Motor servo dibedakan menjadi 2, yaitu continuous servo motor dan uncontinuous

    servo motor. Pada continuous servo motor, motor servo dapat berputar 360° sehingga

    memungkinkan untuk bergerak rotasi [1]. Untuk menggerakkan motor servo ke kanan atau

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 28

    ke kiri, tergantung dari nilai delay yang kita berikan. Untuk membuat servo pada posisi

    center, berikan pulsa 1.5ms. Untuk memutar servo ke kanan, berikan pulsa = 1ms untuk berputar ke kiri dengan delay 20ms, seperti ilustrasi pada gambar 2.24

    berikut :

    Gambar 2.24. Pensinyalan motor servo [1].

    2.6.2. PWM (Pulse width Modulation)

    Servo motor dikendalikan dengan memberikan inputan berupa PWM (Pulse Width

    Modulation). Sinyal PWM yang diberikan ke servo merupakan sinyal yang proporsional

    bersarnya terhadap posisi poros output servo tersebut. Secara spesifik, dalam perulangan 20

    ms, sinyal PWM sebesar 1 ms akan menghasilkan output shaft yang bergerak ke posisi paling

    kiri. Dengan perulangan yang sama, sinyal PWM sebesar 2 ms akan menghasilkan output

    shaft yang bergerak ke arah paling kanan. Dengan demikian, untuk sinyal PWM yang

    besarnya 1,5 ms akan menghasilkan posisi ditengah-tengah.

    2.7. Mikrokontroler AVR ATmega32

    ATmega32 termasuk dalam seri microcontroller unit (MCU) CMOS 8-bit keluarga

    AVR (Alf and Vegard’s Risch Processor) yang dirancang oleh Atmel berbasis arsitektur

    RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu

    siklus [12]. ATmega32 juga memiliki EEPROM dan RAM dua kali lebih besar dari

    ATMEGA16 yakni EEPPOM sebesar 1KB dan SRAM sebesar 2KB.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 29

    Beberapa fasilitas yang terdapat pada mikrokontroler Atmega32 antara lain:

    a) Kapasitas memori flash 32 KB, Internak SRAM (Static Random Acces Nenory) 2 K byte,

    dan EEPROM (Electrically Erasable Programmable Read Only Memory) 1024 byte.

    b) I/O sebanyak 32 buah, yang terdiri dari 4 port yaitu Port A, Port B, Port C, Port D.

    c) ADC (Analog to Digital) 10 bit sebanyak 8 channel.

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

    e) Unit interupsi internal dan eksternal.

    f) Empat saluran output PWM (Pulse Width Modulation).

    g) Port antarmuka SPI (Serial Peripheral Interface).

    h) Port USART (Universal Synchronous-Asynchronous Receiver Transmitter) untuk

    komunikasi serial.

    i) Komunikasi serial TWI (Two Wire Interface).

    j) Komparator analog.

    2.7.1. Diskripsi Mikrokontroler AVR ATmega32

    Konfigurasi Pin Mikrokontroller ATmega32 dengan desain 40 pin dapat dilihat pada

    gambar 2.25.

    Gambar 2.25. Konfigurasi Pin Mikrokontroler AVR Atmega [5].

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 30

    Penjelasan konfigurasi PIN pada mikrokontroler AVR ATmega 32 komputer, secara umum:

    a. Pin 1 sampai 8 (Port B) merupakan port parallel 8 bit dua arah (bidirectional), yang dapat

    digunakan untuk general purpose dan special feature.

    b. Pin 9 (Reset) jika terdapat minimum pulse pada saat active low.

    c. Pin 10 (VCC) dihubungkan ke Vcc (2,7 – 5,5 Volt).

    d. Pin 11 dan 31 (GND) dihubungkan ke Vss atau Ground.

    e. Pin 12 (XTAL 2) adalah pin masukkan ke rangkaian osilator internal. Sebuah osilator

    kristal atau sumber osilator luar dapat digunakan.

    f. Pin 13 (XTAL 1) adalah pin keluaran ke rangkaian osilator internal. Pin ini dipakai bila

    menggunakan osilator kristal.

    g. Pin 14 sampai 21 (Port D) adalah 8-bit dua arah (bi-directional I/O) port dengan internal

    pull-up resistors) digunakan untuk general purpose dan special feature.

    h. Pin 22 sampai 29 (Port C) adalah 8-bit dua arah (bi-directional I/O) port dengan internal

    pull-up resistors digunakan untuk general purpose dan special feature.

    i. Pin 30 adalah Avcc pin penyuplai daya untuk port A dan A/D converter dan dihubungkan

    ke Vcc. Jika ADC digunakan maka pin ini dihubungkan ke Vcc.

    j. Pin 32 adalah A REF pin yang berfungsi sebagai referensi untuk pin analog jika A/D

    Converter digunakan.

    k. Pin 33 sampai 40 (Port A) adalah 8-bit dua arah (bi-directional I/O) port dengan internal

    pull-up resistors digunakan untuk general purpose.

    2.7.2. Timer/Counter

    Timer / Counter adalah bagian mikrokontroller yang bersifat independen dari CPU,

    atau dengan kata lain tidak terpengaruh oleh kerja prosesor. Fungsi utama dari timer /

    counter seperti dengan namanya, yaitu sebagai pewaktu (timer) atau penghitung (counter)

    atau berfungsi untuk menciptakan periode waktu, menghitung waktu dan menghitung

    kejadian. Pada chip AVR, timer/counter dapat berfungsi untuk mementukan lebar pulsa atau

    untuk membangkitkan sinyal PWM (Pulse Width Modulation). Beberapa timer/counter pada

    AVR juga digunakan sebagai penyelarasan waktu (kalibrasi) pada aplikasi real time.

    timer/counter dibagi berdasarkan lebar register yang mengandung nilai waktu atau

    menghitung nilai [4].

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 31

    2.7.2.1. 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. Exsternal event counter

    6. Prescaler clock hingga 10 bit

    7. Membangkitkan interupsi saat timer overflow dana tau compare match

    Perhitungan overflow interrupt sebagai pembangkit PWM ditunjukkan pada

    persamaan 2.15, 2.16, dan 2.17 berikut [10].

    𝑇 =1

    𝑓 (2.15)

    𝑂𝑣𝑒𝑟𝑓𝑙𝑜𝑤 𝑖𝑛𝑡𝑒𝑟𝑟𝑢𝑝𝑡 = 𝑁 𝑥 256 𝑥 𝑇 (2.16)

    𝑂𝐶𝑅 = 𝑃𝑢𝑙𝑠𝑒

    𝑂𝑣𝑒𝑟𝑓𝑙𝑜𝑤 𝑖𝑛𝑡𝑒𝑟𝑟𝑢𝑝𝑡 (2.17)

    𝑃𝑢𝑙𝑠𝑒 = 𝑆𝑢𝑑𝑢𝑡

    180°+ 1 (2.18)

    Keterangan:

    f = frekuensi yang digunakan untuk eksekusi program

    T = periode

    N = prescaller yang digunakan

    OCR = nilai cacahan pulsa

    Pulse = lebar pulsa

    𝑆𝑢𝑑𝑢𝑡 = Lebar sudut motor servo

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 32

    Berikut merupakan mode-mode operasi timer [10].

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

    menghitung selang waktu.

    Gambar 2.26. Mode Phase Correct PWM [5]

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

    dimana nilai register counter (TCNT0) yang mencacah naik dan turun secara

    terus menerus akan selalu dibandingkan dengan register pembanding OCR0.

    Hasil perbandingan register TCNT0 dan OCR0 digunakan utnuk membangkitkan

    sinyal PWM yang dikeluarkan pada OC0 seperti ditunjukkan Gambar 2.23.

    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 dulum karena timer 0 dan 2

    maksimumnya 255, maka range OCR 0-255.

    d) Fast PWM, mode ini hamper sama dengan mode phase correct PWM, hanya

    perbedaanya adalah register counter TCNT0 mencacah naik saja dan tidak pernah

    mencacah turun seperti terlihat pada Gambar 2.27.

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 33

    Gambar 2.27. Mode Fast PWM [5].

    2.7.3. Komunikasi Serial USART

    Universal Synchronous and Asychrnous Serial and Transmitter (USART) adalah

    suatu piranti komunikasi serial yang fleksibel yang tersedia di dalam fitur mikrokontroler

    ATmega32. Pada proses inisialisasi setiap perangkat yang terhubung harus memiliki

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

    berikut:

    a) Operasi full duplex (mempunyai register reciver 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

    2.7.3.1. Inisialisasi USART

    Salah satu kelebihan menggunakan sistem USART dibandingkan dengan UART

    adalah pada operasi Full Duplex. Pada mikrokontroler AVR untuk mengaktifkan dan

    mengeset komunikasi USART dilakukan dengan cara mengaktifkan register-register yang

    digunakan untuk komunikasi USART. Dalam prosesinisialisasi, ada beberapa buah register

    yang perlu ditentukan nilainya, yaitu:

    PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

  • 34

    2.7.3.2. USART I/O Data