Conserving water reduces the effects of drought, cuts the cost of energy bills and prolongs our access to clean water – a finite resource. According to the Saving Water Partnership, automatic sprinklers waste “40%-50% of the water used.” We wanted to build a tool that incorporated hardware and software to reduce our environmental impact, so we focused on water use in areas of extreme drought. California is well-known for its droughts, and there is a lot of data and visualization for the situation in California, but through research we found that the state of Oklahoma has been experiencing severe droughts that are less publicized, so that became our focus.
What it does
Sprinkle connects to the sprinklers in a homeowner's lawn and monitors when to sprinkle. It can be managed not only by the city but also by the homeowner, while also weighing data on the local weather and soil moisture. A user can choose their level of water necessity within the city regulations and what hour they would prefer to sprinkle. We have "economy" and "luxury" options depending on how lush they prefer their lawn and how frugal they are economically and environmentally. Hardware: We build a two-nail wired system that determines how moist the soil is. Since water is conductive, a lower current indicates dry soil, then allowing users to sprinkle. The act of sprinkling is demonstrated by an LED light turning on or off. Software: The user interface gives the user and the city the ability to change settings, sprinkle on command, and view the county water-use data. Data: We project the data we receive from the soil moisture detected, frequency of sprinkling, and general "thirst" (based on the two other data sets and the recent weather) of each county and visualize that data on our site. As Oklahoma experiences a drought, our site displays which counties are overwatered and which are in need of a sprinkle. With this information, our system can conserve water by redistributing sprinkles across the state.
How I built it
We used an Arduino for the hardware, with Pyduino and C++ managing the Arduino actions. We edited a template for the UI and another visualization template for the Oklahoma data. We used Flask to integrate our site with the Arduino.
Challenges I ran into
We struggled to find a substitute for the two nails that would make up the soil sensors. At first we attempted to solder resistors together, but we needed something thicker that could resemble a nail. After asking for help from the ProfHacks leaders and volunteers, we were able to obtain a thick copper wire that could serve as our nail. We also had problems getting the Arduino to control a blinking LED light. Through trial and error, we found that taking out the resistor fixed the problem.
Accomplishments that I'm proud of
We were able to control the blinking of an LED light using Python and Arduino. Additionally, we used highcharts to create interactive maps of Oklahoma that display each county’s soil moisture, sprinkle frequency and need for water. We used a soldering iron and wire to create the soil detector.
What I learned
Because we were working with Arduino for the first time, we learned how to connect the Arduino to our laptops and how to send data from our web app to the Arduino device. Although we were unfamiliar with breadboards, Arduinos, and resistors when we began working on sprinkle, we were able to use all of them to make an LED light blink on and off. Additionally, we learned how to solder in order to create our nail wire sensor system.
What's next for Sprinkle
In the future, we hope to have Arduino communicate with the Weather API so that each county’s precipitation levels determine whether or not the sprinkler should go off. Further, we hope to incorporate machine learning so that we can redistribute the excess water to counties that have higher thirst levels.