how to keep current from variable resistor constant

Hi everyone.
I am trying to design a circuit that ensures a constant output current of say 0.6mA froma digital potentiometer (rheostat -mode)

Please assist me with suggestions on how to go about this.

Many thanks

What's the digital pot doing? If you want constant current, what's the pot changing? Is the pot supposed to self-adjust to hold the current constant???

I assume you understand [u]Ohm's Law[/u] which describes the relationship between voltage, current, and resistance/impedance?

I don't have a link to a schematic for you, but a constant-current source usually has a (relatively low-value) series resistor. The circuit monitors the voltage drop across the resistor (which is proportional to the current), and that voltage is used in a negative-feedback loop to keep the current constant.

Most constant-current circuits use an inductor, but with a requirement of less than 1mA, a simpler linear circuit should work.

There limits to a constant-current source. If the impedance/resistance is too high, you may not have enough voltage available and current will drop.

Actually the whole circuit starts with a small device whose electrodes (one active -connected to the cathode and the other one passive -connected to the Anode which is the ECG electrode). These two electrodes are then connected to a preamp OPAMP whose output is connected to an Arduino UNO. The Arduino is then connected to a single channel digital POT (rheostat -mode) Now the Arduino is supposed to pick and choose 5 resistor values - one at a time, through which current will flow. I must ensure that the current through each of the resistors regardless of their value is the same i.e ~0.5mA, hence the inclusion of a current regulator immediately after the DigiPOT. The output of the DigiPOT i.e 0.5mA must be displayed on a serial LCD. This is what i would like to do but i do not know if it will work. any suggestions please?

thank you.

OK, that's part of the description, but (quite) a few things are missing.

What is the eventual purpose of this project? What does the output current need to do and why does it need to be "constant"? What is the purpose of the resistors? What is the display supposed to tell you if the display will always be the same value? What sort of Serial LCD have you got? What is the rest of the device? What does the ECG have to do with this and where will these electrodes be attached?

hiya,

Ireally need help with my project code. It was working before with just one value i.e int potValue =88;
but right now as it stands, the LCD goes blank when i run the program. please advise on what i should change.

I am trying to determine the output from an MCP4162 digital potentiometer (rheostat - mode). The output from SDO pin goes into digital pin 12 of Arduino. and the formula i used to compute the resistance of the rheostat is included in the code - got off Arduino website.

here is my code:

/*
DigitalReadSerial
Reads a digital input on pin 12, prints the result to the serial monitor

This example code is in the public domain.
*/

// digital pin 12 has a pushbutton attached to it. Give it a name:
int digiPOT = 12;
float Resistance =0;
int potValue1 = 88;
int potValue2 = 118;
int potValue3 = 147;
int potValue4 = 192;
int potValue5 = 235;

// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 19200 bits per second:
Serial.begin(19200);
// make the digiPOT's pin an input:
pinMode(digiPOT, INPUT);
pinMode (1, OUTPUT);
}

// the loop routine runs over and over again forever:
void setpotValue1( int value1) {
// read the input pin:
Resistance = 39.06*potValue1/1000;
Serial.write (128);
Serial.println (Resistance);
Serial.write (132);
Serial.write ("kOhm");
delay(1); // delay in between reads for stability
}

void setpotValue2( int value2) {
// read the input pin:
Resistance = 39.06*potValue2/1000;
Serial.write (148);
Serial.println (Resistance);
Serial.write (152);
Serial.write ("kOhm");
delay(1); // delay in between reads for stability
}

void setpotValue3( int value3) {
// read the input pin:
Resistance = 39.06*potValue3/1000;
Serial.write (168);
Serial.println (Resistance);
Serial.write (172);
Serial.write ("kOhm");
delay(1); // delay in between reads for stability
}

void setpotValue4( int value4) {
// read the input pin:
Resistance = 39.06*potValue4/1000;
Serial.write (188);
Serial.println (Resistance);
Serial.write (192);
Serial.write ("kOhm");
delay(1); // delay in between reads for stability
}

void setpotValue5( int value5) {
//read the input pin:
Resistance = 39.06*potValue5/1000;
Serial.write (180);
Serial.println (Resistance);
Serial.write (184);
Serial.write ("kOhm");
delay(1); // delay in between reads for stability

}

void loop () {

}

thanks for your assistance.

Nadine100:
Hi everyone.
I am trying to design a circuit that ensures a constant output current of say 0.6mA froma digital potentiometer (rheostat -mode)

Please assist me with suggestions on how to go about this.

Many thanks

Google for opamp constant current circuits...