Reading Small voltages

zach_ina_box:
You are correct about the instrumentation amplifier, I should have used a better amp than the 741 but I am out of time thus I must use what I have and make it work. A bridge is classified by how many active elements are in the bridge, mine has two thus is a half bridge. The most frustrating part is that we utilized the same configuration, only with a quarter bridge, and a 741 op amp to measure pressure in a pressure vessel in a lab and it worked fine. The difference being that we measured the output using a very sensitive multimeter and I no longer have that luxury.

Well I would very much dispute your definition of various bridge configurations. How many of the resistance elements have fixed values Vs variable values has no bearing on if the circuit configuration is in fact a classic four element Wheatstone bridge configuration or not, as yours most certainly is. You are certainly allowed to have your own personal definition of circuit configurations, but just don't expect to be able to communicate to others clearly what you mean. :wink:

Lefty

Well I would very much dispute your definition of various bridge configurations.

Yes I agree with that.
If you are just going to make up definitions expect people to miss understand you.

What I can't understand is that you say you are out of time and you will have to make what you have work. Why not use the time you will waste on the futile taks of trying to get it to work, just doing it properly!

While the circuit is indisputably a Wheatstone bridge, when naming strain gauge configurations one considers the number of active arms. The OP's configuration is called a half bridge circuit by those familiar with the terminology and can be verified by reading the data sheet for a common strain gauge amplifier from Analog Devices http://www.analog.com/static/imported-files/data_sheets/5B38.pdf

edit: fixed link

PapaG:
While the circuit is indisputably a Wheatstone bridge, when naming strain gauge configurations one considers the number of active arms. The OP's configuration is called a half bridge circuit by those familiar with the terminology and can be verified by reading the data sheet for a common strain gauge amplifier from Analog Devices 5B38.pdf

Your link is broken, maybe it's only a half or quarter link? :wink:

retrolefty:

PapaG:
While the circuit is indisputably a Wheatstone bridge, when naming strain gauge configurations one considers the number of active arms. The OP's configuration is called a half bridge circuit by those familiar with the terminology and can be verified by reading the data sheet for a common strain gauge amplifier from Analog Devices 5B38.pdf

Your link is broken, maybe it's only a half or quarter link? :wink:

lol, you're right. Maybe only 1/8 link. :slight_smile: Fixed.

Well that doesn't change my definition of what a full bridge configurations is or is not. The Figure 3 5B38 Input Field Connections picture in that doc clearly shows the different configurations and how many elements are used. A full bridge uses four elements regardless of which of the four are variable or not. The other two are simply set up as a simple two element voltage divider. I would never call a simple two element resistive voltage divider a 'bridge circuit', half, quarter, or otherwise.

The OP showed us a crude drawing of a four element bridge with two fixed resistors and two variable load cell resistors (disregarding his attempt at adding a null adjustment pot), wired in a full bridge configuration, end of story. :wink:

I think possibly what AD and you and the OP are trying to state is that load cells come in several styles where the load cell itself makes up either all four elements of a full bridge (four output wires) or just two (three output wires provided) or one of the elements (two output wires provided) needed to be wired up to the rest of the input circuit to complete a full bridge configuration. Hows that for a compromise ? :wink:

Lefty

retrolefty:
Well that doesn't change my definition of what a full bridge configurations is or is not. The Figure 3 5B38 Input Field Connections picture in that doc clearly shows the different configurations and how many elements are used. A full bridge uses four elements regardless of which of the four are variable or not. The other two are simply set up as a simple two element voltage divider. I would never call a simple two element resistive voltage divider a 'bridge circuit', half, quarter, or otherwise.

The OP showed us a crude drawing of a four element bridge with two fixed resistors and two variable load cell resistors (disregarding his attempt at adding a null adjustment pot), wired in a full bridge configuration, end of story. :wink:

Lefty

That particular module comes in several factory configurations in which the bridge is completed internally depending on the number of active external arms.

Here is another article http://www.transducertechniques.com/wheatstone-bridge.aspx that explains the terminology pretty well. You are welcome to use what ever terminology you please.

Regardless of terminology, I didn't see whether or not OP connected the grounds between his Arduino excitation voltage source and his op-amp instrumentation source like Grumpy Mike suggested. That sounded like the problem based on his original post.

Obviously, when time permits he should get rid of that 741 and replace it with a nice instrumentation amplifier. Personally, I use one with a separate reference pin and use that to cancel out the offset voltage due to imbalance.

First off all insolence to is completely unnecessary especially to someone seeking advice. Disrespect aside I was merely stating what I have been taught as a mechanical engineering student at a reputable university and read directly from a text book (Mechanical Measurements 6th ed. Beckwith, Maragoni, Lienhard V) and multiple other sources including tenured professors. Call it what you want but opinions are not necessary.

Thank you all for the advice. I finally got in contact with a professor from our electrical engineering department who donated an instrumentation amplifier and voltage regulators with which I got my circuit to work properly (I will never use a 741 op amp again lesson learned). The real problem was a grounding issue, the battery supplying an excitation voltage to the amp did not have a separate ground. I solved this by using the two voltage regulators and two 9V batteries and grounding the two to the arduino ground. The load cell works wonderfully now I am setting up a data logger with an SD card breakout board, adding another bridge circuit to measure chamber pressure, and two thermocouple breakout boards to measure chamber temperatures.

First off all insolence to is completely unnecessary especially to someone seeking advice.

