Introduction: WasteWizard - Smart Waste Management System

Tugas Rancang System & Project Engineering - WasteWizard:

  • Kelvin Julius Hartono 2501988945
  • Christian Robin Kieswanto 2540128474
  • Michael Halim 2501992450

Bab 1 Pendahuluan


1.1. Latar Belakang

Pada saat ini, sampah merupakan salah satu masalah yang cukup besar dihadapi di Indonesia. Seringkali kita melihat sampah berserakan dimana-mana baik itu di tempat hiburan, perumahan, jalanan dan lain-lain. Kotak-kotak sampah yang ada ditempat-tempat tersebut seringkali penuh dan berserakan yang menyebabkan berbagai masalah lingkungan. Dari sistem pengumpulan sampah, petugas kebersihan harus memantau secara manual untuk mengecek kondisi kotak sampah sudah penuh atau belum yang tidak efisien dalam segi penggunaan waktu. Selain itu juga sistem pengambilan sampah yang masih menggunakan metode manual seperti menggunakan jam pengangkutan sampah kadangkali sudah terlambat atau terlalu cepat dimana kotak sampah dapat berserakan atau masih kosong saat pengangkutan. Serta pada tempat -tempat seperti mall, apartemen, dan taman hiburan, manajemen sampah dengan melakukan pengeceken satu per satu dari kotak dari lantai ke lantai maupun dari tempat ke tempat dapat memakan waktu yang cukup lama dan memerlukan tenaga kerja lebih.


Melihat masalah-masalah diatas, dibuatlah sebuah rancangan berupa solusi waste management dengan sistem double container yang membagikan kotak sampah menjadi dua partisi satu untuk tong sampah dan yang lainnya untuk menyimpan komponen dan PCB, menggunakan teknologi IoT yang diintegrasikan dengan aplikasi mobile yang dapat digunakan untuk melakukan pemantauan banyak kotak sampah dalam satu platform.


Dari rancangan ini, dihasilkan unit kotak sampah berbasis IoT menggunakan microcontroller ESP32 serta software berupa aplikasi mobile yang dapat meningkatkan efisiensi manajemen sampah untuk berbagai pengaplikasian baik itu di tempat-tempat umum, dinas kebersihan, industri dan lainnya.


1.2. Rumusan Masalah

  • Bagaimana cara mengatasi masalah ketidakefisienan dalam mengangkut sampah?
  • Bagaimana cara menggabungkan kotak sampah dengan teknologi IoT?
  • Bagaimana mengintegrasikan kotak sampah dengan aplikasi?


1.3. Tujuan

Tujuan dari rancangan ini adalah membuat sistem manajemen sampah berupa hardware menggunakan microcontroller yang digabungkan pada kotak sampah dengan integrasi aplikasi mobile untuk melakukan pemantauan secara jarak, mengurangi keterlibatan secara fisik dalam manajemen sampah.


1.4. Manfaat

Manfaat dari rancangan ini adalah untuk meningkatkan efisiensi dalam manajemen sampah untuk berbagai pengaplikasian yang membutuhkan sebuah sistem manajemen sampah, memudahkan terutama petugas-petugas kebersihan yang terlibat langsung dalam aktivitas yang berhubungan dengan manajemen sampah.

Supplies

Komponen yang digunakan:

  • ESP32 Devkit V1
  • IR Sensor
  • MAX7219 7-Segment
  • Ublox Neo 6M GPS Module
  • Relay Module
  • Motor Servo MG90S
  • Ultrasonic Sensor HY-SRF05
  • Load cell 50kg x4
  • HX711 ADC
  • Solar Panel
  • Dfrobot solar power manager 
  • Battery 18650
  • PCB single layer
  • Kabel JST
  • Kunci pintu
  • Casing
  • Baut

Material:

  • Impraboard
  • PVC
  • Timah Solder
  • Filamen PLA 3D Printer

Tools:

  • Solder
  • 3D Printer (Jasa Printing)
  • Obeng
  • Gergaji
  • Kikir

Software:

  • Fusion 360
  • Autodesk Visual Studio Code


Bab 2 Landasan Teori


2.1. ESP32

