Solar Panel PWM dump load controller

I have 500W of solar panels at my cabin and this feeds into my battery bank. However the batteries are often fully changed and so the panels stop producing energy when this happens. This gave me the idea of using spare solar capacity to heat the cabin or hot water etc. I enjoy building electronic circuits and had used pulse width modulation (PWM) to build a proportional valve driver and so I though I could use this to take whatever excess power the panels were producing and send this to a dump load (water heater etc). So if there was 100W of spare capacity the load would take up the 100W, if 500W then the load would take 500W. This can all be done with PWM.

So the idea was to switch on the PWM system when the batteries were fully charged (12.8V in my case) and keep increasing the PWM output as the voltage climbed.

A video of the system is on YouTube

https://youtu.be/FZwcRWd2a2Y

Introduction

Solar panels provide output depending on the available sun light and often are used to charge batteries. Once the batteries are charged most controllers shut down the solar panel output so that the batteries are not over charged.

It is possible however to use any spare solar power to supply other users by using a pulse width modulation controller which diverts the solar power supply to other users once the batteries are fully charged.

PWM has the advantage over using a relay in that the power going to the load can be modulated to match the available power with the load, thus avoiding the relay switching on and off frequently.

The Circuit

The basis of the circuit is a Texas Instruments DRV103 PWM valve driver which needs an input of 1 to 4 volts to drive the PWM output from low to high.

The circuit below provides a pulse width modulated dump load output with <5% duty modulation at 12.8 volts and >95% modulation at approximately 14 volts.

The first part of the circuit is a voltage divider with a center tap multi turn 10K potentiometer in the middle of two 10K resistors. So, with 12.8V from the battery across the resisters the center tap range will be between 4 and 8 volts. Adjusting this to 5V should give the PWM controller minimum output.

An Op Amp is used in differential amplifier mode with a 5V reference voltage (5V linear voltage regulator IC) on the negative (V1) and the center tap of the potentiometer on the positive inputs(V2). There are differential amplifier calculators on the Web which will select the resistor values for you. In my case I used 10K for R1 and R2 and 56k for R3 and R4. The Op Amp outputs the difference of the input signals with a gain of 5.6.


The Differential Amplifier

The differential amplifier, amplifies the voltage difference present on its inverting and non-inverting inputs


When resistors, R1 = R2 and R3 = R4, the output voltage is calculated by:


NB. Choose resistances in the tens of k ohms range to keep the current flows down

When the center tap is at 5 V the Op Amp output will be <0.5V. At 5.8V the Op Amp output is 4.7V. Thus battery voltage swing from 12.8 to 14V will appear as approx. 0.5 to 4.7V at the Op Amp output. I used a LM324 quad Op Amp as I had one available. Two of the extra Op Amps I used as unity gain buffers before and after the Differential amplifier, this seems to be good practice to avoid circuit interference but I don’t think it is essential and the circuit seems to work without them. The 4th one I just followed the Texas Instrument guidance and connected the output to the negative input and gave the positive a reference voltage rather than not connecting them at all

The next part of the circuit is a Texas Instruments DRV103 PWM valve driver. All the details of this IC are available from their Data Sheet. The PWM duty cycle is set by apply a voltage to pin 1. At 1.344V this gives a 5% duty cycle and 3.703V gives a 95% duty cycle. So applying the output of the Op Amp to pin 1 will provide the PWM output we need to drive a load at different power levels depending on battery voltage.

The DRV103 on its own can only provide a maximum of 3 amps output but the data sheet provides a solution for higher outputs up to 70 amps on page 14 using a power Mosfet IRF4905. In fact I used four IRF4905s in parallel to reduce the overall resistance and subsequent heat build up. So in theory I could use the circuit to power over 2.5kW, if the cables were big enough and potentially twice that if I used a 24V supply and modified the Op Amp circuit to suit.

I set this circuit up on a prototyping board (see below) and checked out everything was working and then transferred the parts to a breadboard and soldered everything up. The potentiometer should be adjusted so that the PWM output stops at 12.8V. I connected a fan (cooling fan for the Mosfets) to the PWM output and adjusted the pot so that the fan stopped when the battery voltage dropped to 12.8V to check this.


LM324 16pin IC, 5V ref IC, variable pot and resistors


Case/housing

For the case I found the cheapest thing to do was to buy a 500W 12V to 240V Power Inverter and use the case, fan, switch, and power terminals for the new unit. It also had 8 x TO-220 transistors which were attached to the case as a heat sink so I just used their position fixings for my four new T-220 power Mosfets

The inverter also had 2 x 5V USB ports and it seemed a shame not to use this part of the original circuit. So I worked out where the 5V circuit that supplied the USBs was on the board and cut that section off with a hacksaw and reused it. I also reused the LEDs to show ON, fault etc.

In practice

I’ve connected the PWM dump load controller to my 12V battery bank via a 40A DC MCB and 6mm cables. The output is connected to a heated towel rail with a 200W element in the lower leg. I also added antifreeze to the water and just left a push fit cap to the top ½” connections so that it would not pressurize up when it got hot.

The system has worked really well and we are able to take 200W of power from the solar panels when the sun allows, whilst still keeping the batteries fully charged. You can hear the system working as when the sun comes out the cooling fan starts to work and ramps up to full speed, once the sun goes in you can hear it ramp down again. We seem to be able to take 50 to 100W off the system even when it’s cloudy which I wasn’t expecting. I had thought that as soon as it clouds over it would not produce any power, but this seems to be not the case. I’m going to add another 200W of air heater to the system shortly as the solar panels are able to supply up to 500W in total. I’m very happy with things so far and would recommend this approach to anyone who has standalone solar panels.


A video of the system is on YouTube

https://youtu.be/FZwcRWd2a2Y