#include <LiquidCrystal_I2C.h>
#include <Servo.h>
Servo myservo;
LiquidCrystal_I2C lcd (0x27, 16,2);
#define trig1 12
#define echo1 11
#define trig2 9
#define echo2 10
#define buzzer 7
void setup() {
// put your setup code here, to run once:
myservo.attach(10);
pinMode(trig1, OUTPUT);
pinMode(echo1, INPUT);
pinMode(trig2, OUTPUT);
pinMode(echo2, INPUT);
pinMode(buzzer, OUTPUT);
lcd.init();
lcd.backlight();
lcd.clear();
}
void loop() {
// put your main code here, to run repeatedly:
myservo.write(0);
digitalWrite(trig1, HIGH);
delayMicroseconds(10);
digitalWrite(trig1, LOW);
long durasi = pulseIn(echo1, HIGH);
float jarak = durasi/58.0;
digitalWrite(trig2, HIGH);
delayMicroseconds(10);
digitalWrite(trig2, LOW);
long durasi1 = pulseIn(echo2, HIGH);
float jarak1 = durasi/58.0;
if (jarak <= 30){
myservo.write(180);
}
else if (jarak1 <= 30){
delay(5000);
lcd.setCursor(0,0);
lcd.print("Tempat Sampah");
lcd.setCursor(1,4);
lcd.print("Penuh!");
digitalWrite(buzzer, HIGH);
delay(500);
digitalWrite(buzzer, LOW);
}
delay(2000);
}