Electronic – arduino – Why are the values I’m getting through a capacitive sensor decreasing as the resistance gets lower

arduinocapacitancecapacitorcapsense

I'm currently messing around with "capacitive sensors" by trying to light an LED using an Arduino. My capacitive sensor that I am using is just made up of an Arduino, three wires and a resistor. My setup is simply two wires hooked to an Arduino and both ends of a resistor, with the third wire connected to the resistor on one side, and nothing on the other.

When I am using a 1 megohm resistor, I am getting values in the range of 2700 ~ 2800 when I grasp the exposed end of the wire with my fingers. However, when I try switching the resistor to one with lower resistance (10,000 ohm), I am only getting values of 60 when I grasp the exposed wire, and I get values of 0 when I use a 220 ohm wire.

An illustrative example:

.............
|           |--------- <-- wire
| ARDUINO   |        |
|           |      Resistor
|           |        |
|           |--------- +++++++++++ <---- Exposed wire which I grab
.............

Should I not be getting a greater value by using a resistor with less resistance as that would allow more current to flow through? Yet, the inverse is happening where the values outputted from my Arduino decrease as I lower the resistance and increase as I increase the resistance.

Why is this so?

Best Answer

Capacitive sensing works by using the RC network created by the resistor (R) and the human body (C) as a timing circuit and measuring how long it takes the analog signal to reach a digital threshold (\$\tau = {k RC}\$) when the capacitance is charged or discharged. When the resistance decreases the timing speeds up, and lower values are measured.