DIY Adjustable Constant Load (Current & Power)
Intro: DIY Adjustable Constant Load (Current & Power)
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!
Here you can find a parts list with example seller (affiliate links):
Aliexpress:
1x Arduino Nano: https://s.click.aliexpress.com/e/_dULoNXh
1x 16x2 I2C LCD: https://s.click.aliexpress.com/e/_dSjOzdW
1x Rotary Encoder: https://s.click.aliexpress.com/e/_dZs9jUb
1x TC4420 MOSFET Driver: https://s.click.aliexpress.com/e/_d9epnMB
1x IRFZ44N MOSFET: https://s.click.aliexpress.com/e/_dUJRtAg
1x ACS712 Current Sensor: https://s.click.aliexpress.com/e/_dSKBwNK
1x Fuse Holder: https://s.click.aliexpress.com/e/_dU3K3jS
1x 20A Fuse: https://s.click.aliexpress.com/e/_dTjqvC4
2x Binding Post: https://s.click.aliexpress.com/e/_d9ke5na
Ebay:
1x Arduino Nano: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x 16x2 I2C LCD: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Rotary Encoder: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x TC4420 MOSFET Driver: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x IRFZ44N MOSFET: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x ACS712 Current Sensor: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Fuse Holder: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x 20A Fuse: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
2x Binding Post: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
Amazon.de:
1x Arduino Nano: https://amzn.to/2BLw2Ml
1x 16x2 I2C LCD: https://amzn.to/2BJ8tnx
1x Rotary Encoder: https://amzn.to/2Lmt5S0
1x TC4420 MOSFET Driver: https://amzn.to/2PBVQ0g
1x IRFZ44N MOSFET: https://amzn.to/2PxQd38
1x ACS712 Current Sensor: https://amzn.to/2NijkGn
1x Fuse Holder: https://amzn.to/2NkffkK
1x 20A Fuse: https://amzn.to/2PCLm0A
2x Binding Post: https://amzn.to/2BP0eGq
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:
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:
81 Comments
M_reza qaemi 8 months ago
PaulAbraham 1 year ago
_default_username 11 months ago
PaulAbraham 1 year ago
Presumably setting up the ADC prescaler for the voltage and current measurements. What do the values actually mean
ADCSRA &= ~PS_128;
ADCSRA |= (1 << ADPS1) | (1 << ADPS0);
Presumably sets up interrupts to allow the button press?
PCICR |= 0b00000100;
PCMSK2 |= 0b00010000; // turn o PCINT20(D4)
attachInterrupt(0, isr0, RISING);
Beyond me, sorry!
TCCR1A = 0;
TCCR1A = (1 << COM1A1) | (1 << WGM11);
TCCR1B = 0;
TCCR1B = (1 << WGM13) | (1 << WGM12) | (1 << CS10);
ICR1 = 2047;
OCR1A = 0;
Smeden 1 year ago
A thermal shut-down + programmable maximum power should probably be considered too. ;-)
LikeTheSandwich 2 years ago
RandyD66 2 years ago
I don't see the source for the heatsink anywhere ??
Also, what I really need is a 65v 20A dummy load.
I may try to modify this design for that.
waileun 5 years ago
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
bobby.mazey 3 years ago
maliŽ1 4 years ago
Note: If a strong power source is connected (eg a UPS battery), the regulation of the current is too slow and there is a possibility of MOSFET burnout (even 55A IRFZ44, I burned two until I realized the problem). Use a quick fuse
DoctorEdo 3 years ago
DoctorEdo 3 years ago
https://pastebin.pl/view/08f2aecc
janecekpavel9 3 years ago
maliŽ1 3 years ago
JMI83 4 years ago
1) dissipate 20A over 30V means you need to dissipate 600W, as the junction to case resistance for IRFZ44 is ~1.5°/W, this means you have to dissipate 400°, as temperature junction is maximum 175°C, this mean you have to cool down case to -225° ...
On another hand it's also what datasheet said: with an infinity head sink, maximum power allowed for IRFZ44 is less than 150W. (in fact (175-25)/(1+case to to sink))
2) if you have a look on IRFZ44 datasheet, you'll see it isn't really made for "linear" usage, DC isn't indicated on SOA graph, but should be for VDS ~12V in the range of 1A.
Yes, it's a good instructable, but not using this Mofset.
Regards JMI
brendanoldham 3 years ago
TonyF12 4 years ago
YasienD 3 years ago
I'm using a 20V 6A power supply to supply any load and a buck converter to supply power to the equipment. I lost my 5 volt regulators and I had a spare buck converter.
Regardless of the value I change the either the current or load values to, I always get a 2.4V output. The voltage drops to 0 when I 'stop' the output but it seems as though the duty cycle of the PWM signal doesn't change. I tied pin 9 directly the gate of the mosfet and the my output voltage was 2.1V and didn't change when I varied any values in settings.
My mosfet is fine, I tried 2 of them, and bot were adjustable with a 50k pot.
Can anyone help me here?
Puh-leeese
lziot 3 years ago
The TC4420MJA driver is not available on any shops and it is quite expensive. Is there any replacement ?
hoj_dk 4 years ago
Cool project. I'm deffinately going to build this. Did anyone make a PCB for this? and are willing to share the gerber files for it?
Best regards,
Christian