Abstract
This work describes the design and realization of the automatics for a controlled water level in
the tank with the use of Arduino Uno, ultrasonic sensors and a solenoid valve. The system
changes the operation mode of the solenoid valve to allow for the effective water manager and
automates the water level management in a tank by adjusting real - time water level. Hence, the
automated system in the management of water is highly reliable and very cheap. The automatic
system can also be used in the households as well as in industrial settings. An ultrasonic sensor
makes it possible to measure the levels reliably while robust control logic is provided by the
Arduino Uno. The ample testing proved that the system is capable to reverse the processes of
draining of controlled tanks, thus the range of automated water management systems utilizing
this system is expanded.
Keywords - Water Level Control, Arduino, Ultrasonic Sensor, Solenoid Valve, Water
Management System
1. Introduction
Water becomes one of the most used and vital resources as people and industries strive to
improve efficiency in their activities. The usual approaches of checking rainfall runoff by hand
or even using float-type sensors are not only unreliable and prone to human mistakes, but also
susceptible to mechanical failure, which may leave water tanks overflowing or lead to water
supply interruptions.
This project deals particularly with the programming of an automatic water control system
implemented with the help of Arduino Uno, ultrasonic sensors and solenoid valves. The system
incorporates a push button which also turns off water supply when it reaches a desired level. It
seeks to enhance water preservation and minimize the chances of human error, in the cost
effective way possible considering a variety of different target environments.
2. Methodology
2.1 Components
The primary components of the water level control system are as follows:
● Arduino Uno: The main microcontroller which is in charge of analyzing sensors signals
and commands the solenoid valve.
● Ultrasonic Sensor (HC-SR04): Estimation of the distance between the sensor and the
water surface to find out the amount of water in the tank.
● Solenoid Valve: Regulates the inflow of water into the tank which is activated by the
control from the Arduino.
● Relay Module: Provides a means to switch on and off the solenoid valve because the
latter uses a higher voltage than that available from the Arduino.
● Power Supply: Source of electricity for the Arduino and solenoid valves.
2.2 Working Principle
The ultrasonic sensor is installed at the top of the tank and continuously measures the distance to
the water surface. The Arduino processes this data to calculate the water level and controls the
solenoid valve based on preset thresholds:
● When the water level falls below a minimum threshold, the Arduino opens the solenoid
valve to allow water inflow.
● When the water level reaches the maximum threshold, the Arduino closes the valve to
prevent overflow.
The system logic is implemented using simple programming in the Arduino IDE, which defines
the conditions for opening and closing the solenoid valve based on real-time sensor data.
3. Experimental Setup
3.1 System Setup
The ultrasonic sensor is oriented to the top of a water tank and mounted onto the tank. The
sensor trigger and echo pins are wired to the Arduino, which keeps track of the water level that
changes according to the sensor values. The Arduino receives, through a relay, the solenoid
valve that regulates the water toward the tank. The height of the tank and the water level is also
recorded and viewed on the serial monitor of the Arduino.
3.2 Algorithm
The control algorithm consists of the following steps:
1. Initialization: The ultrasonic sensor and relay module are initialized.
2. Measurement: The ultrasonic sensor measures the water level by emitting sound waves
and calculating the time taken for the echo to return.
3. Decision Logic: The Arduino compares the measured water level with predefined upper
and lower thresholds.
4. Control: If the water level is below the lower threshold, the solenoid valve is opened. If
the water level reaches the upper threshold, the solenoid valve is closed.
4. Results and Discussion
4.1 Testing and Calibration
The system underwent trials in several scenarios, involving variations in tank volumes and water
inflow rates. The ultrasonic sensor recorded the measurements with a percentage error of only up
to 3%. An adequate performance of the solenoid valve in respect of Arduino commands was also
observed so that the alcohol was maintained in the level desired by the controller.
4.2 Performance
● Accuracy: The ultrasonic sensor demonstrated high accuracy, with minimal variation in
water level measurements.
● Response Time: The system responded in under two seconds to changes in water levels,
ensuring timely control of the solenoid valve.
● Energy Efficiency: The Arduino-controlled system consumes minimal power, making it
suitable for long-term usage in both residential and industrial environments.
4.3 Limitations
While the system performed well, the ultrasonic sensor’s accuracy can be affected by water
turbulence. Future improvements could include the use of multiple sensors to increase reliability
and precision.
5. Future Scope
The water level control system presented in this paper can be further enhanced to make it more
robust and feature-rich. The following are potential areas for future development:
● Integration with IoT: Thanks to the installation of either a GSM or Wi-Fi module, the
system may be linked to the Internet, making it possible to check and alter the water level
from mobile phones or over the Internet.
● Smart Energy Management: The device in particular could be powered by a solar panel,
which would help to further minimize energy use resulting in a green technology.
● Automatic Pump Control: Later versions could implement self-control of the water filling
process by the water pump whenever the water level falls to a certain threshold value,
thus reducing human participation in the process.
● Advanced Data Analytics: Presumably the system by analyzing past water consumption
patterns would be able to project the water needs at a particular time frame and schedule
the water filling timely, thus, ensure water conservation.
● Multiple Tank Control: It would be possible to focus on multiple tanks or reservoirs at
once which would make the system more suitable for wider commercial or industrial
applications.
● Redundancy and Reliability: Employing backup sensors or self-verification protocols
may enhance the consistency and future emergence of the system, particularly in extreme
or chaotic conditions.
These improvements would make the system more versatile, scalable, and suitable for a broader
range of applications, contributing to more efficient water resource management.
6. Conclusion
This project effectively completed the development of the automatic water level control system
which makes use of Arduino, ultrasonic sensors and solenoid valve. This system proves to be
solid, easy and cheap in terms of resources while helping avoid overflows and dryouts without
the need for much manpower. With further improvements such as wireless control and automatic
systems for pump control, the overall application of the system would be enhanced and may
cater larger needs as well.
Acknowledgment
We would like to thank Prof. [Instructor’s Name] for their guidance and support in this project,
and the Department of Instrumentation and Control Engineering at Vishwakarma Institute of
Technology, Pune, for providing the resources needed to complete this work.
References
1. “Automatic Water Level Control System Using PLC Project,” Nevon Projects, [Online].
Available: https://nevonprojects.com/automatic-water-level-control-system-using-plc-
project/. [Accessed: 23-Oct-2024].
2. “Water Level Indicator Project Using Arduino,” Circuit Digest, [Online]. Available:
https://circuitdigest.com/microcontroller-projects/water-level-indicator-project-using-
arduino.