soil moisture sensor interfaced with Arduino, Node MCU, ESP32
sending Message Alert using GSM module
Whenever we go out of town for few days, we always used to worry about our plants as they need water on regular basis. So here we are making Automatic Plant watering Irrigation System using micro-controller, which automatically provides water to your plants and keep you updated by sending message to your cell phone using GSM.
In This Plant Watering System, Soil Moisture Sensor checks the moisture level in the soil and if moisture level is low then Arduino switches On a water pump to provide water to the plant. Water pump gets automatically off when system finds enough moisture in the soil. Whenever system switched On or off the pump, a message is sent to the user via GSM module, updating the status of water pump and soil moisture. This system is very useful in Farms, gardens, home etc. This system is completely automated and there is no need for any human intervention. You can also build IoT based Soil Moisture Monitoring Device.
Here we have used TTL SIM800 GSM module. The SIM800 is a complete Quad-band GSM/GPRS Module which can be embedded easily by customer or hobbyist. SIM900 GSM Module provides an industry-standard interface; the SIM800 delivers GSM/GPRS 850/900/1800/1900MHz performance for voice, SMS, Data with low power consumption. The design of this SIM800 GSM Module is slim and compact.
In this Plant Irrigation System, we have used a Homemade Soil Moisture Sensor Probe to sense the soil moisture level. To make probe, we have cut and etched a Copper clad Board according to the Picture shown below. One side of the probe is directly connected to Vcc and other probe terminal goes to the base of BC547 transistor. A potentiometer is connected to the base of the transistor to adjust the sensitivity of the sensor.
Arduino is used for controlling whole the process of this Automatic Plant Watering System. The output of soil sensor circuit is directly connected to digital pin D7 of Arduino. A LED is used at the sensor circuit, this LED’s ON state indicates the presence of moisture in the soil and OFF state indicates the absense of moisture in the soil.
GSM module is used for sending SMS to the user. Here we have used TTL SIM800 GSM module, which gives and takes TTL logic directly (user may use any GSM module). A LM317 Voltage regulator is used to power the SIM800 GSM module. LM317 is very sensitive to voltage rating and it is recommended to read its datasheet before use. Its operating voltage rating is 3.8v to 4.2v (please prefer 3.8v to operate it). Below is the Circuit Diagram of Power Supply given to the TTL sim800 GSM Module:
A 12V Relay is used to control the 220VAC small water pump. The relay is driven by a BC547 Transistor which is further connected to digital pin 11 of Arduino.
Working of this Automatic Plant Irrigation System is quite simple. First of all, it is a Completely Automated System and there is no need of manpower to control the system.
Arduino is used for controlling the whole process and GSM module is used for sending alert messages to user on his Cellphone.
If moisture is present in soil then there is conduction between the two probes of Soil Moisture sensor and due to this conduction, transistor Q2 remains in triggered/on state and Arduino Pin D7 remains Low. When Arduino reads LOW signal at D7, then it sends SMS to user about “Soil Moisture is Normal. Motor turned OFF” and water pump remains in Off state.