Tampilkan postingan dengan label Wokwi. Tampilkan semua postingan
Tampilkan postingan dengan label Wokwi. Tampilkan semua postingan

Rabu, 02 Agustus 2023

Tugas Project Smart Trash Bin



Nama            : Denny Febriyanto
NPM              : 11420392
Mata Kuliah   : Algoritma & Pemrograman Kasus Teknik Elektro
Dosen           : Antonius Irianto Sukowati

Pengertian Smart Trash Bin

        Smart trash bin adalah sebuah jenis tempat sampah yang dilengkapi dengan teknologi modern dan fitur canggih untuk meningkatkan efisiensi dan kecerdasan dalam pengelolaan sampah. Tujuan dari smart trash bin adalah untuk mengurangi jumlah sampah yang terbuang sia-sia dan meningkatkan kemampuan dalam mengelola sampah secara lebih efektif. Berbagai fitur yang dimiliki oleh smart trash bin mencakup sensor untuk mendeteksi pergerakan atau kedekatan tangan, pengenalan objek untuk membedakan jenis sampah, integrasi dengan aplikasi atau platform digital untuk memantau status pengisian tempat sampah secara real-time, kompresi otomatis untuk menampung lebih banyak sampah, notifikasi dan pengelolaan jarak jauh, penggunaan sumber energi terbarukan, koneksi internet, serta penggunaan kecerdasan buatan (AI) untuk menganalisis data dan memprediksi pola pembuangan sampah guna meningkatkan efisiensi pengelolaan. Dengan teknologi ini, smart trash bin dapat membantu mengoptimalkan proses pengelolaan sampah, mengurangi pemborosan sampah, serta memberikan dampak positif bagi lingkungan dan masyarakat.

Contoh Smart Trash Bin Modern

     Smart trash bin memiliki banyak manfaat, termasuk pengelolaan sampah yang lebih efisien, pengurangan pemborosan sampah, menjaga kesehatan lingkungan, meningkatkan kesadaran lingkungan, penghematan energi, dan peningkatan kenyamanan bagi pengguna. Manfaat ini secara keseluruhan mendukung upaya menuju pengelolaan sampah yang lebih cerdas, berkelanjutan, dan ramah lingkungan.

        Untuk itu pada kesempatan kali ini kita akan membuat perancangan prototipe dari smart trash bin yang juga merupakan tugas dari mata kuliah algoritma dan pemrograman kasus teknik elektro.

Perancangan Prototipe Automatic/ Touchless Trash Bin

        Prototipe ini bertujuan untuk membuat tempat sampah pintar yang dapat secara otomatis membuka penutup ketika ada pengguna yang akan membuang sampah. Menggunakan Arduino Uno sebagai otak sistem dan dilengkapi dengan dua buah sensor ultrasonik untuk mendeteksi kedekatan tangan pengguna, satu buah LCD I2C untuk menampilkan informasi status, dan satu buah motor servo untuk menggerakkan penutup tempat sampah.

Komponen yang digunakan adalah sebagai berikut:

1. Arduino Uno 
2. LCD 16x2 I2C
3. 2 Sensor Ultrasonic 
4. Servo Motor
5. Buzzer

Skematik Rangkaian

Desain skematik yang dibuat pada wokwi dapat diliat di link berikut ini:

Skematik Rangkaian dan Program Wokwi

Desain Skematik Rangkaian Protitipe Smart Trash Bin

Program Arduino

Berikut ini adalah program yang digunakan dalam prototipe smart trash bin:

#include <Servo.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int trigPin = 5;
int echoPin = 6;
float duration, cm;
int trigPins = 7;
int echoPins = 8;
float durations, cms;
Servo servoOpen;
const int buzzerPin = 10;
int previousStatus = 0; // Variabel untuk menyimpan status level sampah sebelumnya
void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(trigPins, OUTPUT);
  pinMode(echoPins, INPUT);
  servoOpen.attach(9);
  servoOpen.write(0);
  pinMode(buzzerPin, OUTPUT);
  updateLCD();
}
void loop() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  digitalWrite(trigPins, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPins, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPins, LOW);
  durations = pulseIn(echoPins, HIGH);
  cm = (duration / 2) / 29.1;
  cms = (durations / 2) / 29.1;
  if (cm <= 250) {
    servoOpen.write(90);
    digitalWrite(buzzerPin, LOW); // Matikan buzzer saat tempat sampah terbuka
    delay(500);
  } else {
    servoOpen.write(0);
    // Cek apakah status level sampah berubah dari "Penuh" ke status lainnya
    if (previousStatus == 1) {
      digitalWrite(buzzerPin, HIGH); // Nyalakan buzzer saat status "Penuh"
      delay(1000); // Waktu buzzer menyala (dapat disesuaikan)
    } else {
      digitalWrite(buzzerPin, LOW); // Matikan buzzer saat tempat sampah tertutup dan tidak penuh
    }
    // Simpan status level sampah sekarang sebagai status sebelumnya
    previousStatus = 0;
  }
  updateLCD();
}
void updateLCD() {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Level Sampah :");
  lcd.setCursor(0, 1);
  if (cms >= 210 && cms <= 300) {
    lcd.print("Sedikit");
    previousStatus = 0; // Set status sebelumnya menjadi 0 ("Sedikit")
  } else if (cms <= 209 && cms >= 70) {
    lcd.print("Setengah");
    previousStatus = 0; // Set status sebelumnya menjadi 0 ("Setengah")
  } else if (cms >= 0 && cms <= 69) {
    lcd.print("Penuh");
    previousStatus = 1; // Set status sebelumnya menjadi 1 ("Penuh")
  } else {
    lcd.print("Kosong");
    previousStatus = 0; // Set status sebelumnya menjadi 0 ("Kosong")
  }
}

