Prototipe pemilah bok berdasarkan ukuran menggunakan conveyor

(1)

TUGAS AKHIR

PROTOTIPE PEMILAH BOK BERDASARKAN UKURAN

MENGGUNKAN CONVEYOR

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 :

CANDRA OKTORA RIO SUSANTO NIM : 125114048

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(2)

ii

FINAL PROJECT

SORTING PROTOTYPE BASED ON BOX SIZE

USING CONVEYOR

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

CANDRA OKTORA RIO SUSANTO NIM :125114048

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA


(3)

(4)

(5)

v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO :

BELAJARLAH UNTUK MASA DEPAN KARENA SEMUA ILMU TIDAK

ADA YANG SIA-SIA,KARNA ILMU DIGUNAKAN SELAMNYA,

MENATAPLAH KEDEPAN,MASA DEPANMU MENANTI

Skripsi ini kupersembahkan untuk

Bapak, Ibu dan Kakakku

Buat Mbah Kung dan Mbah TI tercinta

Seseorang yang selalu sport saya

Teman-teman Seperjuangan Teknik Elektro 2012

Dan semua pihak yang telah membantu dalam proses penelitian ini


(6)

(7)

(8)

viii

INTISARI

Di dunia teknologi yang semakin berkembang pesat ini banyak sekali pengaruhnya pada kehidupan manusia. Oleh karena itu, agar dapat mempermudah pekerjaan manusia, conveyor pintar dibuat dengan tujuan meringankan pekerjaan manusia dan memisahkan benda berdasarkan bentuk dan warna serta mengurangi resiko terjadinya kecelakaan pada manusia.

Conveyor ini berkerja secara otomatis sebagai pemisah benda berdasarkan ukuran menggunakan ATmega32 yang terdiri dari minimum sistem yang berfungsi untuk mengontrol pergerakan conveyor satu dan conveyor dua, GUI pada software MATLAB yang digunakan untuk menampilkan nilai biner, mencari luasan bok dan jumlah bok yang terdeteksi. Data citra biner yang dihasilkan oleh webcam Logitech C170H. Benda tersebut diletakkan pada conveyor satu dan dihantar ke conveyor dua sebagai penerima.

Hasil dari penelitian ini adalah conveyor sudah mampu melakukan kegiatan pengidentifikasi terhadap bok dan nilai biner secara akurat dan baik. Dibagian mekaniknya conveyor ini sudah bisa melakukan pemilahan bok berdasarkan ukuran kedalam tempat yang telah disiapkan di conveyor dua.


(9)

ix

ABSTRACT

In a world of rapidly evolving technology that is getting a lot of influence on human life. Therefore, in order to facilitate the work of human beings, intelligent conveyor made with the goal of easing the work of human and separates objects based on shape and color as well as reducing the risk of accidents in human.

This conveyor work automatically as the dividing objects by size using ATmega32 consisting of minimum system that functions to control the movement of the conveyor one and the conveyor two, GUI in MATLAB software is used to display the binary values, explore the extent of the box and the box number is detected. Binary image data generated by Logitech webcam C170H. The object is placed on the conveyor to conveyor one as delivered and two as receivers.

The results of this study are already capable of conducting conveyor identifiers of the box and the binary value accurately and well. The mechanical conveyor section has been able to do sorting boxes by size into a place that had been prepared in the conveyor two.


(10)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Allah atas segala rahmat-Nya. Berkat Kasih dan KaruniaNya selama menjalani proses pembuatan tugas akhir ini, penulis dapat

menyelesaikan tugas akhir dengan judul “Prototipe Pemilah Bok Berdasarkan Ukuran Menggunakan Conveyor”.

Tugas akhir ini disusun untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik (S.T) bagi mahasiswa program S-1 Jurusan Teknik Elektro Universitas Sanata Dharma Yogyakarta. Selama proses penyusunan proposal ini, penulis banyak mendapat bantuan dan dukungan dari berbagai pihak, untuk itu penulis mengucapkan terimakasih kepada:

1. Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro Universitas Sanata Dharma Yogyakarta.

2. Bapak Dr.Ir. Linggo Sumarno.M,.T. selaku Dosen Pembimbing tugas akhir yang telah banyak meluangkan waktu untuk memberikan bimbingan.

3. Ibu Wiwien Widyastuti, S.T.,M.T. dan Bapak Dr.Ir. Iswanjono.M,.T., yang telah memberikan saran dan kritik dalam menyelesaikan penulisan tugas akhir.

4. Seluruh dosen Teknik Elektro yang telah memberikan ilmu yang bermanfaat kepada penulis selama kuliah.

5. Bapak, ibu dan Kakakku yang telah memberikan perhatian dan dukungan.

6. Keluargaku tercinta Mbah Ti dan Mbah Kung yang selalu mendoakan dan terus memberikan semangat dalam mengerjakan.

7. Seluruh teman-teman prodi Teknik Elektro angkatan 2012 atas kerjasama dan kebersamaannya selama menjalani studi.

8. Kawan-kawan penggembira dan penyemangat dalam bekerja yang memberikan dukungan.

9. Semua pihak yang tidak bisa penulis sebutkan satu per satu atas bantuan, bimbingan, kritik dan saran.


(11)

(12)

xii

DAFTAR ISI

Halaman Sampul(Bahasa Indonesia) ... i

Halaman Sampul(Bahasa Inggris) ... ii

Lembar Persetujuan ... iii

Lembar Pengesahan ... iv

Halaman Persembahan ... v

Lembar Pernyataan Keaslian Karya ... vi

Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah ... vii

Intisari ... viii

Abstract ... ix

Kata Pengantar ... x

Daftar Isi ... xii

Daftar Gambar ... xvi

Daftar Tabel ... xix

BAB I PENDAHULUAN

1.1 Latar Belakang ... 1

1.2 Tujuan dan Manfaat ... 1

1.3 Batasan Masalah ... 2

1.4 Metodologi Penelitian ... 2

BAB II DASAR TEORI

2.1 Belt Conveyor... 4

2.1.1 Bagian – Bagian Belt Conveyor... 5

2.2 Pengertian Motor DC... 7

2.2.1 Prinsip Dasar Cara Kerja Motor DC ... 8

2.3 Rangkaian Driver Motor DC ... 9

2.4 Limit Swicth ... 11

2.5 Mikrokontroler AVR ATmega32 ... 12

2.5.1 Arsitektur AVR ATmega32... 13

2.5.2 Diskripsi Mikrokontroler ATmega32 ... 13


(13)

xiii

2.5.3.a Memori Program ... 15

2.5.3.a Memori Data ... 15

2.5.4 Interupsi ... 16

2.5.5 Timer/Counter ... 16

2.5.6 Timer/Counter ... 17

2.5.7 Komunikasi Serial USART ... 19

2.5.7.a Inisialisasi USART ... 20

2.5.7.b USART I/O Data Register (UDR) ... 20

2.5.7.c USART Control and status Register A (USCRA) ... 20

2.5.7.d USART Control and status Register B (UCSRB) ... 22

2.5.7.e USART Control and Status Register C (USCRC) ... 24

2.6 Regulator IC 78xx dan Transistor Penguat Arus ... 25

2.7 Photodioda ... 27

2.8 Infrared ... 30

2.9 Webcam ... 31

2.10 Benda Tiga Dimensi ... 31

2.11 Pengolahan Citra Digital ... 32

2.12 Pemrosesan Citra ... 33

2.12.1 Citra Grayscale ... 33

2.12.2 Cropping ... 34

2.12.3 Citra Biner ... 34

2.12.4 Resizing ... 34

2.12.5 Metode Pengenalan Benda ... 35

BAB III RANCANGAN PENELITIAN

3.1 Proses Kerja sistem ... 37

3.2 Perancangan Mekanik Conveyor ... 38

3.2.1 Conveyor ... 40

3.3 Perancangan Perangkat Keras ... 41

3.3.1 Rangkaian Sensor Cahaya ... 41

3.2.2 Rangkaian Minimum System ATmega32 ... 43

3.3.3 Regulator dan Penguat Arus ... 44


(14)

xiv

3.3.5 Motor DC ... 46

3.3.6 Rangkaian Relay ... 46

3.3.7 Benda Tiga Dimensi ... 47

3.4 Perancangan Perangkat Lunak (software) ... 47

3.4.1 Flowchart Program Pengenalan Box Pada MATLAB ... 50

3.4.2 Perancangan GUI MATLAB ... 51

BAB IV HASIL DAN PEMBAHASAN

4.1 Bentuk Fisik dan Sistem Kerja Conveyor... 52

4.2 Penjelasan Program Aplikasi Matlab ... 54

