Go Down

Topic: "Freezing" potentiometer values (Read 707 times) previous topic - next topic

materreni

I've been working with a potentiometer today and it went on just fine, except for what I think is an conceptual problem in the design of the circuit I used.

I've arranged the connections as displayed on http://www.arduino.cc/en/Tutorial/Potentiometer, then I've built a small interface in MAX/MSP using SimpleMessageSystem. The problem is that sometimes the numbers I receive from the Ardino "stop" in a 1 to 5 value range (for example, I normally get values from 0 to 1023 and it gets frozen from 71 to 75, no mather I keep on moving the potentiometer shaft, it will go back to normal function after a while).

I'm planing to use this interface for a heavy duty multimedia installation, so I'm trying to provide it with a solid electronical base, although I've practically no experience on the mather. Am I missing something? Shoul I use any resistance, a different potentiometer? I'm using a 1K potentiometer.

mem

There may be some dirt in the potentiometer that is causing intermittent contact. If you can get some contact cleaning spray (from radio shack if you are in the US) then a burst of spray into the pot may be able to fix it

mrmeval

What kind of pot is it?

Some of the ones I've gotten, esp surplus have been pretty nasty so mem's idea of cleaning it is good.  

Electrical contact cleaner from an auto store will work and I think it is cheaper than ratshack and probably closer. ;) Plus you get a LOT more of it.

Something you can do right now is to check for a bad connection. If you soldered wires to the pot then check the solder work.

If you used stranded wire in  a proto board get rid of it and use the proper size solid wire until it's time to make it a permanent device then use stranded wire or of if it's PC mount solder the pot to the board.

If you have one jammed in a breadboard consider soldering the proper gage solid wire to it and trying that.

I've had one of the small disk ones crack when I bent the leads to insert it in a board but there was nothing that looked wrong.  Only wiggling it and using a meter found it.
If it was designed by man it can be repaired by man.

materreni

> There may be some dirt in the potentiometer

Thank you, I'll be checking on that today.

> Something you can do right now is to check for a bad connection

Yes, this is something I've got to do with some pro guy as soon as I find the best pot option for my project.

Thank you guys
materreni

Thomas1983

If cleaning doesnt work you can also fix this with coding.
My cheap potmeters tend to "shake" a bit...
here's some code i use to fix this:

Code: [Select]

// read a "shaking" potmeter
// by Thomas Rutgers

int shakyness = 5; // use 5 or more if your pot on a 0-255 scale tends to shake between lets say 170 and 174
int potPin = 2;    // select the input pin for the potentiometer
int val = 0;
int lowVal = 0;
int highVal = 0;
void setup() {
 Serial.begin(9600);
}

void loop() {
 val = analogRead(potPin) / (1024.0/(256.0+shakyness));
 if (val > highVal) {

   highVal = val;
   lowVal = val-shakyness;
   Serial.println(lowVal);
   delay(10);
 }
 if (val < lowVal) {
 
   highVal = val+shakyness;
   lowVal = val;
   Serial.println(lowVal);
   delay(10);
 }
}


bHogan

I would use a 10K pot rather than the 1K you're using. Even though your only drawing 5mA, you may be introducing some heat that could cause variations in resistance.
"Data is not information, information is not knowledge, knowledge is not understanding, understanding is not wisdom."
~ Clifford Stoll

Go Up