Introduction to Constant Current Circuits
A constant current source (CCS) in electronics is a device/circuit that produces a constant value of current regardless of source voltage or load resistance. Fig. 1 illustrates a common CCS circuit using a PNP bipolar transistor. The values of the Ic = Ib * hfe (Beta) of the transistor. A constant current circuit can also be used as a current limiter.
In Fig. 1 Ib is controlled by R2 and R3. With a Vcc of 12-volts, we drop 0.6 volts across the base-emitter junction of Q1. This leaves 11.4V across R2/R3. Assuming R2/R3 are adjusted for 2000 Ohms, Ib = 11.4V / 2000 = 5.7mA. (.0057 Amps.) If Q1 has a hfe of 50, Ic = .0057 * 50 = .285A or 285mA.
While Fig. 1 shows a small light bulb, these circuits are a must for operating power light emitting diode (LED) arrays. The circuit above is simple, can be a little unstable due to temperature drifts with Q1 causing current drift.
Fig. 2 shows a more stable constant current source using a Lm741 OP-AMP. The collector current Ic = (Vcc - Vref) / Re1. In the example above with Vref = 6V and Re1= 10 Ohms; (12V - 6V) / 10 = 6V / 10 = 0.6A or 600mA. This design is more stable due to feedback to pin 2 on the 741 when temperature changes cause current changes with Q1. The 10K pot can be replaced by fixed resistors.
Fig 3 uses a Lm334 is a three-terminal current source designed to operate at current levels from 1ľA to 10mA, as set by an external resistor. The device operates as a true two-terminal current source, requiring no extra power connections. It can also operate as a temperature sensor.
In this example I'm using the Lm334 to control Ib on Q1. R1 and R2 are used to set current limits and could be left out. Ib is from zero to about 1 mA. See Lm334 Spec sheet.
The next series of circuits will use the Lm317. While designed as a voltage regulator, it will double as a stable constant current source. With only three pins as shown above, one can produce a current of about 1-amp max. See Lm317 Spec sheet.
Fig. 5 shows the very basic Lm317 CCS using a single resistor. The formula is Iout = 1.25V / R1.
Fig. 6 shows a Lm317 CCS that produces 1 amp. The formula is Iout = 1.25V / 1.2 = 1A.
Fig. 7 shows a Lm317 being used to trickle charge a battery. This is useful with battery charges by limiting excessive current during charging that can shorten battery life. The formula again is Iout = 1.25V / 24 = .05A or 50mA.
In Fig. 8 I used this circuit to protect my solar panel charging system. The solar panel can produce a maximum current of 500mA. A really drained lead-acid battery can look like a dead short so this safely limits the current to protect the panel from possible damage.
Here we have an example of simply charging batteries. One can charge a single cell or a battery bank. By limiting the charge current to a low rate we extend battery life.
- Solar Panel Charge Controller Using Arduino Microcontroller
- Solar Panel Charge Controller Using PICAXE Microcontroller
Added July 31, 2011
- Using Hall Effect Switches
- Using Ratiometric Hall Effect Sensors
- Using Hall Effect Sensors with the Arduino-ATMEGA168
- Connecting the Arduino to the TMP37 Centigrade Temperature Sensor
- How to connect batteries in Series/Parallel
- 12AV6 Vacuum Tube AM Radio
- Coils for Highly Selective Crystal Radio
- Adding a Push-Pull Output Stage to a Lm386 Audio Amplifier
- L298N Motor Controller Theory and Projects
- Build a Thermocouple Amplifier
- Build a Potato battery
- Testing a Diac
- Basic Triacs and SCRs
- Solid State AC Relays with Triacs
- Light Activated Silicon Controlled Rectifier (LASCR)
- Basic Transistor Driver Circuits for Micro-Controllers
- Opto-Isolated Transistor Drivers for Micro-Controllers
- Build a H-Bridge Motor Control with Power MOSFETS
- Series/Parallel Batteries
- Using a CdS Photocells
- Voltage Comparator Information And Circuits
- Resistive Humidity Sensors
- Reed Switches
- Diodes and Rectifiers
- Transformers and misc. topics
- Main Listing of Electronics Projects:
- My YouTube Channel on Electronics
- Raspberry Pi & Linux
- Arduino Micro-controller Projects
- General Electronics Projects
- Microchip PIC18F2550 in C++
- PICAXE Micro-controller Projects
- How I got into Electronics