4.2.1 Penjelasan dan Langkah Awal Untuk Program Pengenalan Untuk Box ... 54

4.2.2 Penjelasan Program Matlab ... 57

4.2.2.1 Tampilan Gui Matlab... 57

4.2.2.2 Inisialisasi Komunikasi Serial ... 58

4.2.2.3 Inisialisasi Webcam ... 59

4.2.2.4 Proses Pengenalan Citra ... 59

4.2.2.5 Proses Pengenalan Bentuk Benda ... 60

4.2.3 Penjelasan Program AVR ... 62

4.2.3.1 Pengendali Sensor Photodioda ... 62

4.2.3.2 Pengendali Komunikasi USART ... 63

4.2.3.3 Pengendali Motor DC ... 63

4.2.3.4 Program Utama ... 65

4.3 Pengujian Nilai Citra Biner Berbentuk Bok ... 66

4.3.1 Pengujian Pengenalan Ukuran Bok ... 66

4.3.2 Pengujian Keberhasilan Sistem Mendeteksi Bok ... 68

4.3.4 Pengujian Sensor Ketinggian Photodioda ... 71

4.4 Analisa ... 71

4.4.1 Pembahasan Mekanik ... 71

4.4.2 Pembahasan Software ... 72

BAB V KESIMPULAN

5.1 Kesimpulan ... 73


(15)

xv

5.2 Saran ... 73 DAFTAR PUSTAKA ... ... 74 LAMPIRAN ... L1


(16)

xvi

DAFTAR GAMBAR

Halaman

Gambar 2.1 Contoh Conveyor ... 4

Gambar 2.2 Bagian – bagian Conveyor ... 5

Gambar 2.3 Impact roller ... 6

Gambar 2.4 Lebar Belt kecil ... 7

Gambar 2.5 Lebar Belt Besar ... 7

Gambar 2.6 Cara Kerja Motor DC ... 8

Gambar 2.7 Rangkaian Motor DC H-Bridge Transistor ... 10

Gambar 2.8 Simbol dan Bentuk Limit Switch ... 11

Gambar 2.9 Kontstruksi dan Simbol Limit Swicth ... 11

Gambar 2.10 Konfigurasi Pin Mikrokontroler ATmega32 ... 14

Gambar 2.11 Mode Phase Correct PWM ... 18

Gambar 2.12 Mode Fast PWM ... 19

Gambar 2.13 Register UDR... 20

Gambar 2.14 Register UCSRA ... 20

Gambar 2.15 Register UCSRB ... 22

Gambar 2.16 Register UCRRC ... 24

Gambar 2.17 Rangkaian Umum Regulator ... 26

Gambar 2.18 Rangkaian Catu Daya Penguat ... 26

Gambar 2.19 Simbol dan Bentuk Photodioda ... 28

Gambar 2.20 Respon Relatif Spektral Untuk Si, Ge, dan Selenium Dibandingkan dengan Mata Manusia ... 28

Gambar 2.21 Hubungan Iλ Dengan Fc Pada Photodioda ... 29

Gambar 2.22 Aplikasi Sensor Photodioda ... 29

Gambar 2.23 Rangkaian Sensor Photodioda ... 30

Gambar 2.24 Contoh Webcam ... 31

Gambar 2.25 Contoh Benda Tiga Dimensi ... 32

Gambar 2.26 Contoh koordinat Citra Digital ... 33

Gambar 2.27 Citra Skala Keabuan ... 34

Gambar 2.28 Contoh Citra Biner ... 34

Gambar 2.29 Contoh Citra Biner 8x8 Kotak Pixel ... 35


(17)

xvii

Gambar 3.1 Blok Diagram Sistem ... 37

Gambar 3.2 Perancangan Conveyor ... 38

Gambar 3.3 Posisi Conveyor Berjalan ... 38

Gambar 3.4 Conveyor Satu Tampak dari Samping ... 39

Gambar 3.5 Conveyor Dua Tampak dari Depan ... 39

Gambar 3.6 Conveyor Dua Dari Samping ... 40

Gambar 3.7 Rangkaian Sensor Photodioda ... 42

Gambar 3.8 Rangkaian Osilator ATmega32 ... 43

Gambar 3.9 Rangkaian Reset ATmega32 ... 44

Gambar 3.10 Rangkaian Regulator 5v dan B. Regulator 24v ... 45

Gambar 3.11 Rangkaian Motor DC ... 46

Gambar 3.12 Rangkaian Rellay ... 46

Gambar 3.13 Bentuk Box ... 47

Gambar 3.14 Flochart Keseluruhan Sistem ... 48

Gambar 3.15 Flochart Lanjutan 3.13 ... 49

Gambar 3.16 Flochart MATLAB ... 50

Gambar 3.17 Perancangan GUI pada MATLAB ... 51

Gambar 4.1 Conveyor Satu dan Dua ... 52

Gambar 4.2 Rangkaian Minimum system ... 53

Gambar 4.3 Rangakaian Photodioda ... 53

Gambar 4.4 Rangkaian Motor Driver... 53

Gambar 4.5 Rangkaian Relay ... 53

Gambar 4.6 Semple Bok ... 53

Gambar 4.7 Tempat Untuk Menempatkan Bok... 53

Gambar 4.8 Menu matlab ... 55

Gambar 4.9 Tampiln Guide Quick Start ... 55

Gambar 4.10 Gambar tampilan GUI Pengenalan Bentuk Bok ... 56

Gambar 4.11 Tampilan Program Setelah di RUN ... 56

Gambar 4.12 Tampilan GUI MATLAB ... 57

Gambar 4.13 Tampilan GUI Matlab ... 57

Gambar 4.14 Listing Program Inisialisasi Komunikasi ... 58

Gambar 4.15 Listing Program Inisialisasi Webcam ... 59


(18)

xviii

Gambar 4.17 Listing Program Pengenalan Bentuk Benda ... 61

Gambar 4.18 Listing Program pengendali Conveyor ... 62

Gambar 4.19 Listing Program Komunikasi USART ... 63

Gambar 4.20 Listing Program Pengendali Putaran Motor ... 63

Gambar 4.21 Insisialisasi Program ... 64

Gambar 4.22 Pemberian Nilai count ... 64

Gambar 4.23 Pengerak Motor DC ... 65

Gambar 4.24 Program Utama ... 65

Gambar 4.25 Grafik Data Biner ... 67

Gambar 4.26 Hasil deteksi bok 1... 69

Gambar 4.27 Hasil deteksi bok 2... 70

Gambar 4.28 Hasil deteksi bok 3... 70

Gambar 4.29 Hasil deteksi bok 4... 70


(19)

xix

DAFTAR TABEL

Halaman

Tabel 2.1 Hubungan PIN dan Interupsi ... 17

Tabel 2.2 Penentuan Ukuran Karakter ... 23

Tabel 2.3 Karakteristik Regulator Tegangan ic 78xx ... 25

Tabel 2.4 Hubungan Arus Dengan Hambatan ... 30

Tabel 4.1 Data Citra Biner Masing-Masing Bentuk Bok ... 67

Tabel 4.2 Pengujian Keberhasilan Sistem Mendeteksi Bok ... 68


(20)

(21)

1

BAB I

PENDAHULUAN

1.1.

Latar Belakang

Penelitian sebelumnya dengan cara menggunakan lengan robot yang secara keseluruhan yaitu mula-mula benda diletakan diatas conveyor yang akan membawa benda ke arah webcam untuk diproses dan dikenali bentuknya. Setelah benda yang sudah dikenali, maka lengan robot sebagai alat bantu untuk memilah atau mengambil benda tersebut kemudian meletakan pada tempat yang telah ditentukan [1]. Penelitian ini dilakukan oleh Irvan Hasan pada 2015

Perbedaan dari penelitian sebelumnya yaitu Irvan menggunakan lengan robot dan conveyor sedangkan ini dengan dua conveyor untuk memilah bok yang berdasarkan ukuran luasan dan ketinggian. Mula – mula bok diletakan diatas conveyor satu lalu bergerak mendekati sensor webcam untuk mendeteksi luasan bok tersebut dan photodioda untuk mengukur ketinggian dari bok tersbut lalu data dari sensor diproses dimatlab lalu dihubungkan ke ATmega32 untuk menjalan conveyor dua, conveyor dua akan berjalan setelah data diconveyor satu diproses untuk meletakan menjatuhkan atau menempatkan bok kekotak yang sesudah disediakan diconveyor dua, dan kotak diconveyor dua sebagai alat bantu untuk meletakan bok tersebut. Di conveyor dua diberi lima sensor photodioda dan limit switch, untuk menghentikan kotak di conveyor dua yang sesuai diinginkan dan limit switch untuk membantu menghentiakan conveyor dua diposisi semula lagi.

1.2.

Tujuan dan Manfaat

Tujuan pembuatan alat ini adalah untuk membuat prototipe pemilah bok berdasarkan ukuran dengan luasan dan ketinggian box menggunakan conveyor. Manfaat dari alat ini adalah :

1) Dapat memilah 5 bok berdasarkan ukurannya.

2) Sebagai alat bantu untuk memonitoring proses mesin ketika mesin berada jauh dengan ruang controlstation, untuk membantu pekerjaan manusia.

3) Menjadi pembelajaran, rujukan,untuk bahan pertimbangan yang akan dijadikan alat yang sebenarnya dan proses monitoring mesin.


(22)

1.3.

Batasan Masalah

Agar tugas akhir ini mengarah pada tujuan untuk menghindari terlalu kompleknya masalah yang muncul, maka perlu adanya batasan masalah yang sesuai dengan tugas akhir ini. Adapun batasan masalah :

1) Ada 5 macam ukuran bok dengan ukuran dibawah ini : Bok 1. 16cm x 5cm (l x t)

Bok 2. 16cm x 10cm (l x t) Bok 3. 32cm x 5cm (l x t).. Bok 4. 32cm x 10cm (l x t).. Bok 5. Ukuran bok tidak sesuai.

2) Deteksi luasan menggunakan webcam . 3) Deteksi tinggi menggunakan photodioda.

4) Pemilahan bok menggunakan 2 conveyor. Conveyor 1 untuk mengidentifikasi tinggi dan luasan bok, conveyor 2 untuk menempatkan bok.

1.4. Metode Penelitian

Langkah

langkah yang dilakukan dalam pengerjaan tugas akhir yaitu :

1) Pengumpulan bahan – bahan referensi berupa buku, jurnal, artikel, dan internet yang

membahas mengenai image processing dengan MATLAB, conveyor, pemprograman dengan code vision AVR, Atemega32.

2) Perancangan hardware dan software

Tahap ini merupakan perancangan desain prototipe conveyor beserta skema – skema rangkain pendukung dan pembuatan flowchart untuk memprogram Atmega32 dan MATLAB.

3) Pembuatan hardware dan software. Tahapan ini berisi tentang pembuatan alat sesuai deangan desain prototipe conveyor yang telah dirancang beserta program – program yang mengacu pada flowchart yang telah dibuat pada rancangan.

4) Proses pengambilan data. Teknik pengambilan data dilakukan dengan mencari data pada masing – masing benda, melihat taggapan sistem dalam mendeteksi benda, pada prototipe conveyor, dan keakuratan sensor pada prototipe conveyor saat memisahkan benda.


(23)

5) Analisis dan penyimpulan hasil percobaan, Analisis data dilakukan membandingkan data yang di ambil dengan data dari sumber sebelumnya.


(24)

4

BAB II

DASAR TEORI

2.1.

Belt Conveyor

Belt Conveyor adalah suatu sistem mekanik yang mempunyai fungsi memindahkan barang dari satu tempat ke tempat yang lain. Conveyor banyak dipakai di industri untuk transportasi barang yang jumlahnya sangat banyak dan berkelanjutan.. Alat tersebut terdiri dari sabuk yang tahan terhadap pengangkutan benda padat. Sabuk yang digunakan pada belt conveyor ini dapat dibuat dari berbagai jenis bahan. Misalnya dari karet, plastik, kulit ataupun logam yang tergantung dari jenis dan sifat bahan yang akan diangkut. Untuk mengangkut bahan - bahan yang panas, sabuk yang digunakan terbuat dari logam yang tahan terhadap panas [2]. Contoh gambar dapat dilihat pada gambar 2.1.

Gambar 2.1. Contoh Conveyor [2].

Konstruksi dari belt conveyor adalah :

1. Konstruksi arah pangangkutan horizontal.

2. Konstruksi arah pengangkutan diagonal atau miring.

3. Konstruksi arah pengangkutan horizontal dan diagonal.

Karakteristik dan performance dari belt conveyor yaitu :


(25)

2. Sampai dengan 18‟.

3. Sabuk disanggah oleh plat roller untuk membawa bahan.

4. Kapasitas tinggi.

5. Serba guna.

6. Dapat beroperasi secara continiue.

7. Kapasitas dapat diatur.

8. Kecepatannya sampai dengan 600 ft/m.

9. Dapat naik turun.

10.Perawatan mudah.

Kelemahan - kelemahan dari belt conveyor antara lain :

1. Jaraknya telah tertentu.

2. Biaya relatif mahal.

3. Sudut inklinasi terbatas.

2.1.1.Bagian – bagian BeltConveyor

Gambar 2.2. Bagian-bagian conveyor [2].

Kalau belt panjang, perlu dipakai training roller, kalau belt pendek tanpa training


(26)

belt menerima beban maksimum, sehingga belt dapat menyentuh training dan akibatnya arusnya terputus.fungsi bagian-bagian conveyor :

1. Feed hopper berfungsi untuk menjaga agar bahan dapat dibatasi untuk melebihi kapasitas pada waktu inlet.

2. Outlet chuter berfungsi untuk pengeluaran material.

3. Idle drum berfungsi mengikuti putaran drum yang lain.

4. Take up berfungsi untuk mengatur tegangan ban agar selalu melekat pada drum, karena semakin lama ban dipakai akan bertambah panjang, kalau tidak diatur ketegangannya ban akan menjadi kendor.

5. Belt cleaner berfungsi untuk membersikan belt agar belt selalu dalam keadaan bersih.

6. Skrapper depan berfungsi agar jangan sampai ada material masuk pada idle drum dengan belt.

7. Impact roller (rol penyangga utama), berfungsi agar menjaga kemungkinan belt kena pukulan beban, misalnya , beban yang keras, maka umumnya bagian depan sering diberi sprocket dari karet sehingga belt bertahan lama. Contoh gambar dapat diihat pada gambar 2.3.


(27)

Banyaknya roll penyangga utama :

1. Roll tunggal, berfungsi untuk mengangkut material berupa unit.

2. Roll ganda, berfungsi supaya pengangkutan mencapai beban maksimum dan material tidak menjadi tumpah [2].

1. Untuk ukuran lebar belt yang cukup kecil.

Gambar 2.4. Lebar belt kecil [2].

2. Untuk ukuran lebar belt yang cukup lebar.

Gambar 2.5. Lebar belt besar [2].

Semakin kecil ukuran lebar belt, maka semakin kaku, karena tebal belt lebih besar. Kalau semakin luas lebar belt, maka semakin lemas, sehingga sering digunakan 5 roll, agar kelengkungan roll sesuai dengan keadaannya.

2.2. Pengertian Motor DC

Motor listrik merupakan perangkat elektromagnetis yang mengubah energi listrik menjadi energi mekanik. Motor DC memerlukan suplai tegangan yang searah pada kumparan


(28)

medan untuk diubah menjadi energi mekanik. Kumparan medan pada motor dc disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Jika terjadi putaran pada kumparan jangkar dalam pada medan magnet, maka akan timbul tegangan (GGL) yang berubah-ubah arah pada setiap setengah putaran, sehingga merupakan tegangan bolak-balik. Prinsip kerja dari arus searah adalah membalik phasa tegangan dari gelombang yang mempunyai nilai positif dengan menggunakan komutator, dengan demikian arus yang berbalik arah dengan kumparan jangkar yang berputar dalam medan magnet. Bentuk motor paling sederhana memiliki kumparan satu lilitan yang bisa berputar bebas di antara kutub-kutub magnet permanenp [4].

Catu tegangan dc dari baterai menuju ke lilitan melalui sikat yang menyentuh komutator, dua segmen yang terhubung dengan dua ujung lilitan. Kumparan satu lilitan pada gambar di atas disebut angker dinamo. Angker dinamo adalah sebutan untuk komponen yang berputar di antara medan magnet.

2.2.1. Prinsip Dasar Cara Kerja Motor DC

Jika arus lewat suatu konduktor, timbu medan magnet di sekitar konduktor. Arah medan magnet ditentukan aliran arus pda konduktor. Dapat dilihat pada gambar 2.6.

Gambar 2.6. Cara Kerja Motor DC [4].

Aturan Genggaman Tangan Kanan bisa dipakai untuk menentukan arah garis fluks di sekitar konduktor. Genggam konduktor dengan tangan kanan dengan jempol mengarah pada arah aliran arus, maka jari-jari anda akan menunjukkan arah garis fluks [4].


(29)

2. Jika kawat yang membawa arus dibengkokkan menjadi sebuah lingkaran / loop, maka kedua sisi loop, yaitu pada sudut kanan medan magnet, akan mendapatkan gaya pada arah yang berlawanan.

3. Pasangan gaya menghasilkan tenaga putar / torque untuk memutar kumparan. 4. Motor-motor memiliki beberapa loop pada dinamonya untuk memberikan tenaga

putaran yang lebih seragam dan medan magnetnya dihasilkan oleh susunan elektromagnetik yang disebut kumparan medan.

Pada motor dc, daerah kumparan medan yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konversi darienergi listrik menjadi energi mekanik (motor) maupun sebaliknya berlangsung melaluimedan magnet, dengan demikian medan magnet disini selain berfungsi sebagai tempatuntuk menyimpan energi, sekaligus sebagai tempat berlangsungnya proses perubahanenergi.

Dalam memahami sebuah motor, penting untuk mengerti apa yang dimaksud dengan beban motor. Beban dalam hal ini mengacu kepada keluaran tenaga putar / torque sesuai dengan kecepatan yang diperlukan. Beban umumnya dapat dikategorikan ke dalam tiga kelompok :

1. Beban torque konstan adalah beban dimana permintaan keluaran energinya

bervariasi dengan kecepatan operasinya namun torquenya tidak bervariasi. Contoh beban dengan torque konstan adalah corveyor, rotary kilns, dan pompa displacement konstan.

2. Beban dengan variabel torque adalah beban dengan torque yang bervariasi dengankecepatn operasi. Contoh beban dengan variabel torque adalah pompa sentrifugal dan fan (torque bervariasi sebagai kuadrat kecepatan).

3. Beban dengan energi konstan adalah beban dengan permintaan torque yang

berubah dan berbanding terbalik dengan kecepatan. Contoh untuk beban dengan daya konstan adalah peralatan-peralatan mesin.

2.3.

Rangkaian

Driver

Motor DC

Driver motor DC dalam artikel ini adalah Driver motor DC tipe H-Bridge menggunakan power Driver berupa transistor. Rangkaian Driver motor DC H-Bridge transistor ini dapat mengendalikan arah putaran motor DC dalam 2 arah dan dapat dikontrol


(30)

dengan metode PWM (pulse Width Modulation) maupun metode sinyal logika dasar TTL (High) dan (Low). Untuk pengendalian motor DC dengan metode PWM maka dengan rangkaian Driver motor DC ini kecepatan putaran motor DC dapat dikendalikan dengan baik. Apabila menggunakan metode logika TTL 0 dan 1 maka rangkaian ini hanya dapat mengendalikan arah putaran motor DC saja dengan kecepatan putaran motor DC maksimum. Rangkaian Driver motor DC H-Bridge ini menggunakan rangkaian jembatan transistor 4 unit dengan proteci impuls tegangan induksi motor DC berupa dioda yang dipasang paralel dengan masing-masing transistor secara reverse bias [5]. Rangkaian Driver motor DC secara detil dapat dilihat pada gambar 2.7.

2.7. Rangkaian Driver Motor DC H-Bridge Transistor [5].

Proses mengendalikan motor DC menggunakan rangkaian Driver motor DC H-Bridge diatas dapat diuraikan dalam beberapa bagian sebagai berikut : Driver Motor DC dengan metode logika TTL (0 dan 1) atau High dan Low hanya dapat mengendalikan arah putar motor DC dalam 2 arah tanpa pengendalian kecepatan putaran (kepatan maksimum). untuk mengendalikan motor DC dalam 2 arah dengan rangkaian Driver motor dc h-bridge diatas konfiguarasi kontrol pada jalur input adalah dengan memberikan input berupa logika TTL ke jalur input A dan B.


(31)

a. Untuk mengendalikan arah putar searah jarum jam adalah dengan memberikan logika TTL 1 (high) pada jalur input A dan logika TTL 0 (low) pada jalur input B.

b. Untuk mengendalikan arah putar berlawanan arah jarum jam adalah dengan memberikan logika TTL 1 (high) pada jalur input B dan logika TTL 0 (low) pada jalur input A.

Driver motor DC dengan metode PWM (Pulse Width Modulation) dapat mengendalikan arah putaran motor DC dan kecepatan motor DC menggunakan pulsa PWM yang diberikan ke jalur input A dan B, dimana konfigurasi sinyal kontrol sebagai berikut.

a. Untuk mengendalikan arah putar motor DC searah jarum jam dengan kecepatan dikendalikan pulsa PWM maka jalur input B selalu diberikan logikan TTL 0 (Low) dan jalur input A diberikan pulsa PWM.

b. Untuk mengendalikan arah putar motor DC berlawanan arah jarum jam dengan kecepatan dikendalikan pulsa PWM maka jalur input A selalu diberikan logikan TTL 0 (Low) dan jalur input B diberikan pulsa PWM.

Kecepatan putaran motor DC dikendalikan oleh persentasi ton-duty cycle pulsa PWM yang diberikan ke jalur input rangkaian Driver motor DC h-bridge transistor diatas [5].

2.4.

Limit Switch

Limit switch merupakan jenis saklar yang dilengkapi dengan katup yang berfungsi menggantikan tombol. Prinsip kerja limit switch sama seperti saklar Push ON yaitu hanya akan menghubung pada saat katupnya ditekan pada batas penekanan tertentu yang telah ditentukan dan akan memutus saat saat katup tidak ditekan. Limit switch termasuk dalam kategori sensor mekanis yaitu sensor yang akan memberikan perubahan elektrik saat terjadi perubahan mekanik pada sensor tersebut [6]. Penerapan dari limit switch adalah sebagai sensor posisi suatu benda (objek) yang bergerak . Simbol limit switch ditunjukan pada gambar 2.8.


(32)

Gambar 2.8. Simbol dan Bentuk Limit Switch [6].

Limit switch umumnya digunakan untuk :

1. Memutuskan dan menghubungkan rangkaian menggunakan objek atau benda lain. 2. Menghidupkan daya yang besar, dengan sarana yang kecil.

3. Sebagai sensor posisi atau kondisi suatu objek.

Prinsip kerja limit switch diaktifkan dengan penekanan pada tombolnya pada batas/daerah yang telah ditentukan sebelumnya sehingga terjadi pemutusan atau penghubungan rangkaian dari rangkaian tersebut. Limit switch memiliki 2 kontak yaitu NO (Normally Open) dan kontak NC (Normally Close) dimana salah satu kontak akan aktif jika tombolnya tertekan. Konstruksi dan simbol limit switch dapat dilihat seperti gambar 2.9.

Gambar 2.9. Konstruksi Dan Simbol Limit Switch [6].

2.5.

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


(33)

dieksekusi dalam satu siklus clock dan mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interupsi internal dan eksternal, serial UART, programmable Watchdog Timer, dan power saving mode. AVR juga mempunyai ADC, PWM internal dan In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang [7] .

2.5.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.5.2. Deskripsi Mikrokontroler ATmega32

Konfigurasi Pin Mikrokontroller ATmega32 dengan kemasan 40 pin DIP (dual in-line package) dapat dilihat pada Gambar 2.10. Untuk memaksimalkan performa dan paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan


(34)

data). Ketika sebuah instruksi sedang dikerjakan maka instruksi berikutnya diambil dari memori program [7].

Gambar 2.10. Konfigurasi Pin Mikrokontroler ATmega32 [7].

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


(35)

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

T = R x C (2.1)

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

a. Memori Program

Kode program disimpan dalam flash memory, yaitu memori jenis non-volatile yang tidak akan hilang datanya meskipun catu daya dimatikan. 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 boot program dan bagian aplikasi program.

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


(36)

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

2.5.4.

Interupsi

Interupsi adalah suatu kondisi dimana mikrokontroler akan berhenti sementara dari program utama untuk melayani instruksi-instruksi pada interupsi kemudian kembali mengerjakan instruksi program utama setelah instruksi-instruksi pada interupsi selesai dikerjakan [8]. Tabel dapat dilihat 2.1.

Table 2.1. Hubungan PIN dan Interupsi [7].

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

2.5.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 bit), Timer/Counter 1 (16 bit), dan Timer/Counter 2 (8 bit) [8].


(37)

2.5.6.

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 .

(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


(38)

a) Mode normal, timer digunakan untuk menghitung saja, membuat delay, dan mengitung selang waktu.

Gambar 2.11. Mode Phase Correct PWM [7].

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

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


(39)

Gambar 2.12. Mode Fast PWM [7].

2.5.7.

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 hampir sama, data dikirim disertai informasi sinkronisasi [7].

Pada proses inisialisasi ini setiap perangkat yang terhubung harus memiliki baudrate yang sama. Beberapa fasilitas yang disediakan USART AVR adalah sebagai berikut:


(40)

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.

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

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

