/* Hello Wokwi! */
#include <LiquidCrystal_I2C.h>
#define buzzer 7
LiquidCrystal_I2C lcd(0x27, 20, 4);
const int triggerPin = 11;
const int echoPin = 12;
int frequensi = 988;
int tinggiMax = 200; //200cm atau 2m
void setup() {
lcd.begin(16,2);
pinMode(triggerPin, OUTPUT);
pinMode(echoPin, INPUT);
lcd.setCursor(0, 0);
lcd.print("Water Level");
lcd.setCursor(0, 1);
lcd.print("Kelompok 3");
delay(5000);
}
void loop() {
lcd.clear();
long duration, jos;
int tinggiAir;
digitalWrite(triggerPin, LOW);
delayMicroseconds(8);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
duration = pulseIn(echoPin, HIGH);
jos = (duration / 2) / 29.1;
tinggiAir = tinggiMax - jos;
lcd.setCursor(0, 0);
lcd.print("Ketinggian Air");
lcd.setCursor(0, 1);
lcd.print("= ");
lcd.print(tinggiAir);
lcd.print("cm");
if(tinggiAir > 170) {
tone(buzzer,frequensi);
delay(300);
noTone(buzzer);
delay(300);
}
else if (tinggiAir < 170){
noTone(buzzer);
}
delay(500);
}