Tempat Sampah Otomatis menggunakan RASPBERRY Pi

 LAPORAN PROJEK AKHIR SEMESTER

LABORATORIUM SISTEM TERBENAM

TEMPAT SAMPAH OTOMATIS MENGGUNAKAN RASPERRY PI

 


Dosen Pengampu:

Dr. Samuel Beta K., Ing.Tech, M.T.

 

Disusun Oleh :

Kelompok 6

1.      Adinda Lidia Selvi

RE-3A

(4.34.22.0.02)

2.      Andhika Surya S.

RE-3A

(4.34.22.0.03)

3.      Ilham Yahya M

RE-3A

(4.34.22.0.12)


 

 

PROGRAM STUDI TEKNOLOGI REKAYASA ELEKTRONIKA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

2025


BAB I
PENDAHULUAN

1.1.   Latar Belakang

Kebersihan dan higienitas menjadi aspek penting dalam kehidupan sehari-hari, terutama dalam lingkungan rumah tangga, rumah sakit, dan laboratorium. Salah satu masalah yang sering dihadapi adalah kontak langsung antara tangan manusia dengan tutup tempat sampah. Aktivitas ini, meskipun sederhana, memiliki potensi menyebarkan kuman dan virus karena permukaan tutup tempat sampah sering kali menjadi media penularan penyakit. Di tempat-tempat umum dengan lalu lintas manusia yang tinggi, permasalahan ini semakin kompleks dan berdampak langsung terhadap kesehatan.

Seiring dengan perkembangan teknologi, solusi otomatisasi menjadi semakin relevan dan aplikatif. Salah satunya adalah dengan memanfaatkan teknologi mikrokontroler seperti Raspberry Pi. Raspberry Pi merupakan komputer mini yang mampu menjalankan perintah pemrograman untuk mengontrol berbagai perangkat keras seperti sensor dan motor. Dengan mengintegrasikan berbagai sensor seperti sensor infrared dan sensor ultrasonik, sistem dapat dirancang untuk mendeteksi gerakan tangan dan volume sampah secara otomatis. Hal ini memungkinkan tutup tempat sampah dapat terbuka dan tertutup tanpa sentuhan, serta memberikan peringatan ketika sampah sudah penuh.

Dengan adanya sistem otomatis ini, pengguna dapat membuang sampah tanpa harus menyentuh tutup tempat sampah secara langsung. Hal ini tentu saja meningkatkan tingkat sanitasi dan kenyamanan. Sistem ini juga sangat cocok untuk diterapkan di lingkungan yang membutuhkan standar kebersihan tinggi, seperti ruang perawatan medis atau dapur industri. Melalui inovasi sederhana namun efektif ini, diharapkan dapat memberikan kontribusi positif terhadap peningkatan kualitas hidup yang lebih bersih, sehat, dan modern.


1.2.   Tujuan

Tujuan dari perancangan alat ini, yaitu:

1.  Menerapkan teknologi mikrokontroler dalam kehidupan sehari-hari.

2. Merancang sistem tempat sampah otomatis berbasis Raspberry Pi.

3. Meningkatkan kenyamanan dan kebersihan pengguna.

4. Menghindari kontak langsung dengan tutup tempat sampah.

 

1.3.   Rumusan Masalah

Berdasarkan uraian di atas, maka ada beberapa rumusan masalah yang harus diperhatikan, yaitu:

1.   Bagaimana cara merancang sistem tempat sampah otomatis menggunakan Raspberry Pi?

2. Sensor apa saja yang efektif untuk mendeteksi keberadaan tangan dan kondisi sampah?

3. Sejauh mana sistem ini dapat meningkatkan sanitasi dan efisiensi penggunaannya?


BAB II
TINJAUAN PUSTAKA

2.1.   Raspberry Pi 4 

Raspberry Pi 4 merupakan komputer mini berukuran kecil yang memiliki kemampuan seperti komputer desktop pada umumnya. Dilengkapi dengan prosesor quad-core dan RAM yang bervariasi, perangkat ini mampu menjalankan sistem operasi berbasis Linux seperti Raspbian. Raspberry Pi sangat fleksibel dan mendukung berbagai jenis koneksi seperti USB, HDMI, serta GPIO (General Purpose Input Output) yang memungkinkannya berinteraksi langsung dengan sensor dan aktuator.


