#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
float cm;
const int relay = 4;
long ReadUltrasonicTime(int pintrigger,int pinecho){
pinMode(pintrigger, OUTPUT);
pinMode(pinecho, INPUT);
digitalWrite(pintrigger, LOW); //memastikan ultrasonik mati
delayMicroseconds(2);
digitalWrite(pintrigger, HIGH);//menyalakan ultrasonik
delayMicroseconds(10);
digitalWrite(pintrigger, LOW);//mematikan ultrasonik
return pulseIn(pinecho, HIGH);//menghitung waktu ultrasonik untuk diterima oleh sensor
}
void setup() {
Serial.begin(20000);
lcd.init();
lcd.backlight();
lcd.setCursor(4,0);
lcd.print("BASARDANA");
delay(1600);
lcd.clear();
pinMode(relay, OUTPUT);
}
void loop() {
cm = 0.03420/2 * ReadUltrasonicTime(2, 3);
if(cm <= 50){
digitalWrite(relay, LOW);
}
else{
digitalWrite(relay, HIGH);
}
lcd.clear();
delay(1000);
}