#include <DHTesp.h>
DHTesp dhtsensor;
TempAndHumidity values;
const int dhtpin=26;
#define TRIGGER 14
#define ECHO 27
#define led 13
#define green 25
#define blue 12
long distance;
long duration;
int ledvalue;
void setup()
{
Serial.begin(115200);
pinMode(TRIGGER, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(led, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
dhtsensor.setup(dhtpin,DHTesp::DHT22);
delay(1000);
}
void loop()
{
distance = getthevalue();
Serial.println("distance:"+String(distance));
Serial.println("<-------------------->");
values = dhtsensor.getTempAndHumidity();
Serial.println("humidity is:"+String(values.humidity));
Serial.println("temp is:"+String(values.temperature));
delay(100);
if(led==HIGH)
{
ledvalue=1;
}
else
{
ledvalue=0;
}
if(distance<=100)
{
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
}
if(values.humidity<=12)
{
digitalWrite(blue, HIGH);
delay(1000);
digitalWrite(blue, LOW);
}
if(values.temperature<=24)
{
digitalWrite(green,HIGH);
delay(1000);
digitalWrite(green, LOW);
}
}
long int getthevalue()
{
digitalWrite(TRIGGER, LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER, HIGH);
delay(10);
digitalWrite(TRIGGER, LOW);
duration = pulseIn(ECHO,HIGH);
return(duration*0.034/2);
}