In today’s world, we all are relying on farmers. But anyone knows who farmers rely on? Nobody, they suffer from various irrigation difficulties like over-irrigation, under irrigation, depletion of underwater, floods, etc.
To overcome some of the problems we are trying to make a project which can help farmers to overcome the difficulties.
Over irrigation occurs because of poor distribution or the lack of management wastes water, chemicals, and may lead to water pollution.
Under irrigation is giving only just enough water for the plant which gives poor soil salinity which leads to increased soil salinity with a consequent build-up of toxic salts in soil surface in areas with high evaporation. This requires either leaching to remove these salts and a method of drainage to carry the salts away. To overcome these irrigation difficulties we have made a project by the use of IoT (internet of things) and ML (machine learning). The hardware consists of various sensors like temperature sensor, humidity sensor, ph sensor, pressure sensor operated by raspberry pi module and bolt IOT module.
Our temperature sensor will predict the weather condition of that area through which farmer will make less use of water in the fields.
Our ph sensor will sense the ph of the soil at a regular interval and predict whether that soil needs more water or not.
Our main target is to make an irrigation system automatically and to save water for the future purpose.
2. CURRENT TRENDSThe current trends in the smart irrigation market include the following techniques which are:
• Drip Irrigation: allows for precise control of the application of water and fertilizer, which can greatly reduce the amount of water needed for crop irrigation.
• Measuring Water Flow: Precise measurement of water usage with water flow meters can prevent overwatering and reduce costs for farmers.
• Data Analytics: New software products that crunch large amounts of data can provide farmers with important information that they previously didn’t have access to.
• Drilling More Wells: Farmers are relying more on groundwater sources for irrigation and as the water table falls due to unsustainable levels of pumping,
3. HARDWARE USED3.1 ARDUINO MEGA 2560:The Arduino Mega 2560 is a microcontroller board based on the ATMEGA 2560. It has 54 digital input/output pins (of which 15 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.
The Arduino MEGA 2560 is designed for projects that require more I/O lines, more sketch memory and more RAM. It is the recommended board for 3D printers and robotics projects. This gives our projects plenty of room and opportunities maintaining the simplicity and effectiveness of the Arduino platform. The Arduino Mega 2560 is programmed using the Arduino Software (IDE).
A temperature sensor is a device, usually an RTD (resistance temperature detector) or a thermocouple, that collects the data about temperature from a particular source and converts the data into anunderstandable form for a device or an observer. Temperature sensors are used in many applications like HV and AC system environmental controls, food processing units, medical devices, chemical handling and automotive under the hood monitoring and control systems, etc.
There are different types of temperature sensors that have sensing capacity depending upon their range of application. Different types of temperature sensors are as follows:
• Thermocouples
• Resistor temperature detectors (RTD)
• Thermistor
3.3 BOLT IOT KIT:The Bolt Cloud API provides an interface for communication between the Bolt devices and any 3rd party system e.g. mobile application, web server, python programs etc. The API contains very intuitive control, monitoring, communication and utility functions for the Bolt Devices connected to your account. The Bolt Cloud API uses HTTP protocol for communication and uses the HTTP GET and HTTP POST methods. Hence users can execute actions and retrieve information from Bolt devices programmatically using conventional HTTP requests.
Here are a few use cases of the API:
● Use the API in native apps on IOS and Android to control and monitor Bolt devices over the Internet.
● Pull collect sensor data connect to Bolt device, to any other cloud to run your custom AI algorithms and analytics.
● Connect Bolt Cloud to any VPS (Virtual Private Server) and run your code in any language of your choice.
3.4 LIGHT SENSOR:A LightSensor generates an output signal indicating the intensity of light by measuring the radiant energy that exists in a very narrow range of frequencies basically called “light”, and which ranges in frequency from “Infra-red” to “Visible” up to “Ultraviolet” light spectrum.
The light sensor is a passive device that converts this “light energy” whether visible or in the infrared parts of the spectrum into an electrical signal output. Light sensors are more commonly known as “Photoelectric Devices” or “Photo Sensors” because of the convert light energy (photons) into electricity (electrons).
3.5 WATER LEVEL SENSOR:Level sensors are used to detect the level of substances that can flow. Such substances include liquids, slurries, granular material and powders. Level measurements can be done inside containers or it can be the level of a river or lake. Such measurements can be used to determine the number of materials within a closed container or the flow of water in open channels.
A rain sensor or rain switch is a switching device activated by rainfall. There are two main applications for rain sensors. The first is a water conservation device connected to an automatic irrigation system that causes the system to shut down in the event of rainfall. The second is a device used to protect the interior of an automobile from rain and to support the automatic mode of windscreen wipers. An additional application in professional satellite communications antennas is to trigger a rain blower on the aperture of the antenna feed, to remove water droplets from the cover that keeps pressurized and dry air inside the waveguides.
A servo motor is a rotary actuator or linear actuator that allows for precise control of angular or linear position, velocity and acceleration. It consists of a suitable motor coupled to a sensor for position feedback. It also requires a relatively sophisticated controller, often a dedicated module designed specifically for use with servomotors. Servomotors are used in applications such as robotics, CNC machinery or automated manufacturing.
Our main motive of servo here is to show the implementation of the valve in motor for the pipeline.
The Internet of things (IoT) is the extension of Internet connectivity into physical devices and everyday objects. Embedded with electronics, Internet connectivity, and other forms of hardware (such as sensors), these devices can communicate and interact with others over the Internet, and they can be remotely monitored and controlled.
The definition of the Internet of things has evolved due to the convergence of multiple technologies, real-time analytics, machine learning, commodity sensors, and embedded systems. Traditional fields of embedded systems, wireless sensor networks, control systems, automation (including home and building automation), and others all contribute to enabling the Internet of things. In the consumer market, IoT technology is most synonymous with products pertaining to the concept of the "smart home", covering devices and appliances (such as lighting fixtures, thermostats, home security systems and cameras, and other home appliances) that support one or more common ecosystems, and can be controlled via devices associated with that ecosystem, such as smartphones and smart speakers.
4.2 Machine Learning:Machine learning (ML) is the scientific study of algorithms and statistical models that computer systems use to perform a specific task without using explicit instructions, relying on patterns and inference instead. It is seen as a subset of artificial intelligence. Machine learning algorithms build a mathematical model based on sample data, known as "training data", in order to make predictions or decisions without being explicitly programmed to perform the task. Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop a conventional algorithm for effectively performing the task.
Machine learning is closely related to computational statistics, which focuses on making predictions using computers. The study of mathematical optimization delivers methods, theory and application domains to the field of machine learning. Data mining is a field of study within machine learning and focuses on exploratory data analysis through unsupervised learning. In its application across business problems, machine learning is also referred to as predictive analytics.
4.3 VPS (Virtual Private Server):A virtual private server (VPS) is a virtual server that the user perceives as a dedicated/private server even though it is installed on a physical computer running multiple operating systems. A virtual private server is also known as a virtual dedicated server (VDS). The concept of a virtual private server can be better explained as a virtual machine that caters to the individual needs of a user just as a separate physical computer that is dedicated to a particular user. The virtual dedicated server provides the same functionality and privacy as that of a normal physical computer. A number of virtual private servers can be installed on a single physical server with each one running its own operating system.
Virtual private servers connect shared Web hosting services and dedicated hosting services by filling the gap between them. Because virtual dedicated servers can have their own copy of the operating system. VPS provides the user with super-user privileges in the operating system. VPS enables the user to install any kind of software that is capable of running on that operating system. On the virtual private server we are installing Ubuntu which contains a wide range of software that includes LibreOffice, Firefox, Thunderbird, Transmission, and several lightweight software. Ubuntu builds on the Debian architecture and infrastructure and collaborates widely with Debian developers, but there are important differences. Ubuntu has a distinctive user interface, a separate developer community (though many developers participate in both projects) and a different release process.
4.4 Bolt library:Bolt is a C++ template library optimized for GPUs. Bolt is designed to provide high-performance library implementations for common algorithms such as scan, reduce, transform, and sort. The Bolt interface was modelled on the C++ Standard Template Library (STL). Developers familiar with STL will recognize many of the Bolt APIs and customization techniques.
C++ templates can be used to customize the algorithms with new types (for example, the Bolt sort can operate on ints, float, or any custom type defined by the user). Additionally, Bolt lets users customize the template routines using function objects (functors) written in OpenCL ™ for example, to provide a custom comparison operation for sort, or a custom reduction operation.
Bolt can directly interface with host memory structures such as std::vector or host arrays (e.g. float*). On today's GPU systems, the host memory is mapped or copied automatically to the GPU. On future systems that support the Heterogeneous System Architecture, the GPU will directly access the host data structures. Bolt also provides a bolt::cl::device_vector that can be used to allocate and manage device-local memory for higher performance on discrete GPU systems. Bolt APIs can accept either host memory or the device vector.
5 CODE:7. ALGORITHM DEVELOPED
Step 1: Start
Step 2: Mode select
Step 3: If MANUAL ON then SERVO ON
Step 4: End
SCENARIO 2Step 1: Start
Step 2: Mode select
Step 3: if MANUAL OF then SERVO OFF
Step 4: End
SCENARIO 3Step 1: Start
Step 2: Mode select
Step 3: If Auto
Step 4: Select LEVEL SENSOR
Step 5: Is LEVEL SENSOR FULL
Step 6: YES
Step 7: SERVO OFF
Step 8: END
SCENARIO 4Step 1: Start
Step 2: Mode select
Step 3: If Auto
Step 4: Select LEVEL SENSOR
Step 5: Is LEVEL SENSOR FULL
Step 6: NO
Step 7: Select RAIN SENSOR
Step 8: Is RAIN SENSOR FULL
Step 9: YES
Step 10: SERVO OFF
Step 11: END
SCENARIO 5Step 1: Start
Step 2: Mode select
Step 3: If Auto
Step 4: Select LEVEL SENSOR
Step 5: Is LEVEL SENSOR FULL
Step 6: NO
Step 7: Select RAIN SENSOR
Step 8: Is RAIN SENSOR FULL
Step 9: NO
Step 10: SERVO ON
Step 11: END
All of the above scenarios have been defined to explain the different cases that our algorithms can produce in different kind of conditions which would affect the overall condition of our systems.
However, in any case, the above objectives are followed and the turning on or off the servo motor depends totally on the cases that are forming or the mode that has been selected.
8. IMPLEMENTATION:We are basically using machine learning in conjunction with IoT in our project to accomplish the task which involves the transfer and proper communication of data point.
Since we are using the IoT technology here for ensuring the connectivity and with this use of IoT comes a lot of data and for the proper handling and analysis purposes, we are employing Machine learning algorithms here.
We are employing the following algorithms here:
8.1. POLYNOMIAL REGRESSIONPolynomial Visualizer is a popular data analytics/ML algorithm which helps fit a non-linear curve to a given data-set. The trend can be then used to understand where other data points might lie. The Visualizer aims to help you decide whether Polynomial Visualizer is the right way to go for their ML system, and in case the model works for the data, the Visualizer helps to find the best possible parameters to use with the Visualizer model.
Data (t) = (Cn*tn) + (Cn-1*tn-1) + (Cn-2*tn-2) + …………… (C1*t1) + C0
8.2 ANOMALY DETECTIONAnomaly detection is the process of identifying unexpected items or events in data sets, which differ from the norm.
In basic graph visualizations anomaly can be easily detected using thresholds being defined
Ie.
But what about the visualizations where thresholds cannot be set.
Z-score Analysis is a technique used for anomaly detection.
Basically, Z-score is used to compute bounds ie. Upper and lower bounds for the given plotted data.
This can be calculated using:
Comments