1
\$\begingroup\$

I'm building a control panel for an old altitude training machine and I need to measure the output of an oxygen sensor with an arduino. The oxygen sensor (medical oxygen sensor OOM202) is a micro fuel cell which outputs a voltage between 200μV and 20mV depending on the oxygen level. I'm using a LMC6482 CMOS dual rail-to-rail op amp running on a supply of 5 volts to amplify the signal before feeding it into the analogue input of an Arduino Uno. The resistor connecting pins 1 and 2 is 270kΩ and the resistor connecting pin 2 to ground is 1kΩ, though later I changed these to 20kΩ and 100Ω respectively (to no avail).

I've done about as much as I can to reduce noise and interference in the circuit, but the op-amp is behaving weird. I've measured the voltages of each of the pins and got the following:

  • Pin 1: 185mV
  • Pin 2: 29mV
  • Pin 3: 13.8mV
  • Pin 4: 0mV
  • Pin 8: 4.92V

I have confirmed the resistances between the pins is what I expect:

  • Pin 3 to Pin 4 (with sensor disconnected): 20kΩ,
  • Pin 1 to Pin 2: 20kΩ,
  • Pin 2 to Pin 4: 100Ω

What am I doing wrong? My calculations say the output at Pin 1 should be around 2V. The pinout diagram taken from the LMC6482 datasheet A Schematic showing how my circuit is supposed to be working, made using EveryCircuit Here's a sketch of my circuit made using Fritzing. Oxygen sensor is attached to the connector next to the three pushbuttons. 12V DC power supply and the valve control signal is connected to the triple terminal block on the bottom right; this is the cable that runs back to the altitude trainer. A photograph of the circuit implementation with details highlighted. S+ and S- refer to positive and negative terminals of the oxygen sensor respectively.

\$\endgroup\$
14
  • 1
    \$\begingroup\$ Check all your connections, the IC is upside down. \$\endgroup\$
    – D.A.S.
    Commented Jul 9, 2021 at 5:25
  • \$\begingroup\$ It can't be... The dot is next to pin 1, which is output A in the bottom left. \$\endgroup\$ Commented Jul 9, 2021 at 6:14
  • 4
    \$\begingroup\$ I see it as backwards on your fritzing. Realise that deriving a schematic from your fritzing is challenging. You’d be better off drawing us a real schematic. \$\endgroup\$
    – Kartman
    Commented Jul 9, 2021 at 6:25
  • \$\begingroup\$ No decoupling of the OPamp ? \$\endgroup\$
    – Antonio51
    Commented Jul 9, 2021 at 9:44
  • 1
    \$\begingroup\$ I agree with everyone's thoughts on Fritzing. It's an absolute pain. \$\endgroup\$ Commented Jul 11, 2021 at 9:27

1 Answer 1

1
\$\begingroup\$

The key is Fig 25 of the datasheet datasheet, where the either the gain drops or the offset voltage rises when the output approaches the negative rail. The input offset voltage may also be contributing.

Either find a better op amp or somehow bias the output above 0V.

..and please confirm that you have not left the inputs of the spare op amp floating.

Oops - just realized that the scale on Fig25 is uV not mV, so this probably isn't the problem.

I'd add some bypassing and terminate the inputs of the spare op-amp, otherwise I'm out of ideas.

\$\endgroup\$
2
  • \$\begingroup\$ Guess I'm still a noob. Yeah, I left the spare inputs floating, and assumed that rail-to-rail meant actually rail-to-rail. I'll try your suggestion (and I intend to set up a test bench to just test different ICs until I get one that actually works predictably. \$\endgroup\$ Commented Jul 12, 2021 at 3:07
  • \$\begingroup\$ To get better ground level output place a diode in the negative lead with a bypass cap across it. Use diode cathode as opamp Vnegative and diode anode as ground. This gives you an approx -0.6V negative supply. \$\endgroup\$
    – Russell McMahon
    Commented Jul 13, 2021 at 23:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.