As a Water Quality professional working in the drinking water field, I know how important it is to accurately monitor the disinfectant levels in the drinking water that gets served to the public.  Usually, that means taking weekly grab samples in the distribution system and measuring free chlorine or total chlorine residual via a DPD colorimetric test.  Sometimes, however, it would be nice to know what’s going on with the disinfectant residual when you’re not out there to take a sample.  It would be nice to log the residual over time.  That’s why I wanted to put together an inexpensive data logger that would measure and log pH, oxidation-reduction potential (ORP), and temperature.  From those three parameters, the disinfectant residual can be approximated, not to mention that they are interesting parameters to measure and log in their own right.  In my research for this project, I also came across some other uses in which this device might come in handy.  It seems that aquarists regularly measure these parameters to keep their aquariums healthy, and it can also be used to keep track of oxidant levels in apool or spa. These are three very commonly measured parameters in water system security devices that are being used more and more to make sure that a water system is not being tampered with. And, it can be used in the lab for testing oxidant dosing, or measuring reaction kinetics.

My criteria for the project were that it had to be fairly easy to make; relatively inexpensive; and pretty accurate.  I think what I’ve created meets those criteria, and I hope you do, too! 

Step 1: Parts and Supplies

Here are the materials I used in my project, and where I purchased them:

1. Arduino Uno:   http://stores.ebay.com/lemonbleue/
2. Prototyping Shield:  http://stores.ebay.com/chippartnerstore/
3. pH probe:  http://stores.ebay.com/lotsgoods88/
4. ORP probe:   http://stores.ebay.com/eseasongear/
5. pH & ORP circuits:  https://www.atlas-scientific.com/embedded.html
6. BNC connectors:  https://www.atlas-scientific.com/embedded.html
7. Temperature sensor: http://www.ebay.com/usr/saymlove
8. LCD keypad shield: http://stores.ebay.com/womarts/
9. SD card shield: http://stores.ebay.com/csmqshop/
10. 170 tie point breadboards: http://stores.ebay.com/chippartnerstore/
11. Nylon mounting hardware: http://stores.ebay.com/audiowind2010/
12. Project box: http://www.discountofficeitems.com/school-supplies/student-teacher-supplies/basic-school-supplies/pencil-boxes-pouches/advantus-super-stacker-stackable-pencil/p296171.html?q=pencil%20boxes

