Fabricationofamulti-Purpose Agricultural Robot: Aprojectreport
Fabricationofamulti-Purpose Agricultural Robot: Aprojectreport
AGRICULTURAL ROBOT
APROJECTREPORT
Submittedby
SENTHIL S S
SANTHOSH G
NAVEENKUMARK
inpartialfulfillmentoftherequirement
forthe award of the degree
of
BACHELOROFENGINEERING
in
MECHATRONICSENGINEERING
K.S.RANGASAMYCOLLEGEOFTECHNOLOGY
(AnAutonomousInstitution,affiliatedtoAnnaUniversityChennaiand ApprovedbyAICTE,NewDelhi)
TIRUCHENGODE–637215
MAY2024
ii
iii
DECLARATION
Signature
SENTHILSS
SANTHOSHG
NAVEENKUMARK
Place:Tiruchengode
Date:
iv
ACKNOWLEDGEMENT
ABSTRACT
ThisProjectisaddressedtheLocalIssues(Chengalpattu,plantremovingissue)
vi
TABLEOFCONTENTS
ABSTRACT v
LISTOFFIGURES viii
1 INTRODUCTION 1
1.1 SOILMOISTURESENSOR 2
1.1.3 SimpleSoilMoistureDetectorCircuit 3
1.1.4 Conclusion 4
1.2 GRASSREMOVING(DCMOTOR) 4
1.2.2 UsesofMotor 4
1.2.3 AdvantagesofMotor 5
1.3.1 AgriculturalScience 6
1.3.2 Underground 7
2 LITERATUREREVIEW 8
2.1 DESCRIPTION 9
2.3 METHODOLOGY 9
3 MATERIALSANDMETHODS 11
3.1.1 Grinding 11
3.1.2 Drilling 12
vii
3.1.3 Welding 13
3.2.1 Battery 15
3.5 TASK-SPECIFICMODULES 20
3.6 COMMUNICATIONSYSTEM 21
3.7 SAFETYMEASURES 22
4 EXPERIMENTALSETUPAND PROCEDURE 23
4.2 TASK-SPECIFICMODULEEVALUATION 24
4.4 CONTROLLER 27
4.5 MOTORDRIVER 29
4.6.1 ProgramforLEDControl 32
4.6.3 ProgramforSwitchControl 36
4.6.4 ProgramforGamepad 37
4.8 SAFETYTESTING 41
4.10 BLUETOOTHMODULE 43
4.10.1 AdvantageofBluetoothModule 45
4.10.2 DisadvantageofBluetoothModule 46
viii
5 BLOCK DIAGRAM 48
6 RESULT 49
7 CONCLUSIONANDFUTURESCOPE 50
REFERENCES 51
ix
LISTOF FIGURES
FIGURE TITLE PAGE
NO. NO.
1.1 SoilMoistureSensor 2
1.2 DC Motor 4
1.3 WaterSprinkler 6
3.4 PowerSupply 14
3.5 Battery(12v) 15
3.6 SensingandPerception 18
4.1 Multi-purposeagricultureRobot 23
4.3 PindiagramforMotorDriver 29
INTRODUCTION
Grass cutting and water spraying robots represent a significant advancement in the
realm of automated lawn maintenance. These robots are designed to autonomouslynavigate
outdoor spaces, accurately cut grass to a specified height, and efficiently irrigate the lawn
as needed. Combining robotics, artificial intelligence, and sensing technologies, these
robots offer a convenient and efficient solution for maintaining green spaces while
reducing the need for manual labor.
Maintaining lawns and green spaces requires regular attention to ensure healthy
growth and aesthetic appeal. However, manual grass cutting and watering can be time-
consuming, labor-intensive, and often inefficient. Additionally, over or under-watering can
lead to the deterioration of grass quality and increased water consumption, highlighting the
need for precise and automated solutions.
2
Agrass cuttingand watersprayingrobotis aversatileautonomous devicedesigned to
perform two primary functions: cutting grass to a desired height and spraying water for
irrigation purposes. Equipped with various sensors, actuators, and control systems, these
robots navigate outdoor environments, identify areas requiring maintenance, and execute
tasks with precision. Traditional farming methods are gradually being replaced by
automated solutions to improve efficiency, reduce labor costs, and enhance crop yields.
One such application is the development of grass cutting and water spraying robots, which
offer a novel approach to lawn maintenance and irrigation.
1.1 SOILMOISTURESENSOR
Figure1.1.Soil MoistureSensor
This soil moisture sensor is connected to signal generator. When the soil moisture
changes,thentheimpedanceofsensorwillchange.Thisthefrequencyofoutputsignal
generatorchangesaccordingtothesoilmoisture.Thisfrequencychangeisthendetectedand used
for knowing the soil moisture level.
Prevents Overwatering: Overwatering, a common mistake, can lead to root rot and
plant diseases. Sensors help target watering only when necessary, preventing detrimental
effects and promoting healthy growth.
OptimizesPlantGrowth:Byprovidingthecorrectwateramount,sensorsensure
3
optimal conditions for plant health and growth. They can also assist in identifying areas
prone to drying out or retaining excessive moisture.
Enhances Efficiency and Sustainability: By watering only when the soil demands
it, sensors offer time and water conservation benefits, particularly valuable for busy
individuals and those prioritizing eco-friendly practices.
Soil moisture sensors measure the water content in soil by detecting changes in
electricalconductivity.Thisisachievedthroughprobesinsertedintothesoil,whichmeasure the
resistance between them. As soil moisture increases, the conductivity rises, resulting in a
decrease in resistance.
This change is then translated into data that can be read by microcontrollers like
Arduino. By connecting soil moisture sensors to Arduino, users can automate irrigation
systems based on real-time soil moisture readings, ensuring optimal water usage for plant
growth.
1.1.3 SIMPLESOILMOISTUREDETECTORCIRCUIT
For those looking for a basic and cost-effective solution, a simple soil moisture
detectorcircuit canbeconstructedusingbasicelectroniccomponents.Thiscircuitmeasures
theelectricalconductivityofthesoilandprovidesavisualindication,suchasanLEDturning on or
off, to alert users to the need for watering. While offering limited functionalities, this DIY
approach can serve as a valuable tool for basic soil moisture monitoring and learning
purposes.
The soil moisture detector circuit operates on the principle that the conductivityof the
soil varies with its moisture content. When the soil is dry, it has high resistance, leading to
low conductivity. Conversely, moist soil has lower resistance, resulting in higher
conductivity.
4
1.1.4 CONCLUSION
Soil moisture sensors are invaluable tools for monitoring soil hydration levels and
optimizing water usage in various applications, from agriculture to environmental
management. By understanding how these sensors work and exploring their
diverseapplications with Arduino and IoT technology, users can harness their potential to
improve plant health, conserve water resources, and promote sustainable practices in soil
management.
1.2 GRASSREMOVING(DCMOTOR)
Figure1.2.DCMotor
1.2.1 WORKINGOFDCMOTOR
In this type of motor, electrical current is passed through coils that are arranged
withinafixedmagnetic field.Thecurrent generatesmagnetic fieldsin the coils;thiscauses
thecoil assemblytorotate,aseachcoil ispushed awayfromthelikepoleandpulledtoward the
unlike pole of the fixed field.
1.2.2 USESOFMOTOR
DC motors play a role in renewable energy systems such as wind turbines, solar
tracking systems, and hydroelectric generators. They convert mechanical energy into
electrical energy or vice versa, contributing to the generation and utilization of cleanenergy
sources.
DCmotorsareusedinentertainmentandrecreationalproductssuchasamusement park
rides, model trains, remote-controlled cars, and hobbyist projects. They enable dynamic
motion, speed control, and interactive experiences in leisure activities.
1.2.3 ADVANTAGESOFMOTORS
A motor with three coils on the stator will have six electrical wires (two to each
coil) extending from these coils. In most implementations three of these wires will be
connected internally, with the three remaining wires extending from the motor body (in
contrasttothetwowires extendingfromthebrushedmotordescribedearlier).Wiringinthe motor
case is more complicated than simply connecting the power cell’s positive and negative
terminals; we will look more closely at how these motors work in the second session of this
series. Below, we conclude by looking at the advantages of by motors. One big advantage
is efficiency, as these motors can control continuously at maximumrotational force
(torque). Brushed motors, in contrast, reach maximum torque at onlycertain points in the
rotation. For a brushed motor to deliver the same torque as a brushless model, it would
need to use larger magnets. This is why even small motors can deliver considerable power.
Thesecondbigadvantagerelatedtothefirstiscontrollability.motorscanbe
6
controlled,usingfeedbackmechanisms,todeliverypreciselythedesiredtorqueandrotation
speed. Precision control in turn reduces energy consumption and heat generation, and in
cases where motors are battery powered lengthens the battery life.
Figure1.3.WaterSprinkler
Irrigationsprinklerscan beusedforresidential,industrial,andagricultural usage. It is
useful on uneven land where sufficient water is not available as well as on sandy soil. The
perpendicular pipes, having rotating nozzles on top, are joined to the main pipeline at
regularintervals.Whenwaterispressurizedthroughthemainpipeitescapesfromthe rotating
nozzles. It gets sprinkled on the crop. In sprinkler or overhead irrigation, water is
pipedtoonemorecentrallocationswithinthefieldanddistributedbyoverheadhighpressure
sprinklers or guns.
1.3.1 AGRICULTURALSCIENCE
CHAPTER 2
LITERATUREREVIEW
Supportingtask1
(Human-Robot
Supportin
gtask2:
Supporting
task 4: Objects
(manipulato MainTask &diseas
r trajectory (weeding,pruning, es
planning) Harvesting,
2.1 DESCRIPTION
2.2 CONCLUSIONSFROMTHELITERATUREREVIEW
Thefirststeptoconcludeyourliteraturereviewistorestateyourresearchquestion and
objectives. This helps you to remind the reader of the purpose and scope of your
literaturereview,andtoshowhowyouhaveaddressedthegaporproblemthatyouidentified in the
introduction.
2.3 METHODOLOGY
Developingamulti-purposeagriculturerobot involvesasystematicmethodologythat
encompasses various stages from design to testing. Here's a step-by-step methodology for
creating a multi-purpose agricultural robot.
10
IdentifyThe Task
AutomaticSprinklerSystemusedfor
Application
DefinetheRobot Specification
DesignandBuildthePhysicalStructure
DeveloptheRobotControland
Navigationsystem
Figure2.2.Flowchartforthe Process
11
CHAPTER 3
MATERIALSANDMETHODS
3.1 DESIGNANDPROTOTYPING
High-strengthalloys,lightweightcomposites,andweather-resistantplastics.
3.1.1 GRINDING
Figure3.1.Process of Grinding
Grindingisanabrasivemachiningprocessthatusesagrindingwheelasthecutting tool.
A wide variety of machines are used for grinding:
1. Hand-crankedknife-sharpeningstones(grindstones).
2. Handheldpowertoolssuchasangle grindersanddiegrinders.
3. Variouskindsofexpensiveindustrialmachinetoolscalledgrindingmachines.
4. Benchgrindersoftenfoundinresidentialgaragesandbasements.
was the only practical way to machine such materials as hardened steels. Compared to
"regular" machining, it is usuallybetter suited to taking very shallow cuts, such as reducing
ashaft’sdiameterbyhalf athousandth of aninch or12.7um.Grindingisa subsetofcutting, as
grinding is a true metal-cutting process. Each grain of abrasive functions asa
microscopicsingle-pointcuttingedge(althoughofhighnegativerakeangle), and shears a tiny
chip that is analogous to what would conventionally be called a "cut" chip (turning, milling,
drilling, tapping, etc.). Similar abrasive cutting processes are lapping and sanding.
3.1.2 DRILLING
Figure3.2.Process of Drilling
Drillingisthemostcommonmachiningprocesswherebytheoperation
involvesmakingroundholesin metallicand nonmetallicmaterials.
After cutting the material, it is need to make holes for the parts like wooden
sheet,clamps, frame , by different drill bits. So, mark the position to
drillusingsteelruleandscriberandthenpunchasmallholebyusingcentrepunchbeforestartdrill.
After that, start the drilling.
Drillingis acuttingprocess that uses a drill bit to cut or enlarge a hole of circular
crosssection in solid materials. The drill bit is a rotary cutting tool, often multipoint. The bit
is pressed against the work piece and rotated at rates from hundreds to thousands of
revolutions per minute.
This forces the cutting edge against the work piece, cutting off chips from what
will become the holebeingdrilled.Exceptionally,specially-shapedbitscancutholes of non-
circularcrosssection.Drilledholesarecharacterizedbytheirsharpedgeonthe
13
entrance side and the presence of burrs on the exit side (unless they have been removed).
Also, the inside of the hole usually has helical feed marks.
Drilling may affect the mechanical properties of the work piece by creating low
residual stresses around the hole opening and a very thin layer of highly stressed and
disturbed material onthenewly formedsurface.Thiscauses theworkpiecetobecome more
susceptible to corrosion at the stressed surface. A finish operation may be done to avoid the
corrosion. Zinc plating or any other standard finish operation of 14 to 20 µm can be done
which helps to avoid any sort of corrosion. When possible drilled holes should be located
perpendicular to the work piece surface. This minimizes the drill bit's tendency to
"walk",thatis,tobedeflected,whichcausestheholetobemisplaced.Thehigherthelength- to-
diameter ratio of the drill bit, the higher the tendency to walk.
3.1.3 WELDING
Welding is the process of joining similar metals by the application of heat, with or
without application of pressure or filler metal, in such a way that the joint is equivalent in
composition and characteristics of the metals joined. In the beginning, welding was mainly
used for repairing all kinds of worn or damaged parts. Now, it is extensively used in
manufacturingindustry, constructionindustry(constructionofships,tanks,locomotivesand
automobiles) and maintenance work, replacing riveting and bolting, to a greater extent.
ELECTRIC ARC WELDING Arc welding is the welding process, in which heat is
generated by an electric arc struck between an electrode and the work piece. Electric arc is
luminous electrical discharge between two electrodes through ionized gas.
14
Any arc welding method is based on an electric circuit consisting of the following
parts: a. Power supply (AC or DC); b. Welding electrode; c. Work piece; d. Welding leads
(electric cables) connecting the electrode and work piece to the power supply. Electric arc
between the electrode and work piece closes the electric circuit. The arc temperature may
reach 10000°F (5500°C), which is sufficient for fusion the work piece edges and joining
them. When a long joint is required the arc is moved along the joint line. The front edge of
the weld pool melts the welded surfaces when the rear edge of the weld pool solidifies
forming the joint.
3.2 POWERSUPPLY
Figure3.4.PowerSupply
Apowersupply(sometimesknownas a powersupplyunit orPSU)is adeviceor
system that supplies electrical or other types of energy to an output load or group of loads.
The term is most commonly applied to electrical energy supplies, less often to mechanical
ones, and rarely to others.
The transformer steps up or steps down the input line voltage and isolates the
power supply from the power line.
The final section, the REGULATOR, does just what the name implies. It
maintainstheoutputofthepowersupplyataconstantlevelinspiteoflarge changesinload current
or input line voltages. Now that you know what each section does, let's trace an ac signal
through the power supply. At this point you need to see how this signal is altered within
each section of the power supply. Later on in the chapter you will see how these changes
take place. In view B of figure 4-1, an input signal of 115 volts ac is applied to the
primaryofthetransformer.Thetransformerisastep-uptransformerwithaturnsratioof
15
1:3.Youcancalculatetheoutputforthistransformerbymultiplyingtheinputvoltagebythe ratio
ofturns in the primaryto theratio ofturns in the secondary; therefore, 115 volts ac´3
= 345 volts ac (peak-to- peak) at the output. Because each diode in the rectifier section
conductsfor180degreesofthe360-degreeinput,theoutputoftherectifierwillbeone-half, or
approximately 173 volts of pulsating dc. The filter section, a network of resistors,
capacitors, or inductors, controls the rise and fall time of the varying signal; consequently,
the signal remains at a more constant dc level. You will see the filter process more clearly
in the discussion of the actual filter circuits. The output of the filter is a signal of 110 volts
dc, with ac ripple riding on the dc. The reason for the lower voltage (average voltage) will
be explained later in this chapter. The regulator maintains its output at a constant 110-volt
dc level, which is used by the electronic equipment (more commonly called the load).
3.2.1 BATTERY
Figure3.5.Battery(12v)
The lead–acid battery was invented in 1859 by French physicist Gaston Planté andis
the oldest type of rechargeable battery. Despite having a very low energy-to-weight ratio
and a low energy-to-volume ratio, its ability to supply high surge currents means that the
cellshavearelativelylargepower-to-weightratio.Thesefeatures, alongwiththeirlowcost, makes
it attractive for use in motor vehicles to provide the high current required by automobile
starter motors.
power systems. For these roles, modified versions of the standard cell may be used to
improve storage times and reduce maintenance requirements. Gel-cells and absorbed glass-
matbatteriesarecommonintheseroles,collectivelyknownasVRLA(valve-regulatedlead- acid)
batteries.
Thelead–acidcellcanbedemonstratedusingsheetleadplatesforthetwoelectrodes.
However, such a construction produces only around one ampere for roughlypostcard-sized
plates, and for only a few minutes.
GastonPlantéfoundawaytoprovideamuchlargereffectivesurfacearea.InPlanté's
design, the positive and negative plates were formed of two spirals of lead foil, separated
withasheetofclothand coiledup.Thecellsinitiallyhadlowcapacity, soaslowprocessof
"forming" was required to corrode the lead foils, creating lead dioxide on the plates and
rougheningthemtoincreasesurfacearea. Initiallythisprocessusedelectricityfromprimary
batteries; when generators became available after 1870, the cost of production of batteries
greatlydeclined.Plantéplatesarestillusedinsomestationaryapplications,wheretheplates are
mechanically grooved to increase their surface area.
The positive plates are the chocolate-brown color of lead dioxide, and the negative
aretheslate-grayof"spongy"leadatthetimeofmanufacture.Inthischargedstatetheplates are
called "formed".
One of the problems with the plates is that the plates increase in size as the active
material absorbs sulfate from the acid during discharge, and decrease as they give up the
sulfate during charging. This causes the plates to gradually shed the paste. It is important
that there is room underneath the plates to catch this shed material. If it reaches the plates,
the cell short-circuits.
Review Protocol
Developmentand
set of eligibility
criteria
Methodological
quality
assessment Classification
FrameworkDefinition
Studies to
Studies
Framework
analysis
allocation
Figure3.6.Sensingand Perception
LidarSensors,InfraredSensors.
Integratesensorarraysforcomprehensiveenvironmentalperception.Develop
computer vision algorithms for object recognition and real-time data processing.
calibrate sensors for accuracy.
Vision Systems: Vision-based sensing systems use cameras and image processing
algorithms to capture visual data from the environment. They can detect objects, recognize
patterns, and estimate distances, shapes, and orientations. Vision systems are widely usedin
applications such as object detection, object tracking, gesture recognition, and autonomous
navigation.
LiDAR (Light Detection and Ranging): LiDAR systems emit laser beams and
measure the time it takes for the beams to reflect off objects in the environment. This
information is used to create detailed 3D maps of the surroundings, enabling precise
localization, obstacle detection, and navigation in both indoor and outdoor environments.
Ultrasonic Sensors: Ultrasonic sensors emit high-frequency sound waves and
measure the time it takes for the waves to bounce back after hitting objects. They are
commonlyused forproximitysensing, object detection, and collision avoidance in robotics
and automation applications.
19
Inertial Measurement Units (IMUs): IMUs combine accelerometers, gyroscopes,and
sometimes magnetometers to measure linear acceleration, angular velocity, and magnetic
field strength. IMUs are used for motion tracking, orientation estimation, and stabilization
in robotics, drones, and virtual reality systems.
Object Recognition and Classification: Perception algorithms analyze sensor data to
identify and classify objects in the environment. Machine learning techniques such as
convolutional neural networks (CNNs) are commonly used for object recognition tasks,
enabling robots to distinguish between different objects and understand their properties.
Mapping and Localization: Mapping algorithms combine sensor data to create maps
of the robot's surroundings, including obstacles, landmarks, and navigational features.
Localization algorithms use these maps, along with sensor data, to estimate the robot's
position and orientation relative to its environment. Simultaneous Localization and
Mapping (SLAM) is a popular technique used for real-time mapping and localization in
robotics.
Path Planning and Navigation: Perception algorithms analyze sensor data and
environmental maps to plan safe and efficient paths for robots to navigate from theircurrent
location to a desired destination. Path planning algorithms take into account factors such as
obstacles, terrain, dynamic obstacles, and motion constraints to generate collision- free
trajectories for the robot to follow.
Human-Robot Interaction: Perception algorithms enable robots to interact with
humans and understand human gestures, facial expressions, and speech commands.Human-
robot interaction algorithms use sensor data and machine learning techniques to interpret
human intentions, emotions, and behavior, facilitating natural and intuitive communication
between humans and robots.
GPSmodules,InertialMeasurementUnits (imus).
ImplementGPSforglobalpositioning.integrateimusforlocalnavigation.
Develop algorithms for path planning and obstacle avoidance. conduct
extensive testing for accuracy and reliability.
The robot is equipped with various sensors such as LiDAR, cameras, ultrasonic
sensors, or GPS to perceive its environment.LiDAR sensors provide 360-degree scans
of the surroundings, allowing the robot to detect obstacles, terrain features, and plant
rows.Cameras capture images of the environment, which are processed usingcomputer
vision algorithms to identify plants, weeds, and areas that require
wateringorcutting.Ultrasonicsensorsorproximitysensorshelptherobotdetectobstaclesor
20
navigatein closeproximityto plants without causing damage.
The robot uses simultaneous localization and mapping (SLAM) algorithms to
create a map of the field or garden while simultaneously determining its own position
within the map.SLAM combines data from sensors such as LiDAR and odometry to
estimate the robot's position and orientation relative to its surroundings.The map
generated by SLAM includes information about obstacles, plant locations, rows, and
other relevant features necessary for navigation and task execution.
Once the robot has a map of the environment and knows its position, it uses path
planning algorithms to generate a collision-free path from its current location to the
target areas for watering or cutting.Path planning takes into account factors such as
obstacle avoidance, terrain elevation, plant density, and the shape of the field or
garden.Trajectory generation algorithms convert the planned path into a series of
waypoints or motion commands that the robot can follow to navigate autonomously.
The robot's control system receives the trajectory commands generated by the
path planning algorithm and executes them to move the robot along the planned
path.The control system adjusts the robot's speed, steering, and actuator settings to
ensure smooth and accurate navigation.As the robot moves through the field orgarden,
it continuously updates its position based on sensor feedback and adjusts its trajectory
if necessary to avoid obstacles or deviations from the planned path.
Once the robot reaches the target areas for watering or cutting, it activates the
appropriate actuators or tools to perform the tasks.For watering, the robot may deploy
a sprayer or nozzle system to deliver water to the plants at the desired locations and in
the appropriate quantities.For cutting, the robot mayuse blades or cutting tools to trim
weeds or harvest crops according to predefined criteria or user instructions.
3.5 TASK-SPECIFICMODULES
SpecializedModulesForPlanting,Weeding,Harvesting,AndSpraying.
Designmodularinterfacesforeasyattachmentanddetachment.Develop
specialized tools for each module. Ensure compatibilitywith the robot's
mainframe.
Weed control modules are designed to automate the process of weed management in
agricultural fields.These modules may include mechanical weeders, robotic weeders, or
herbicide application systems equipped with sensorsand vision systems foridentifyingand
targeting weeds while minimizing damage to crops.Weed control modules help reduce
weed competition, decrease reliance on herbicides, and promote sustainable weed
management practices.
3.6 COMMUNICATIONSYSTEM
Wi-fimodules,cellularcommunicationmodules.
Integratecommunicationsystemsforreal-timedatatransmission.Developa
user-friendly interface for remote control and monitoring. Implement
encryption and security measures for data protection.
Informationandcommunicationtechnologyinagriculture(ICTinagriculture),also
known as e-agriculture, is a subset of agricultural technology focused on improved
information and communication processes. More specifically, e-agriculture involves the
conceptualization, design, development, evaluation and application of innovative ways to
useinformationandcommunicationtechnologies(ICTs)intheruraldomain,withaprimary
focusonagriculture.ICTincludesdevices,networks,mobiles,servicesandapplications;
22
3.7 SAFETYMEASURES
Emergencystop buttons, safetybarriers.
Implementsafetyfeaturestohaltoperationsincaseofmalfunctions.Conduct risk
assessments and incorporate fail-safe mechanisms. Adhere to safety
standards for agricultural robotics.
Agricultural
Environment
Sensors
MLAlgoritham
Actuators SpeedReduceand
change direction
CHAPTER 4
EXPERIMENTALSETUPANDPROCEDURE
Figure4.1.Multi-purposeagriculturalrobot
4.1 EXPERIMENTALSITESELECTION
Choosearepresentativeagriculturalfieldoracontrolledtestingenvironmentthat
mimics real-world conditions.
Ensuretheavailabilityofvariousterrains,obstacles,andcropsrelevanttothe
robot's intended use.
Choose a site that represents the typical environmental conditions and soil
characteristics of the target agricultural region. The site should be geographically
and topographically similar to the surrounding farmland to ensure that the results
can be extrapolated to real-world farming scenarios.
Assess the soil quality, texture, fertility, pH, and drainage characteristics of the
site.Soilsamplesshould beanalyzedfornutrientlevels,organicmattercontent,
24
and any potential soilborne pathogens or contaminants that may affect crop
growth and performance.
Consider the climate and weather patterns of the region, including temperature,
rainfall, humidity, sunlight, and wind conditions. Choose a site with climatic
conditions conducive to the growth and development of the crops or agricultural
practices being tested.
Gather information about the field's history, including previous crops grown, pest
and disease pressures, and management practices such as tillage, irrigation, and
fertilization. Understanding the field's history helps researchers assess potential
confounding factors and design appropriate experimental treatments.
Determine the plot size, layout, and replication scheme based on the experimental
design requirements. The site should have sufficient space to accommodate the
experimental treatments, control plots, and buffer zones to minimize edge effects
and ensure experimental integrity.
4.2 TASK-SPECIFICMODULEEVALUATION
Installtherelevanttask-specificmodules(e.g.,planting,weeding,harvesting)on the
robot.
Conduct tests for each module, assessing precision, accuracy, and overall
effectiveness.
Definewaypointsandobstacleswithintheexperimental site.
Test the robot's ability to autonomously navigate through the defined path,
avoiding obstacles.
4.4 CONTROLLER
Figure4.2.Arduinonanocontrollerconnection
The Arduino Nano is a small, versatile development board based on the ATmega328
microcontroller. It's similar to the Arduino Uno but in a smaller form factor, making it
ideal for projects with space constraints. The Nano has a total of 30 pins, each serving a
specific function.
Digital Pins (D0-D13): These pins can be used for both input and output operations.
They support digital signals, meaning they can only be in one of two states: HIGH (5volts)
or LOW (0 volts). Pins D0 to D13 are capable of digital input/output, PWM (Pulse Width
Modulation) output, and interrupt capability.
Analog Pins (A0-A7): These pins are primarily used for analog input. They can read
voltages between 0 and 5 volts and convert them into digital values using the built-in
analog-to-digital converter (ADC). Additionally, some of these pins also support digital
input/output and PWM output.
Power Pins:
5V:Thispinprovidesaregulated5-voltpowersupply,typicallyusedtopowerexternal components.
3.3V: This pin provides a regulated 3.3-volt power supply, suitable for powering low-power
sensors or modules.
28
Vin: This pin can be used to supplyan external voltage (typicallybetween 7 and 12 volts) to
the Arduino Nano, which is then regulated down to 5 volts.
GND (Ground): These pins are connected to the ground, providing a reference voltage for
circuits and ensuring proper electrical grounding.
Reset (RST): This pin is used to reset the microcontroller. Pulling this pin LOW
momentarily will reset the microcontroller, restarting the program execution from the
beginning.
SerialCommunication Pins:
RX (Receive): This pin is used to receive serial data from external devices or the
computer.
TX (Transmit): This pin is used to transmit serial data to external devices or the
computer.
SPI Pins (MOSI, MISO, SCK): These pins are used for SPI (Serial Peripheral
Interface) communication, which is a synchronous serial communication protocol
commonly used to communicate with SPI-compatible devices such as sensors, displays,
and SD cards.
I2C Pins (SDA, SCL): These pins are used for I2C (Inter-Integrated Circuit)
communication, a serial communication protocol commonly used for communication
between microcontrollers and peripherals like sensors, RTCs (Real-Time Clocks), and
EEPROMs.
Aref: This pin is the analog reference voltage. It can be used as the reference voltage
foranalog-to-digital conversion.
29
4.5 MOTORDRIVER
Figure4.3.PindiagramforMotorDriver
One of the primary functions of a motor driver is to regulate the voltage and current
supplied to the motor, ensuring that it operates within its safe operating limits. This involves
converting the low-power signals from the microcontroller into high-power signals capable
of driving the motor effectively. Additionally, motor drivers often incorporate features such
as pulse-width modulation (PWM) control, which allows for precise speed and direction
control by varying the duty cycle of the electrical signal supplied to the motor.
Power Stage: The power stage is responsible for delivering the necessaryelectrical power to
themotor.Itusuallyconsistsofpowertransistors (suchasMOSFETsorBJTs)configuredin an H-
bridge or similar topology. These transistors switch on and off to control the flow of current
through the motor windings, thereby controlling its speed and direction of rotation.
Driver Circuitry: The driver circuitry is responsible for controlling the switching of the
power transistors in the power stage. It typically consists of gate driver circuits that provide
the voltage and current necessaryto turn the power transistors on and off rapidly. The driver
circuitry interprets control signals from the microcontroller or control system and generates
the appropriate signals to drive the power transistors.
30
Current Sensing Circuitry: Many motor drivers include current sensing circuitry to monitor
the current flowing through the motor windings. This information is essential for various
purposes, including overcurrent protection, closed-loop control algorithms (such as current
control or torque control), and diagnostics. Current sensing can be accomplished using
techniquessuchasshunt resistors,Halleffectsensors,orintegrated current senseamplifiers.
Voltage Regulation: Motor drivers often incorporate voltage regulation circuitry to ensure
that the motor receives a stable and regulated voltage supply. This helps maintain consistent
motor performance and protects the motor from voltage spikes or fluctuations in the power
supply. Voltage regulation may involve the use of linear regulators, switching regulators, or
integrated voltage regulation circuits.
4.6 COMMUNICATIONSYSTEMTESTING
Testreal-timedatatransmission,remotecontrolcapabilities,andresponse time.
Evaluatethesystem'srobustnessinmaintainingcommunicationunderdifferent
environmental conditions.
#defineledPin13
int state = 0;
void setup()
{pinMode(ledPin,OUTPUT)
; digitalWrite(ledPin,
LOW); Serial.begin(9600);
}
voidloop(){
if(Serial.available()>0){//Checkswhetherdataiscomingfromtheserialport state =
Serial.read(); // Reads the data from the serial port
}
if(state=='0'){
digitalWrite(ledPin,LOW);//TurnLEDOFF
state = 0;
}
else if (state == '1') {
digitalWrite(ledPin,HIGH);
state = 0;
}
}
int state = 0;: This line declares an integer variable named state and initializes it to 0. This
variable will store the state of the LED (0 for off, 1 for on).
void setup(): This function runs once when the Arduino is powered on or reset. It's
usedfor initializing variables, pin modes, starting serial communication, etc.
pinMode(ledPin,OUTPUT);:ThislinesetstheLEDpin(ledPin)asanoutputpin,indicating that
the Arduino will be controlling the LED connected to it.
digitalWrite(ledPin, LOW);: This line initially sets the LED pin to a low voltage, turning
the LED off.
void loop(): This function continuously executes the code inside it as long as the Arduino
is powered on.
if(Serial.available() > 0){ ... }: This condition checks if there's data available to read from
the serial port. If there's data available, it proceeds to the next line.
state = Serial.read();: This line reads the data from the serial port and stores it in the state
variable. The received data determines whether to turn the LED on or off.
if (state == '0') { ... }: This condition checks if the value of state is equal to the character'0'
(ASCII value of 0). If true, it turns the LED off by setting the LED pin to low voltage
(LOW) and resets the state variable to 0.
else if (state == '1') { ... }: This condition checks if the value of state is equal to the
character '1'(ASCIIvalueof1). Iftrue,itturnsthe LEDon bysettingthe LEDpintohigh voltage
(HIGH) and resets the state variable to 0.
4.6.2 PROGRAMFORRGBLEDCONTROL
#defineredPin9
#definegreenPin10
#definebluePin11
voidsetup(){
//SetthepinsforRGBLEDasOUTPUT
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
Serial.begin(9600);//DefaultcommunicationrateoftheBluetoothmodule
setColor(037,166,154); // Default Color
}
void loop(){
if(Serial.available()){
Stringcommand=Serial.readStringUntil('\n');
command.trim();
//CheckthereceivedcommandandupdatetheLEDcoloraccordingly if
(command.length() == 9) {
//Extract theRGBvalues from thecommand
34
int redValue = command.substring(0, 3).toInt();
intgreenValue=command.substring(3,6).toInt();
int blueValue = command.substring(6).toInt();
//Setthe LEDcolor
setColor(redValue,greenValue,blueValue);
}
}
}
voidsetColor(intred,intgreen,intblue){
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}
#define redPin 9, #define greenPin 10, #define bluePin 11: These lines define constantsfor
the pin numbers to which the RGB LED's red, green, and blue terminals areconnected,
respectively.
void setup(): This function runs once when the Arduino is powered on or reset. It's used
for initializing variables, pin modes, starting serial communication, etc.
pinMode(redPin, OUTPUT); pinMode(greenPin, OUTPUT); pinMode(bluePin,
OUTPUT);: These lines set the RGB LED pins as output pins, indicating that the Arduino
will be controlling the LED.
Serial.begin(9600);: This line initializes serial communication with a baud rate of 9600
bits per second. It prepares the Arduino to communicate with other devices or softwarevia
the serial port.
setColor(37, 166, 154);: This line sets the default color of the RGB LED to RGB(37, 166,
154), which corresponds to a shade of cyan.
void loop(): This function continuously executes the code inside it as long as the Arduino
is powered on.
if (Serial.available()) { ... }: This condition checks if there is any data available to be read
from the serial port. If data is available, it proceeds to the next block of code.
int redValue = command.substring(0, 3).toInt();: This line extracts the first 3 characters
from the command String and converts them to an integer representing the red value ofthe
LED color.
int greenValue = command.substring(3, 6).toInt();: This line extracts the next 3 characters
from the command String and converts them to an integer representing the green value of
the LED color.
setColor(redValue, greenValue, blueValue);: This line calls the setColor() function with
the extracted red, green, and blue values as arguments to set the LED color accordingly.
void setColor(int red, int green, int blue): This is a custom function defined to set theRGB
LED color based on the provided red, green, and blue values.
analogWrite(redPin, red);: This line sets the brightness of the red LED by using PWM
(Pulse Width Modulation) to control the voltage applied to the redPin.
analogWrite(greenPin, green);: This line sets the brightness of the green LED in a similar
manner.
analogWrite(bluePin, blue);: This line sets the brightness of the blue LED in a similar
manner.
36
4.6.3 PROGRAMFORSWITCHCONTROL
voidsetup(){
Serial.begin(9600);//Setthebaudrateforserialcommunication pinMode(RELAY1_PIN,
OUTPUT);
pinMode(RELAY2_PIN,OUTPUT);
pinMode(RELAY3_PIN,OUTPUT);
}
void loop(){
if(Serial.available()){
Stringcommand=Serial.readString();//Readtheincomingcommandasa string
const int RELAY1_PIN = 2;, const int RELAY2_PIN = 3;, and const int RELAY3_PIN =
4;: These lines define constants for the pin numbers to which the relay modules are
connected.
SetupFunction:
You can add custom commands and their corresponding actions by adding more else if
conditions in the code. For example, else if (command == "YOUR COMMAND1") { ... }
and else if (command == "YOUR COMMAND2") { ... } demonstrate placeholders for
custom commands and their respective actions.
4.6.4 PROGRAMFORGAMEPAD
voidsetup(){
Serial.begin(9600);//Setthebaudrateforserialcommunication
//Initialize anyother necessarysetup codehere
}
void loop(){
if(Serial.available()){
charcommand=Serial.read();
executeCommand(command);
}
38
//Continuewithothertasksinyourmain loop
}
voidexecuteCommand(charcommand){
switch (command) {
caseFORWARD:
//Performactionformovingforward break;
caseBACKWARD:
//Performactionformovingbackward
break;
caseLEFT:
//Performactionforturningleft
break;
caseRIGHT:
//Performactionforturningright
break;
caseCIRCLE:
//Performactionforcircle break;
caseCROSS:
//Performactionforimmediatestoporcrossing
break;
caseTRIANGLE:
//Performactionfortogglingastate(e.g.,LEDon/off) break;
caseSQUARE:
//Performactionforretrievingandsendingstatusinformation break;
caseSTART:
//Performactionforstartingaprocessoroperation break;
casePAUSE:
//Performactionforpausingaprocessoroperation break;
default:
//Invalidcommandreceived
break;
}
}
#define FORWARD 'F': Defines the character 'F' as the command for moving forward.
Similarly,othercommandslikeBACKWARD,LEFT,RIGHT,CIRCLE,CROSS,
TRIANGLE, SQUARE, START, and PAUSE are defined.
SetupFunction:
Serial.begin(9600);: Initializes serial communication with a baud rate of 9600 bits per
second. This prepares the Arduino to communicate with external devices or software via
the serial port.
LoopFunction:
39
Checksif thereis anydataavailable toread from the serial port usingSerial.available().
If data is available, it reads a character from the serial input using Serial.read() and
storesit in the command variable.
Then,itpassesthereceivedcommandcharactertotheexecuteCommandfunction. Execute
Command Function:
Takesacharactercommandasinputandperformsactionsbasedonthereceived command.
Usesaswitchstatementtocheckthevalueofcommandandexecutethecorresponding actions.
Each case corresponds to a specific command (e.g., FORWARD, BACKWARD,
LEFT,etc.).
Insideeachcase,youcanwritecodetoperformthedesiredactionassociatedwiththe command.
The break; statement is used to exit theswitch statement after executingthe corresponding
action.
If an invalid command is received (i.e., not matching any defined commands), the default
case is executed, which can handle the error or perform other necessary actions.
4.7 USERINTERFACEANDCONTROLTESTING
Test the robot's responsiveness to user commands and the clarity of feedback.
User interface (UI) and control testing are crucial aspects of software development,
ensuring that applications meet user expectations, function correctly, and provide a
seamless experience. In this comprehensive guide, we will delve into the key principles,
methodologies, tools, and best practices for conducting UI and control testing. By theend
of this discussion, you will have a thorough understanding of how to effectively test user
interfaces and control functionalities to deliver high-quality software products.
User interface (UI) testing focuses on verifying the visual elements, layout,
responsiveness, and usability of software interfaces, while control testing involves
validating the functionality, behavior, and interactions of user controls such as buttons,
input fields, dropdowns, and navigation menus.UI and control testing are essential for
ensuringthatsoftwareapplicationsareintuitive,accessible,anduser-friendly,meeting
40
theneedsandexpectationsofend-usersacrossdiversedevices,platforms,andenvironments.
Outcomes:ThroughrigorousUIandcontroltesting,theteamidentifiesandresolves
usability issues, accessibility barriers, and functional defects, resulting in a highly
functional, user-friendly e-commerce application ready for deployment.
Conclusion and Future Directions:UI and control testing are essential aspects of
software quality assurance, ensuring that applications meet user expectations, functional
requirements, and usability standards.By adopting best practices, leveraging automation
tools, and embracing user-centric design principles, organizations can deliver high-
quality software products with intuitive, accessible, and responsive user interfaces and
controls.Continuous improvement and innovation in UI and control testing
methodologies, tools, and techniques are essential to address emerging challenges, such
as dynamic web technologies, mobile app development, and IoT (Internet of Things)
integration.In conclusion, UI and control testing are integral components of the software
development lifecycle, contributing to the success and adoption of software applications
across diverse industries and domains
4.8 SAFETYTESTING
Integratesafetyfeaturessuchasemergencystopbuttons.
Evaluatetherobot'sresponsetounexpectedeventsanditsabilitytohalt
operations safely.
The first step in safety testing is to identify potential hazards associated with the
product. This involves conducting a comprehensive risk assessment to analyze the
system's components, operation, and potential failure modes. Hazards may include
electrical hazards, mechanical hazards, chemical hazards, fire hazards, ergonomic
hazards, and more. By systematically identifying hazards, developers can prioritize
safety measures and testing procedures to address the most significant risks.
Once hazards are identified, safety testing involves evaluating the product's design,
materials, components, and operating procedures to assess safety risks and determine
compliancewithrelevantsafetystandardsandregulations.Thisevaluationmay
42
includetesting for electrical safety, mechanical safety, thermal safety, radiation safety,
electromagnetic compatibility (EMC), and other safety criteria. Testing methods may
vary depending on the nature of the product and the applicable safety standards, such
as functional testing, stress testing, environmental testing, and destructive testing.
Safety testing is not a one-time activity but an ongoing process that continues
throughout the product lifecycle. As technologies evolve, new hazards emerge, and
safety standards are updated, developers must remain vigilant and proactive in
addressing safety concerns. Continuous improvement involves monitoring safety
performance,collectingfeedbackfromusersandstakeholders,conductingpost-market
surveillance, and incorporating lessons learned into future product iterations. By
embracing a culture of safetyand continuous improvement, organizations can enhance
the safety and
4.9 ITERATIVETESTINGANDREFINEMENT
Basedontheresultsofinitialexperiments,refinetherobot'sdesignand
algorithms.
Conductiterativetestingtovalidateimprovementsandensurecontinuous
enhancement.
Iterative testing involves breaking down the development process into smaller cycles
oriterations,eachfocusingonspecificfeaturesorfunctionalitiesoftheproject.
43
During each iteration, the developed features are tested rigorously to identify any
defects, bugs, or inconsistencies. This testing can encompass various techniques,
including unit testing, integration testing, system testing, and user acceptance testing.
Refinement refers to the process of improving or enhancing the project based on the
insights gained from iterative testing. It involves analyzing testing results, identifying
areas for improvement, and implementing changes to address any issues or
deficiencies. Refinement may include code refactoring, performance optimization,
usability enhancements, or design modifications.
Iterative testing and refinement are crucial stages in the development process of any
project, especially when it involves complex systems like software, hardware, or a
combination of both. This iterative approach allows for continuous improvement and
ensures that the final product meets the desired specifications and quality standards.
Figure4.4.BluetoothModule
When the module is at the order-response work mode, user can send the AT command to
the module to set the control parameters and sent control order. The work mode of
module can be switched by controlling the module PIN (PIO11) input level.
44
A Bluetooth module is a compact electronic device that enables wireless communication
between electronic devices over short distances. It utilizes Bluetooth technology, a
standardized wireless protocol for exchanging data over short distances using radio
waves. Bluetooth modules arecommonlyused in various applications, includingwireless
data transfer, remote control, IoT (Internet of Things) projects, and wireless sensor
networks. Here's an overview of the key features and components of a typical Bluetooth
module:
Interface Pins: Bluetooth modules usually feature a set of interface pins or connectors for
connecting to external devices or microcontrollers. Common interface options include
UART (Serial), SPI (Serial Peripheral Interface), and I2C (Inter-Integrated Circuit),which
facilitate communication with microcontrollers and other peripherals.
Power Supply: Bluetooth modules require a power supply to operate. They typically
support a wide range of input voltages (e.g., 3.3V or 5V) and consume varying amounts
of power depending on the module's specifications and operating modes.
Bluetooth Profiles: Bluetooth modules often support various Bluetooth profiles, which
define specific functionalities and application scenarios. Common profiles include Serial
Port Profile (SPP) for serial communication, Advanced Audio Distribution Profile
(A2DP)forstreamingaudio,andHuman InterfaceDeviceProfile(HID)forinputdevices like
keyboards and mice.
PairingandSecurity:Bluetoothmodulessupportpairing,aprocessinwhichtwodevices
45
establish a secure connection and exchange encryption keys. Pairing ensures that only
authorized devices can communicate with each other, enhancing data security and
privacy.
Range and Data Rate: The range and data rate of a Bluetooth module depend on factors
such as the Bluetooth version, power output, antenna design, and environmental
conditions. Bluetooth modules typically have a range of several meters to tens of meters
and support data rates ranging from kilobits per second to megabits per second.
Interference: Bluetooth operates in the 2.4 GHz ISM (Industrial, Scientific, and
Medical) band, which is shared with other wireless technologies such as Wi-Fi, Zigbee,
and microwave ovens. As a result, Bluetooth signals can be subject to interference from
these other devices operating in the same frequency band. This interference can degrade
signal quality and reliability, leading to potential packet loss or communication errors.
Data Rate: While Bluetooth technology has evolved over the years to support
higherdatarates,itmaystillbeslowercomparedtootherwirelesstechnologiessuchas
47
Wi-Fi or Zigbee. The maximum data rate of Bluetooth depends on the Bluetooth version
and the specific profiles and protocols used. For applications requiring high-speed data
transfer, such as video streaming or file sharing, Bluetooth may not be the most suitable
choice.
CHAPTER
5BLOCKDIAGRA
Figure5.1.BlockDiagramforMulti-purposeAgricultureRobot
49
CHAPTER6
RESULT
Assemble the robot by mounting motors, sensors, and other components onto the chassis.
Ensure proper alignment and secure connections.Connect electrical components following a
schematic diagram, ensuring proper insulation and routing to avoid interference.Develop
software for controlling the robot’s movements and operations. This involves writing code
for motor control, sensor data processing, and implementing algorithms for navigation and
task execution.
CONCLUSIONANDFUTURESCOPE
The development and testing of the Multi-Purpose Agriculture Robot have yielded
significantinsightsanddemonstrateditspotentialasatransformativetoolinmodernfarming
practices. The integration of advanced technologies, modular design, and autonomous
capabilitieshasproventoenhanceefficiency,productivity,andsustainabilityinagriculture.
Throughout the experimental phases, the robot showcased robust mobility across
various terrains, precise execution of task-specific modules, and efficient energy
consumption. The autonomous navigation algorithms exhibited a commendable ability to
navigate through fields, avoiding obstacles and optimizing paths. The real-time
communicationsystemanduserinterfacecontributedtotheseamlessintegrationoftherobot into
existing farming workflows.
While the current iteration of the Multi-Purpose Agriculture Robot has shown great
promise, there are several avenues for future development and enhancement.
Incorporate machine learning algorithms to enable the robot to adapt and learn from
different field conditions over time, improving its decision-making capabilities.
1. Design and fabrication of solar powered remote controlled all terrain sprayer andmower
robot Sri Tarun Ayyagari, Sharan Kumar KizhakkeErakkat, Srikanth TS,
ManichandraNeeratiarXiv preprint arXiv:2106.05236, (2023).
2. Development of a multi-purpose autonomous differential drive mobile robot for plant
phenotyping and soil sensing Jawad Iqbal, Rui Xu, Hunter Halloran, Changying Li
Electronics 9 (9), 1550 (2022).
3. Manik Rakhra, Arun Singh, Taha Fadhaeel, Ahmed Al Ahdal, Nitin Pandey Design,
Fabrication, and Implementation of an Agriculture robot, 10th International Conference
on Reliability, Infocom Technologies and Optimization (Trends and Future
Directions)(ICRITO), 1-6 (2022).
4. Design Fabrication And Analysis Of A Multi-Operating Agricultural Robot With A
Renewable Energy Source Akshay Dilip Anjikar, Tushar Umesh Tembhare, Amey Anil
PunjeInternational Research Journal of Modernization in Engineering Technology and
Science, (2022).
5. Actuators and sensors for application in agricultural robots: A review Dongbo Xie,
Liang Chen, Lichao Liu, Liqing Chen, Hai Wang Machines 10 (10), 913, (2022).
6. Development status and trend of agricultural robot technology Yucheng Jin, Jizhan Liu,
Zhujie Xu, Shouqi Yuan, Pingping Li, Jizhang Wang International Journal of
Agricultural and Biological Engineering 14 (4), 1-19, (2021).
7. Design and analysis of photovoltaic powered battery-operated computer vision-based
multi-purpose smart farming robot Aneesh A Chand, Kushal A Prasad, Ellen Mar,
Sanaila Dakai, Kabir A Mamun, FR Islam, Utkal Mehta, Nallapaneni Manoj Kumar
Agronomy 11 (3), 530, (2021).
8. A multipurpose agricultural robot for automatic ploughing, seeding and plant health
monitoring R Chandana, M Nisha, B Pavithra, S Sumana, RN Nagashree International
Journal of Engineering Research & Technology (IJERT), IETE–Conference 8, 57-60,
(2020).
9. Solar powered autonomous multipurpose agricultural robot using bluetooth/android app
B Ranjitha, MN Nikhitha, K Aruna, BT Venkatesh Murthy 2019 3rd International
conference on Electronics, Communication and Aerospace Technology (ICECA), 872-
877, (2019).
10. Marek,G.W.,Gowda,P.H., Marek,T.H.,Porter,D.O., Baumhardt,R.L.,&Brauer,
D.K.Modelinglong-termwateruseofirrigatedcroppingrotationsintheTexasHigh Plains
using SWAT.IrrigationScience, 35(2), 111-123 (2017).
11. Navarro-Hellín, H., Martínez-del-Rincon, J., Domingo-Miguel, R., Soto-Valles, F., &
Torres-Sánchez, R . A decision support system for managing irrigation in agriculture.
Computers and Electronics in Agriculture, 124, 121-131 (2016).
12. Nilson, K., Sharmila, G., & Kumar, P. P. Intelligent Auto Irrigation System Using
ARM Processor and GSM. In International Conference on Innovative Trends in
Electronics Communication and Applications (pp. 36-40) (2015).
52
53