//Program Water Level
//By RIzal
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int trig = 12;
int echo = 11;
int buzz = 2;
int LED = 3;
long jarak,durasi;
void setup() {
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(buzz, OUTPUT);
pinMode(LED, OUTPUT);
Serial.begin(9600);
lcd.init();
lcd.clear();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(" WELCOME TO" );
lcd.setCursor(0,1);
lcd.print(" WATER LEVEL ");
delay(2000);
lcd.clear();
}
void loop() {
digitalWrite(trig,HIGH);
delayMicroseconds(5);
digitalWrite(trig, LOW);
delayMicroseconds(5);
durasi = pulseIn(echo,HIGH);
jarak = durasi/58.35;
Serial.print(jarak);
Serial.println("cm");
lcd.setCursor(0,0);
lcd.print(" Jarak = cm");
lcd.setCursor(9,0);
lcd.print(jarak);
delay(270);
if(jarak >= 100){
tone(buzz, 1000,5000);
}
else if(jarak < 100){
tone(buzz,0,5000);
}
if(jarak >= 10){
digitalWrite(LED, HIGH);
}
else if (jarak <10){
digitalWrite(LED, LOW);
}
}