Jayasree Be
Jayasree Be
Jayasree Be
A PROJECT REPORT
Submitted by
of
BACHELOR OF ENGINEERING
IN
MARCH 2023
1
ANNA UNIVERSITY: CHENNAI 600 025
BONAFIDE CERTIFICATE
SIGNATURE SIGNATURE
Dr.N.GANGATHARAN Mr. P. SATHYA RAJ
HEAD OF THE DEPARTMENT ASSISTANT PROFESSOR
Department of Electronics and Department of Electronics and
Communication Engineering Communication Engineering
R.M.K College of Engineering R.M.K College of Engineering
and Technology,R.S.M Nagar, and Technology,R.S.M Nagar,
Puduvoyal, Puduvoyal,
Tiruvallur – 601206 Tiruvallur – 601206
2
ACKNOWLEDGEMENT
Last, but not the least, we take this opportunity to thank all the staff
members of the Department of Electronics and Communication
Engineering. Regards to our family, classmates and friends who offered an
unflinching moral support for completion of this project.
3
ABSTRACT
4
TABLE OF CONTENTS
ABSTRACT iv
LIST OF FIGURES vii
LIST OF ABBREVIATIONS viii
LIST OF TABLES ix
1. INTRODUCTION la
1.1 INTRODUCTION 1
1.2 SCOPE OF THE PROJECT 1
1.3 EXISTING SYSTEM 2
1.3.1 Disadvantages 2
1.4 PROPOSED SYSTEM 2
1.4.1 Advantages 2
2. LITERATURE SURVEY 3
3. PROJECT DESCRIPTION 7
3.1 INTRODUCTION 7
3.2 BLOCK DIAGRAM 8
3.3 MODULES 9
3.4 MODULE DESCRIPTION 9
3.4.1 Field Monitoring
9
3.4.2 Transmitting Data 10
3.4.3 Monitoring On Control Room 11
5
3.5 BLOCK DIAGRAM DESCRIPTION 11
5. OUTPUT 71
5.1 OUTPUT 71
6. FUTURE ENHANCEMENT 72
6.1 APPLICATIONS 72
6.2 ADVANTAGES 72
6.3 CONCLUSION 72
REFERENCES 74
6
LIST OF TABLES
1. Technical Specifications 14
2. Functions of LCD 17
3. Command Codes of LCD 18
4. ESP-12E Pin description 21
5. Interfaces 55
7
LIST OF FIGURES
8
LIST OF ABBREVATION
9
CHAPTER 1
INTRODUCTION
1.1 GENERAL
1
1.3 EXISTING SYSTEM
The response of the sensor information is very slow and not easy
to monitor the agriculture field.
In proposed system all the data’s passed through soil and get
transmitted through sensor networks and applied in
underground infrastructure based monitoring system.
2
CHAPTER 2
LITERATURE SURVEY
4
exploiting well-coupled and matched acoustic sources, wireless digital
communication was successful in both laboratory and field experiments,
illustrating the viability of sending application-specific data, ranging from
binary sensor readings to low-resolution images
5
The potential application of wireless underground sensor networks
requires precision and accuracy in their network communication. Hence
analysis of wireless channel parameters is required for reliable
communication. The simulation of path loss parameter for different types
of soil with respect to the frequency of sensor nodes and distance between
sensor nodes has been analyzed. Furthermore, RSSI has been analyzed for
ZigBee S8 wireless sensor nodes for UG-AG and AG-UG communication
link. The packet error rate is zero for internode distance up to 165 cm for
underground communication. The results will be helpful to apply in real
time practical implementation of any wireless underground sensor
networks.
6
CHAPTER 3
PROJECT DESCRIPTION
3.1 INTRODUCTION
7
3.2 BLOCK DIAGRAM
TRANSMITTER SECTION:
POWER
SUPPLY
SOIL
MOISTURE
ARDUINO UNO LCD
DHT 11
RECEIVER SECTION:
POWER
SUPPLY
SOIL DATA
RX LCD
8
3.3 MODULES
FIELD MONITORING
TRANSMITTING DATA
MONITORING BY FARMER
POWER SUPPLY
WATER
LEVEL
SOIL
SENSOR ARDUINO
UNO
DHT11
9
3.4.2 Transmitting Data
POWER SUPPLY
POWER SUPPLY
10
3.4.3 Monitoring in Control Room
POWER SUPPLY
LCD
ARDUINO
UNO
IOT
11
sensor data’s form agriculture field, all the sensor data’s are updated in
cloud.
CHAPTER 4
ARDUINO
12
Arduino also simplifies the process of working with microcontrollers, but
it offers some advantage for teachers, students, and interested amateurs
over other systems:
The UNO is the best board to get started with electronics and
coding. If this is your first experience tinkering with the platform, the
UNO is the most robust board you can start playing with. The UNO is the
most used and documented board of the whole Arduino family.
13
too much about doing something wrong, worstcase scenario you can
replace the chip for a few dollars and start over again. "Uno" means one in
Italian and was chosen to mark the release of Arduino Software (IDE) 1.0.
The Uno board and version 1.0 of Arduino Software (IDE) were the
reference versions of Arduino, now evolved to newer releases. The Uno
board is the first in a series of USB Arduino boards, and the reference
model for the Arduino platform; for an extensive list of current, past or
outdated boards see the Arduino index of boards.
Microcontroller ATmega328P
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 14 (of which 6 provide PWM
output)
PWM Digital I/O Pins 6
Analog Input Pins 6
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega328P) of which
0.5 KB used by boot loader
SRAM 2 KB (ATmega328P)
EEPROM 1 KB (ATmega328P)
Clock Speed 16 MHz
LED_BUILTIN 13
Length 68.6 mm
Width 53.4 mm
Weight 25 g
14
4.1.2 Liquid Crystal Display
A 16x2 LCD means it can display 16 characters per line and there
are 2 such lines. In this LCD each character is displayed in 5x7 pixel
matrix. This LCD has two registers, namely, Command and Data. The
command register stores the command instructions given to the LCD. A
command is an instruction given to LCD to do a predefined task like
initializing it, clearing its screen, setting the cursor position, controlling
display etc. The data register stores the data to be displayed on the LCD.
The data is the ASCII value of the character to be displayed on the LCD.
Click to learn more about internal structure of a LCD.
15
Fig no-1.5-LCD
16
PIN
FUNCTION NAME
NO.
1 Ground (0V) Ground
2 Supply voltage; 5V (4.7V – 5.3V) VCC
3 Contrast adjustment; the best way is to use a variable Vo / VEE
resistor such as a potentiometer. The output of the
potentiometer is connected to this pin. Rotate the
potentiometer knob forward and backwards to adjust the
LCD contrast.
4 Selects command register when low, and data register RS (Register
when high Select )
5 Low to write to the register; High to read from the register Read/write
6 Sends data to data pins when a high to low pulse is given; Enable
Extra voltage push is required to execute the instruction
and EN(enable) signal is used for this purpose. Usually,
we make it en=0 and when we want to execute the
instruction we make it high en=1 for some milliseconds.
After this we again make it ground that is, en=0.
7 DB0
8 DB1
9 DB2
10 DB3
11 8-bit data pins DB4
12 DB5
13 DB6
14 DB7
15 Backlight VCC (5V) Led+
16 Backlight Ground (0V) Led-
18
RAM size is 64 byte providing the option of creating eight characters at a
time. Each character is eight byte in size.
In the table above you can see starting addresses for each character
with their printing commands. The first character is generated at address
0x40 to 0x47 and is printed on LCD by just sending simple command 0 to
the LCD. The second character is generated at address 0x48 to 0x55 and is
printed by sending 1 to LCD.
19
4.1.3 Temperature Sensor
20
an 8-lead surface-mount small-outline package and a plastic TO-220
package.
Following the above steps and tutorial you can easily interface
lm35 temperature sensor with any microcontroller that has a build in
analog to digital converter pins. Almost all the microcontroller today have
to built in ADC.
Pin Configuration:
Features
21
Suitable for Remote Applications
Operates From 4 V to 30 V
Output Current 10 mA
Storage Temp.;
22
TO-92 Package −60˚C to +150˚C
Lead Temp.:
TO-46 Package,
SO Package
23
Functional block diagram
Applications
24
or lower than the surface temperature, the actual temperature of the LM35
die would be at an intermediate temperature between the surface
temperature and the air temperature. This is expecially true for the TO-92
plastic package, where the copper leads are the principal thermal path to
carry heat into the device, so its temperature might be closer to the air
temperature than to the surface temperature. To minimize this problem, be
sure that the wiring to the LM35, as it leaves the device, is held at the same
temperature as the surface of interest. The easiest way to do this is to cover
up these wires with a bead of epoxy which will insure that the leads and
wires are all at the same temperature as the surface, and that the LM35
die’s temperature will not be affected by the air temperature. The TO-46
metal package can also be soldered to a metal surface or pipe without
damage. Of course, in that case the V− terminal of the circuit will be
grounded to that metal. Alternatively, the LM35 can be mounted inside a
sealed-end metal tube, and can then be dipped into a bath or screwed into a
threaded hole in a tank. As with any IC, the LM35 and accompanying
wiring and circuits must be kept insulated and dry, to avoid leakage and
corrosion. This is especially true if the circuit may operate at cold
temperatures where condensation can occur. Printed-circuit coatings and
varnishes such as Humiseal and epoxy paints or dips are often used to
insure that moisture cannot corrode the LM35 or its connections. These
devices are sometimes soldered to a small light-weight heat fin, to decrease
the thermal time constant and speed up the response in slowly-moving air.
On the other hand, a small thermal mass may be added to the sensor, to
give the steadiest reading despite small deviations in the air temperature
25
Fig No-1.10-Temperature to Digital converter(Serial output)
26
4.1.4 Soil Moisture Sensor
This sensor can be used to test the moisture of soil, when the soil is
having water shortage, the module output is at high level, and else the
output is at low level. By using this sensor one can automatically water the
flower plant, or any other plants requiring automatic watering technique.
Soil moisture sensors measure the volumetric water content in soil . Since
the direct gravimetric measurement of free soil moisture requires
removing, drying, and weighing of a sample, soil moisture sensors
measure the volumetric water content indirectly by using some other
property of the soil, such as electrical resistance, dielectric constant, or
interaction with neutrons, as a proxy for the moisture content. Module
triple output mode, digital output is simple, analog output more accurate,
serial output with exact reading
27
Description:
This sensor consists of two parts, the fork-shaped probe that has to
be nailed to the ground, and an electronic module that will be used to
connect the probe with Arduino. It operates with a 3.3V or 5V supply to be
administered by the VCC and GND pins. The red LED will light when we
are feeding. Has both digital and analog functionality, the pin AO will give
us an analog signal between the supply value to 0V (For
Arduino UNO 5v to 0V) to higher humidity value will be higher, this is
due to the operation of the probe because the higher the humidity is
greater conductivity of the soil and therefore increase the value that we
measure.
The DO pin will give us a digital signal is “1” when the humidity
value is lower than manually establish on the potentiometer and ‘0’ when it
is larger. The potentiometer is connected to a comparator LM393 as
the probe signal. To use it correctly we must calibrate with different soil
samples with different humidities. The green LED will help us in this
task because when we have a 1 in DO will turn on.
Weatherproofing
28
elements, you could use a conformal coating to cover the SMD parts on the
PCB as well as your solder connections.
Working principle:
This is an easy to use digital soil moisture sensor. Just insert the
sensor in the soil and it can measure moisture or water level content in it. It
gives a digital output of 5V when moisture level is high and 0V when the
moisture level is low in the soil.
Specifications:-
29
Panel PCB Dimension: Approx.3cm x 1.5cm
VCC: 3.3V-5V
GND: GND
Usage:-
30
Small board analog output AO and AD module connected
through the AD converter, you can get more precise values of
soil moisture.
Specifications
Analog Mode
To connect the sensor in the analog mode, we will need to use the
analog output of the sensor. When taking the analog output from the soil
moisture sensor FC-28, the sensor gives us a value from 0 to 1023. The
moisture is measured in percentages, so we will map these values from 0 to
100, and then show them on the serial monitor. You can set different
ranges of the moisture values and turn the water pump on or off according
to it.
APPLICATIONS:
1. Agriculture
31
2. Landscape irrigation
In urban and suburban areas, landscapes and residential lawns are using
soil moisture sensors to interface with an irrigation controller. Connecting
a soil moisture sensor to a simple irrigation clock will convert it into a
"smart" irrigation controller that prevents irrigation cycles when the soil is
already wet, e.g. following a recent rainfall event.
3. Research
32
and in laboratories where specific level of any liquid is required to be
monitored. In such applications water level sensor is very useful. In
today’s tutorial we will see how to interface water level sensor with
Arduino and how to monitor specific water level using this assembly.
Water level sensor gives output in the form of voltage.
This circuit will be able to tell us roughly how much of the sensor
is covered by liquid.
Liquid level sensors are used for all types of applications. They are
extensively used within automobiles, which rely on a substantial amount of
different fluids in order to operate to check for how much gas in the car,
windshield washer fluid, oil levles. Basically, they are used whenever we
want to measure the level of any type of fluid of a system. Thus, they are
33
extremely valuable to be able to learn and manipulate and build circuits
with.
As you can see from the above image, the sensor has a series of
parallel wires across the board. These wires are what sense the liquid level
that the board is exposed to.
If the board has water or another fluid covering all the wire, then it
will output a maximum analog value reading. Since analog values read by
an arduino range from 0 (lowest reading) to 1023 (highest reading), a
board completely submerged with a liquid will have a reading of 1023 by
an arduino. If the board is halfway covered, a reading of about 512 will be
read by the arduino. If the board is 1/4 covered by a liquid, then the
arduino will read about 256. And if no liquid is on it at all, then a near 0
reading should be obtained.
With our liquid level sensor and an arduino, there are a number of
options of what we can do. We can use the sensor, simply, to read and
output the analog value obtained. Or we can create a type of alarm
indicator status system. For example, we can have a green LED light up
when the sensor is completely full (submerged to the top with fluid),
indicating that it's full. We can have a red LED light up when the sensor's
liquid level falls below 1/4 level, like how car dashboard LED indicators
tell us when our gas tank goes below E (empty).
34
So with a microcontroller like the arduino, there are basically
limitless options of how we can incorporate the liquid level sensor.
In this circuit, we will build now, we will just do the most basic
circuit and simply read and output the analog value read by the arduino.
Specifications:
Working Voltage: DC 3-5V
Interface: Analog
Weight : 3g.
Detection Area: 40 mm x 16 mm
Working Temperature: 10 °C to 30 °C
Size: 65 mm x 20 mm x 8 mm
High sensitivity.
35
Water level sensor connecting with arduino
36
The signal pin (S) gets connected to an analog pin on the arduino
board. Here we connect it to analog pin A0. This allows the arduino board
to be able to read the analog voltage value.
Applications:
Rainfall detecting
Water level detection for the pan of a water heater. It’s very
common for these heaters to leak when they get older. Placing
a sensor in the pan to detect the presence of water where there
should be none.
Same goes for under sink links. Especially in homes that are
vacant for much of the year. Use an Ethernet Shield (or WiFi)
to add this leak detection device to the internet and have it
send an email if water is detected.
37
3.1.6 Internet of Things
INFRASTRUCTURE:
38
1. Plug and Play Integration
2. Infrastructure Functionality
39
4. Security and Privacy
APPLICATION AREAS:
In the last few years the evolution of markets and applications, and
therefore their economic potential and their impact in addressing societal
trends and challenges for the next decades has changed dramatically.
Societal trends are grouped as: health and wellness, transport and mobility,
security and safety, energy and environment, communication and e-
society, as presented in Figure 2.15. These trends create significant
opportunities in the markets of consumer electronics, automotive
electronics, medical applications, communication, etc. The applications in
these areas benefit directly by the More-Moore and More-than-Moore
semiconductor technologies, communications, networks, and software
developments.
a) Cities
40
Noise Urban Maps: Sound monitoring in bar areas and centric zones in
real time.
b) Environment
41
c) Water
Water Quality: Study of water suitability in rivers and the sea for fauna
and Eligibility for drinkable use.
Tank level: Monitoring of water, oil and gas levels in storage tanks
andcisterns.
42
Liquid Presence: Liquid detection in data centres, warehouses and
sensitive building grounds to prevent break downs and corrosion.
f) Industrial Control
Indoor Air Quality: Monitoring of toxic gas and oxygen levels inside
chemical plants to ensure workers and goods safety.
43
g) Agriculture
44
i) eHealth
45
Fig no-2.3 ESP-12E BASED NODEMCU
46
Fig no-2.4 Nodemcu pin configuration
47
ESP8266EX also integrates an enhanced version of Tensilica’s
L106 Diamond series 32-bit processor, with on-chip SRAM, besides the
Wi-Fi functionalities. ESP8266EX is often integrated with external sensors
and other application specific devices through its GPIOs; codes for such
applications are provided in examples in the SDK. Espressif Systems’
Smart Connectivity Platform (ESCP) demonstrates sophisticated system-
level features include fast sleep/wake context switching for energy-
efficient VoIP, adaptive radio biasing. For low-power operation, advance
signal processing, and spur cancellation and radio co-existence features for
common cellular, Bluetooth, DDR, LVDS, LCD interference mitigation.
Features:
802.11 b/g/n
SDIO 2.0, (H) SPI, UART, I2C, I2S, IRDA, PWM, GPIO
49
PIN DESCRIPTION:
50
PIN MODE:
Receiver Sensitivity:
51
Schematic :
Functional Descriptions
MCU:
52
other specific devices through its GPIOs; codes for such applications are
provided in examples in the SDK.
Memory Organization
53
▪ OTA is disabled: the minimum flash memory that can be
supported is 512 kB;
Crystal:
54
Interfaces
55
4.2 SOFTWARE DESCRIPTION
4.2.1 Embedded C
Easy to understand
High Reliability
Portability
Scalability
57
EMBEDDED SYSTEMS:
58
Advantages:
Disadvantages:
59
Fig no-3.3-arduino software ide
WRITING SKETCHES:
60
NB: Versions of the Arduino Software (IDE) prior to 1.0 saved sketches
with the extension .pde. It is possible to open these files with version 1.0,
you will be prompted to save the sketch with the ino extension on save.
FILE:
New
Creates a new instance of the editor, with the bare minimum
structure of a sketch already in place.
61
Open
Allows loading a sketch file browsing through the computer drives
and folders.
OpenRecent
Provides a short list of the most recent sketches, ready to be opened.
Sketchbook
Shows the current sketches within the sketchbook folder structure;
clicking on any name opens the corresponding sketch in a new editor
instance.
Examples
Any example provided by the Arduino Software (IDE) or library shows up
in this menu item. All the examples are structured in a tree that allows easy
access by topic or library.
Close
Closes the instance of the Arduino Software from which it is clicked.
Save
Saves the sketch with the current name. If the file hasn't been named
before, a name will be provided in a "Save as.." window.
Saveas...
Allows saving the current sketch with a different name.
PageSetup
It shows the Page Setup window for printing.
62
Print
Sends the current sketch to the printer according to the settings
defined in Page Setup.
Preferences
Opens the Preferences window where some settings of the IDE may
be customized, as the language of the IDE interface.
Quit
Closes all IDE windows. The same sketches open when Quit was
chosen will be automatically reopened the next time you start the IDE.
EDIT:
63
Undo/Redo
Goes back of one or more steps you did while editing; when you go
back, you may go forward with Redo.
Cut
Removes the selected text from the editor and places it into the
clipboard.
Copy
Duplicates the selected text in the editor and places it into the
clipboard.
CopyforForum
Copies the code of your sketch to the clipboard in a form suitable for
posting to the forum, complete with syntax coloring.
CopyasHTML
Copies the code of your sketch to the clipboard as HTML, suitable
for embedding in web pages.
Paste
Puts the contents of the clipboard at the cursor position, in the
editor.
SelectAll
Selects and highlights the whole content of the editor.
Comment/Uncomment
Puts or removes the // comment marker at the beginning of each
selected line.
64
Increase/DecreaseIndent
Adds or subtracts a space at the beginning of each selected line,
moving the text one space on the right or eliminating a space at the
beginning.
Find
Opens the Find and Replace window where you can specify text to
search inside the current sketch according to several options.
FindNext
Highlights the next occurrence - if any - of the string specified as the
search item in the Find window, relative to the cursor position.
FindPrevious
Highlights the previous occurrence - if any - of the string specified
as the search item in the Find window relative to the cursor position.
65
SKETCH:
Verify/Compile
Checks your sketch for errors compiling it; it will report memory
usage for code and variables in the console area.
Upload
Compiles and loads the binary file onto the configured board
through the configured Port.
Include Library
Adds a library to your sketch by inserting #include statements at the
start of your code. For more details, see libraries below. Additionally, from
this menu item you can access the Library Manager and import new
libraries from .zip files.
Add File...
Adds a source file to the sketch (it will be copied from its current
location). The new file appears in a new tab in the sketch window. Files
can be removed from the sketch using the tab menu accessible clicking on
the small triangle icon below the serial monitor one on the right side of the
toolbar.
TOOLS:
Auto Format
This formats your code nicely: i.e. indents it so that opening and
closing curly braces line up, and that the statements inside curly braces are
indented more.
67
Archive Sketch
Archives a copy of the current sketch in .zip format. The archive is placed
in the same directory as the sketch.
Serial Monitor
Opens the serial monitor window and initiates the exchange of data with
any connected board on the currently selected Port. This usually resets the
board, if the board supports Reset over serial port opening.
Board
Select the board that you're using. See below for descriptions of the
various boards.
Port
This menu contains all the serial devices (real or virtual) on your machine.
It should automatically refresh every time you open the top-level tools
menu.
68
Fig No-3.7 contents in tools
Programmer
For selecting a hardware programmer when programming a board or
chip and not using the onboard USB-serial connection. Normally you
won't need this, but if you're burning a boot loader to a new
microcontroller, you will use this.
The items in this menu allow you to burn a boot loader onto the
microcontroller on an Arduino board. This is not required for normal use
of an Arduino or Genuino board but is useful if you purchase a
new ATmega microcontroller (which normally comes without a boot
loader). Ensure that you've selected the correct board from
the Boards menu before burning the boot loader on the target board. This
command also set the right fuses.
69
Help:
FindinReference
This is the only interactive function of the Help menu: it directly
selects the relevant page in the local copy of the Reference for the function
or command under the cursor.
70
CHAPTER 4
OUTPUT
1.1 OUTPUT:
71
CHAPTER 5
FUTURE ENHANCEMENT
5.1 APPLICATIONS
FUTURE ENHANCEMENT:
5.2 ADVANTAGES
Fast response.
5.3 CONCLUSION
72
channels is exhibited, while the link quality degrades at greater burial
depths and larger internode distances due to the increases not only in
attenuation in air, but also in the loss caused by multiple refractions along
the borehole wall. Thanks to the LoRa wireless communication
technology, connectivity can be achieved at distances up to 42 m with high
link quality (PDR>90%) at a burial depth of 0.4 m. In addition, the
backfilled channel demonstrates more sensitivity to the soil properties at
different burial depths than the non-backfilled channel.
73
REFERENCES
75