Strain gauge circuit question

I found this design schematic in a specsheet (LMP2232A)

Page 1. There is an op-amp right after the voltage regulator. I suppose it is a follower but why is it needed?

I assume the other three op-amps are amplifying the difference and shift to unipolar voltage range, right?

OK, I thought the LM4140A was a voltage regulator. It turns out to be a precision voltage reference. So this makes sense to have a follower to stabilize the output.

Also, the rest of the op-amps are two followers and an inverse amplifier. The single supply chops off the negative half of the voltage but that should be OK since a strain gauge only needs to read one way (weighing plate is not used to sense upward force).


Most likely you have moved on but you might consider using a "instrumentation" amplifier IC in place of the three amplifier circuit. The instrumentation amplifier has closely matched internal resistors for better performance over time and temperatures. You would then set the gain using only one precision resistor. That resistor should be a 0.1% with 25ppm/C as a min. Those cost are still affordable.

Also, if interested, I'm working on a higher precision analog to digital converter (DAC) for Arduino. It's a small shield with a 22bit DAC. The shield has a trimmable voltage reference which would allow you to connect your strain circuit and trim the DAC output to a Zero value. The DAC also has a built in trap filter for 60 Hz noise found in most labs.


Look at the HX711-frontend for your needs.

// Per.

I would sugest that you use a circuit similar to the one shown with the ISL26102.

There are a few similar parts from various manufacturers.

It encompases the intrumentation amp, Variable gain amplifier and high resolution ADC converter with programable filter. The best part is these devices work ratiometrically so that the quality of the voltage at the top of strain bridge is not important and the +5V rail of the Arduino would be just fine.


Here is a quad HX711 board for the Mega2560 SPI port for Ethernet (I use the Mudbus lib for ModbusTCP) and I like the Digole I2c for a touch screen.

I have revised it but it uses the orange chip on Ebay. and the Hanrun W5100 for ethernet.

It also has a pot for the 3/5v rs485 BOB


Here are the evil twins built out;

one with jacks; 3.5mm stereo plugs;
the other with terminal blocks; these are tiny;

the digole display plugs into either of the headers on the right either spi or i2c;

these are set for 5v operation on a Mega. but they could be set for 3.3 on a due;

I think I will delete the fourth hx711 and add the ADS1115 (sitting on the display);

the RS485 is either 3/5v sits on the UNDER SIDE of the shield. it just misses the reset button;

I have the reset pulled up to just near the reset pin but I didn't bother to put the switch on the board;

THe 10kNTC sits under the third HX711 and was supposed to be a smaller one;

THe HANRUN Enet comes out the angle header at the front for now; Modbus or S& if I don't use the local display.....I guess I could do both if I use i2c on the display....

I will move the connector 0.05 forward to be OK with a vertical connector, but for now I am targeting a hammond 1590 deep enclosure.......


Not that it matters much, Notes....
I revised the board to use an ADS1115 (half wide purple BOB) and flipped a few things around, for space...the ENET W5100 connection and RS 485 are still under the board on Solder layer. I will likely go to a six position Terminal block for the RS485 A+B-S connector....

The Touch comes out the headers on the top either I2C or SPI with room for vertical connectors to the digole touch/SD.

Still a little I want to move around for the external I2C header on the top left corner.....too close to the edge stuff.

Nake sure the Mega Header pins are Long enough to Avoid hitting the USB connector on a MEGA2560.

I had to go with wire jumpers for the CAN connections/A14/A15.. I suppose you COULD Jumper them to the A2/A3 ADS1115 pins to there but that would mean AVOIDING the ground at the bottom left unless you wanted Aret to be ground for all channels on the ADS.

I did compile the code for this and it scans at about 350 ms with Modbus TCP.

Did any one ever do the ISL26102 or ISL26104??

And it is up and running. Need to strap the D10 pin for Ethernet CS. and NO reset to that red board. The display and touch are quite nice. I am sure that will change with my fingerprints....Still can get cycles under 500ms....which is OK for process measurements.....maybe

Time to Box it up.

3 24 bit strain gauge inputs.

3 mv inputs differential.

1 Thermistor 10k NTC for temperature compensation internal.

4 16 bit with PGA voltage inputs User scaled.

And all the leftover Arduino analogs 6,7 an 9-15v that could be graphed.....that's 20.

Modbus TCP or S7 Profinet.

RS485 Modbus RTU. I also do Multi-drop to a pump network for blending.

320X240 color touchscreen

SD data card.

USB Logger. USB powered or POE.