//REJA
int trig = 6; // membuat varibel trig yang di set ke-pin D6
int echo = 7; // membuat variabel echo yang di set ke-pin D7
long durasi, jarak; // membuat variabel durasi dan jarak
int merah = 4;
int kuning = 3;
int hijau = 2;
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,16,2);
void setup() {
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(merah, OUTPUT);
pinMode(kuning, OUTPUT);
pinMode(hijau, OUTPUT);
lcd.init();
lcd.backlight();
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(8);
digitalWrite(trig, HIGH);
delayMicroseconds(8);
digitalWrite(trig, LOW);
delayMicroseconds(8);
durasi = pulseIn(echo, HIGH); // menerima suara ultrasonic
jarak = (durasi / 2) / 29.2; // mengubah durasi menjadi jarak (cm)
lcd.setCursor(0,1);
lcd.print("Ket:");
lcd.setCursor(0,0);
lcd.print("jarak:");
lcd.print(jarak);
lcd.print("cm");
if(jarak >= 200){
digitalWrite(hijau, HIGH);
digitalWrite(merah, LOW);
digitalWrite(kuning, LOW);
lcd.setCursor(5,1);
lcd.print(" AMAN ");
}else if((jarak > 100)&&(jarak <200)){
digitalWrite(hijau, LOW);
digitalWrite(merah, LOW);
digitalWrite(kuning, HIGH);
lcd.setCursor(5,1);
lcd.print("WASPADA");
}else {
digitalWrite(hijau, LOW);
digitalWrite(merah, HIGH);
digitalWrite(kuning, LOW);
lcd.setCursor(5,1);
lcd.print("BAHAYA");
}
}