Gambar 2.13. Register UDR [7].

c. USART Control and Status Register A (UCSRA)


(41)

Penjelasan bit penyusun UCSRA :

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.


(42)

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 oleh USART tidak mengandung informasi alamat akan diabaikan.

d. USART Control and Status Register B (UCSRB)

Gambar 2.15. Register UCSRB [7].

Penjelasan bit penyusun UCSRB :

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.


(43)

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 untuk memilih tipe lebar data bit yang digunakan. Tabel dapat dilihat 2.2

Tabel 2.2. Penentuan Ukuran Karakter [7].

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.


(44)

Bit ini digunakan sebagai bit ke-8 ketika menggunakan format data 9-10 bit, dan bit ini harus ditulis dahulu sebelum membaca UDR.

e. USART Control and Status Register C (UCSRC)

Gambar 2.16. Register UCSRC [7].

Penjelasan bit penyusun UCSRC :

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)

Bit yang berfungsi untuk memilih jumlah stop bit yang akan digunakan.

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.


(45)

Bit yang berguna hanya untuk modus sinkron. Bit in berhubungan dengan perubahan data keluaran dan sampel masukkan, dan clock sinkron (XCK).

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 [9]. Spesifikasi ic regulator seri 78xx dapat dilihat pada tabel 2.3.

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

Tipe 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


(46)

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

(2.5)

(2.6)

Komponen eksternal yang digunakan yaitu transistor 2N3055 karena kemampuan arus maksimal adalah 15 A . Untuk gambar rangkaian lengkap dengan ic regulator dapat ditunjukan gambar 2.18.


(47)

Dari gambar 2.18, maka diperleh persamaan-persamaan sebagai berikut :

VB = Vreg + VD (2.7)

Tegangan keluaran rangkaian menjadi,

Vo = Vreg – VBE (2.8)

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 :

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.


(48)

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

Photodioda digunakan sebagai penangkap gelombang cahaya yang dipancarkan oleh infrared. Besarnya tegangan atau arus listrik yang dihasilkan oleh photodioda tergantung besar kecilnya radiasi yang dipancarkan oleh infrared.

Gambar 2.19. Simbol dan Bentuk Photodioda [11].

Gambar 2.20. Respon Relatif Spektral Untuk Si, Ge, dan Selenium Dibandingkan Dengan Mata Manusia [11].


(49)

Gambar 2.21. Hubungan Iλ Dengan Fc Pada Photodioda [11].

Grafik pada gambar 2.21 menunjukan bahwa arus maksimal pada sensor photodioda adalah sebesar 800 µA, sehingga untuk penentuan nilai hambatan agar arus sensor photodioda tidak terlalu besar yaitu :

(2.14)


(50)

Sehingga nilai hambatan untuk sensor photodioda dengan asumsi bahwa Vcc = 5 Volt dapat dilihat pada tabel 2.4.

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

Gambar 2.23. Rangkaian Sensor Photodioda.

2.8.

Infrared

Infrared merupakan suatu komponen elektronika yang merupakan sumber cahaya dengan panjang gelombang 750nm-1000nm dan arus maksimal sebesar 100 mA. Aplikasi infrared biasa dijumpai pada modul sensor yang berhubungan dengan cahay seperti photodioda dan photo transistor [11]. Menurut gambar 2.20, infrared merupakan sumber cahaya yang paling baik untuk sumber sensor cahaya. Penentuan nilai hambatan untuk infrared dengan asumsi Vcc = 5 Volt yaitu :


(51)

sehingga, R =

= 50 Ω

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

infra red tidak berlebihan arus.

2.9.

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. Contoh webcam ditunjukan gambar 2.24 yaitu webcam Logitech c170.


(52)

2.10.

Benda Tiga Dimensi

Benda 3 dimensi merupakan benda yang mempunyai banyak ruang atau volume sehingga benda akan tampak lebih nyata. Benda 3 dimensi memiliki ukuran panjang, lebar, dan tinggi. Dapat dilihat pada contoh benda 3 dimensi pada gambar 2.25.

Gambar 2.25. Contoh Benda Tiga Dimensi [13].

2.11.

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 meningkatnya kapasitas dan kecepatan proses komputer, serta munculnya ilmu-ilmu komputer yang memungkinkan manusia dapat mengambil informasi dari suatu citra, maka image processing tidak dapat dilepaskan dengan bidang computer vision [14].

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


(53)

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

Gambar 2.26. Contoh Koordinat Citra Digital [14].

2.12. Pemrosesan Citra

2.12.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-Green-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 derajat keabuan yang memiliki nilai 0-255.

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


(54)

representasi setiap pikselnya (256 =28). Gambar 2.25 menunjukkan contoh citra skala keabuan [15].

Gambar 2.27. Citra Skala Keabuan [15].

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


(55)

2.12.4.

Resizing

Rezising citra adalah mengubah besarnya ukuran citra dalam pixel. Tampilan citra tidak ada yang berubah tetapi hanya ukuran pixel dan matriksnya yang dirubah. Ukuan resizing menentukan kualitas gambar yang akan diproses.

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

Gambar 2.29. Aplikasi Citra Biner 8x8 kotak pixel.

Dari gambar 2.27 dapat dilihat bahwa kotak berukuran 8x8 pixel memiliki jumlah nilai biner 1 sebanyak 64 kotak pixel dipersentasikan warna hitam dan utuk nilai biner 0 sebanyak 34 kotak pixel dipersentasikan warna putih.


(56)

Gambar 2.30. Aplikasi Citra Biner 4x4 kotak pixel.

Untuk kotak berukuran 4x4 kotak pixel dapat dilihat digambar 2.28 bahwa nilai biner 1 sebanyak 16 kotak pixel yang dipersentasikan warna hitam dan untuk nilai biner 0 sebanyak 84 kotak pixel dan dipersentasikan warna putih.

Untuk itu dapat dilihat perbandingan kotak berukuran kotak pixel dan 4x4 kotak pixel bahwa kotak berukuran 8x8 kotak pixel lebih besar dan dapat dilihat nilai binernya lebih banyak yaitu 64 kotak pixel. Sedangkan kotak 4x4 kotak pixel dapat dilihat lebih kecil dari 8x8 kotak pixel dan nilai binernya hanya 16 kotak pixel.


(57)

37

BAB III

PERANCANGAN PENELITIAN

3.1. Proses Kerja Sistem

Pada pembuatan tugas akhir ini, akan dibuat sebuah prototipe conveyor yang dapat memilah lima macam bok dan memisahkan pada suatu tempat yang telah ditentukan. Komponen yang diguankan yaitu conveyor, rangkaian sensor cahaya, ATmega32, software AVR, webcam, software Matlab, dan motor dc 24v.

Cara kerja conveyor yaitu mula-mula box diletakan diatas conveyor satu yang akan membawa bok mendekati webcam dan rangkain sensor cahaya. Webcam akan mendeteksi luasan bok, kemudian akan diproses oleh laptop melalui software Matlab untuk mengenali luasan bok, setelah itu rangkaian sensor cahaya akan mendeteksi ketinggian bok kemudian akan diproses laptop lalu dikomunikassikan kepada minimum system ATmega32 dan akan dikomunikasikan kematlab untuk diproses untuk menentukan ukuran bok akan dipindahkan ketempat yang dinginkan untuk menjalankan conveyor dua sebagai alat bantu untuk meletakan bok sesuai ukurannya. Blok diagram sistem dapat dilihat pada gambar 3.1.

Gambar 3.1. Blok Diagram Sistem.

MOTOR

CONVEYOR 1 RANGKAIAN

DRIVER

CONVEYOR 1

ATmega 32

RANGKAIAN

DRIVER

MOTOR

CONVEYOR 2

CONVEYOR 2 LAPTOP

WEBCAM INFRARED


(58)

3.2. Perancangan Mekanik

Conveyor

Pada tahap ini dilakukan perancangan mekanik dari conveyor tersebut, antara lain mendesain ukuran conveyor, penggunaan bahan dasar untuk conveyor yaitu akrlilik setebal 3mm, ukuran conveyor satu belt lebar 20 cm, panjang conveyor satu 100 cm, tinggi 35 cm tiang tempat photodioda dan webcam setinggi 35 cm jarak photodioda 1, 2 dan 3 yaitu 5 cm dan webcam dari photodioda ketiga yaitu 20 cm ukuran conveyor dua lebar belt 25 cm conveyor dua 300 cm, tinggi 10 cm dan dibagian conveyor dua ada 5 kotak untuk tempat box yang berukuran panjang 20 cm, lebar 20 cm conveyor juga diberi sensor photodioda seabanyak 5 untuk menjalankan atau menempatakan kotak akan berhenti pada sesuai program yang diinginkan. Conveyor juga diberi limit switch berfungsi untuk mengembalikan ke posisi semula. Contoh gambar perancangan dapat dilihat di 3.2 sampai gambar 3.6.

