#include <DHTesp.h>
DHTesp dhtsensor;
TempAndHumidity data;
const int DHT_PIN =16;
int trig = 27;
int echo = 26;
int distance;
int buzz = 22;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(trig,OUTPUT);
pinMode(echo,INPUT);
dhtsensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(12, OUTPUT);
pinMode(17, OUTPUT);
pinMode(18, OUTPUT);
pinMode(32, OUTPUT);
pinMode(33,OUTPUT);
pinMode(buzz, OUTPUT);
}
void loop() {
data = dhtsensor.getTempAndHumidity();
Serial.println("Humi: " + String(data.humidity,1));
Serial.println("Temp: " + String(data.temperature,2));
Serial.println("------------");
delay(1000);
digitalWrite(trig, HIGH);
delay(100);
digitalWrite(trig, LOW);
int reading = pulseIn(echo,HIGH);
distance = (reading*0.034/2)+1;
Serial.println("------------");
Serial.println(distance);
if(distance >= 300)
{
digitalWrite(12, HIGH);
digitalWrite(32, LOW);
digitalWrite(33, LOW);
}
else if(distance >= 200)
{
digitalWrite(33, HIGH);
digitalWrite(12, LOW);
digitalWrite(32, LOW);
}
else
{
digitalWrite(33, LOW);
digitalWrite(12, LOW);
digitalWrite(32, HIGH);
}
if(data.humidity < 50)
{
digitalWrite(17, HIGH);
digitalWrite(buzz, HIGH);
tone(buzz,10000,1000);
}
else
{
digitalWrite(17, LOW);
}
// put your main code here, to run repeatedly:
// this speeds up the simulation
}