LATAR BELAKANG

TUJUAN

Memberikan pemberitahuan tentang jadwal praktik bengkel secara lebih praktis

MANFAAT

ALAT DAN BAHAN

WIRING

FLOWCHART

CODING

#include <RTClib.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

RTC_DS3231 rtc;
LiquidCrystal_I2C lcd(0x27,16,2);

int relay = 0; //mengikuti data sheet GPIO board



void setup() 
{
  
  pinMode(relay,OUTPUT);
  Wire.begin(5, 4);   //Setting wire (5 untuk SDA dan 4 untuk SCL)
  Serial.begin(115200);
  
  lcd.begin();
  lcd.clear();        
  lcd.backlight();

  rtc.begin();
  rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));  //Setting Time Otomatis
  rtc.adjust(DateTime(2023, 11, 23, 10, 50, 01)); // Setting time secara manual

  
}

void loop()
{
  
  
  DateTime now = rtc.now();       //Menampilkan RTC pada variable now
  /**
  jam     = now.hour();
  menit   = now.minute();
  detik   = now.second();
  tanggal = now.day();
  bulan   = now.month();
  tahun   = now.year();
  hari    = daysOfTheWeek[now.dayOfTheWeek()];
  **/
  
  Serial.print("Tanggal : ");
  Serial.print(now.day());        //Menampilkan Tanggal
  Serial.print("/");
  Serial.print(now.month());      //Menampilkan Bulan
  Serial.print("/");
  Serial.print(now.year());       //Menampilkan Tahun
  Serial.print(" ");
  
  Serial.print("Jam : ");
  Serial.print(now.hour());       //Menampilkan Jam
  Serial.print(":");
  Serial.print(now.minute());     //Menampilkan Menit
  Serial.print(":");
  Serial.print(now.second());     //Menampilkan Detik
  Serial.println();
  Serial.println(now.dayOfTheWeek());

//=============================LCD========================
  lcd.setCursor(0,0);
  lcd.print("date:");
  lcd.print(now.day());        //Menampilkan Tanggal
  lcd.print("/");
  lcd.print(now.month());      //Menampilkan Bulan
  lcd.print("/");
  lcd.print(now.year());       //Menampilkan Tahun
  lcd.print(" ");
  lcd.setCursor(0,1);
  lcd.print("hour: ");
  lcd.print(now.hour());       //Menampilkan Jam
  lcd.print(":");
  lcd.print(now.minute());     //Menampilkan Menit
  lcd.print(":");
  lcd.print(now.second());     //Menampilkan Detik
  lcd.print("    ");
  delay(1000);

  //HARI SENIN
 if (now.dayOfTheWeek() == 1) {
  //WAKTU BRIEFING
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU BREAK 
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK BREAK
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU LUNCH
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK LUNCH
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU CLEANING
  if (now.hour() == 15 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 15 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }
  
  //WAKTU PULANG
  if (now.hour() == 16 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 16 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }  
 }


//HARI SELASA DAN KAMIS
 if (now.dayOfTheWeek() == 2  ||  4) {
  //WAKTU BRIEFING
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 
  
  //WAKTU BREAK
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK BREAK
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU LUNCH
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK LUNCH
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU CLEANING
  if (now.hour() == 14 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 14 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }
  
  //WAKTU PULANG
  if (now.hour() == 14 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 14 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }  
 }



//HARI RABU
 if (now.dayOfTheWeek() == 3) {
  //WAKTU BRIEFING
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU BREAK
  if (now.hour() == 9 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK BREAK
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU LUNCH
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 12 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK LUNCH
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU CLEANING
  if (now.hour() == 14 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 14 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }
  
  //WAKTU PULANG
  if (now.hour() == 15 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 15 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  }  
 }



//HARI JUM'AT
 if (now.dayOfTheWeek() == 5) {
  //WAKTU BRIEFING
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 7 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU BREAK
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK BREAK
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 9 && now.minute() == 45 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU LUNCH
  if (now.hour() == 11 && now.minute() == 15 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 11 && now.minute() == 15 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU MASUK LUNCH
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 13 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 

  //WAKTU CLEANING
  if (now.hour() == 15 && now.minute() == 30 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 15 && now.minute() == 30 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 
  
  //WAKTU PULANG
  if (now.hour() == 16 && now.minute() == 00 && now.second() == 05) {
    digitalWrite(relay,HIGH);
  }
  if (now.hour() == 16 && now.minute() == 00 && now.second() == 10) {
    digitalWrite(relay,LOW);
  } 
 }

}

Tags:

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *