Otomasi Pemisahan Buah Tomat Berdasarkan Ukuran dan Warna Menggunakan Webcam
Pemrosesan buah tomat secara manual masih menjadi hambatan utama dalam meningkatkan produktivitas serta konsistensi kualitas pada industri pangan. Dengan kemajuan teknologi visi komputer, khususnya webcam beresolusi tinggi, proses pemisahan tomat dapat diotomatiskan berdasarkan dua parameter utama: ukuran dan warna. Artikel ini memberikan gambaran umum tentang prinsip kerja, komponen utama, serta langkahlangkah implementasi sistem otomatis tersebut.
1. Mengapa Otomasi Penting?
- Konsistensi kualitas Menjamin setiap paket memiliki tomat dengan ukuran dan kematangan yang seragam.
- Efisiensi waktu Mengurangi waktu pemilahan yang biasanya memakan berjamjam per shift.
- Pengurangan biaya tenaga kerja Mengalihkan tenaga manusia ke tugas yang lebih bernilai tinggi.
- Data realtime Memungkinkan pencatatan statistik produksi untuk analisis lebih lanjut.
2. Komponen Sistem
2.1 Webcam
Webcam beresolusi minimal 1080p dengan kemampuan fokus otomatis. Pilih kamera yang mendukung frame rate 30 fps untuk mengurangi blur pada gambar bergerak.
2.2 Pencahayaan
Pencahayaan LED putih dengan suhu warna 5000K memberikan spektrum cahaya yang stabil. Hindari bayangan dengan menempatkan lampu pada sudut 45 di kedua sisi conveyor.
2.3 Conveyor Belt
Permukaan konveyor harus datar dan nonreflektif. Kecepatan standar 0,51m/s dapat disesuaikan dengan kemampuan pemrosesan citra.
2.4 Aktuator Pemisah
Solenoid atau pneumatic valve yang dapat mengarahkan tomat ke jalur berbeda (misalnya kecilmerah, besarmerah, kecilkuning).
2.5 Komputer/PLC
PC mini atau PLC yang menjalankan algoritma pengolahan citra (OpenCV, TensorFlow) dan mengirimkan sinyal ke aktuator.
3. Prinsip Kerja Sistem
- Pengambilan gambar: Kamera mengambil frame secara terusmenerus saat tomat melintasi zona pengamatan.
- Prapemrosesan: Menggunakan filter median untuk mengurangi noise, serta konversi ke ruang warna HSV untuk memudahkan segmentasi warna.
- Deteksi objek: Kontur tomat diidentifikasi dengan thresholding pada nilai V (brightness) dan kemudian dilengkapi dengan morfologi (erosion & dilation) untuk memperbaiki bentuk.
- Pengukuran ukuran: Diameter atau luas kontur dihitung; konversi pixel ke milimeter dilakukan berdasarkan kalibrasi kamera.
- Klasifikasi warna: Nilai Hue (H) pada HSV dipakai untuk membedakan merah (H010 atau 160180) dan kuning (H2030).
- Pengambilan keputusan: Berdasarkan threshold ukuran (mis.: <30mm = kecil, 30mm = besar) dan klasifikasi warna, sistem menentukan jalur keluar.
- Aktuasi: Sinyal dikirim ke solenoid pada waktu yang tepat (sinkron dengan posisi tomat) untuk mengarahkan tomat ke tray yang sesuai.
4. Algoritma Dasar dengan OpenCV (Python)
import cv2, numpy as np
cap = cv2.VideoCapture(0)
# Kalibrasi pixeltomm (contoh 1mm = 3.8pixel)
scale = 3.8
while True:
ret, frame = cap.read()
if not ret: break
# Prapemrosesan
blur = cv2.GaussianBlur(frame, (5,5), 0)
hsv = cv2.cvtColor(blur, cv2.COLOR_BGR2HSV)
# Masker warna merah
lower_red1 = np.array([0,100,100])
upper_red1 = np.array([10,255,255])
mask_red1 = cv2.inRange(hsv, lower_red1, upper_red1)
lower_red2 = np.array([160,100,100])
upper_red2 = np.array([180,255,255])
mask_red2 = cv2.inRange(hsv, lower_red2, upper_red2)
mask_red = cv2.bitwise_or(mask_red1, mask_red2)
# Masker warna kuning
lower_yellow = np.array([20,100,100])
upper_yellow = np.array([30,255,255])
mask_yellow = cv2.inRange(hsv, lower_yellow, upper_yellow)
# Gabungkan mask dan temukan kontur
mask = cv2.bitwise_or(mask_red, mask_yellow)
contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for cnt in contours:
area = cv2.contourArea(cnt)
if area < 500: continue # filter noise
((x, y), radius) = cv2.minEnclosingCircle(cnt)
diameter_mm = (2*radius) / scale
# klasifikasi warna berdasarkan ratarata hue dalam kontur
mask_roi = mask[int(y-radius):int(y+radius), int(x-radius):int(x+radius)]
mean_hue = cv2.mean(hsv[int(y-radius):int(y+radius), int(x-radius):int(x+radius)])[0]
color = 'Merah' if (mean_hue < 10 or mean_hue > 160) else 'Kuning'
size = 'Kecil' if diameter_mm < 30 else 'Besar'
cv2.circle(frame, (int(x), int(y)), int(radius), (0,255,0), 2)
cv2.putText(frame, f"{size}-{color}", (int(x)-40, int(y)-10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0,0,255), 2)
cv2.imshow('Pemisahan Tomat', frame)
if cv2.waitKey(1) & 0xFF == ord('q'): break
cap.release()
cv2.destroyAllWindows()
5. Kalibrasi dan Penyetelan
- Kalibrasi ukuran: Letakkan objek referensi (misalnya koin) pada area pengambilan gambar untuk menentukan rasio pixeltomm.
- Ambang warna: Karena pencahayaan dapat berubah, gunakan histogram HSV pada sampel tomat untuk menyesuaikan nilai lower/upper.
- Latency aktuator: Hitung waktu tunda antara perintah dan gerakan solenoid; sesuaikan posisi trigger point pada conveyor.
6. Tantangan Umum dan Solusinya
6.1 Variasi Bentuk Tomat
Tomat tidak selalu bulat sempurna, sehingga penggunaan metode minimum enclosing circle dapat menghasilkan kesalahan pada ukuran. Solusi: gabungkan analisis bentuk (aspect ratio) atau gunakan jaringan saraf konvolusional (CNN) yang belajar langsung dari citra.
6.2 Pencahayaan Tidak Merata
Bayangan atau sorotan dapat mengubah nilai HSV. Solusi: gunakan diffuser pada lampu, atau terapkan teknik adaptive histogram equalization (CLAHE) sebelum segmentasi.
6.3 Kecepatan Conveyor Tinggi
Jika kecepatan terlalu cepat, satu frame mungkin tidak cukup untuk mendeteksi semua tomat. Solusi: tingkatkan frame rate kamera atau tambahkan lebih dari satu kamera yang tumpang tindih.
7. Integrasi ke Sistem Manufaktur
Setelah algoritma stabil, langkah selanjutnya adalah menghubungkan komputer dengan PLC melalui protokol Modbus/TCP atau Ethernet/IP. Data status (jumlah tomat per kategori, waktu operasional) dapat dikirim ke sistem SCADA untuk pelaporan.
8. Manfaat Ekonomi
Studi kasus pada sebuah pabrik pengolahan tomat di Jawa Barat menunjukkan peningkatan throughput sebesar 35% dan penurunan cacat klasifikasi dari 8% menjadi kurang dari 1% setelah mengimplementasikan sistem berbasis webcam. Investasi awal sekitar Rp150juta dapat kembali dalam 1218 bulan melalui penghematan tenaga kerja dan peningkatan nilai jual produk.
9. Ringkasan
Otomasi pemisahan tomat berdasarkan ukuran dan warna dengan webcam melibatkan kombinasi hardware (kamera, pencahayaan, conveyor, aktuator) dan software (pengolahan citra, kontrol realtime). Dengan pendekatan yang tepat, perusahaan dapat memperoleh kecepatan produksi yang lebih tinggi, konsistensi kualitas, serta data operasional yang berguna untuk perbaikan berkelanjutan.
Jika Anda tertarik mengembangkan solusi serupa, mulailah dengan prototipe sederhana menggunakan webcam standar dan OpenCV, kemudian skalakan ke sistem industri dengan PLC dan sensor tambahan.
We use cookies to enhance your browsing experience and analyze site traffic. By clicking 'Accept all cookies', you agree to the use of these cookies. You can manage your preferences or learn more in our [Privacy Policy/Cookie Policy.