Go Down

Topic: Will this circuit offer a more linear response than a simple resistor divider ? (Read 497 times) previous topic - next topic



I have a short flex sensor from Flexpoint.

The circuit below is taken from this document (p. 13).

Will it help to linearize the output of the sensor compared to a simple resistor divider ? Could it also help to have a better range at the Arduino input ?

Thank you in advance.


no effect on linearity as resistance is much lower than arduinos input impedance.
the amplifier lets you take advantage of nearly the full 5V input range if u use a rail to rail op-amp



The circuit you show has a linear response TO THE VALUE OF Rflex. It means that if Rflex has a linear response the overall response would be too.

The question is: ¿Has Rflex a linear response?. If yes: ¿a linear response to what? (to the displacement on the edge of the plate; to the "curvature" of the plate; . . . . It looks like that the manufacturer just gives a "variable resistor to bend" an gives an empiric response (in the text you mentioned). The best is to test it (just by means a multitester - Ohm position) and, then, decide if you can get an "analitical model" (say the  Rflex = constant * "edge displacement" -or whatever physical variable you choose-). If that's the case, you can AnalogRead the value (no need of OP Amp: a resistor voltage divider -Fig 1.1; just the RM and Rflex- would do) and then, derive the Rflex (and, so, the "variable resistor to bend" position) value.



The reason an op amp amplifier is specified in the sensor datasheet is that the device is a resistive element and using it in a voltage devider provides no gain. The amplification is necessary for better resolution. without the op amp amplifier you will have a very poor response and probably all but useless. Why would you consider replacing a high tech op amp amplifier that took 60 years to
evolve to it's current state with a voltage devider from the dark ages ? Is it because you have never used an op amp ?
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter


My dear friend,

If you have a look on the handbook, you will notice that the very first circuit the manufacturer propose is JUST a voltage divider buffered by an OP AMP. The issue, it looks, is not a matter of resolution.

On the other hand, the input impedance of the arduino is high enough as to leave the signal from the voltage divider "as it is". No need of buffering.

Of course we can use a last model OP AMP surrounded by the most sofisticated components; we can amplify (?), filter, condition and whatever virguerias you want. What's the point?.

This is an arduino forum: we are not sending probes to Venus or making any open brain surgery . . . and, any case, do you think antediluvian voltage dividers are not used nowadays?

Kind regards


My point was the output of a simple voltage divider without the amplifier is not going to be anything like the output of an amplifier using the resistive element as a feedback resistor. My comment about the voltage divider verses the op amp is a comparison of the
two output signals , one with no amplification , and the other with. I would think you would want to take advantage of the
expanded scale you get with the amplification. If that is not resolution then what is it ? The difference of the accuracy of the measurement with and without amplification. Of course you can use a voltage divider, but my question (which you didn't answer) is why do you not want to use the op amp ? Isn't that a better output ?
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter


To judge from the technical document you linked, the bend sensor is rather nonlinear in its response, as defined by the change of resistance as the sensor is "bent", (ranging from about 30K when straight to about 250K when strongly bent) but that document does not go into any other useful details.

For your application you will probably want to characterize the response of the sensor (in ohms) as function of whatever movement it is that you want to measure. For most accurate measurements, you would then choose a circuit that will translate that change of resistance into as much of the 0-5V input range that a standard Arduino ADC admits.

None of the circuits provided by the manufacturer actually do that. The voltage divider circuits are limited in their output by the nonlinearity of the divider itself and their offset voltage. The one circuit that provides a voltage response that is linear in the sensor resistance (page 13 of the technical document) does not have an offset correction. If I were to undertake this project, I would use the circuit of page 13 and add an adjustable offset correction.

When you are all done everything would have to be calibrated, so that you could convert the Arduino ADC reading into something that makes sense in terms of the mechanical situation. But that is probably more than you wanted to know.


If you replace R1 & R2 of the Linear circuit of page 13 jremington recommended with a 50k potentiometer you would have an offset adjust as shown by this circuit:
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter


my question (which you didn't answer) is why do you not want to use the op amp ? Isn't that a better output ?

Well, I got a good input range into the Arduino using a resistor divider (as many people do often with analog resistive sensors). Anyway I'll add some software calibration, therefore NOT using an opamp is not a problem. I have already used opamps but in this case I do not see any significant advantage in using one especially as the first answer stated that it wouln't linearize the output.

Go Up