2

I am using a pressure sensor with my Arduino Uno. Below is the amplification circuit for the sensor.

enter image description here

The recommended reference voltage is 1V DC, but I had been using the 3.3 V of Arduino as reference and been getting 206 ADC values at 1 volt dc with rise of 2 ADC value for 1 mmHg rise.

To increase the sensitivity of the system I first desired to bring the base value of the ADC down to 0, so I added resistances in the path of the reference voltage 3.3 V but after a point no matter how high the resistance the base value wouldn't drop below 54 ADC. I am currently holding the reference voltage at close to 1V DC. Now with my ADC at 54, I should be able to amplify my signal by 1024/54 = 18 times, but to do that I used a LM324N and the outcome was not ideal. To estimate the gain in each op-amp I used the below calculation which was for a LM358 but which I thought might be the same here.

enter image description here

So I placed a 56K in R2 of first Op amp of the four in LM324N, and I placed a 10K in the R2 of the second Op-amp. Result - a base ADC of 700 (with noise fluctuation) But no shift in ADC values with change in pressure. In fact I notice that even if I change the R2 of first op-amp to 10K, then there is a shift in ADC with pressure rise but not as much as needed. If I use the third op-amp the signal goes haywire and AC like.

I need to know which amplifier to use so that noise is minimal possible, drift is minimal possible, reaction to pressure change is instantaneous, outcome stays linear.

DribbleNibble
  • 482
  • 11

3 Answers3

4

If you want more gain from the circuit, don't add another amplifier - just adjust the value of R6. A lower value there will give you more gain from the 3-opamp instrumentation amplifier circuit.
The 3rd opamp in that part of the circuit is a standard differential amplifier, so you can also adjust the gain by changing the ratio of R4/R9 and R8/10 - but make sure to keep R9 = R10 and R4 = R8.

This leads on to adjusting the Ref input. You say that you've been adding resistors between Ref and the voltage source - this is a bad idea, because you're effectively increasing the value of R10 (by putting other resistors in series with it) without similarly increasing R9 by the same amount - this complicates the otherwise reasonably simple gain equations for that part of the circuit.
If you want to adjust the Ref input, make sure that you use a low-impedance voltage source to drive it, for example you could use another opamp as a non-inverting buffer and feed the input of that buffer from a voltage divider.

brhans
  • 14,373
  • 3
  • 34
  • 49
3

I'm assuming that you are powering the LM324 from +5 volts and ground/0 volts.

An LM324 powered from 5 volts will not be able to provide the circa 4.718 volts after amplifying by 18. An LM324 does not have a rail-to-rail output voltage. It can get close to 0 volts at the output but, the upper limit will be around 3.5 volts on a 5 volt positive power rail.

Andy aka
  • 434,556
  • 28
  • 351
  • 777
1
  1. It looks like you need a reasonable accuracy, but trying to use a very inaccurate and noisy voltage source (3.3V from Arduino) as reference. I would suggest a dedicated voltage reference for that - it will be not noisy, it will be temperature stable.
  2. Using Arduino's ADC - that is far from the best choice indeed. It is way to simple primitive (resolution, linearity, reference voltage stability) for good measurements.

To have a better answer from an engineer I would recommend to mention overall "accuracy budget" in principle.

Performing a preliminary calculation of it - which part of signal path brings which errors would provide understanding of whether built-in ADC is "good enough" or not.

Alex Stark
  • 52
  • 3
  • The thing about accuracy is I cannot be sure. The reason I am doing all this amplification exercise is that I am trying to pick a signal in pressure change but I don't know how strong or weak that signal is going to be. I was hoping that if I can amplify the base signal by at least ten times I might detect it. I understand arduino's reference 3.3V is noisy, would it be a good idea to set a 1V reference with a buck convertor and a independent power source? – DribbleNibble Dec 02 '22 at 13:43
  • 2
    Buck converter = tons of switching noise. Research dedicated voltage references; these devices do exist. – rdtsc Dec 02 '22 at 13:54