dcload_p1

Design & Build an Electronic DC Load

In this project we will design an build an Electronic DC Load which is capable of Constant Current, Constant Power and Constant Resistance. The design will use a rotary encoder for input entry and a 20×4 LCD display as the user interface. In Part 1 of this project we will discuss the basic design and then build and test the initial prototype.

Below are links for the prototype software plus a zip file with the schematic, PCB artwork and component layout:

dc_electronic_load_block_diagram

dc_load_wiring

Above shows the PCB wired for testing with heatsink and fan added.

dc_load_ics

Underside of PCB showing the locations of the 3 IC’s.

dc_load_display

Close up of 20×4 LCD showing setting in Constant Current Mode.

PART 2

In part 2 of this project we will make some changes in the way the LCD displays the information. The set current and set power levels are now set in Amps and Watts to three decimal places. Safety limits have also been added to limit maximum current setting and maximum power. After start up the unit goes in to constant current mode. A battery capacity function has also been added to test the life of batteries in mAh. The power mosfet has now been changed to a BUK956R1-100E (from NXP) to improve power handling. Finally software has been upgraded to Version 2.0.

Below are links to the downloads for Part 2 of this project:

http://www.scullcom.com/Electronic_Load_software_V2.0.ino
http://www.scullcom.com/MCP79410Timer-master.zip
http://www.scullcom.com/RTC_Module_PCB_Schematic.zip
http://www.scullcom.com/Electronic_Load_Parts_List.pdf
http://www.scullcom.com/DC_Load_Circuit_Part2.pdf

Below is the new LCD layout with the heatsink temperature now at the top left of the display.

part2_CC_display

When the power limit is exceeded the Load switches OFF and the display informs “Exceeded Power Limit”.

Part2_power_limit

To accommodate the new feature of Battery Capacity Testing we have now added a Real Time Clock (RTC) which also uses the I2C bus to interface with the Arduino.

part2_RTC_circuit

Below is the Safe Operating Area graph, taken from the datasheet, of the Power Mosfet. This illustrates the ability of the Mosfet to handle 3A at 30 volt. However, this is at 25°C and in reality the power handling will be lower than that as the Mosfet heats up. At a later stage we will consider adding Mosfets in parallel to overcome this.

part2_SOA_mosfet

PART 3

In Part 3 of this project we will make a number of improvements and additions. These will include a keypad, improved accuracy, fault protection and enhanced battery capacity discharge test mode. A 4.096 volt reference had been added to the DAC improving accuracy. A battery capacity testing menu has been added.

Below are links to download the latest version of software (version 8) and the updated schematic of the whole project, which now includes Real Time Clock and Voltage Reference Modules:
http://www.scullcom.com/Electronic_Load_software_V8.ino
http://www.scullcom.com/DC_Load_Schematic_ver3.pdf
Please not that the new software now uses a keypad library – ensure that you have the latest version of this library and read the information on the following web page:
http://playground.arduino.cc/Code/Keypad
Direct link for the keypad.h library is below:
http://playground.arduino.cc/uploads/Code/keypad.zip

PART 4

In Part 4 of this project on the Electronic DC Load we are going to add a remote voltage sense circuit, increase the power capacity by adding additional power mosfets and build the completed unit into a metal project case. We will also upgrade the software to allow for input entry via the keypad as well as the rotary encoder.

Below are download links to the latest version of software.
Also a zip file with the updated schematic for the main PCB, schematic and PCB artwork for the Remote Voltage Sense , Parts List, details of alternative power mosfets, wiring diagram and any notes:
http://www.scullcom.com/Electronic_Load_software_V12.ino
http://www.scullcom.com/DC_Load_files_Part4.zip
To increase the Power Cut-Off Level simply change the value in the code below in software:
float PowerCutOff = 50;
Suggest changing 50 to 99
WIRING DIAGRAM LAYOUT LINK BELOW:
http://www.scullcom.com/DC_Load_wiring_layout.pdf

Below is the Remote Sense Circuit which uses a OPA277 OP Amp as a difference amplifier. The negative 5 volt supply for the OP Amp is generated by the a ICL7660 voltage converter IC.

Part4_remote_sense

The 20K preset between pins 1 & 8 of the OP Amp is adjusted for a NULL sense output when the sense input terminals are shorted together.

PART 5

In part 5 of this project we will improve the power Mosfet’s current handling capability. Also a Transient Mode will be added providing a pulse option for the DC Load. The software will be updated providing extra features such as; user setting of battery cut-off voltage for battery capacity mode and user setup of safety limits.

Below are links for downloading the latest software and updated schematic diagram:
http://www.scullcom.com/Electronic_Load_software_V24.ino
http://www.scullcom.com/DC_Load_Schematic_v5.pdf
The Remote Voltage Sense circuit remains as show in Part 4 of this project.

