Constant Current Circuits with the LM334
YouTube videos for this project:
- Constant Current Source Tutorial YouTube
- LM334 CCS Circuits with Thermistors, Photocells YouTube
- LM317 Constant Current Source Circuits YouTube
- Build H-Bridge Motor Control without Fireworks
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.
Maxim Semiconductor notes the following on why we need to use a constant current source. "When applying white LEDs for display back lighting or other illumination applications, there are two reasons to drive them with constant current:"
To avoid violating the Absolute Maximum Current Rating and compromising the reliability.
To obtain predictable and matched luminous intensity and chromaticity from each LED.
They note, "The forward current vs. forward voltage of six random white LEDs (three from each of two manufacturers) ... driving these six LEDs with 3.4V, for instance, will cause their forward current to vary from 10mA to 44mA, depending upon the LED."
Besides LEDs constant current sources are used with resistive sensors such as photocells and thermistors for greater stability and for current limited power supplies.
In Fig. 1 Ib is controlled by a 1K resistor and a 5K potentiometer. With a Vcc of 12-volts, we drop 0.6 volts across the base-emitter junction of Q1. We adjust the potentiometer for a base current of 3mA (.003 Amps.) If Q1 has a hfe of 50: Ic = .003 * 50 = 150mA or 0.15A.
These circuits are a must for operating high-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. That problem is minor compared to power supply drift can cause far greater instability.
Fig. 2 shows a more stable constant current source using a LM741 OP-AMP. The collector current Ic = (Vcc - Vref) / RE. In the example above with Vref = 1.5V and RE= 10 Ohms; (12V - 10.5V) / 10 = 150mA. This design is more stable due to feedback to pin 2 on the LM741 when temperature changes cause current changes with Q1. The 20K pot can be replaced by fixed resistors.
Big plus is Ic is not dependant on Q2 hfe - hfe is DC current gain.
This was tested and worked well even down to 5-volts driving a white power LED at 150mA at 3.2V. The only weakness is current swings due to power supply changes.
Fig 3 uses a LM334 a three-terminal current source designed to operate at current levels from 1uA to 10mA as set by an external resistor Rset. 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 Q3. Rset is the R1 and R2 combination adjusted for 100 ohms. Iset = Ib = 67.7mV / Rset = 677uA. Ic = Ib * hfe; Ic = 677uA * 180 = 120mA. Q3 was a 2N2907. See LM334 Spec sheet.
This is far superior to the two earlier circuits because power supply swings produced little measurable change in Ic. But the LM334 suffers from a maximum drive current of only 10mA and there are many applications where far higher currents are need.
In our next section we explore using the LM317 variable voltage regulator in its constant current source mode.
- LM317 High Power Constant Current Source Circuit
- Constant Current Circuits with the LM334
- LM334 Constant Current Source with Resistive Sensors
- LM317 Constant Current Source Circuits
- Introduction Hall Effect Switches, Sensors, and Circuits
- Using Ratiometric Hall Effect Sensors
- Pulse Width Modulation Power Control for Microcontrollers
- Introduction to PIC12F683 Programming
- Basic Transistor Driver Circuits for Micro-Controllers
- Opto-Isolated Transistor Drivers for Micro-Controllers
- Arduino Stepper Motor Coil Winder
- Considerations for Using Stepper Motors
- How to Connect Easy Driver Micro-Stepper Controller to Arduino
- Using a Unipolar Stepper Motor with a Arduino
- Using the MC3479 Stepper Motor Controller with Arduino
- Connecting the Arduino to a L298N H-Bridge
- L298N Motor Controller Theory and Projects
- Some Sample YouTube Videos
- Arduino Solar Battery Charge Controller
- Zener Diode Tutorial
- Simple Power Distribution for Prototype Board
- Program Arduino Ports for Speed and Control
- Safely Program H-Bridge Motor Controller
- Build H-Bridge Motor Control without Fireworks
- MOSFET H-Bridge for Arduino 2
- ULN2003A Darlington Transistor Array with Circuit Examples
- Tutorial Using TIP120 and TIP125 Power Darlington Transistors
- Driving 2N3055-MJ2955 Power Transistors with Darlington Transistors
- Understanding Bipolar Transistor Switches
- N-Channel Power MOSFET Switching Tutorial
- P-Channel Power MOSFET Switch Tutorial
- H-Bridge Motor Control with Power MOSFETS
- More Power MOSFET H-Bridge Circuit Examples
- Build a High Power Transistor H-Bridge Motor Control