#include "DHT.h"
#include <Servo.h>
#define Trig 11
#define Echo 12
#define DHTPIN 10
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
Servo myservo;
void setup () {
Serial.begin(9600);
//Sensor
Serial.println("Hand Sanitizer");
dht.begin();
//Ultrasonik
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
//Servo
myservo.attach(9);
}
float readDistanceCM() {
digitalWrite(Trig, LOW);
delayMicroseconds(2);
digitalWrite(Trig, HIGH);
delayMicroseconds(10);
digitalWrite(Trig, LOW);
int duration = pulseIn(Echo, HIGH);
return duration * 0.034 / 2;
}
void loop () {
//Ultrasonik
delay(1000);
float distance = readDistanceCM();
Serial.print("Pembacaan Sensor Ultrasonik: ");
Serial.print(readDistanceCM());
Serial.println(" cm");
//Sensor
float temperature = dht.readTemperature();
// Check if any reads failed and exit early (to try again).
if (isnan(temperature)) {
Serial.println("Sensor Gagal Berfungsi");
return;
}
Serial.print(" Temperature: ");
Serial.print(temperature);
Serial.print("°C");
Serial.println();
if (distance <5){
myservo.write(180);
float temperature = dht.readTemperature();
Serial.print("Suhu Anda :");
Serial.print(temperature);
Serial.println(" °C");
if (temperature >= 37){
Serial.println("Anda Demam");
}
else{
Serial.println("Suhu Anda Normal");
}
}
else{
Serial.print("Letakkan Tangan Anda Di Bawah");
myservo.write(0);
}
}