ALAT PENDETEKSI KUALITAS TEXTURE LIST KERAMIK DENGAN MENGGUNAKAN KAMERA Achmad Fadhol Jurusan Teknik Elektro Institut Teknologi Adhi Tama Surabaya Jl. Arief Rahman Hakim 100, Surabaya, 60117, Indonesia E-mail :
[email protected] ABSTRAK Dalam proses produksi keramik dihasilkan texture keramik yang sesuai dengan standart dan tidak sesuai dengan standart. Dimana keramik tidak standart digolongkan menjadi beberapa bagian berdasarkan tingkat kecacatannya. Dengan kualitas yang baik digolongkan pada tingkat kualitas satu, kemudian yang kurang baik digolongkan tingkat kualitas dua, dan yang cacatnya parah digolongkan pada tingkat kualitas tiga. Sehingga bila produk keramik cacat tersebut dijual ke masyarakat dengan tingkat kecacatan yang berbeda, maka harganya pun otomatis berbeda dan tidak akan merugikan masyarakat. Pada skripsi ini dibuat suatu alat pengontrol kualitas hasil produksi texture keramik dengan menggunakan kamera. Dimana parameter yang dikontrol adalah kesempurnaan textur keramik . Adapun pembuatan perangkat keras berupa mekanik konveyor yang dilengkapi kamera. Pengukuran texture keramik menggunakan metode pengolahan citra. Sedangkan Mikrokontroler AT89C51 sebagai kontrol akan melakukan proses pembacaan data dengan membandingkan data yang sesuai dan tidak sesuai dengan standard. Kata kunci : Kamera , Pengolahan citra, Mikrokontroller AT89C51. ABSTRACT In process production of ceramic texture yielded ceramic matching with standart and disagree with standart. Where ceramic not standart classified to become the some part to its handicap level. With the good quality classified at quality level one, unfavourable quality classified at quality level two, and handicapped of hard classified at quality level three. So that when ceramic product of the handicap sold to society with the different handicap level so that its price even also automatically differ and will not harm society. In this case we made a system quality control production the texture of ceramic using camera. For hardware itself, using konveyor and camera. Specification the texture of ceramic that are measured ceramic perfection texture of image processing. While mikrokontroller AT89C51 is used as control will do process of read data with comparing data that is suitable with standard and below standard. Key word : Camera , Image Processing, Microcontroller AT89C51.
PENDAHULUAN Perkembangan teknologi yang semakin pesat membuat persaingan di dunia industri makin marak. Seiring dengan mahalnya harga bahan baku produksi, industri dituntut untuk menyumbangkan kreatifitas dan daya piker, serta memberikan inspirasi yang berguna untuk memajukan dunia perindustrian. Pada industri berskala besar, proses pengendalian kualitas pada produk yang akan dipasarkan sangat penting untuk menghindari adanya produk cacat yang beredar di pasaran. Oleh karena itu, diperlukan suatu sistem untuk mengatasi hal tersebut sehingga antara konsumen dan produsen tidak ada yang merasa dirugikan. Akhirnya muncul suatu pemikiran tentang pembuatan sistem tentang pengendalian mutu kualitas produksi yang nantinya akan mampu memilah hasil produksi cacat, sehingga tidak ikut dipasarkan. Pembuatan perangkat keras berupa sistem konveyor yang mengunakan motor DC dengan
36
Jurnal IPTEK Vol 17 No.1 Mei 2013
dilengkapi kamera. Kamera merupakan media sensor yang sangat praktis dibandingkan dengan media sensor lainnya, karena dapat mendeteksi berbagai macam obyek dengan berbagai macam bentuk, warna ataupun spesifikasi obyek yang lain, sesuai dengan keinginan programmernya. Sedangkan konveyer mengunakan motor DC, karena dapat diperhitungkan kecepatan proses capture kamera dengan pergerakan konveyer saat menerima atau menolak list keramik, yang dikontrol oleh mikrokontroller melalui driverr motor DC. Terdapat 2 konveyer yaitu konveyer utama sebagai penggerak list keramik pada saat proses pengambilan gambar oleh kamera, sedangkan konveyer kedua sebagai penggerak list keramik pada saat proses diterima atau ditolak. Mikrokontroller 89C51 akan melakukan proses pembacaan data dengan memisahkan data yang sesuai dan tidak sesuai dengan standart. Data ini nantinya akan dikirimkan ke personal komputer melalui serial interface RS-232, hasilnya akan ditampilkan pada monitor personal komputer dalam bentuk numerik dan grafik. Hal ini diharapkan akan memudahkan operator untuk melakukan analisis terhadap kualitas hasil proses produksi list keramik dengan beberapa alat pengendali kualitas. Dari hasil analisis dapat dibuat rekomendasi yang dapat digunakan untuk memperbaiki kualitas hasil produksi secara berkelanjutan. Sehingga pelaksana industri bisa melihat secara otomatis apakah produksi tersebut terkendali atau tidak melalui personal komputer. TINJAUAN PUSTAKA 1. Image Dan Video Image merupakan informasi yang secara umum tersimpan dalam bentuk pemetaan bit, atau sering dikenal dengan bitmap. Setiap bit membentuk satu titik informasi yang dikenal dengan pixel. Atau dengan kata lain, satu pixel merupakan satu titik image yang terdiri dari satu atau beberapa bit informasi. Satuan dari pixel biasanya dinyalakan dengan posisi x, posisi y dan nilai dari pixel (warna atau gray). Dalam satu bidang gambar, sepenuhnya terdiri dari pixel-pixel. Karena itu, file yang menyimpan image biasanya ukurannya sangat besar. Image ini biasa disimpan dengan nama BMP. Untuk mengurangi ukuran dari file, biasanya file image dimampatkan dengan menggunakan teknik tertentu, misalkan yang terkenal JPEG atau GIF. Sedangkan grafik adalah penggambaran data-data atau informasi yang secara umum dalam bentuk vector (garis-garis yang memiliki panjang dan arah tertentu). Karena berbentuk vector, maka satu bidang gambar hanya terdiri dari beberapa garis vektor saja sesuai dengan keperluan. Penggunaan vector ini menjadikan ukuran file lebih kecil, tetapi biasanya menjadi tidak standard, karena sangat dipengaruhi oleh aplikasi yang melakukan penyimpanan (ada berbagai macam kemungkinan cara penyimpanan). Selain itu, penggambarannya hanya dibatasi dalam bentuk gambar-gambar yang hanya dapat disusun dari garis-garis. Kelebihan bentuk ini adalah kemungkinan yang luas untuk memperbesar dan memperkecil gambar. Grafik dapat juga dibangkitkan dari aplikasi. Video adalah susunan dari beberapa gambar yang ditampilkan secara bergantian dan sangat cepat, sehingga membentuk suatu pergerakan yang halus. Biasanya gambar yang disusun berasal dari gambar dalam bentuk image (bukan grafik). Karena itu, file video dapat dibongkar atau dapat diartikan dalam bentuk rentetan file image. Grafik dapat dibuat menjadi suatu video dengan cara sebelumnya grafik tersebut diubah dalam bentuk image. Pengertian Video biasanya mengacu pada proses atau teknologi dari sistem gambar bergerak. Sedangkan Movie lebih ditekankan pada isi atau content dari gambar bergerak tersebut. Film mengacu pada bahan atau media dari sistem perekaman gambar bergerak. Meskipun dewasa ini istilah-istilah tersebut sering saling dipertukarkan. Animasi adalah sesuatu yang mirip dengan video, tetapi biasanya dibangkitkan bukan dari rentetan gambar-gambar (gambar bergerak), tetapi dari suatu proses atau program yang dapat membuat seolah-olah ada gambar bergerak. Image lebih ditekankan pada data-data yang menyatakan atau mewakili suatu benda-benda atau pandangan yang ada atau tertangkap kamera, sedangkan picture lebih menyatakan informasi yang terbentuk secara keseluruhan dari image tersebut. Satu kesatuan informasi yang ada pada image (bayangan) tersebut disebut sebagai picture (gambar).
Achmad Fadhol. Alat Pendeteksi Kualitas...
37
Satu satuan informasi terkecil dalam suatu layar monitor, televisi atau peraga lainnya yang menggambarkan atau membentuk suatu bayangan (image) disebut sebagai pixel. Pixel berasal dari kata picture element, yaitu bagian-bagian terkecil dari suatu gambar. Pixel dapat juga disebut sebagai titik gambar karena dalam dunia digital, gambar dibentuk dari titik-titik. Disebut biner karena hanya memiliki dua kemungkinan, 0 atau 1, ada atau tidak. Image atau video dalam bentuk biner banyak digunakan khususnya untuk masalah-masalah yang berhubungan dengan deteksi obyek yang sederhana. Misalkan untuk mencari ada atau tidak garis petunjuk dalam suatu robot line tracer. Penggunaan pixel biner ini dimaksudkan untuk menyederhanakan proses dengan hanya memperhatikan ada atau tidak. Selain itu, penggunaan biner juga memperkecil data baik saat dikirimkan atau saat disimpan, termasuk juga saat diproses. Gray scale dan biner sebenarnya memiliki kemiripan, hanya saja kalau biner hanya memiliki 2 kemungkinan nilai, tetapi gray scale memiliki lebih banyak kemungkinan nilai, misalkan 4, 16 atau 256 kemungkinan. Gray scale banyak digunakan jika adanya perbedaan intensitas antara satu pixel dengan pixel lainnya sangat dipentingkan. Hal ini terutama jika obyek yang diamati memiliki perbedaan intensitas yang cukup kecil dengan berbagai tingkat kecerahan. Jika digunakan pixel biner, maka kemungkinan perbedaan-perbedaan tersebut akan hilang hanya menjadi hitam atau putih. 2. Warna Komposisi warna dapat dibagi dalam dua macam, berbasis pencampuran cahaya (gelombang elektromagnetik) atau berbasis non cahaya (materi cair). Komposisi warna pada komputer menggunakan basis pencampuran cahaya. Kamera saat ini sudah berbentuk kamera warna yang mengirimkan data-data tertentu untuk mewakili suatu warna. Untuk sistem RGB (sampai saat ini, sistem RGB24 yang paling banyak digunakan), warna dibagi dalam tiga komponen dasar, merah (R), hijau (G) dan biru (B). Untuk mengambil warna dari obyek dapat dianggap urusan yang mudah atau sulit, tergantung dari bagaimana obyek yang akan diamati. Cara ini hanya berlaku untuk suatu jangkauan (jenis) obyek tertentu saja, misalkan bunga. Hal ini didasari suatu fakta, bahwa sebagian besar suatu kelompok obyek dapat dikenali hanya dengan melihat warnanya. Meskipun hasil yang didapatkan tidak dapat akurat (memiliki False Negatif yang tinggi), namun memiliki kecepatan proses yang tinggi dan hampir selalu berhasil (memiliki True Positif yang tinggi) melakukan identifikasi obyek. Cara ini juga dapat dikombinasikan dengan cara lainnya untuk meningkatkan akurasinya (memperkecil nilai False Negatif, sambil tetap menjaga nilai True Positif tinggi). Mengambil warna pada titik tengah dapat dilakukan dengan alasan mempercepat proses deteksi (sederhana dan waktu komputasinya sedikit/cepat), tetapi cara ini rentan terhadap noise. Untuk membaca warna pada titik tengah, cukup dengan mengambil nilai RGB dari pixel tengah dan melakukan perbandingan warna yang didapatkan dengan warna yang diinginkan. Ada berbagai macam teknik perbandingan yang dapat dilakukan, akan dapat dilihat pada bagian segmentasi warna (sistem deteksi). 3. Mikrokontroller AT89C51/52 Mikrokontroller, sebagai suatu terobosan teknologi mikroprosesor dan mikrokomputer, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang yang kecil. Tidak seperti system komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, angka dan lain sebagainya), mikrokontroller hanya dipakai untuk aplikasi tertentu saja (hanya satu program saja yang bisa disimpan). Pada mikrokontroller perbandingan ROM dan RAM-nya yang besar, artinya program kontrol disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang ukurannya relatif besar, sedangkan RAM digunakan sebagai tempat penyimpan sementara, termasuk register-register yang digunakan pada mikrokontroller yang bersangkutan.
38
Jurnal IPTEK Vol 17 No.1 Mei 2013
3.1
Arsitektur Mikrokontroller AT89C51/52 Mikrokontroller AT89C51 keluarga 51 mempunyai 40 kaki dan 32 diantaranya port pararel, dimana tiap port terdiri dari 8 kaki. Jadi, 32 kaki terdapat 4 port pararel, dan dikenal port 0, port 1, port 2, dan port 3. FUNGSI KAKI PIN 1. Kaki no. 40 (Vcc) Supply tegangan 2. Kaki no.20 (GND) Pentanahan/ground 3. Kaki no. 9 (RST) Masukan reset. Kondisi ‘1’ selama 2 siklus mesin selama osilator bekerja akan mereset mikrokontroller yang bersangkutan. 4. Kaki no. 30 (ALE/prog) Output ALE menghasilkan pulsa untuk mengancing low byte alamat selama mengakses memori eksternal. Juga sebagai masukan pulsa program, saat operasi normal ALE akan berpulsa dengan laju 1/6 dari frekuensi kristal dan dapat dipakai sebagai timing/clocking rangkaian eksternal
Gambar 1. Mikrokontroller AT89C51 5. Kaki no. 29 (PSEN) Merupakan sinyal baca untuk memori program eksternal. Saat mikro menjalankan program dari memori eksternal, maka PSEN akan diaktifkan dua kali per siklus mesin. 6. Kaki no. 31 (EA/VPP) Harus selalu dihubungkan ke gnd jika mikro akan me-run program dari memori eksternal lokasi 0000h hingga ffffh. Selain itu, EA harus dihubungkan ke Vcc agar mikro mengakses program secara internal. Selama prog flash pin ini dihubungkan ke Vpp, khususnya untuk type 12 volt Vpp(AT 89C51/52) 3.2
Konfigurasi Port I/O Pada gambar 1 menunjukan diagram fungsional dari tiap port yang mengandung pengancing bit dan buffer. I/O .buffer bit merupakan jenis D flip flop, yang akan memasukan data dari internal bus sebagai tanggapan sinyal dari CPU. Data dari port sendiri ditempatkan dalam bus internal sebagai tanggapan sinyal dari CP U.Berikut ini disajikan spesifikasi dari beberapa port I/O: 1. Port 0 Merupakan port I/O bertipe open drain bidirectional. Saat 1 dituliskan ke port 0, maka kaki port 0 dipakai masukan berimpedansi tinggi . Port ini juga dikonfigurasikan sebagai bus alamat /data
Achmad Fadhol. Alat Pendeteksi Kualitas...
39
rendah selama proses pengaksesan memori data program eksternal. Selain itu juga menerima kode yang dikirimkan selama proses pemrograman dan mengeluarkan kode selama proses verifikasi program yang tersimpan dalam flash, dalam hal ini dibutuhkan pullup eksternal. 2. Port 1 Merupakan port I/O dwi arah dengan pullup internal. Jika 1 dituliskan ke port 1, maka tiap kaki akan di pulled high dengan pullup internal, sehingga dipakai sebagai input. Jika kaki port dihubungkan ke gnd, maka tiap kaki akan di pulled high secara internal . Port 1 juga menerima alamat low byte selama pemrogaman dan verifikasi. 3. Port 2 Merupakan port I/O dwi arah dengan pullup internal . jika ‘1’ ditulis ke port 2, maka tiap kaki akan dipulled high dengan pullup internal, sehingga dapat dipakai sebagai input. Jika kaki port dihubung kegnd, maka tiap kaki akan memberi arus, karena dipulled high secara internal. Port 2 akan memberikan high byte selama pengambilan intruksi dari memori eksternal dan pengaksesan data eksternal yang memakai alamat 16 bit. 4. Port 3 Merupakan port I/O dwi arah dengan pullup internal . Jika dituliskan ‘1’ ke port 3, maka tiap kaki port akan dipulled high dengan pullup internalsehingga dipakai masukan. Jika kaki port dihubung ke gnd, maka tiap kaki akan memberi arus karena dipulled high secara internal. Port ini memiliki fungsi alternative seperti yang dijelaskan dalam table 1. PERANCANGAN SISTEM Pembuatan alat ini dapat digolongkan menjadi tiga bagian yaitu perancangan pembuatan mekanik, perangkat keras (hardware), dan perangkat lunak (software). 1. KONTRUKSI MEKANIK Pembuatan perangkat keras berupa pembuatan perangkat mekanik konveyor. Terdiri dari, desain kontruksi konveyor yang kemudian dibuat suatu kerangka yang menggunakan aluminium lengkap dengan penyangganya, meliputi penyangga webcam dan penyangga rangkaian serial, yang menyatukan bagian-bagian tersebut menjadi satu kesatuan yang utuh dan rapi serta dapat digerakkan dengan baik. Pembuatan mekanik pada alat ini adalah konveyor yang dilengkapi motor dc, plat penghalang serta kamera. Konveyor digunakan untuk menggerakkan keramik satu-persatu yang kemudian dideteksi oleh kamera, dikontrol oleh mikrokontroler dan dipisahkan oleh driver motor. Pembuatan mekanik pada konveyor ini bahannya terbuat dari alumunium dan mika. Pada konveyor digunakan mika, untuk siku dari alumunium, sehingga siku penyabung akan lebih kokoh. Adapun ukuran keseluruhan dari alat ini adalah sebagai berikut,
Panjang = 96 cm Lebar = 32 cm Tinggi = 10 cm dari atas tanah Panjang Plat Pengendali = 25.5 cm Panjang Konveyor = 76 cm
2. PERANCANGAN PERANGKAT KERAS. Sistem alat yang dibuat terbagi dalam beberapa modul rangkaian yang mempunyai tugas dan fungsi tersendiri. Rangkaian-rangkaian tersebut meliputi:
2
3
VCC
2
40
3 Jurnal IPTEK Vol 17 No.1 Mei 2013 VCC
1 2 3 2.1 MIKROKONTROLER Rangkaian mikrokontroler sendiri terdiri dari rangkaian reset keseluruhan sistem dan kristal sebagai detak jatung mikrokontroler, dan koneksi port mikrokontroler dengan modul rangkaian lain Dstep 1 atau input/output port (I/O) adalah sebagai berikut: VCC 1. Port yang dipakai adalah port_3.0 sebagai RXD yang dihubungkan ke port IC Serial max232 pada Dstep 1 pin no.8 sebagai receiver dan port_3.1 sebagai TXD mikro yang dihubungkan juga pada VCCIC 2 20pin Oh mno.10 sebagai max232 pada LED1 transmitter. 2. Untuk reset2 20mikrokontrolernya terdapat pada pin 9 AT89C51 yang berfungsi sebagai reset mm 2Oh 20 Oh LED2 LED1 keseluruhan minimum sistem bila terjadi kesalahan pada proses kontrol.
1 0u F
R1 1 0KR1 1 0K
1 uF 2 3
2 20 Oh m
LED7
2 20 Oh m
2 20 Oh m
1 uF
1 uF
1 C1 + C1 + C2 +C2 +
9 9 R2t ouR2 t in R2 in R2 ou 12 12 R1t ouR1 t in R1 in R1 ou 10 10 T1o uT1o t u tT2inT2in 7 7 T2o uT2o t u tT1inT1in
1 uF
6 6 5 5
1 uF 1 uF 4 4 8 8 9 RXD 9RXD 1 01 0 1 11 1 TXD TXD
1
5 9 5 4 9 8 4 38 73 27 62 16
MAX232 MAX232
LED7
LED8
2 20 Oh m
V2 V+ V+ V3 C1 C2 C1 C2 -
1
LED6
2 20 Oh m
1 uF 1 uF
C
LED5
LED6
LED8
1LED8 0u F 7
8
LED1
P1. 0 IC1 2 201Oh m P1. P1. 0 P1. 2 P1. 2 201Oh m P1. 3 P1. 2 P1. P1. 2 2034Oh m P1. P1. 45 P1. P1. 2 2056Oh m P1. 67 P1. 2 207Oh m
P0. 0 P0. 1 LED2 P0. 0 P0. 2 P0. 1 LED3 P0. 3 P0. 2 P0. P0. 3 4 LED4 P0. P0. 45 P0.5 6 P0. LED5 P0.6 7 P0.
RESET
EA/VP
8 R1 9 1 0K1 09 1110 1121 12 13 13 14 14 1155 1 uF 1166
P0. 7 LED6
RESET 2 20 Oh m
EA/VP LED7
RXD ALE/ P RXD ALE/ P 2 20 Oh m TXD LED8 TXD INT0 PSEN INT0 PSEN INT1 INT1 T0 P2. 7 T0 P2. 7 T1 P2. 6 T1 P2. 6 WR P2.5 5 1 uF P2. WR RW P2.4 4 RW P2. P2.3 3 2 6 P2. V+ 1177 VX2 5 P2.2 2 3 P2. Xtal C2 XtalC1 P2.1 1 P2. 1188 1 uF 1 uF P2. X1 P2.0 0 1
3 0u 3 0u FF 9 12 10 7
1 9 Dstep 1 2 0 Dstep 2 1 9 Dstep 1 2 1 Dstep 3 2 0 Dstep 2 2 2 Dstep 4 2 1 Dstep 3 3 Dstep 2 22Dstep 4 5 4 Dstep 2 32Dstep 5 6IC1 5 Dstep 06 7 2LED1 42Dstep P1. 0 6 Dstep 17 8 2LED2 52Dstep 28 2LED3 6 Dstep LED4 27 3 4 2LED5 7 LED6 28 5 6 2LED7 8 LED8 29 7 29 8 30 30 31 9 31 3 23 2 1 0 3 33 3 1 1 3 43 4 1 2 3 53 5 1 3 3 63 6 1 4 3 73 7 1 5 16
4
0uC2 C1 + 330u FF + R2 ou t R2 in R1 ou t R1 in T1o u t T2in T2o u t T1in
17
3 0u F
1 9Dstep Dstep31 P0. 0 2 0 Dstep 2 VCC P0. 1 Dstep 3 2 1 Dstep 3 P0. 2 VCC 2 2 Dstep 4 P0. 3 2 3 Dstep 5 P0. 4 2 4 Dstep 6 P0. 5 2 5 Dstep 7 P0. 6 2 6 Dstep 8 1P0. 0u7F 1 0u F 27 VCC EA/VP Dstep 4 Dstep 4 28 ALE/ P
X2
18
TXD
RESET RXD TXD 1 0K 1 0K INT0 INT1 T0 T1 WR RW
Xtal
8 9RXD 10 11
P1. 1 P1. 2 VCC P1. 3 VCC P1. 4 P1. 5 P1. 6 P1. 7
Dstep 2 VCC
X1
3 0u F
PSEN P2. 7 P2. 6 P2. 5 P2. 4 P2. 3 P2. 2 P2. 1 P2. 0
29
SWI T C H
2 20 Oh m
2 20 Oh m
IC1 2 20 Oh m LED1 0 LED2 1 LED1 0 LED3 2 LED2 1 LED4 3 VCC LED3 2 LED5 LED443 LED6 LED554 LED7 LED665 LED8 LED776
SWI T C H
1 0u F
LED4 LED5
Dstep 2 VCC
SWI T C H
LED3 LED4
AT89C51
LED2 LED3
20 Oh 2 202Oh mm 20 Oh 2 202Oh mm
S-R ST
S-R ST
VCC
20 Oh 2 202Oh mm
AT89C51 AT89C51
VCC
S-R ST
D
30 31 3 2VCC VCC 33 34 35 36 37
Dstep 5 Dstep VCC 5
Gambar 2. Rangkaian Mikrokontroler.
MAX232
VCC
5 9 4 8 3 7 2 6 1
3. DB9 Untuk port_0.0 sampai port_0.3 sebagai data untuk driver motor stepper penggerak konveyer utama dalam proses capture gambar, sedangkan port_0.4 sampai port_0.7 berfungsi sama untuk SERIAL 232 penggerak konveyer receive atau reject keramik. data motor stepper 4. Sedangkan port_1 digunakan sebagai led untuk mengecek hasil dari pulsa motor stepper pada waktu pemprograman, sehingga mempermudah pada cek pemprograman dengan hardware Dstep 6 DB9 T1 VCC 6 keseluruhan. Dstep SERIAL 232
DB9
SERIAL 232
LM78 0 5CT
1
GND GND
T1
LM78 Vin 0 5CT+5V
VCC
3
AC 2 20 V
1 00 0 uF/1 6 V BRIDGE1
OUTPUT Vin GND
2 20 0 uF/1 6 V
2 20 0 uF/1 6 V
2
2
2.2 DRIVER MOTOR STEPPER BRIDGE1 1 3 Vin +5V Driver motor stepper berfungsi untuk memisahkan tektur keramik yang bagus dan cacat. BRIDGE1 OUTPUT T1 2 20 V Dengan AC menggunakan konveyer utama dan6 V konveyer Dimana konveyer reject akan 2 20 0 uF/1 1 00 0 uF/1 6 reject/receive. V LM78 0 5CT bergerak keV kiri untuk mereject keramik dan bila sesuai dengan standart, maka3 konveyer akan AC 2 20 1 2
B
+5V
1 00 0 uF/1 6 V
Dstep 7 VCC
OUTPUT Dstep 7 VCC
1 0u F
1 0K
Achmad Fadhol. Alat Pendeteksi Kualitas...
41
mereceive keramik dengan bergerak ke kanan. Driver motor stepper menggunakan mosfet IRF540 sebagai rangkaian switch pulsa untuk kutub-kutub dari motor stepper tersebut. MOSFET adalah suatu piranti yang dikontrol dengan menggunakan tegangan (voltage-controled device). Untuk menghidupkan MOSFET diberikan tegangan antara kaki gate dan source. Berdasarkan dari lembar data komponen IRF540 diperoleh bahwa besarnya tegangan antara gate dan source agar MOSFET IRF540 berada pada kondisi ‘ON’ adalah berkisar antara 10 hingga 15 volt.
Gambar 3. Rangkaian Driver stepper. Pengaturan kerja MOSFET dilakukan oleh mikrokontroler AT89C51 sebagai pemicu MOSFET. Akan tetapi, besarnya tegangan yang dikeluarkan pengendali mikro AT89C51 hanya 5 volt. Oleh karena itu, perlu ditambahkan suatu rangkaian. Pengatur titik kerja MOSFET yang direalisasikan dengan menggunakan optokopler 4N25. Optokopler 4N25 difungsikan untuk pensaklaran ‘ON’ dan ‘OFF’ MOSFET IRF540. Realisasi rangkaian optokopler 4N25 adalah aktif ’low’. Masukan optokopler 4N25 berasal dari pengendali mikro AT89C51. Jika keluaran pengendali mikro AT89C51 berlogika 1(’high’), maka optokopler 4N25 akan ’OFF’ dan sebaliknya. Jika keluaran pengendali mikro AT89C51 berlogika 0(’low’), maka
42
Jurnal IPTEK Vol 17 No.1 Mei 2013 1
2
optokopler 4N25 akan ’ON’. Pada saat optokopler 4N25 ’ON’ maka transistor yang ada pada 4N25 akan saturasi dan gate pada MOSFET mendapat tegangan 12 volt. MOSFET IRF dari keempat yang terdapat pada rangkaian sistem driver tersebut dipicu dengan pulsa secara bergantian. Sehingga pole dari motor stepper akan bergerak satu-persatu dengan pulsa yang bergantian dan terus-menerus serta motor stepper akan berjalan. Arah putaran motor stepper tergantung lebih dulu mana pole yang disulut oleh pulsa dari mikrokontroller tersebut. Gambar 3 adalah rangkaian driver motor stepper. D
AT89C51
S-RST
2.3 RANGKAIAN SERIAL 232 Sistem komunikasi data serial RS 232 digunakan untuk menghubungkan komunikasi antar PC 2 20 Oh mditunjukkan dengan sistem minimum mikrokontroller AT89C51 dimana LED1 pada gambar 6. Tujuannya yaitu mengubah tegangan -25 sampai 25 volt pada PC menjadi level tegangan ttl yaitu 0 sampai 5 volt 2 20 Oh m LED2 sistem pengkabelan yaitu dengan menggunakan IC MAX232. Perencanaan pertama adalah merangkai antar transmitter dengan receiver dengan benar. 2 20 Oh m VCC LED3 Setelah itu menentukan elemen-elemen format data serial, antara lain : 2 20 Oh m a. Kecepatan transfer data per bit (baut rate) LED4 IC1 b. Dalam hal ini kecepatan transfer data per bit menggunakan 9600 bps. LED1 0 P1. 0 P0. 0 LED5 LED2 1 c. Jumlah bit data per karakter (/lebar data)2 20 Oh m P1. 1 P0. 1 LED3 2 d. Jumlah bit data per karakter menggunakan 8 bit 1 0u F P1. 2 P0. 2 2 20 Oh m LED6 keadaan LED4 3 none. e. Parity yang digunakan dalam proyek akhir ini adalah dalam P1. 3 P0. 3 LED5 4 P1. 4 P0. 4 f. Jumlah stop bit, dalam hal iniR1 jumlah stop menggunakan 1 bit. 2 20bit Oh m LED7 LED6 5 P1. 5 P0. 5 Sedangkan Port pada PC, menggunakan 1 0K COM 1. Semua elemen-elemen LED7 6 format data serial P1. 6 P0. 6 2 20 Oh m beserta penentuan COM bisa diatur melalui Hyperterminal pada PC. LED8 LED8 7
1 uF
C 2 3
VC2 -
9 10 11 12 13 14 15 16
6 5
1 uF
9 12 10 7
8
1 uF V+ C1 -
1
P1. 7
1 uF C1 +
C2 +
R2 ou t R2 in R1 ou t R1 in T1o u t T2in T2o u t T1in
4 8 9RXD 10 11 T XD
17
RESET
EA/VP
RXD TXD INT0 INT1 T0 T1 WR RW
ALE/ P PSEN P2. 7 P2. 6 P2. 5 P2. 4 P2. 3 P2. 2 P2. 1 P2. 0
X2
Xtal 18
3 0u F
P0. 7
X1
3 0u F
5 9 4 8 3 7 2 6 1
MAX232
DB9
SERIAL 232 Gambar 4. Rangkaian serial 232. T1 LM78 0 5CT 1 BRIDGE1
GND
B
Vin
+5V
3
1 9 Dstep 1 2 0 Dstep 2 2 1 Dstep 3 2 2 Dstep 4 2 3 Dstep 5 2 4 Dstep 6 2 5 Dstep 7 2 6 Dstep 8 27 28 29 30 31 32 33 34 35 36 37
Achmad Fadhol. Alat Pendeteksi Kualitas...
43
3. PERENCANAAN PERANGKAT LUNAK Perencanaaan perangkat lunak dibagi menjadi dua bagian yaitu: perangkat lunak untuk visual basic dan asembly mikrokontroler. Sebelum membuat perangkat lunak keseluruhan dibuat flow chart sistem kontrol kerja dari keseluruhan sistem. Flow chart nya adalah sebagai berikut. Start
Input Keramik
Kamera Capture OFF
Posisi Dibawah Kamera
Y
T
Kamera Captuure ON
Komputer Compare
Kualitas Keramik Bagus?
T
Y Keramik Diterima
Motor Reject OFF
End
Gambar 5. Flowchart sistem.
Keramik Ditolak
Motor Reject ON
44
Jurnal IPTEK Vol 17 No.1 Mei 2013
3.1 SOFTWARE CAPTURE IMAGE PADA VISUAL BASIC. Windows pertama kali mengeluarkan teknologi video capture dalam bentuk API (Application Programming Interface) yang dikenal dengan VFW (Video for Window). Versi pertama yang dikeluarkan adalah 16 bit tersimpan dalam file library ”vic.dll”. Kemudian diperbaharui dalam versi 32 bit yang tersimpan dalam ”vic32.dll”. Teknologi VFW ini sangat mudah, baik dalam algoritmanya/prosedur pemrograman maupun dalam pemrogramannya. Hal ini memungkinkan VFW dapat diimplementasikan menggunakan berbagai bahasa pemrograman, termasuk visual basic, asalkan dapat melakukan pemanggilan fungsi API. Berikut ini langkah-langkah yang harus dilakukan untuk menggunakan VFW dalam visual basic. 1. Apakah ada kamera yang terpasang, dengan cara membaca semua driver kamera yang terpasang? Driver kamera diberi nomor 0 sampai seterusnya. Setiap nomor diver dibaca jenis dari kameranya, dan jika ada penjelasannya, maka ada driver yang terpasang. Pencarian akan terus dilakukan sampai tidak ditemukan lagi driver terpasang 2. Memilih, driver nomor berapa yang akan digunakan 3. Membuka jendela untuk menampilkan “preview” dari kamera 4. Menghubungi driver dan menyambungkannya dengan jendela preview 5. Melakukan beberapa pengaturan a. Mengatur tampilan b. Mengatur kecepatan c. Mengatur callback Sebelum dilakukan pembacaan data image, terlebih dulu dipersiapkan buffer untuk penyimpanan data image. Pada contoh program berikut ini akan diperlihatkan deklarasi header dari buffer API untuk video dan deklarasi data video untuk ukuran 320 x 240 dengan format RGB24. Apabila program berjalan dengan benar, maka setiap video capture berhasil menangkap satu gambar (satu frame), maka data frame akan disimpan pada suatu buffer yang terdapat pada API vic32. Setelah itu, API vidcap akan mengirimkan sinyal trigger yang akan mengaktifkan event OnFrame. Jika pada program Inisialisasi disertakan setting OnFrame event call back, maka program secara otomatis akan loncat ke rutin yang telah ditunjuk, misalkan pada suatu subroutine OnFrameEvent. Copy Buffer Frame Program Aplikasi
API – Video Capture Kamera
Buffer Aplikasi
Buffer API
Capture Frame
OnFrame Event
Gambar 6. Blok diagram sistem buffer windows API. Pada subroutine OnFrameEvent ini dilakukan pengambilan data dari buffer API. Jika menggunakan C (VC++), Pascal (Delphi) atau Java, pengambilan dapat dilakukan langsung dari buffer API. Hal ini disebabkan pemrograman tersebut memiliki kemampuan variable pointer (menunjuk langsung pada suatu alamat tertentu). Sedangkan jika menggunakan BASIC (VB), terpaksa harus dilakukan pengkopian data dari buffer API ke buffer yang disediakan sendiri pada aplikasi.
CC B A ND
Achmad Fadhol. Alat Pendeteksi Kualitas...
45
3.2 KOMPARASI WARNA IMAGE Menbandingkan pengambilan nilai warna rata-rata seluruh obyek (image) dari tekture keramik yang akan diterima atau ditolak dengan nilai warna rata-rata gambar tektur keramik standart. Cara ini sebenarnya memerlukan waktu komputasi yang besar (lama) dan hanya diperlukan jika obyek yang akan dideteksi sangat beragam (memiliki lebih dari satu komposisi warna), atau obyek tersebut sering mengalami perubahan-perubahan (bergerak atau bentuk berubah dari cahaya) yang menyebabkan komponen-komponen warna tertentu hilang dan muncul. Sehingga diperlukan kamera barwarna yang mengirimkan data-data tertentu untuk mewakili suatu warna. Untuk sistem RGB (sampai saat ini, sistem RGB24 yang paling banyak digunakan), warna dibagi dalam tiga komponen dasar, merah (R), hijau (G) dan biru (B). Untuk mengambil warna dari obyek dapat dianggap urusan yang mudah atau sulit, tergantung dari bagaimana motif tektur keramik yang akan diamati. Cara ini hanya berlaku untuk suatu jangkauan (jenis) obyek tertentu saja, misalkan bunga yang memilik bermacam warna. Hal ini didasari suatu fakta, bahwa sebagian besar suatu kelompok obyek dapat dikenali hanya dengan melihat warnanya. Meskipun hasil yang didapatkan tidak dapat akurat (memiliki False Negatif yang tinggi), namun memiliki kecepatan proses yang tinggi dan hampir selalu berhasil (memiliki True Positif yang tinggi) melakukan identifikasi obyek. Cara ini juga dapat dikombinasikan dengan cara lainnya untuk meningkatkan akurasinya (memperkecil nilai False Negatif, sambil tetap menjaga nilai True Positif tinggi). Sehingga dengan visual basic dari berbandingan warna tersebut akan dihasilkan koefisien warna antara gambar tektur keramik dengan tektur keramik yang akan diterima atau ditolak. Dengan koefisien warna bila mendekati satu maka dikatakan tektur keramik itu memiliki kemiripan Kualitas dengan tektur yang baik. Sehingga bisa dibuat range koefisien warna bila suata tektur keramik itu diterima adalah 1 sampai 0.9400. Jika diluar range koefisien warna tersebut, maka tektur keramik tersebut ditolak tidak sesuai dengan tekture yang diharapkan. PENGUJIAN dan ANALISA 1. Rangkaian Driver Motor dc Pengujian rangkaian driver motor dc dilakukan dengan bantuan software. Pemberian pulsa pada Port 1.2 dengan logika ’ 1 ’ dan Port 1.3 dengan logika ‘ 0 ’ akan menyebabkan motor berputar kekanan. Pemberian pulsa pada Port 1.2 dengan logika ’0’ dan Port 1.3 dengan logika ‘1’ menyebabkan motor dc berputar kekiri. Pemberian pulsa logika ‘1’ pada kedua Port akan menyebabkan motor berhenti . sedang pemberian pulsa logika ‘ 0 ‘ secara bersamaan merupakan larangan, sebab akan menyebabkan kerusakan pada Transistor switching.
2
3
4
5
6
VC C 2 2 0 Oh m
LED1
560
560
VC C
560
560 Po rt Po rt Po rt Po rt
10uF
1 1.22 1.33 1.44 1.55 6 7 8 9
VC C 8 8 7 7 6 6 5 5
O 232
VC C B A GN D
R0 RE DE DI
1 RX 2 S4 8 5 3 4 TX
7 5 1 76
RX 1 0 TX 1 1 12 13 14 15 16 17 18 Xtal 19
P1 .0 P1 .1 P1 .2 P1 .3 P1 .4 P1 .5 P1 .6 P1 .7
P0 .0 P0 .1 P0 .2 P0 .3 P0 .4 P0 .5 P0 .6 P0 .7
RESET
EA/VP
RX D TXD INT0 INT1 T0 T1 WR RD
ALE/P
X2 X1
PSEN P2 .7 P2 .6 P2 .5 P2 .4 P2 .3 P2 .2 P2 .1 P2 .0
39 38 37 36 35 34 33 32
D
D IO D E D IO D E TI P 32
560
MOTOR 2
TI P 32
560
BD 139
Po rt 1.2
Po rt1.3
560
31
BD 139
560
30 29
D IO D E
28 27 26 25 24 23 22 21
D IO D E
TI P 31 560
560 TI P 31 560
560
C
AT8 9 C5 1 A 30uF
30uF
VC C
Gambar 7. Rangkaian Driver Motor DC 560
560 560
560 D IO D E D IO D E 560
Po rt 1.4
BD 139
TI P 32 MOTOR 2
TI P 32
560
Po rt1.5
46
Jurnal IPTEK Vol 17 No.1 Mei 2013
2. Komunikasi Serial 232. Komunikasi dari komputer dengan mikrokontroler menggunakan serial 232. Dengan terlebih dahulu melakukan pengesetan protokol komunikasi pada hyper terminal dengan konfigurasi sebagai berikut. a. • Bits per second = 9,600 b. • Data bits = 8 c. • Parity = None d. • Stop bits = 1 e. • Flow control = None
Gambar 8. Hasil Hyper Terminal. Hasil yang didapat dari pengujian ini, jika mikrokontroler melakukan pembacaan portnya untuk input ke pc atau sebaliknya dari pc ke mikrokontroler pada hyper terminal, akan muncul karakter yang menunjukkan tipe protocol adalah seperti Gambar 8. Protokol tersebut menandakan bila :AB0000# switch pada port mikrokontroler dalam kondisi on atau siap melakukan proses peng-captur-an dan proses pembandingan. Jika kondisi protocol ini :AB2550# menandakan bahwa proses capture dan pembanding tidak berjalan atau pada kondisi off. Untuk karakter bintang ‘ * ’ menandakan bahwa hasil dari capture dan diolah dengan pembanding tekture keramik yang baik telah sesuai dengan yang diharapkan antara koefisien 1 sampai 0.984. Maka conveyor reject motor tidak bekerja atau off, dan motor konveyer recaive saja yang bekerja. 3. Pendeteksian Gerakan Teknik untuk deteksi gerakan menggunakan perhitungan nilai beda intensitas pada masingmasing elemen dalam 64 region dari grid 8x8 pada gambar pada setiap satuan waktu pengambilan frame gambar. Hal ini dikerjakan berdasarkan asumsi bahwa event gerakan ditunjukkan dengan nilai beda yang tinggi. 3.1. Pengambilan Gambar Secara Real-time Agar hasil yang dicapai dapat maksimal, maka cara pengambilan gambar juga harus tepat. Disini gambar yang didapatkan diolah secara real-time. Proses ini bertujuan untuk menagkap frameframe. Dimana frame ini akan dihitung nilai rata-rata warna pada setiap elemen-elemennya. Kemudian
Achmad Fadhol. Alat Pendeteksi Kualitas...
47
nilai-nilai tersebut akan digunakan untuk mencari nilai perbandingan antara frame(T) dengan frame(T1). Untuk mendapatkan frame(T-1) digunakan sebagai data tekture yang disotir dan frame(T) digunakan sebagai data tekture keramik yang baik atau standar. Proses penghitungan nilai-nilai gambar dilakukan oleh komputer sebagai data yang digunakan untuk pembanding seperti pada gambar 9.
Gambar 9 Pembanding antara Frame T dengan Frame T-1 3.2. Membandingkan Nilai Frame(T) dengan Frame(T-1) Agar mendapatkan hasil yang baik, total nilai warna pada gambar harus di-gray scale. Untuk menentukan adanya gerakan di sini menggunakan threshold sebagai nilai toleransi yang didefinisikan untuk memanggil fungsi frame differencing yang dimiliki program visual basic. Pembandingan tersebut dilakukan terhadap frame terakhir yang sebelumnya telah di-load.
Gambar 10. Pembanding antara Frame T dengan Frame T-1 Jadi, selain berfungsi untuk memanggil fungsi frame differencing, secara tidak langsung juga melakukan pengambilan frame baru sebagai frame(T) dan langsung membandingkan dengan cara mengurangkannya dengan frame sebelumnya ( frame (T-1) ) di dalam memori. Jika nilai yang di hasilkan melebihi dari threeshold yang telah ditentukan, maka mikrokontroler akan mengirin sinyal “*” ke server sebagai tanda terdeteksinya gerakan. 3.3. Percobaan Pendeteksian Gerakan Agar mendapatkan hasil yang baik, total nilai warna pada gambar di-gray scale terlebih dahulu. Proses ini sudah dilakukan secara otomatis oleh visual basic sebelum melakukan proses perbandingan antar frame. Kemudian untuk mendeteksi adanya gerakan, visual basic menggunakan nilai threshold sebagai nilai toleransi perbandingan frame. Dalam percobaan ini nilai toleransi/threshold yang digunakan adalah 1 sampai 0.952 dengan menggunakan jarak default 30 cm dari obyek yang potensial terhadap gerakan.
48
Jurnal IPTEK Vol 17 No.1 Mei 2013
Tabel 1. Hasil percobaan pendeteksian gerakan dalam ruangan dengan intensitas cahaya kurang terang Correlation Koefisien Pixel count(DG) Pixel count(TG) Detection limit 0.952 12-23 0 10 cm 0.962 0-7 0 0.972 0 0 0.982 0 0 Tabel 2. Hasil percobaan pendeteksian gerakan dalam ruangan dengan intensitas cahaya cukup terang Correlation Koefisien Pixel count(DG) Pixel count(TG) Detection limit 0.952 21-32 9-23 > 30 cm 0.962 13-22 0-5 30 cm 0.972 25-32 0 25 cm 0.982 35-42 0 20 cm Keterangan : - Correlation Koefisien (Threshold) : Nilai toleransi gerakan - Pixel Count(DG) : Nilai hasil perhitungan pixel terhadap threshold dengan gerakan - Pixel Count(TG) : Nilai hasil perhitungan pixel terhadap threshold tanpa gerakan - Detection limit : Jarak deteksi gerakan 3.4. Pengujian Sistem Secara Keseluruhan Pengujian keseluruhan merupakan pengujian yang dilakukan dengan menggabungkan seluruh sistem, meliputi rangkaian mekanik, perangkat lunak (software) dan Image Processing (software) di PC dengan menggunakan komunikasi serial yang dilakukan secara bertahap dan saling berhubungan satu sama lainnya. Kita juga memerlukan proses kalibrasi sebelum melakukan pengujian secara keseluruhan. Proses kalibrasi misalnya, yaitu mengatur kecepatan antara motor 1 dan motor 2, mengatur kecepatan motor konveyor dengan kecepatan kamera dalam mengambil gambar capture obyek, mengatur jarak obyek dengan kamera, mengatur cahaya pada ruangan sehingga obyek terdeteksi dengan baik. Dimana proses kalibrasi bertujuan untuk mendapatkan hasil data pengukuran yang akurat. Ukuran tekture keramik sebenarnya dengan korrelation koefisien : 0.952. Ukuran tekture keramik yang bagus harus sama persis dengan standart kualiatas keramik dengan korrelation koefisien : 1. Dimana koefisien ini nantinya akan dijadikan faktor pembagi, dan untuk prosentase errornya :
Jadi, untuk range kofisien korelasi diperoleh antara 0,952 sampai 0,982 dengan range error prosentase rata-rata untuk tekture keramik yang diterima yaitu: 3,3% dan untuk range kofisien korelasi dibawah 0,952 maka prosentase error semakin besar.
Achmad Fadhol. Alat Pendeteksi Kualitas...
49
4. Gambar Software Visual Basic Gambaran software visual basic yang terdapat pada PC komputer adalah sebagai berikut.
Gambar 11. Tampilan Program Visual Basic. Untuk program visual basicnya ditampilkan tiga fram yaitu frame Result image, Source Image, dan Operation Image. Dimana kondisi Result image merupakan keadaan asli hasil dari proses kamera ditampilkan dalam frame visual basicnya. Sedangkan source image merupakan data gambar tekture yang dianggap sesuai dengan standart quality kontrol. Untuk operation merupakan frame gambar pengambilan gambar untuk proses compar atau perbandingan. Kemudian bila sesuai dengan gambar standart maka program VB akan mengirim karakter ’*’ yang diterima untuk tidak melakukan perejectkan pada conveyor reject atau conveyor reject off. KESIMPULAN 1. Proses pengambilan image sangat dipengaruhi oleh cahaya sekitarnya, sehingga perlu dilakukan pengaturan pada nilai treesholdnya atau correlation koefisien pada saat program dijalankan. 2. Kecepatan motor untuk menggerakkan papan konveyor harus disesuaikan dengan kecepatan kamera dalam menangkap obyek. 3. Pengambilan data pengukuran menggunakan cahaya sinar matahari lebih stabil daripada menggunakan cahaya lampu ruangan. 4. Keberhasilan alat ini dalam melakukan pembandingan tekture keramik standart 55 % sedangkan 45 % kegagalan disebabkan oleh pencahayaan ruangan yang kurang baik, deteksi posisi atau transpose objek belum ada. 5. Penempatan tekture keramik agar mendapatkan cahaya dengan baik sangat sulit dilakukan sehingga permukaan tekture keramik yang akan diukur memiliki warna yang tidak sama. DAFTAR PUSTAKA [1]. [2]. [3]. [4].
Paulus Andi Nalwan 2003, Teknik Antarmuka dan Pemrograman Mikrokontroller AT89C5”, PT Elex Media Komputindo Jakarta. Beirita, Malvien. 2003. Rancang Bangun Otomasi Pengendalian Kualitas Hasil Proses Produksi Sabun Batangan Berbasis PC. Teknik Elektronika, PENS-ITS, Surabaya Hogeen Boom P, 1996, Data Sheet Book 4, Elekmedia Komputindo, Jakarta Andi. 2002, Tip & Trik Pemrograman VisualBasic 6.0. Wahana Komputer, Yokyakarta.
50
[5]. [6]. [7].
Jurnal IPTEK Vol 17 No.1 Mei 2013
Abdul yadi, 2002, Aplikasi Visual Basic dalam Industri Manufaktur, PT Elex Media Komputindo Jakarta. Munir, Rinaldi. 2004. Pengolahan Citra Diagram dengan Pendekatan Algoritmatik. Informatika, Bandung Afgianto Eko Putro 2002, Belajar Mikrokontroller AT89C51/52/55, Gava Media, Yokyakarta.