# Calculating the resistance of the resistors in the circuit

Hey,
I am using a pressure sensor in my Arduino circuit and am using its data sheet to connect the circuit. The circuit diagram that I am using has been attached as well. The sensor will be operating on 5V in the circuit. I have also attached the data relevant to the pressure sensor in the data sheet. The relevant pressure sensor is the one with 005PD written in the data sheet.

Could you tell me how to calculate the resistance of each of the resistors in the circuit or if possible, calculate it?

Thank you!

Sorry, I can't.

You should post a link to the sensor's data sheet (clickable) and describe your application in more detail.

I wonder if an easier solution would be to use an ads1115 a/d convertor. It has a differential mode and a range of programmable gain settings. So it might be able to take readings direct from the sensor without the need for the amplifier circuits.

That circuit is the standard instrumentation amplifier circuit, your search term is "instrumentation amplifier".

These days you don't need build a discrete amp like that, it all comes inside a single chip with one external
resistor to set the gain. For instance http://www.ti.com/product/INA333

(Incidentally opamp circuits typically only use the resistor ratios, so the absolute
value of the resistors is chosen to optimize noise v. power consumption, and is
in the typical range of 1k to 50k)

The common HX711 is an another option, it provides a serial input to the Arduino rather than analog.

The ADS1115 is unsuitable for a direct strain gauge input.

Hey,
The sensor will be attached to a LCD screen through Arduino board. The pressure sensor will take the readings from the surrounding and display it on the screen. This circuit in the previous picture is for the sensor since it is differential. Since you asked for the link for the data sheet it is as follows:

I could have used instrumentation amplifier for the above circuit but I have already bought the op amps for the circuit since it is easy to use and I have worked with op amps before. A picture of the op amps I bought is attached. I read one of the above replies to my post that op amp circuits use resistor ratios. So keeping that in mind in the circuit above what is the resistance of each of the resistors in the above circuit including the offset and gain resistor?

It would be greatly appreciated if I could get the exact absolute value or a suitable range for the resistors as I have already spent a lot on the following project and would not like to spend any more money apart from the resistors.

Thank you!

Unamplified relatives of that family might be a little bit cheaper than the internally amplified versions.
But you're going to pay more (and have more trouble) in the long run.

Throw away the sensor and get one with amplified output, or better, with a digital (I2C) output.
Then you don't need any extra circuitry.
Leo.

Edit
Which opamp are you trying to use.
"744" sounds like a distand relative of the ancient "741" chip.
Totally unsuitable for 5volt.

WattsThat:
The ADS1115 is unsuitable for a direct strain gauge input.

I believe you, but please explain why.

PaulRB:
I believe you, but please explain why.

Not enough gain by more than an order of magnitude. The lowest full scale input for the ADS1115 is +/-256mv, the sensor output is +/-20mv. You’d need an instrumentation amp in between to use the ADS but then why bother, just use an Arduino analog input. The only advantage would be the increased analog resolution with the ADS1115.

Ultimately, you trade resolution for speed with the ADS. Ignoring any I2C bottleneck, the Arduino internal A/D rate is about ten times faster than the ADS at its fastest conversion rate.

So the instrumentation amplifier would bring the +/-20mV signal up to a level suitable for the Arduino's adc, which is 10 bit resolution. The Arduino would be able to measure this with a resolution down to around (40mV/1024) ~= 40uV?

With the ads1115 set to max gain, it can measure +/-250mV with 16 bit resolution. That would be (500mV/65536) ~= 7.6uV. Isn't that around 5 times better, assuming noise is not an issue?

In terms of speed, yes, ads115 would be much slower. If many readings were taken and averaged to reduce noise, wouldn't that still be fast enough to update an LCD several times per second?

Ads1115 still seems like a good suggestion to me, so what am I missing?

It has all the calculations.

The worst on-a-chip modern instrumentation amplifier will be far better than anything the OP can cobble together with the uAF447. Datasheet attached. It’s an ancient +/-15 volt part and the input offset voltage is in the 5-8 mv range.

uAF77x.pdf (488 KB)

The modern equivalent, the LMV774, will be suitable. http://www.ti.com/lit/ds/symlink/lmv771.pdf

Ads1115 still seems like a good suggestion to me, so what am I missing?

Maybe it’s what TI left off the datasheet - which is just about everything when it relates to performance below the 2V FSR input rating. About the only thing you can find is that the rms noise goes up by a factor of five at the higher speeds, no surprise there. But, you’re left guessing as to the actual amplifier performance in the highest gain mode of the PGA.

A very basic back of the napkin view of your suggestion is that the two approaches are perhaps equal. Yes, the ADS1115 has five times the resolution but so what, you’re only using 1/6 of the device input range. Without the the actual system specs at the high gain and other factors like system noise, it’s anyones guess as to the overall performance of the 1115.

The TI datasheet goes into great detail about a typical application, reading a 50mv current shunt. They place an op amp in front of the 1115 which provides the biasing to do a bipolar input but the stage also has a gain of 5 and they (not surprisingly) state in 10.2.2.5 that the gain of the stage attenuates the ADC noise contribution. Of course it does, that’s why using the full input range of a device is desirable.

I look at the number of bits last, not first and using the bottom 15% of a devices useable input range is just inviting trouble.

Yeah, I'm also not getting why the ADS1115 is a poor choice for a strain gauge application. In addition to PaulRB's calculations, there is the fact that the 10 bit ADC in an Arduino isn't so hot, including lack of isolation of AVcc from Vcc. It isn't quite as simple as just using analogRead() and getting 10 bits out.

Isn't this pressure sensor just a strain gauge on a diaphragm? It seems simple to use the ADS1115 for this application.