Introduction: Web Based Water Metering With IoBridge
After the real-time power meter project I did back in January, the next logical step seemed to be an ioBridge based water meter. Lets face it, power conservation isn't going to save the planet on it's own. There are plenty of resources besides electrical power that each of us use on a daily basis. All these resources have a measurable impact on the environment and our bank accounts. Reducing consumption benefits us all.
I grew up in the country where our water was supplied by a well. Conservation was easy back then: if we used too much water, the well ran dry. These days my water comes from city. The water doesn't run out if I shower too long, but I still want to save water (and save money) when I can.
This project was a little easier than the power meter in terms of technical skills but it did require some basic plumbing know-how. The concept is simple enough: I installed a water meter on my home's incoming water line which flips a switch for each gallon of water traveling thought it. The switch creates electrical pulses that are are counted by an ioBridge module. The data is tracked by ioBridge.com using their free web based data logging service.
My plan was to do this over a weekend, but it only really took about an hour or two. I think I spent more time at the hardware store picking out the proper fittings and adapters than actually installing the stuff.
Hardware and Tools required:
DLJSJ75C Water Meter
IO-204 ioBridge Module
teflon plumbing tape
assorted plumbing fittings
2-conduction wire, about 20 ft.
PVC primer and cement
hacksaw (for cutting the pipe)
Step 1: Figuring Out Where to Put the Water Meter
My house is in a flood plain (more specifically, it's in a Florida swamp). Therefore, my house is built on stilts. This made it incredible easy to access the water main. It was fastened to one of the cinder-block posts supporting the house. All I needed was a straight section after the main water shut-off valve to install the new meter. After removing a bit of insulation, I had my straight section to work with.
Step 2: Figuring Out What Plumbing Fittings to Use
The water meter came with two coupling adapters to make installation easier. However, I still needed to get from 3/4" NPT threaded end to PVC pipe. Not that this is difficult. There are just soooo many plumbing fittings to choose from in a big box hardware store. It took a little while to figure out exactly what I needed. I also wanted to include a hose connection. Not a big deal, just another couple of fittings to figure out and I was ready to go.
Step 3: Assembling the Water Meter Section
Because I didn't want to shut off the water and then get stuck half way through the project, I did as much as I could without actually cutting the main water line. This meant assembling the different fittings and connection pipes ahead of time. All of this was very simple. It required a little teflon tape for the threaded connections and some PVC cement for the pipe fittings. Now I had a solid section that could be installed quickly.
Step 4: Marking the Water Line for Cutting
Since the water meter section was already assembled, I knew exactly how much pipe to remove from the main water pipe. I just held the assembly up to the pipe where I wanted to install it, then made a mark .75 inches from the end on each side. The .75 inch extra is needed because the main water pipe fits into the water meter assembly ends by that much.
Step 5: Cutting the Water Main
After I turned off the main water shut-off valve, I cut the water pipe where I had marked earlier. A gallon or so of water came out of the pipe from what was trapped in the plumbing above. I mopped up the water with a towel and dried the area the best I could.
Step 6: Water Meter Installation
I unscrewed the threaded couplers from both ends of the water meter and glued them onto the cut ends of the pipe. After the PVC cement was set, I just reconnected the meter to the couplers and tightened them down. All very, very easy.
Step 7: Check for Leaks
I slowly turned the main valve back on and checked for leaks. Fortunately, I didn't have any.
Step 8: Running the Signal Wire
Nothing special for this part. The water meter comes with a 6 ft section of cable. My ioBridge module was in my house above. I drilled a tiny hole in the floor and ran a long section on 2-conductor wire from my ioBridge module, through the hole in the floor, to the water meter. I just soldered the wires, covered them with heat-shrink tubing and tucked the wires behind the water line to keep them from getting exposed to the elements.
Step 9: Connection to IoBridge
This is super simple as well. Using a screw terminal board, I just connected one wire to ground and the other to a digital input. The water meter contains a reed relay contact switch. As the meter reads each gallon of water, it connects and disconnects the switch. All ioBridge needs to do is read the numbers of times the switch closes to get the number of gallons used. The latest revision ioBridge modules have built in pull-up resistors, so I didn't even need to add them myself (as done here with the Twittering Toaster)
If you aren't familiar with ioBridge, check out there website here. Basically, they sell a little box that allows you go control/monitor things from the internet.
Step 10: IoBridge Configuration
ioBridge recently added a free data-logging service to their long list of features. The cool thing about data-logging is that I don't need to have a web page up to record the data. The ioBridge module sends the meter pulse counts to the ioBridge server and they keep track of all the data for me. This means I'm not running a computer 24/7 just to log the data. To configure my setup for logging the number of pulses, I signed into my ioBridge account and set the I/O channel to send data when there was a digital input state change. This way data only gets sent when the contact switch in the water meter is tripped. I then went to the "modules" tab and clicked "add log". On the next screen, I was presented with a few options for data logging. I chose "Digital Input Counting", then I went on to select the module and channel number. For the "States to Count", I picked "On State" and I used 15 minutes for the frequency. The frequency basically sets up how the plot will look. Choosing 15 minutes means the plot will be divided into 15 minute chunks. Finally, I clicked create log and that was it. It took about 15 minutes for my first data point to show up, but I've been collecting data since!
That's it, only 10 steps! Now when I log into my ioBridge account, I can view the past day, week or month of water usage down to the gallon in 15 minute windows. The plots are interactive and allow zooming, panning, etc. ioBridge also gives the option of downloading the data in a CSV file. This feature will come in handy when I need to import the data into Excel and do a little analysis.
And before someone asks... I don't plan on connecting my water meter to twitter. Although I'm sure there is already a Tweet-a-Liter in the works out there somewhere.