ESP32 adalah microcontroller yang berbasis System on Chip(SoC) dan ESP32 ini penerus dari Espressif ESP8266 yang terkenal dengan NodeMCU. Hal yang baik tentang ESP32, seperti ESP8266 adalah komponen RF terintegrasi seperti Power Amplifier, Low-Noise Receive Amplifier, Antena Switch, dan Filter. Hal ini membuat perancangan hardware pada ESP32 menjadi sangat mudah karena hanya memerlukan sedikit komponen eksternal. Beberapa spesifikasi yang terdapat pada ESP32 berikut ini:


- Single or Dual core 32 bit

- Support Bluetooth and WiFi

- Mempunyai 34 GPIO Program,

- Mempunyai 48 pinout, dan masih banyak lagi


ESP32 memungkinkan komunikasi/pertukaran data melalui kabel dengan menggunakan beberapa protokol yaitu I2C, UART sebagai media nya.


2.2. Servo Motor

Servo motor adalah perangkat listrik yang mempunyai kegunaan sebagai mendorong atau memutar suatu objek dengan tingkat presisi dari tinggi, sudut, akselerasi, dan kecepatan. Hal ini dimungkinkan dengan kombinasi motor biasa dan tambahan sensor dalam hal ini berupa encoder untuk umpan balik posisi. Kontroler dari servo motor yang lebih dikenal dengan nama servo drive adalah bagian yang paling penting dan canggih dari sebuah servo motor, karena dirancang untuk presisi tinggi tersebut.


2.3. Sensor Ultrasonik

Sensor ultrasonik adalah sensor yang menggunakan gelombang ultrasonik untuk mendeteksi keberadaan suatu benda dengan jarak antara benda dan sensornya. Cara kerja dari sensor ultrasonik berdasarkan prinsip panduan dari satu gelombang suara pantulan, yang memungkinkan seseorang untuk menggunakannya untuk membuat jarak satu benda dengan menggunakan frekuensi saat ini. Gelombang ultrasonik ditembakkan menggunakan perangkat yang menggunakan piezoelektrik dan frekuensi yang ditentukan.


2.4. HX711

HX711 adalah sebuah ADC (Analog to Digital Converter) yang umumnya digunakan untuk membaca data dari sensor timbangan atau load cell. HX711 dirancang khusus untuk menangani sinyal analog yang dihasilkan oleh load cell dan mengubahnya menjadi data digital yang dapat dibaca oleh mikrokontroler atau komputer.


2.5. Sensor Infrared

Perangkat elektronik yang mengukur dan mendeteksi suatu radiasi inframerah di lingkungan sekitar bisa dari cahaya matahari atau objek yang berada di dekat daerahnya. Sensor infrared terdapat dua jenis yaitu aktif dan pasif, sensor IR aktif terdapat dua bagian yaitu dioda dan LED indikator. Sensor IR dapat digunakan sensor jarak atau bisa juga pada robot sebagai deteksi rintangan.


2.6. 7-Segment display

Komponen elektronik yang dapat menampilkan angka desimal maupun heksadesimal yang ditampilkan melalui kombinasi segmennya. Seven segment ini terdiri dari 8 buah LED yang dapat menampilkan angka 1-9 dan beberapa huruf alfabet. Seven segment terdapat dua jenis yaitu seven segment tipe common anode dan katode yang digunakan pada saat HIGH untuk katode, sedangkan anode digunakan pada saat LOW.


2.7. GPS Module

Modul yang berfungsi sebagai penerima lokasi GPS yang mendeteksi lokasi dengan menangkap sinyal langsung dari satelit navigasi. Modul ini meliput sistem navigasi, keamanan pada perangkat yang bergerak. Modul ini dapat melacak sampai 22 satelit dan lokasinya.


2.8. PCB

PCB (Printed Circuit Board) adalah papan sirkuit yang terdiri dari lapisan bahan isolator yang dilapisi dengan lapisan tembaga yang membentuk jalur rangkaian listrik. PCB digunakan untuk menyusun dan menghubungkan komponen elektronik dengan rapi dan efisien dalam berbagai perangkat elektronik, termasuk perangkat elektronik konsumen, perangkat medis, kendaraan, dan perangkat elektronik lainnya.


2.9. Solar Panel

Panel surya, juga disebut panel FV (fotovoltaik), adalah perangkat elektronik yang mengubah energi matahari menjadi energi listrik melalui efek fotovoltaik. Efek fotovoltaik terjadi ketika foton cahaya matahari menyentuh sel fotovoltaik yang terbuat dari semikonduktor, seperti silikon, sehingga melepaskan elektron dan menciptakan arus listrik. Struktur dasar panel surya terdiri dari sel fotovoltaik yang disusun dalam modul dan dilindungi oleh lapisan pelindung. Ada beberapa jenis panel surya, termasuk monokristalin, polikristalin, dan film tipis, masing-masing dengan karakteristik efisiensi dan biaya yang berbeda.


2.10. Load cell

Load cell merupakan sebuah sensor yang berfungsi untuk mengukur gaya atau berat dengan prinsip dasar berdasarkan perubahan resistansi pada rangkaian Jembatan Wheatstone yang terdapat dalam sensor tersebut. Saat diberikan berat pada load cell, terjadi deformasi pada bahan elastisnya, mengakibatkan perubahan resistansi pada jembatan. Perubahan resistansi ini menciptakan ketidakseimbangan dalam jembatan dan menghasilkan tegangan keluaran yang proporsional terhadap berat yang diterapkan


2.11. Relay

Relay adalah perangkat elektronik yang berfungsi sebagai switch yang dikendalikan oleh sinyal listrik. Modul relay umumny bekerja berdasarkan prinsip elektromagnetik. Saat arus listrik mengalir melalui kumparan elektromagnetik pada relay, medan magnet yang dihasilkan menyebabkan contact switch berubah posisi. Modul relay biasanya memiliki dua jenis kontak switch, yaitu normally open (NO) dan normally closed (NC). Secara default kontak switch NO terbuka dan NC tertutup, tetapi ketika relay diaktifkan akan berbalik. Modul relay digunakan untuk mengendalikan perangkat atau rangkaian lain yang membutuhkan tegangan lebih besar daripada yang dapat dihasilkan oleh mikrokontroler atau sinyal kontrol lainnya.


2.12. Flutter

Flutter adalah sebuah framework pengembangan aplikasi open-source yang dikembangkan oleh Google untuk membuat aplikasi di berbagai platform seperti Android, iOS, web, dan desktop menggunakan satu source code. Flutter menggunakan bahasa pemrograman Dart dan menggunakan konsep "widget" sebagai elemen-elemen dasar pembangunan UI-nya, yang dapat diatur dan diorganisir secara hierarki.

Step 1: METODE PELAKSANAAN

Cara Kerja Sistem

Hardware pada kotak sampah dipasangkan sebuah microcontroller yang menjadi otak utama dari sistem hardware tersebut. Terhubung dengan berbagai sensor dan aktuator seperti load cell, sensor ultrasonik, sensor IR, servo, 7-segment dan relay. Bacaan dari sensor akan dikirimkan ke Firebase Realtime Database beserta beberapa variabel lainnya seperti timestamp dan tanggal yang nantinya data akan dibaca oleh aplikasi mobile yang dibuat menggunakan framework Flutter.


Detail hardware:

Servo pada kotak sampah digunakan untuk membuka tutup bagian depan untuk pembuangan sampah berdasarkan bacaan dari sensor IR agar mengurangi kontak secara fisik dengan kotak sampah. Load cell pada sistem akan dibaca datanya menggunakaan ADC HX711 yang mengkonversi data analog dari load cell menjadi digital yang akan masuk ke ESP32 melalui pin data untuk HX711. Sensor ultrasonik yang diletakkan pada partisi container atas akan mengukur jarak dari atas ke tong sampah dibawah, jarak dalam cm akan diformulasikan menjadi persentase kepenuhan berdasarkan titik tertinggi tong sampah ke sensor ultrasonik. Bacaan dari sensor ultrasonik dan load cell akan didisplay bersamaan dengan data diambil pada 7-segment display dan data tesebut juga dikirimkan ke Firebase Realtime Database bersamaan dengan variabel seperti timestamp, tanggal dan hari.


