Analogue Sensors – Calculate the Nonlinearity Introduced by a Load or Pull Down Resistor
Have you ever had that terrible feeling that adding a load resistor or ‘pull down’ to your sensor is messing up all your analogue readings?
Maybe you’re wondering why we’d want to spoil a perfectly good circuit by putting in a load resistor at all?
For many years I found that I would get strange, unpredictable, readings from my sensor related projects at the maximum and minimum locations when using analogue digital convertors (ADCs). I always blamed this on poorly designed micro processors and never for once thought that it might be my own circuit designs at fault ….. until now.
To use an analogy, when the sensor goes to maximum or minimum, it does not just reach a maximum point, but quite often actually falls off the edge of the world into a kind of no man’s land where it is then prey to all kinds of digital noise and other generally nasty things like Goblins and Elves. Anybody who, like me, who has blamed this on their arduino is totally forgiven!
The example I’m using here is a simple three legged potentiometer with a ground, 5 volt and ‘wiper’ connection.
Using the correct pull down resistor we can eliminate noisy readings from our projects ……. And ……. just to prove that math can actually be fun ………. I’ll tell you how I discovered the non linearity adjustment formula through diagrams and images.
Step 1: The Circuit
In the circuit above we have are reading a simple potentiometer through it’s ‘wiper’ arm through a 8.25K resistor and 16 bit ADC chip. Crucially, there is also a 100nF capacitor and a 100K resistor going to the ground rail from the wiper. We’re going to concentrate on the 100K resistor. 100K is the recommended value from the manufacturers of the instrument.
There’s nothing unusual about this circuit and it looks pretty boring until we look at what’s happening with the resistor in more detail.
To get rid of the noises (and the Goblins and Elves) we want the resistor to be fairly small in ohms – maybe 10K, but if our pot is, for example 1K, we’re going to get a massive amount of non linearity – see for yourself by opening the excel sheet in the next step.
Initially, I did not set out to discover any formulae – I just wanted to visualise the non linearity created by a load resistor in a sensor related circuit. I wanted to try and isolate the curve and plot it as a graph in Microsoft excel. It just seemed like fun.