Kelebihan utama Raspberry Pi dalam proyek otomatisasi terletak pada kemampuannya menjalankan skrip Python dan konektivitasnya yang luas. Hal ini menjadikannya pilihan ideal untuk mengontrol perangkat-perangkat cerdas dalam sistem IoT (Internet of Things). Dalam konteks tempat sampah otomatis, Raspberry Pi bertindak sebagai pusat kendali yang menerima input dari sensor dan mengatur output ke servo motor atau LED sebagai responnya.


Selain itu, Raspberry Pi juga mendukung berbagai pustaka pemrograman seperti RPi.GPIO dan time, yang memungkinkan pengguna mengakses pin GPIO secara langsung dan mengatur durasi aktivitas perangkat. Keunggulan ini membuat Raspberry Pi lebih unggul dibandingkan mikrokontroler lain seperti Arduino dalam hal pemrosesan data dan pengembangan sistem yang kompleks.



Gambar 2.1. Raspberry Pi4



2.2.   Sensor Ultrasonik HC-SR04

Sensor ultrasonik HC-SR04 digunakan untuk mengukur jarak menggunakan gelombang ultrasonik. Sensor ini bekerja dengan mengirimkan gelombang dari komponen transmitter, kemudian menerima pantulan gelombang tersebut melalui receiver. Waktu tempuh gelombang digunakan untuk menghitung jarak benda di depannya, dengan rumus jarak = waktu × kecepatan suara / 2.

Dalam konteks tempat sampah otomatis, sensor ini berfungsi untuk mendeteksi ketinggian tumpukan sampah. Jika tumpukan sampah mendekati sensor dan jaraknya kurang dari ambang batas tertentu (misalnya 5 cm), maka sistem akan menganggap tempat sampah sudah penuh. Hal ini memungkinkan sistem memberikan peringatan secara otomatis melalui LED atau buzzer.

Keunggulan sensor HC-SR04 adalah harganya yang murah, mudah digunakan, dan memiliki akurasi yang cukup baik untuk aplikasi jarak pendek. Namun, sensor ini juga memiliki kelemahan, seperti ketidakakuratan pada permukaan yang menyerap suara (misalnya bahan kain atau sampah organik basah), sehingga perlu dipasang pada posisi yang tepat agar hasil pengukurannya konsisten.

2.3.   Sensor Infrared (IR)



Gambar 2.2. Sensor Infrared

Sensor infrared (IR) merupakan sensor yang digunakan untuk mendeteksi keberadaan objek berdasarkan pantulan sinyal inframerah. Ketika sinyal IR mengenai objek, sebagian sinyal akan dipantulkan kembali dan diterima oleh sensor. Jika pantulan ini melebihi ambang batas, maka sensor mengirimkan sinyal logika ke mikrokontroler atau komputer mini seperti Raspberry Pi.


Dalam proyek tempat sampah otomatis, sensor IR digunakan untuk mendeteksi tangan pengguna. Ketika tangan terdeteksi berada di depan sensor, Raspberry Pi akan memberi perintah kepada servo motor untuk membuka tutup tempat sampah. Setelah beberapa detik, sistem akan kembali menutup tutup secara otomatis.


Penggunaan sensor IR cukup efektif karena responsnya cepat dan hemat daya. Namun, sensor ini juga cukup sensitif terhadap cahaya sekitar dan bisa mengalami false trigger jika digunakan di tempat dengan pencahayaan tinggi. Oleh karena itu, penting untuk menempatkan sensor IR di area yang cukup terlindung dari cahaya langsung agar dapat bekerja secara optimal.

2.4.   Servo Motor



Gambar 2.3. Servo Motor