Gambar 3.2. Perancangan Conveyor.


(59)

Gambar 3.4. Conveyor Dua Tampak Samping.


(60)

Gambar 3.6. Conveyor Dua Tampak Dari Samping.

3.2.2.

Conveyor

Perancangan untuk conveyor terdiri dari kerangka conveyor, belt conveyor, gear conveyor, besi as, rantai, motor penggerak conveyor, dan 2 buah papan penghubung. Penggerak conveyor menggunakan motor DC 24 volt. Conveyor terbagi menjadi 2 bagian, yaitu conveyor A dengan panjang 100 cm dan lebar 23 cm karena menurut saya itu ideal karena tidak kependekan dan tidak kepanjangan dengan sebab itu saya mengambil ukuran 100 cm jika jarak terlalu dekat untuk komunikasi di conveyor B terlalu akan menumpuk disatu kotak jika conveyor terlalu panjang nanti komunikasinya akan terlalu lama saya memilih tinggi 35 cm karna dengan tinggi tersebut bisa dibuat menyesuaikan conveyor B. Conveyor A dengan tiang penyangga webcam dengan 35 cm tiang ini juga dipasangi 3 photodioda yaitu photodioda 1 untuk menghentikan dan photodioda 2 dan 3 untuk mengukur ketinggian bok jika jarak webcam sama conveyor terlalu berdekatan akan bersenggolan


(61)

dengan photodioda dan jika terlalu tinggi hasil cropping akan terlalu jauh atau kecil diketinggian 35 cm sudah maksimal karena hasil cropping sesuai yang diingikan dan conveyor B dengan panjang 300 cm dan lebar 25 cm dengan tinggi 10 cm ukuran tersebut sesuai dengan keinginan jika terlalu pendek akan susah untuk mengatur 5 kotak buat tempat bok tersebut. Di conveyor B juga dipasangi 5 sensor photodioda untuk menempatkan kotak yang berukuran tinggi 15 cm dengan luasan 20 cm x 20 cm yang akan ditempatkan dengan program yang diinginkan dan 1 sensor limit switch untuk menghentikan di posisi semula lagi conveyor. Fungsi bagian A adalah untuk membantu dalam memisah bok, sedangkan fungsi bagian B adalah untuk membantu menempatkan box sesuai tempatnya. Conveyor ini dirancang dengan menambahkan 2 buah sensor yang memiliki letak berbeda-beda. Sensor yang dimiliki conveyor ini adalah sensor photodioda yang akan mendeteksi ketinggian bok, saat bok terdeteksi maka putaran motor pada Conveyor akan berhenti, dan webcam untuk mencari luasan bok tersebut. Conveyor B berfungsi untuk menempatan bok pada kotak – kotak yang sudah disediakan.

Besi siku digunakan sebagai rangka untuk conveyor. Selain besi L, dua buah besi as digunakan untuk menggerakkan belt conveyor yang ada pada masing-masing conveyor. Besi as yang berperan untuk menggerakkan belt conveyor disambungkan dengan sebuah gear. Pada motor DC juga dipasang pasangan gear. Belt digunakan untuk menghubungkan gear conveyor dengan pasangan gear yang dipasang pada motor DC. Alas karpet sebagai belt untuk dapat berputar dan paralon untuk membantu pergerakan besi as dan diluar paralon dikasih amplas sebagai pengerat karpet belt. Disini ditambahkan juga mikrokontroller digunakan untuk menjalankan sistem dan PC digunakan untuk menampilkan visualisasi pengoperasian sistem. Diconveyor dua dikasih tambahan 5 sensor photdioda untuk mengatur posisi berhenti kotak dan di beri sensor limit swicth untuk mengembalikan ke posisi semula.

3.3. Perancangan Perangkat Keras

3.3.1. Rangkaian Sensor Cahaya

Sistem ini menggunakan infrared sebagai pengirim dan photodioda sebagai penerima. Akan dipasang 3 buah sensor yaitu sensor 1 untuk mengentikan conveyor yang bergerak jika ada bok melintas pada sensor 1, bila sensor 2 terhalang oleh bok dengan ketinggian 5cm maka bok terdeteksi bahwa tinggi box berukuran 5 cm saja akan dimasukan kekotak A dan B tegantung ukuran luas bok tersebut, bila sensor 2 dan sensor 3 terhalang benda maka bok terdeteksi bahwa tinggi bok berukuran 10 cm akan dimasukan kekotak C dan D tergantung


(62)

ukuran luas bok tersbut dan bila sensor 2 terhalang box dan sensor 3 tidak terhalang maka box dianggap bok tidak sesuai ukuran makan bok akan dimasukan kekotak E. Rangkaian sensor cahaya dapat dilihat pada gambar 3.7.

Gambar 3.7. Rangkaian Sensor Photodioda.

Dengan nilai vcc sebesar 5 volt dan arus maksimal infrared 100mA, maka hambatan dapat dihitung menggunakan rumus :

sehingga, R =

= 50 Ω

Karena nilai resistor sebesar 50Ω tidak tersedia di pasaran dan agar infrared tidak

kelebihan arus,maka digunakan resistor sebesar 100 Ω. Sedangkan untuk nilai hambatan sensor photodioda menggunakan resistor yang mengacu pada dasar teori 2.7 sehingga


(63)

diperoleh nilai hambatan antara 6,25 KΩ – 25 KΩ. Pada perancangan ini menggunakan resistor 20 KΩ untuk sensor photodioda.

Output mikrokontroller ATmega32 memiliki arus yang kecil sehingga tidak bisa digunakan untuk mengendalikan motor dc yang membutuhkan arus cukup besar. Oleh karena itu dibutuhkan rangkaian external agar keluaran dari mikrokontroller dapat mengendalikan motor dc.

3.3.2. Rangkaian

Minimum System

ATmega32

Rangkaian minimum system berfungsi sebagai I/O untuk mengontrol atau mengendalikan driver motor dan photodioda yang telah diprogram dalam mikrokontroler ATmega32 pada lengan robot serta sebagai pengolah data serial yang dikirimkan dari komputer melalui USB to TTL converter. Mikrokontroler membutuhkan minimum system yang terdiri dari rangkaian eksternal yaiturangkaian osilator dan rangkaian reset.

Untuk rangkaian osilator digunakan crystal dengan frekuensi sebesar 11,0592 MHz dan menggunakan kapasitor 22 pf pada pin XTAL1 dan XTAL2 di mikrokontroler. Rangkaian osilator ini berfungsi sebagai sumber clock bagi mikrokontroler. Pemberian kapasitor bertujuan untuk memperbaiki kestabilan frekuensi yang diberikan oleh osilator eksternal. Rangakain osilator dapat dilihat pada gambar 3.8.

Gambar 3.8. Rangkaian Osilator ATmega32 [8].

Perancangan rangkaian reset bertujuan untuk memaksa proses kerja pada mikrokontroler dapat diulang dari awal. Saat tombol reset ditekan maka mikrokontroler mendapat input logika rendah, sehingga akan me-reset seluruh proses yang sedang dilakukan mikrokontroler. Rangkaian reset untuk ATmega32 dapat dilihat pada gambar 3.9.


(64)

Gambar 3.9. Rangkaian Reset ATmega32 [8].

Pada gambar 3.9 terdapat resistor yang memiliki resistansi sebesar 4,7 KΩ yang

difungsikan sebagai pull up.Resistor pull-up eksternal dapat digunakan untuk menjaga agar pin reset tidak berlogika 0 secara tidak disengaja. Kapasitor10nF digunakan untuk menghilangkan noise yang disusun seri dengan resistor. Rangkaian reset minimum systemATmega32 merupakan gabungan dari rangkaia push-button dan low-pass filter.

3.3.3. Regulator dan Penguat Arus

Pada pembuatan tugas akhir ini, regulator digunakan sebagai pemberi daya pada minimum system ATmega32dan motor dc. Regulator terdiri dari ic 7805, ic 7824, ic 2N3055, kapasitor, dan diode. Ic 7805yang digunakan untuk regulator yaitu menggunakan untuk memberikan daya pada minimum system ATmega32, sedangkanic 7824 digunakan untuk memberikan daya pada motor dc. Dengan demikian maka digunakan transistor 2N3055 agar arus keluaran ic 7805dan ic 7824 yang memiliki tegangan keluaran sebesar 5 volt dan 24volt menjadi lebih besar. Perancangan regulator atau komponen dari rangkaian regulator mengancu pada landasan teori.Rangkaian Regulator dapat dilihat pada gambar 3.10.


(65)

Gambar 3.10. A.Rangkaian Regulator 5v [4] dan B.Rangkian Regulator 24v [10].

3.3.4.

Driver

motor dc dengan

limit switch

.

Rangkaian driver motor DC menggunakan H-Bridge transistor yang dapat mengendalikan arah putaran motor DC dari 2 arah dan dapat dikontrol dengan metode PWM (pulse Width Modulation) maupun dengan metode sinyal logika dasar TTL (High) dan (Low). Untuk pengendalian motor DC dengan menggunakan metode PWM maka dengan rangkaian driver motor DC ini kecepatan putaran motor DC dapat dikendalikan dengan baik dan apabila menggunakan metode logika TTL 0 dan 1 maka rangkaian ini hanya dapat mengendalikan arah putaran motor DC saja dengan kecepatan putaran motor DC maksimum. Rangkaian driver motor DC H-Bridge ini menggunakan rangkaian jembatan transistor 4 unit dengan protesi impuls tegangan induksi motor DC berupa dioda dengan cara dipasang paralel dengan masing-masing transistor secara reverse bias. Dengan menggunakan transistor tip dikarenakan transistor ini dapat menghasilkan arus yang tinggi. Rangkaian ini juga ditambah dengan limit switch agar saat berlawan jarum jam maka dapat dihentikan pada saat dititik tertentu. Driver motor DC menggunakan TIP142 dengan arus maksimal 15A. Dapat dilihat pada gambar 3.11.


(66)

Gambar 3.11. Driver Motor DC [5].

3.3.5. Motor DC

Pada sistem ini, motor DC digunakan untuk menggerakkan conveyor. Motor1 digunakan untuk menggerakkan conveyor 1, motor2 digunakan untuk menggerakkan conveyor 2. Motor DC 24v yang berkekuatan tinggi atau torsi besar dan rpm yang rendah.

3.3.6. Rangkaian

Rellay

Rangkaian rellay untuk menyalakan motor di conveyor satu dan dua. Rellay juga dihubungkan ke mikrokontroller untuk menyalakan motor sesuai dengan program. Dapat dilihat pada gambar 3.12.


(67)

3.3.7. Benda Tiga Dimensi

Benda yang dapat dikenali oleh webcam yaitu bok atau berbentuk kotak dengan menggunakan bahan styrofoam. Desain benda menggunakan autocad, dapat dilihat pada gambar 3.12. dengnn ukuran masing-masing benda yaitu :

1. Bok1 : 16cm x 5cm (l x t). 2. Bok 2 : 16cm x 10cm (l x t). 3. Bok 3 : 32cm x 5cm (l x t). 4. Bok 4 : 32cm x 10cm (l x t). 5. Bok 5 : Tidak sesuai ukuran.

Gambar 3.13. Bentuk bok

3.4.

Perancangan Perangkat Lunak (

Software

)

Pada perancangan perangkat lunak ini akan dibahas mengenai program kendali conveyor secara keseluruhan diantaranya :

1) Flowchart program pengenalan luasan benda.. 2) Perancangan GUI pada MATLAB.

Pada pembuatan flowchart ini digunakan software Code Vision AVR yang merupakan suatu perangkat lunak untuk mem-program ic keluarga AVR menggunakan bahasa c. Pada pembuatan flowchart program pengenalan bentuk benda akan dibahas dan dipaparkan mengenai pembuatan program image processing dengan menggunakan metode Binery dengan software MATLAB.

Secara keseluruhan sistem kerja pada perancangan tugas akhir ini dapat ditunjukan flowchart pada gambar 3.14 dan 3.15. Cara kerja dari conveyor pemilah ukuran bok bedasarkan luasan dan ketinggian bok ini yaitu mula-mula bok akan diletakan pada conveyor. Ketika bok dideteksi oleh sensor photodioda yang artinya benda berada dibawah webcam dan


(68)

photodioda 2 sebagai sensor ketinggian bok 5 cm dan photodioda 3 sensor ketinggian 10 cm, maka mikrokontroler ATmega32 akan mengirimkan suatu karakter secara serial kepada laptop untuk menjalankan program image processing agar bok dapat dikenali. Setelah objek dikenali, maka laptop melalui software MATLAB akan mengirimkan karakter secara serial kepada minimum system ATmega32 untuk menggerakan motor conveyor ke 2. Conveyor akan bergerak dan meletakan bok ke tempat yang sudah disediakan sesuai ukuran bok. Untuk menentukan luasan 1 atau luasan 2 dengan akan dicroping melalui webcam dan untuk mengetahui tinggi 1 atau tinggi 2 dengan dideteksi ketinggian memalui photodioda, jika tinggi 1 akan dideteksi dengan photodioda 1 jika tinggi 2 akan dideteksi dengan photodioda 2 jika tinggi 1 tidak dan tinggi 2 tidak, maka akan masuk ke kotak tidak sesuai.

Rangkaian photodioda deteksi adanya wadah (1) Port (1) ( 1 0 0 0 0 )

Rangkaian photodioda deteksi adanya wadah (2) Port (2) ( 0 1 0 0 0 )

Rangkaian photodioda deteksi adanya wadah (3) Port (3) ( 0 0 1 0 0 )

Rangkaian photodioda deteksi adanya wadah (4) Port (4) ( 0 0 0 1 0 )

Rangkaian photodioda deteksi adanya wadah (5) Port (5) ( 0 0 0 0 1 ) Bok tinggi 1 Bok tinggi 2 Bok tinggi 1 Bok tinggi 2 Bok tidak sesuai Bok luasan dua Rangkaian photodioda conveyor pertama mendeteksi bok Motor conveyor kedua siaga Mulai Motor conveyor pertama gerak (aktif) Motor conveyor pertama berhenti (5 detik) Bok luasan 1atau Luasan 2 Bok luasan satu Tidak Ya Tidak Ya Luasan 1 Luasan 2

Tinggi 1 Tinggi 2 Tinggi 1 Tinggi 2

A B

Webcam mengenali bok luasan 1

atau 2


(69)

Mulai

Motor conveyor kedua gerak (aktif)

port (6)

Rangkaian photodioda pada

conveyor kedua deteksi adanya

wadah, maka

Motor conveyor kedua berhenti

selama 5 detik port (7)

Motor conveyor pertama gerak (aktif)

selama 5 detik

Saat

sensor limit switch mendeteksi adanya wadah maka conveyor

kedua berhenti

Tombol stop di tekan ?

Tidak Tidak

Ya

Ya

B

A


(70)

3.4.1.

Flowchart

Program Pengenalan Box Pada MATLAB

Program image processing diproses oleh software MATLAB. Cara kerja proses secara keseluruhan yaitu mula-mula webcam harus dikenali terlebih dahulu oleh software MATLAB. Setelah dikenali maka langkah selanjutnya yaitu mengambil gambar RGB benda yang akan dikenali dan menonaktifkan webcam. Ketika gambar telah di capture, maka langkah selanjutnya yaitu merubah gambar RGB tersebut menjadi gambar grayscale agar gambar lebih mudah untuk diproses. Langkah selanjutnya yaitu proses cropping (pemotongan), proses ini berfungsi untuk menentukkan bagian citra yang dibutuhkan untuk proses selanjutnya sehingga untuk bagian citra yang tidak dibutuhkan akan dipotong atau dihilangkan.

Setelah cropping, maka selanjutnya yaitu mengubah citra grayscale menjadi citra biner agar bentuk benda dapat dikenali sesuai dengan yang diinginkan. Setelah itu kemudian merubah ukuran piksel gambar menjadi lebih rendah. Selanjutnya akan menghitung luasan box untuk didapatakan nilai luasan bok. Setelah semua proses sudah dilakukan, maka langkah yang paling penting yaitu menghitung Look Up Table setelah itu reset atau distop atau kembali keposisi semula. Flochart dapat diliat pada gambar 3.15.

mulai Capture

image

Ubah gambar rgb menjasi gambar greyxcale Ubah gambar greyscale menjadi gambar biner Hitung luasan Cropping gambar biner

Reset Stop / exit

Reset stop

Ya Ya

Tidak Tidak

Look Up Table


(71)

3.4.2

Perancangan GUI MATLAB

Tujuan pembuatan GUI (Graphical User Interface) yaitu agar mempermudah dalam pengawasan program yang sedang terjadi atau dieksekusi. GUI memiliki peran yang sangat baik karena dengan adanya GUI, pengguna akan dapat melihat apa yang sedang terjadi didalam program seperti pemrosesan data dan lain-lain. Perancangan GUI yang akan dibuat dapat ditunjukan pada gambar 3.16.

