int rainPin = A0; int greenLED = 6; int redLED = 7; // you can adjust the threshold value int thresholdValue = 800; void setup(){ pinMode(rainPin, INPUT); pinMode(greenLED, OUTPUT); pinMode(redLED, OUTPUT); digitalWrite(greenLED, LOW); digitalWrite(redLED, LOW); Serial.begin(9600); } void loop() { // read the input on analog pin 0: int sensorValue = analogRead(rainPin); Serial.print(sensorValue); if(sensorValue < thresholdValue){ Serial.println(" - Doesn't need watering"); digitalWrite(redLED, LOW); digitalWrite(greenLED, HIGH); } else { Serial.println(" - Time to water your plant"); digitalWrite(redLED, HIGH); digitalWrite(greenLED, LOW); } delay(500); }
int WATERPUMP = 13; //motor pump connected to pin 13 int sensor = 8; //sensor digital pin vonnected to pin 8 int val; //This variable stores the value received from Soil moisture sensor. void setup() { pinMode(13,OUTPUT); //Set pin 13 as OUTPUT pin pinMode(8,INPUT); //Set pin 8 as input pin, to receive data from Soil moisture sensor. //Initialize serial and wait for port to open: Serial.begin(9600); // opens serial port, sets data rate to 9600 bps while (! Serial);// wait for serial port to connect. Needed for native USB Serial.println("Speed 0 to 255"); } void loop() { if (Serial.available()) //loop to operate motor { int speed = Serial.parseInt(); // to read the number entered as text in the Serial Monitor if (speed >= 0 && speed <= 255) { analogWrite(WATERPUMP, speed);// tuns on the motor at specified speed } } val = digitalRead(8); //Read data from soil moisture sensor if(val == LOW) { digitalWrite(13,LOW); //if soil moisture sensor provides LOW value send LOW value to motor pump and motor pump goes off } else { digitalWrite(13,HIGH); //if soil moisture sensor provides HIGH value send HIGH value to motor pump and motor pump get on } delay(400); //Wait for few second and then continue the loop. }
int sensor_pin =A0; //Soil Sensor input at Analog PIN A0 int output_value; void setup() // put your setup code here, to run once { pinMode(4,OUTPUT); Serial.begin(9600); Serial.println(“Reading From the Sensor…”); delay(2000); }borderbr //put your main code here,to run repeatedly: void loop() { output_value= analogRead(sensor_pin); output_value=map(output_value,500,10,0,100); Serial.print(“Moisture :”); Serial.print(output_value) ; Serial.println(“%”); if(output_value<0) { digitalWrite(4,HIGH); } else { digitalWrite(4,LOW); } delay(1000); }
Watering plants with relay
Smart watering system
Article collection on agriculture robotics