#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <NewPing.h>
#define TRIG_PIN 3
#define ECHO_PIN 4
#define MAX_DISTANCE 200
#define LED1 5
#define LED2 6
#define LED3 7
LiquidCrystal_I2C lcd (0x27, 16, 2);
NewPing sonar(TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
void setup() {
Serial.begin(9600);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
lcd.begin(16,2);
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Kelompok 3");
delay(3000);
}
void loop() {
int distance = sonar.ping_cm();
Serial.print("Jarak: ");
Serial.print(distance);
Serial.println(" cm");
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Jarak: ");
lcd.print(distance);
lcd.print(" cm");
if (distance <= 50 && distance > 30) {
digitalWrite(LED1, HIGH);
digitalWrite(LED2, HIGH);
digitalWrite(LED3, HIGH);
} else if (distance <= 30 && distance > 10) {
digitalWrite(LED1, LOW);
digitalWrite(LED2, HIGH);
digitalWrite(LED3, HIGH);
} else if (distance <= 10) {
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
digitalWrite(LED3, HIGH);
} else {
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
digitalWrite(LED3, LOW);
}
delay(1000);
}