WEB BASED AGROBOT

INTRODUCTION

Farmers need agricultural information and knowledge to make knowledgeable decisions and to satisfy informational needs. In agriculture domain through the development of aknowledge management system, enquiries of farmers can be answered with the help of multimedia which is easily accessible.

At present, the key issue in the current domain is utilization of resources like man-power and water which is lacking in many parts of the country.There have not been any significant technological advancements being made in agricultural sector as compared to other sectors. Agricultural system needs to be monitored on a regular basis. The use of the developed framework is to reduce wastage by automating the entire agricultural system. This invention will further lure the youth to be a part of the agricultural reformation movement since it allows them to be familiar with the application of the technologies rather than indulging oneself completely in the field itself.

Purpose

The proposed automated plantation bot will help the farmer to enhance the agricultural production with increased efficiency and reduce the time frame for carrying out the task of plantation. Moreover it reduce the dependancy of the farmer in fellow co-workers since it automatically does the task of plantation of the seed just with the single click in its web page so reduce the mass involvement of the people which could be costly. The Agro Bot will reduce the complexity and tediousity of the work of the farmer and generate the efficacy in production field.

Objectives

The main objective of this Green house AgroBot system is to provide farmers timely information from field over Wi-Fi. The important objectives are:

  • To monitor crop-field using sensors (soil moisture, temperature, humidity, light).
  • To automate the irrigation system and lighting, cooling system within green house.
  • To seed the plants in automation.
  • To add surveillance using webcam.

LITERATURE REVIEW

[1] Internet Of Things (IoT) is a shared network of objects or things which can interact with each other provided the Internet connection. IoT plays an important role in agriculture industry which can feed 9.6 billion people on the Earth by 2050. Smart Agriculture helps to reduce wastage, effective usage of fertilizer and thereby increase the cropyield. In this work, a system is developed to monitor crop-field using sensor (soil moisture, temperature, humidity, Light) and automate the irrigation system. The data from sensors are sent to Webserver database using wireless transmission. The irrigation is automated if the moisture and temperature of the field falls below the threshold level.

[2] In green houses light intensity control can also be automated in addition to irrigation. The official to handle the green house shall continuously monitor the data that shall be displayed in web page. On previous approaches the sensing device weren’t applied that result in the tedious management of the green house. So to overcome the issues on recent bases the more vibrant thing is the application of IOT. It shall surely replace the orthodox farm management practice resulting in the optimum yield.

[3] The application of Information and Communication Technology (ICT) has proven forwidening the opportunities to promote agriculture on several aspects and domains in developing countries. Technology has changed by using wireless technology, networking, mobile etc. To overcome the utilization of energy, power and cost consuming equipment which was helpful in the agricultural development. The development of ICT in various domains has driven substantial interest in rising investments by private sectors towards the growth of ICT in Agricultural research.

METHODOLOGY

Green houses protect crops from overheating or super cooling and help to keep outpests. It protects crop from marginal environment conditions through out the year for yielding food production.

In this system crop-field is monitor using sensor (soil moisture, temperature, humidity, light) that is attached to the portable stick and automates the irrigation system. The real time data from sensors are sent to Web server database using wireless transmission. The irrigation is automated if the moisture and temperature of the field falls below the brinks.

This system uses the web page facilitated seed plantation mechanism. This allow the simplifies plantation of the seed in the desired location with the click on the desired location as displayed on the webpage. Moreover it has attatched webcam for the video surveillance that enhance its security.

BLOCKDIAGRAM

Figure 1:Block diagram of Agrobot

FLOWCHART

Figure 2 : Flowchart of  Agrobot

PROJECTREQUIREMENTS

HARDWARE COMPONENTS

Raspberry PI

The Raspberry Pi  is a low cost, credit-card sized computer that plugs into a computermonitor or TV, and uses  a standard  keyboard   and mouse. It is a capable  little device that enables to program  in  languages  like Scratch and  Python. The Raspberry Pi is slower than a modern laptop or desktop but is still a complete Linux computer and can provide all the expected abilities that implies at a low-power consumption level.

The Raspberry pi is open hardware, with the exception of the primary chip on the Raspberry Pi, the Broadcom SOC (System on a Chip), which runs many of the main components of the board-CPU, graphics, memory, the USB controller, etc. Many of the projects made with a Raspberry Pi are open and well-documented as well. We are using raspberry Pi 3 b+ module for our project.

The Raspberry Pi 3 Model B+ maintains the same mechanical footprint as both the Raspberry Pi 2 Model B and the Raspberry Pi 3 Model B.It has a64-bit quad core processor running at 1.4GHz, dual-band 2.4GHz and 5GHz wireless LAN, Bluetooth 4.2/BLE, faster Ethernet, and PoE capability via a separate PoE HAT .The dual-band wireless LAN comes with modular compliance certification, allowing the board to be designed into end products with significantly reduced wireless LAN compliance testing, improving both cost and time to market.

  • Technical Specifications

SoC:  Broadcom BCM2837B0, Cortex-A53 64-bit SoC @ 1.4GHz

CPU:700 MHz ARM1176JZF-S core (ARM11 family, ARMv6 )           

GPU:Broadcom VideoCore IV @ 250 MHz

Video input:15-pinMIPIcamera interface (CSI) connector, used with the Raspberry Pi Camera Addon.

Video outputs: Composite RCA (PAL and NTSC) –in model B+ via 4-pole 3.5                                                                                             mm jack,HDMI (rev 1.3 & 1.4), raw LCD Panels via DS

Audio outputs : 3.5 mm jack, HDMI, and, as of revision 2 boards, I²S audio

Access : Extended 40-pin GPIO header

Video & sound:        

  • 1 × full size HDMI
  • MIPI DSI display port
  • MIPI CSI camera port
  • 4 pole stereo output and composite video port

Multimedia: H.264, MPEG-4 decode (1080p30); H.264 encode (1080p30); OpenGL ES 1.1, 2.0 graphics

SD card support : Micro SD format for loading operating system and data storage

Input power:             

  • 5V/2.5A DC via micro USB connector  
  • 5V DC via GPIO header

Power source: 5 V via MicroUSB or GPIO header

 Size: 85.60 mm × 56 mm (3.370 in × 2.205 in) – not including protruding       connectors.

On board  network: 10/100 Mbit/sEthernet (8P8C) USB adapter on the third/fifth port of the USB hub.

Figure 3 : Raspberry PI pinout Diagram

