Design of an Op Amp Circuit for Voltage Amplification

Hi Everyone,

I would like to measure voltage output from a sensor via an Arduino. The sensor outputs 20 mV at max capacity. I'd like to bump this up to around 5 volts so it is easier to measure. My plan was to use a non-inverting topology coupled with an LM393N op-amp. The schematic for a non-inverting circuit is given below, as per Nilsson and Riedel (1996):

244115


The equation for voltage output is:

vo = 1+Rf/Rs*vg

Where vg is the signal voltage and vo is the signal output. I have a few questions:

  1. How should I select resistances for Rf and Rs? Right now, I plan on using a 1kΩ for Rs and a 200kΩ resistor for Rf , which will give me a gain of 201. Is there anything else I should consider when selecting these resistances, practically speaking?
  2. How should I select a Vcc voltage? Is my only intention in selecting this not to saturate the op-amp?
  3. Why is non-inverting the best topology for this circuit?
  4. What is the purpose of Rg in this circuit?
I appreciate that these are relatively simple questions. I'm a chemical engineering student who has never taken a class on circuits (which was probably a mistake), so you may have to speak kind of slow :)
 

berkeman

Mentor
54,907
5,146
Welcome to the PF. :smile:

The LM393 is a comparator, not an opamp. So it is not a good fit for this application.


Can you say more about the sensor and its output? What voltage is this 20mV referenced to? Or is it a floating sensor of some kind? Can you post a link to the datasheet?

Usually you would like to do some filtering of the sensor signal in addition to the amplification (depending on the bandwidth of the sensor output). Have you learned much yet about making filters with opamps?

And what power supplies do you have available for this? You show split +/- power supplies in the example schematic you posted -- do you have those? The power supplies available will affect the choice of opamp, and the biasing circuit that interfaces the sensor to the opamp(s).
 
The sensor is a Futek TFF425 torque sensor. I was planning on using a 10 volt power supply for excitation, and according to the data sheet this would result in a 20mV output at maximum load (in this case, 160 in-oz). Additionally, I was planning on connecting the negative signal pin to ground, so I would imagine ground would be the reference.

I've never taken a class on circuits, but by filtering I assume you mean some sort of active low or high pass filter. Since the intention is to measure torque on a stirred tank, there is already a significant amount of noise in our torque measurements (given that we are operating in a turbulent regime). My intention was to simply collect the data from the sensor as is, and then use the average and standard deviation of the data to determine the torque at any given time within an interval of uncertainty (the uncertainty being the standard deviation and the torque value being the average). Would a filter still be helpful in this scenario?

I was planning to use an Agilent DC power supply for right now (these are what we have in our labs). I do not believe that these are split power supplies.

Here is the link to the sensor datasheet:

Again, I apologize as I am aware my understanding of this subject is relatively crude. Most of my information has come from a textbook I borrowed from a buddy, which he used in his sophomore year Principles of Engineering Circuit Analysis class. It's a good book but doesn't go into detail about practical implementation of op-amps. If you can recommend more appropriate literature, I'd be happy to take a look.
 

berkeman

Mentor
54,907
5,146
No need to apologize, you are asking good questions and it sounds like a fun project.

The datasheet (thanks) seems to imply that it's a strain gauge bridge based sensor. In that case, the two outputs will be centered in the middle of your DC power supply voltage that you power the sensor with. The amplifier circuit should be a differential amplifier that also translates that differential voltage down to a ground-based voltage that your Arduino ADC can digitize.

As far as filtering, you at least need to use an anti-aliasing filter (LPF) before the ADC, and depending on the frequency range of the valid outputs from the sensor (even with turbulence-induced changes), you may be able to set the input LPF to a lower breakpoint than required just for anti-aliasing. What is the sampling frequency of your ADC? Can you post an oscilloscope picture of the two outputs of the sensor (AC Coupled) in the middle of the supply voltage to the sensor?

You mention that you have one power supply to use for this -- does that have to be set to 3.3V for the Arduino, or can it be set higher to support the sensor and the Arduino has its own voltage regulator to make its 3.3V?
 
682
439
Investigate "bridge sensor conditioner".

The ones I originally had in mind are complete modules intended for industrial users, and expensive, but it appears many chip manufacturers feature a wide range of inexpensive devices with varying degrees of complexity and capabilities.

Linear Technologies has a very thorough application note on the fundamentals of op-amp based bridge circuits you may find a useful reference.

https://www.analog.com/media/en/technical-documentation/application-notes/an43f.pdf
 

rbelli1

Gold Member
852
295
Look up HX711. That has the amplification and A-D conversion built together with a excitation regulator. It has everything you need. Breakout boards are readily available as well as an Arduino library.

BoB
 
No need to apologize, you are asking good questions and it sounds like a fun project.

The datasheet (thanks) seems to imply that it's a strain gauge bridge based sensor. In that case, the two outputs will be centered in the middle of your DC power supply voltage that you power the sensor with. The amplifier circuit should be a differential amplifier that also translates that differential voltage down to a ground-based voltage that your Arduino ADC can digitize.

As far as filtering, you at least need to use an anti-aliasing filter (LPF) before the ADC, and depending on the frequency range of the valid outputs from the sensor (even with turbulence-induced changes), you may be able to set the input LPF to a lower breakpoint than required just for anti-aliasing. What is the sampling frequency of your ADC? Can you post an oscilloscope picture of the two outputs of the sensor (AC Coupled) in the middle of the supply voltage to the sensor?

You mention that you have one power supply to use for this -- does that have to be set to 3.3V for the Arduino, or can it be set higher to support the sensor and the Arduino has its own voltage regulator to make its 3.3V?
I still have yet to receive the sensor. The lead time on it is about 1-3 weeks, and we just ordered it a few days ago. I will post an oscilloscope pic as soon as I have one.

Additionally, yes the voltage on the power supply can be set higher. The Arduino is going to have its own power supply.
 
Investigate "bridge sensor conditioner".

The ones I originally had in mind are complete modules intended for industrial users, and expensive, but it appears many chip manufacturers feature a wide range of inexpensive devices with varying degrees of complexity and capabilities.

Linear Technologies has a very thorough application note on the fundamentals of op-amp based bridge circuits you may find a useful reference.

https://www.analog.com/media/en/technical-documentation/application-notes/an43f.pdf
I’m still reading through but that note is extremely helpful. Thank you.
 
Look up HX711. That has the amplification and A-D conversion built together with a excitation regulator. It has everything you need. Breakout boards are readily available as well as an Arduino library.

BoB
Still looking at the data sheet on this. So this would act to stabilize my excitation from the power supply, as well as an ADC? Additionally, what about filtering?

It looks like a great option. Having an excitation regulator in built would be extremely helpful given that signal is a function of excitation.
 

rbelli1

Gold Member
852
295
Additionally, what about filtering?
You need an anti aliasing filter external to the chip. Fortunately most of the breakout boards have this included.

You still need to do some filtering in software. This will vary based on your application. Averaging multiple samples over a fixed time is OK for many applications.

BoB
 

Want to reply to this thread?

"Design of an Op Amp Circuit for Voltage Amplification" You must log in or register to reply here.

Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving
Top