Skip to content

An attempt at interfacing DO2 probe to Arduino. To read dissolved oxygen levels in seawater tanks.

Notifications You must be signed in to change notification settings

joakimsk/dissolved-oxygen-meter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dissolved Oxygen Meter

Hardware

  • Arduino Uno
  • LCD 16x02 Keypad Shield
  • OxyGuard DO Probe
  • LM124N Operational amplifier (Or any other LMX24N) datasheet

Dissolved Oxygen probe

The OxyGuard is a galvanic cell. Figure out your model here

The one I have is a 4-wire with brown and blue for + and - from the galvanic cell. The NTC is between yellow and black, but not used for now. The output seems to be internally temperature compensated, so the NTC is not necessarily strictly needed. I believe my model is D0234C for mg/l and % saturation measurements.

A membrane keeps water out of the electrolyte solution, this membrane can be replaced.

See patent 4 495 051 for a description of galvanic cell oxygen sensor.

Circuit

The output is of a few millivolt, proportional to oxygen saturation. We use non-inverting op amp to amplify.

2.5 to 5 mV per mg/L of O2 dissolved should give us for sea water, up to 10 mg/L, or up to 50 mV output. We should probably assume that the value can end up at 80 mV under normal conditions.

Vin to Arduino is 5v, so our gain should be max 5000/80 = 62.5

I think we can say a gain of 50 is fine, so we do not max out the ADC.

The amplification of LMx24 is based on Rf = 1M and Rin = 8.4k, gain = 119.05 Output voltage = Input voltage * 119.05

schematic

Turns out the LM124N cannot take input above Vin-1.5v. We make gain 50 by using a 20.4k and a 1M resistor.

At 30 mV output, that is 1.5v to the ADC. ADC value around 307 with 10 bit and 5v supply voltage.

Operation of software

We use the Select button to set calibration point at 100% DO2. You need to make 100% DO2 water. Take two buckets, and move seawater in between them maybe 30 times. Water should now have 100% DO2, sort of.

Samples are averaged, 16 samples at 50 ms intervals.

Ref

YSI Handbook

About

An attempt at interfacing DO2 probe to Arduino. To read dissolved oxygen levels in seawater tanks.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages