Advertisement
DrAungWinHtut

sensors.ino

Mar 23rd, 2025
401
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<Servo.h>
  2.  
  3. Servo myservo;
  4. int count = 0;
  5. void setup()
  6. {
  7.   myservo.attach(5);
  8.   Serial.begin(9600);
  9.   pinMode(A2,INPUT);
  10.   pinMode(A3,INPUT);
  11.   pinMode(A4,INPUT);
  12.   pinMode(A5,INPUT);
  13.   pinMode(3,INPUT);
  14.   pinMode(7,INPUT);
  15.   pinMode(2,OUTPUT);
  16.  
  17.   pinMode(2,OUTPUT);
  18.   pinMode(4,OUTPUT);
  19.  
  20. }
  21.  
  22. void loop()
  23. {
  24.   int status =  digitalRead(3);
  25.   int light = analogRead(A5);
  26.   int temp = analogRead(A4);
  27.   int soil = analogRead(A3);
  28.   int pot = analogRead(A2);
  29.  
  30.   int degree = map(pot,0,1023,0,180);
  31.   myservo.write(degree);
  32.  
  33.   digitalWrite(2,LOW);
  34.   delayMicroseconds(2);
  35.   digitalWrite(2,HIGH);
  36.   delayMicroseconds(10);
  37.   digitalWrite(2,LOW);
  38.   int time = pulseIn(7,HIGH);
  39.   float distance = time/29/2;
  40.   Serial.print("Distance = ");
  41.   Serial.println(distance);
  42.   alert(distance);
  43.  
  44.   Serial.print("Light = "); Serial.println(light);
  45.   Serial.print("Temp = "); Serial.println(temp);
  46.   Serial.print("Soil = "); Serial.println(soil);
  47.  
  48.   if(status)
  49.   {
  50.     digitalWrite(2,HIGH);
  51.     Serial.println("LED ON");
  52.   }
  53.   else{
  54.     digitalWrite(2,LOW);
  55.     Serial.println("LED OFF");
  56.   }
  57.   if(soil <80)
  58.   {
  59.     digitalWrite(4,HIGH);
  60.   }
  61.   else
  62.   {
  63.     digitalWrite(4,LOW);
  64.   }
  65.  
  66.   delay(100);
  67.  
  68. }
  69.  
  70. void alert(int distance)
  71. {
  72.   int t = distance/20;
  73.     for (int i = 0; i < 50; i++) {  // Generate 50 pulses
  74.       digitalWrite(8, HIGH);  // Turn ON buzzer
  75.       delay(t);  // ON duration (5ms)
  76.       digitalWrite(8, LOW);   // Turn OFF buzzer
  77.       delay(t);  // OFF duration (5ms)
  78.     }
  79.  
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement