Maximising the range of a resistive sensor.

Assume sensor with maximum resistance R1 and minimum resistance R0. We seek to put it in series with a single resistor, R, whose value we seek so that the voltage range will be a maximum.

Case 1: sensor on top

In this case we have Vmax=RR+R0Vin and Vmin=RR+R1Vin so that the difference is

Vdiff=(RR+R0-RR+R1)Vin

I seek to maximise this difference but I don't care about the absolute scale so I will maximise

VdiffVin=(RR+R0-RR+R1)

Differentiating, I get

dVdiffVindR=(1R+R0-R(R+R0)2-1R+R1+R(R+R1)2)

=(1R+R0-1R+R1)+(R(R+R1)2-R(R+R0)2)

=((R+R0)(R+R0)2-(R+R1)(R+R1)2)+(R(R+R1)2-R(R+R0)2)

=(R0(R+R0)2-R1(R+R1)2)

=R0(R+R1)2-R1(R+R0)2(R+R1)2(R+R0)2

Setting this to zero, I find

R0(R+R1)2-R1(R+R0)2=0

R0R2+2RR0R1+R0R12-R1R2-2RR0R1-R1R02=0

R0R2-R1R2=R1R02-R0R12 ⇒ R2=R1R02-R0R12R0-R1=R0R1

Thus, the best value is the geometric mean of the high and low values, R=R0 × R1.

Case 2: Sensor on the bottom

This is only slightly different. We have Vmax=R1R+R1Vin and Vmin=R0R+R0Vin so that the difference is

Vdiff=(R1R+R1-R0R+R0)Vin

Again, I will maximise

VdiffVin=(R1R+R1-R0R+R0)

Differentiating, I get

dVdiffVindR=(-R1(R+R1)2+R0(R+R0)2)=0

This again leads to

R0(R+R1)2-R1(R+R0)2=0

so that the answer is the same in both cases. Use the geometric mean of the two resistors.

Summary

You get the best range out of a resistive sensor when it is connected as one leg of a voltage divider if the value of the other leg, the fixed resistor, is chosen as the geometric mean of the maximum and minimum resistances of the sensor over the desired range, R=Rmin × Rmax.

In practice, simply choose the nearest avaiable resistor to the geometric mean. It is not worth trying to get any closer.