Servo motor adalah aktuator listrik yang dapat mengatur posisi sudut dengan presisi tinggi. Berbeda dengan motor DC biasa, servo memiliki sistem umpan balik yang memungkinkan pengaturan posisi berdasarkan sinyal PWM (Pulse Width Modulation). Umumnya digunakan dalam aplikasi robotika, kontrol mekanik, dan proyek elektronik otomatisasi.


Dalam sistem tempat sampah otomatis, servo motor berfungsi untuk membuka dan menutup tutup tempat sampah. Raspberry Pi mengontrol sudut bukaan tutup melalui sinyal PWM, di mana durasi pulsa menentukan posisi putar poros servo. Hal ini membuat mekanisme buka-tutup menjadi lebih efisien dan presisi.


Servo motor memiliki berbagai ukuran dan kekuatan torsi. Untuk sistem seperti ini, servo kecil dengan torsi sedang sudah cukup memadai. Namun, perlu diperhatikan bahwa penggunaan servo secara terus menerus tanpa manajemen daya yang baik dapat menyebabkan panas berlebih dan mengurangi umur perangkat.


2.5.   Breadboard dan Kabel Jumper


Gambar 2.4. Breadboard dan Kabel Jumper

Breadboard adalah papan sirkuit sementara yang memungkinkan pengguna merancang dan menguji rangkaian elektronik tanpa menyolder. Breadboard dilengkapi dengan jalur konduktif yang memungkinkan komponen-komponen elektronik saling terhubung dengan mudah. Ini sangat membantu dalam fase prototipe karena memungkinkan perubahan rangkaian dengan cepat.


Kabel jumper digunakan sebagai penghubung antara komponen satu dengan yang lainnya pada breadboard, maupun dari breadboard ke Raspberry Pi. Kabel ini tersedia dalam berbagai warna dan panjang, yang dapat membantu dalam mengatur kabel agar rapi dan mempermudah proses debugging.


Kombinasi breadboard dan kabel jumper sangat ideal untuk keperluan eksperimen karena bersifat reusable dan fleksibel. Namun, dalam jangka panjang atau untuk penggunaan permanen, rangkaian biasanya akan disolder ke PCB untuk kestabilan dan keamanan koneksi.

Sensor LDR (Light Dependent Resistor) adalah sebuah sensor yang digunakan untuk mendeteksi cahaya.


2.6.   Python

Python adalah bahasa pemrograman tingkat tinggi yang dikenal karena sintaksisnya yang sederhana dan mudah dibaca. Raspberry Pi secara default sudah mendukung bahasa Python, dan banyak pustaka telah tersedia untuk mendukung pemrograman perangkat keras seperti sensor dan motor.

Dalam proyek tempat sampah otomatis, Python digunakan untuk menulis skrip logika sistem—dari pembacaan sensor IR, perintah ke servo motor, hingga pemrosesan data dari sensor ultrasonik. Python juga memiliki pustaka seperti RPi.GPIO, time, dan gpiozero yang memudahkan akses pin dan penjadwalan eksekusi perintah.

Python sangat cocok untuk pemula maupun profesional karena dokumentasinya yang luas dan komunitasnya yang besar. Fleksibilitasnya dalam menangani perangkat keras menjadikan Python sebagai salah satu bahasa terbaik dalam pengembangan sistem otomatisasi berbasis Raspberry Pi.


BAB III
PERANCANGAN ALAT

3.1.   Daftar Komponen

Komponen yang kami gunakan untuk perancangan alat ini, yaitu:

1.   Raspberry Pi 4

2. Sensor Ultrasonik HC-SR04

3. Sensor Infrared

4. Servo Motor

5. Buzzer

6. LED indikator

7. Breadboard

8. Kabel Jumper

9. Tempat Sampah

  

3.2.   Cara Kerja

Sistem akan aktif secara terus menerus. Ketika sensor IR mendeteksi adanya tangan, Raspberry Pi menginstruksikan servo motor untuk membuka tutup. Setelah jeda 2 detik, tutup akan menutup kembali. Kemudian, sensor ultrasonik mengukur tinggi sampah. Jika sampah hampir penuh (jarak < 5 cm), LED atau buzzer akan aktif sebagai peringatan. Jika belum penuh, sistem akan tetap siaga.

