#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>

#define ONE_WIRE_BUS_1 2 // Pin digital 2 untuk sensor DS18B20 pertama
#define fan A1           // deklarasi pin led pada PIN A1

OneWire oneWire1(ONE_WIRE_BUS_1);
DallasTemperature sensors1(&oneWire1);

// Alamat 0x20 dan 16 kolom x 2 baris
LiquidCrystal_I2C lcd(0x20, 16, 2);  

void setup() {
  lcd.init();
  lcd.backlight();

  // Cetak "Ready" pada layar LCD saat dihidupkan
  lcd.setCursor(0, 0);
  lcd.print("-----Ready-----");
  delay(1000);
  lcd.setCursor(0, 0);
  lcd.print("    Temp MCC    ");

  // Inisialisasi sensor suhu DS18B20
  sensors1.begin();
  //Menginisialisasi fan sebagai Output
  pinMode(fan, OUTPUT); 
}


void loop() {
  // Meminta suhu dari kedua sensor
  sensors1.requestTemperatures();

  // Membaca suhu sensor
  float temperatureC_1 = sensors1.getTempCByIndex(0);

  // Tampilkan suhu di layar LCD
  lcd.setCursor(0, 1);
  lcd.print(" Temp : ");
  lcd.print(temperatureC_1);
  lcd.print(" C");

  delay(1000); 

//instruksi untuk menyaakan FAN saat suhu lebih dari 32 derajat
  if (temperatureC_1 > 32.0) {       
  digitalWrite(fan, HIGH);
  }
//instruksi untuk mematikan FAN saat suhu kurang dari 30 derajat
  else if (temperatureC_1 < 30.0){   
  digitalWrite(fan, LOW);
  }
}
NOCOMNCVCCGNDINLED1PWRRelay Module