#include "DHTesp.h"
#define PIN_TRIG 32
#define PIN_ECHO 34
#define PIN_BUZZER 33
const int DHT_PIN = 15;
DHTesp dhtSensor;
/**
Rares
Luna: 11 Ziua:27
Dragos
Luna: 7 Ziua: 8
f = mean(z1,z2)*10 Hz
d = (l1+l2)/4 s
**/
const int z1=27, z2=8, l1=11, l2=7;
const float f = ((z1+z2)*10)/2, d = (l1+l2)/4;
void setup() {
Serial.begin(115200);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
tone(PIN_BUZZER, f, d);
}
void Verificare(int distance, int temp, int humid) {
if (((distance/58)<69) && (temp > 40) && (humid > 80)) {
digitalWrite(PIN_BUZZER, HIGH);
}
else {
digitalWrite(PIN_BUZZER, LOW);
}
}
void loop() {
// Start a new measurement:
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
// Read the result:
int duration = pulseIn(PIN_ECHO, HIGH);
Serial.print("Distance in CM: ");
Serial.println(duration / 58);
//For Temp and Humidity
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
Serial.println("---");
Verificare(duration, data.temperature, data.humidity);
delay(100);
}