3.3.   Diagram Blok




Gambar 3.1 Diagram Blok

3.4.   Diagram Alir





Gambar 3.2 Diagram Alir

3.5.   Gambar Rangkaian



Gambar 3.3 Gambar Rangkaian

3.6.   Kode Program

/*================================================

  Projek Tugas Akhir Semester

  Tempat Sampah Otomatis berbasis Raspberry Pi

  ================================================

  Kelompok 6

  Anggota :

  1. 02-Adinda Lidia Selvi      NIM:4.34.22.0.02

  2. 03-Andhika Surya S.       NIM:4.34.22.0.03

  3. 11-Ilham Yahya M.          NIM:4.34.22.0.12

  ================================================

*/
import RPi.GPIO as GPIO                  # Library untuk kontrol GPIO di Raspberry Pi
import time                                          # Library untuk fungsi delay dan waktu

# Setup mode GPIO
GPIO.setmode(GPIO.BCM)               # Gunakan penomoran pin BCM (bukan nomor fisik BOARD)

# === Pin Setup ===
TRIG = 23                                           # Pin trigger sensor ultrasonik
ECHO = 24                                         # Pin echo sensor ultrasonik
IR_SENSOR = 17                              # Pin sensor IR (infrared)
SERVO_PIN = 18                              # Pin servo motor
BUZZER_PIN = 27                           # Pin buzzer
LED_PIN = 22                                   # Pin LED indikator

# Setup mode pin sebagai input atau output
GPIO.setup(TRIG, GPIO.OUT)                        # TRIG sebagai output
GPIO.setup(ECHO, GPIO.IN)                          # ECHO sebagai input
GPIO.setup(IR_SENSOR, GPIO.IN)               # IR sensor sebagai input
GPIO.setup(SERVO_PIN, GPIO.OUT)           # Servo sebagai output
GPIO.setup(BUZZER_PIN, GPIO.OUT)        # Buzzer sebagai output
GPIO.setup(LED_PIN, GPIO.OUT)                # LED sebagai output

# Inisialisasi PWM untuk servo motor di pin 18 dengan frekuensi 50Hz
servo = GPIO.PWM(SERVO_PIN, 50)      
servo.start(0)                                         # Mulai PWM dengan duty cycle 0

# === Fungsi membuka dan menutup tutup tempat sampah ===
def buka_tutup():
    print("Membuka tutup...")
    set_servo(0)                                      # Buka tutup dengan sudut 0 derajat
    time.sleep(2)                                     # Tunggu 2 detik
    print("Menutup tutup...")
    set_servo(90)                                    # Tutup kembali dengan sudut 90 derajat

# Fungsi untuk mengatur sudut servo
def set_servo(angle):
    duty = angle / 18 + 2                               # Konversi sudut ke duty cycle PWM
    GPIO.output(SERVO_PIN, True)          # Aktifkan pin servo
    servo.ChangeDutyCycle(duty)              # Setel sudut servo
    time.sleep(0.5)                                       # Tunggu servo bergerak
    GPIO.output(SERVO_PIN, False)        # Nonaktifkan pin servo
    servo.ChangeDutyCycle(0)                   # Duty cycle 0 untuk hentikan sinyal

# Fungsi untuk mengukur jarak dengan sensor ultrasonik
def cek_jarak():
    GPIO.output(TRIG, False)             # Setel TRIG ke low
    time.sleep(0.1)                                # Delay pendek sebelum mengirim pulsa

    GPIO.output(TRIG, True)              # Kirim pulsa TRIG 10 mikrodetik
    time.sleep(0.00001)
    GPIO.output(TRIG, False)

    pulse_start, pulse_end = 0, 0         # Inisialisasi waktu pulsa

    timeout = time.time() + 0.04          # Timeout 40 ms untuk menghindari infinite loop

    # Tunggu sinyal ECHO naik
    while GPIO.input(ECHO) == 0:
        pulse_start = time.time()
        if pulse_start > timeout:               # Jika melebihi timeout
            return -1                                   # Kembalikan -1 sebagai tanda error

    # Tunggu sinyal ECHO turun
    while GPIO.input(ECHO) == 1:
        pulse_end = time.time()
        if pulse_end > timeout:
            return -1

    duration = pulse_end - pulse_start   # Hitung durasi pulsa
    distance = duration * 17150             # Konversi durasi ke jarak (cm)
    return round(distance, 2)                  # Bulatkan hasil dan kembalikan