(Source: https://www.jameco.com/Jameco/workshop/circuitnotes/raspberry-pi-circuit-note.html)

Arduino Mega 2560

The Arduino Mega 2560 is a microcontroller board based on the ATmega2560 (datasheet). It has 54 digital input/output pins (of which 14 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. The Mega is compatible with most shields designed for the Arduino Duemilanove or Diecimila.

The Arduino Mega2560 can be powered via the USB connection or with an external power supply. The power source is selected automatically. External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board’s power jack. Leads from a battery can be inserted in the Gnd and Vin pin headers of the POWER connector.

The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts. The Mega2560 differs from all preceding boards in that it does not use the FTDI USB-to-serial driver chip. Instead, it features the Atmega8U2 programmed as a USB-to-serial converter.

  • Technical Specification

• VIN. The input voltage to the Arduino board when it’s using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.

 • 5V. The regulated power supply used to power the microcontroller and other components on the board. This can come either from VIN via an on-board regulator, or be supplied by USB or another regulated 5V supply.

 • 3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.

 • GND. Ground pins.

• Serial: 0 (RX) and 1 (TX); Serial 1: 19 (RX) and 18 (TX); Serial 2: 17 (RX) and 16 (TX); Serial 3: 15 (RX) and 14 (TX). Used to receive (RX) and transmit (TX) TTL serial data. Pins 0 and 1 are also connected to the corresponding pins of the ATmega8U2 USB-to-TTL Serial chip

. • External Interrupts: 2 (interrupt 0), 3 (interrupt 1), 18 (interrupt 5), 19 (interrupt 4), 20 (interrupt 3), and 21 (interrupt 2). These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

 • PWM: 0 to 13. Provide 8-bit PWM output with the analogWrite() function.

 • SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). These pins support SPI communication, which, although provided by the underlying hardware, is not currently included in the Arduino language. The SPI pins are also broken out on the ICSP header, which is physically compatible with the Duemilanove and Diecimila.

 • LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it’s off.

 • I 2C: 20 (SDA) and 21 (SCL). Support I2C (TWI) communication using the Wire library (documentation on the Wiring website).

Figure 4 : Pinout diagram Arduino Mega 2560    (Source:https://arduinoinfo.mywikis.net/wiki/MegaQuickRef )

NEMA 17 Stepper Motor

The National Electrical Manufacturers Association sets standards for many electrical products, including step motors.  NEMA 17 stepper motor is a stepper motor with a 1.7 x 1.7 inch (43.18 x 43.18 mm) faceplate. NEMA 17 is a hybrid steppingmotor with a 1.8° step angle (200 steps/revolution). Each phase draws 1.2 A at 4 V, allowing for a holding torque of 3.2 kg-cm. NEMA 17 Stepper motor is generally used in Printers, CNC machines and Laser Cutters.

NEMA17 Stepper Motor is commonly used in CNC machines, Hard Drives and Linear Actuators. The motor have 6 lead wires and rated voltage is 12 volt. It can be operated at lower voltage but torque will drop. These motors has a step angle of 1.8 deg., this means that it has 200 steps per revolution for every step it will cover a 1.8° hence the level of control is also high. These motors run on 12V and hence can provide high torque. So if you are looking for a compact easy to use stepper motor with high torque then this motor is the right choice for you.

  • Technical Specification

Rated Voltage: 12V DC

Current: 1.2A at 4V

Step Angle: 1.8 deg.

No. of Phases: 4

Motor Length: 1.54 inches

4-wire, 8 inch lead

200 steps per revolution, 1.8 degrees

Operating Temperature: -10 to 40 °C

Unipolar Holding Torque: 22.2  N/m

Figure 5:  NEMA17 Stepper Motor Pindiagram

(Source:https://components101.com/motors/nema17-stepper-motor)

Motor Driver L298N

The L298N Motor Driver Module is a high voltage Dual H-Bridge manufactured by ST Company. It is designed to accept standard TTL voltage levels. H-bridge drivers are used to drive inductive loads that requires forward and reverse function with speed control such as DC Motors, and Stepper Motors. This Dual H-Bridge driver is capable of driving voltages up to 46V and continuous current up to 2A in each channels.

The L298N is a dual H-Bridge motor driver which allows speed and direction control of two DC motors at the same time.

Figure: 6 L298N Motor Controller Board

(Source: https://www.teachmemicro.com/use-l298n-motor-driver/)

The controller board, shown above, has +12V and +5V terminals. The +12V pin is where the motor power is attached. This pin can accept voltages from +7VDC to +35VDC

Specification

  • Driver: L298 Dual H Bridge DC Motor Driver IC
  • Operating Voltage: 7 to 35V
  • Peak current: 2A
  • Maximum power consumption: 20W (when the temperature T = 75 °C)
  • Driver Board Size: 55mm * 49mm * 33mm (with fixed copper pillar and the heat sink height)
  • Driver Board Weight: 33

Connection of DC Motors with L298N Driver Board

Figure 7:: Connection of Stepper Motors with L298N Driver board

(Source:https://www.circuitmagic.com/arduino/how-to-run-stepper-motor-with-arduino-using-l298n-driver-module/)

V Wheels


V Wheels are precise smooth motion for light to medium duty applications .Flat surface with a V shaped outer edge allows the wheel to center ride in the track of V-Slot Linear Rail and C-Beam Linear Rail. Here in our project

Figure 8:  Single V wheel

(Source:https://www.servocity.com/v-wheel-kit-a)

DHT 11 Temperature and Humidity Sensor

The DHT11 is a commonly used Temperature and humidity sensor. The sensor comes with a dedicated NTC to measure temperature and an 8-bit microcontroller to output the values of temperature and humidity as serial data. The sensor is also factory calibrated and hence easy to interface with other microcontroller.

The sensor can measure temperature from 0°C to 50°C and humidity from 20% to 90% with an accuracy of ±1°C and ±1%. This DHT11 Temperature and Humidity Sensor features a calibrated digital signal output with the temperature and humidity sensor capability.

Technical  Specifications:

  • Operating Voltage: 3.5V to 5.5V
  • Operating current: 0.3mA (measuring) 60uA (standby)
  • Output: Serial data
  • Temperature Range: 0°C to 50°C
  • Humidity Range: 20% to 90%
  • Resolution: Temperature and Humidity both are 16-bit
  • Accuracy: ±1°C and ±1%

Figure 9:  DHT 11 Sensor Pinout diagram

(Source:https://components101.com/dht11-temperature-sensor)

Soil Sensor

 A soil moisture sensor measures the quantity of water contained in a material, such as soil on a volumetric or gravimetric basis. To obtain an accurate measurement, a soil temperature sensor is also required for calibration.

The sensor  module we used for our project is  YL-69. This sensor uses the two probes to pass current through the soil, and then it reads that resistance to get the moisture level. More water makes the soil conduct electricity more easily (less resistance), while dry soil conducts electricity poorly (more resistance).

When there is more water, the soil will conduct more electricity which means that there will be less resistance. Therefore, the moisture level will be higher. Dry soil conducts electricity poorly, so when there will be less water, then the soil will conduct less electricity which means that there will be more resistance. Therefore, the moisture level will be lower.

  • Technical  Specification
  • Operating voltage: DC 3.3V – 5V
  • Output voltage signal: 0 ~ 4.2V
  • Current: 35mA
  • LED: Power indicator (Red) and Digital switching output indicator (Green)
  • Size: 60 x 20 x 5mm
  • Pin definition:
  • VCC external 3.3V-5V
  • GND external GND
  • DO digital output interface (0 and 1)
  • AO analog output interface (0 ~ 4.2V)

Figure  10:  Pinout Diagram of Soil Moisture Sensor

(Source:http://www.circuitstoday.com/arduino-soil-moisture-sensor/pin-out)

Servo Motor

 A servo motor is an electrical device which can push or rotate an object with great precision. If you want to rotate and object at some specific angles or distance, then you use servo motor. It is just made up of simple motor which run through servo mechanism. If motor is used is DC powered then it is called DC servo motor, and if it is AC powered motor then it is called AC servo motor. We can get a very high torque servo motor in a small and light weight packages. The servo motor model  we used for this project is S8218.

Servo motors are rated in kg/cm (kilogram per centimeter) most hobby servo motors are rated at 3kg/cm or 6kg/cm or 12kg/cm. This kg/cm tells you how much weight your servo motor can lift at a particular distance. For example: A 6kg/cm Servo motor should be able to lift 6kg if the load is suspended 1cm away from the motors shaft, the greater the distance the lesser the weight carrying capacity. 

Servo motor works on PWM (Pulse Width Modulation) principle, means its angle of rotation is controlled by the duration of applied pulse to its Control PIN. Basically servo motor is made up of DC motor which is controlled by a variable resistor (potentiometer) and some gears. High speed force of DC motor is converted into torque by Gears. Since WORK= FORCE X DISTANCE, in DC motor Force is less and distance (speed) is high and in Servo, force is High and distance is less. Potentiometer is connected to the output shaft of the Servo, to calculate the angle and stop the DC motor on required angle.

  • Technical Details
  • Power: 4.8V – 6V DC max (5V works well)
  • Average Speed: 60 degrees in 0.20 sec (@ 4.8V), 60 degrees in 0.16 sec (@ 6.0V)
  • Weight: 62.41g.
  • Torque: At 4.8V: 8.5 kg-cm / 120 oz-in, and at 6V: 10 kg-cm / 140 oz-in.
  • Size mm: (L x W x H) 40.7 x 19.7 x 42.9.
  • Spline Count: 25.

Figure 11 : Diagram of Servo Motor

(Source:https://components101.com/servo-motor-basics-pinout-datasheet)

Connection diagram

Figure 12: Connection diagram of  Servo Motor

(Source:https://www.allaboutcircuits.com/projects/servo-motor-control-with-an-arduino/)

  • WebCam :

A webcam is a video camera that feeds or streams an image or video in real time to or through a computer to a computer network, such as the Internet. Webcams are typically small cameras that sit on a desk, attach to a user’s monitor, or are built into the hardware. Webcams can be used during a video chat session involving two or more people, with conversations that include live audio and video.

The webcam model used in our project is WebCam MS073.The purpose of using it in our project is the  is the live video surveillance of the cultivation area. Webcams typically include a lens, an image sensor, support electronics, and may also include one or even two microphones for sound.

Figure 13: WebCam MS-073

(Source:https://webkamery.heureka.sk/vega-ms-073/recenze/)

  • Jumper Wires

Jumper wires are simply wires that have connector pins at each end, allowing them to be used to connect two points to each other without soldering. Jumper wires are typically used with breadboards and other prototyping tools in order to make it easy to change a circuit as needed.

  • Types of Jumper Wires

Jumper wires typically come in three versions: male-to-male, male-to-female and female-to-female. The difference between each is in the end point of the wire. Male ends have a pin protruding and can plug into things, while female ends do not and are used to plug things into. Male-to-male jumper wires are the most common and what you likely will use most often. When connecting two ports on a breadboard, a male-to-male wire is what you’ll need.

Figure 14 : Diagram showing different types  of Jumper Wires

(Source:https://en.wikipedia.org/wiki/Jump_wire)

SOFTWARE PLATFORM AND TOOLS

1. Arduino IDE

  • Arduino IDE is an open  source  software that is mainly used for writing and compiling the code into the Arduino Module.
  • It is an official Arduino software, making code compilation too easy that even a common person with no prior technical knowledge can get their feet wet with the learning process.
  • It is easily available for operating systems like MAC, Windows, Linux and runs on the Java Platform that comes with inbuilt functions and commands that play a vital role for debugging, editing and compiling the code in the environment.
  • A range of Arduino modules available including Arduino Uno, Arduino Mega, Arduino Leonardo, Arduino Micro and many more.
  • Each of them contains a microcontroller on the board that is actually programmed and accepts the information in the form of code.
  • The main code, also known as a sketch, created on the IDE platform will ultimately generate a Hex File which is then transferred and uploaded in the controller on the board.
  • The IDE environment mainly contains two basic parts: Editor and Compiler where former is used for writing the required code and later is used for compiling and uploading the code into the given Arduino Module.
  • This environment supports both C and C++ languages.

2. Python

Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting of glue language to connect existing components together. Python’s simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms and can be freely distributed. 

Python can be used to do following

  • Python can used in server to create Web application.
  • Python can connect to database syste.it can also read and modify file.
  • Python can used to handle big data and perform to complex mathematics.
  • Python can used to rapid prototyping, for production ready-software development.
  • HTML/CSS

HTML is the standard markup language for creating Web page.it is not a programming language.

  1. HTML stand for Hyper Text Markup Language.
  2. HTML describe the structure of Web page.
  3. HTML elements tell browser how to display the content.
  4. HTML elements are represented by tags.

CSS is the Cascading Style Sheet is a stylesheet language used to describe the presentation of a document written in HTML.CSS describe how the elements should be rendered on screen.

CSS is one the core languages of the open Web and is standardized across Web browsers according to the W3C specification.

4.Django

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic designDjango can be (and has been) used to build almost any type of website — from content management systems and wikis, through to social networks and news sites. It can work with any client-side framework, and can deliver content in almost any format (including HTML, RSS feeds, JSON, XML, etc).

5.GitHub

GitHub is a web-based version-control and collaboration platform for software developers. Git is used to store the source code for a project and track the complete history of all changes to that code. It allows developers to collaborate on a project more effectively by providing tools for managing possibly conflicting changes from multiple developers. GitHub allows developers to change, adapt and improve software from its public repositories for free, but it charges for private repositories, offering various paid plans.

Our project can be found in https://github.com/achyutkneupane/majorProject.git

RESULT ANALYSIS

Finally on performing the prior mention methodology with the proper implementation of the components used, the agrobot was able to grab the seed from the dedicated place and as per the direction govern by the user via webpage the plantation of seed was accomplished and with the monitor of data captured by the sensor the automation of irrigation was carried out.

FUTURE ENHANCEMENT

 With the completion of our project, there are certain enhancements that can be done. They are as follows.

  • AI can be implemented for the seed type detection.
  • Servo Motor can be attached with Camera which helps to Surveillance in any direction    as possible.
  • Android application can be developed for further ease.
  • Efficiency can be improved by increasing the battery capacity.
  • Programming can be enhanced to make the device perform different operations.

CONCLUSION

With  the  completion  of  the  project  we  got  familiar  with  the  hardware components and software platforms. With the grabbed  knowledge  it has added the  additional  zeal to work on this project with the more advancement to it. Thus ,  sequential  adaptation of  the steps and procedure  we could  present the work ,the  agrobot.

NOTE

THIS PROJECT IS PERFORMED BY:

ER.Achyut Neupane

ER.Janak Roka

ER.Prakhyat Khatiwada

ER.Sijan Sen Thapa

Recommended For You

About the Author: admin

7 Comments

  1. how can i contect you please give me your no …… otherwise you contact me :- 9560926218

Comments are closed.