Part5_mosfet_par_update

Above is the revised circuit for paralleling the Power Mosfets. Additional 0.1 ohm resistors have been added in the source return of each of the Mosfets so as to reduce the effect of the negative temperature coefficient of the gate/source threshold voltage.

In Part 6 of this project we are going to make modifications to the Power Mosfet drive circuit to improve the ability to handle higher current/power levels whilst protecting the Mosfets from over heating and possibly going in to thermal runaway. We are also going to design, build and test the trigger input circuit. In addition to this I have updated the software to Version 25.
Below are links to download the latest software. Also there are two zip files providing the PCB artwork, Schematic and Parts List for both the Mosfet Drive Circuit and the Trigger Input Circuit.
http://www.scullcom.com/Electronic_Load_software_V25.ino
http://www.scullcom.com/DC_Load_Mosfet_Drive.zip
http://www.scullcom.com/DC_Load_Trigger_CircuitPCB.zip
IMPORTANT: PLEASE REMEMBER WHEN PRINTING THE PCB ART WORK SET YOUR PRINTER TO PRINT ACTUAL SIZE.

12 thoughts on “Design & Build an Electronic DC Load

  1. Great projects and thanks for your work!
    I cannot compile the Electronic DC Load software. Where can I obtain the LCD.h library ?
    Phil

  2. I have watched almost all of your videos. Can I suggest an upcoming project? I would like you to design/build a >=200MHz Frequency Counter that can also measure down in the Tens of Hz range. Perhaps it would be useful to have the Frequency Standard/Reference be used to test or calibrate the Frequency Counter…?

  3. Hello,
    much very nice project, brillant video from start to end! Personally prepare on Milliohm-Meter + this Electronic DC Load. Could it be speed Frequency Counter with 10 ÷ 12-digit. 8-digit them on flabby is much, only choose… Great job!
    I am sorry for my English.
    Regards, Roman Klíma (Czech Rep.)

  4. Hey Louis
    Is there any chance you will publish the PCB CAD files?
    Thanks
    Nick.
    P.S. I have made the Millivolt metre using the OSHPARK PCB and added a soft power on.
    Keep up the great work.

    1. Hi Nick,
      As the project is not fully finalised the PCB keeps changing I have not completed a new PCB yet.
      However, one of my followers Rob Bruno has already designed a new PCB using my design (up to Part 5) but we have not tested it yet. It should be OK and uses surface mount components. If you are interested it is available from: https://www.oshpark.com/shared_projects/tXUxCSVa
      The PCB CAD file I think is also available to download from OSHPARK.
      You can also download the circuit from the link below:
      https://www.dropbox.com/s/orwivgbt23gl158/ElectronicDCLoad1.pdf?dl=0
      We will be working on a final PCB design which will incorporate all the changes/additions.
      Regards,
      Louis

  5. Hey Louis,
    This is a nice project, and explained up into all details! 👍

    I have a question that i did not want to ask on your youtube channel,
    because it is a bit out of topic :

    Do you think i could use such a DC electronic load with AC low voltages,
    by connecting it through a bridge rectifier ?
    It would then emulate an AC resistive load… ( i suppose ? )
    What could go wrong ?

    Best regards and thank you for all your nice projects!
    Eddy.

  6. Hello Louis,
    Thank you very much for your video’s on youtube, as I said on one of them they are Brilliant and the best I ever scene. I have learned so much from you. As soon as I found out you had a website, i had to come here. I had a good feeling from the first time I watched your videos, I knew, you would have had to be a teacher at school as well, especially the way you were waving the stick at the board… lol. No really its because of how you conduct yourself with the expertise of explaining the theories and a perfect tone of voice and temperament. I have to say the tone of voice is very important for teaching, because if it is irritating it is very hard to concentrate after a while. Not to put him down, for example Dave Jones is excellent with his videos and is very talented, but I cannot listen for too long because his voice has too much accent up and down tones and so on.
    So I thank you for your work, I think you are a great teacher and kind hearted, I wish I would have had teachers like you!
    Now regarding this DC load , it looks like that for now it’s still open to new changes, what do you think about the idea of making the system outputting the data values to a pc and then may be with an already made freeware software it can be data logged to give a record of the load test?

    Also I noticed that you made a function to zero the figures at the start by pressing and holding two buttons.
    I am just going to ask here so excuse my ignorance, why not have this to zero by its self in the program after turn on and a set delay or every time the load is turned off ? In the past I have made some projects to do this.

    Kind Regards,
    joe

Leave a Reply

Your email address will not be published. Required fields are marked *