Because you ask for advice and then go on to ignore it. You could have solved your problem if you followed what I told you days ago.
Why ask for advice and then be arrogant enough to think you know better when it turns out you did not?

I think possibly what AD and you and the OP are trying to state is that load cells come in several styles where the load cell itself makes up either all four elements of a full bridge (four output wires) or just two (three output wires provided) or one of the elements (two output wires provided) needed to be wired up to the rest of the input circuit to complete a full bridge configuration. Hows that for a compromise ?

That's fine. The number of active elements in a bridge determine what you call it.

My only reason for commenting was to support the fact that OP was using terminology being taught at school and being used by the transducer industry and was being unnecessarily challenged for doing so..

I am new to this forum but not to op-amps. I would like to know if the Arduino Mega can do what the INA125 (instrumentation amplifier) does almost (but making a digital output number) sitting at the null point of a wheatstone bridge. I imagine using the analogReference command and some kind of differential input (hopefully the reference input is an internal voltage) and using one of the rumored gains (5, 10, 20, 40).
I do not see any commands for this in the C language reference. This is unfortunate because I am using the easily understood C that the Mega uses and so far everything is written in C.

My present input is a 1K resistor in series with a 1K ohm RTD (yes it is not the 100 ohm standard RTD) generating 2.5Vdc. If I have to make the other side of the wheatstone bridge with real resistors and use an op-amp to increase the gain, then that will work but it is considered to be a failure.
Once again what I need is the C instruction keywords and maybe an example showing how to use them. I am already familiar with analogRead and analogReference. I need something additional.

WVPhysicist:
I am new to this forum but not to op-amps. I would like to know if the Arduino Mega can do what the INA125 (instrumentation amplifier) does almost (but making a digital output number) sitting at the null point of a wheatstone bridge. I imagine using the analogReference command and some kind of differential input (hopefully the reference input is an internal voltage) and using one of the rumored gains (5, 10, 20, 40).
I do not see any commands for this in the C language reference. This is unfortunate because I am using the easily understood C that the Mega uses and so far everything is written in C.

My present input is a 1K resistor in series with a 1K ohm RTD (yes it is not the 100 ohm standard RTD) generating 2.5Vdc. If I have to make the other side of the wheatstone bridge with real resistors and use an op-amp to increase the gain, then that will work but it is considered to be a failure.
Once again what I need is the C instruction keywords and maybe an example showing how to use them. I am already familiar with analogRead and analogReference. I need something additional.

The ADC in the atmel mega328 chip's internal ADC hardware supports single-ended inputs only, there is no differential input suitable for measuring across the null point of a DC excited Wheatstone bridge arrangement. There are ways to lower the ADC reference voltage used by the ADC to get smaller resolution step size over a reduced ground to reference voltage measurement range but that is not the same as having differential input capabilities. There are simple to use external I2C ADC chips that have differential inputs, programmable gains, better resolution, etc available such as:

Once again what I need is the C instruction keywords and maybe an example showing how to use them.

I think you are mixing apples and oranges here. The C/C++ programming language keywords have nothing to do with any specific support for anyone's hardware features. Such hardware features must have user or IDE implementers custom written C/C++ functions or libraries written to support a specific microcontrollers hardware features. That's what analogRead() is, a custom written function that knows how to manipulated the internal ADC hardware inside AVR chips supported by the arduino IDE. They are not considered C/C++ 'key words' but rather are functions and library that can be used in programs written in C/C++.

Lefty

Good find! Many thanks especially for the speedy reply. I am considering the option that I called a failure but I think the parts you identified are a better way. I am afraid of digital interfacing mostly because I once saw hand written PIC16F88 code for it and it was done for me. I spent a long time fighting assembly language and it is not over yet. One day I will have to face it.

Is there a way to question folks on some 100 year old magnetic amplifier technology?

WVPhysicist:
Good find! Many thanks especially for the speedy reply. I am considering the option that I called a failure but I think the parts you identified are a better way. I am afraid of digital interfacing mostly because I once saw hand written PIC16F88 code for it and it was done for me. I spent a long time fighting assembly language and it is not over yet. One day I will have to face it.

Is there a way to question folks on some 100 year old magnetic amplifier technology?

The Adafruit folks have a software library available to support those two I2C external ADC chips, so you really don't have to get down to the bare bits on how to control those chips, just use the library functions they provide and it's no more complex then using analogRead() commands.

Lefty

I would like to know if the Arduino Mega can do what the INA125 (instrumentation amplifier) does almost (but making a digital output number) sitting at the null point of a wheatstone bridge.

I don't recall if all Megas do this but some Megas have a differential adc. So you can adc the differential signal between the two legs of a bridge.

Obviously the conversion is subject to the same limitations as the adc module.

I once saw hand written PIC16F88 code for it and it was done for me.

The older PICs are fairly unique in that some of their comparators can be configured as opamp.

Once again what I need is the C instruction keywords and maybe an example showing how to use them.

All of it laid out, quite clearly, in the device datasheet.

Whenever digital handshake or software is involved I always run into a brick wall. I am looking ahead at the Adafruit parts and what looks like the driver is very long and it has to find includes. I don't know where to get the includes unless they are already in the Arduino C library.

This is what I figured is the driver:
https://github.com/adafruit/Adafruit_ADS1X15/blob/master/Adafruit_ADS1015.cpp

I see 300 lines of code, some looks like it repeats. I have no idea how to handle this stuff or what each line does.

Thanks for the help.