//Nama : Tedi Kresna Irawan
//NIM : 20200130129
//jika suhu kurang dari 30 derajat C maka lampu 1 menyala selama 3 detik setelah itu padam,
// jika suhu lebih dari 37 derajat C maka lampu 1 dan 2 menyala selama 6.5 detik setelah itu padam,
//dan jika sensor LDR bernilai 0 maka lampu 3 menyala selama 11 detik setelah itu padam
//setelah itu mati,
//UNTUK SENSOR SUHU
#include "DHT.h"
#define DHTPIN 3
#define DHTTYPE DHT22 // (AM2302), AM2321
DHT dht(DHTPIN, DHTTYPE);
//UNTUK SENSOR LDR
// defines pins numbers
const int flamePin = 6;
int Flame = HIGH;
int ledPin1 = 13;
int ledPin2 = 4;
int ledpin3 = 8;
// defines variables
long duration;
int distance;
int safetyDistance;
void setup() {
pinMode(13, OUTPUT);
pinMode(4, OUTPUT);
pinMode(8, OUTPUT);
dht.begin();
pinMode(Flame, OUTPUT);
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledpin3,OUTPUT);
Serial.begin(9600);
}
void loop() {
//UNTUK SENSOR SUHU
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
//check if any reads failed and exit early (to try again).
if (temperature <30){
digitalWrite(13, HIGH);
delay(3000);
}
else{
digitalWrite(13, LOW);
}
if (temperature >37){
digitalWrite(13, HIGH);
digitalWrite(4, HIGH);
delay(6500);
}
else{
digitalWrite(13, LOW);
digitalWrite(4, LOW);
}
Serial.print(F("Humidity: "));
Serial.print(humidity);
Serial.print(F("% Temperature: "));
Serial.print(temperature);
Serial.print(F("°C"));
digitalWrite(13, LOW);
digitalWrite(4, LOW);
Flame = digitalRead(flamePin);
if (Flame == HIGH){
digitalWrite(8, HIGH);
delay(11000);
}
else{
digitalWrite(8, LOW);
}
}