WaterGuardian is a prototype that designed to conserve water with its two major features, observe + track + control every drop of water you use in home and rain harvesting. Unlike ordinary water conservation system, WaterGuardian is an IoT solution that able to deliver connectivity, real-time capability and data-analysis to users. With connectivity, users can access this system anywhere, anytime at any part of the world (as long as there is internet), all the data will behave in real-time and these tracked data provides valuable insights to users to analyse the consumption pattern in their home and enable them making better decision about their water consumption in the future.
How it works
Behind the scene, IoT is not a magic. All of these is made possible with IoT DevKit (Module + DevBoard) called “Artik 10” from Samsung, a development board (just like an Arduino!) which has remarkable performances for an IoT board. For details about the specifications, click here. For the success of this project, “Artik 10” required to work closely with water-related sensors, such as water level sensor and water flow sensor. For controlling the water flow, pumps and valves are used for that. Meanwhile for harvesting the rain, a rain water sensor is used to detect the presence of rain. Due to not enough GPIO port, a small Arduino Pro Mini Atmega328 is used in this project to assist in controlling 1 pump and responsible for 3 water level detection.
1) There are two barrels, for the first barrel, which to fill the raw water either from rain water or home main water supply or both, the water supply will continue to supply unless if there’s raining or the water is fully filled in the barrel 1, which water level sensor 1 will responsible for that.
2) Water pump 1 will pump the water to flow to the water filter for filtration, allowing clean water to flow into barrel 2. Water level sensor 2 will ensure there is at least enough water level prior pump for the filtration.
3) The clean water from barrel 1 will continue to fill up barrel 2, until the water reach the level of water level sensor 3.
4) If the water is reaching the level of water level sensor 4, water pump 2 distribute the water to water closet, bathroom and kitchen.
5) Barrel 1 is open, so that the rain water is allowed to flow into it. Barrel 2 is always closed, so that the clean water is isolated from other raw water source.
The features of WaterGuardian Platform include:
Dashboard - allow users to have an overview about the water consumption pattern last 48-hours, current weather, real-time consumption bar, water goal and consumption forecast for next 24-hours.
Weather Forecast - forecast about the weather based on users location, with full report forecast for next 2 days, and temperature pattern within 48-hours.
Consumption Calendar - enable users to view their water consumption in Calendar mode. Each blocks present with location, description, total usage, average rate and duration gap during usage.
Water Goal - enable users to set their own water goal. Water goal determine how much water they want to use, once the actual water consumption exceed their water goal, WaterGuardian will send notification to users and stop the water flow with defined location (eg: water-closet, bathroom, kitchen or all).
Real-Time Monitoring - provide users with real-time monitoring the consumption flow rate data (unit in L/min). Users can control the water flow here.
Email Notification - if the water data consumption has exceeded the water goal, this platform will send an warning email to your email address. So, in this tab, you can configure your email address here. This allow Artik 10 to send email to you. All of this is done using MailGun API.
Data-Logging - provide full report of water consumption data to users.
API Calls - RESTful model that provide required Device ID and Device Token in order for any IoT device to POST sensor data and GET command from this platform.
Hardware Demonstration Video
This is a full demonstration video for WaterGuardian hardware. This video will demo about the full operation of this prototype, include:
- Powering WaterGuardian
- Supply Water to WaterGuardian
- Rain Harvesting
- Water Filtration
- Distributing the Water
- Controlling Water Flow
- Alert Notification + Email
Please view the demo video in my youtube channel, here.
Platform Demonstration Video
This is a full demonstration video for WaterGuardian Platform. A web service that allow users to monitor their water consumption data in real-time. Demonstration include:
- Weather Forecast
- Consumption Calendar
- Water Goal
- Real-time Monitoring
- Email Notification
- API Calls
Please view the video in my youtube channel, here.
Replicability for this Project
With aim to increase the applicability of WaterGuardian to other parts of the world, the materials used in this project are chosen from objects that are much easier to find. To find out more about the materials used in this project, please download the Bill Of Materials List in below section.
Bill of Materials
Schematics Diagram for this project:
Please be noticed that, WaterGuardian is still a prototype, and some of the functions still require more time for development, the parts included:
- Crash in Meteor Development
- Posting the sensor data to the Artik 10 (Cause by the crash in Meteor Development)
- Getting the remote state for the Artik 10 (Cause by the crash in Meteor Development)
- Water Consumption Forecast
Tutorials for Artik 10
I will soon breakdown some of the features here, and explain comprehensively in my profile page in Hackster.io, a community website dedicated to learning hardware. I will upload the codes and tutorials there. So, please visit my profile page. My roadmap for Artik 10 tutorials:
- Reading Water Flow Sensor with Artik 10 with C programming
- Enable Meteor Development with Artik 10
- and more ...