int LED1 = 18;
int LED2 = 19;
int LED3 = 21;
int Potentiometer = 34;
int PotenValue;
#include <UltrasonicSensor.h>
UltrasonicSensor ultrasonic(26, 27);
#include <DHT.h>
#define DHTPIN 14
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
float temperature;
float humidity;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
pinMode(LED3,OUTPUT);
ultrasonic.setTemperature(22);
dht.begin();
}
void loop() {
PotenValue = analogRead(Potentiometer);
int PotenValueMap = map(PotenValue,0,4095,0,255);
Serial.print("PotenValue Map = ");
Serial.println(PotenValueMap);
int distance = ultrasonic.distanceInCentimeters();
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
humidity = dht.readHumidity();
temperature = dht.readTemperature();
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %");
delay(200);
if(distance >= 2 and distance <=8 and humidity < 30){
analogWrite(LED1,PotenValueMap);
analogWrite(LED2,PotenValueMap);
analogWrite(LED3,PotenValueMap);
}
else if (distance >= 9 and distance <=15 and humidity >= 30){
analogWrite(LED1,PotenValueMap);
analogWrite(LED2,PotenValueMap);
analogWrite(LED3,PotenValueMap);
delay(300);
analogWrite(LED1,0);
analogWrite(LED2,0);
analogWrite(LED3,0);
delay(300);
}
else if (distance > 15){
analogWrite(LED1,PotenValueMap);
delay(200);
analogWrite(LED1,0);
delay(200);
analogWrite(LED2,PotenValueMap);
delay(200);
analogWrite(LED2,0);
delay(200);
analogWrite(LED3,PotenValueMap);
delay(200);
analogWrite(LED3,0);
delay(200);
}
else{
analogWrite(LED1,0);
analogWrite(LED2,0);
analogWrite(LED3,0);
}
// put your main code here, to run repeatedly:
delay(10); // this speeds up the simulation
}