Sistem power pada kotak sampah menggunakan 2 buah baterai 18650 yang dapat dicharge menggunakan 2 sumber power dari Solar Panel ataupun kabel micro-USB. Proses charging diatur menggunakan Dfrobot Solar Power Manager yang dapat memberikan indikasi charging dan melindungi baterai dari overcharging serta reverse current. Digunakan sebuah relay pada sisi charging micro-USB yang akan melakukan switching pada saat jam 18.00 berdasarkan algoritma pada code.


Detail Software:

Untuk software digunakan sebuah aplikasi mobile yang dibuat menggunakan framework Flutter untuk memantau kondisi kotak sampah secara realtime dengan menarik data dari data yang sebelumnya sudah diupload oleh ESP32 menuju realtime database. Data yang dipantau berupa kapasitas, berat dan status tong sampah dengan beberapa fitur statistik yang diupdate setiap jamnya dengan data logging untuk analisa tiap 24 jam yang dapat dischedule melalui aplikasi.

Step 2: FLOW CHART

Berikut adalah flowchart dari sistem WasteWizard secara keseluruhan, dimana pada sisi ESP32 akan dilakukan inisialisasi pada ESP32 dan sensor-sensor yang terhubung kemudian akan mencari WiFi yang dapat dihubungi, kemudian setelah terhubung akan dilakukan koneksi ke Firebase RTDB menggunakan access token. Setelah itu maka ESP32 akan menjalankan task-task yang ada menggunakan freeRTOS, dimana beberapa task ada yang berinteraksi dengan firebase RTDB secara langsung melakukan read/write data tergantung task yang dijalankan. Jika ada masalah koneksi WiFi, maka ESP32 akan mencoba menghubungi kembali dan jika ada masalah koneksi dengan firebase, maka akan dihubungi ulang dengan cara yang sama saat inisialisasi.


Dari firebase rtdb juga akan terhubung dengan aplikasi yang dimana pada sisi aplikasi akan dilakukan inisialisasi juga dan memiliki berbagai pages yang melakukan read/write juga ke firebase rtdb sehingga saling terhubung dengan ESP32 melalui firebase rtdb.

Step 3: BLOCK DIAGRAM

Berikut adalah block diagram dari sistem WasteWizard secara singkat, dimana sensor akan mengirimkan bacaan ke ESP32, dan ESP32 akan mengirim data ke Firebase RTDB, yang kemudian aplikasi Flutter akan mengambil data tersebut dari RTDB untuk didisplay ke UI-nya. Sebaliknya pengguna Aplikasi Flutter juga dapat melakukan write data ke firebase RTDB melalui UI yang kemudian ESP32 akan membaca data tersebut dan melakukan tasknya dari data itu.

Step 4: PCB SCHEMATIC

Rancangan WasteWizard kami memiliki ukuran PCB sebesar 8x8 cm di mana untuk microcontroller ESP32 berada di pusat PCB. Kami menggunakan terminal block untuk menyuplai tegangan 5V 1A ke komponen-komponen yang berada di kanan dan kiri PCB. Kami juga memakai JST Connector untuk wriing yang reliable dan kuat, mengingat beberapa komponen berada di letak yang cukup jauh. Berikut adalah list GPIO yang kami gunakan:

Servo Tower Pro MG90

  • PWM: GPIO33

IR Sensor

  • OUT: GPIO32

Ultrasonic HY SRF-05

  • Trigger: GPIO14
  • Echo: GPIO27

HX711

  • SCK: GPIO22
  • DT: GPIO15

GPS Module Ublox Neo 6M V2

  • RX: GPIO16
  • TX: GPIO17

7 Segment MAX7219 8-Digit Module

  • DIN: GPIO23
  • CS: GPIO5
  • CLK: GPIO18

Relay 1-Channel

  • IO: GPIO26

Step 5: MOBILE APP

Mobile App dari WasteWizard dibuat menggunakan framework Flutter yang diintegrasikan dengan firebase rtdb agar dapat terhubung dengan device pada kotak sampah. Berikut adalah struktur dari aplikasi WasteWizard:

Boarding Page -> Auth Page -> Login/Register -> Navigation Page

  • Boarding Page

