COMBINATION OF TEMPERATURE ,PIR AND ULTRASONIC SENSORS

 





CODE:-



int sensorPin = A0;
//int sensor = 2;              // the pin that the sensor is atteched to
int val = 0;
#define echoPin 8 // attach pin D2 Arduino to pin Echo of HC-SR04
#define trigPin 3 //attach pin D3 Arduino to pin Trig of HC-SR04

// defines variables
long duration; // variable for the duration of sound wave travel
int distance;


void setup(){
  pinMode(sensorPin,INPUT);//temp
  pinMode (2,INPUT);//pir
  pinMode(trigPin, OUTPUT); // Sets the trigPin as an OUTPUT
  pinMode(echoPin, INPUT);
   pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  Serial.begin(9600); 
}

void loop() {
  
    int adcData = analogRead(sensorPin);  
float voltage = (adcData)*(5.0/1024)*1000;
float temperatureC = (voltage - 500)/10 ;  //converting from 10 mv per degree with 500 mV offset
     //to degrees ((voltage - 500mV)/10)
Serial.print("adcData="); 
Serial.println(adcData);
Serial.print(temperatureC); 
Serial.println(" degrees C");
  // now convert to Fahrenheit
float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;
Serial.print(temperatureF); 
Serial.println(" degrees F");
 
  
     val = digitalRead(2);   // read sensor value
  Serial.print("motion =");
  Serial.println(val);
 
  
    
   // Clears the trigPin condition
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Sets the trigPin HIGH (ACTIVE) for 10 microseconds
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  // Reads the echoPin, returns the sound wave travel time in microseconds
  duration = pulseIn(echoPin, HIGH);
  // Calculating the distance
  distance = (duration * 0.0343) / 2; // Speed of sound wave divided by 2 (go and back)
  // Displays the distance on the Serial Monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");
  
  if(val==1){
    if( temperatureC>=10&& temperatureC<=30){
      if(distance>=10&&distance<=100){
        digitalWrite(4,HIGH);
        digitalWrite(5,LOW);
        digitalWrite(6,LOW);
      }
    }
  
  
  else if( temperatureC>30&& temperatureC<=60){
      if(distance>100&&distance<=200){
        digitalWrite(4,LOW);
        digitalWrite(5,HIGH);
        digitalWrite(6,LOW);
      }
    }
  

 else if( temperatureC>60&& temperatureC<=80){
      if(distance>200&&distance<=250){
        digitalWrite(4,LOW);
        digitalWrite(5,LOW);
        digitalWrite(6,HIGH);
      }
    }
  
  
  
  
  
  
  
  
  }delay(500);}
    
    








Comments

Popular posts from this blog

networks and security cia 1

emf