#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define a_kanan 15 //echo pin 15
#define b_kanan 2 //Trigger pin 2
#define a_kiri 5 //echo pin 5
#define b_kiri 18 //Trigger pin 18
LiquidCrystal_I2C lcd(0x27,16,2);
const int buzzer = 23;
const int ledkare = 32;
const int ledkaye = 33;
const int ledkagr = 25;
const int ledkire = 26;
const int ledkiye = 27;
const int ledkigr = 14;
long data_a=0,data_b=0;
int jumlah1=0, jumlah2=0;
int hasil = 0;
void ultra_read(int pin_t,int pin_e,long &ultra_time){
long time;
pinMode(pin_t,OUTPUT);
pinMode(pin_e,INPUT);
digitalWrite(pin_t,LOW);
delayMicroseconds(2);
digitalWrite(pin_t,HIGH);
delayMicroseconds(10);
time=pulseIn (pin_e,HIGH);
ultra_time = time / 29 / 2;
}
void setup(){
pinMode(ledkare, OUTPUT);
pinMode(ledkaye, OUTPUT);
pinMode(ledkagr, OUTPUT);
pinMode(ledkire, OUTPUT);
pinMode(ledkiye, OUTPUT);
pinMode(ledkigr, OUTPUT);
Serial.begin(9600);
pinMode(buzzer, OUTPUT);
lcd.init();
lcd.backlight();
lcd.setCursor(1, 0);
lcd.print("SISTEM PINTAR");
lcd.setCursor(3, 1);
lcd.print("KELOMPOK 7");
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("JUMLAH: ");
lcd.setCursor(11, 0);
lcd.print("ORANG");
lcd.setCursor(1,1);
lcd.print(" Kondisi Aman ");
digitalWrite(buzzer, HIGH);
delay(100);
digitalWrite(buzzer, LOW);
delay(100);
digitalWrite(buzzer, HIGH);
delay(100);
digitalWrite(buzzer, LOW);
}
void loop(){
ultra_read(b_kanan,a_kanan,data_a);delay(50);
ultra_read(b_kiri,a_kiri,data_b);delay(50);
Serial.print("SENSOR MASUK:");Serial.println(data_a);
Serial.print("SENSOR KELUAR:");Serial.println(data_b);
Serial.print("JUMLAH TOTAL:");Serial.println(hasil);
if(data_a<8)
{
hasil = hasil-1 ;
}
if(data_b<8)
{
hasil = hasil+1 ;
if(hasil <=5)
{
digitalWrite(ledkagr, HIGH);
digitalWrite(ledkigr, HIGH);
delay(200);
digitalWrite(ledkagr, LOW);
digitalWrite(ledkigr, LOW);
}
else if(hasil<=10)
{
digitalWrite(ledkaye, HIGH);
digitalWrite(ledkiye, HIGH);
delay(200);
digitalWrite(ledkaye, LOW);
digitalWrite(ledkiye, LOW);
}
else if(hasil<=15)
{
digitalWrite(ledkare, HIGH);
digitalWrite(ledkire, HIGH);
delay(200);
digitalWrite(ledkare, LOW);
digitalWrite(ledkire, LOW);
}
digitalWrite(buzzer, HIGH);
delay(100);
digitalWrite(buzzer, LOW);
}
lcd.setCursor(8, 0);
lcd.print(hasil);
lcd.print(" ");
if(hasil>15){
lcd.setCursor(0,0);
lcd.print("JUMLAH: ");
lcd.setCursor(8, 0);
lcd.print(hasil);
lcd.print(" ");
lcd.setCursor(11,0);
lcd.print("ORANG");
lcd.setCursor(1,1);
lcd.print("RUANGAN PENUH");
digitalWrite(buzzer,HIGH);
delay(200);
digitalWrite(buzzer,LOW);
}
else{
lcd.setCursor(0, 0);
lcd.print("JUMLAH: ");
lcd.setCursor(11, 0);
lcd.print("ORANG");
lcd.setCursor(1,1);
lcd.print(" KONDISI AMAN ");
digitalWrite(buzzer,LOW);
}
}