CAPTURE CAMERA

PROSES PENGAMBILAN DATA

DATA BINER

HASIL DETEKSI

DATA

DATA BINER

BOX 4 BOX 3 BOX 2 BOX 1

BOX 5

START

RESET

STOP


(72)

52

BAB IV

HASIL PENGAMATAN DAN PEMBAHASAN

Pada bab ini akan dibahas mengenai hasil pengamatan dari program Matlab sebagai pemisah bok berdasarkan ukuran. Hasil pengamatan berupa data Matlab, data pengenalan bentuk benda berdasarkan nilai citra biner, tingkat keberhasilan pengenalan objek, dan tingkat keberhasilan conveyor ketika memilah ukuran bok ke tempat yang telah disiapkan berdasarkan masing-masing bentuk.

4.1.

Bentuk Fisik dan Sistem Kerja

Conveyor

Perangkat keras conveyor terdiri atas conveyor satu dan dua yang dapat ditunjukan pada gambar 4.1, minimum system ATmega32 dan port untuk motor dc, photodioda dan limit switch yang ditunjukan pada gambar 4.2, rangkaian photodioda sebagai sensor dapat dilihat pada gambar 4.3, rangkain motor driver sebagai pembalik motor agar bisa bolak – balik dapat dilihat pada gambar 4.4, rangkaian relay sebagai pengerak motor dapat dilihat pada gambar 4.5, Semple bok ditunjukan gambar 4.6, dan tempat untuk menaruh bok dapat dilihat pada gambar 4.7.

Gambar 4.1. Conveyor Satu dan Dua Conveyor 2


(73)

Gambar 4.2. Rangkaian Minimum System Gambar 4.3. Rangkaian Photodioda

Gambar 4.4. Rangkaian Motor Driver Gambar 4.5. Rangkaian Relay


(74)

Mekanisme dari sistem kerja conveyor adalah conveyor bekerja secara otomatis sesuai dengan perintah yang telah diprogram. Proses yang terjadi ketika tombol power “ON” maka pertama-tama conveyor 1 akan berjalan membawa bok yang saya letakan diatas conveyor menuju tepat dibawah webcam dideteksi oleh sensor photodioda untuk mengukur ketinggian bok. Ketika sensor photodioda terhalang oleh bok dan conveyor 1 akan berhenti sesaa untuk mengukur ketinggian satu atau dua, maka mikrokontroler ATmega32 akan mengirimkan

karakter „a‟ secara serial melalui komunikasi serial USART. Kemudian laptop akan merima

karakter tersebut sebagai isyarat bahwa telah terdapat objek buah tepat dibawah webcam. Proses selanjutnya yaitu GUI pada MATLAB yang berguna untuk proses pengenalan pola bentuk bok akan secara otomatis menjalankan program tersebut. Setelah bentuk bok dikenali, maka laptop akan mengirimkan sebuah karakter yang mendefinisikan bentuk buah. Karakter

„a‟ yang dikirim merupakan ukuran bok yang terdeteksi yaitu “boksatu”. Untuk karakter „b‟ yang dikirim merupakan ukuran bok yang terdeteksi yaitu “bok dua”. Untuk karakter „c‟ yang dikirim merupakan ukaran bok yang terdeteksi yaitu “bok tiga”. Untuk karakter „d‟ yang dikirim merupakan ukuran bok yang terdeteksi yaitu “bok empat”. Untuk Karakter „e‟ yang dikirim merupakan ukuran bok yang bok yang tidak sesuai ukuran.

Setelah mikrokontroler ATmega32 menerima karakter dari Matlab tersebut, maka conveyor 2 akan berjalan memindahkan tempat peletekan untuk peletakan bok sesuai dengan ukuran yang dideteksi, kemudian conveyor 1 berjalan lagi untuk memindahkan bok tersebut ke conveyor 2 untuk melakuakan peletakan sesuai dengan ukuran masing-masing ukuran bok tersebut dan proses ini akan terus berlangsung hingga tombol pada GUI MATLAB ditekan

“STOP” atau catu daya pada posisi “OFF”

4.2. Penjelasan Program Aplikasi MATLAB

Pada sub bab ini,akan membahas tetang penjelasan sitem program software yang telah dirancang,selain itu juga akan membahas interface serta penjelasan penggunaan sistem.

4.2.1.

Penjelasan dan Langkah Awal Untuk Program Pengenalan Ukuran

Bok

1. Membuka software Matlab, dengan cara klik dua kali pada gambar icon


(1)

z=0;

}

}

}

// Voltage Reference: AREF pin

#define ADC_VREF_TYPE ((0<<REFS1) | (0<<REFS0) | (0<<ADLAR))

// Read the AD conversion result

unsigned int read_adc(unsigned char adc_input)

{

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltage

delay_us(10);

// Start the AD conversion

ADCSRA|=(1<<ADSC);

// Wait for the AD conversion to complete

while ((ADCSRA & (1<<ADIF))==0);

ADCSRA|=(1<<ADIF);

return ADCW;

}

void main(void)

{

// Declare your local variables here

DDRB.0=1; PORTB.0=0;

DDRB.1=1; PORTB.1=0;

DDRB.2=1; PORTB.2=0;

DDRB.6=0; PORTB.6=1;


(2)

// Port A initialization

// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In

DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0);

// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T

PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);

// Port B initialization

// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In

//DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);

// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T

//PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

// Port C initialization

// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In

DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (1<<DDC4) | (1<<DDC3) | (1<<DDC2) | (1<<DDC1) | (1<<DDC0);

// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T

PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

// Port D initialization

// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In

DDRD=0xFF;

// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T

PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: Timer 0 Stopped

// Mode: Normal top=0xFF


(3)

TCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00);

TCNT0=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: Timer1 Stopped

// Mode: Normal top=0xFFFF

// OC1A output: Disconnected

// OC1B output: Disconnected

// Noise Canceler: Off

// Input Capture on Falling Edge

// Timer1 Overflow Interrupt: Off

// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (0<<WGM10);

TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10);

TCNT1H=0x00;

TCNT1L=0x00;

ICR1H=0x00;

ICR1L=0x00;

OCR1AH=0x00;

OCR1AL=0x00;

OCR1BH=0x00;

OCR1BL=0x00;

// Timer/Counter 2 initialization

// Clock source: System Clock

// Clock value: Timer2 Stopped

// Mode: Normal top=0xFF


(4)

ASSR=0<<AS2;

TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);

TCNT2=0x00;

OCR2=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

// External Interrupt(s) initialization

// INT0: On

// INT0 Mode: Falling Edge

// INT1: On

// INT1 Mode: Falling Edge

// INT2: Off

GICR|=(1<<INT1) | (1<<INT0) | (0<<INT2);

MCUCR=(1<<ISC11) | (1<<ISC10) | (1<<ISC01) | (0<<ISC00);

MCUCSR=(0<<ISC2);

GIFR=(1<<INTF1) | (1<<INTF0) | (0<<INTF2);

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity

// USART Receiver: On

// USART Transmitter: On

// USART Mode: Asynchronous

// USART Baud Rate: 9600

UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);

UCSRB=0x18;

UCSRC=0x86;

UBRRH=0x00;

UBRRL=0x47;


(5)

// Analog Comparator: Off

// The Analog Comparator's positive input is

// connected to the AIN0 pin

// The Analog Comparator's negative input is

// connected to the AIN1 pin

ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);

// ADC initialization

// ADC Clock frequency: 691.200 kHz

// ADC Voltage Reference: AVCC pin

// ADC Auto Trigger Source: ADC Stopped

// Only the 8 most significant bits of

// the AD conversion result are used

ADMUX=ADC_VREF_TYPE & 0xff;

ADCSRA=0x84;

SFIOR=(0<<ADTS2) | (0<<ADTS1) | (0<<ADTS0);

// SPI initialization

// SPI disabled

SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

// TWI initialization

// TWI disabled

TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);

// Global enable interrupts

#asm("sei")

while (1)

{


(6)

motor1=1;

sensor=read_adc(0);

if(sensor>=400)

{motor1=0;

putchar('z');

z=1;

//delay_ms(300);

pilah_box(); delay_ms(200);

/*while(data<kotak){ motor2=1;counter(); } // maju konveyor 2

delay_ms(100);

motor2=0; // konveyor 2 stop

delay_ms(200);

motor1=1; // konveyor 1 jalan untuk masukan Box ke kotak conveyor 2

delay_ms(400);

motor1=0; // conveyor 1 mati

motor3=1; // mundur konveyor 2

delay_ms(n);

motor3=0; // conveyor 2 posisi awal

data=0; */

led1=0;

led2=0;

led3=0;

led4=0;

led5=0

}

}