Penjelasan Program:

       Program smart trash bin berbasis Arduino Uno ini menggunakan sensor ultrasonik untuk mengukur jarak dan mengetahui kondisi tempat sampah. Servo motor digunakan untuk membuka dan menutup tempat sampah, sementara buzzer digunakan untuk memberikan peringatan ketika tempat sampah penuh. Data jarak dari sensor ultrasonik digunakan untuk menentukan kondisi tempat sampah ("Kosong", "Sedikit", "Setengah", atau "Penuh"), yang ditampilkan pada LCD I2C. Program ini juga menggunakan variabel previousStatus untuk mengatur kapan buzzer akan menyala, hanya saat status tempat sampah "Penuh". Dengan demikian, program ini menciptakan smart trash bin yang mampu menampilkan kondisi level sampah pada LCD dan memberikan peringatan ketika tempat sampah penuh.

Flowchart

Berikut diagram alur dari sistem prototipe smart trash bin:

Flowchart Sistem

Penjelasan diagram alur:

        Pada bagian setup, dilakukan inisialisasi dan pengaturan pin untuk sensor ultrasonik, servo motor, buzzer, dan LCD I2C. Selanjutnya, program masuk ke dalam loop() untuk membaca jarak dari sensor ultrasonik pertama. Jika jarak kurang dari atau sama dengan 30 cm (mendeteksi keberadaan subjek yang ingin membuang sampah), maka program akan memulai mekanisme membuka tempat sampah. LCD akan menampilkan pesan "Tempat Sampah Terbuka" dan setelah 5 detik, mekanisme akan menutup kembali tempat sampah. Setelah tempat sampah tertutup, program akan mengukur level sampah menggunakan sensor ultrasonik kedua dan menampilkan tingkatannya ("Kosong", "Sedikit", "Sedang", "Penuh") di LCD I2C. Jika level sampah ditampilkan sebagai "Penuh", buzzer akan menyala sebagai peringatan. Jika level sampah tidak penuh, buzzer akan dimatikan. Proses akan terus berulang dari membaca jarak sensor ultrasonik pertama hingga mengukur dan menampilkan level sampah pada LCD secara berulang.

Selasa, 11 Juli 2023

Project Prototipe Smart Garden Berbasis Mikrokontroler Arduino Uno

Pengertian Smart Garden

    Smart garden menggunakan teknologi dan sensor untuk memantau dan mengendalikan lingkungan pertumbuhan tanaman secara otomatis. Tujuannya adalah menciptakan kondisi optimal bagi pertumbuhan tanaman dan memudahkan perawatan. Sensor suhu, kelembaban, cahaya, dan kelembaban tanah digunakan untuk memantau parameter lingkungan.

Contoh Pemakaian Smart Garden Minimalis

Manfaat Smart Garden

    Dengan adanya smart garden ini sangat membantu kita dalam tanaman yang kita miliki, ada beberapa manfaat yang dapat di peroleh ketika kita menggunakan teknologi smart garden, yaitu:

1. Pemantauan Lingkungan yang Akurat
2. Penghematan Air

3. Pengaturan Suhu dan Pencahayaan yang Optimal
4. Perawatan yang Tepat Waktu
5. Kemudahan dan Kepraktisan

    Dari manfaat diatas penulis memiliki ide bagaimana membuat smart garden dengan bahan dan alat yang sederhana dan dengan mudah ditemukan serta dari segi harga yang lebih terjangkau dibandingkan dengan membeli maket yang sudah jadi seperti yang banyak di jual pada beberapa marketplace.

Project Prototipe Smart Garden

    Dengan project smart garden ini  kita dapet mengetahui keadaan tanaman terutama pada keadaan pencahayaannya, kelembapan dan temperatur lingkungan sekitar, dan tingkat kelembapan pada tanah dari tanaman tersebut. Berikut ini beberapa bahan yang perlu di persiapkan dalam merancang smart garden sebagai berikut:

a. Mikrokontroler Arduino Uno
b. Soil Moisture Sensor
c. Temperature & Humidity Sensor
d. Light Sensor
e. Kabel Jumper

    Setelah semua alat dan bahan terkumpul sebelum merancang alat tersebut baiknya kita membuat rangkaian yang banyak digunakan oleh orang banyak yaitu Wokwi. Wokwi adalah platform simulasi online yang memungkinkan pengguna merancang, mensimulasikan, dan membagikan proyek-proyek elektronik. Pengguna dapat membuat skematik, memprogram mikrokontroler, dan menguji kode mereka dalam simulasi interaktif. Dengan menggunakan Wokwi, pengguna dapat mengembangkan, menguji, dan berbagi proyek elektronik tanpa perlu memiliki perangkat keras fisik.

Skematik Rangkaian Smart Garden

Penggambaran skematik rangkaian dapat dilihat pada file Project Prototipe Smart Garden.

Skematik Rangkaian Smart Garden

Penjelasan Project Smart Garden:

1. Arduino Uno
Sebagai otak pengoperasian dan masukan program smart garden karena memiliki fleksibilitas dan kemampuan dalam mengontrol berbagai komponen elektronik. 

2. Soil Moisture Sensor
Dikarenakan keminiman library dari wokwi sebagai pengganti untuk simulasi rangkaiannya dapat diganti dengan potensiometer dimana nantinya potensio ini akan membaca keberagaman nilai yang diatur tersebut. Memiliki 2 kondisi dimana potensio membaca nilai < 500 maka led merah akan menyala, sebaliknya jika nilai > 500 maka led hijau yang akan menyala. Ini merupakan kondisi Basah dan kering dari kondisi tanah tanaman.

3. Temperature & Humidity Sensor
Pada rangkaian menggunakan DHT22, sensor ini memiliki kemampuan untuk mengukur suhu dan kelembaban sekitar dengan akurasi yang baik. DHT22 menggunakan protokol komunikasi satu kabel dan memberikan output digital yang mudah diolah oleh mikrokontroler seperti arduino. DHT22 telah di berikan keterangan dimana nilai kelembapan dan temperaturenya.

4. Light Sensor
Terdapat 2 bagian led sensor yang dimana led sensor 1 digunakan untuk LDR sensor ketika LDR menangkap matahari maka led putih akan mati, sedangkan led merah akan menyala ketika kelembapan pada 15 - 25 % dan temperature pada 32° C. Dan untuk bagian led sensor 2 digunakan untuk potensiometer.

Program Smart Garden

Berikut merupakan program yang dapat disimulasikan.

// Mengimpor library DHT untuk DHT22
#include <DHT.h>
// Membuat objek DHT pada pin 7 dan tipe sensor DHT22
DHT dht(7, DHT22);
// Mendeklarasikan variabel yang akan dibaca dari sensor
float kelembapan;
float temperatur;
void setup() {
  Serial.begin(9600);
  pinMode(A5, INPUT); // Soil Moisture Sensor
  pinMode(5, OUTPUT); // LED Green (LED Sensor 2)
  pinMode(4, OUTPUT); // LED Red (LED Sensor 2)
  pinMode(6, INPUT);  // LDR Sensor
  pinMode(3, OUTPUT); // LED White (LED Sensor 1)
  pinMode(2, OUTPUT); // LED Red (LED Sensor 1)
  dht.begin();        // menginisialisasi sensor DHT
}
void loop() {
  // Membaca nilai yang merupakan nilai kelembaban tanah
  int moistVal = analogRead(A5);
  // Jika moistVal < 500, maka pin 5 HIGH dan pin 4 LOW. Jika tidak, pin 5 LOW dan pin 4 HIGH
  if (moistVal < 500) {
    digitalWrite(5, HIGH);
    digitalWrite(4, LOW);
  }
  else {
    digitalWrite(5, LOW);
    digitalWrite(4, HIGH);
  }
  // Jika pin 6 HIGH, maka pin 3 HIGH. Jika tidak, pin 3 LOW.
  if (digitalRead(6) == HIGH){
    digitalWrite(3, HIGH);
  }
  else{
  digitalWrite(3, LOW);
  }
  // Jika kelembapan dalam 15 - 25% & temperatur lebih besar atau sama dengan 32°C, maka pin 2 HIGH. Jika tidak, pin 2 LOW.
  kelembapan = dht.readHumidity();  temperatur = dht.readTemperature();
   if(kelembapan >= 15.00 && kelembapan <= 25.00 && temperatur >= 32.00){
    digitalWrite(2, HIGH);
}
  else {
    digitalWrite(2, LOW);
  }
}


Referensi 




Tugas Project Smart Trash Bin Nama               : Denny Febriyanto NPM                  : 11420392 Mata Kuliah    : A lgoritma & Pemrog...