DIY Adjustable Constant Load (Current & Power)

27,460

167

37

About: Awesome Electronics Tutorials, Projects and How To´s

In this project I will show you how I combined an Arduino Nano, a current sensor, an LCD, a rotary encoder and a couple of other complementary components in order to create an adjustable constant load. It features a constant current and power mode and can handle a maximum of 30V and 20A if your heatsink design can handle it. Let's get started!

Step 1: Watch the Video!

The video gives you all the information you need to make your own adjustable constant load. During the next steps though, I will present you some additional information.

Step 2: Order the Components!

Step 3: Create the Circuit!

Here you can find the schematic as well as pictures of my finished circuit. Feel free to use it as a reference for your own circuit.

Step 4: Upload the Code!

Here you can download the code for the project. Upload it to the Arduino Nano through the Arduino IDE

Also make sure to download/include this library:

https://github.com/fdebrabander/Arduino-LiquidCrys...

Step 5: Finish the Project!

All that is left to do is mounting all the components inside your enclosure.

Step 6: Success!

You did it! You just created your own adjustable constant load!

Feel free to check out my YouTube channel for more awesome projects: http://www.youtube.com/user/greatscottlab

You can also follow me on Facebook, Twitter and Google+ for news about upcoming projects and behind the scenes information:

https://twitter.com/GreatScottLab

https://www.facebook.com/greatscottlab

Share

Recommendations

  • Gardening Contest

    Gardening Contest
  • Colors of the Rainbow Contest

    Colors of the Rainbow Contest
  • Woodworking Contest

    Woodworking Contest

37 Discussions

0
None
Arisma

19 days ago

Excellent instructable my friend!!! I built it and it is working excellent! I have also designed and 3D printed a case for it. If you or anyone else is interested, I can sent you the stl. It is a huge tool for me that helps to discharge my LiPo batteries (alongside with a low voltage beeper) when the weather is bad to fly...
Allow me to make a modification. You can add a 1K resistor connected from arduino's D9 to GND, because if you have connected a battery (especially a LiPo one) with a lot of Amperes (or a big load) before Arduino boots, the load hits maximum, and the fuses are burnt instantly.
Keep up the good work! ;)

1 reply
0
None
darkathArisma

Reply 12 days ago

Could I ahve that stl please?

1
None
kiwidave72

Question 4 months ago

When looking at the code, i can’t see how you are setting the PWM out? You set it to an output on pin 9 and set it to low, but I can see anything else.

2 answers
0
None
waileunkiwidave72

Answer 22 days ago

yes, I too cannot see the code that made adjustment to current, other than to the screen

0
None
UKDradge

5 weeks ago

Where do you get this box? I see you have used it on several projects.

0
None
ChristianR154

4 months ago

PWM pin not defined to the end.i don t see how you control mosfet

1 reply
0
None
esorreta

Question 7 weeks ago

I'm confused with how the voltage (curvoltage) is calculated. If 30 volts is applied across the entire divider 5 volts would appear across the 2K resistor. Hence shouldn't curvoltage be caculated as curvoltage = curvoltraw * (30/1023)? Would also appreciate it if you could explain how the current is calculated. I intend to build this for my son to help him with his final year project involving solar power. Thank you.

0
None
taki2007

Question 7 weeks ago

Would it be possible to combine this project with the variable power supply project, would it be complicated or just as easy as daisychaining this constant load supply to the output of the variable voltage supply? Would it be recommended, or would it be wiser to rethink the whole thing to be on the safe side?

Edit: the variable power supply project seems to take care of max current output; would using it to charge a lithium battery be like the "CC-CV" charging method, since this was my goal initially ?

0
None
waileun

Question 2 months ago

Queston:
Hi, I notice that there are two electrolytic capacitors and one under the TC4420. may I know what are the values of the two electrolytic capacitors and the SMD? from the diagram I only saw, 22u and 470u

0
None
power000

3 months ago

WHAT IS the value of R10??

edit: it is R1 and it is 10ohm

0
None
sk8nfooldavorin.perkovic

Reply 8 months ago

Yes - Vcc is red and GND is black. That's not what I asked. Where are the binding posts in the schematic?

0
None
davorin.perkovicChristianR154

Reply 4 months ago

Pozdrav, Kristijane. Vidim !

Mosfet se kontrolira PWM signalom na pinu D9:

#define pwm 9 // Pin D9
.....
....
....
void setup() {
...
digitalWrite(pwm, LOW); // Isključi mosfet
...
// Postavljanje generiranja PWM signala
TCCR1A = 0;
TCCR1A = (1 << COM1A1) | (1 << WGM11);
TCCR1B = 0;
TCCR1B = (1 << WGM13) | (1 << WGM12) | (1 << CS10);
ICR1 = 2047;
OCR1A = 0;
...
}

void loop() {
...
...
// Kontrola mosfeta kada treba mijenjati struju
if (curcurrent < current) {
OCR1A++; // Povećaj širinu PWM signala koji ide na mosfet
}
else {
OCR1A = OCR1A - 1; // Smanji širinu PWM signala koji ide na mosfet
}
...
...
...
}

https://en.wikipedia.org/wiki/Pulse-width_modulation
https://sites.google.com/site/qeewiki/books/avr-guide/pwm-on-the-atmega328