PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI i
TUGAS AKHIR PROTOTIPE PEMILAH KEMATANGAN BUAH PISANG BERDASARKAN WARNANYA MENGGUNAKAN CONVEYOR Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma
disusun oleh : ANDREAS DICKY HARIYANTO Nim : 125114009
PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2017
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI ii
FINAL PROJECT PROTOTYPE OF BANANA RIPENNES SORTING BASED ON COLOUR USING CONVEYOR
In partial fulfilment of the requirements for the degree of Sarjana Teknik in Electrical Engineering Study Program Faculty of Science and Technology Sanata Dharma University
ANDREAS DICKY HARIYANTO Nim : 125114009
ELECTRICAL ENGINEERING STUDY PROGRAM ELECTRICAL ENGINEERING DEPARTEMENT FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2017 ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI iii
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI iv
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI v
PERNYATAAN KEASLIAN KARYA Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang berjudul “PROTOTIPE PEMILAH BUAH PISANG BERDASARKAN WARNANYA MENGGUNAKAN CONVEYOR” tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah. Apabila dikemudian hari ditemukan indikasi plagiatisme dalam naskah ini, maka saya bersedia menanggung segala sanksi sesuai peraturan perundang-undangan yang berlaku.
Yogyakarta, 20 Maret 2017
Andreas Dicky Hariyanto
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP MOTTO : “ RULE YOUR MIND OR IT WILL RULE YOU ” “ three things cannot be long hidden : the sun, the moon, and the truth ”
Skripsi ini kupersembahkan untuk :
Tuhan Yesus Kristus penyelamatku Bunda Maria dan Malaikat pelindungku… Orang tua tercinta, untuk doanya, serta Dukungannya secara moral maupun materi Almamaterku Teknik ElektroUniversitas Sanata Dharma Yogyakarta
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI vii
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama
: ANDREAS DICKY HARIYANTO
Nomor Mahasiswa
: 125114009
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
PROTOTIPE PEMILAH KEMATANGAN BUAH PISANG BERDASARKAN WARNANYA MENGGUNAKAN CONVEYOR Beserta perangkat yang diperlukan (bilaada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencan tumkan nama saya sebagai penulis. Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarta, 20 Maret 2017
Andreas Dicky Hariyanto
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI viii
INTISARI Perkembangan dunia teknologi sangat berpengaruh bagi kehidupan manusia. Perkembangan teknologi dapat mempermudah kinerja manusia dan meningkatkan efisiensi tenaga dan waktu untuk mendukung proses operasional suatu usaha. Salah satunya adalah conveyor untuk mengenali buah pisang dan memisahkan pisang berdasarkan warnadengan menggunakan teknologi image processing. Proses pemisahan pisangmenggunakan masih banyak dilakukan secara manual atau dioperasikan oleh operator. Hal ini dirasa kurang efisien dan memerlukan waktu yang lama. Berdasarkan hal tersebut, dibutuhkan adanya alat yang dapat mengenali pisang secara otomatis agar dapat memisahkan pisangnya, secara otomatis tanpa dioperasikan operator.Urutan pengenalan kematangan Pisang yaitu citra RGB benda diubah menjadi citra Hsv untuk mempermudah proses pengenalan. Kemudian menghilangkan saturasi dan Hue dari citra Hsv,menghitung luasan pisang, menghitung warna kuning pada pisang, lalu dibandingkan antara luas dan warna kuning pisang, dan pengenalan pisang berdasarkan range nilai proporsi warna kuning berdasarkan masing-masing tingkatan pisang.conveyor digerakan oleh motor yang dikendalikanATmega32 menggunakan fasilitas interrupt dan komunikasi serial antara komputer dengan ATmega32 menggunakan komunikasi serial USART yang diprogram menggunakan CodeVision AVR. Hasil dari penelitian ini adalah sistem dapat membedakan 7 macam tingkatan kematangan pisang secara realtime serta conveyor dapat memisahkan pisang berdasarkan tingkatan kematangan.Setelah melakukan percobaan sebanyak 70 kali, sistem dan conveyor dapat bekerja, meskipun melakukan kesalahan sebanyak 8 kali pada saat pengenalan dengan pencahayaan dan tata peletakan yang sesuai dengan batasan masalah dikarenakan kondisi pisang pada saat penelitian kurang memenuhi syarat untuk level kematangan terrentu. Kata kunci: Image Processing, Conveyor,Metode Citra HSV.
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI ix
ABSTRACT The development of technology is very influential for human life. Technological development can facilitate human performance and increase the efficiency of energy and time to support the operations of a business process. One of them is the conveyor to recognize bananas and separating pisanga by color using image processing technology. The separation process using a banana is carried out manually or operated by an operator. It is less efficient and requires a long time.
Based on this, there needs to be a tool that can automatically recognize bananas in order to insulate banana, operated automatically without operator. The introduction sequence Banana maturity are RGB image converted to image objects Hsv to facilitate the recognition process. Then eliminate saturation and Hue from Hsv image, calculating the area of a banana, banana yellow on the counting, and compared between extensive and yellow bananas, and bananas introduction by rangenilai proportion of yellow on their respective levels of pisang.conveyor driven by a motor that uses dikendalikanATmega32 facility interrupt and serial communication between computers with ATmega32 using USART serial communication are programmed using AVR CodeVision. The result of this research is the system can distinguish 7 kinds of banana maturity level in realtime and conveyor can separate banana based on maturity level. After experimenting 70 times, system and conveyor can work, although make mistake as much as 8 times at moment of introduction with lighting and arrangement Laying in accordance with the limitations of the problem due to the condition of bananas at the time of research is less qualified for a certain level of maturity.
Keywords: Image Processing, Conveyor, Methods HSV image.
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI x
KATA PENGANTAR Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas segala berkat dan rahmat-Nya, sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik. Penulis menyadari bahwa banyak pihak yang telah memberikan doa, dukungan, perhatian serta bantuan kepada penulis sehingga dapat menyelesaikan tugas akhir ini. Oleh karena itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1) Sudi Mungkasi, S.Si., M.Math.Sc.,Ph.D selaku dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta. 2) Petrus Setyo Prabowo, S.T.,M.T., Ketua Program Studi Teknik Elektro Universitas Sanata Dharma Yogyakarta. 3) Ir. Tjndro selaku dosen pembimbing akademik yang telah mendampingi dan membimbing penulis selama perkuliahan. 4) Dr. Linggo Sumarno, dosen pembimbing yang dengan penuh pengertian, sabar dan ketulusan hati memberi bimbingan, kritik, saran, serta motivasi dalam penulisan tugas akhir ini. 5) Ibu Wiwien Widyastuti S.T, M.T,dan Bapak Dr.Iswanjono selaku dosen penguji yang telah bersedia memberikan masukan, bimbingan, dan saran dalam memperbaiki tugas akhir ini. 6) Bapak/ Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma. 7) Kedua orang tua tercinta,atas kasih sayang, dukungan dan doa yang tiada henti. 8) Staff sekretariat Teknik Elektro yang telah membantu dalam hal administrasi. 9) Staff dan petugas laboratorium Teknik Elektro yang telah membantu banyak hal untuk kelancaran tugas-tugas perkuliahan. 10) Teman-teman seperjuangan angkatan 2012 Teknik Elektro yang selalu mendukung dan menyemangati saya dalam menyelesaikan tugas akhir ini.
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xi
11) Semua pihak yang tidak dapat disebutkan satu persatu atas semua dukungan yang telah diberikan dalam penyelesaian tugas akhir ini. Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak kekurangan, kelemahan dan jauh dari sempurna. Oleh sebab itu, dengan segala kerendahan hati, penulis mengharapkan kritik dan saran yang membangun untuk penyempurnaan tugas akhir ini. Dan semoga tugas akhir ini dapat bermanfaat sebagaimana mestinya.
Yogyakarta, 20 Maret 2017
ANDREAS DICKY HARIYANTO
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xii
DAFTAR ISI HALAMAN JUDUL ................................................................................................ i HALAMAN PERSETUJUAN ................................................................................ iii HALAMAN PENGESAHAN ................................................................................. iv PERNYATAAN KEASLIAN KARYA .................................................................. v HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ...................................... vi HALAMAN PERNYATAAN PERSETUJUANPUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS .............................................. vii INTISARI ................................................................................................................ viii ABSTRACT ............................................................................................................. ix KATA PENGANTAR ............................................................................................. x DAFTAR ISI ............................................................................................................ xii BAB I PENDAHULUAN 1.1. Latar Belakang ............................................................................................. 1 1.2. Tujuan dan Manfaat ..................................................................................... 3 1.3. Batasan Masalah .......................................................................................... 3 1.4. Metodologi Penelitian ................................................................................. 4 1.5. Sistematika Penulisan .................................................................................. 5 BAB II DASAR TEORI 2.1.Conveyor ........................................................................................................ 6 2.1.1.Bagian – bagian Belt Conveyor ............................................................ 7 2.2.Motor Dc ....................................................................................................... 9 2.2.1.Prinsip Dasar Cara Kerja ...................................................................... 9 2.3.Limit Switch ................................................................................................... 11 2.4. Mikrokontroler AVR ATmega32 ................................................................ 12 2.4.1. Arsitektur AVR ATmega32 ............................................................... 12 2.4.2. Deskripsi Mikrokontroler ATmega32 ................................................ 13 2.4.3. Organisasi Memori AVR ATmega32 ................................................. 14 2.4.4. Interupsi .............................................................................................. 15 2.4.5. Timer/Counter ..................................................................................... 16
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xiii
2.4.6. Komunikasi Serial USART ................................................................ 18 2.5. Regulator ic 78xx dan Transistor Penguat Arus .......................................... 24 2.6. Photodioda ................................................................................................... 25 2.7.Infrared ......................................................................................................... 29 2.8. Relay .......................................................................................................... 30 2.9. Webcam ..................................................................................................... 30 2.10. Pisang .......................................................................................................... 31 2.11. Pengolahan Citra Digital ........................................................................... 33 2.12. Pemrosesan Citra ....................................................................................... 35 2.12.1. Segmentasi ......................................................................................... 35 2.13. Definisi Citra ............................................................................................... 36 2.13.1. Model Warna HSV ............................................................................ 36 2.13.2. Model Warna RGB ............................................................................ 40 2.14. Metode Lookup Table ............................................................................... 41
BAB III PERANCANGAN PENELITIAN 3.1. Proses Kerja Sistem ...................................................................................... 42 3.2. Perancangan Hardwere................................................................................. 43 3.2.1.PerancanganMekanik Conveyor ........................................................... 43 3.2.2. Minimum System ATmega32 ............................................................... 44 3.2.3. Sensor Photodioda ............................................................................. 46 3.2.4. Regulator dan Penguat Arus .............................................................. 47 3.2.5. Driver motor DC dengan limit switch. .............................................. 48 3.3.Perancangan Perangkat Lunak ...................................................................... 49 3.3.1.Flowchart Program Pengenalan kematangan pisang Pada MATLAB ........................................................................................... 51 3.3.2. Perancangan GUI MATLAB ............................................................ 54
BAB IV HASIL PENGAMATAN DAN PEMBAHASAN 4.1. Bentuk Fisik dan Sistem Kerja Conveyor .................................................... 55 4.2. Hasil Data Pengujian dan Pembahasan ....................................................... 57 4.2.1. Pengujian Proporsi Nilai Warna Kuning PadaPisang ................... 57 4.2.2. Tata Peletakan Benda ................................................................... 59
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xiv
4.2.3. Pengujian Keberhasilan Sistem Mendeteksi Pisang ..................... 59 4.2.4. Pengujian Keberhasilan Conveyor Memindahkan Pisang ............ 61 4.2.5. Pengujian Komunikasi Serial ........................................................ 62 4.3.Analisa dan Pembahasan Perangkat Lunak .................................................. 62 4.3.1. Aplikasi CodeVision AVR ............................................................. 62 4.3.1.1. Pengendali Sensor Photodioda ....................................... 62 4.3.1.2. Pengendali Komunikasi USART ................................... 63 4.3.1.3. Pengendali Motor ........................................................... 64 4.3.1.4. Subrutin Program Utama ............................................... 65 4.3.2. Aplikasi MATLAB ...................................................................... 65 4.3.2.1. Tampilan Gui MATLAB ............................................... 66 4.3.2.2. Inisialisasi Komunikasi Serial ........................................ 66 4.3.2.3. Inisialisasi Webcam ......................................................... 67 4.3.2.4. Proses Pengolahan Citra ................................................. 67 4.3.2.5. Proses Pengenalan Pisang ............................................... 68 Kesimpulan dan Saran ............................................................................................ 73 Daftar Pustaka ......................................................................................................... 74 Daftar Gambar ........................................................................................................ xv DaftarTabel .............................................................................................................. xvii Lampiran .................................................................................................................. L1
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xv
DAFTAR GAMBAR Gambar 2.1.Conveyor ................................................................................................ 6 Gambar 2.2.Bagian-bagianconveyor ......................................................................... 7 Gambar 2.3.Impact roller. ......................................................................................... 8 Gambar 2.4. Roll gandaukuranlebar belt kecil. ......................................................... 8 Gambar 2.5. Roll gandaukuranlebarbeltbesar. .......................................................... 9 Gambar 2.7.Cara kerja Motor DC. ............................................................................ 10 Gambar 2.8.Simbol Dan BentukLimit Switch ........................................................... 11 Gambar 2.9.Konstruksi Dan SimbolLimit Switch ..................................................... 12 Gambar 2.10. Konfigurasi Pin Mikrokontroler ATmega32 ...................................... 13 Gambar 2.11. Mode Phase Correct PWM . .............................................................. 17 Gambar 2.12. Mode Fast PWM. ............................................................................... 18 Gambar 2.13. Register UDR ..................................................................................... 19 Gambar 2.14. Register UCSRA................................................................................. 19 Gambar 2.15. Register UCSRB ................................................................................. 21 Gambar 2.16. Register UCSRC ................................................................................. 23 Gambar 2.17. Rangkaian Umum Regulator 78xx ..................................................... 25 Gambar 2.18. Rangkaian Catu Daya Dengan Penguat .............................................. 25 Gambar 2.19. Simbol dan Bentuk Photodioda .......................................................... 27 Gambar 2.20. Respon RelatifSpektralUntukSi, Ge, danSeleniumDibandingkan DenganMata Manusia. ............................................................................................... 27 Gambar 2.21. Hubungan Iλ Dengan Fc Pada Photodioda ......................................... 28 Gambar 2.22. Rangkaian Sensor Photodioda ............................................................ 29 Gambar 2.23. Aplikasi Sensor Photodioda................................................................ 29 Gambar 2.21.BentukFisik Relay ............................................................................... 30 Gambar 2.24. Contoh Webcam .................................................................................. 31 Gambar 2.25.Pisang................................................................................................... 31 Gambar 2.26 Standarkematanganpisangberdasarkanwarna ...................................... 33 Gambar 2.27.SkemaKegiatanPengenalanPola .......................................................... 34 Gambar 2.29 deteksisisidandeteksigaris .................................................................... 36 Gambar 2.30.Gambar spectrum warna. ..................................................................... 37 Gambar 2.31.modelHSV ............................................................................................ 37
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xvi
Gambar 2.32.Perbedaan model warna RGB dengan HSV ........................................ 38 Gambar 2.33 model warna RGB ............................................................................... 39 Gambar 2.34.contohColor lookup Tablepada RGB. ................................................. 41 Gambar 3.1. Blok Diagram Sistem............................................................................ 42 Gambar 3.2 Desainconveyor...................................................................................... 44 Gambar 3.3. Rangkaian Osilator ATmega32 ............................................................ 45 Gambar 3.4. Rangkaian Reset ATmega32 ................................................................ 45 Gambar 3.5. Rangkaian Sensor Photodioda .............................................................. 46 Gambar 3.6 A.Rangkaian Regulator 5v[14]. B. Rangkaian regulator 24v[13]. ........ 47 Gambar 3.7 Driver motor DC .................................................................................... 48 Gambar 3.8 flowchart system .................................................................................... 50 Gambar 3.9 flowchart system (lanjutan) ................................................................... 51 Gambar 3.10.a.gambarpisangasli, b. gamabarhsv, c. saturasidihilangkan. ............... 52 Gambar 3.11.a. segmentasi area pisang, b. segmentasi area hue, c. segmentasihue yang berwarnakuning. ................................................................... 52 Gambar 3.12.areapisang yang berwarnakuning. ....................................................... 52 Gambar 3.13.flowchartsistempengenalanpisang ....................................................... 54 Gambar 3.14. Perancangan GUI ................................................................................ 55 Gambar 4.1. Conveyor ............................................................................................... 56 Gambar 4.2. a. Minimum System, b.Pisang, c.Driver Motor, d.Relay, e. Tempat Peletakan Pisang ....................................................................................... 57 Gambar 4.3. Grafik Data ProporsiWarnaKuning ...................................................... 59 Gambar 4.4. Peletakan Pisang. .................................................................................. 60 Gambar 4.9. Pengujian Level 7 ................................................................................. 61 Gambar 4.10. Pengujian Level 5 ............................................................................... 62 Gambar 4.11. Pengujian Level 4 ............................................................................... 62 Gambar 4.12.pengujian Level 3 ................................................................................ 63 Gambar 4.12. Listing Program ADC ......................................................................... 65 Gambar 4.13. Listing Program Pengendali Conveyor ............................................... 66 Gambar 4.14. Listing Program Komunikasi USART ................................................ 66 Gambar 4.15. Listing program pengendali putar motor ............................................ 66 Gambar 4.16 Penginisaialisasi Port ........................................................................... 67 Gambar 4.17. Pemberian Nilai data .......................................................................... 67
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xvii
Gambar 4.18 Pemberian Nilai Kotak ........................................................................ 67 Gambar 4.19. Subrutin Program Utama .................................................................... 68 Gambar 4.20. Tampilan GUI MATLAB ................................................................... 69 Gambar 4.21. Inisialisasi Komunikasi Serial ............................................................ 70 Gambar 4.22. Inisialisasi Webcam ............................................................................ 70 Gambar 4.23. Proses Pengolahan Citra ..................................................................... 71 Gambar 4.24. Listing Program Pengenalan Pisang ................................................... 72
DAFTAR TABEL Tabel 1.1 PenelitianPendukungTerdahulu ................................................................. 2 Table 2.1. Hubungan PIN dan Interupsi .................................................................... 15 Tabel 2.2. Penentuan Ukuran Karakter ..................................................................... 22 Tabel 2.3. Karakteristik Regulator Tegangan ic 78xx ............................................... 24 Tabel 2.4. Hubungan Arus Dengan Hambatan .......................................................... 28 Tabel 2.5.Perubahankandunganpatidangula .............................................................. 32 Tabel 4.1. Data Proporsi Masing-Masing Level Pisang ............................................ 59 Tabel 4.2. Pengujian Keberhasilan Sistem Mendeteksi Kematangan Pisang............ 61 Tabel 4.3. Pengujian Keberhasilan Conveyor MemindahkanPisang ........................ 64 Tabel 4.4.Pengujian Komunikasi Pengirim ............................................................... 64 Tabel 4.5.Pengujian Komunikasi Penerima. ............................................................. 64
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI xviii
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN 1.1.
Latar Belakang Sistem kendali mesin menggunakan saklar magnet (Magnetic Controller) sudah
mulai ditinggalkan, sebagian besar industri menggunakan sistem kendali yang ringkas, mudah penggunaannya, mudah memodifikasi kerjanya dan mempunyai keistimewaan dibandingkan dengan saklar magnet. Tahap awal penelitian, ditemukan bahwa sebagian besar industri menerapkan sistem control menggunakan Microcontroler sebagai alat kontrol kerja produksi. Proses identifikasi buah-buahan yang dilakukan secara tradisional mengalami banyak kendala, hal ini akibat sifat manusia itu sendiri yang mempunyai kelemahan yang akhirnya meyebabkan kurangnya kualitas dalam penyortiran antara buah matang dan tidak matang. Kemajuan teknologi komputer telah menyentuh dunia pertanian baik dari segi sebelum panen maupun pasca panen, namun disini timbul permasalahan bagaimana mengenali buah tersebut sehingga sesuai dengan kondisi yang diinginkan pada saat pasca panen. Kondisi buah pisang ditentukan oleh beberapa parameter, diantaranya adalah parameter tingkat kematangan yang dilihat dari sisi warna dari pisang. Mutu pisang yang baik sangat ditentukan oleh tingkat ketuaan buah dan penampakannya. Tingkat ketuaan buah diukur berdasarkan umurnya, sedang penampakan yang baik diperoleh dari penanganan pasca panen yang baik [1]. Umumnya klasifikasi kematangan buah pisang dilakukan dengan cara manual yaitu menggunakan indera manusia. Proses pemilahan buah pisang sesuai dengan tingkat kematangan yang dilakukan oleh
manusia
mempunyai
beberapa
kelemahan,
antara
lain
akan
terjadi
ketidakkonsistensian karena keterbatasan visual manusia dan adanya tingkat kelelahan serta perbedaan persepsi tentang grade pada masing-masing pengamat. Oleh karena itu, diperlukan metode pengolahan citra untuk mendapatkan parameter-parameter fisik buah pisang mas. Pengolahan citra merupakan alternatif untuk mengatasi persoalan tersebut. Cara ini memiliki kemampuan yang lebih peka karena dilengkapi dengan sensor elektrooptika yang lebih menguntungkan jika dibandingkan dengan cara visual manusia yang sangat dipengaruhi oleh kondisi psikis pengamatnya.
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
Beberapa penelitian terdahulu yang berkaitan dengan aplikasi pengolahan citra digital yang telah dilakukan sebelumnya dapat dilihat pada Tabel 1.1 ini : Tabel 1.1 Penelitian Pendukung Terdahulu No 1
Nama Tahun Febry Yuni Mulato (2015)
Objek Jambu Biji
Metode RGB, Fuzzy
2 3
Prianggono Arham
Jeruk Lemon Jeruk Nipis
RGB, Kamera Online RGB, JST
(2005) (2004)
Objek yang dikaji dalam penelitian terdahulu yaitu Jambu Biji yang diteliti mengukur kematangan buah Jambu Biji berdasar kemiripan warna. Pada penelitian ini, dalam penentuan tingkat kematangan buah Jambu Biji, dapat ditentukan berdasarkan komposisi warnanya. Sebagai pembanding adalah model Fuzzy. Informasi yang dihasilkan berupa persentase kemiripan dan penggolongan kematangan buah yang meliputi mentah, mengkal, dan matang. Hasil percobaan pada program yang telah dibuat menunjukkan bahwa citra yang memiliki kemiripan distribusi warna citra yang sama persis memiliki selisih jarak sama dengan nol [2] Penelitian lain yaitu pendeteksi buah jeruk lemon pada pohonnya secara online/ real time menggunakan kamera. Pada penelitian ini dikembangkan algoritma yang memungkinkan mendeteksi keberadaan buah jeruk lemon pada pohonnya dengan mempelajari, mengkaji dan menganalisis karakteristik sinyal-sinyal warna dalam model warna RGB dan HSI dari citra buah jeruk lemon dan latarnya. Sehingga didapat parameter warna yang digunakan sebagai sarana untuk memisahkan antara buah jeruk lemon dan latarnya [3]. Penelitian yang mendukung terkait penggunaan pengolahan citra digital dan jaringan syraf tiruan yaitu dalam penelitian evaluasi mutu jeruk nipis dengan metode pengukuran non konvensional menggunakan pengolahan citra digital (digital image processing) menghasilkan data yang akan diproses secara pembelajaran dengan jaringan Saraf tiruan sehingga dapat digunakan untuk menentukan mutu buah [3]. Keaslian dari penelitian yang akan dilakukan dibandingkan dengan penelitian yang terdahulu dapat dilihat dari objek dan metode yang digunakan dalam penelitian. Objek yang digunakan adalah buah pisang varietas pisang Cavendish. Model warna
yang
digunakan untuk mengidentifikasi tingkat kematangan buah pisang Cavendish yaitu HSV pengolahan citra yang terdiri dari pengolah dan analisis citra. Hasil pengolahan citra dari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
setiap parameter tingkat kematangan tersebut digunakan sebagai perbandingan dalam look up table yang digunakan sebagai array untuk menggantikan runtime operasi perhitungan.
1.2.
Tujuan dan Manfaat
Tujuan dari penelitian ini adalah Merancang dan membangun sebuah miniatur suatu sistem kontrol conveyor menggunakan sistem kendali berbasis Mikrokontroler yang dapat digunakan sebagai simulasi kerja pemindahan barang di suatu industri.
Manfaatnya adalah: 1. Hasil penelitian ini diharapkan dapat digunakan sebagai langkah awal untuk membangun sistem klasifikasi buah pisang sesuai dengan tingkat kematangan yang dapat digunakan sebagai dasar acuan untuk menentukan tingkat kematangan objek lain dalam penanganan hasil pasca panen pertanian. 2. Hasil penelitian diharapkan dapat dimanfaatkan untuk membantu mempermudah penentuan kematangan buah pisang pada suatu industri.
1.3.
Batasan Masalah
Ruang lingkup masalah pada penelitian ini sebagai berikut: 1. Asumsi kematangannya adalah dari segi warna dan seragam baik dari segi bentuk dan segi warna. 2. Objek pisang sudah digolongkan tahapan kematangannya berdasarkan panduan indeks warna tingkat kematangan pisang dari Satuhu dan Supriyadi. 3. Identifikasi kematangan buah didasarkan proporsi warna kuning dengan nilai hue pada HSV. 4. Metode yang digunakan dalam penelitian adalah look up table. 5. Buah diletakkan di tengah dengan posisi menyamping dan posisi buah tidak boleh keluar dari sisi citra. 6. Pemilahan kematangan buah pisang menggunakan 2 conveyor. Conveyor 1 untuk mengidentifikasi warna buah pisang, conveyor 2 untuk menempatkan buah pisang. 7. Menampilkan Informasi level kematangannya berupa level 1, level 2, level 3, level 4, level 5, level 6, level 7.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
8. Level 1 ditempatkan kekotak 1, Level 2 dan level 3 ditempatkan kekotak 2, level 4 dan level 5 ditempatkan kekotak 3, level 6 dan level 7 ditempatkan kekotak 4. 9. Objek pisang menggunakan pisang yang asli.
1.4.
Metodologi Penelitian Berdasarkan pada tujuan yang ingin dicapai metodologi yang dilakukan untuk
menyusun penelitian ini antara lain: 1. Studi literatur, yaitu Mengumpulkan buku, artikel, jurnal, makalah, atau situs internet yang berhubungan dengan permasalahan yang dibahas dalam tugas akhir ini. 2. Dokumenter, yaitu
Menyaring referensi-referensi yang telah dikumpulkan
sebelumnya sehingga diperoleh data-data yang relevan. 3. Perancangan hardwere, tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangan dari berbagai faktor permasalahan dan kebutuhan yang telah ditentukan. 4. Pembuatan hardwere, 5. Pemrograman (Coding), Melakukan pemrograman berdasarkan rancangan yang dibuat dengan menggunakan MATLAB. 6. Proses pengambilan data, Melakukan uji coba terhadap aplikasi yang telah dibuat. Membuat ringkasan tabel hasil pengujian dari hasil uji coba yang telah dibuat.pengambilan data dilakukan dengan cara memberikan input berupa buah pisang. 7. Analisis
dan
penyimpulan
hasil
percobaan,
Analisis
data
dilakukan
membandingkan data yang di ambil dengan data dari sumber.
1.5.
Sistematika Penulisan Sistematika penulisan tugas akhir ini adalah sebagai berikut : BAB I: PENDAHULUAN Bab ini berisi latar belakang masalah, tujuan dan manfaat, batasan masalah, metodologi penelitian dan sistematika penulisan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 5
BAB II : DASAR TEORI Bab ini berisi teori-teori yang mendukung kerja sistem dan teori yang digunakan dalam perancangan lengan robot. BAB III : PERANCANGAN PENELITIAN Bab ini berisi penjelasan alur perancangan lengan robot serta flow chart program pendukung. BAB IV : HASIL PENGAMATAN DAN PEMBAHASAN Bab ini berisi pengamatan dan pembahasan data yang diperoleh, berupa data tingkat keberhasilan sistem mendeteksi benda, data motor servo dan tingkat keberhasilan keseluruhan sistem lengan robot. BAB V : KESIMPULAN DAN SARAN Bab ini berisi ringkasan hasil penelitian yang telah dilakukan dan usulan yang berupa gagasan-gagasan untuk perbaikan atau pengembangan terhadap penelitian yang telah dilakukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II DASAR TEORI 2.1.
Belt Conveyor
Belt Conveyor adalahsuatu 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 inidapat 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. Gambar conveyor dapat dilihat pada 2.1. [6]
Gambar 2.1. Conveyor. [6] 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 : 1. Dapat beroperasi secara mendatar maupun miring dengan sudut maksimum. 2. Sabuk disanggah oleh plat roller untuk membawa bahan. 3. Kapasitas tinggi.
6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
4. Serba guna. 5. Dapat beroperasi secara continiue. 6. Kapasitas dapat diatur.
2.1.1.
Bagian – bagian Belt Conveyor
Kalau belt panjang, perlu dipakai training roller, kalau belt pendek tanpa training roller tidak masalah. Pada training roller sering dipasang pemutus arus, untuk menjaga kalau belt menerima beban maksimum, sehingga belt dapat menyentuh training dan akibatnya arusnya terputus gambar bagian bagian conveyor dapat dilihat pada gambar 2.2. fungsi bagian-bagian conveyor: [5]
Gambar 2.2. Bagian-bagian conveyor [5] 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 depanberfungsi agar jangan sampai ada material masuk pada idle drum dengan belt.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8 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 gambar dapat dilihat pada gambar 2.3.
Gambar 2.3. Impact roller.[5] 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. 1. Untuk ukuran lebar belt yang cukup kecil seperti gambar 2.4.
Gambar 2.4. Roll ganda ukuran lebar belt kecil. [23] 2. Untuk ukuran lebar belt yang cukup lebar seperti gambar 2.5.
Gambar 2.5. Roll ganda ukuran lebar belt besar. [5]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
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 medan untukdiubah menjadi energi mekanik. Kumparan medan pada motor dc disebut stator (bagianyang 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 bias berputar bebas di antara kutub-kutub magnet permanen. [7] Catu tegangan dc dari baterai menuju ke lilitan melalui sikat yang menyentuh komutator, dua segmen yang terhubung dengan dua ujung lilitan. Kumparan satu lilitan disebut angker dinamo. Angker dinamo adalah sebutan untuk komponen yang berputar di antara medan magnet. [8]
2.2.1.
Prinsip Dasar Cara Kerja
Jika arus lewat pada suatu konduktor, timbul medan magnet di sekitar konduktor. Arah medan magnet ditentukan oleh arah aliran arus pada konduktor seperti gambar 2.7.
Gambar 2.7. Cara kerja Motor DC. [7]
Aturan Genggaman Tangan Kanan bisa dipakai untuk menentukan arah garis fluks di sekitar konduktor. Genggam konduktor dengan tangan kanan dengan jempol mengarah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
pada arah aliran arus, maka jari-jari anda akan menunjukkan arah garis fluks. Mekanisme kerja untuk seluruh jenis motor secara umum [7] : 1. Arus listrik dalam medan magnet akan memberikan gaya. 2. Jika kawat yang membawa arus dibengkokkan menjadi sebuah lingkaran / loop, makakedua sisi loop, yaitu pada sudut kanan medan magnet, akan mendapatkan gaya padaarah yang berlawanan. 3.
Pasangan gaya menghasilkan tenaga putar / torque untuk memutar kumparan.
4. Motor-motor memiliki beberapa loop pada dinamonya untuk memberikan tenagaputaran 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 dari energi listrik menjadi energi mekanik (motor) maupun sebaliknya berlangsung melalui medan magnet, dengan demikian medan magnet disini selain berfungsi sebagai tempat untuk menyimpan energi, sekaligus sebagai tempat berlangsungnya proses perubahan energi.[8] 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 [8] : 1. Beban torque konstan adalah beban dimana permintaan keluaran energinya bervariasi dengan kecepatan operasinya namun torquenya tidak bervariasi. Contoh beban dengan torque konstan adalah corveyors, rotary kilns, dan pompa displacement konstan. 2. Beban dengan variabel torque adalah beban dengan torque yang bervariasi dengan kecepatan 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.
Limit Switch
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
Limit switch pada gambar 2.8 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. Penerapan dari limit switch adalah sebagai sensor posisi suatu benda (objek) yang bergerak. Simbol limit switch ditunjukan pada gambar berikut. [9]
Gambar 2.8. Simbol Dan Bentuk Limit Switch [9] 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 [9]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
2.4.
Mikrokontroler AVR ATmega32 AVR (Alf and Vegard’sRiscProcessor) merupakan seri mikrokontroler CMOS 8-bit
yang diproduksi oleh Atmel berbasis arsitektur RISC (Reduced Instruction Set Computer). Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega32. Hampir semua instruksi dieksekusi dalam satu siklus clock dan mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interupsi internal dan eksternal, serial UART, programmable Watchdog Timer, dan power saving mode. AVR juga mempunyai ADC, PWM internal dan In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang. [10] 2.4.1.
Arsitektur AVR ATmega32
Mikrokontroler ATmega32 memiliki arsitektur sebagai berikut : a. Saluran IO sebanyak 32 buah, yaitu Port A, Port B, Port C dan Port D. b. ADC 10 bit sebanyak 8 Channel. c. Tiga buah timer/counter yaitu Timer 0, Timer 1, dan Timer 2. d. Watchdog Timer dengan osilator internal. e. SRAM sebanyak 512 byte. f. Memori Flash sebesar 32 kb. g. Sumber Interupsi internal dan eksternal. h. Port SPI (Serial Pheriperal Interface). i. EEPROM on board sebanyak 512 byte. j. Komparator analog. k. Port USART (Universal Shynchronous Ashynchronous Receiver Transmitter). 2.4.2.
Deskripsi Mikrokontroler ATmega32
Konfigurasi Pin Mikrokontroller ATmega32 dengan kemasan 40 pin DIP (dual inline package) dapat dilihat pada Gambar 2.10. Untuk memaksimalkan performa dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data). Ketika sebuah instruksi sedang dikerjakan maka instruksi berikutnya diambil dari memori program. [10]
Gambar 2.10. Konfigurasi Pin Mikrokontroler ATmega32[10] Mikrokontroler ATmega32 memiliki konfigurasi Pin sebagai berikut: a. VCC (power supply). b. GND (ground). c. Port A (PA7..PA0) Port A berfungsi sebagai input analog pada ADC (analog digital converter). Port A juga berfungsi sebagai suatu Port I/O 8-bit dua arah. d. Port B (PB7..PB0) Port B adalah suatu Port I/O 8-bit dua arah dengan resistor internal pull-up (yang dipilih untuk beberapa bit). e. Port C (PC7..PC0) Port C adalah suatu Port I/O 8-bit dua arah dengan resistor internal pull-up (yang dipilih untuk beberapa bit). f. Port D (PD7..PD0) Port D adalah suatu Port I/O 8-bit dua arah dengan resistor internal pull-up (yang dipilih untuk beberapa bit). g. RESET (Reset input). h.
XTAL1 (Input Oscillator).
i. XTAL2 (Output Oscillator). j. AVCC adalah pin penyedia tegangan untuk Port A dan ADC.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
k. AREF adalah pin referensi analog untuk ADC. Port A berfungsi sebagai input analog pada A/D Konverter (ADC) dan port I/O 8bit 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. [10] T=RxC (2.1) 2.4.3.
Organisasi Memori AVR ATmega32
Arsitektur AVR mempunyai dua ruang memori utama, yaitu ruang memori data dan memori program. ATmega32 juga memiliki fitur EEPROM Memori untuk penyimpanan data. 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. [10] Memori Data Memori data adalah memori RAM (Random Access Memory) yang digunakan untuk keperluan program. Memori data terbagi menjadi empat bagian yaitu 32 General Purphose Register adalah register khusus yang bertugas untuk membantu eksekusi program oleh ALU (Arithmatich Logic Unit). Dalam istilah processor komputer sehari-hari GPR dikenal sebagai “chace memory”. I/O register dan Aditional I/O register adalah register yang difungsikan khusus untuk mengendalikan berbagai pheripheral dalam mikrokontroler seperti pin, port, timer/counter. [10] 2.4.4.
Interupsi
Interupsi adalah suatu kondisi dimana mikrokontroler akan berhenti sementara dari program utama untuk melayani instruksi-instruksi pada interupsi kemudian kembali
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
mengerjakan instruksi program utama setelah instruksi-instruksi pada interupsi selesai dikerjakan. Table 2.1. Hubungan PIN dan Interupsi [10] 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 [10]. 2.4.5.
Timer/Counter
Timer/Counter pada mikrokontroler AVR dapat digunakan untuk melakukan pencacahan waktu seperti pada jam digital maupun untuk menghasilkan sinyal PWM (Pulse Width Modulation) yakni sinyal kotak dengan frekuensi dan duty cycle yang nilainya bisa diatur. ATmega32 memiliki tiga unit Timer/Counter yaitu Timer/Counter 0 (8 bit), Timer/Counter 1 (16 bit), dan Timer/Counter 2 (8 bit).[10] 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
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 Berikut merupakan mode-mode operasi timer [7]: a) Mode normal, timer digunakan untuk menghitung saja, membuat delay, dan mengitung selang waktu.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
Gambar 2.11. Mode Phase Correct PWM .[11] 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
Gambar 2.12. Mode Fast PWM. [11] 2.4.6.
Komunikasi Serial USART Komunikasi data adalah perpindahan data antara dua atau lebih peranti, baik
yang berjauhan maupun yang berdekatan. Perpindahan data antara dua atau lebih peranti dapat dilaksanakan secara paralel atau seri. Komunikasi seri dapat dibedakan menjadi dua macam, yaitu komunikasi dara seri sinkron dan komunikasi data asinkron. Dikatakan sinkron jika sisi pengirim dan sisi penerima ditabuh (clocked) oleh penabuh (clock) yang sama, satu sumber penabuh, data dikirim beserta penabuh. Dikatakan asinkron jika sisi pengirim dan sisi penerima ditabuh oleh penabuh yang terpisah dengan frekuensi yang hampir sama, data dikirim disertai informasi sinkronisasi. [10] Pada proses inisialisasi ini setiap perangkat yang terhubung harus memiliki baudrate yang sama. Beberapa fasilitas yang disediakan USART AVR adalah sebagai berikut: a) Operasi full duplex (mempunyai register receive dan transmit yang terpisah). b) Mendukung kecepatan multiprosesor. c) Mode kecepatan berorde Mbps . d) Operasi asinkron atau sinkron . e) Operasi master atau slave clock sinkron. f) Dapat menghasilkan baud-rate (laju data) dengan resolusi tinggi. g) Modus komunikasi kecepatan ganda pada asinkron. Inisialisasi USART Pada mikrokontroler AVR untuk mengaktifkan dan mengeset komunikasi USART dilakukan dengan cara mengaktifkan register-register yang digunakan untuk komunikasi USART. Register-register yang digunakan untuk komunikasi USART antara lain: USART I/O Data Register (UDR)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
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[10] USART Control and Status Register A (UCSRA)
Gambar 2.14. Register UCSRA [10] 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)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
Bit ini sebagai indikator ketika data yang diterima error, misalnya ketika stop bit pertama data dibaca berlogika nol maka bit FE bernilai satu. Bit akan bernilai 0 ketika stop bit data yang diterima berlogika nol. e) DOR (Data OverRun) Bit ini berfungsi untuk mendeteksi jika ada data yang tumpang tindih. Flag akan bernilai satu ketika terjadi tumpang tindih data. f) PE (Parity Error) Bit yang menentukan apakah terjadi kesalahan paritas. Bit ini berfungsi jika ada kesalahan paritas. Bit akan berlogika satu ketika terjadi bit parity error apabila bit paritas digunakan. g) U2X (Double the USART Transmission Speed) Bit yang berfungsi untuk menggandakan laju data manjadi dua kalinya. Hanya berlaku untuk modus asinkron, untuk mode sinkron bit ini diset nol. h) MPCM (Multi Processor Communication Mode) Bit untuk mengaktifkan modus multi prosesor, dimana ketika data yang diterima oleh USART tidak mengandung informasi alamat akan diabaikan. USART Control and Status Register B (UCSRB)
Gambar 2.15. Register UCSRB [6] 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
b) TXCIE (TX Complete Interrupt Enable) Bit pengatur aktivasi pengiriman data serial, akan berlogika satu jika diaktifkan dan berlogika nol jika tidak diaktifkan. c) UDRIE (USART Data Register Empty Interrupt Enable) Bit ini berfungsi untuk mengaktifkan interupsi data register kosong, berlogika satu jika diaktifkan dan sebaliknya. d) RXEN (Receiver Enable) Bit ini berfungsi untuk mengaktifkan pin RX saluran USART. Ketika pin diaktifkan maka pin tersebut tidak dapat digunakan untuk fungsi pin I/O karena sudah digunakan sebagai saluran penerima USART. e) TXEN (Transmitter Enable) Bit ini berfungsi untuk mengaktifkan pin TX saluran USART. Ketika pin diaktifkan maka pin tersebut tidak dapat digunakan untuk fungsi pin I/O karena sudah digunakan sebagai saluran pengirim USART. f) UCSZ2 (Character Size) Bit ini bersama dengan UCSZ1 dan UCSZ0 dalam register UCSRC digunakan untuk memilih tipe lebar data bit yang digunakan. Tabel 2.2. Penentuan Ukuran Karakter [10]
UCSZ[2..0]
Ukuran Karakter dalam bit
0
5
1
6
10
7
11
8
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
100-110
Tidak dipergunakan
111
9
g) RXB8 (Receive Data Bit 8) Bit ini digunakan sebagai bit ke-8 ketika menggunakan format data 9-10 bit, dan bit ini harus dibaca dahulu sebelum membaca UDR. h) TXB8 (Transmit Data Bit 8) Bit ini digunakan sebagai bit ke-8 ketika menggunakan format data 9-10 bit, dan bit ini harus ditulis dahulu sebelum membaca UDR. USART Control and Status Register C (UCSRC)
Gambar 2.16. Register UCSRC[10] 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)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
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. f) UCPOL (Clock Parity) Bit yang berguna hanya untuk modus sinkron. Bit in berhubungan dengan perubahan data keluaran dan sampel masukkan, dan clock sinkron (XCK).
2.5.
Regulator IC 78xx dan Transistor Penguat Arus Pengatur tegangan (voltage regulator) berfungsi menyediakan suatu tegangan
keluaran dc tetap yang tidak dipengaruhi oleh perubahan tegangan masukan. Salah satu tipe regulator tegangan tetap adalah 78xx. Regulator tegangan tipe 78xx adalah salah satu regulator tegangan tetap dengan tiga terminal, yaitu terminal Vin, GND dan Vout. Regulator tegangan 78xx dirancang sebagai regulator tegangan tetap, meskipun demikian keluaran dari regulator ini dapat diatur tegangan dan arusnya melalui tambahan komponen eksternal. Spesifikasi ic regulator seri 78xx dapat dilihat pada tabel 2.3, sedangkan rangkaian umum dapat dilihat pada gambar 2.17 Tabel 2.3. Karakteristik Regulator Tegangan ic 78xx[12] VIN (Volt) Type
VOUT (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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 24
7824
24
27,1
38
Gambar 2.17. Rangkaian Umum Regulator 78xx [11] 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. [12]
Gambar 2.18. Rangkaian Catu Daya Dengan Penguat [12] Dari gambar 2.18, maka diperleh persamaan-persamaan sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
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 :
2.6.
Ic = β IB
(2.12)
Ie = (β+1) IB
(2.13)
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. 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-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
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]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
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) 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.22.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
Gambar 2.22. Rangkaian Sensor Photodioda
Gambar 2.23. Aplikasi Sensor Photodioda[11]
2.7.
Infrared Infrared merupakan suatu komponen elektronika yang merupakan sumber cahaya
dengan panjang gelombang 750nm-1000nm dan arus maksimal sebesar 100 mA[9]. Aplikasi infrared biasa dijumpai pada modul sensor yang berhubungan dengan cahay seperti photodioda dan photo transistor. 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 : sehingga, R=
= 50 Ω
Agar aman,maka digunakan resistor sebesar 100 Ω yang bertujuan untuk membuat infrared tidak berlebihan arus.
2.8.
Relay
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
Relai
merupakan
suatu
komponen
elektronika
yang
berfungsi
untuk
menghubungkan atau memutuskan aliran arus listrik yang dikontrol dengan memberikan tegangan dan arus tertentu pada koilnya. Ada dua macam relay berdasarkan tegangan untuk menggerakan koilnya yaitu AC dan DC [11]. Pada dasarnya relay adalah sebuah kumparan yang dialiri arus listrik, sehingga kumparan mempunyai sifat seperti magnet. Magnet sementara tersebut digunakan untuk menggerakan suatu sistem saklar yang terbuat dari logam sehingga pada saat relay dialiri arus listrik maka kumparan akan terjadi kemagnetan dan menarik logam tersebut. Saat arus listrik diputus, maka logam akan kembali pada posisi semula [11].
Gambar 2.21. Bentuk Fisik Relay [11]
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 c270.
Gambar 2.24. Contoh Webcam [16]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
2.10. Pisang Jenis pisang yang ditanam oleh masyarakat beraneka ragam mulai dari pisang untuk olahan (plantain) sampai jenis pisang komersial (banana) yang bernilai ekonomi yang tinggi. Sentra produksi pisang di Indonesia adalah Jawa Barat, Jawa Tengah, Jawa Timur, Sumatera Utara, Sumatera Barat, Sumatera Selatan, Lampung, Kalimantan, Sulawesi, Bali, dan Nusa Tenggara Barat (Prabawati et al., 2008). Gambar pisang dapat dilihat pada Gambar 25. [18]
Gambar 2.25. Pisang [18] Seiring dengan pertumbuhan buah pisang selama proses pematangan dari perubahan warna mulai dari hijau kemudian berubah warna menjadi kuning buah pisang mengalami perubahan komposisi kimia, salah satunya kandungan pati dan kandungan gula. Kandungan pati selama proses pematangan akan cenderung berkurang sedangkan kandungan gula pada buah pisang akan terus bertambah selama proses pematangan berlangsung. Perubahan kandungan pati dan kandungan gula selama proses pematangan buah pisang dapat dilihat pada Tabel 5.
Tabel 2.5. Perubahan kandungan pati dan gula [1]. No 1
Warna Kulit Hijau
% pati 20
% gula 0,5
Kriteria Keras, belum matang
2
Hijau Kekuningan
18
2,5
Mulai terjadi pematangan
3
Hijau lebih banyak daripada kuning
16
4,5
-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
4
Kuning lebih banyak daripada hijau
13
7,5
-
5
Kuning dengan ujung berwarna hijau
7
13,5
-
6
Kuning penuh
2,5
18
Matang penuh
7
Kuning dengan penuh bercak coklat
1,5
19
Matang dengan aroma yang kuat
8
Kuning dengan bercak coklat lebih luas
1
19
Lewat matang, daging buah lunak, aroma sangat kuat
Buah pisang yang akan dikonsumsi dalam keadaan segar harus memenuhi syarat dan kriteria dengan kualitas yang baik. Dalam membeli pisang konsumen biasanya memperhatikan nilai kualitas pisang dari tekstur, aroma, penampilan, kekerasan/tekstur, dan tingkat keamanan. Standar kematangan pisang berdasarkan warna dapat dilihat pada Gambar 2.26.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
Gambar 2.26 Standar kematangan pisang berdasarkan warna [20]
2.11. Pengolahan Citra Digital Pengenalan Pola (Pattern Recognition) dapat diartikan dengan segala kegiatan yang dilakukan untuk pengambilan keputusan atau kesimpulan berdasarkan pola - pola kompleks objek atau informasi (Ripley:1996). Pengenalan Pola ini mulai dilakukan sejak data digital ditemukan, masalah pengenalan dan pencarian pola pada data digital merupakan salah satu pengetahuan fundamental dan memiliki banyak sejarah pengembangan dan kesuksesan, banyak ilmuan melakukan berbagai penelitian untuk mengembangkan metode metode baru untuk mempermudah pengenalan untuk berbagai pola objek.[22] Beberapa contoh pengenalan pola yang telah dilakukan seperti pengenalan wajah, fingerprint, pola permainan catur, retina mata, peramalan cuaca, bahkan dalam lingkup perekonomianpun pengenalan pola digunakan, seperti dalam peramalan kurs mata uang, harga saham, dan banyak lagi penggunaan pengenalan pola yang telah diterapkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
Menurut Belance dan Nebot (2002) secara garis besar rangkaian pengenalan pola itu dapat dilihat pada gambar 2.27 berikut :
Gambar 2.27. Skema Kegiatan Pengenalan Pola [21] 1. Sensor / Transducer Sensor atau yang juga dikenal dengan Transducer merupakan alat yang digunakan tahapan pengambilan data dari lingkungan, atau dunia nyata, seperti dalam pengolahan citra datanya itu berupa photo dan sensor atau transducernya itu adalah kamera, dan selanjutnya data itu dikonversi menjadi data digital, agar bisa dilanjutkan ke tahap preprocessing. 2. Preprocessing & Enhancement Preprocessing merupakan tahapan yang dilakukan mempersiapkan data mentah yang didapat dari dunia nyata agar dapat dan layak dipergunakan dalam tahapan pengolahan selanjutnya, ini dikarenakan data real itu umumnya memiliki beberapa masalah seperti, ketidak lengkapan data yang disebabkan kurang akuratnya sensor atau transducer, noisy atau adanya objek – objek pengganggu, dan memposisikan data agar sesuai dengan sarat extraksi fiturnya. 3. Feature Extraction Exraksi Fitur (Feature Extraction) merupakan tahapan pengambilan ciri, atau pola karakteristik dari suatu data atau objek inputan, yang nantinya nilai atau bobot fitur yang didapatkan itu akan diproses dan dianalisa, sehingga dapat menjadi bahan pembeda dari objek – objek lainnya. 4. Classification
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
Secara bahasa Classification berati pengelompokan data berdasarkan kesamaan ciri yang dimiliki oleh data tersebut. Dalam hal ini data hasil extraksi fitur yang memiliki kesamaan dengan data – data lain, akan dikelompokkan dalam klasifikasi tertentu, kegiatan klasifikasi ini merupakan salah satu kegiatan fital dalam pengenalan pola, kesalahan dalam klasifikasi akan menyebabkan kesalahan dalam hasil yang akan dikeluarkan. Sehingga pada bagian klasifikasi ini, banyak sekali metode – metode yang dikembangkan oleh para peneliti, seperti penggunaan fuzzy, neural network, clustering, dan berbagai method – method lain. Hasil klasifikasi biasanya akan disimpan dan akan menjadi penentu untuk klasifikasi selanjutnya. 5. Description Tahapan ini merupakan tahapan penyampaian hasil klasifikasi yang telah dilakukan, apakah objek yang diinputkan itu dikenal atau tidak, dan jika tidak, biasanya sistem akan meminta untuk melakukan pembelajaran ulang terhadap objek tersebut.
2.12. Pemrosesan Citra 2.12.1.
Segmentasi
Proses segmentasi citra ini lebih banyak merupakan suatu proses pra pengolahan pada sistem pengenalan objek dalam citra [23]. Segmentasi citra (image segmentation) mempunyai arti membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses identifikasi objek. Adapun dalam proses segmentasi citra itu sendiri terdapat beberapa algoritma, diantaranya : algoritma Deteksi Titik, Deteksi Garis, dan Deteksi Sisi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
Gambar 2.29 deteksi sisi dan deteksi garis.[23]
2.13. Definisi Citra Citra merupakan suatu representasi (gambaran), kemiripan atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital yang dapat disimpan pada suatu media penyimpanan. Menurut Rinaldi Munir, citra (image) adalah gambar pada bidang dwimatra (dua dimensi) yang memegang peranan sangat penting sebagai bentuk visual kaya informasi.
2.13.1. Model Warna HSV Warna yang terlihat adalah spektrum cahaya yang dipantulkan oleh benda yang kemudian ditangkap oleh indra penglihatan lalu diterjemahkan oleh otak sebagai warna tertentu. Model warna HSV mendefinisikan warna dalam terminologi Hue, Saturation, Value. Hue menyatakan warna sebenarnya, seperti merah, violet, dan kuning. Hue digunakan untuk membedakan warna dan menenetukan kemerahan (redness), kehijauan (greenness),dari cahaya. Hue berasosiasi dengan panjang gelombang cahaya. Saturation menyatakan tingkat kemurnian suatu warna, yaitu mengidentifikasikan seberapa banyak warna putih diberikan pada warna. Value adalah atribut yang menyatakan banyaknya cahaya yang diterima oleh mata tanpa mempedulikan warna. [24] Selain itu jarak HSV adalah murni dan konsepnya yang hampir seragam maka proses kuantisasi pada HSV dapat dihasilkan dari mengumpulkan warna yang padat dan lengkap. Nilai hue antara 0 sampai 1 berarti warna antara merah melewati kuning, hijau, cyan, biru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
dan magenta dan kembali menjadi merah. Nilai saturation antara 0 sampai 1 berarti dari tidak tersaturasi (keabuan) sampai tersaturasi penuh (tidak putih). Nilai Value atau brightness antara 0 sampai 1 berarti warna semakin cerah.
Gambar 2.30. Gambar spectrum warna. [24] Karena model warna HSV merupakan model warna yang diturunkan dari model warna RGB, maka untuk medapatkan warna HSV ini diharuskan melakukan proses konversidari RGB ke HSV. HSV merupakan salah satu cara untuk menfenisikan warna yang didasarkanwarna yang didasarkan pada roda warna.
Gambar 2.31. model HSV [24] Hue merupakan variabel yang menyatakan warna dari merah hingga violet. Hue mengukur sudut sekitar roda warna (merah pada 0°, 120°di hijau, dan biru di 240°). Nilai dari hue berkisar antara 0° sampai 360°hubungan hue, saturation, value dapat dilihat pada gambar 2.31.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
Gambar 2.32. Perbedaan model warna RGB dengan HSV.[26]
2.13.2.
Model warna R GB
RGB adalah suatu model warna yang terdiri atas 3 buah warna: merah (Red), hijau (Green), dan biru (Blue), yang ditambahkan dengan berbagai cara untuk menghasilkan bermacam-macam warna. Kegunaan utama model warna RGB adalah untuk menampilkan citra / gambar dalam perangkat elektronik, seperti televisi dan komputer, walaupun juga telah digunakan dalam fotografi biasa. Sebelum era elektronik, model warna RGB telah memiliki landasan yang kuat berdasarkan pemahaman manusia terhadap teori trikromatik. RGB merupakan model warna yang bergantung kepada peranti: peranti yang berbeda akan mengenali atau menghasilkan nilai RGB yang berbeda, karena elemen warna (seperti fosfor atau pewarna) bervariasi dari satu pabrik ke pabrik, bahkan pada satu peranti setelah waktu yang lama. Model warna ini merupakan model warna yang paling sering dipakai. Contoh alat yang memakai mode warna ini yaitu TV, kamera, pemindai, komputer, dan kamera digital. Kelebihan model warna ini adalah gambar mudah disalin / dipindah ke alat lain tanpa harus di-convert ke mode warna lain, karena cukup banyak peralatan yang memakai mode warna ini. Kelemahannya adalah tidak bisa dicetak sempurna dengan printer, karena printer menggunakan mode warna CMYK, sehingga harus diubah terlebih dahulu. RGB merupakan model warna aditif, yaitu ketiga berkas cahaya yang ditambahkan bersama-sama, dengan menambahkan panjang gelombang, untuk membuat spektrum warna akhir.[28]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
Gambar 2.33 model warna RGB.[28] Sebuah warna dalam RGB digambarkan dengan menentukan seberapa banyak masing-masing warna merah, hijau, dan biru yang dicampurkan. Warna ini dituliskan dalam bentuk triplet RGB (r, g, b), setiap bagiannya dapat bervariasi dari nol sampai nilai maksimum yang ditetapkan. Jangkauan ini dapat digambarkan dengan angka dalam beberapa cara berbeda: 1. Dari 0 sampai 1, dengan sembarang nilai pecahan di antaranya. Representasi ini digunakan pada analisis teoretis, dan pada sistem yang menggunakan representasi floating-point. 2. Setiap nilai komponen warna juga dapat ditulis sebagai persentase, dari 0% sampai 100%. 3. Dalam komputer, nilai-nilai komponen sering disimpan sebagai angka integer antara 0 sampai 255, kisaran yang dapat ditampung sebuah bita (8-bit). Nilai ini dapat dituliskan dalam angka desimal maupun heksadesimal.
2.14.
Metode Lookup Table Dalam ilmu komputer, sebuah tabel adalah array yang menggantikan runtime
perhitungan dengan operasi pengindeksan array sederhana. Penghematan dari segi waktu pemrosesan dapat menjadi signifikan, karena mengambil nilai dari memori seringkali lebih cepat daripada menjalani perhitungan atau input / output operasi. lookup Table juga digunakan secara luas untuk memvalidasi nilai input dengan mencocokkan terhadap daftar item yang valid (atau tidak valid) dalam array dan, dalam
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
beberapa bahasa pemrograman, mungkin termasuk fungsi pointer (atau offset untuk label) untuk memproses masukan yang cocok[28]. Colour look-up table (CLUT) adalah mekanisme yang digunakan untuk mengubah berbagai warna masukan ke dalam berbagai lain warna. Hal ini dapat menjadi perangkat keras yang dibangun ke dalam sistem pencitraan atau fungsi perangkat lunak yang dibangun ke dalam aplikasi pengolah gambar. [29] Sebuah CLUT ditandai dengan: 1. Jumlah entri dalam palet: menentukan jumlah maksimum warna yang dapat muncul di layar secara bersamaan (bagian dari palet penuh yang lebih luas, yang harus dipahami sebagai jumlah total warna yang sistem diberikan mampu menghasilkan atau mengatur, misalnya RGB palet warna penuh). 2. Lebar setiap entri dalam palet: menentukan jumlah warna yang palet penuh yang lebih luas dapat mewakili. Dalam pengolahan citra, tabel lookup sering disebut LUT dan memberikan output nilai untuk masing-masing rentang nilai indeks. Satu LUT umum, yang disebut peta warna atau palet, digunakan untuk menentukan warna dan nilai intensitas dengan yang gambar tertentu akan ditampilkan. Dalam tomography computer, "windowing" mengacu pada konsep terkait untuk menentukan bagaimana menampilkan intensitas radiasi diukur[28]. lookUp Tables atau LUT merupakan dasar untuk banyak aspek pengolahan gambar. Sebuah Lut hanyalah sebuah tabel referensi silang menghubungkan nomor indeks untuk nilai output. Penggunaan yang paling umum adalah untuk menentukan warna dan nilai intensitas dengan yang gambar tertentu akan ditampilkan, dan dalam konteks ini Lut sering disebut hanya colormap[29]. Sebuah contoh umum akan menjadi palet 256 warna (misal VGA hardware); yaitu, jumlah entri adalah 256, dan dengan demikian setiap entri ditangani oleh nilai pixel 8-bit. 8 bit dikenal sebagai kedalaman warna, kedalaman bit atau bit per pixel (bpp). Setiap warna dapat dipilih dari palet penuh, biasanya dengan total 16,7 juta warna; yaitu, lebar setiap entri adalah 24 bit, 8 bit per channel, yang berarti kombinasi dari 256 tingkat untuk masing-masing komponen merah, hijau, dan biru: 256 × 256 × 256 = 16.777.216 warna. Kasus lain yang umum digunakan adalah kedalaman elemen bit rendah (mis 4bpp per
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
elemen, dengan beberapa palet) composited menjadi frame buffer warna yang tinggi (misalnya di Playstation 2)[30].
Gambar 2.34. contoh Color lookup Table pada RGB.[30]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III PERANCANGAN PENELITIAN 3.1
Proses Kerja Sistem Pada pembuatan tugas akhir ini, akan dibuat sebuah prototipe conveyor yang dapat
memilah macam-macam pisang 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 conveyor akan bekerja secara otomatis sesuai dengan perintah yang telah diprogram. Proses yang terjadi ketika power atau catu daya regulator pada posisi “ON” yaitu mula-mula conveyor akan berjalan membawa pisang menuju tepat dibawah webcam yang akan dideteksi oleh sensor. Ketika sensor terhalang pisang, maka mikrokontroler mengirimkan karakter. Kemudian laptop akan merima karakter tersebut sebagai isyarat bahwa pisang telah berada tepat dibawah webcam. Pengenalan pola pada MATLAB akan secara otomatis menjalankan program pengenalan warna pisang. Setelah pisang telah dikenali, maka laptop akan mengirimkan sebuah karakter yang mendefinisikan pisang. untuk menentukan buah pisang akan diletakkan kekotak tertentu berdasarkan level kematangan pisang kepada microcontroller yang selanjutnya akan menggerakkan conveyor dua. Setelah itu jika sensor yang terdapat di conveyor dua menditeksi kotak, maka motor akan berhenti, kemudian conveyor satu akan kembali bergerak untuk menjatuhkan pisang kekotak.
Gambar 3.1. Blok Diagram Sistem
40
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
3.2.
Perancangan Hardwere Ada beberapa komponen dalam perancangan sub system perangkat keras pemilah
kematangan buah pisang, di antaranya yaitu: 1. 2 conveyor sebagai sistem mekanik yang mempunyai fungsi memindahkan barang dari satu tempat ketempat yang lain. 2. Minimum system ATmega32sebagaiI/O untuk mengontrol atau mengendalikan driver motor dan photodioda yang telah diprogram dalam mikrokontroler ATmega32 pada conveyor serta sebagai pengolah data serial yang dikirimkan dari komputer melalui USB to TTL converter. 3. Sensor cahaya digunakan untuk mendeteksi benda yang diletakan pada conveyor. Cara kerjanya yaitu jika sensor photodioda terhalang oleh benda atau mendeteksi benda, maka motor pada conveyor akan berhenti. 4. Penguat tegangan berfungsi menyediakan suatu tegangan keluaran dc tetap yang tidak dipengaruhi oleh perubahan tegangan masukan. 5. Rangkaian Driver motor + limit switch untuk pengendalian kecepatandan putaran motor DC.
3.2.1.
Perancangan Mekanik Conveyor
Pada tahap ini dilakukan perancangan mekanik dari conveyor tersebut, antara lain mendesain ukuran conveyor, penggunaan bahan dasar untuk conveyor yaitu papan kayu tipis setebal 3mm danpipa plastic 3 inci, ukuran belt 20cm untukconveyor satu dan 22cm untuk conveyor dua, panjang conveyor satu 100 cm, panjang conveyor dua 300 cm, dan kotak penampung berukuran 20cm x 20cm x 15cm terbuat dari papan kayu tipis. Pendesainan conveyor menggunakan software autocad 2010. Dalam desain terdiri dari dua Conveyor yaitu conveyor pertama untuk menggerakkan pisang dan conveyor kedua untuk menggerkkan tempat buah pisang. Gambar 3.2 adalah detail dari Conveyor. Motor yang digunakana dalah 2 Motor Dc 24V 2A untuk conveyor kedua, sedangkan yang digunakan pada conveyor pertama menggunakan Motor Dc 24v 1A.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
Gambar 3.2 Desain conveyor.
3.2.2. Minimum System ATmega32 Rangkaian minimum system berfungsi sebagai I/O untuk mengontrol atau mengendalikan driver motor dan photodiode yang telah diprogram dalam mikrokontroler ATmega32 pada conveyor serta sebagai pengolah data serial yang dikirimkan dari komputer melalui USB to TTL converter. Mikrokontroler membutuhkan minimum system yang terdiri dari rangkaian eksternal yaitu rangkaian osilator dan rangkaian reset.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
Untuk rangkaian osilator digunakan crystal dengan frekuensi sebesar 11,0592 MHz dan menggunakan kapasitor 22 pf pada pin XTAL1 dan XTAL2 di mikrokontroler. Rangkaian osilator ini berfungsi sebagai sumber clock bagi mikrokontroler. Pemberian kapasitor bertujuan untuk memperbaiki kestabilan frekuensi yang diberikan oleh osilator eksternal. Gambar 3.4 menunjukan rangkaian osilator.
Gambar 3.3. Rangkaian Osilator ATmega32 [10] Perancangan rangkaian reset bertujuan untuk memaksa proses kerja pada mikrokontroler dapat diulang dari awal. Saat tombol reset ditekan maka mikrokontroler mendapat input logika rendah, sehingga akan me-reset seluruh proses yang sedang dilakukan mikrokontroler. Gambar 3.5 adalah rangkaian reset untuk ATmega32.
Gambar 3.4. Rangkaian Reset ATmega32 [10] Pada gambar 3.4 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.Kapasitor 10nF digunakan untuk menghilangkan noise yang disusun seri dengan resistor. Rangkaian reset minimum system ATmega32 merupakan gabungan dari rangkaia push-button dan low-pass filter.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
3.2.3. Sensor Photodioda Sensor photodioda digunakan untuk mendeteksi benda yang diletakan pada conveyor. Cara kerjanya yaitu jika sensor photodioda terhalang oleh benda atau mendeteksi benda, maka motor pada conveyor akan berhenti. Rangkaian sensor photodioda ditunjukan oleh Gambar 3.5. rangkaian pertama digunakan untuk menghentikan conveyor pertama ketika sensor terhalang pisang, agar pisang dapat dideteksi level kematangannya. Sedangkan rangkaian kedua digunakan untuk menghitung kotak pada conveyor kedua untuk menempatkan pisang sesuai dengan tempatnya.
Gambar 3.5. Rangkaian Sensor Photodioda Dengan nilai vcc sebesar 5 volt dan arus maksimal infrared 100mA, maka hambatan dapat dihitung menggunakan rumus : 𝑅=
𝑉𝑐𝑐 𝐼
sehingga,
5
R = 100 𝑚𝐴 = 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 gambar 2.21 dan persamaan 2.14 sehingga 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 45
3.2.4. Regulator dan Penguat Arus Pada pembuatan tugas akhir ini, terdapatdua regulator yang satu terdiri dari ic 7805,dankapasitor. 7805 yang digunakan untuk regulator yaitu untuk memberikan daya pada minimum system ATmega32 rangkaian dapat dilihat pada gambar 3.6A, dan regulator lain yang terdiri dari ic 7824, dan diode. sedangkan 7824 digunakan untuk memberikan daya pada motor dc, Namun regulator tersebut belum dapat menggerakkan motor secara maksimal. Dengan demikian maka digunakan transistor 2N3055 agar arus keluaran ic 7824 yang memiliki tegangan keluaran sebesar 24volt menjadi lebih besar seperti rangkaian pada gambar 3.6B. Perancangan regulator pada gambar atau komponen dari rangkaian regulator mengancu pada landasan teori dan data sheet.
Gambar 3.6A.Rangkaian Regulator5v[14]. B. Rangkaian regulator 24v[13].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
3.2.5.
Driver motor DC denganlimit switch. Padaconveyormenggunakan motor DC 24volt makadibutuhkan rangkaian driver
motor DC H-Bridge transistor ini dapat mengendalikan arah putaran motor DC dalam 2 arah dan dapat dikontrol 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 protesi impuls tegangan induksi motor DC berupa dioda yang dipasang paralel dengan masing-masing transistor secara reverse bias[10].Digunakanya transistor tip dikarenakan transistor ini dapa tmenghasilkan arus yang tinggi Rangkaian ditambah dengan limit switch agar saat berlawan arah jarum jam maka dapat dihentikan pada saat tertentu seperti gambar 3.7. Dikarenakan arus saturasi transistor tip 142 adalah sebesar 4mA, dengan menggunakan persamaan 2.14 resistor makayang digunakan 1.4 kΩ.
Gambar 3.7 Driver motor DC[16].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
3.3. Perancangan Perangkat Lunak (Software) Pada perancangan perangkat lunak ini akan dibahas mengenai program kendaliconveyor secara keseluruhan diantaranya : 1) Flowchart program pengenalan kematangan pisang. 2) Perancangan GUI. Pada pembuatan flowchart ini digunakan software CodeVision 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 HSV dengan software MATLAB. Secara keseluruhan sistem kerja pada perancangan tugas akhir ini dapat ditunjukan flowchartpada gambar 3.8 dan 3.9. Cara kerja dari conveyor pemilah kematangan pisang ini yaitu mula-mula pisang diletakan pada conveyor. Ketika pisang dideteksi oleh sensor photodioda yang artinya benda berada dibawah webcam, maka mikrokontroler ATmega32 akan mengirimkan suatu karakter secara serial kepada laptop untuk menjalankan program image processing agar benda 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 pisang ke tempat yang sudah disediakan sesuai kematangan pisang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
Mulai
Conveyor 2 siaga
Conveyor 1 berhenti
Conveyor 1 aktif
TIDAK
Sensor menditeksi benda
Mengirim sinyal ke pc secara serial
YA
Pengenalan kematangan pisang
Matlab menerima karakter
YA
TIDAK
tidak Menerima Karakter a?
Menerima Karakter b?
tidak
Sensor1 conveyor2 Aktif (10000)
tidak
ya
ya
ya
Menerima Karakter c?
tidak
Sensor2 conveyor2 Aktif (01000)
Sensor3 conveyor2 Aktif (00100)
Tidak
Menerima karakter e?
ya
ya
Sensor4 conveyor2 Aktif (00010)
Sensor5 Conveyor2 Aktif (00001)
Conveyor2 bergerak
C B
Menerima Karakter d?
A
Gambar 3.8 flowchart sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
C
B A
TIDAK
Sensor menditeksi objek YA
Conveyor2 berhenti
Conveyor1 Aktif (5 detik)
Conveyor2 Kembali ke posisi awal
TIDAK
Limit switch menditeksi benda YA
Conveyor2 berhenti
TIDAKTombol
stop ditekan YA
selesai
Gambar 3.9 flowchart system (lanjutan)
3.4.1. FlowchartProgram Pengenalan kematanganpisangPada MATLAB Program image processing diproses oleh software MATLAB.Pada tugas ini pengidentifikasian kematangan buah didasarkan proporsi warna kuning dengan nilai hue pada HSV. 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 Agar mempermudah proses segmentasi area warna maka dilakukan mengubah gambar RGB menjadi HSV hasil gambar dapat dilihat pada gambar 3.11a dan 3.11b. Terkadang dalam hasil gambar HSV terdapat noise, untuk menghilangkan noise tersebut maka perlu mengatur saturasinya, seperti pada gambar 3.11c. Dalam hal model warna cahaya, saturasi mengacu pada kemurnian yang relative atau pencampuran sinar putih dengan sebuah hue. langkah selanjutnya yaitu proses segmentasi area bentuk pisang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
a
b
c
Gambar 3.10.a.Gambar pisang asli, b. Gamabar HSV, c. Saturasi dihilangkan.
Segmentasi adalah membagi suatu citra menjadi wilayah-wilayah yang homogen. Citra dipisahkan / dibagi atas dasar perubahan yang mencolok dari derajad kecerahannya. Penggunaan secara umum adalah untuk deteksi titik, garis, area, dan sisi citra. Pada kategori kedua, didasarkan atas thresholding, region growing, dan region spiltting and merging. Prinsip segmentasi citra bias diterapkan untuk citra yang statis maupun dinamis.
a
b
c
Gambar 3.11. a.Segmentasi area pisang, b. Segmentasi area hue, c. Segmentasi hue yang berwarna kuning.
Gambar 3.12. Area pisang yang berwarna kuning.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
Setelah segmentasi bentuk pisang didapat seperti gambar 3.12a, langkah selanjutnya yaitu segmentasi area yang berwarna kuning seperti gambar 3.12c, tetapi untuk mengambil area hue yang warna kuning maka diperlukan mengambil semua area warna dari gambar seperti pada gambar 3.12b, seperti yang telah dijelaskan padag ambar 2.30, warna kuning terdapat pada derajad ke 60 lingkaran warna, agar nilai warna kuning dapat diambil warna yang tidak kuning akan dibuang dan segmentasi warna kuning dapat dilihat pada gambar 3.12c. Setelah segmentasi bentuk pisang dan area warna kuning didapat, langkah selanjutnya yaitu segmentasi area pisang yang berwarna kuning, agar menghilangkan warna kuning yang berada di luar area pisang, seperti gambar 3.13 Karena pada tugas ini, kematangan buah pisang ditentukan dengan banyaknya warna kuning, jika warna kuning tidak ada maka dianggap level 1 dan seterusnya seperti level kematanan pada gambar 2.26, kemudian menghitung bagian warna kuning, dari skala 0 sampai 1. Ketika nilai proporsi warna kuning didapatkan, kemudian mencari nilai tersebut pada lookup table Table 3.1. Table 3.1. lookup table Level pisang Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7
Nilai proporsi warna kuning pisang + −0.001 0.00-0.05 0.05-0.25 0.25-0.45 0.45-0.65 0.65-0.79 0.79-0.84 0.84-0.89
Level kematangan pisang akan muncul ketika nilai kuning yang didapat mendekati atau sesuai dengan pada lookup table. Flowchart pengenalan buah pisang dapat dilihat pada gambar 3.13.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
tidak Atur port komunikasi
mulai
Convert RGB to HSV
Level 1 ? YA
TIDAK
Menerima karakter
Segmentasi bentuk pisang
Level 2 ?
ya
Segmentasi warna kuning
TIDAK
Level 3 ?
TIDAK
Capture image (getsnapshot)
Segmentasi bentuk pisang yang berwarna kuning
Level 4 ?
TIDAK
YA
Kirim karakter a
Perhitungan proporsi warna kuning
Level 5 ?
TIDAK
Level 6 ?
YA
Kirim karakter b
Pencarian Look Up Table
TIDAK
Level 7 ?
TIDAK
YA
Kirim karakter c
Kirim karakter d
Hapus komunikasi
Reset
Tidak
Ya
Reset
Stop / exit
Tidak
Ya
stop
Gambar 3.13.flowchart system pengenalan pisang.
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.15 perancangan GUI mengunakan program Visio.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
Gambar asli
GAMBAR HUE KUNING
start Gambar HSV
stop reset
Port
NILAI HUE KUNING PISANG
DATA
LEVEL PISANG
TEMPAT PISANG
Gambar 3.14. Perancangan GUI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV HASIL PENGAMATAN DAN PEMBAHASAN Pada bab ini akan dibahas mengenai hasil pengamatan dari prototipe pemilah buah pisang berdasarkan warnanya. Hasil pengamatan berupa, data pengenalan pisang berdasarkan nilai warna kuningnya, tingkat keberhasilan pengenalan objek, dan tingkat keberhasilan conveyor memindahkan pisang ke tempat yang telah disiapkan.
4.1. Bentuk Fisik dan Sistem Kerja Conveyor. Perangkat keras terdiri atas conveyor yang dapat ditunjukan pada gambar 4.1, minimum system ATmega32 dengan regulator gambar yang dapat ditunjukan pada 4.2a, pisang yang dapat ditunjukan pada gambar 4.2b, driver motor ditunjukan gambar 4.2c, relay ditunjukan gambar 4.2d , tempat peletakan pisang ditunjukan gambar 4.2e.
Gambar 4.1. Conveyor
54
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
a
b
c
d
d Gambar 4.2. a. Minimum System, b. Pisang, c. Driver Motor, d. Relay, e. Tempat Peletakan Pisang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
Mekanisme kerja sistem adalah conveyor akan bekerja secara otomatis sesuai dengan perintah yang telah diprogram. Proses yang terjadi ketika power atau catu daya regulator pada posisi “ON” yaitu mula-mula conveyor akan berjalan membawa pisang menuju tepat dibawah webcam yang akan dideteksi oleh sensor. Ketika sensor terhalang pisang, maka mikrokontroler ATmega32 akan mengirimkan karakter ‘z’ secara serial melalui komunikasi serial USART. Kemudian laptop akan merima karakter tersebut sebagai isyarat bahwa pisang telah berada tepat di bawah webcam. Proses selanjutnya yaitu Pengenalan pola pada MATLAB akan secara otomatis menjalankan program pengenalan warna pisang. Setelah pisang telah dikenali, maka laptop akan mengirimkan sebuah karakter yang mendefinisikan pisang. Karakter ‘a’ yang dikirim merupakan pisang yang terdeteksi “level_1”, Karakter ‘b’ yang dikirim merupakan pisang yang terdeteksi “Level_2” atau “level_3”, Karakter ‘c’ yang dikirim merupakan pisang yang terdeteksi “Level_4 atau Level_5”, Dan Karakter ‘d’ yang dikirim merupakan pisang yang terdeteksi “Level_6 atau Level_7”, Setelah mikrokontroler ATmega32 menerima karakter tersebut, maka conveyor akan memindahkan pisang tersebut ke tempat peletakan sesuai dengan level pisang. Proses in akan terus berlangsung hingga tombol catu daya pada posisi “OFF”.
4.2. Hasil Data Pengujian dan Pembahasan Pada sub bab ini, dilakukan pengujian dan pembahasan terhadap proporsi nilai warna kuning dari pisang berlevel 1 sampai 7 sebanyak 10 kali pengambilan data, tingkat keberhasilan sistem saat mendeteksi pisang sebanyak 10 kali pengambilan data, tingkat keberhasilan conveyor saat mengambil dan memindahkan pisang berdasarkan warnanya yang dilakukan sebanyak 5 kali percobaan, dan pengujian komunikasi serial.
4.2.1. Pengujian Proporsi Nilai Warna Kuning Pada Pisang Pengujian proporsi nilai warna kuning dari masing-masing bentuk pisang dimaksudkan untuk mengetahui proporsi warna kuning dari masing-masing pisang yang akan diproses dan dikenali. Dilakukan sebanyak 10 kali percobaan dari masing-masing pisang. pengujian dilakukan selama 7 hari, berdasarkan Standar kematangan pisang berdasarkan warna pada gambar 2.26. Pisang yang digunakan adalah pisang jenis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
Cavendish dan dengan melihat kondisi pisang, maka Dari pengujian tersebut, diperoleh tabel 4.1. Tabel 4.1. Data Proporsi Masing-Masing Level Pisang Nilai Data Pengambilan Data ke1 2 3 4 5 6 7 8 9 10 Rerata Range Data
Level 1
Level 2
Level 3
Level 4
Level 5
Level 6
Level 7
0.03212 0.00231 0.02495 0.01325 0.03465 0.04348 0.04351 0.04127 0.02479 0.03495
0.08360 0.10527 0.14628 0.17394 0.15392 0.14037 0.18573 0.17296 0.10048 0.12629
0.41747 0.43722 0.39845 0.44248 0.44248 0.39041 0.41763 0.43842 0.38520 0.34186 0.029528 0.13888 0.41116
0.57246 0.67351 0.48266 0.50286 0.54499 0.52427 0.64254 0.66341 0.61942 0.57733 0.58034
0.69341 0.71147 0.68997 0.76836 0.61748 0.73567 0.72614 0.77878 0.73561 0.72649 0.71933
0.79577 0.80322 0.83673 0.89447 0.85833 0.82332 0.81337 0.82993 0.83114 0.83663 0.83429
0.84755 0.83752 0.86842 0.84465 0.85228 0.84658 0.86631 0.84772 0.87379 0.85886 0.85036
0.00 0.05
0.05 0.25
0.45 0.65
0.65 0.78
0.78 0.84
0.84 0.90
0.25 0.45
1 0.9 0.8 LEVEL 1
0.7
LEVEL 2
0.6
LEVEL 3 0.5
LEVEL 4
0.4
LEVEL 5
0.3
LEVEL 6
0.2
LEVEL 7
0.1 0 1
2
3
4
5
6
7
8
9
10
Gambar 4.3. Grafik Data Proporsi Warna Kuning.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
Range data yang digunakan sengaja dibuat lebih dengan alasan untuk mengantisipasi apabila data yang terdeteksi lebih besar atau lebih kecil dari data yang telah diambil sampel nya.
4.2.2. Tata Peletakan Pisang Peletakan pisang saat dibawa conveyor adalah sesuai dengan batasan masalah. Apabila peletakan pisang tidak sesuai dengan batasan masalah, maka sistem tidak dapat bekerja maksimal. Hal ini dikarenakan kemampuan sistem dalam mendeteksi atau mengenali bentuk pisang terbatas dan conveyor memiliki batasan-batasan tertentu agar dapat menjalankan tugas untuk mengambil dan meletakan pisang dengan baik. Tata peletakan dapat dilihat pada gambar 4.4.
Gambar 4.4. Peletakan Pisang.
4.2.3. Pengujian Keberhasilan Sistem Mendeteksi Pisang Pada sub bab ini, dilakukan analisa tingkat keberhasilan sistem saat proses pengenalan pisang. Namun apabila terdapat pisang lain yang memiliki data sesuai range yang telah ditentukan sebelumnya, maka sistem akan tetap membandingkan dengan range yang ada. Tingkat keberhasilan sistem ditunjukan tabel 4.2. keberhasilan sistem mengenali pisang ditentukan apabila pengenalan pisang sesuai dengan level pisang dan gambar pisang yang terdeteksi dapat ditunjukan gambar 4.5, gambar 4.6, dan gambar 4.7. Ketidak berhasilan sistem mengenali pisang dikarenakan gambar yang ditangkap oleh webcam c170 memiliki nilai HSV yang berbeda-beda, sehingga hasil range proporsi warna kuning tidak sesuai dengan range yang seharusnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 59
Tabel 4.2. Pengujian Keberhasilan Sistem Mendeteksi Kematangan Pisang. PENGUJIAN KEBERHASILAN SISTEM MENDETEKSI KEMATANGAN PISANG PISANG 1 2 3 4 5 6 7 8 9 10 LEVEL 7 V X V V V V V V X V LEVEL 6 V V V X X V V X V X LEVEL 5 V V V V X V X V V V LEVEL 4 V X V V V V V V V V LEVEL 3 V V V V V V V V V V LEVEL 2 V V V V V V V V V V LEVEL 1 V V V V V V V V V V Keterangan : V(Berhasil) X(Tidak Berhasil)
Gambar 4.5. Pengujian Level 7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 60
a
b
Gambar 4.6. a.Pengujian Level 6, b.Pengujian Level 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
a
b Gambar 4.7. a. Pengujian Level 4, b. Pengujian Level 3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 62
a
b Gambar 4.8.a.Pengujian level 2, b. Pengujian Level 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
Berdasarkan tabel 4.2, maka dapat disimpulkan bahwa sistem mampu mengenali pisang apabila sesuai dengan batasan masalah yang telah ditentukan. Selain itu, sistem berhasil melakukan counting terhadap jumlah pisang yang telah terdeteksi.
4.2.4. Pengujian Keberhasilan Conveyor untuk Memindahkan Pisang Pada pengujian conveyor memindahkan pisang dilakukan sebanyak lima kali percobaan dari masing-masing level pisang. Ketika sistem telah mengenali bentuk pisang, maka conveyor akan berhenti, lalu ketika matlab mengirim karakter ‘a’, ‘b’, ‘c’, atau ‘d’ maka mikrokontroler ATmega32 akan mengontrol pergerakan
conveyor untuk
memindahkan pisang sesuai dengan peletakan yang telah ditentukan sebelumnya, pisang dengan level 1 akan diletakkan pada kotak 1, pisang dengan level 2 dan 3 akan diletakkan pada kotak 2, pisang dengan level 4 dan 5 akan diletakkan pada kotak 3, pisang dengan level 6 dan 7 akan diletakkan pada kotak 4. Pengujian keberhasilan conveyor memindahkan pisang dilakukan secara terpisah dengan pengenalan pisang maka dari itu hanya dilakukan 5 kali percobaan pada setiap level. Berdasarkan tabel 4.3 maka dapat dianalisa bahwa conveyor dapat memindahkan pisang dengan baik. Tingkat keberhasilan conveyor yaitu 100%. Tetapi conveyor berjalan dengan lambat. Tabel 4.3. Pengujian Keberhasilan Conveyor Memindahkan Pisang PENGUJIAN KEBERHASILAN CONVEYOR MEMINDAHKAN PISANG PERCOBAAN PISANG 1 2 3 4 5 LEVEL 1 V V V V V LEVEL 2 V V V V V LEVEL 3 V V V V V LEVEL 4 V V V V V LEVEL 5 V V V V V LEVEL 6 V V V V V LEVEL 7 V V V V V Keterangan : V(Berhasil) X(Tidak Berhasil)
4.2.5. Pengujian Komunikasi Serial Pada pengujian komunikasi percobaan dilakukan sebanyak sepuluh kali pada transmiter dan reciver antara matlab dengan mikrokontroler. Data yang dikirim merupakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 64
data bilangan biner, dan karakter. Hasil percobaan dapat dilihat pada Tabel 4.4 dan Tabel 4.5 Tabel 4.4. Pengujian Komunikasi Pengirim PENGUJIAN KEBERHASILAN KOMUNIKASI TRANSMITER PERCOBAAN DATA 1 2 3 4 5 6 7 8 0B01110011 V V V V V V V V ‘A’ V V V V V V V V Keterangan : V(Berhasil) X(Tidak Berhasil)
9 V V
10 V V
Tabel 4.5. Pengujian Komunikasi Penerima. PENGUJIAN KEBERHASILAN KOMUNIKASI RECEIVER PERCOBAAN DATA 1 2 3 4 5 6 7 8 9 10 0B01110011 V V V V V V V V V V ‘A’ V V V V V V V V V V Keterangan : V(Berhasil) X(Tidak Berhasil) Berdasarkan table 4.4 dan table 4.5 maka dapat disimpulkan bahwa komunikasi serial antara matlab dengan mikrokontroller dapat berjalan sesuai yang diinginkan. Pengujian komunikasi serial, mikrokontroler mengirim dan menerima data dilakukan dengan menggunakan aplikasi terminal.
4.3. Analisa dan Pembahasan Perangkat Lunak Pada sub bab ini akan dibahas mengenai listing program pada CodeVision AVR dan MATLAB.
4.3.1. Aplikasi CodeVision AVR Pada sub bab ini akan dijabarkan dan dijelaskan masing-masing fungsi pada listing program yang diprogram menggunakan software CodeVision AVR diantaranya program pengendali sensor photodioda menggunakan fasilitas ADC (Analog to Digital Converter), program untuk komunikasi serial menggunakan USART (Universal Synchronous Asynchronous Receiver Transmiter).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 65
4.3.1.1. Pengendali Sensor Photodioda Program pengendali sensor photodioda menggunakan fasilitas yang dimiliki oleh mikrokontroler ATmega32 yaitu ADC (Analog to Digital Converter). Fungsinya yaitu untuk mengubah tegangan analog menjadi tegangan digital. Tegangan digital tersebut akan digunakan untuk mengontrol conveyor saat membawa pisang.
Gambar 4.9. Listing Program ADC Pada listing program yang ditunjukan gambar 4.12, digunakan read_adc(0) yang artinya menggunakan PORTA.0 sebagai PORT masukan untuk mengubah tegangan analog menjadi tegangan digital. Pada bagian sensor= read_adc(0)/2 maksud dari pembagian 2 yaitu agar nilai desimal ADC maksimal yaitu 1023 dibagi 2 yaitu 511. Sehingga apabila tegangan masukan 0 Volt sampai 5 Volt, akan diubah melalui ADC menjadi 0 desimal hingga 511 desimal. Pada bagian listing program gambar 4.13, fungsinya yaitu untuk mengendalikan motor penggerak conveyor yang dikontrol menggunakan PORTB.0. Terdapat nilai 200 pada bagian “if (sensor>=200)” ini dimaksudkan untuk membuat PORTB.0 bernilai “0” jika nilai sensor lebih besar sama dengan dari 200 desimal ADC. Hal ini berarti menyebabkan motor pada conveyor berhenti berputar. Jika kondisi sensor kurang dari 200, maka motor conveyor akan terus berputar.
Gambar 4.10. Listing Program Pengendali Conveyor
4.3.1.2. Pengendali Komunikasi USART Pada
bagian
ini
berfungsi
sebagai
komunikasi
serial
USART
untuk
menghubungkan antara mikrokontroler ATmega32 dengan laptop. Baudrate yang digunakan yaitu 9600 bps. Fungsi “getchar()” yaitu untuk menerima karakter dari laptop ke mikrokontroler. Sedangkan fungsi “putchar()” yaitu untuk mengirimkan suatu karakter kepada laptop. Listing program dapat dilihat pada gambar 4.14.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
Gambar 4.11. Listing Program Komunikasi USART
4.3.1.3. Pengendali Motor Program pengendali motor menggunakan interrupt sebagai pembangkit pulsa untuk menghitung kotak yang lewat. Listing program pengendali motor ditunjukan gambar 4.38.
Gambar 4.12. Listing program pengendali putar motor
Gambar 4.13. Penginisaialisasi Port Listing program pada gambar 4.15 adalah penyetingan yang digunakan motor agar dapat bergerak. Gambar 4.16 merupakan penyetingan nama port, penyetingan ini dilakukan agar mempermudah pemanggilan. jika motor1 aktif maka PORTB.0 juga akan aktif, atau jika motor2 aktif maka PORTB.1 juga aktif, begitu pula yang terjadi pada motor3. Kodisi nilai data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 67
Listing program yang ditunjukan pada gambar 4.14 merupakan menambahkan nilai data, setiap interrupt aktif maka nilai dataakan berubah, setelah nilai data dan kotak sama maka motor2 akan berhenti. Nilai kotak didapat dapat dilihat pada listing program Gambar 4.15. ketika labtop mengirim karakter ‘a’ maka nilai kotak adalah 1, jika labtop mengirim karakter ‘b’ maka nilai kotak akan menjadi 2, lalu ketilka karakter ‘c’ dikirim maka nilai kotak adalah 3, dan kemudian jika karakter ‘d’ yang dikirim maka nilai kotak adalah 4.
Gambar 4.14. Pemberian Nilai data
Gambar 4.15. Pemberian Nilai Kotak.
4.3.1.4. Subrutin Program Utama Pada bagian ini akan dibahas mengenai subrutin program yang akan dieksekusi secara terus menerus karena terdapat didalam fungsi while. Listing program dapat dilihat pada gambar 4.16. Pada bagian listing program gambar 4.16, awalnya motor conveyor 1 bergerak membawa pisang mendekati webcam. Ketika pisang berada dibawah webcam, sensor photodiode yang terdapat dibawah webcam akan bekerja ketika terhalang pisang. Lalu port.0 ADC akan menerima tegangan dan jika nilainya lebih dari 200 maka motor conveyor 1 akan berhenti dan mengirim karakter ‘z’ kepada matlab. Selanjutnya masuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 68
keprogram subrutin ‘pilah_pisang’ yang dapat dilihat pada gambar 4.14 untuk menerima karakter. Setelah karakter diterima motor conveyor 2 akan bergerak maju selama nilai data lebih kecil dari nilai kotak. Kemudian motor akan berhenti, motor conveyor1 akan bergerak selama 5 detik lalu berhenti, kemudian motor conveyor 2 akan bergerak mundur. Subrutin yang terdapat didalam “while(1)” akan dieksekusi secara terus menerus hingga power “OFF” atau tombol reset ditekan. Hal ini dikarenakan didalam kurung while diberi angka “1” yang berarti bernilai true atau akan dieksekusi secara terus menerus.
Gambar 4.16. Subrutin Program Utama
4.3.2. Aplikasi MATLAB Pada sub bab ini akan dijabarkan listing program yang diprogram menggunakan software MATLAB diantaranya penjelasan tampilan GUI, inisialisasi komunikasi serial, inisialisasi webcam, proses pengolahan citra, dan proses pengenalan bentuk pisang.
4.3.2.1. Tampilan Gui MATLAB GUI (Graphical User Interface) yaitu suatu tampila yang berfungsi untuk 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. Tampilan GUI yang dibuat dapat ditunjukan pada Gambar 4.20. Terdapat beberapa fasilitas pada tampilan GUI yang digunakan yaitu axes, edit text, popupmenu, dan push butoon. Fasilitas axes berfungsi menampilkan gambar, grafik,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 69
ataupun diagram. Axes berfungsi menampilkan gambar dari pisang dan proporsi warna kuning. Selain axes, terdapat fasilitas edit text yang berfungsi untuk menampilkan jumlah pisang yang telah terdeteksi, nilai proporsi warna kuning, dan menampilkan hasil deteksi sistem. Sedangkan popupmenu berfungsi menampilkan daftar pilihan PORT komunikasi yang digunakan untuk melakuan komunikasi serial antara laptop dan mikrokontroler. Bagian yang terakhir yaitu push button. Push button berfungsi sebagai sebuah tombol yang digunakan untuk mengontrol suatu program yang akan diekseusi dengan cara diklik.
Gambar 4.17. Tampilan GUI MATLAB
4.3.2.2. Inisialisasi Komunikasi Serial Sebelum menghubungkan laptop dengan mikrokontroler Atmega32, maka pada bagian program MATLAB harus di inisialisasi terlebih dahulu. Hal ini dikarenakan pada bagian laptop dengan mikrokontroler harus memiliki baudrate yang sama. Jika kedua perangkat tidak memiliki baudrate yang sama, maka sudah dapat dipastikan kedua perangkat ini tidak akan dapat berkomunikasi satu sama lainnya. Program inisialisasi komunikasi serial ditunjukan gambar 4.21.
Gambar 4.18. Inisialisasi Komunikasi Serial
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 70
4.3.2.3. Inisialisasi Webcam Untuk melakukan proses pengolahan citra, maka dibutuhkan perangkat keras berupa kamera atau webcam. Oleh karena itu, maka diperlukannya proses inisialisasi perangkat keras tersebut agar dapat dikenali oleh MATLAB. Inisialisasi webcam dapat dilihat pada gambar 4.22.
Gambar 4.19. Inisialisasi Webcam Perintah program “winvideo” adalah perintah program untuk menginisilasi webcam agar bekerja pada laptop dengan prosessor windows dan kemudian informasi tersebut akan diinisialisasi ke dalam program. Hal ini bertujuan agar antara webcam dengan software Matlab dapat melakukan komunikasi. ‘RGB24_320x240’ yang tampil adalah merupakan jenis warna dan resolusi piksel yang dipilih untuk proses pengenalan gambar. Tidak semua webcam memiliki Jenis warna warna yang sama, maka harus dilihat dahulu di Image Acquisition Tool. Nilai 1 pada program menunjukkan webcam yang digunakan.
4.3.2.4. Proses Pengolahan Citra Proses pengolahan citra merupakan suatu proses untuk mengolah suatu kualitas gambar atau citra yang telah diambil kamera atau webcam agar gambar tersebut dapat dikenali dan memiliki nilai-nilai tertentu. Nilai-nilai yang telah didapat kemudian diproses untuk mengklasifikasikan gambar-gambar tertentu. Proses secara berurutan yaitu mulamula gambar diambil dengan fungsi “getsnapshoot”, kemudian gambar yang telah diambil diproses dan diubah menjadi gambar Hsv dengan tujuan untuk mempermudah dalam pemrosesan. Langkah selanjutnya yaitu mengambil bagian saturasinya agar dapat bentuk pisang dapat dihitung, langkah selanjutnya yaitu proses pengambilan nilai hue dari gambar Hsv yang bertujuan untuk menghitung warna kuning dari gambar. Kemudian langkah berikutnya yaitu proses segmentasi warna kuning agar diketahui area warna kuning pisang, proses yang terakhir yaitu menghitung proporsi warna kuning pada pisang. Proses pengolahan citra ditunjukan gambar 4.20.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 71
Gambar 4.20. Proses Pengolahan Citra
4.3.2.5. Proses Pengenalan Pisang Berdasarkan nilai-nilai dari tabel 4.3, maka dibuat sebuah range yang menentukan bentuk pisang tersebut. Untuk level 1 range data yang digunakan yaitu antara 0.00 - 0.05, untuk Level 2 range data yang digunakan yaitu antara 0.05 - 0.25, kemudian Level 3 range data yang digunakan yaitu antara 0.25 - 0.45, untuk Level 4 range data yang digunakan yaitu antara 0.45 - 0.65. untuk Level 5 range data yang digunakan yaitu antara 0.65 - 0.79. untuk Level 6 range data yang digunakan yaitu antara 0.79 - 0.84. untuk Level 7 range data yang digunakan yaitu antara 0.84 - 0.90. Dari data tersebut, maka dapat dibuat range nilai untuk mengetahui dan mengenali dari masing-masing Level pisang. Listing program ditunjukan gambar 4.21.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 72
Gambar 4.21. Listing Program Pengenalan Pisang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB V KESIMPULAN DAN SARAN 5.1.
Kesimpulan Dari hasil pengujian serta pengambilan data pada aplikasi pengenalan objek untuk
conveyor pemisah pisang berdasarkan bentuk warnanya, dapat diambil kesimpulan: 1. Sistem conveyor dapat memindahkan pisang dengan baik sesuai dengan level kematangan pisang. 2. Sistem berhasil untuk mengenali pisang sesuai dengan level kematangan. 3. Pisang dengan kematangan level 6 dan level 7 sulit untuk dibedakan karena memiliki range proporsi warna kuning yang kecil atau hampir sama. 4. Sistem mampu mengenali level pisang dan berhasil melakukan counting jumlah pisang yang telah terdeteksi. 5. Gambar proporsi warna kuning pisang pada Matlab, membutuhkan waktu yang cukup lama untuk tampil pada GUI, ketika komunikasi serial. 6. Conveyor belum dapat bergerak dengan cepat.
5.2.
Saran Saran-saran bagi pengembangan selanjutnya adalah: 1. Lebih banyak variasi pengenalan kematangan pisang. 2. Waktu sistem untuk proses conveyor dibuat lebih cepat. 3. Pengidentifikasian pisang tidak hanya dari warnanya. 4. Teliti dalam setting program.
73
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Pustaka [1]
Satuhu, S. dan A. Supriyadi. 2000. Pisang: Budidaya, pengolahandanprospekpasar.
[2]
FebryYuniMulato.
2015.
Klasifikasikematanganbuahjambubijimerahdenganmenggunakan
model
fuzzy,
UniversitasNegri Yogyakarta, Yogyakarta, [3]
Prianggono, 2005,pendeteksibuahjeruk lemon padapohonnyasecaraonline/ real time menggunakankamera, http://repository.ipb.ac.id/bitstream/123456789/40675/3/Bab%202%202006jpr.pdf, diaksestanggal 23 november 2015
[4]
Belt conveyorhttp://id.shvoong.com/social-sciences/education/2224369-beltconveyor/#ixzz1oYwm5n2t
[5]
Perawatan
belt
conveyor.
http://www.informasi-training.com/perawatan-belt-
conveyor [6]
Motordchttp://staff.ui.ac.id/system/files/users/chairul.hudaya/material/dcmotorpaperandqa .pdf, diaksespadatanggal 4 desember 2015
[7]
Motor-dchttp://kk.mercubuana.ac.id/elearning/files_modul/13020-886267064764.pdf,diaksespadatanggal 4 desember 2015
[8]
Limit switch dansaklar push on, http://elektronika-dasar.web.id/limit-switch-dansaklar-push-on/
[9]
----, 2011,Data Sheet Mikrokontroler ATmega32, Atmel.
[10]
Agus Bejo, 2008, C dan AVR Rahasia Kemudahan Bahasa C dalam Mikrokonroler ATMEGA8535, 1st ed, GRAHA ILMU, Yogyakarta.
[11]
Boylestad, R. and Nashelsky. L., Electronic Devices and Circuit Theory, seventh edition, Prentice Hall, New Jersey Columbus, Ohio.
[12]
Fathoni, Oktober 2010, Unjuk Kerja Catu Daya 12 Volt 2A dengan Pass Element Transistor NPN dan PNP, Jurnal Neutrino,Vol.3, No.1.
[13]
L7805CT Datasheet, PDF
[14]
drivermotordc h-bridge transistor, http://elektronika-dasar.web.id/driver-motor-dch-bridge-transistor/, diaksespadatanggal 23 febuari 2016.
[15]
Hd
web
cam
c170hhttp://www.logitech.com/en-in/product/hd-webcam-c170h
,diakses pada tanggal 20 November 2016.
74
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 75
[16]
Budiharto, W., 2008, Panduan Praktikum Mikrokontroler AVR Atmega16, PT Elex Media Komputindo, Jakarta.
[17]
http://repository.ipb.ac.id/handle/123456789/74897 diakses pada tanggal 30 maret 2016.
[18]
http://digilib.unila.ac.id/1302/8/BAB%20II.pdf, diakses pada tanggal 21 November 2016.
[19]
Kadir, Abdul. 2013. Teori dan Aplikasi Pengolahan Citra. Yogyakarta : Andi
[20]
Thecnikal
standards
and
protocol
for
fruit
ripening
chamber
in
indiahttp://nhb.gov.in/guideline/cs4.pdf, diaksespadatanggal 28 juli 2016. [21]
Saraswati, Yulia. 2009. Sistem Klasifikasi Jenis Dan Kematangan BuahTomat Berdasarkan Bentuk Dan Ukuran Serta Warna Permukaan KulitBuah Berbasis Pengolahan Citra , Tugas Akhir, Bandung : InstitutTeknologi Telkom.
[22]
ussie.staff.gunadarma.ac.id/Downloads/files/13803/segmentasi+Aniati.pdf
[23]
Wijaya, M.Ch., dan Prijono, A., 2007, Pengolahan Citra Digital Menggunakan MATLAB, Informatika, Bandung.
[24]
Hue,value,saturation,
http://learn.leighcotnoir.com/artspeak/elements-color/hue-
value-saturation/, diaksespadatanggal28 juli 2016. [25]
Hsv and Hsl, en.wikipedia.org, diaksespadatanggal 3 agustus 2016.
[26]
EricksRachmatSwediadan Margi Cahyanti, 2010, Pengolahancitra, alogaritmatransformasiruangwarna, Depok.
[27]
Charles A. Poynton (2003). Digital Video and HDTV: Algorithms and Interfaces. Morgan Kaufmann. ISBN 1-55860-792-7.
[28]
Digital Image Processing, http://www.sprawls.org/resources/DIGPROCESS/module.htm#beginning, di aksespadatanggal 2 agustus 2016
[29]
Glossary - Look-up Tables and Colormaps,http://homepages.inf.ed.ac.uk/rbf/HIPR2/colmap.htm, di aksespadatanggal 2 agustus 2016.
[30]
Color lookup table en.wikipedia.org, diaksespadatanggal 2 agustus 2016.
[31]
----, 2002,Data Sheet Transistor 2N3904, KEC.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 76
[32]
----, 1999,Data Sheet Transistor 2N3055, STMicroelectronics.
[33]
Li, C., Cao, Q., dan Guo, F. (2009). A Method for Color Classification of FruitsBased on Machine Vision. WSEAS Transactions on Systems, 8 (2). Shanghai: Shanghai
Jiao
Tong
University.Diakses
dari
http://www.wseas.us/e-
library/transactions/systems/2009/31-909.pdf.diaksespadatanggal 12 mei 2016. [34]
Noviyanto,
Ary.
(2009).
Klasifikasi
KematanganVarietasTomatMerahdenganMetodePerbandingan Yogyakarta: Universitas Gajah Mada.
Tingkat Kadar
Warna.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L2 Rangkaian Minimum System ATmega32 Rangkaian Untuk Sensor Saklar J10 CONN-SIL3
D1
1
VI
8 7 6 5
1N4001
1 2 3
J1
1 2 3 4
CONN-DIL8
1 2 3 4 5 6 7 8
3
2
J2
CONN-SIL3
DC Source
VO
10 9 8 7 6
+VDC
GND
3 2 1
C1
C2
100uF
100uF
J1
R1
CONN-DIL10
330
D2
GND
1 2 3 4 5
J11
U2 Regulator Tegangan 7805
PORT C
J2 1 2 3 4 5 6 7 8
5V DC
LED
PORT B
J4 1 2 3 4 5
MOSI Reset SCK MISO
10 9 8 7 6
+5V GND
CONN-DIL10
J7
PB
Downloader
J8
R2 4k7
U1 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8
CONN-SIL8 8 7 6 5 4 PD 3 2 1
14 15 16 17 18 19 20 21
CONN-SIL8
13 12 9
X1
J5
PB0/T0/XCK PB1/T1 PB2/AIN0/INT2 PB3/AIN1/OC0 PB4/SS PB5/MOSI PB6/MISO PB7/SCK PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP1 PD7/OC2 XTAL1 XTAL2 RESET
PA0/ADC0 PA1/ADC1 PA2/ADC2 PA3/ADC3 PA4/ADC4 PA5/ADC5 PA6/ADC6 PA7/ADC7 PC0/SCL PC1/SDA PC2 PC3 PC4 PC5 PC6/TOSC1 PC7/TOSC2
AREF AVCC
ATMEGA8535
40 39 38 37 36 35 34 33
1 2 3 4 5 6 7 8
22 23 24 25 26 27 28 29
1 CONN-SIL8 2 3 4 5 PC 6 7 8
32 30
1 CONN-SIL8 2 ARev 3
J3
PA
1 PORT D.2
J6
R1
R3
R2
100R
100
20k
R4
R5
R6
R7
R8
R9
R10
R11
R12
R13
R14
100R
20K
100R
25k
100R
25k
100R
25k
100R
20k
R15
R16
100R
20k
20k
D1
D2
D3
D4
D5
D6
D7
D8
IR
PHOTO
IR
PHOTO
iR
photo
IR
PHOTODIODE
D9
D10
IR
PHOTODIODE
D11
D12
IR
PHOTODIODE
D13
D14
IR
PHOTODIODE
D15
D16
IR
PHOTODIODE
J3
CONN-SIL3
J9 C6 1uF
1 2 3
Push Button
CRYSTAL
CONN-SIL3
C4
C5
22pF
22pF
J4 1 CONN-SIL1
Driver Motor Rangkaian Regulator
J5 1 2
VCC GND
Q6
TBLOCK-I2
R3
Q2
330
1k4 1
TIP142 1k4
CONN-SIL1
J3
1
D3
1N5402
1N5402
J1
U4 7824
BR1
TIP142
1 2
2 1
PD.1
D4
Q4
TBLOCK-I2
CONN-SIL1
J4
TBLOCK-I2
R4
Q3 D1 TIP142
1k4
R5
1N5402
Motor
J1
C4
1 2
D2
1
3300uF
VI
VO GND
PD.0
R2 Q1
100uF
TBLOCK-I2
1N5402
D4
KBPC802
TIP142
1N4002
1k4
A
B
3
C6
2
J2
2N3055
R18
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L3 Spesifikasi Webcam Logitech C170h [15] Webcam Logitech C170h [15]
Penaik Tegangan Step Up 5v
Motor Dc 24v, 2 A
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L4
Listing Program GUI Matlab functionvarargout = kenalpisang(varargin) % KENALPISANG M-file for kenalpisang.fig % KENALPISANG, by itself, creates a new KENALPISANG or raises theexistingsingleton*. % H = KENALPISANG returns the handle to a new KENALPISANG or the handle to the existing singleton*. % KENALPISANG('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in KENALPISANG.M with the given input arguments. % KENALPISANG('Property','Value',...) creates a new KENALPISANG or raises theexisting singleton*. Starting from the left, property value pairs areapplied to the GUI before kenalpisang_OpeningFcn gets called. An unrecognized property name or invalid value makes property application stop. All inputs are passed to kenalpisang_OpeningFcn via varargin. *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one (singleton)". % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help kenalpisang % Last Modified by GUIDE v2.5 17-Feb-2017 12:05:54 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @kenalpisang_OpeningFcn, ... 'gui_OutputFcn', @kenalpisang_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); ifnargin&&ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end ifnargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT
% --- Executes just before kenalpisang is made visible. functionkenalpisang_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn.
instance to run
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L5 % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to kenalpisang (see VARARGIN) % Choose default command line output for kenalpisang clc; cla; set(handles.edit1, 'String','0' ); set(handles.edit2, 'String','0'); set(handles.edit3, 'String','0' ); set(handles.edit21, 'String','0' ); set(handles.edit22, 'String','0' ); set(handles.edit23, 'String','0' ); set(handles.edit24, 'String','0' ); set(handles.edit25, 'String','0' ); set(handles.edit26, 'String','0' ); set(handles.edit27, 'String','0' ); global z global level1 global level2 global level3 global level4 global level5 global level6 global level7 z=1; level1=0; level2=0; level3=0; level4=0; level5=0; level6=0; level7=0; handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes kenalpisang wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line. functionvarargout = kenalpisang_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L6 % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % UIWAIT makes realtime wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. functionvarargout = realtime_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clc; z=1; global level1 global level2 global level3 global level4 global level5 global level6 global level7
guidata(hObject,handles);
while z %data yang dikirimkan komunikasi=serial(handles.PORT); guidata(hObject,handles); %setting hardware diperlukan set(komunikasi,'BaudRate',9600,'DataBits',8,'parity','none','StopBits',1,'FlowControl','none'); %membuka port untukkomunikasi fopen(komunikasi); out=fscanf(komunikasi); %out=fgets(kom); out1=sprintf('%s',out); disp(out1) out; pause(0.1);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L7
if(out1>=122) %proses inisialisasi webcam fclose(komunikasi); vid=videoinput('winvideo',2,'YUY2_320x240'); %proses capture gambar gambar1=getsnapshot(vid); gambar=yuy2torgb(gambar1); % function [level,propKuning,depan,kuning,depanKuning]=hpisang(gambar) % -------------------------------------------------------% 1.Segmentasibentukpisangdarikeseluruhancitra hsv=rgb2hsv(gambar); % Konversi RGB ke HSV s1=hsv(:,:,3); % Ambilbagian saturation depan=s1>0.3; % Original: 0.3 depane=bwareaopen(depan,2000); % Original : 1000 % -------------------------------------------------------% 2.Segmentasiwarnakuningdarikeseluruhancitra s2=hsv(:,:,1); % Ambilbagian hue s3=s2*360; % Setting nilaimaks 360 th1=45; th2=75; s4=s3>th1; s5=s3
% -------------------------------------------------------% 4.Perhitunganproporsibagianpisang yang berwarnakuning % (a) Luasanbagianpisang luasPisang=sum(sum(depan)); % (b) Proporsibagianpisang yang berwarnakuning propKuning=sum(sum(depanKuning))/luasPisang; axes(handles.axes3); imshow(gambar); axes(handles.axes5); imshow(depanKuning); set(handles.edit3, 'string', propKuning);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L8 % 5.Pencarianpada Look Up Table % Nilaitengah level untuk th1=20 dan th2=68 LT=[0.0087 0.1203 0.3593 0.6282 0.7328 0.8751 0.8960]; d=0.001; % Tolerensidarinilaitengah level if (propKuning>=0) && (propKuning<=0.05) set(handles.edit2, 'string','Level_1'); set(handles.edit1, 'string', 'kotakke 1'); level1=level1 +1; set(handles.edit21, 'String', level1); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'a'); guidata(hObject,handles); elseif (propKuning>0.05) && (propKuning<=0.25) set(handles.edit2, 'string','Level_2'); set(handles.edit1, 'string', 'kotak_ke_2'); level2=level2 +1; set(handles.edit22, 'String', level2); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'b'); guidata(hObject,handles); elseif (propKuning>0.25) && (propKuning<=0.45) set(handles.edit2, 'string','Level_3'); set(handles.edit1, 'string', 'kotak_ke_2'); level3=level3 +1; set(handles.edit23, 'String', level3); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'b'); guidata(hObject,handles); elseif (propKuning>0.45) && (propKuning<=0.65) set(handles.edit2, 'string','Level_4'); set(handles.edit1, 'string', 'kotak_ke_3'); level4=level4 +1; set(handles.edit24, 'String', level4); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'c'); guidata(hObject,handles); elseif (propKuning>0.65) && (propKuning<=0.79) set(handles.edit2, 'string','Level_5'); level5=level5 +1; set(handles.edit25, 'String', level5); set(handles.edit1, 'string', 'kotak_ke_3'); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'c'); guidata(hObject,handles); elseif (propKuning>0.79) && (propKuning<=0.84)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L9 set(handles.edit2, 'string','Level_6'); level6=level6 +1; set(handles.edit26, 'String', level6); set(handles.edit1, 'string', 'kotak_ke_4'); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'d'); guidata(hObject,handles); elseif (propKuning>0.84) && (propKuning<=0.89) set(handles.edit2, 'string','Level_7'); level7=level7 +1; set(handles.edit27, 'String', level7); set(handles.edit1, 'string', 'kotak_ke_4'); guidata(hObject,handles); fopen(komunikasi); fprintf(komunikasi,'d'); guidata(hObject,handles); end end fclose(komunikasi); delete(komunikasi) clearkomunikasi clc; cla; end
% --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) cla; clc; global level1 global level2 global level3 global level4 global level5 global level6 global level7 level1=0; level2=0; level3=0; level4=0; level5=0; level6=0; level7=0; set(handles.edit1, 'String', '0' );
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L10 set(handles.edit2, 'String', '0' ); set(handles.edit3, 'String', '0' ); set(handles.edit21, 'String', '0' ); set(handles.edit22, 'String', '0' ); set(handles.edit23, 'String', '0' ); set(handles.edit24, 'String', '0' ); set(handles.edit25, 'String', '0' ); set(handles.edit26, 'String', '0' ); set(handles.edit27, 'String', '0' );
% --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) closeall; clearall;
function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double
% --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit2_Callback(hObject, eventdata, handles) % hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit2 as text % str2double(get(hObject,'String')) returns contents of edit2 as a double
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L11
% --- Executes during object creation, after setting all properties. function edit2_CreateFcn(hObject, eventdata, handles) % hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit3_Callback(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double
% --- Executes during object creation, after setting all properties. function edit3_CreateFcn(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on selection change in popupmenu1. function popupmenu2_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = cellstr(get(hObject,'String')) returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1 contents = get(hObject,'Value'); switch contents case 1 handles.PORT='COM1'; case 2 handles.PORT='COM2';
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L12 case 3 handles.PORT='COM3'; case 4 handles.PORT='COM4'; case 5 handles.PORT='COM5'; case 6 handles.PORT='COM6'; case 7 handles.PORT='COM7'; case 8 handles.PORT='COM8'; case 9 handles.PORT='COM9'; case 10 handles.PORT='COM10'; case 11 handles.PORT='COM11'; case 12 handles.PORT='COM12'; case 13 handles.PORT='COM13'; case 14 handles.PORT='COM14'; case 15 handles.PORT='COM15'; end guidata(hObject,handles); % --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit4_Callback(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit4 as text % str2double(get(hObject,'String')) returns contents of edit4 as a double
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L13
% --- Executes during object creation, after setting all properties. function edit4_CreateFcn(hObject, eventdata, handles) % hObject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit5_Callback(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double
% --- Executes during object creation, after setting all properties. function edit5_CreateFcn(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit6_Callback(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit6 as text % str2double(get(hObject,'String')) returns contents of edit6 as a double
% --- Executes during object creation, after setting all properties. function edit6_CreateFcn(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L14 % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit7_Callback(hObject, eventdata, handles) % hObject handle to edit7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit7 as text % str2double(get(hObject,'String')) returns contents of edit7 as a double
% --- Executes during object creation, after setting all properties. function edit7_CreateFcn(hObject, eventdata, handles) % hObject handle to edit7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit8_Callback(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit8 as text % str2double(get(hObject,'String')) returns contents of edit8 as a double
% --- Executes during object creation, after setting all properties. function edit8_CreateFcn(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L15 set(hObject,'BackgroundColor','white'); end
function edit9_Callback(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit9 as text % str2double(get(hObject,'String')) returns contents of edit9 as a double
% --- Executes during object creation, after setting all properties. function edit9_CreateFcn(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit10_Callback(hObject, eventdata, handles) % hObject handle to edit10 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit10 as text % str2double(get(hObject,'String')) returns contents of edit10 as a double
% --- Executes during object creation, after setting all properties. function edit10_CreateFcn(hObject, eventdata, handles) % hObject handle to edit10 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L16 function edit12_Callback(hObject, eventdata, handles) % hObject handle to edit12 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit12 as text % str2double(get(hObject,'String')) returns contents of edit12 as a double
% --- Executes during object creation, after setting all properties. function edit12_CreateFcn(hObject, eventdata, handles) % hObject handle to edit12 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit21_Callback(hObject, eventdata, handles) % hObject handle to edit21 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit21 as text % str2double(get(hObject,'String')) returns contents of edit21 as a double
% --- Executes during object creation, after setting all properties. function edit21_CreateFcn(hObject, eventdata, handles) % hObject handle to edit21 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit22_Callback(hObject, eventdata, handles) % hObject handle to edit22 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L17 % Hints: get(hObject,'String') returns contents of edit22 as text % str2double(get(hObject,'String')) returns contents of edit22 as a double
% --- Executes during object creation, after setting all properties. function edit22_CreateFcn(hObject, eventdata, handles) % hObject handle to edit22 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit23_Callback(hObject, eventdata, handles) % hObject handle to edit23 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit23 as text % str2double(get(hObject,'String')) returns contents of edit23 as a double
% --- Executes during object creation, after setting all properties. function edit23_CreateFcn(hObject, eventdata, handles) % hObject handle to edit23 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit24_Callback(hObject, eventdata, handles) % hObject handle to edit24 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit24 as text % str2double(get(hObject,'String')) returns contents of edit24 as a double
% --- Executes during object creation, after setting all properties.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L18 function edit24_CreateFcn(hObject, eventdata, handles) % hObject handle to edit24 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit25_Callback(hObject, eventdata, handles) % hObject handle to edit25 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit25 as text % str2double(get(hObject,'String')) returns contents of edit25 as a double
% --- Executes during object creation, after setting all properties. function edit25_CreateFcn(hObject, eventdata, handles) % hObject handle to edit25 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit26_Callback(hObject, eventdata, handles) % hObject handle to edit26 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit26 as text % str2double(get(hObject,'String')) returns contents of edit26 as a double
% --- Executes during object creation, after setting all properties. function edit26_CreateFcn(hObject, eventdata, handles) % hObject handle to edit26 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L19 % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit27_Callback(hObject, eventdata, handles) % hObject handle to edit27 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit27 as text % str2double(get(hObject,'String')) returns contents of edit27 as a double
% --- Executes during object creation, after setting all properties. function edit27_CreateFcn(hObject, eventdata, handles) % hObject handle to edit27 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function edit28_Callback(hObject, eventdata, handles) % hObject handle to edit28 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit28 as text % str2double(get(hObject,'String')) returns contents of edit28 as a double
% --- Executes during object creation, after setting all properties. function edit28_CreateFcn(hObject, eventdata, handles) % hObject handle to edit28 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L20
% --- Executes during object creation, after setting all properties. function popupmenu2_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc&&isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
LISTING PROGRAM CVAVR Project : PROGRAM CONVEYOR Version : Date : 12/29/2016 Author : ANDREAS DICKY HARIYANTO Company : Comments:
Chip type : ATmega32 Program type : Application AVR Core Clock frequency: 11.059200 MHz Memory model : Small External RAM size :0 Data Stack size : 512 *******************************************************/ #include <mega32.h> #include <delay.h> #include <stdlib.h> #define motor1 PORTB.0 #define motor2 PORTB.1 #define motor3 PORTB.2 #define tombol_up PINB.6 #define tombol_down PINB.7 #define on 0 #define off 1 // Declare your global variables here bit status_up=0,status_down=0; unsigned char kotak, a,b,c,d,k; bit kon, stop, box ; unsigned int n; int sensor, z , data=0; // External Interrupt 0 service routine
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L21 interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here } // External Interrupt 1 service routine interrupt [EXT_INT1] void ext_int1_isr(void) { // Place your code here } // Standard Input/Output functions #include <stdio.h> void counter() { if (tombol_up==off) status_up=on; if ((tombol_up==on)&(status_up==on)) { data++; if (data>=1000){ data=1000;} status_up=off; } if (tombol_down==off) status_down=on; if ((tombol_down==on)&(status_down==on)) { data--; status_down=off; } } void pilah_pisang() { while(z){ k=getchar(); if(k==97) { kotak=2; //delay_ms(6000); while(data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L22 { kotak=3; //delay_ms(6000); while(data
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L23 delay_ms(100); motor2=0; // konveyor 2 stop delay_ms(2000); motor1=1; // konveyor 1 jalan untuk masukan pisang ke kotak delay_ms(5000);motor1=0; motor3=1; delay_ms(7000); data=0; z=0; }
} } // Voltage Reference: AREF pin #define ADC_VREF_TYPE ((0<
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L24 //DDRB=(0<
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L25 OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0<
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L26 ACSR=(1<=400) {motor1=0; putchar('z'); z=1; //delay_ms(300); pilah_pisang(); delay_ms(200); } } }
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L27
DATA PERCOBAAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L28
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L29
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L30
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L31
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L32
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L33
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L34
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L35
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L36
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L37
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L38
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L39
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L40
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L41
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L42
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L43
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L44
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L46
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L47
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L48
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L49
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L50
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L51