Adjustable Current Sink

printed circuit board

I started with a simple circuit but when I decided to test the Quest igniters its inability to provide the low currents was a problem. It worked by regulating the voltage drop across a 1 Ohm resistor to match the ~0.7V base-emitter voltage of a silicon BJT. Although I included a variable resistor across the 1 Ohm resistor that only allowed me to increase the current. Which left it with a ~0.7A floor which would never work for the low current Q2G2. It was quick and simple but I needed a new circuit.

current sink schematic

This is the part that is on the circuit board while various other parts are located off board.

wiring

(Connections on the left are to the circuit board while connections to the outside world are on the right.)

The NPN transistor has been replaced with an op-amp. While I show this as a MC34071 many other parts will work. The important specification is common mode voltage range. This must extend to the negative voltage rail (ground) at least. The output range isn't as important. U3 compares the voltage from the current sense resistor to the voltage from a reference. The output of the op-amp will be driven to whatever level reduces the difference to zero. C3 rolls off the high frequency response. I also show an optional zener diode. This is to be used if the supply voltage exceeds Vgsmax which is 20V for typical power FETs but logic level devices are usually 10V.

The rest is pretty simple. A 7805 regulator provides 5V to the PIC16F84 (Why this part? Because I had one and it was up to the job.) and also serves as a reference for adjusting the current. When used with a 0.5 Ohm sense resistor this limits the maximum current to 10A. (Other considerations may impose a lower limit.) For currents under 1A a silicon diode (1N914, 1N4148, or equivalent) is used as the reference. This is not ideal since the forward voltage is strongly dependent on temperature. (Stable half volt references are hard to come by, or expensive, or in a surface mount package.) But with a little care it works. Be sure not to mount it anywhere near the sense resistor or power FET.

A PIC16F84 controls the current source. My first version used the PIC12C508 and while I have quite a few of those left, my programmer no longer likes them for some unknown reason. Since the 16F84 has a lot more pins I decided to put them to good use. Six pins are attached to a header which is used with jumpers to select the pulse width. A table look up is used so the 64 selections available can chose from all 256 possible multiples of 50ms. The table is configured so that if no jumpers are installed a 50ms pulse is selected. For other options, see the source file. Or you can press and hold the continuous button to turn it on for as long as you like. This is typically used when adjusting the output current setting.

The 16F84 controls the current source via Q1 which pulls the reference input of the op-amp to ground.

The circuit is simple enough so that point to point construction is reasonable but I had a PCB built using BatchPCB. The cost was less than $20 which isn't bad for a one off design.

The parts off the circuit board are pretty flexible. I raided my junk parts supply for the switches but I did purchase the power FET and resistor. I recommend a Vishay/Dale RH-25 series (25 Watt) chassis mount 0.5 Ohm 1% resistor for R1. Bolt it to the aluminum project box you are mounting this in. It will easily handle up to 7 Amps and even more if you don't hold the button down too long since it is rated for pulsed overloads. Wirewound resistors are tough.

The power FET can be any suitable N channel device. Pick something in a package you like (TO-220 or TO-3) and mount it to the project box as well. Remember to isolate the tab from the box to prevent surprises.

If you happen to have a nice multi-turn pot (50K to 200K) use it for R2. Otherwise put a 50K single turn pot in series with a 500 Ohm pot. This will provide a coarse and fine adjustment. Linear taper is preferred. I raided my parts collection and found a 200K multi turn trimmer with a panel mount adapter on it. I suspect I purchased this from the Sandia Labs Salage Yard in the 70's. Lots of good junk there. I wonder if they are still open and keeping the same odd hours. (First and third Friday of each month from 12:10 to 1:00 PM.)

Cautionary Tale

I built up the circuit on a solderless breadboard to test and it started out well. The current regulation was good but when I attached the PIC and NFET something strange happened. When I triggered the circuit the output current went to maximum and stayed there. Fortunately I had a 50 Ohm resistor as the load or something would have died since it had no heatsink. I suspected the feedback capacitor was causing trouble and that I needed to add R5. To make sure I understood the problem, I whipped up a SPICE model.

That model showed that I really did need the capacitor to prevent overshoot and ringing but also showed the problem. The capacitor results in voltage spikes at the inverting input on the pulse edges. In particular on the falling edge where the voltage goes negative. I dug out the MC34071 data sheet and while it is a bipolar device it does have input clamp diodes (not shown on the schematic but mentioned in the text) which are subject to latchup. Something that a SPICE model will not reveal.

I tried out a 1K series resistor on the inverting input in both SPICE and the breadboard and that worked fine. Then I ignored the problem for a couple of days. Then I dug out some old articles on high performance voltage regulators for audio applications and started reading them again. (also available here) I noticed that the same basic opamp topology was used with a capacitor in the feedback loop. But it also included diodes on the inputs to limit the differential voltage. This looked interesting. The data sheet for the MC34071 simply says that neither input should go outside of the voltage rails so differential voltage didn't seem to be a problem but I tried the diodes anyway. They worked. So the final design includes these diodes. They do limit the differential voltage but the gain of the opamp is so large (~100,000) that this is not a problem.

Use

Connect your power source to B+ and B-. Igniters are connected between the igniter output (FET drain) and B+.

Connect a multimeter to the monitor output to measure voltage. To set the current, short the output and hold down the continuous button while adjusting R2 until the voltage is half the current you want. (1V = 2A) Minimize the time spent doing this to keep the heat generated down.

Then connect an igniter and press the pulse button.

Home