Report

Download as pdf or txt
Download as pdf or txt
You are on page 1of 32

SL.

NO INDEX

1 Abstract

2 Introduction

3 Methodology

4 Literature survey

5 Objective of the project

6 Block diagram

7 Flow chart

8 Schematic view of block diagram

9 Hardware Components

10 Programming Software

11 Programming languages

12 Purpose of Front end and Back end

13 Setting up the IOT platform server

14 Testing and Result

15 Advantages and disadvantages

16 Application

17 Future Enhancement

18 Conclusion

19 Reference

1
ABSTRACT:

In this project, an idea is put forward to automate the irrigation system based on IoT
applications to increase crop yield. If less land is available , then multiple crops are a good
idea to improve crop yields in less time. The details about the different crops are added to the
server using web backend, which is designed using Python and Django, the pumping motor
turns ON and OFF based upon the moisture content of the soil and comparing the same with
the database stored in the server for the crops. The status of the pump, soil moisture and
temperature can be viewed in the IOT dashboard by the farmers by logging in to it using the
unique login credentials provided. The farmers can easily add as many end devices as
possible to the IOT dashboard by adding the details of crop in the server using web
application. With this, the human presence can be decreased, and an accurate amount of water
supply can be provided to the field.

INTRODUCTION:

There are various stages in agriculture right from the crop selection to harvesting in which
irrigation is the most important step which shows more impact on the yield of the crop. There
are many irrigation systems including the traditional system in which a farmer supplies the
water through pipes or through canals. In methods, the eventual supply of the water is not
possible. The water supplied should reach the root zone. Surface drip irrigation is one such
method which is 100% efficient in making the water reach till root zone.Although we
selected the correct irrigation method when to supply water to crop is also a very important
thing to consider. The oversupply of water to the crop may lead to unwanted situations.
Therefore, the crop should be watered only when it is needed. Hence smart technology is
needed to know when the crop needs the water. All these technologies are aimed to improve
the yield of the crop. In that direction, the multi-crop system is most efficient. In a multi-crop
system, farmers plant different types of crops that suit the soil to increase the crop yield and
to make sure that the minerals of the soil are eventually supplied. In this project, we are
proposing an automated irrigation system using IoT in the multi-crop system. In the
agricultural domain, people need smart farming technologies to reach all specifications where
smart farming methods are used in several ways by using IOT technologies. Proposed a low

2
cost and efficient wireless sensor network technique to acquire the soil moisture and
temperature from various locations of farm and as per the need of crop controller take the
decision to make irrigation ON or OFF.
Agriculture is the major source of income for the largest population in India and is a major
contributor to the Indian economy. However, technological involvement and its usability have
to be grown and cultivated for the agro sector in India. Although few initiatives have also
been taken by the Indian Government for providing online and mobile messaging services to
farmers related to agricultural queries and agro vendor’s information to farmers. Based on the
survey it is observed that agriculture contributes 27% to GDP, and Provides employment to
70% of the Indian population .

IoT is changing the agriculture domain and empowering farmers to fight with the huge
difficulties they face. Agriculture must overcome expanding water deficiencies, restricted
availability of lands, while meeting the expanding consumption needs of a world population.
New innovative IoT applications are addressing these issues and increasing the quality,
quantity, sustainability and cost effectiveness of agricultural production. Agriculture is the
backbone of the Indian Economy. In today’s world, as we see rapid growth in global
population, agriculture becomes more important to meet the needs of the human race.
However, agriculture requires irrigation and with every year we have more water
consumption than rainfall, it becomes critical for growers to find ways to conserve water
while still achieving the highest yield. But in the present era, the farmers have been using
irrigation techniques through manual control in which they irrigate the land at the regular
interval. According to statistics, agriculture uses 85% of available freshwater resources
worldwide, and this percentage will continue to be dominant in water consumption because
of population growth and increased food demand. There is an urgent need to create strategies
based on science and technology for sustainable use of water, including technical, agronomic,
managerial and institutional improvements. Agricultural irrigation based on Internet

3
technology is based on crop water requirement rules. By using Internet technology and sensor
network technology we can control water wastage and to maximize the scientific
technologies in irrigation methods. Hence it can greatly improve the utilization of water and
can increase water productivity. The Internet of Things (IoT) is a technology where a mobile
device can be used to monitor the function of a device. The Internet of Things (IoT) is
concerned with interconnecting communicating objects that are installed at different locations
that are possibly distant from each other. Internet of Things (IoT) is a type of network
technology, which senses the information from different sensors and makes anything to join
the Internet to exchange information. It can also be used to modify the status of the device.
The central processing unit will also include a communication device to receive data from the
sensors and to be relayed to the user’s device. This will be done using a higher
communication device such as a Wi-Fi module. The data processed by the central module is
converted to meaningful data and relayed to the user. The user can view the data with the help
of a handheld device such as a mobile phone or a tablet. Nowadays water scarcity is a big
concern for farming. This project helps the farmers to irrigate the farmland in an efficient
manner with an automated irrigation system based on soil moisture. The proposed system has
been designed to overcome the unnecessary water flow into the agricultural lands.
Temperature, moisture and humidity readings are continuously monitored by using
temperature, moisture and humidity sensors and send these values to the assigned IP address.
Android application continuously collects the data from that assigned IP address. Once the
soil moisture values are exceeded the particular limit then the relay, which is connected to the
arduino microcontroller controls the motor. The android application is a simple menu driven
application, with 4 options. This includes motor status, moisture, temperature and humidity
values. The motor status indicates the current status of the pump.

METHODOLOGY:

The automatic irrigation system was designed to continuously sense the moisture and
temperature level of the soil. The system responds appropriately by watering the soil with the
exact amount of water required and then shuts down the water supply when the required
amount of soil moisture is achieved. The reference amount of soil moisture is already fed to
the microcontroller beforehand. This reference soil moisture content was made to be
adjustable for the three most common soil types (sandy, loamy and clayey soils).The moisture
sensors and temperature sensors were designed using probes made from corrosion resistant
material which can be stuck into soil samples. Voltage levels corresponding to the wet and
dry status of the soil sample were computed by measuring the resistance between the
moisture probes and matching them to output voltage of a comparator circuit.

4
LITERATURE SURVEY :

1. “Smart Drip Irrigation System using Raspberry pi and Arduino.”

Published: International Conference on Computing, Communication and Automation


(ICCCA2015)

Authors: Nikhil Agrawal, Engineering Manager, Siemens, Noida and Smita Singhal, ASET,
Amity University, Noida.

From the above paper an idea of implementing a smart drip irrigation system to water plants
with the use of devices like microcontrollers and pumps. while the Python programming
language is used for automation purposes.

2. “An Automated Irrigation System for Smart Agriculture Using the Internet of
Things.”

Published: 2018 15th International Conference on Control, Automation, Robotics and Vision
(ICARCV) Singapore, November 18-21, 2018

Authors: V. Ramachandran, R. Ramalakshmi, and Seshadhri Srinivasan. Kalasalingam


Academy of Research and Education (Deemed to be University).

The above paper gives a brief view A smart irrigation system that uses IoT and cloud
connectivity to aggregate and store information, an optimization model to compute the
optimal irrigation parameters, and final control implemented using solenoid valves and the

5
design aspects of IoT hardware, software, and their integration along with networking as well
as cloud connectivity

3. " Remote sensing and controlling of Big Data, IoT and Data Science (BID).

Authors : S. Pallavi , Jayashree D. Mallapur


Department of Electronics and Communications Engineering, Basaveshwar Engineering
College,Bagalkot, INDIA.

This study proposes a remote sensing of agriculture parameters and control systems to
greenhouse agriculture. The plan is to control CO 2 , soil moisture, temperature, and light,
based on the soil moisture the controlling action is accomplished for the greenhouse
windows/doors based on crops once a quarter complete round the year. The objective is to
increase the yield and to provide organic farming. The result shows the remote control of
CO2, soil moisture,temperature, and light for the greenhouse.

4. "IOT agriculture system based on LoRaWAN"

Authors: Danco Davcev;Kosta Mitreski;Stefan Trajkovic;Viktor Nikolovski;Nikola Koteli.

Published : 2018 14th IEEE International Workshop on Factory Communication


Systems(WFCS)

This system is based on the LoRaWAN network for long range and low power consumption
data transmission from the sensor nodes to the cloud services. Our system of cloud services is
highly scalable and utilizes data streams for analytics purposes.

OBJECTIVE OF THE PROJECT:

The main objective is to apply the system for improvement of health of the soil and hence the
plant via multiple sensors . And to provide an automatic irrigation system thereby saving
time, money & power of the farmer. The traditional farm-land irrigation techniques require
manual intervention. With the automated technology of irrigation the human intervention can
be minimized.

In the last few years, remotely monitored embedded systems for irrigation purposes have
become a new necessity for farmers to save his energy, time and money. This paper is
proposing a complete agricultural solution for the farmer based on Wireless Sensor Networks
and GPRS technology.
Keywords: microcontroller, temperature sensor,humidity sensor, soil impurity sensor, load
sensor, sprinklers, wireless sensor network (WSN)

6
BLOCK DIAGRAM:

Figure. 1

The figure 1 shows the physical construction of hardware. Controller process is the data obtained by
the temperature sensors and soil moisture sensors and compares it with the bacon selected crop details
and turns on the pump if the master content of the soil is less than the requirement. Here the
microcontroller has the inbuilt Wi-Fi module and is connected to the mobile application through two
way wireless communication i.e, Wi-Fi to monitor the agriculture field and select the crop in the
backend. The LCD is used to display the name of the project temperature, humidity and soil moisture
in real time of the field.

7
Figure 2

The figure 2 shows the relation between the host that is the end user and the web application.
The server reads and writes the data from the host and web application where the host writes
the crop name and parameters required. This data is stored in the server. The server processes
the data and sends it to the web application. Using a web application we can select the crop to
be grown. There can be n number of end point users.

Design of a system explains temperature, humidity and soil moisture values


using flow charts.
A FLOW CHART
A flowchart is a graphic representation of a logic sequence, work or manufacturing process,
organization chart, or similar formalized structure. The flowchart is a means to visually
present the flow of data through an information processing system.

8
TEMPERATURE AND HUMIDITY SENSOR
This below Figure 4.1 shows the sensed values of temperature and humidity.

The DHT11 is a basic, digital temperature and humidity sensor. It uses a capacitive humidity
sensor and a thermistor to measure the surrounding air, and spits out a digital signal on the
data pin(no analog pins needed).It is simple to use, but requires
careful timing to grab data. Humidity sensors are used for measuring moisture content in the
atmosphere. Then current temperature, humidity values are sent to the microcontroller, those
values will display in the user's android app.

SOIL MOISTURE SENSOR


This below Figure 4.2 shows the procedure of displaying soil moisture value

9
SCHEMATIC VIEW :

10
HARDWARE AND SOFTWARE REQUIREMENT

HARDWARE:
This section gives details of the hardware components required for the system
implementation and deployment.agriculture robot requires the following hardware
components:
1. Power supply
2. ESP 8266
3. Soil Moisture
4. LCD 16×2
5. DHT11
6. Water pump

11
POWER SUPPLY:

● Microcontroller- ESP 8266:


Nodemcu operates at 5v & 3.3V. For 3.3V there is already an LDO voltage regulator
to keep the voltage steady at 3.3V. NodeMCU can be powered using Micro USB jack
and VIN pin (External Supply Pin).
● Soil Moisture :
Soil moisture is the power supply pin of the soil moisture sensor that can be
connected to 3.3V or 5V of the supply. But do note that the analog output will vary
depending upon the provided supply voltage. GND is the ground pin of the board and
it should be connected to the ground pin.
● LCD 16×2:
The required supply voltage is from 4.7V to 5.3V and the LCD can operate either in
8-bit mode or in 4-bit mode allowing you to save more GPIO pins on the controller
side. The current consumption is about 1mA without the back light.
● DHT11:
DHT11's power supply is 3-5.5V DC. When power is supplied to the sensor, do not
send any instruction to the sensor within one second in order to pass the unstable
status. One capacitor valued 100nF can be added between VDD and GND for power
filtering.
● Water pump:
DC powered pumps use direct current from motor, battery, or solar power to move
fluid in a variety of ways. Motorized pumps typically operate on 6, 12, 24, or 32 volts
of DC power.

ESP8266:

The ESP8266 is a low-cost Wi-Fi microchip, with built-in TCP/IP networking software, and
microcontroller capability, produced by Espressif Systems in Shanghai, China.The chip was
popularized in the English-speaking maker community in August 2014 via the ESP-01
module, made by a third-party manufacturer Ai-Thinker. This small module allows
microcontrollers to connect to a Wi-Fi network and make simple TCP/IP connections using
Hayes-style commands. However, at first, there was almost no English-language

12
documentation on the chip and the commands it accepted.The very low price and the fact that
there were very few external components on the module, which suggested that it could
eventually be very inexpensive in volume, attracted many hackers to explore the module, the
chip, and the software on it, as well as to translate the Chinese documentation.

ESP8266 pin explanation:

● The ESP8266 as a microcontroller Hardware:


While the ESP8266 is often used as a ‘dumb’ Serial-to-WiFi bridge, it’s a very
powerful microcontroller on its own. In this chapter, we’ll look at the non-Wi-Fi
specific functions of the ESP8266.

● Digital I/O:
Just like a normal Arduino, the ESP8266 has digital input/output pins (I/O or GPIO,
General Purpose Input/Output pins). As the name implies, they can be used as digital
inputs to read a digital voltage, or as digital outputs to output either 0V (sink current)
or 3.3V (source current).

● Voltage and current restrictions:


The ESP8266 is a 3.3V microcontroller, so its I/O operates at 3.3V as well. The pins
are not 5V tolerant, applying more than 3.6V on any pin will kill the chip.The
maximum current that can be drawn from a single GPIO pin is 12mA.

13
● Usable pins:
The ESP8266 has 17 GPIO pins (0-16), however, you can only use 11 of them,
because 6 pins (GPIO 6 - 11) are used to connect the flash memory chip. This is the
small 8-legged chip right next to the ESP8266. If you try to use one of these pins, you
might crash your program.
GPIO 1 and 3 are used as TX and RX of the hardware Serial port (UART), so in most
cases, you can’t use them as normal I/O while sending/receiving serial data.

● Boot modes:
As mentioned in the previous chapter, some I/O pins have a special function during
boot: They select 1 of 3 boot modes.
GPIO15 GPIO0 GPIO2 Mode
0V. 0V 3.3V Uart Bootloader
0V 3.3V 3.3V Boot sketch
3.3V x x SDIO mode
Note: you don’t have to add an external pull-up resistor to GPIO2, the internal one is enabled
at boot.

We made sure that these conditions are met by adding external resistors in the previous
chapter, or the board manufacturer of your board added them for you. This has some
implications, however:

GPIO15 is always pulled low, so you can’t use the internal pull-up resistor. You have to keep
this in mind when using GPIO15 as an input to read a switch or connect it to a device with an
open-collector (or open-drain) output, like I²C.
GPIO0 is pulled high during normal operation, so you can’t use it as a Hi-Z input.
GPIO2 can’t be low at boot, so you can’t connect a switch to it.
Internal pull-up/-down resistors
GPIO 0-15 all have a built-in pull-up resistor, just like in an Arduino. GPIO16 has a built-in
pull-down resistor.
● PWM:
Unlike most Atmel chips (Arduino), the ESP8266 doesn’t support hardware PWM,
however, software PWM is supported on all digital pins. The default PWM range is
10-bits @ 1kHz, but this can be changed (up to >14-bit@1kHz).
● Analog input:
The ESP8266 has a single analog input, with an input range of 0 - 1.0V. If you supply
3.3V, for example, you will damage the chip. Some boards like the NodeMCU have
an on-board resistive voltage divider, to get an easier 0 - 3.3V range. You could also
just use a trimpot as a voltage divider. The ADC (analog to digital converter) has a
resolution of 10 bits.

14
Communication Protocols Used
● Serial:
The ESP8266 has two hardware UARTS (Serial ports): UART0 on pins 1 and 3 (TX0
and RX0 resp.), and UART1 on pins 2 and 8 (TX1 and RX1 resp.), however, GPIO8
is used to connect the flash chip. This means that UART1 can only transmit
data.UART0 also has hardware flow control on pins 15 and 13 (RTS0 and CTS0
resp.). These two pins can also be used as alternative TX0 and RX0 pins.

● I²C:
The ESP doesn’t have a hardware TWI (Two Wire Interface), but it is implemented in
software. This means that you can use pretty much any two digital pins. By default,
the I²C library uses pin 4 as SDA and pin 5 as SCL. (The data sheet specifies GPIO2
as SDA and GPIO14 as SCL.) The maximum speed is approximately 450kHz.

● SPI:
The ESP8266 has one SPI connection available to the user, referred to as HSPI. It
uses GPIO14 as CLK, 12 as MISO, 13 as MOSI and 15 as Slave Select (SS). It can be
used in both Slave and Master mode (in software).

● Digital I/O:
Just like with a regular Arduino, you can set the function of a pin using pinMode(pin,
mode); where pin is the GPIO number*, and mode can be either INPUT, which is the
default, OUTPUT, or INPUT_PULLUP to enable the built-in pull-up resistors for
GPIO 0-15. To enable the pull-down resistor for GPIO16, you have to use
INPUT_PULLDOWN_16.

● Analog input:
Just like on an Arduino, you can use analogRead(A0) to get the analog voltage on the
analog input. (0 = 0V, 1023 = 1.0V).

The ESP can also use the ADC to measure the supply voltage (VCC). To do this, include
ADC_MODE(ADC_VCC); at the top of your sketch, and use ESP.getVcc(); to actually get
the voltage.
If you use it to read the supply voltage, you can’t connect anything else to the analog pin.

15
FEATURES OF ESP8266:

● Processor: L106 32-bit RISC microprocessor core based on the Tensilica Diamond
Standard 106Micro running at 80 MHz[5].
● Memory:[citation needed]
32 KiB instruction RAM
32 KiB instruction cache RAM
80 KiB user-data RAM
16 KiB ETS system-data RAM
● External QSPI flash: up to 16 MiB is supported (512 KiB to 4 MiB typically
included)
● IEEE 802.11 b/g/n Wi-Fi Integrated TR switch, balun, LNA, power amplifier and
matching network.WEP or WPA/WPA2 authentication, or open networks.
● 17 GPIO pins[6]
● Serial Peripheral Interface Bus (SPI)
● I²C (software implementation)[7]
● I²S interfaces with DMA (sharing pins with GPIO)
● UART on dedicated pins, plus a transmit-only UART can be enabled on GPIO2
● 10-bit ADC (successive approximation ADC)

SOIL MOISTURE SENSOR:

Soil moisture sensors measure the volumetric water content in soil.[1] Since the direct
gravimetric measurement of free soil moisture requires removing, drying, and weighing of a
sample, soil moisture sensors measure the volumetric water content indirectly by using some

16
other property of the soil, such as electrical resistance, dielectric constant, or interaction with
neutrons, as a proxy for the moisture content.

The relation between the measured property and soil moisture must be calibrated and may
vary depending on environmental factors such as soil type, temperature, or electric
conductivity. Reflected microwave radiation is affected by the soil moisture and is used for
remote sensing in hydrology and agriculture. Portable probe instruments can be used by
farmers or gardeners. moisture sensors typically refer to sensors that estimate volumetric
water content. Another class of sensors measure another property of moisture in soils called
water
FEATURES OF SOIL MOISTURE SENSOR:
● Digital output threshold adjust potentiometer.
● Analog and digital output.
● Power and digital output indicator

WATER PUMP:

The pumping of water is a basic and practical technique, far more practical than scooping it
up with one's hands or lifting it in a hand-held bucket. This is true whether the water is drawn
from a fresh source, moved to a needed location, purified, or used for irrigation, washing, or
sewage treatment, or for evacuating water from an undesirable location. Regardless of the
outcome, the energy required to pump water is an extremely demanding component of water
consumption. All other processes depend or benefit either from water descending from a
higher elevation or some pressurized plumbing system.
The ancient concept of the aqueduct took simple and eloquent advantage of maintaining
elevation of water for as long and far a distance as possible. Thus, as water moves over great
distances, it retains a larger component of its potential energy by spending small portions of
this energy flowing down a slight gradation. A useful aqueduct system ultimately depends on

17
a fresh water source existing at a higher elevation than the location where the water can be of
use. Gravity does all the work. In all other instances, pumps are necessary.
In day-to-day situations, available water is often contaminated, unhealthy, or even naturally
poisonous, so that it is necessary to pump potable water from lower levels to higher levels,
where it can be of use. A freshwater source in a lower stream, river, pond, or lake is often
pumped to higher ground for irrigation, livestock, cooking, cleaning or other uses by humans,
who quite naturally need fresh water. This will purify mostly fresh water, and the treatment of
largely contaminated water refers endlessly to pumping.

DHT11- HUMIDITY AND TEMPERATURE SENSOR:

The DHT-11 Digital Temperature And Humidity Sensor is a basic, ultra low-cost digital
temperature and humidity sensor. It uses a capacitive humidity sensor and a thermistor to
measure the surrounding air and spits out a digital signal on the data pin (no analog input pins
needed).

It's fairly simple to use, but requires careful timing to grab data. The only real downside of
this sensor is you can only get new data from it once every 2 seconds, so in your code please
use sensor reading interval at 2 seconds or more. Compared to the DHT22, this sensor is less
precise, less accurate and works in a smaller range of temperature/humidity.

But despite its disadvantages over DHT22, it is a smaller and less expensive sensor for
temperature and humidity measurement.

FEATURES OF DHT11:

● Low power consumption.


● Relative humidity & temperature measurement
● All calibration, digital output
● Excellent long-term stability
● No additional components

18
● Long distance signal transmission
● Ultra-low power
● 4-pin package
● Completely interchangeable
● Package Includes

LCD16X2:

The term LCD stands for liquid crystal display. It is one kind of electronic display module
used in an extensive range of applications like various circuits & devices like mobile phones,
calculators, computers, TV sets, etc. These displays are mainly preferred for multi-segment
light-emitting diodes and seven segments. The main benefits of using this module are
inexpensive; simply programmable, animations, and there are no limitations for displaying
custom characters, special and even animations, etc.

LCD 16x2 Pin Details:


The 16×2 LCD pinout is shown below.
● Pin1 (Ground/Source Pin): This is a GND pin of display, used to connect the GND
terminal of the microcontroller unit or power source.
● Pin2 (VCC/Source Pin): This is the voltage supply pin of the display, used to connect
the supply pin of the power source.
● Pin3 (V0/VEE/Control Pin): This pin regulates the difference of the display, used to
connect a changeable POT that can supply 0 to 5V.
● Pin4 (Register Select/Control Pin): This pin toggles among the command or data
register, used to connect a microcontroller unit pin and obtains either 0 or 1(0 = data
mode, and 1 = command mode).
● Pin5 (Read/Write/Control Pin): This pin toggles the display among the read or writes
operation, and it is connected to a microcontroller unit pin to get either 0 or 1 (0 =
Write Operation, and 1 = Read Operation).

19
● Pin 6 (Enable/Control Pin): This pin should be held high to execute the Read/Write
process, and it is connected to the microcontroller unit & constantly held high.
● Pins 7-14 (Data Pins): These pins are used to send data to the display. These pins are
connected in two-wire modes like 4-wire mode and 8-wire mode. In 4-wire mode,
only four pins are connected to the microcontroller unit like 0 to 3, whereas in 8-wire
mode, 8-pins are connected to microcontroller units like 0 to 7.
● Pin15 (+ve pin of the LED): This pin is connected to +5V.
● Pin 16 (-ve pin of the LED): This pin is connected to GND.

FEATURES OF LCD 16x2:
● The operating voltage of this LCD is 4.7V-5.3V.
● It includes two rows where each row can produce 16-characters.
● The utilization of current is 1mA with no backlight.
● Every character can be built with a 5×8 pixel box.
● The alphanumeric LCDs alphabets & numbers.
● Its display can work on two modes like 4-bit & 8-bit.
● These are obtainable in Blue & Green Backlight.
● It displays a few custom generated characters.

PROGRAMMING SOFTWARE USED :


This section gives details of the software required for the system implementation and
deployment.automated irrigation system using iot for different crop plantation requires the
following software:
1. Python Anywhere
2. Thonny
3. CSS
4. HTML

What's the cloud server?

A cloud server is a pooled, centralized server resource that is hosted and delivered over
a network—typically the Internet—and accessed on demand by multiple users. Cloud servers
can perform all the same functions of a traditional physical server, delivering processing
power, storage and applications.
Cloud servers can be located anywhere in the world and deliver services remotely through a
cloud computing environment. In contrast, traditional dedicated server hardware is typically
set up on premises for exclusive use by one organization.

20
Python Anywhere:

PythonAnywhere is an online integrated development environment (IDE) and web hosting


service (Platform as a service) based on the Python programming language.Founded by Giles
Thomas and Robert Smithson in 2012, it provides in-browser access to server-based Python
and Bash command-line interfaces, along with a code editor with syntax highlighting.
Program files can be transferred to and from the service using the user's browser. Web
applications hosted by the service can be written using any WSGI-based application
framework.
PythonAnywhere was created by Resolver Systems,who also produced Resolver One, a
Python-based Spreadsheet program. On 16 October 2012 the product was acquired by a new
company, PythonAnywhere LLP, who will develop and maintain the product in the future,
and have taken on the existing development team.] In June, 2022, PythonAnywhere was
acquired by Anaconda, Inc.
The development team uses PythonAnywhere to develop PythonAnywhere, and say that its
collaboration features help because they use the extreme programming methodology.

FEATURES OF PYTHON ANYWHERE:


● In-browser interactive consoles with code running on hosted servers, shareable
between multiple users.
● WSGI-based web hosting, e.g. Django, Flask, web2py
● Support for coding from iPad and other mobile devices.
● Syntax-highlighting in-browser editor.
● Many popular Python modules are pre-installed.
● Cron-like scheduled tasks to run scripts at a given time of day.
● Always-on tasks to run scripts and restart them automatically when they fail.

21
THONNY:
Thonny is an integrated development environment for Python that is designed for beginners.
It supports different ways of stepping through the code, step-by-step expression evaluation,
detailed visualization of the call stack and a mode for explaining the concepts of references
and heap.

FEATURES OF THONNY:
● Line numbers
● Statement stepping without breakpoints
● Live variables during debugging
● Stepping through evaluation of the expressions (expressions get replaced by their
values)
● Separate windows for executing function calls (for explaining local variables and
call stack)
● Variables and memory can be explained either by using simplified model (name
→ value) or by using more realistic model (name → address/id → value)
● Simple pip GUI
● Support for CPython and MicroPython
● Support for running and managing files on a remote machine via SSH
● Possibility to log user actions for replaying or analyzing the programming process

22
HTML:

The HyperText Markup Language or HTML is the standard markup language for documents
designed to be displayed in a web browser. It can be assisted by technologies such as
Cascading Style Sheets (CSS) and scripting languages such as JavaScript.
Web browsers receive HTML documents from a web server or from local storage and render
the documents into multimedia web pages. HTML describes the structure of a web page
semantically and originally included cues for the appearance of the document.
HTML elements are the building blocks of HTML pages. With HTML constructs, images and
other objects such as interactive forms may be embedded into the rendered page. HTML
provides a means to create structured documents by denoting structural semantics for text
such as headings, paragraphs, lists, links, quotes and other items. HTML elements are
delineated by tags, written using angle brackets. Tags such as <img /> and <input /> directly
introduce content into the page. Other tags such as <p> surround and provide information
about document text and may include other tags as sub-elements. Browsers do not display the
HTML tags but use them to interpret the content of the page.

CSS:

23
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of
a document written in a markup language such as HTML or XML (including XML dialects
such as SVG, MathML or XHTML). CSS is a cornerstone technology of the World Wide
Web, alongside HTML and JavaScript.
CSS is designed to enable the separation of presentation and content, including layout, colors,
and fonts.css file, which reduces complexity and repetition in the structural content; and
enable the .css file to be cached to improve the page load speed between the pages that share
the file and its formatting.Here we are using CSS language for the creation of front end
application or IOT platform for making it look creative.

PROGRAMMING LANGUAGES:
● MicroPython.
● Python .
● Django.
● Java script

Java Script:

JavaScript is a lightweight, cross-platform, and interpreted compiled programming language


which is also known as the scripting language for web pages. It is well-known for the
development of web pages, many non-browser environments also use it. JavaScript can be
used for Client-side developments as well as Server-side developments. Javascript is both an
imperative and declarative type of language. JavaScript contains a standard library of objects,
like Array, Date, and Math, and a core set of language elements like operators, control
structures, and statements.

MICRO PYTHON:
MicroPython is a software implementation of a programming language largely compatible
with Python 3, written in C, that is optimized to run on a microcontroller. MicroPython

24
consists of a Python compiler to bytecode and a runtime interpreter of that bytecode. The user
is presented with an interactive prompt (the REPL) to execute supported commands
immediately. Included are a selection of core Python libraries; MicroPython includes modules
which give the programmer access to low-level hardware. The source code for the project is
available on GitHub under the MIT License.

Advantages of Using Micro Python instead of Embedded C/C++:


Python is easy to read, easy to write and has a low learning curve compared to other
languages. A scaled version of Python in the form of Micro Python for microcontrollers
opens possibilities for rapid prototyping and opportunities for improving code maintenance
and portability.

PYTHON:
Python is a dynamic, interpreted (bytecode-compiled) language. There are no type
declarations of variables, parameters, functions, or methods in source code. This makes the
code short and flexible, and you lose the compile-time type checking of the source code.

25
DJANGO:

Django is a free and open-source, Python-based web framework that follows the
model–template–views (MTV) architectural pattern. It is maintained by the Django Software
Foundation (DSF), an independent organization established in the US as a 501(Fc)(3)
non-profit. Django's primary goal is to ease the creation of complex, database-driven
websites. The framework emphasizes reusability and "pluggability" of components, less
code, low coupling, rapid development, and the principle of don't repeat yourself.[9] Python
is used throughout, even for settings, files, and data models. Django also provides an optional
administrative create, read, update and delete interface that is generated dynamically through
introspection and configured via admin models.
Some well-known sites that use Django include Instagram, Mozilla, Disqus, Bitbucket,
Nextdoor and Clubhouse. In today’s era where water has become a scarce resource, the
implementation of automated irrigation systems for multi crops helps in optimizing the water
usage without compromising the yield of the crops. The data stored in the server can be
utilized to implement machine learning concepts in the future.

Purpose of front end and back end:


System architectures are broken down into front end and back-end components for a variety
of purposes. The most common is in software and web development to break down projects
in terms of required skills. The front-end aspect of a project is usually handled by
professionals such as web designers while the back end is handled by engineers and
developers.Front end and back end can also be used to describe situations where the customer
has access to one view and employees have access to another. Front end components are
customer facing while rights to the back end are exclusively for authenticated users.Examples
of frontend and backend Concepts and components that focus on the front end of a system
include: Design and markup languages like HTML, CSS and JavaScript. Search engine
optimization (SEO).

26
Usability and accessibility testing.
Graphic design and image editing tools.
Web performance and browser compatibility.
We’ve chosen PythonAnywhere as our server backend since it's easy to create and run Python
programs in the cloud and we can write our programs in a web-based editor or just run a
console session from any modern web browser.

Setting up the IOT platform server:


Step 1: Scan this QR code to register into the agri.pythonanywhere.com IoT platform

Step 2: Log in using your username and password.

27
Step 3: You can create a new project or view the existing projects.
Select the required crop and save the project

Step 4: Read the API key and id number onto the microcontroller.

User will be able to monitor the temperature on water level even in his absence.

28
Admin Page
Here the admin can enter the different crops and feed the parameters required by them. This
page is only accessible by the admin

29
Testing & Results:
This water pump needs to be fully submerged in water. The outlet pipe is kept in a field for
irrigation. Similarly the soil Moisture sensor is dipped in soil.
As soon as you power on the device, the LCD will start displaying the Soil Humidity, Air
Humidity, and also Air Temperature. It shows the real-Time Data. When the soil moisture
content is reduced the water pumps turn on and irrigate the field until the required moisture is
achieved.

30
You can monitor the data online from any part of the world using python anywhere Server. To
do that, go to the private view of the Thingspeak server. You can check the soil Moisture,
Humidity, and Temperature as well as relay status.

ADVANTAGES:
1. This product can keep track of moisture content and temperature of the soil.
2. Web applications can be accessed through any smart device irrespective of its operating
system or version.
3. Farmers can easily add or delete the crop modules using dashboard, which changes
the control part at the end point in a click of a button.
4. Usage of Django (a python web framework) to design IoT platforms increased the safety of
the web application.
5. Reduces the human effort in continuously monitoring soil moisture and temperature.
6. The data stored in the server can be used to analyze the characteristics of the soil and crop.
Which intern helps in applying machine learning concepts in the future.

DISADVANTAGES:
1. Failure of the internet can affect the smooth operation of the system.

APPLICATION:
1. This concept can be used in cultivating different crops in small land.
2. Can be used in apartments for garden maintenance.
3. The same technology can be used in green house monitoring systems to automate the
process.

FUTURE ENHANCEMENT:
● This system will help the farmer to overcome the drawbacks of the traditional
irrigation system.
● Provide new technology for farmers to improve the quality of their irrigation system.
● Also helps those farmers which do not have sufficient water for their farming.

CONCLUSION:
In today’s era where water has become a scarce resource, the implementation of automated
irrigation systems for multi crops helps in optimizing the water usage without compromising
the yield of the crops. The data stored in the server can be utilized to implement machine
learning concepts in the future.This review is proposed to support aggressive water
management for the agricultural land. Microcontroller in the system promises an increase in
system life by reducing the power consumption resulting in lower power consumption. It is
considered to be used at Cricket stadiums or Golf stadiums and also in public garden areas for
proper irrigation. Automated irrigation systems have a huge demand and future scope too. It
is time saving, led to removal of human error in adjusting available soil moisture levels and

31
to maximize their net profits in accordance to factors like sales, quality and growth of their
products.

REFERENCE:
1. “Smart drip irrigation system using raspberry pi and Arduino.”. Nikhil Agrawal andSmita
Singhal. International Conference on Computing, Communication andAutomation
(ICCCA2015)
2. “Smart Multi-Crop Irrigation System Using IOT''. Anbarasi M, Karthikeyan T,Ramanathan
L, Ramani S, Nalini N. International Journal of Innovative Technology And Exploring
Engineering (IJITEE)
3. “An Automated Irrigation System for Smart Agriculture Using the Internet of Things”V.
Ramachandran, R. Ramalakshmi, and Seshadhri Srinivasan, 2018 15thInternational
Conference on Control, Automation, Robotics and Vision (ICARCV)Singapore, November
18-21, 2018.
4. “Smart Precision Based Agriculture Using Sensors.” Lakshmisudha, K., Hegde, S.,Kale,
N., & Iyer, S. (2011). International Journal of Computer Applications.
5. “Precision Agriculture using Internet of Things and Wireless sensor Networks.”Managave,
A., Savale, O., Ambekar, D., & Sathe, S. (2016). International Journal ofAdvanced Research
in Computer Engineering & Technology (IJARCET) Volume 5.

32

You might also like