Water Management System

by Saakshi_12 in Workshop > Home Improvement

916 Views, 10 Favorites, 0 Comments

Water Management System

659adb50-3f34-4b08-a338-d83eb092b595.jpg

In the view of depleting water resources, water controlling & monitoring has been of utmost importance.

This is a mini model of an IoT-based Automatic Water Control System developed to overcome some of the problems faced by industries and to efficiently manage the usage of water resources.


WATER DISTRIBUTION IN BUILDINGS:

In high rise buildings, usually water is filtered in the pump room and stored in the sumps. Water from the sump is pumped to the overhead tanks and then distributed through different outlets for various purposes. Valves are installed to direct and control the flow of water among multiple tanks. This can be made better and more efficient by eliminating the below problems which were encountered.

PROBLEMS THAT MAY BE ENCOUNTERED (AND FOR WHICH WE ARE FINDING THE SOLUTIONS)

  • Pipe Leakage
  • Sensor/Logic Failure
  • Bad quality of water
  • Individual flat-water consumption
  • Switching between tanks
  • Protection of circuit
  • Pipe blockage
  • Water shortage in rural areas due to power cut
  • Overflow of water

Supplies

motor.jpeg
motorised valve.jpeg
node mcu.jpeg
flow meter.jpeg
flowmeter.jpeg
relay.jpeg
outlet.jpeg
washer.jpeg
  • 3 x Plastic Crates
  • 1 x LEFOO LFP1300W Motor
  • 2 x Motorized Ball Valve
  • 3 x ESP8266 Microcontroller Board
  • 3 x Outlet Tap
  • 4 x YF-S201 Water Flow Sensor
  • 6 x Magnetic Water Level Sensor
  • 3 x 1 Channel 5V Relay Module.
  • 2 x 12V 1A D.C Power Adaptor
  • 1 x 24V 1A D.C Power Adaptor
  • 1 x P.V.C Solvent Glue
  • 7 x Tank Connector
  • 2 x Zero PCB

Setting Up the Sump and Overhead Tanks

Screenshot 2022-12-21 223445.png
wms.png

Take 3 crates - two for emulating overhead tanks and one for the sump.

Make two holes (3/4") in the first tank and three holes in the second. Taps, used as water outlets, are fixed onto the holes. *1 TAP OF THE FIRST TANK IS USED FOR LEAKAGE DETECTION*.

Finally place both the tanks on an elevated surface and the sump at the bottom to recreate, on a smaller scale, the water system we see at home.

Connecting Pipes and Fixing the Pump

585ca1a0-a493-4e9e-ab65-faaf081aa337.jpg
6b8599f6-d695-46aa-9339-d12d4a746633.jpg

Make connections between the tanks and the pump using hose pipes of 3/4'' (Flexible PVC).

A 24V water pump used to pump water from the sump to the first tank and is controlled by means of a single channel relay.

Connect the first tank to the second one through a motorized valve (*24V*).

Fixing the Sensors and Interfacing With Microcontroller (NODEMCU-ESP8266))

b45cddb0-a339-49fc-a1e1-5ba67cb96ac9.jpg
996b5377-a28b-4f94-97e1-eea85725cda8.jpg

Fix 6 float sensors: 2 in each tank and 2 in the sump.

Connect the sensors to the ESP8266 board using single-strand wires.

Fix YF-S201 Water flow sensors for all taps.

Connect 2 flow sensors to one tap attached to tank 1; this will be used for leakage detection.

Water Level Controller

1.jpg
FLOAT SENSORS.png

We use an automatic water-level controller for overhead tanks that switches on/off the pump motor when water in the tank goes below/above the minimum/maximum level. The water level is sensed by two floats in each tank which send data to a nodemcu. The nodemcu then operates the switches for controlling the pump motor based on the sensor readings.

Stick each sensor float on the side wall of the crates at minimum and maximum levels. These sensors are used as they are more reliable than induction-type sensors. The sensor at the bottom senses the minimum water level, while the sensor at the top senses the maximum water level.

When the water in the tank 1 goes below the minimum level, the bottom float sensor will create an open circuit and a LOW value is obtained. This data is sent to the microcontroller which turns ON the pump and starts filling tank 1 with water from the sump tank. When the water reaches the maximum limit, the top float sensor and it creates a closed circuit, returning a HIGH value. This data is sent to the microcontroller which turns OFF the pump. Float sensors are also present on the sump tank so that we can ensure that the pump doesn't turn ON when there is no water in the sump.

Tank 1 and Tank 2 are interconnected with Motorized Ball Valve and the water enters tank 2 from tank 1 through this valve since the pump is not connected to this tank.

Now in case of tank 2, when the water level goes below the bottom float sensor, this sends a signal to the microcontroller to turn ON the motorized valve and the water enters tank 2 from tank 1 (if water is present in tank 1) and when the water level touches the top float sensor the valve shuts OFF.

These float sensors are also used to monitor water level in the tank. The water level and the state of the pump and the motorized valve can be seen on the dashboard.

Detecting Leakage and Displaying on Dashboard

flow meter-2.jpeg
leakage .png

Take two flow meters, and attach one to the tank and the other to the tap. Flowmeters are used to read the rate of flow of water which in turn can be used to calculate the total volume of water that has flowed through the pipe in a certain time interval.

During the regular flow of water, both flowmeters read the same values. If the readings of the two flowmeters vary by a large amount, it indicates an irregular flow that is caused due to leakage. This will be displayed on the dashboard and a valve controlling water flow to the two flowmeters is automatically closed. The valve connections used here are similar to that of the valve connections used for the valve between the 2 tanks.


The code for this purpose is attached below. It is written in Arduino IDE.

Generating Water Bill

Billing (2).png

The total volume of water that has flowed is calculated through flow meters and displayed on the dashboard. From this data, we multiply the volume by the water rate per liter and display the total volume consumed by the consumer and their corresponding water bill on the dashboard, subsequently individual bill is generated.

The billing information is sent to io adafuit using Arduino IDE.

All the information required to do so is available on the official website. Here is the link: https://learn.adafruit.com/adafruit-io-basics-digital-output/code?view=all


The code for generating the bill using nodemcu and Arduino IDE is attached below.


This project is jointly developed by students of RV college of Engineering, Bangalore

  • Neha P
  • Shreyas M Iliger
  • Jeff Mark Joseph
  • Saakshi Bagali
  • Vamsheesh K K
  • Sreekantha Sreekar
  • Lalith Kishore