Boarding page adalah halaman awal yang muncul saat aplikasi pertama kali dibuka, hanya berisi penjelasan singkat dan button untuk melanjutkan ke page selanjutnya yaitu Auth Page.

  • Auth Page

Auth page menentukan apakah user sudah login atau belum, jika sudah login maka user akan langsung dinavigasikan ke Navigation page. Sebaliknya, jika belum user akan dinavigasikan ke Login/Register page. Auth Page akan menjadi halaman awal saat Boarding Page telah dilewati.

  • Login/Register Page

Login/Register Page berisi 2 page yaitu Login dan Register yang dapat switching saat user menekan register here/login here. Disini user akan membuat credential baru dengan username, email dan password untuk login ataupun dapat menggunakan akun google. Login/Register dihandle oleh plugin firebase_auth dan google service dihandle oleh google auth.

  • Navigation Page

Navigation Page berisi 3 page utama yang dapat dinavigasi menggunakan sebuah bottom navigation bar. Pages tersebut adalah Home, Dashboard dan Data Log. Home page berisi informasi-informasi singkat akan kondisi kotak sampah dengan google map untuk tracking lokasi tiap kotak sampah, Dashboard berisi informasi kapasitas dan berat kotak sampah secara realtime dalam bentuk gauge dengan statistik per jamnya dan Data Log berisi data harian akan kondisi tong sampah yang diupdate setiap 24 jam dengan kapabilitas untuk dischedule waktu pengiriman hariannya

Step 6: HASIL DAN PEMBAHASAN

Berikut di atas adalah tabel hasil samping per hari data berat selama periode 7 hari. Terlihat pada tabel perkembangan timbangan asli dengan kotak sampah beserta tingkat akurasi masing-masing sampling. Dapat disimpulkan bahwa akurasi timbangan sangat dipengaruhi oleh beban yang ditaruh. Tingkat akurasi yang bervariasi pada setiap sampling memunjukan bahwa prototype WasteWizard kami memiliki tingkat kestabilan yang lebih baik terhadap beban yang lebih berat (> 2kg), dengan tingkat akurasi yang cukup tinggi yaitu di atas 95%.

Namun pada beban yang lebih ringan, terutama pada 5 - 6 Desember 2023, terlihat adanya ketidastabilan data yang membuat tingkat akurasi menjadi dibawah 90%. Hal ini disebabkan oleh beberapa faktor, yang pertama adalah tatakan Loadcell. Kami memakai material PVC dengan tebal 10mm dan menggunakan bracket loadcell 3D Printed PLA. PVC dan struktur bracket merupakan material kurang padat membuatnya tidak efektif dalam menanggung beban ringan. sehingga diperlukan tatakan yang lebih kokoh dan padat, seperti aluminium atau ABS. Adapula faktor Human Error, dimana pembuatan desain tatakan ini juga tidak lengah dari kesalahan manusiawi dalam pengukuran.

Selain itu, pengaruh impraboard sebagai alas timbangan juga mempengaruhi stabilitas pengukuran dan akurasi timbangan. Impraboard 5mm merupakan plastik yang rentan terhadap deformasi. Dimana perubahan bentuk alas yang terjadi akibat penekanan terus-menerus membuat deformasi yang permanen juga, meskipun beban yang ditaruh telah ditiadakan. Meskipun demikian, WasteWizard bisa memberikan tingkat akurasi di atas 95% pada beban yang berat. 

Step 7: KESIMPULAN DAN SARAN

KESIMPULAN

Berdasarkan hasil pembahasan performa Loadcell dalam proyek ini, perlu diakui bahwa akurasi timbangan sangat dipengaruhi oleh beberapa faktor seperti human error, material yang digunakan, dan stabilitas alas Loadcell itu sendiri. Hasil sampling data menunjukkan bahwa tingkat akurasi Loadcell cenderung lebih stabil pada beban yang lebih berat. Untuk mencapai tingkat akurasi di atas 95%, diperlukan beban lebih dari 2kg. Oleh karena itu, diperlukan adanya perbaikan terhadap bahan dan desain timbangan demi meningkatkan stabilitas pengukuran, meminimalisir faktor human error, dan juga memastikan konsistensi data yang diterima pada tiap tingkatan beban.

SARAN

Berikut beberapa saran yang dapat disampaikan untuk pengembangan lebih lanjut, yaitu:

  1. Disarankan untuk membuat tatakan yang rata dan stabil bagi loadcell guna meningkatkan stabilitas dan akurasi pengukuran berat sampah.
  2. Pemisahan sumber power antara 7-Segment dan Servo sangat dianjurkan untuk mengatasi flicker pada 7-Segment saat servo bergerak.
  3. Mengganti IR sensor dengan Time-of-Flight (ToF) sensor yang lebih canggih, terutama jika digunakan di lingkungan outdoor.
  4. Mengganti bahan casing menjadi aluminium agar tahan lama dan kokoh.


Step 8: 3D Printing

Untuk komponen 3D printing, yang diprint adalah berupa bracket untuk mounting load cell ke board PVC agar dapat stabil dan menjadi timbangan dari tong sampah.


Link File stl & f3d bracket Load Cell:

https://drive.google.com/drive/folders/1pbPW68jkhCvtfoNahoiSbNpDGLJRyuu9?usp=sharing

Step 9: SOURCE CODE

Step 10: Reference

Jost, D. (2019, July 29). What is an IR sensor? FierceElectronics. Diakses pada 23 Desember 2023 ,dari https://www.fierceelectronics.com/sensors/what-ir-sensor. 


Jost, D. (2019, October 7). What is an Ultrasonic Sensor? FierceElectronics. Diakses pada 23 Desember 2023 ,dari https://www.fierceelectronics.com/sensors/what-ultrasonic-senso


Anonim. (2022, April 27). Arduino with Load Cell and HX711 Amplifier (Digital Scale). Random Nerd Tutorials. https://randomnerdtutorials.com/arduino-load-cell-hx711/


Technology, E. (n.d.). Cara akses modul GPS NEO 6M V2 menggunakan arduino. Elmechtechnology.com. Diakses pada 23 Desember 2023 ,dari https://elmechtechnology.com. 



Anonim. (n.d.). Apa Itu Load Cell?. Diakses pada 23 Desember 2023 ,dari https://www.rajaloadcell.com/article/apa-itu-load-cell--8


Media, K. C. (2023, October 9). Seven Segment Display: Pengertian, Tipe dan Prinsip Dasarnya. KOMPAS. Diakses pada 23 Desember 2023 ,dari https://:www.kompas.com/seven-segment-display--pengertian-tipe-dan-prinsip-dasarnya


Anonim. (n.d.). Tentang Solar Panel. SUN Terra. Diakses pada 23 Desember 2023 ,dari https://www.sunterra.id/tentang-solar-panel/


Meilinaeka. (2023, April 3). Mengenal Flutter dan Framework yang Banyak Digunakan. Direktorat Pusat Teknologi Informasi. Diakses pada 23 Desember 2023 ,dari https://it.telkomuniversity.ac.id/mengenal-flutter-dan-framework/


Misel. (2022, July 8). Apa itu Relay? Berikut Pengertian, Jenis dan Fungsi Relay!. PT Mitrainti Sejahtera Eletrindo. Diakses pada 23 Desember 2023 ,dari https://misel.co.id/apa-itu-relay-berikut-pengertian-jenis-dan-fungsi-relay-yuk-simak/


Anonim. (2022, October 3). PCB : Pengertian, Jenis dan Pengelolaan Limbahnya. Universal Eco. Diakses pada 23 Desember 2023 ,dari https://www.universaleco.id/blog/detail/pcb-pengertian-jenis-dan-pengelolaa-limbahnya/187


Rifky, I. (2021, November 16). MIKROKONTROLER ESP32. UNIVERSITAS RAHARJA. Diakses pada 23 Desember 2023 ,dari https://raharja.ac.id/2021/11/16/mikrokontroler-esp32-2/


Prastyo, E. A. (n.d.). Pengertian dan Prinsip Kerja Motor Servo. Diakses pada 23 Desember 2023 ,dari https://www.arduinoindonesia.id/2022/10/pengertian-dan-prinsip-kerja-motor-servo.htm

Step 11: LAMPIRAN