SMART TRANS BIN / Tempat Sampah Pintar


  
jadi cara kerja dari tempat sampah otomatis cara nya adalah ketika ada seseorang yang mau buang sampah maka otomatis pintu tempat sampah nya akan terbuka dan tertutup dengan waktu
 tertentu ,waktunya bisa di atur oleh kita sendiri.....setelah itu maka tempat sampah otomatis nya ketka smpah ada d dalam tempah sampah nya akan mengucapkan "TERIMAKASIH TELAH MEMBUANG SAMPAH ,JADILAH DUTA KEBERSIHAN DI LINGKUNGANMU" DAN LAMPU PLIP PLOP OTOMATIS AKAN MENYALA


Diproyek ini saya menggunakan 2 arduino dan 2 ultrasonik dengan sistem masing2 kodingan....

ALAT2
- 2 ARDUINO 
-2 SENSOR ULTRASONIK
-SOUND ROTI /REKAMAN
-2 RELAY MASING RELAY 2 CHANEL
-LAMPU PLIP PLOP
-ADAPTOR 12 VOLT DAN 5 VOLT


INI KODINGAN NYA...PIN NYA LIAT DI KODINGAN YA

(KODINGAN UNTUK PINTU TEMPAT SAMPAH)

/*
Tested with HY-SRF05, HC-SR04
Assuming a room temp of 20 degrees centigrade
The circuit:
  * VVC connection of the sensor attached to +5V
  * GND connection of the sensor attached to ground
  * TRIG connection of the sensor attached to digital pin 12
        * ECHO connection of the sensor attached to digital pin 13
*/
#include <Servo.h> // Memanggil Library Servo


const int TRIG_PIN = 3;
const int ECHO_PIN = 4;
int ledPin         = 13;
int ledPin2          = 12;
Servo servo1; // Servo kita beri nama "servo1"


void setup() {
  // initialize serial communication:
  Serial.begin(9600);

  pinMode(TRIG_PIN,OUTPUT);
  pinMode(ECHO_PIN,INPUT);

  pinMode(ledPin, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  servo1.attach(2);
  servo1.write(2);


}

void loop()
{
   long duration, distanceCm, distanceIn;

  // Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  duration = pulseIn(ECHO_PIN,HIGH);

  // convert the time into a distance
  distanceCm = duration / 29.1 / 2 ;
  distanceIn = duration / 74 / 2;

  if (distanceCm <= 50 ){
    Serial.println("helo");
    digitalWrite(ledPin,HIGH);
    digitalWrite(ledPin2,HIGH);
    servo1.write(120);
      delay(5000);
  }
  if (distanceCm >=50){
    digitalWrite(ledPin,LOW);
    digitalWrite(ledPin2,LOW);
    servo1.write(0);
 
  }
  else {
    Serial.print(distanceIn);
    Serial.print("in, ");
    Serial.print(distanceCm);
    Serial.print("cm");
    Serial.println();
  }
  delay(100);
}








KODINGAN (ULTRASONIK DALAM TEMPAT SAMPAH )

/*
Tested with HY-SRF05, HC-SR04
Assuming a room temp of 20 degrees centigrade
The circuit:
  * VVC connection of the sensor attached to +5V
  * GND connection of the sensor attached to ground
  * TRIG connection of the sensor attached to digital pin 12
        * ECHO connection of the sensor attached to digital pin 13
*/



const int TRIG_PIN = 2;
const int ECHO_PIN = 5;
int ledPin         = 13;
int ledPin2          = 12;
int buzzer           =11;


void setup() {
  // initialize serial communication:
  Serial.begin(9600);

  pinMode(TRIG_PIN,OUTPUT);
  pinMode(ECHO_PIN,INPUT);

  pinMode(ledPin, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(buzzer, OUTPUT);


}

void loop()
{
   long duration, distanceCm, distanceIn;

  // Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  duration = pulseIn(ECHO_PIN,HIGH);

  // convert the time into a distance
  distanceCm = duration / 29.1 / 2 ;
  distanceIn = duration / 74 / 2;

  if (distanceCm <= 25 ){
    Serial.println("helo");
    digitalWrite(ledPin,HIGH);
    digitalWrite(ledPin2,HIGH);
    digitalWrite(buzzer,HIGH);
    delay(11000);
  }
  if (distanceCm >=25){
    digitalWrite(ledPin,LOW);
    digitalWrite(ledPin2,LOW);
   digitalWrite(buzzer,LOW);
 
  }
  else {
    Serial.print(distanceIn);
    Serial.print("in, ");
    Serial.print(distanceCm);
    Serial.print("cm");
    Serial.println();
  }
  delay(150);
}

0 comments: