prototipe pemilah kematangan buah … berdasarkan warnanya menggunakan conveyor beserta perangkat...
TRANSCRIPT
i
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
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 ”
<buddha>
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xviii
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
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 elektro-
optika yang lebih menguntungkan jika dibandingkan dengan cara visual manusia yang
sangat dipengaruhi oleh kondisi psikis pengamatnya.
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 Nama Tahun Objek Metode
1 Febry Yuni Mulato (2015) Jambu Biji RGB, Fuzzy
2 Prianggono (2005) Jeruk Lemon RGB, Kamera Online
3 Arham (2004) Jeruk Nipis RGB, JST
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
6
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.
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 in-
line 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 8-
bit dua arah. Port B, Port C, Port D adalah suatu port I/O 8-bit dua arah dengan resistor
internal pull-up (yang dipilih untuk beberapa bit). Pada rangkaian reset, waktu
pengosongan kapasitor dapat dihitung dengan persamaan 2.1. [10]
T = R x C
(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]
Type VOUT (Volt) VIN (Volt)
Min Maks
7805 5 7,3 20
7806 6 8,3 21
7808 8 10,5 23
7810 10 12,5 25
7812 12 14,6 27
7815 15 17,7 30
7818 18 21 33
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 :
Ic = β IB (2.12)
Ie = (β+1) IB (2.13)
2.6. 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 Warna Kulit % pati % gula Kriteria
1 Hijau 20 0,5 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
40
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
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,
R = 5
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
aktif
Conveyor 1
berhenti
Sensor
menditeksi
benda
Matlab
menerima
karakter
Sensor1
conveyor2
Aktif
(10000)
Sensor2
conveyor2
Aktif
(01000)
Sensor3
conveyor2
Aktif
(00100)
Sensor4
conveyor2
Aktif
(00010)
Tidak
Conveyor2
bergerak
A
ya yaya ya
YA
TIDAKYA
TIDAK
Pengenalan
kematangan
pisang
C
B
Menerima
Karakter
a ?
Menerima
Karakter
b ?
Menerima
Karakter
c?
Menerima
Karakter
d ?tidak tidak tidak
Mengirim
sinyal ke
pc secara
serial
Menerima
karakter
e ?
Sensor5
Conveyor2
Aktif
(00001)
ya
tidak
Gambar 3.8 flowchart sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
A
Conveyor2
berhenti
Sensor
menditeksi
objek
Conveyor1
Aktif
(5 detik)
Tombol stop
ditekan
selesai
Conveyor2
Kembali ke
posisi awal
Limit switch
menditeksi
benda
Conveyor2
berhenti
TIDAK
YA
YA
TIDAK
YA
TIDAK
BC
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 Nilai proporsi warna kuning
pisang 0.001−+
Level 1 0.00-0.05
Level 2 0.05-0.25
Level 3 0.25-0.45
Level 4 0.45-0.65
Level 5 0.65-0.79
Level 6 0.79-0.84
Level 7 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
mulaiCapture image
(getsnapshot)
Segmentasi
warna kuning
Segmentasi
bentuk
pisang
Segmentasi bentuk
pisang yang
berwarna kuning
Pencarian
Look Up
Table
Perhitungan
proporsi
warna kuning
Convert
RGB to
HSV
Reset Stop / exit
Reset stop
Ya Ya
Tidak Tidak
Level 2
?
Level 3
?
Level 4
?
Level 5
?
Level 6
?
Level 1
?
Kirim
karakter
a
Kirim
karakter
b
Kirim
karakter
c
Kirim
karakter
d
YA YA YA YA
TIDAK TIDAK TIDAK TIDAKTIDAK TIDAK Level 7
?
Hapus
komunikasi
TIDAK
Atur port
komunikasi
Menerima
karakter ya
tidak
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 HSV
GAMBAR HUE KUNING
DATA
NILAI HUE KUNING PISANG
LEVEL PISANG
TEMPAT PISANG
start stop
reset
Port
Gambar 3.14. Perancangan GUI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
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
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 ke- Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7
1 0.03212 0.08360 0.41747 0.57246 0.69341 0.79577 0.84755
2 0.00231 0.10527 0.43722 0.67351 0.71147 0.80322 0.83752
3 0.02495 0.14628 0.39845 0.48266 0.68997 0.83673 0.86842
4 0.01325 0.17394 0.44248 0.50286 0.76836 0.89447 0.84465
5 0.03465 0.15392 0.44248 0.54499 0.61748 0.85833 0.85228
6 0.04348 0.14037 0.39041 0.52427 0.73567 0.82332 0.84658
7 0.04351 0.18573 0.41763 0.64254 0.72614 0.81337 0.86631
8 0.04127 0.17296 0.43842 0.66341 0.77878 0.82993 0.84772
9 0.02479 0.10048 0.38520 0.61942 0.73561 0.83114 0.87379
10 0.03495 0.12629 0.34186 0.57733 0.72649 0.83663 0.85886
Rerata 0.029528 0.13888 0.41116 0.58034 0.71933 0.83429 0.85036
Range Data 0.00 -
0.05
0.05 -
0.25
0.25 -
0.45
0.45 -
0.65
0.65 -
0.78
0.78 -
0.84
0.84 -
0.90
Gambar 4.3. Grafik Data Proporsi Warna Kuning.
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1 2 3 4 5 6 7 8 9 10
LEVEL 1
LEVEL 2
LEVEL 3
LEVEL 4
LEVEL 5
LEVEL 6
LEVEL 7
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
DATA PERCOBAAN
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)
Tabel 4.5. Pengujian Komunikasi Penerima.
PENGUJIAN KEBERHASILAN KOMUNIKASI
RECEIVER
DATA PERCOBAAN
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<kotak artinya adalah jika nilai count lebih kecil dari pada kotak
maka motor2 akan bergerak (conveyor2 maju), ketika nilai count dan kotak sama maka
motor2 akan berhenti, motor1 (conveyor1) akan bergerak untuk memindakan pisang, dan
motor3 akan bergerak (conveyor2 mundur).
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 mula-
mula 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
73
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
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-belt-
conveyor/#ixzz1oYwm5n2t
[5] Perawatan belt conveyor. http://www.informasi-training.com/perawatan-belt-
conveyor
[6] Motor-
dchttp://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-8-
86267064764.pdf,diaksespadatanggal 4 desember 2015
[8] Limit switch dansaklar push on, http://elektronika-dasar.web.id/limit-switch-dan-
saklar-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-dc-
h-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.
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 Tingkat
KematanganVarietasTomatMerahdenganMetodePerbandingan Kadar Warna.
Yogyakarta: Universitas Gajah Mada.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2
PC6/TOSC128
PC527
PC426
PC325
PC224
PC1/SDA23
PC0/SCL22
PC7/TOSC229
PA6/ADC634
PA5/ADC535
PA4/ADC436
PA3/ADC337
PA2/ADC238
PA1/ADC139
PA0/ADC040
PA7/ADC733
PB6/MISO7
PB5/MOSI6
PB4/SS5
PB3/AIN1/OC04
PB2/AIN0/INT23
PB1/T12
PB0/T0/XCK1
PB7/SCK8
PD6/ICP120
PD5/OC1A19
PD4/OC1B18
PD3/INT117
PD2/INT016
PD1/TXD15
PD0/RXD14
PD7/OC221
RESET9
XTAL113
XTAL212
AVCC30
AREF32
U1
ATMEGA8535
VI1
VO3
GN
D2
U27805
D1
1N4001
C1100uF
C2100uF
Regulator Tegangan
5V DC
Saklar
R1330
D2
LED
X1
CRYSTAL
C422pF
C522pF
R24k7
C61uF
1
2
3
4
10
9
8
7
5 6
J4
CONN-DIL10
Downloader
1
2
3
4
5
6
7
8
J5
CONN-SIL81
2
3
4
5
6
7
8
J6
CONN-SIL8
1
2
3
4
5
6
7
8
J7
CONN-SIL8
1
2
3
4
5
6
7
8
J8
CONN-SIL8
GND+5VMOSI
ResetSCKMISO
DC Source
1 2 3 4
10
9 8 7
56
J1CONN-DIL10
+VDC
GND
1 2 3 4
8 7 6 5
J2CONN-DIL8
1
2
3
J3
CONN-SIL3
1
2
3
J9
CONN-SIL3
1 2 3
J10CONN-SIL3
Push Button
PB
PD PC
PA
ARev
1
2
3
J11
CONN-SIL3
R7100R
R825k
R1620k
R15100RR11
100R
R9100R
R1025k
R1225k
D8PHOTODIODE
D7IR
D16PHOTODIODE
D15IRD9
IR
D10PHOTODIODE
D11IR
D12PHOTODIODE D13
IR
D14PHOTODIODE
R13100R
R1420k
1
2
3
4
5
6
7
8
J1
PORT C
1
2
3
4
5
6
7
8
J2
PORT B
R5100R
R620K
D5iR
D6photo
D4PHOTO
D3IR
D1IR
D2PHOTO
R220k
R420k
R1100R
R3100
1
J3
PORT D.2
1
J4
CONN-SIL1
Q1TIP142
Q2
TIP142
Q3TIP142
Q4
TIP142
R2
1k4
R3
1k4
R4
1k4
R5
1k4
1
2
J1
TBLOCK-I2
1
J2
CONN-SIL1
1
J3
CONN-SIL1
D1
1N5402
D21N5402
D31N5402
D41N5402
12
J4TBLOCK-I2
1
2
J5
TBLOCK-I2
Motor
VCC
GND
PD.0
PD.1C43300uF
C6100uF
VI1
VO3
GN
D2
U47824
Q62N3055
D41N4002
R18
330
A B
BR1
KBPC802
1
2
J1
TBLOCK-I2
Rangkaian Minimum System ATmega32
Rangkaian Untuk Sensor
Driver Motor
Rangkaian Regulator
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 instance to run (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(varargin1) gui_State.gui_Callback = str2func(varargin1); end ifnargout [varargout1: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.
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 varargout1 = 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 varargout1 = 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<th2; kuning=double(s4&s5);% Ambilbagiankuning % -------------------------------------------------------- % 3.Segmentasibentukpisang yang berwarnakuning depanKuning=depane.*kuning; % -------------------------------------------------------- % 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 % contentsget(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<kotak) motor2=1;counter(); // maju konveyor 2 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; else if(k==98)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L22
kotak=3; //delay_ms(6000); while(data<kotak) motor2=1;counter(); // maju konveyor 2 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; else if(k==99) kotak=4; //delay_ms(6000); while(data<kotak) motor2=1;counter(); // maju konveyor 2 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; else if(k==100) kotak=5; //delay_ms(6000); while(data<kotak) motor2=1;counter(); // maju konveyor 2 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; else kotak=6; //delay_ms(6000); while(data<kotak) motor2=1;counter(); // maju konveyor 2
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<<REFS1) | (0<<REFS0) | (0<<ADLAR)) // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=(1<<ADSC); // Wait for the AD conversion to complete while ((ADCSRA & (1<<ADIF))==0); ADCSRA|=(1<<ADIF); return ADCW; void main(void) // Declare your local variables here DDRB.0=1; PORTB.0=0; DDRB.1=1; PORTB.1=0; DDRB.2=1; PORTB.2=0; DDRB.6=0; PORTB.6=1; // Input/Output Ports initialization // Port A initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L24
//DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T //PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Port C initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0); // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0); // Port D initialization // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRD=0xFF; // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00); TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Disconnected // OC1B output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (0<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00;
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<<AS2; TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20); TCNT2=0x00; OCR2=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0); // External Interrupt(s) initialization // INT0: On // INT0 Mode: Falling Edge // INT1: On // INT1 Mode: Falling Edge // INT2: Off GICR|=(1<<INT1) | (1<<INT0) | (0<<INT2); MCUCR=(1<<ISC11) | (1<<ISC10) | (1<<ISC01) | (0<<ISC00); MCUCSR=(0<<ISC2); GIFR=(1<<INTF1) | (1<<INTF0) | (0<<INTF2); // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM); UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x47; // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L26
ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); // ADC initialization // ADC Clock frequency: 691.200 kHz // ADC Voltage Reference: AVCC pin // ADC Auto Trigger Source: ADC Stopped // Only the 8 most significant bits of // the AD conversion result are used ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x84; SFIOR=(0<<ADTS2) | (0<<ADTS1) | (0<<ADTS0); // SPI initialization // SPI disabled SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0); // TWI initialization // TWI disabled TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE); // Global enable interrupts #asm("sei") while (1) motor1=1; sensor=read_adc(0); if(sensor>=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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI