0
\$\begingroup\$

I'm going to connect 12 potentiometers (100k) to a couple of cd4051 analogue (8->1) multiplexers and to 2 of Arduino (Uno) analogue pins.

Now I think each pot draws 0.5mA (I'm going to measure it to be sure) so around 6mA for all 12 pots. I think it is ok the Arduino permits 200mA as I know. Also I read that it is recommended to use 10k potentiometers (because of the ADC) but I have also read that the 100k are going to work. So is there anything I miss here? (before soldering all the power and ground terminals). (the multiplexer in the schematic is a single module)

schematic

simulate this circuit – Schematic created using CircuitLab

\$\endgroup\$
  • 1
    \$\begingroup\$ That's 6 mA, not 60. \$\endgroup\$ – WhatRoughBeast Jun 23 '17 at 12:33
  • 1
    \$\begingroup\$ A 100k pot will draw 50uA from a 5V supply. So 0.6mA it total. \$\endgroup\$ – Finbarr Jun 23 '17 at 12:36
2
\$\begingroup\$
  • stray inductive noise L currents and C voltages may be induced on cables connected to pots or on board into R of pots.
  • So 100k is worse for I(f)R than 10k.
  • But shielding and ferrite CM chokes improve the results and may be mandatory anyways with twisted pairs, since the inputs are unbalanced.
\$\endgroup\$
3
\$\begingroup\$

The input circuitry on an Arduino will work "best" when you use pots that are 10K or less. This has mainly to do with how long it takes to charge up the internal circuitry to get a stable sample. Since you don't really want to go into the guts of the Arduino libraries to wait extra time between initiating the sample and reading it, you're best off following the 10K recommendation, unless your application is not a precision application (and you haven't told us). When you're multiplexing 12 channels though, things generally run pretty fast.

If you're really trying to go low current, you can keep using the 100K's, and just put a voltage follower on the output of the multiplexer.

Yes, 100K pots will cause more noise than 10K pots. How important this is to you depends on what you're actually trying to do, how precise your measurements need to be, etc., and we have none of this information. I suspect that the noise difference will not be an issue for you.

\$\endgroup\$
  • \$\begingroup\$ Thanks, this is a part of experimentation, so my demands are low, I'm going to tolerate fluctuations in software. I posted the question so to not get any bad surprise with something silly I may have missed. Thanks \$\endgroup\$ – John Am Jun 23 '17 at 12:49
1
\$\begingroup\$
Now I think each pot draws 0.5mA

Don't guess.

Do the math. (5 V)/(100 kΩ) = 50 µA. Your guess was off by a factor of 10.

50 µA times 12 instances = 600 µA. That's a negligible amount of current considering you are running a arduino off the same power supply.

I think it is ok the Arduino permits 200mA as I know

That is irrelevant. This is either the worst case power current spec or the maximum all I/O pins can source or sink together. Either way, it has nothing to do with how much current the ...

Oh, I just noticed that you accepted another answer as I was typing this, only 29 minutes after you asked the question. No point wasting more time here now.

\$\endgroup\$
1
\$\begingroup\$

A CD4051 inherently generates a leakage current from its analogue pins. If you read the data sheet this can be as high as 100 nA at ambient temperatures. This means that for 11 of the 12 switches there could be a total of 1.1 uA flowing into the only closed analogue switch and feeding this current back to the pot wiper.

At mid range position that pot will present an equivalent resistance of 50 kohm so, this 1.1 uA will produce a DC offset error of 55 mV.

If you are happy about this then no problem. I would also suggest you use a 100 nF capacitor on the common line to remove noise and allow a more accurate ADC result. This may also require you to limit the speed at which you toggle through the multiplexer to ensure that the pots can be read accurately but if you are happy with a potential error of +/- 55 mV (due to leakage current) then this won't be an issue.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.