# === Loop utama program ===
try:
    set_servo(90)                                     # Tutup dalam posisi awal (tertutup)

    while True:
        # Deteksi tangan menggunakan sensor IR
        if GPIO.input(IR_SENSOR) == 0:                   # Sensor IR aktif rendah
            print("Tangan terdeteksi - membuka tutup")
            buka_tutup()                                                  # Jalankan fungsi buka tutup

        # Cek jarak isi tempat sampah menggunakan ultrasonik
        jarak = cek_jarak()

        if jarak == -1:
            print("Gagal membaca jarak (timeout)")      # Jika sensor error
        else:
            print(f"Jarak isi: {jarak} cm")                       # Tampilkan hasil jarak

            # Jika jarak antara 2 dan 5 cm (sampah sudah tinggi), dianggap penuh
            if 2 < jarak < 5:
                print("Tempat sampah penuh!")
                GPIO.output(BUZZER_PIN, True)        # Aktifkan buzzer
                GPIO.output(LED_PIN, True)                # Nyalakan LED
            else:
                GPIO.output(BUZZER_PIN, False)       # Matikan buzzer
                GPIO.output(LED_PIN, False)               # Matikan LED

        time.sleep(0.5)                                                 # Delay agar pembacaan tidak terlalu cepat

except KeyboardInterrupt:
    print("Program dihentikan.")                               # Pesan jika program dihentikan manual
    servo.stop()                                                          # Hentikan PWM servo
    GPIO.cleanup()                                                   # Bersihkan semua konfigurasi GPIO


BAB IV
PENUTUP

4.1  Kesimpulan

Berdasarkan hasil perancangan dan implementasi yang telah dilakukan, maka dapat disimpulkan bahwa, Proyek tempat sampah otomatis ini membuktikan bahwa Raspberry Pi dapat digunakan untuk menciptakan solusi otomatisasi rumah tangga yang bermanfaat. Dengan sensor IR dan ultrasonik, serta kontrol servo motor, sistem ini mampu mengurangi interaksi langsung pengguna dengan tutup tempat sampah, sekaligus memberikan peringatan ketika sampah penuh.

4.2  Saran

  • Gunakan pelindung sensor untuk mencegah kerusakan akibat sampah basah.

  • Implementasi baterai cadangan agar tetap berfungsi saat listrik padam.

  • Dapat dikembangkan dengan fitur pengiriman notifikasi ke ponsel pengguna saat tempat sampah penuh.

 

BAB V
DAFTAR PUSTAKA

Wijayanti, M. (2022). Prototype smart home dengan NodeMCU ESP8266 berbasis IoT. Jurnal Ilmiah Teknik, 1(2), 101–107. https://doi.org/10.56127/juit.v1i2.169

Nizam, M. N., Yuana, H., & Wulansari, Z. (2022). Mikrokontroler dan sensor dalam sistem otomatisasi. Jurnal Teknologi Informasi, 4(1), 45–56.

Banzi, M., & Shiloh, M. (2014). Getting started with Arduino. Maker Media, Inc.

Halfacree, G., & Upton, E. (2019). Raspberry Pi user guide. Wiley Publishing.

Monk, S. (2018). Programming the Raspberry Pi: Getting started with Python. McGraw-Hill Education.

 

 BAB VI
LAMPIRAN

6.1  Dokumentasi


Gambar 6.1. Dokumentasi Hasil

6.2  Video Simulasi

klik di sini


Komentar

Postingan populer dari blog ini

PROTOTYPE SMART HOME DENGAN ESP32 BERBASIS INTERNET OF THINGS

IoT Health Monitoring System for Sports: Real-Time Heart Rate and Temperature Tracking

MONITORING PENETAS TELUR BERBASIS IoT