IOT Mini BODY
IOT Mini BODY
CHAPTER 1
INTRODUCTION
1.1 Project Overview:
Due to exploitation of water resources and speeding of climate change due to human
activities, water becoming a luxury these days and keeping tab on water consumption is a
necessity now. We know that water conservation starts from a family and a person in a family
can easily track their water consumption either by observing day to day activities or checking
water level of their overhead tank every day. But for a municipal government who is
concerned about the areas they governing cannot track each and every family’s water
consumption by physically sending a person every day. Instead, they can check level of
municipal supply tanks where the level of water is direct reflection of water consumed by the
people in the area. Again, we have to deploy several people to take readings of tens of
municipal overhead tanks several times a day.
It is a human nature to get inert sometimes or many times and one could manipulate the
readings and could push the idea of water consumption of an area in wrong direction and this
could also delay the water supply because the actual water level could vary significantly from
the manipulated readings which could lead to unexpected shutdown of water supply. By
installing IoT based water level monitoring systems in all the important municipal water tanks
the local government can know the level of water in real time and they can fill the tank on
time and also can understand the consumption of water in the area. The collected data can be
sent to higher level governments where they can draw national level conclusions on water
consumption. IoT based water level monitoring system can also be installed on individual
houses / apartments so that one can check water level of their tank in real time from their own
comfort and also track their consumption overtime. Now you know why we are sending tank’s
water level data over internet.
People with the help of smartphones can now connect to the internet without He need for a
computer, while still offering the same functionality but through different means. With the
introduction of advanced software and hardware devices, smartphones are now powerful
devices and have become an important part of people’s daily lives. A major aspect is how the
Smartphone is able to connect and communicate with other devices.
A field that is recently gaining popularity is Water Level Monitoring which can also use
smartphones as information or functionality hubs.
1.3 Objectives:
The major objectives of the project include:
The main aim of this system is to monitor the water level at rural areas so that they help in
detecting the wastage of water and measures can be taken to avoid unnecessary overflowing
of water in the areas where monitoring is a difficult task.
1. Real-time Monitoring: Enable real-time monitoring of water levels in various locations
such as reservoirs, rivers, lakes, and dams.
2. Accuracy: Ensure accurate measurement of water levels to provide reliable data for
decision-making and resource management.
3. Early Warning System: Implement an early warning system to alert authorities and
stakeholders about potential floods or droughts based on the monitored water levels.
4. Remote Access: Provide remote access to the monitoring system, allowing users to
view water level data from anywhere using web or mobile applications.
5. Data Logging: Log historical water level data for analysis, trend identification, and
predictive modelling to better understand water patterns and behaviours over time.
6. Integration: Integrate with existing infrastructure and systems such as weather stations,
hydrological models, and emergency response systems to enhance overall
effectiveness and interoperability.
7. Scalability: Design the system to be scalable, allowing for the addition of more
monitoring points and sensors as needed to cover larger geographical areas or
expanding water management needs.
8. Power Efficiency: Implement power-efficient designs for sensors and communication
modules to prolong battery life and minimize maintenance requirements, especially in
remote or inaccessible locations.
9. Security: Ensure data security and integrity by employing encryption protocols, access
controls, and authentication mechanisms to prevent unauthorized access or tampering
of the system.
10. Cost-effectiveness: Strive to develop a cost-effective solution that maximizes the value
proposition by balancing performance, reliability, and affordability, considering the
budget constraints of stakeholders involved in water management.
CHAPTER 2
LITERATURE SURVEY
2.1 Existing System:
AquaHive is an IoT-based water level monitoring system tailored for agricultural use,
employing wireless sensors in reservoirs to remotely monitor water levels and optimize
irrigation scheduling via a mobile or web application.
SmartRiver is a comprehensive IoT solution designed for monitoring river water levels
and flow rates, utilizing a network of sensors along riverbanks to continuously measure water
levels and transmit real-time data for flood prediction and water resource management.
HydroSentinel is an IoT-enabled water level monitoring system tailored for urban
drainage systems, employing ultrasonic sensors in stormwater drains to monitor water levels
during rainfall events and transmit data to a cloud platform for flood risk analysis and
infrastructure optimization.
AquaWatch is an IoT-based water level monitoring solution designed for coastal
areas, utilizing buoy-mounted sensors to measure water levels, wave heights, and tidal
fluctuations in real time, providing data for maritime planning, coastal management, and
weather monitoring.
2.3 Application:
Our project can be implemented in various fields they are:
1. Agriculture:
The proposed system can be utilized in agriculture to monitor water levels in irrigation
reservoirs and tanks, enabling farmers to optimize water usage, schedule irrigation, and
prevent overwatering or water shortages, ultimately improving crop yield and resource
efficiency.
2. Environmental Management:
Environmental agencies can utilize the system to monitor water levels in rivers, lakes, and
wetlands, facilitating better understanding of aquatic ecosystems, identifying habitat changes,
and supporting conservation efforts to protect biodiversity and natural resources.
3. Urban Infrastructure:
Municipalities can employ the system for monitoring water levels in stormwater drains,
sewage systems, and reservoirs, aiding in flood prediction, urban drainage management, and
infrastructure planning to mitigate flood risks and enhance urban resilience to extreme
weather events.
4. Disaster Preparedness:
Emergency management agencies can utilize the system for early flood detection and
monitoring in vulnerable areas, enabling timely evacuation planning, deployment of
resources, and disaster response coordination to minimize human and property losses during
flood events.
5. Water Resource Management:
Water resource management agencies can employ the system for monitoring water levels in
reservoirs, aquifers, and groundwater wells, facilitating efficient water allocation, drought
management, and water conservation initiatives to sustainably manage water resources and
meet growing demands.
Ultrasonic sensors work based on the principle of echolocation, similar to how bats navigate.
They emit a burst of ultrasonic waves and then measure the time it takes for the waves to
bounce back after hitting an object. By knowing the speed of sound in air, the sensor can
calculate the distance to the object based on the time it takes for the sound waves to return.
Typical ultrasonic sensors consist of a transmitter, which generates ultrasonic waves, and a
receiver, which detects the waves after they bounce back. The sensor also contains electronic
circuitry for generating the ultrasonic pulses, timing the waves' travel time, and processing
the received signals to determine distance. Ultrasonic sensors are widely used in various
industries and applications, including distance measurement, object detection, obstacle
avoidance, level sensing, and presence detection. They are commonly found in robotics,
automotive parking systems, industrial automation, security systems, and home appliances.
5V Relay Module:
A 5V relay module is an electronic component used to control high-voltage devices
with low-voltage signals, typically from a microcontroller or a digital output pin of a
microcontroller board.
The primary function of an LCD display with an I2C module is to provide visual
output for displaying text, numbers, symbols, and graphical information. The I2C module
facilitates communication between the LCD display and a microcontroller or other host
device, allowing for easy control and manipulation of the display content. LCD displays
utilize liquid crystal cells that can change their optical properties in response to an electric
field. When voltage is applied, the liquid crystal molecules align to allow light to pass through,
creating visible characters or images on the display. LCDs are commonly used for their low
power consumption, high contrast, and readability in various lighting conditions.
The I2C interface on the LCD module allows for serial communication between the
display and the host device using only two wires (SDA for data and SCL for clock). This
simplifies wiring and reduces the number of digital pins required on the host device, making
it convenient for projects with limited I/O resources. The I2C module typically includes an
integrated circuit (IC) that acts as an interface between the LCD display and the I2C bus. This
IC handles communication protocols, address decoding, and signal conditioning, abstracting
the complexity of low-level communication protocols from the user
LED and 180Ω Resistor:
LEDs (Light Emitting Diodes) and 180ohm resistors are commonly used together in
electronic circuits to limit the current flowing through the LED and protect it from damage
due to excessive current.
CHAPTER 3
REQUIREMENTS SPECIFICATION
3.1 Functional Requirements:
Functional requirements are crucial aspects of software development and system
design. functional requirements specify what a system should do.
1. Functional requirements describe specific behaviours and functionalities that a system
or software must perform to meet the needs of its users or stakeholders.
2. These requirements typically outline the features, capabilities, and interactions that
users expect from the system, such as user authentication, data processing, or report
generation.
3. Functional requirements are expressed in terms of input actions, output results, and
system behaviours, providing a clear understanding of how the system should behave
under different conditions.
4. For example, a functional requirement for an e-commerce website might include the
ability for users to browse products, add items to a shopping cart, and complete a
purchase transaction.
5. Scope Definition: Functional requirements help define the scope of a software project
by outlining the specific features and functionalities that the system should deliver to
its users.
6. User Interaction: These requirements describe how users interact with the system,
including user interfaces, input methods, navigation flows, and expected system
responses to user actions.
7. Use Cases and Scenarios: Functional requirements often include detailed use cases or
scenarios that illustrate how the system will be used in real-world situations, helping
stakeholders understand the system's intended behaviour.
8. Prioritization: Functional requirements can be prioritized based on their importance to
users or stakeholders, helping development teams focus on implementing the most
critical features first.
• Embedded C
• Arduino Suit or IDE
CHAPTER 4
SYSTEM DESIGN
4.1 Use Case Diagram:
Use case diagram is the diagram who reflection of the globe. This diagram gives more
specification who is and what is uses on the system for this case according where user interacts
with system and perform tasks.
This block diagram illustrates the flow of data and control within the water level monitoring
system, from the sensor to the output interface. Each component plays a specific role in the
overall functionality of the system, contributing to the monitoring and management of water
levels in a given environment.
CHAPTER 5
IMPLEMENTATION
#define LED1 2
#define LED2 4
#define LED3 5
#define LED4 18
#define trig 12
#define echo 13
#define relay 14
BlynkTimer timer;
void setup() {
// Debug console
Serial.begin(115200);
Blynk.begin(auth, ssid, pass,"blynk.cloud", 80);
lcd.init();
lcd.backlight();
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(relay, OUTPUT);
digitalWrite(relay, HIGH);
lcd.setCursor(0, 0);
lcd.print("System");
lcd.setCursor(4, 1);
lcd.print("Loading..");
delay(4000);
lcd.clear();
}
Serial.println(distance);
digitalWrite(LED3, HIGH);
digitalWrite(LED4, HIGH);
}
}
void loop() {
ultrasonic();
Blynk.run();//Run the Blynk library
}
Blynk is a popular platform for building Internet of Things (IoT) applications that allows users
to easily create interfaces and control various hardware devices remotely using a mobile app.
1. Platform Overview: Blynk provides a cloud-based platform and a mobile app that
enables users to connect their hardware projects to the internet and control them
remotely. It offers a drag-and-drop interface for creating custom user interfaces (UI)
and widgets to interact with connected devices.
2. Mobile App: The Blynk mobile app is available for both iOS and Android devices. It
allows users to create and configure projects, add widgets, and monitor and control
their connected devices from anywhere with an internet connection.
3. Widgets: Blynk provides a variety of widgets that users can add to their projects to
interact with their hardware devices. These widgets include buttons, sliders, gauges,
LEDs, graphs, and displays, among others. Users can customize the appearance and
behaviour of these widgets to suit their specific needs.
4. Cloud Server: Blynk's cloud server acts as a bridge between the mobile app and the
hardware devices. It facilitates communication and data exchange between the app and
the connected devices, allowing users to send commands, receive data, and update the
UI in real-time.
5. Device Libraries: Blynk provides libraries and SDKs for popular hardware platforms
and microcontrollers, including Arduino, Raspberry Pi, ESP8266, ESP32, and more.
These libraries simplify the process of connecting hardware devices to the Blynk
platform and implementing the necessary communication protocols.
5.3 Results:
CHAPTER 6
SOFTWARE TESTING
IOT testing involves executing QA tests to check IoT devices’ functionality, security, and
performance. It is crucial to ensure that your IoT devices can transmit sensitive information
wirelessly before going to market because every IoT device sends and receives data over the
Internet. Because of this, many IoT businesses rely on IoT automation, penetration, and
performance testing tools to detect defects before reaching consumers.
1. Launch the Blynk mobile app and access the project interface.
2. Monitor the real-time status of the hardware devices (e.g., water level).
3. Use the app to send commands (e.g., turn on/off) to the hardware
devices.
• Expected Result: Users can remotely monitor the hardware devices and
successfully control them using the Blynk mobile app.
5. Security Test Case - Authentication:
• Objective: Ensure that user authentication mechanisms are robust and secure.
• Steps:
1. Attempt to access the Blynk project without proper authentication
credentials.
2. Verify that unauthorized access is denied, and users are prompted to
enter valid credentials.
• Expected Result: Unauthorized access to the Blynk project is prevented, and
users are required to authenticate with valid credentials.
6. Performance Test Case - Data Synchronization:
• Objective: Test the performance of data synchronization between the Blynk
mobile app and the hardware devices.
• Steps:
1. Monitor the time taken for sensor readings to update on the Blynk
mobile app after changes in the environment.
2. Analyze the latency in data synchronization under varying network
conditions (e.g., Wi-Fi vs. cellular).
• Expected Result: Sensor readings update promptly on the Blynk mobile app,
with minimal latency in data synchronization.
CHAPTER 7
CONCLUSION
In conclusion, the Blynk IoT water level monitoring project offers a robust solution for remote
monitoring and control of water levels in various environments. By leveraging the Blynk
platform, users can easily connect their hardware devices to the internet and access real-time
data and control functionalities through the Blynk mobile app.
Throughout the project development, thorough software testing ensured the reliability,
security, and performance of the system. Unit testing verified the functionality of individual
components such as sensor readings and microcontroller operations. Integration testing
confirmed seamless communication between the microcontroller and the Blynk cloud server.
UI testing ensured a user-friendly interface on the Blynk mobile app, while end-to-end testing
validated remote monitoring and control capabilities.
Security testing addressed potential vulnerabilities in user authentication mechanisms, while
performance testing assessed data synchronization and latency under varying network
conditions. Compatibility testing ensured the project's functionality across different devices
and platforms, enhancing its accessibility and usability. Overall, the Blynk IoT water level
monitoring project demonstrates the effectiveness of IoT technologies in providing remote
monitoring and control solutions for various applications. Its ease of use, versatility, and
reliability make it suitable for a wide range of environments, from home automation to
industrial monitoring. With continuous refinement and enhancements, the project can further
optimize its functionality and meet the evolving needs of users and stakeholders in water
management and beyond.
CHAPTER 8
FUTURE ENHANCEMENT
• Multi-Sensor Support: Integrate support for multiple water level sensors to monitor
levels in different locations or containers simultaneously. This enhancement can
provide a comprehensive overview of water levels across various areas.
• Alerting Mechanisms: Implement alerting mechanisms such as push notifications or
SMS alerts to notify users when water levels exceed or fall below specified thresholds.
This feature enhances the project's utility by enabling proactive monitoring and timely
response to critical situations.
• Data Analytics and Visualization: Incorporate data analytics and visualization tools to
analyse historical water level data trends, identify patterns, and gain insights into usage
patterns or potential issues. Visualizing data trends can aid in decision-making and
resource management.
• Remote Configuration: Enable remote configuration of system parameters and
thresholds through the Blynk mobile app, allowing users to adjust settings and
customize their monitoring setup without physical access to the hardware.
• Integration with External Systems: Integrate the project with external systems or
services such as weather APIs or water quality sensors to enhance its functionality and
provide additional context for water level monitoring.
• Energy Efficiency Optimization: Implement power-saving features and optimizations
to enhance the energy efficiency of the monitoring system, prolonging battery life in
battery-powered deployments and reducing energy consumption in general.
• Geolocation Integration: Incorporate geolocation capabilities to track the location of
monitoring points and provide location-based services or alerts. Geolocation data can
also be useful for mapping water level data spatially.
BIBLIOGRAPHY
• IEEE Computer Society. (n.d.). IEEE Xplore Digital Library. Retrieved from
https://ieeexplore.ieee.org/Xplore/home.jsp