User Tools

Site Tools


user:munashe001

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
user:munashe001 [2021/09/02 02:21] – [Results] munashe001user:munashe001 [2021/09/02 12:13] (current) munashe001
Line 1: Line 1:
-====== Munashe-Moses Chabvuta (munashe001) - Public Page ====== 
-This public page ''//user:munashe001.txt//'', as stated by it's name,  **can be read by anyone but only you can edit it** (or a superuser)... 
-  * You can introduce yourself, add links to your contributions in this wiki, tell a story or present your other works 
-  * Think about [[wp>http://en.wikipedia.org/wiki/Etiquette_in_technology|netiquette]] ;-) 
-Limitations: 
-  * You shouldn't create any other page in that namespace ''//user:munashe001//'' 
-  * Only a superuser can add a picture 
- 
-Feel free to remove this paragraph (beside the title)...\\ 
-Now, write something! :-D 
- 
  ====== SOIL MOISTURE: AUTOMATIC PLANT WATERING SYSTEM ======  ====== SOIL MOISTURE: AUTOMATIC PLANT WATERING SYSTEM ======
  
- 1. === Introduction ===+ 1. 
 + === Introduction ===
  
-Soil Moisture refers to water contained within the soil and is also regarded as a measure of soil health. Soil moisture is further affected by precipitation, temperature, soil characteristics, only to mention fewAll plants need a specific soil moisture range to optimize operations withinThe majority of plants flourish in soil with a moisture level that ranges between 20% to 60%.  Plant growth is not based on the availability of fertile soils but soil moisture should be a major key element to consider when it comes to plant performance and health. This is due to water content in soil acting as a solvent, by breaking down certain minerals and nutrients for easy absorption by plants.+Soil Moisture refers to the amount of water contained or held within the soils. It is regarded as a measure of soil health and is a key climate variable. Soil moisture is affected by precipitation, temperature, soil characteristics and many other variables which play part in the environmentIt plays an important role in the development of plants and their performance. The availability of fertile soils does not guarantee healthy thriving plants, if the soil moisture present does not meet the requirements of the plant to optimize its daily operations. According to an article by Greenway Biotech, the optimum soil moisture level which the plants need for survival ranges between 20% to 60%.
  
-Soil moisture is major variable in controlling the exchange of heat energy and water between the land surface and the atmosphere through evaporation and transpiration. Furthermore soil moisture plays a crucial role in the development of weather patterns and the formation of precipitation. Soil moisture information can be further used for reservoir management, early warning of droughts, irrigation scheduling and crop yield forecasting.+Soil moisture is major variable in plant functions. It acts as a solvent where nutrients and minerals are broken down for easy absorption by the roots of plant. It provides turgidity which gives the plant true stability and positioning. It further controls the exchange of heat energy and water between the land surface and the atmosphere through evaporation and transpiration. Furthermore soil moisture plays a crucial role in the development of weather patterns and the formation of precipitation. As a result soil moisture information can be taken into consideration for reservoir management, early warning of droughts, irrigation scheduling and crop yield forecasting.
  
 As soil moisture availability declines, the functionality and growth of plants is disrupted resulting in lower crop yields. As the climate changes, moisture availability is becoming more variable. As a result the automatic plant watering system project takes into account the measurement of soil moisture of house plants by a capacitive soil moisture sensor. If the soil moisture values obtained by the sensor are below a certain value the sensor will automatically turn on the water pump which is responsible for delivering the water requirements of the plant until the optimum moisture content is achieved by the soil. As soil moisture availability declines, the functionality and growth of plants is disrupted resulting in lower crop yields. As the climate changes, moisture availability is becoming more variable. As a result the automatic plant watering system project takes into account the measurement of soil moisture of house plants by a capacitive soil moisture sensor. If the soil moisture values obtained by the sensor are below a certain value the sensor will automatically turn on the water pump which is responsible for delivering the water requirements of the plant until the optimum moisture content is achieved by the soil.
Line 23: Line 13:
  === Materials and Methods ===  === Materials and Methods ===
  
-The following materials and components were brought together to drive the project. +The following materials and components were brought together to drive the project. 
 + 
 +• Arduino Uno R3 
 + 
 +• ESP32 Wrover-B  Module
  
 • Capacitive Soil Moisture Sensor  • Capacitive Soil Moisture Sensor 
  
-• 5V water submersible pump +• 5V water submersible pump 
 +  
 +• 2N2222 NPN Transistor 
 +  
 +• Breadboard
  
 • Jump Wires  • Jump Wires 
  
-• ESP32 Wrover-B module 
-  
-• 2N222 NPN Transistor  
  
  
Line 51: Line 46:
  
 • Dimensions 3.86 * 0.905 inches(L x W) • Dimensions 3.86 * 0.905 inches(L x W)
 +
 +Capacitive soil moisture measuring has some advantages over the resistive soil moisture sensor. There is reduced corrosion of the probe and there is an improved reading of the moisture value as opposed to using a resistive moisture sensor.
  
 2.2 == The Arduino Uno Elegoo R3 == 2.2 == The Arduino Uno Elegoo R3 ==
  
-The Arduino Uno micro-controller was considered as the core of the operations of the automatic plant watering system. It is based on the At mega 328, meaning it is a high performance, lower power microcontroller. It has an operating voltage of 5V and the power it draws from any personal computer is enough to sustain the whole automatic plant watering project without additional power supply from example a battery sourceIt provides +The Arduino Uno micro-controller was considered as the core of the operations of the automatic plant watering system after the Esp32 Wrover b module failed to establish an internet connection to the internet of things. It is based on the At mega 328, meaning it is a high performance, lower power microcontroller. It has an operating voltage of 5V and can draw power via the USB connection to the computerCompared to the esp32 the Arduino Uno can not connect to the internet of things as it does not come with an Integrated WIFI and Bluetooth 
  
  
Line 69: Line 66:
  
   Fig1. Shows how current flows from the collector to the emitter. https://www.rs-online.com/designspark/basics-of-2n2222   Fig1. Shows how current flows from the collector to the emitter. https://www.rs-online.com/designspark/basics-of-2n2222
-As a result the base which is the middle leg of the transistor is connected to Pin 32 of the esp32 which will be set to output as the pin mode. The emitter is connected to the ground while the collector is connected to the other leg of the 5V submersible pump.+As a result the base which is the middle leg of the transistor is connected to digital pin 12 of the micro-controller which will be set to output as the pin mode. The emitter is connected to the ground while the collector is connected to the other leg of the 5V submersible pump.
  
  
Line 77: Line 74:
 Below is the the final code which is part of the results. It drives the whole project by sending instructions to Arduino micro controller to execute the performance of the components mentioned in the materials and methods.  Below is the the final code which is part of the results. It drives the whole project by sending instructions to Arduino micro controller to execute the performance of the components mentioned in the materials and methods. 
  
 +<code>
 + const int dryairvalue = 570;// this the air value of the capacitive soil moisture sensor 
  
-<code> const int dryairvalue 570;// this the air value of the capacitive soil moisture sensor + const int watervalue 275;// this is the water value of the soil moisture sensor 
  
-const int watervalue 275;// this is the water value of the soil moisture sensor + int moisturevalue 0; //
  
-int moisturevalue = 0; //+ int moisturepercent= 0;
  
-int moisturepercent0;+ const int Sensor A0;
  
-const int Sensor A0;+ const int pumpPin 12
  
-const int pumpPin = 12;  
  
- + void setup() {
-void setup() {+
  
   Serial.begin(9600); // open serial port, set the baud rate to 9600 bps   Serial.begin(9600); // open serial port, set the baud rate to 9600 bps
      
-pinMode(Sensor, INPUT); //Sets moisture sensor connected to analogue pin A0 to behave as an input while measuring soil moisture+ pinMode(Sensor, INPUT); //Sets moisture sensor connected to analogue pin A0 to behave as an input while measuring soil moisture
  
-pinMode(pumpPin, OUTPUT); // Sets the pumpin connected to digital pin 12 as an Output + pinMode(pumpPin, OUTPUT); // Sets the pumpin connected to digital pin 12 as an Output 
-}+ }
  
-void loop() {+ void loop() {
  
-moisturevalue = analogRead(Sensor);  //Read sensor value from the moisture sensor. The readings will be stored in the soilmoisturevalue variable.+ moisturevalue = analogRead(Sensor);  //Read sensor value from the moisture sensor. The readings will be stored in the soilmoisturevalue variable.
  
-Serial.println(moisturevalue); // prints the value from moisture sensor to the serial monitor+ Serial.println(moisturevalue); // prints the value from moisture sensor to the serial monitor
    
-moisturepercent = map(moisturevalue, dryairvalue, watervalue, 0, 100);// maps the analogue values obtained from the sensor to a percentage+ moisturepercent = map(moisturevalue, dryairvalue, watervalue, 0, 100);// maps the analogue values obtained from the sensor to a percentage
  
-if(moisturepercent >= 100) // if checks for  + if(moisturepercent >= 100) // if checks for  
-+ { 
-Serial.println("Pump is off");+ Serial.println("Pump is off");
   digitalWrite(pumpPin, LOW);// the pump will maintain the off state if the soil moisture is    digitalWrite(pumpPin, LOW);// the pump will maintain the off state if the soil moisture is 
   delay(5000);   delay(5000);
-+ 
-else if(moisturepercent <= 0) + else if(moisturepercent <= 0) 
-{+ {
   Serial.println("Pump is On");   Serial.println("Pump is On");
   digitalWrite(pumpPin, HIGH);   digitalWrite(pumpPin, HIGH);
   delay(5000);   delay(5000);
-+ 
-else if(moisturepercent >0 && moisturepercent < 100) + else if(moisturepercent >0 && moisturepercent < 100) 
-{+ {
   Serial.print(moisturepercent);   Serial.print(moisturepercent);
-  Serial.println("%"); +   Serial.println("%"); 
-}+ }
   delay(250);   delay(250);
-+ 
- +</code>
  
  
user/munashe001.1630542106.txt.gz · Last modified: 2021/09/02 02:21 by munashe001