Fully Portable 150W/12A Electronic load/current reg with multiple ranges - Page 1
Forum section: electronics / projects

author: Kevin.D
author_rank: Frequent Contributor
timestamp: May 17, 2013, 04:15:43 pm
content: To join the others who posted their diy Electronic load here's my effort that I finished about a month ago .I know it's a long post but I included a lot of info so It might help others who want to build there own device or copy mine . I started it just after Christmas working on it just at weekend in my spare time and I thought I would complete it in a few weekend's .By the middle of Feb ,6 weekends later I had only just decided on a final design.I got a severe case of feature creeps ,when you keep wanting to add and improve stuff,If I hadn't forced myself to stop I probably would have still been there today .I ended up taking somthing like 140+ hours(probably even longer if I added all the odd bits up) to finish building,modifying .It's got what are probably some unique features (It's small and portable and it can still disspate 150Watts ) .I set myself some tough specs when I was planning to build it,because I wanted it mainly for other uses aswell as using it as DC Electronic Load for testing power supplies.I wanted It to be able to use it as a current source/regulator (with at least a 10uA adj resolution) by using it in series combination with my bench power supply .I also wanted to be able to use it as a portable electronic fuse/current limiter for when I am working in the garage and away from the bench.This meant I wanted it to be portable and also that it had to be multiple ranges to achieve the resolutions I needed . It also meant there needed be some good input protection scheme to protect both the regulator and the DUT (Device Under Test) .I wanted it to be at least 10+ Amp ,150 Watt , and since it also needed to be portable then this was a big problem ,because anything above about 40W is going to have to be fan cooled (unless you use really large heatsinks ),and this means you need power to drive the fan's ,this can't be sourced from a small 9V battery .So I thought about using some of the power that was being supplied by the DUT that was available across the MOSFETS and was just being dissipated away as heat ,use it to drive the fans,and then measure the current used using a current sense resitors and subtract it from the main current so that constant current regulation would still be maintained whatever the fans used.If you think about this for a moment you also soon realize that for some of the time there will be no power or very low voltage available across the regulation MOSFETS to drive the fans, (this happens for instance when the current setting is higher than what the current the DUT is capable of supplying,then the MOSFETS will FULLY switch on in an attempt to increase the current which means there will be no Voltage drop across them).But then during those same conditions or when the V across them is to low to drive fans they are not dissipating any power either, so the fans are not needed anyway.So starting from a simple design I already had of my old diy 4 Amp E.Load I began adding on features ,first thing was to increase the current/power dissipation to a respectable 12A /150 Watt,which was done by simply having dual independant TO3-P MOSFET , each one has it's own cpu heatsink/fan and with it's own Opamp to ensure equil load sharing (Those two heatsinks are big enough to have another MOSFET added to each of them which together would increase total power dissipation from 150 to ~ 220 Watts ,but for 70 watts xtra I wasn't bothered ).I also added on a constant resistance mode to give 4 decades of resistance ranging from 1R-40K Ohms.The next plan was to use an Isolated step up/down SMPS which took it's source from across the regulator Fets to produce an Isolated 12V output which was then used to power the 12V fans (a battery would still have to be available to drive the regulator because as explained above , power is not available across the FETS all the time)). The primary winding current of the SMPS transformer would then be returned via one of the main current sense resistors so that any current used by the SMPS regulator to power fans/main regulator would still be included in the total current and would thus be automatically compensated for and a constant current would be maintained .I was all ready to use the SMPS method above and started to draw up my first schematic ,but I didn't end up actually using it , because after I had tested the 12V fans and realised that they would work usefully down to ~5.3V ( at 1/4 of the speed they run at compared to when they are on 12V but they still produced some cooling),I realised that if a 12 Amp rated E.load was built that could dissipate ~ 60W without fans (since 5V*12A=60 Watt), then only a simple linear regulator would be needed (well not a regulator really since it must also let through less than a max fan V,but more a fan 'Voltage limiter'for which an adjustable reg like the lm317 serves nicely) .So whats will this then mean ?,so now for all loads above ~5.3V input, enough voltage is available to drive fans if they are required ,and for all the loads below 5V input there would be enough dissipative capacity that the fans aren't needed.I couldn't manage the full 60W continous load dissipation without fans using only two cpu heatsinks, but they did achieve 40W continous dissipation .Which now meant that there is a small gap in the possible load's that we might want to check where fans might be required but wouldn't be available (so for example if you wanted to test a power suppply at 4V @ 10A+ or 5V @ 8A+ you could only do it for a short time because voltage is to low to drive fans .(they need a minimum of 5.5V )). Anyway I also added a dc power jack that enables both fans and regulator to be powered from an ext power pack , so even these small gaps in fan availablity are covered by this method if you are ever required to test at such high currents and low voltage for extended periods.Using a linear regulator for the fans made things a bit easier and cheaper and also meant I didn't need to worry about any SMPS generated noise being a problem ,and as another small bonus a linear reg itself will dissipate a few extra Watts.While this meant that SMPS noise would no longer be problem I still had to worry about fan motor noise though ,even brushless motors produce tons of noise ,so before I had even built anything at all and wasn't sure what level's of noise (the return current from fans goes directly in at the top of the main regulator sense resistor remember) would have on regulation performance. I spent some time testing the effectivness of simple CR , LC filters on the noise produced by fan motors in order to reduce it to minimum levels with a minimum number of components.The component values I ended up with for the LC filter performed well at removing any high freq noise that was produced ,but the largest portion of noise the motors produced was at ~300Hz and that was reduced from ~1V (p-p) to about 50mV(p-p) by the LC filtering .It turned out after building and measuring that the ripple rejection of the regulator at these low frequencies is good (probably ~ 90-120dB @ 300Hz ), and the LC filter I used could even be a bit overspeced and at 2mV/div on my scope I can't detect any remaining trace at all of fan ripple at the output of the regulator.The reverse polarity protection was the next thing I added because Just using a large 12+ A fuse in the input (which only protects the regulator and not the DUT ,which then has to suffer a complete short until the fuse blows) is not really an option , especially if your going to be using the device as a portable current limiter/electronic fuse .Also simply putting a diode in the input to block reverse current wasn't acceptable because it's Vf drop would add burden voltage which then effects/restricts your use with low input voltages < 1.2VSo the only solution I was really left with was to use a MOSFET in reverse bias in the output as a Low Vf drop rectifier .This to needed it's own solution ,because It couldn't just be done the standard way ( when I say standard way I mean like what you will find if you search for "reverse polarity protection mosfet ":- these use a reversed P-type mosfet in the + side (or N-type fet in the - side) then let the actual correct polarity voltage from some input then bias the mosfet to switch on ).This method won't work here because the regulator needs to work with low input voltages ranging from a 100mV upto 40 V, and since a mosfet will need at least 2V to even begin to turn on (8V to fully turn on) there wouldn't always be enough voltage present at the input to bias the MOSFET in a full on state .So a solution to this is to keep the polarity protection MOSFET turned full on by the regulators own power supply, then turn it off when we detect a reverse polarity condition.This sounds simple but it was really tricky to get it working well under all conditions and also remain stable at the same time .I thought I had solved it multiple times but then had to go back and try again because a solution to one problem would cause some other problem to surface with it .After many hours spent simulating and testing , I eventualy got it to work very well under all possible senarious . I am very pleased with the result since the required mosfet doesnt cost much more to implement than a high current diode and/or fuse ,and has all the advantages of speed and alsmost no Vf drop .(the mosfet is switched on fully in normal operation and with a very low Rds(on) so it doesn't dissipate hardly any power at all so doesnt need to be on a big heatsink,(actually the place I have used it in here it needs to be kept away from the main heatsink so that it's temperature,and thus rds(on) remains constant ,since it's in series with the sensitive low value sense resistor and would effect it's value)After the reverse polarity protection was working the rest of the input protections where added ,With the method I have used here to get the multiple ranges (use multiple outputs sockets) which does have some obvious advantages over the single output/range select switch approach ,but it also creates some design problems as well .For example , having alot more outputs/inputs means there is more possibilities for misconnections into them ,and if each socket requires protecting then that means extra circuitry and fuses .I put some effort into input protections because I wanted to make sure both the REGULATOR and DUT where protected well from overvoltage/overcurrent and other possible fault scenarious . Just about the only important thing it's not currently covered for is Mosfet overheating, which I may add later if/when I add a dedicated uC controlled display.Another disadvantage of not having a range switch is that it requires extra circuitry to determine which range is actually being used (would need to know this in order to autorange the decimal point if I decided to do a built in meter display) .But this can be done and is actually easier to do using digital means rather than analogue .As a side note :- one way to do this would be by using a uController to take a second reading at the top of the 1.2 Amp R27 sense resistor to GND and then use that result to compute which range is currently being used ( since the value across all the sense resistors should match the setting voltage at pin 5 of IC1B ,and also the value across R25 will be an exact decade factor of the value from the top of R27 to gnd (dependant on which range being used) .I haven't built a dedicated panel meter for display yet but I may do,What I have done is to provide meter test points, so now it's easy enough to hook up an external multimeter to them and that enough for me ,but I still have to correct for the decimal point position in the reading myself depending on which decade range is being used. I may get around to building and fitting a uC driven display meter when I transfer the project into a proper case .And if I do,then the uController will take care of autoranging the display and it will also be used to add a constant power mode, and it will probably also take care of thermal cuttout by using a temp sensor added to one of the heatsinks.Two other nice features I added where the ability to pre-set the output before it is enabled .Because I think this is a really important feature for any type of variable power equipment .A BNC input socket was also added to enable the load current to be controlled by an external device,so that I can use a function generator or programable device to modulate the E.load and test power supply transient response's , or under software monitoring and control, It could then do a constant power load/supply or on/off dynamic load testing of batteries etc .I tried to keep power consumption to a minimum for a long battery life ,depending on which opamp is used it is ~ 2mA using the OPA4188 (only ~ 300uA if a ADA4096-4 was used which I probably would have used if they weren't so hard to get ) which means using a PP3 battery thats got typicaly 650mAh capacity that will last at least 325 hours use .before a battery change is required.Here's some pictures of the prototype I constructed ,built on a piece of L shaped Aluminium .Also I have posted the circuit diagram done with EAGLE PCB (.sch file).I only used Eagle for schematic purposes ,so I haven't chosen the correct packages or anything for board layout's .It's got all the detailed schematic notes I usually do for my projects (so that when I look at them 10 years later I know exactly why I did things that way) on the schematic itself,Just download "Portable Eload schematic" file then rename the file type to .sch then load up in Eagle pcb and you can zoom in to read the notes.Update (april 2014) :-I have made a few small changes to the schematic and uploaded the updated ones , they are available below as (V 1.21) .Just a couple of things to add .Although this eload should be stable for any resisitive and capacitive sources/loads it will not be stable with large Inductive loads (especially when it is used as a current source) ,the stabilty compensation scheme I used here is not sufficient to keep the load stable when used with inductive loads greater than ~ 20uH (normal power supply leads have inductance of about 1.5uH per meter so it should be okay with any test/power leads inductance). Normally In order to make it stable for larger inductive loads you would have a capacitor and series resistor (about 2-10 uf + 2 ohms ) across the inputs and use a much lower fet gate resistor, this method of stability compensation is effective for any type of source/dut inductive or resistive .There is a cost though of using this cap across the input in that it does reduce load transient resonse some and also this caps initial charge/discharge current would also make it incompatible with using the eload as a precision current limiter/fuse .For this reason I did not put a permanent cap across input's for stabalization , If I do happen to have problems with oscillation because of a large Inductive source/DUT is connected to the eload then simply adding a temp capacitor accross the input (10-100 uF with series 2-10 ohm resistor) is enough to stabalize the eload .Also someone asked me if this eload will work with lm324 opamp .Yes it should drop straight in and should work ok .But the reverse polarity protection might not work with the version of lm324 you happen to have (lm324 data sheet does not guaruntee no phase reversal) .The lm324's I tested all worked fine .Best regards Kevin.DYou can just see the 2 Mosfets with their legs sticking out from under the heatsinks in this pic,they are actually mounted on the bottom plate and I milled two small pockets into the bottom of the heatsinks so they would fit over then.Yes it's not really a good idea to have the fans with blades facing upward ,when I transfer it to a proper case I will try to have the fans blowing out the sides .Notice below the lm324 in the socket .Well It gets fully tested first with a cheap 50 pence Lm324 before anything expensive gets plugged in here.Large number of offboard connections to Mosfets, controll's ,output sockets means lots of headers/plugs for this small veroboard.If you want to read the detailed build/circuit notes I put on the Schematic below then you will have to download the Eagle sch file I have included below ,then you can zoom in to read them .

author: sorin
author_rank: Frequent Contributor
timestamp: May 17, 2013, 04:58:30 pm
content: thanks for sharingQuote from: Kevin.D on May 17, 2013, 04:15:43 pmdont worktry to upload as a zip file.

author: Kevin.D
author_rank: Frequent Contributor
timestamp: May 17, 2013, 05:07:14 pm
content: Quote from: sorin on May 17, 2013, 04:58:30 pmIt works fine for me .did you rename file type ok .? what version of eagle are you using maybe that makes a difference ?,I am using eagle V 6.4

author: sorin
author_rank: Frequent Contributor
timestamp: May 17, 2013, 05:23:10 pm
content: 5.11Edit:updated to 6.4, work!