Water Flow Management using IoT – A project done by Course Participants
I. ABSTRACT
Water is essential to human life and the health of the environment. To fulfill the good quality of water required by the people, we developed an IoT based water monitoring system for home, offices, and buildings, etc. To design a water monitoring system we measured the flow of water using water flow sensors which are working on Hall effect. We used a flow sensor to detect water leakage in pipelines. By placing this system in a smart building, we will be able to collect and analyze the water usage patterns of the residents and save a lot of water. Also, if the tap is open mistakenly for a long time then the user can get an alert regarding it.
II. BLOCK DIAGRAM
III. BLOCK DIAGRAM DESCRIPTION
The whole system is based on sensors connected to NodeMCU ESP 8266 to monitor the water quantity. NodeMCU is a microcontroller that works as a central component of the system. It is used to control and process data captured by sensors. This data is uploaded to the ThingSpeak cloud using MQTT protocol. It provides the graphical representation of data that can be used further for analysis. This data can be used for calculating the water bill for each house. The user is alerted by sending a notification if there is excessive use of water and if tap is open for a longer time knowingly/unknowingly.
IV. COMPONENTS USED
- NODEMCU ESP8266
- Water Flow Sensor
- Breadboard
- Power Supply
- Connecting Wires
1. NODEMCU ESP8266
NodeMCU is an open-source firmware and development kit that helps you to prototype or build IoT products. It includes firmware that runs on the ESP8266 Wi-Fi SoC from Espressif Systems, and hardware which is based on the ESP-12 module. The firmware uses the Lua scripting language. It is based on the eLua project and built on the Espressif Non-OS SDK for ESP8266.
Specification | ESP8266 |
RAM | 80 Kilobytes |
FLASH memory | 4 Mega Bytes |
Speed | 80MHz |
GPIOs | 11 |
IO Voltage Level | 3.3V |
ADC | 1 (10-Bit) |
Serial | 1 |
I2C | 1 |
SPI | Used by Flash Chip |
PWM IOs | All IO Pins with 10-Bit Resolution |
WiFi | YES 2 MBPS |
2. Flow sensor
This sensor sits in line with your water line and contains a pinwheel sensor to measure how much liquid has moved through it. There’s an integrated magnetic hall effect sensor that outputs an electrical pulse with every revolution. The Hall effect sensor is sealed from the water pipe and allows the sensor to stay safe and dry.
V. Working Principle of Water flow sensor
The Water flow sensor consists of a plastic valve from which water can pass. A water rotor along with a Hall effect sensor is present the sense and measure the water flow. When water flows through the valve it rotates the rotor. By this, the change can be observed in the speed of the motor. This change is calculated as output as a pulse signal by the Hall effect sensor. Thus, the rate of flow of water can be measured.
The main working principle behind the working of this sensor is the Hall effect. According to this principle, in this sensor, a voltage difference is induced in the conductor due to the rotation of the rotor. This induced voltage difference is transverse to the electric current. The water flow sensor can be used with hot waters, cold waters, warm waters, clean water, and dirty water also. These sensors are available in different diameters, with different flow rate ranges.
The sensor contains three wires. Red wire to connect with supply voltage. Black wire to connect to ground and a yellow wire to collect output from the Hall effect sensor. For supply voltage 5V to 18V of DC is required.
The pulse signal is a simple square wave so its quite easy to log and convert into liters per minute using the following formula.
Pulse frequency (Hz) / CF = flow rate in L/min.
Where CF is a calibration factor for flow sensors that can differ from one sensor to another.
Features:
- Model: YF-S201
- Sensor Type: Hall effect
- Working Voltage: 5 to 18V DC (min tested working voltage 4.5V)
- Max current draw: 15mA @ 5V
- Output Type: 5V TTL
- Working Flow Rate: 1 to 30 Liters/Minute
- Working Temperature range: -25 to +80℃
- Working Humidity Range: 35%-80% RH
- Accuracy: ±10%
- Maximum water pressure: 2.0 MPa
- Output duty cycle: 50% +-10%
- Output rise time: 0.04us
- Output fall time: 0.18us
- Flow rate pulse characteristics: Frequency (Hz) = CF * Flow rate (L/min)
- Pulses per Liter: 450
- Durability: minimum 300,000 cycles
- Cable length: 15cm
- 1/2″ nominal pipe connections, 0.78″ outer diameter, 1/2″ of thread
VI. SOFTWARE USED
- Arduino IDE
- Thingspeak Cloud
VII. CIRCUIT DIAGRAM
VIII. WORKING
A number of flow sensors are connected to GPIO pins of NODEMCU. This sensor sits in line with the waterline and contains a pinwheel sensor to measure how much water has moved through it. There is an integrated magnetic Hall-Effect sensor that outputs an electrical pulse with every revolution. By counting the pulses from the output of the sensor, we can easily calculate the water flow rate (in liter/hour – L/hr) using a suitable conversion formula. We can measure water consumed by multiplying the flow rate with time for which water is flowing. One flow sensor is used to measure flow from the main tank and then one flow sensor for each house is used. If there is a large difference between the amount of flow from the main sensor and flow through other sensors then we can say that water is leaking somewhere. By adding water usage of each day for each house we can calculate monthly bills for each house.
XI. CALCULATIONS
Frequency of output pulse from flow sensor output is given by CF X Flow Rate
Where CF is a calibration factor of the flow sensor. We can find this calibration factor bypassing a known amount of water through sensor. By dividing the output frequency of pulse from the sensor with this calibration factor we can get the flow rate in L/min.
We can convert this flow rate from L/min to mL/sec by the following conversion,
Flow Rate x 1000/60. Multiplying this flow rate by time (in seconds) we can get the current amount of water (in mL) flowing through the sensor. By adding the current amount of water cumulatively we can get the total amount of water flowing through the sensor for that time period.
X. CONCLUSION
In this project, a prototype water monitoring system using IoT is presented. For this, some sensors are used. The data is sent to the cloud server via NodeMCU ESP8266. The collected data from all the sensors are used for analysis purposes for better solutions of water problems. So this application will be the best challenger in real-time monitoring & control system and use to solve all the water-related problems
XI. FUTURE SCOPE
We can add a pH sensor, temperature sensor, and turbidity sensor to check the quality of water. We can also use the ultrasonic sensor to check the level of water in the tank. If the water level is low then the notification will be sent to users. By using a solenoid valve we can turn on/off the water supply from any place. Also, we can predict water usage using machine learning algorithms. It can also be possible to notify the user if the water is not good enough for drinking.
XII. APPLICATIONS
- This system can be used to notify the user if there is leakage in the pipeline, hence by turning off water supply we can minimize the waste of water due to leakage.
- This system provides real-time data for the water usage of each user. This data can be used for monthly billing of water usage, hence the user will have to pay for the amount of water that he/she will use.
- Users will get information about daily usage of water. If they are using an excessive amount of water this information will help them to control water usage.