const int trigPin = 5;
const int echoPin = 18;
#define SOUND_SPEED 0.034
#define CM_TO_INCH 0.393701
#define merah 13
#define kuning 12
#define hijau 14
#define biru 27
long duration;
float distanceCm;
float distanceInch;
void setup() {
Serial.begin(115200);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(merah, OUTPUT);
pinMode(kuning, OUTPUT);
pinMode(hijau, OUTPUT);
pinMode(biru, OUTPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
digitalWrite(merah, LOW);
digitalWrite(kuning, LOW);
digitalWrite(hijau, LOW);
digitalWrite(biru, LOW);
duration = pulseIn(echoPin, HIGH);
distanceCm = duration * SOUND_SPEED/2;
distanceInch = distanceCm * CM_TO_INCH;
if(distanceCm > 180){
digitalWrite(biru, HIGH);
Serial.print("Jarak (cm): ");
Serial.print(distanceCm);
Serial.println(" => Aman bang");
}
if(distanceCm > 150 && distanceCm < 180){
digitalWrite(hijau, HIGH);
Serial.print("Jarak (cm): ");
Serial.print(distanceCm);
Serial.println(" => Siaga 1 bang !");
}
if(distanceCm > 120 && distanceCm < 150){
digitalWrite(kuning, HIGH);
Serial.print("Jarak (cm): ");
Serial.print(distanceCm);
Serial.println(" => Banjir Bang !!");
}
if(distanceCm < 120){
digitalWrite(merah, HIGH);
Serial.print("Jarak (cm): ");
Serial.print(distanceCm);
Serial.println(" => Tsunami Njirr !!!");
}
delay(500);
}