Various and sundry other parts were used, such as all the jumper wires, were purchased from e-bay vendors and other electronic supply companys.
<p>this is awesome! can you teach me how to command my SD and RTC to log data after every two hours? thanks for your reply :)</p>
<p>What type of output is given by the pH probe ??<br>Can i directly connect the output of the probe to arduino board ?</p>
I'm not totally sure, but I believe it outputs a voltage difference between the measuring electrode and the reference electrode. It's so weak though that you need an amplifier, so I don't think you could plug it directly into the Arduino.
Thanks <br>I will use an amplifier for that <br>I heard that it is very difficult to calculate the pH from pH probe as the output of probe is a sine wave and we have to pick a particular value for calculations. Is it so ??
<p>there is a sensor called sen0161 ph metter, in <a href="http://www.dfrobot.com," rel="nofollow"> www.dfrobot.com, </a> this one includes a module whit the comparator that you are looking for, ready to get conected with arduino, there also is the code and everything you will need.</p><p>http://dfrobot.com/wiki/index.php/PH_meter(SKU:_SEN0161)</p>
<p>I'm afraid that I don't know the answer to that one. Sorry, but let me know what you find out!</p>
<p>Sir, good eve. I want to ask if you know the temperature sensor used and and the probes used for the pH and ORP circuits? I am having a hard time finding the exact manufacturing/part number of the components. If you can help me sir, can you provide me a full list of the componets with its part numbers?? thanks in advance sir.</p>
HI <br>http://www.atlas-scientific.com/ You can find pH sensor and ORP sensor and board from here or you could buy pH probe from ebay if they do not deliver in your country.<br>As in for temperature there are various sensors like LM35 which u can use in your project.
<p>hello my friend!</p><p>im making a very similiar project, but i have a question, how do you calibrate de orp probe? in the manual says to DO NOT PRESS the calibrate button when the prove is connected, but when you want to change the offset, in the progaming code, to get zero drift voltage, the manual says that you have to PRESS the calibration button and see in the serial monitor a reading in milivolts that concerns the offset value we are looking for, i hope you can help me, or any body could, a hug! and thanks!</p>
<p>can i delete the line</p><p>Serial.begin(38400); and use the pin 0,1 as normal input/output?</p>
<p>Not sure. My suggestion is to try it and see what happens. Experiment!</p>
<p>Thus a 5% error would be plus or minus 0.268 pH for 5.35.</p>
<p>Um a plus or minus 5% error is above the range of error. You may have to clean your probe with hot 50 degrees C potassium chloride. The error rate for a good functioning ph meter is +- 0.1 ph or 0.01 ph.</p><p>Ph error for 5.35 </p><p>Min: 5.08 ph.</p><p>Max: 5.61 ph.</p><p>meaning the range for 5.35 could be 5.08 or 5.61 pH.</p><p>Daniel.</p>
<p>Another problem may be that you cannot leave a ph meter for long periods of time running in water due to the fact that debris and other things would eventually clog the sensitive and thin layer inside the ph meter and could especially over a period of time. When placed in a ph solution you need buffers like Potassium chloride to re establish the ions between the ph meter. Just if you stored a ph meter in water this would also destroy the ph meter. This could work but you need to check and calibrate the ph meter every day or so or even half a day to protect the ph meter. It is not RECOMMENDED to place a ph meter in water more than 4 -5 hours. (This is what the manual says too.) Also replacing frequently the ph meter would make this very expensive!! (These are a few problems with it) liked that you tried and the theory is smart.</p>
<p>Right again - pH probes can be sensitive and subject to degradation if stored in water. However, that said, I've been doing tests with a very inexpensive pH probe and letting it run for long periods of time in an aquarium I've set up as sort of an environmental waters test tank: it's a &quot;dirted&quot; tank with many live plants, a good flow of water, several fish, snails, etc. My pH probe has been going for a couple of months now with only the occasional wipe with a clean cloth. I check it in calibration solutions of pH 4, 7, and 10 about every two weeks, and it's been consistently whithin plus or minus 5%, which is really good for a cheap probe.</p>
<p>This sound very interesting and I liked the steps that you provided. However is this a bit complex? I could get a good 130 dollar ph meter from a certain online store and it has build in ph, temperature, and records data with memory. What was the total cost of doing this? Are there any advantages or disadvantages of using this? I log all of my ph data by paper and sent it to the computer.</p>
<p>You're absolutely right - there are many ways to solve any given problem, and yours certainly work. I was coming at this from the point of view of having not just pH, but temp and ORP as well. And I did not build this particularly for an aquarium, but for remote locations like water storage tanks or field monitoring of environmental waters. In that case, being able to log the data for long periods is quite helpful. Just depends on your application.</p>
<p>Sir!</p><p>I sent you a private message. Please check it out. I am a graduating ECE student with many questions regarding the project. Please make time answering my questions. Im from the Philippines and its so hard finding the components. Please help me...</p>
​Hi,<br>Other than what's already in myInstructable, here's the best I can do:<br>pH- http://www.atlas-scientific.com/product_pages/circ...<br>ORP - http://www.atlas-scientific.com/orp.html<br><br>And the rest, including the temp sensor, was purchased off of E-bay.<br><br>Patrick
<p>Sir!</p><p>I sent you a private message. Please check it out. I am a graduating ECE student with many questions regarding the project. Please make time answering my questions. Im from the Philippines and its so hard finding the components. Please help me...</p>
<p>what is the name of your ph and orp circuits? also, how did you connect the ds18b20 to the circuit??</p>
You can find thepH and ORP circuits here - https://www.atlas-scientific.com . And the wiring diagram is here - file:///C:/Users/pvowell/Downloads/pH_ORP_temp%20monitor_bb.pdf
<p>Excellent <br> job sir ! I am working with water quality monitoring in pipes in India, I have to write routing protocol and make the data logger to communicate each other. Then get data wirelessly from all the data loggers and save in a common web server or database. Whether this is possible sir? Please help me out to overcome this problem.</p>
<p>Hello,</p><p>I'm really sorry, but I'm afraid what you're trying to do is a bit beyond my capabilities. Hopefully somebody else who reads this can help.</p>
<p>Hi, thanks for taking the time to put this together. I have a similar setup using Atlas modules. I have done a lot of pH measurement in the past and am comfortable with the accuracy of the values but ORP is new to me. I am good on the electronics side, I get values, calibrate the ORP module to the calibration solution from Atlas. The mV reading jumps to the calibration solution value (225mV) My trouble is in interpreting the values. From what i read, a low(or negative) mV value indicates &quot;dirty water&quot; and a high mV indicated oxidizing agents which stands in for more sterile water. I am however unable get these results. The very most &quot;dirty&quot; water (stagnant warm dirty river water) is giving me high mV readings. I have a ozone generator and my goal is to be able to oxidize dirty water and see the result in the ORP. I wonder what kind of readings you are getting off the atlas ORP module and how they correlate with &quot;water quality&quot;. I sounds like you have some experience in this area.</p><p>Thanks so much,</p><p>Quentin</p>
Hi Quentin,<br><br>ORP really has nothing to do with dirty or clean. It is merely a measurement of the relative ability of the water to oxidize or reduce some other compound. A high ORP indicates an oxidative state, and a low ORP reading indicates a reducing state. A couple of ways to look at that:<br><br>1) If it's low, then the water has no oxidisers in it like chlorine. A simple experiment you can do is take the ORP of tap water; if it's properly disinfected with chlorine or chloramine, it will have an ORP level of &gt;500. Then add some dechlorinating agent, and it will drop down to &lt;200. All that means is that chlorine is a strong oxidizer, which is how it kills bacteria. Then when you add dechlor, it neutralizes the chlorine and the water is no longer strongly oxidative.<br><br>2) It can also mean the water has a high or low dissolved oxygen content. For example, I have a new dirted aquarium I'm setting up. Right now I just have new plants in it that I'm letting grow in while the water quality settles down before I put fish in it. I did a water change last week, and after adding dechlor to the water I was adding, the ORP in my aquarium was about 170. As the plants create oxygen which then dissolves in the water, the ORP goes up over the next few days until it evens off at about 400. Once I put fish in there and they are using some of the oxygen, plus adding carbon dioxide, which is a reducer, the ORP will drop.<br><br>Bottom line, ORP is best used as a relative measure - use it to compare your particular situation over time in different circumstances. If you do a water change and every time the ORP is 200 afterward, then you do it one time and its 500 afterward, it's an indication something is amiss.<br><br>Hope that helps!<br><br>Patrick
<p>How much did all the parts cost?????</p>
<p>Mr pvowell, how can I buy you product?</p>
Hi again pvowell, could you check the PH results yet? Did you check the results with another tool or with a basic PH sheets? <br> <br>As i said on my previous comment i had hard time with Atlas Scientific PH kit. Thank you.
Hi, <br> <br>So sorry it's taken me so long to answer. I wanted to make sure I had some good data for you, and it's been busy - what can I say. Apologies. <br> <br>I did a bunch of tests comparing the unit I built with a fairly decent lab grade pH meter I use at work. I have pictures of the meters side by side, but I can't paste them here. If you want to see them, send me an e-mail address and I'll be happy to send them. <br> <br>I started by placing the probes from both my unit and the lab pH meter in a pH 7 standard. My unit read 7.1 and the lab meter read 6.96. Then I did a pH 4 standard; my unit read 3.9 and the lab meter 4.01. Then a pH 10 standard; my unit read 10.6 and the lab meter 9.95. <br> <br>Then I took a water sample from the tap and read it with both meters. My unit read 6.71 and the lab meter read 6.13. Then I added 1.0 mL of 1N sodium hydroxide; my unit read 10.6 and the lab meter 9.90. Then I added 5 mL of 0.1N hydrochloric acid; my unit read 6.75 and the lab meter 6.25. Then I added 5 mL more of 0.1N hydrochloric acid; my unit read 3.05 and the lab meter 3.00. <br> <br>Reasons for the differences between the two could be: <br>1) My unit is not temperature compensated, but the lab unit is. <br>2) I've had trouble getting the Atlas unit to calibrate. <br>3) Probably most likely. the lab meter has a probe that cost about $100; my unit has a pH probe that cost a whopping $8. <br> <br>Hope that helps, and please let me know if you have any other questions. <br> <br>Patrick
Sir please share the pics that u have taken during bunch of tests.
Hi Patrick, thank you for your detailed answer. <br> <br>I have a new question then. When you test them with calibration solutions the difference was 0.2. Tap water difference was .6. <br> <br>Why do you think that difference occurs? <br> <br>Thank you.
Similar to the reasons given above. pH probes are not linear in their response, so different probes will react differently to the same change in hydrogen ion concentration. Since I had issues calibrating the Atlas pH circuit in my creation here, but had just calibrated the lab meter, they responded differently. The fact that you have two very different qualities of probes affects the results as well. Hope that helps.
I think i understood. As you said ph probes are not linear their response, ph values are also increases in a logaritmic way. Thank you pvowell.
<p>interesting. sadly most of yr productlinks seem to be complely irrelevant i.e. linking to toys, sunglasses, random hardware etc or no longer in existence. eg 3,4,5,7,8,9,10</p>
That's really interesting and good explained, thanks! <br>Why do you leave battery out of the box? Do you think is possible to make everything water-resistant?
Yes, it probably is possible. The way I had things laid out in the box I used, there wasn't room for the battery. If you used the right size of water-proof box, like a Pelican, I think it would work out just fine.
<p>hello, how long does the battery last?</p>
<p>Hi pvowell, what was the trouble while you are calibrating your Ph circuit?</p>
<p>Very very cool, I plan on making this for my salt water aquarium but with a few modifications.<br>I have few questions,<br>1) Is there enough room on the board to add and O2 and conductivity probe?</p><p>2) How do you calibrate it? I don't see anywhere in the instructions that would allow for calibration. </p><p>The probes should be calibrated with a standard solution initially and again periodically. The readings will also drift over time. Could account for the error of the probe.</p>
Thanks! I don't think there is enough room for either of those probes; if you didn't need the data logging, that would free up enough pins to add those. The Atlas Scientific web page talks about how to calibrate the pH circuit, although I've had a lot of difficulty getting it to work consistently. From what I've learned studying ORP, you don't really calibrate and ORP probe, you standardize it, although many people use the terms interchangeably. Emerson Process Controls has a good explanation of the process here - http://www2.emersonprocess.com/siteadmincenter/PM%20Rosemount%20Analytical%20Documents/Liq_ADS_43-023.pdf .<br><br>Thanks for the questions, and let me know if you have any more!
The Atlas Scientific PH kit is quit pricy, I mean I can get an external Ph-meter much cheaper than the Atlas Scientific PH kit. Do you think it would be possible to use an external PH-meter and &quot;hook in to it&quot;? Perhaps hack in to the LCD of the PH-meter and steel the values in to the Arduino?<br> <br> I read an instructable about hacking in to the &quot;Kill-A-Watt&quot; meter, a Ph-meter should be possible to hack also?<br> <br> Tips please!
I make cheaper, open source interfaces and you can get probes for much better prices than they sell it for! It sucks when I see awesome tutorials using closed hardware when there are a few of us makers out here that make this stuff :) I have a few tutorials on my site which will help anyone interested in pH and water quality in general, I think I should make an instructables for interfacing pH.
I will take a look at your products and I would really love an instructable for interfacing pH! <br> <br>Thanks!
Very nice work, I am thinking of maybe using this for monitoring my pool. How often do you have to calibrate the pH probe and does the time-before-calibration depend on if the probe is taken in and out of the sample or stay in all the time?
Thanks for the question. I've been using this for the last few months and I haven't calibrated it at all. See my reply to beingobserver below for recent comparison data to a lab meter. I think it correlates quite well for not being calibrated. I've been having trouble getting the Atlas chip to calibrate, which is why I haven't done so.
Awesome! I think I might have a use for this. It will be a nice addition to my swimming pool at home. It might also be useful in monitoring water quality in dialysis. I will have to check with my technical operations team on this one and I will get back with you if they are interested.
Very nice Instructable. I work in water purification for Engineers Without Borders, specifically in rural India, and would love to install a device like this at my project site. How long will the single 9V battery last when the logger is logging? I've found that most commercially-available data loggers either last a few days for high frequency measurements or last 18 months for very low frequency measurements. With this setup, everything is customizable, which is excellent! Thanks!
As written in this Instructable, not very long - only about 4 hours. That is primarily because the backlight for the LCD screen was drawing so much power. Since posting this, I've done some tinkering and now the program starts with the backlight off. I then added a button that will turn it on for a short time to read it. Even with the backlight off, in good light you can read the screen. I haven't had a chance to test it with this modification, but it should last a lot longer now. I've also been working on a high capacity, low cost battery pack to accompany this unit that I will be posting later.

About This Instructable




Bio: Patrick is a water quality and environmental regulatory compliance manager with an interest in all things technological and gadgety. And everything else besides.
More by pvowell:Skim Board Shelves Coding Randomness R3: Rolling Red Robot 
Add instructable to: