automating lead acid battery protection - low voltage cut off (LVC)

Hi there,

I’m new to the board (excuse the pun) and need some help from someone who know how I might put together some arduino hardware and code to achieve the following (diagram is attached):

Basically, I need a simple automated solution that turns on and off my inverter (via a arduino relay controlling low voltage serial data rs232 port) based on the current (again excuse the pun) voltage of my 24v battery array.

So basically when the arduino reads 22v or below, the relay will kick on and, via the serial connection, the inverter will turn off. When the battery array is charged back up to 24v or above the arduino will read this voltage and the relay will kick off, and via the serial connection, the inverter will turn back on.

It seems like it should be pretty simple thing to build but I just can’t seem to find anything out there to help me put this thing together.

I’ve attached a JPG image of the proposed system that may help explain things better.

Thanks in advance Simon

A few questions first: Most inverters already have low voltagte and high voltage detect and will shutdown on those conditions. Are you certain you can send a switch signal, such as realy contact' to the RS232 port on the inverter as a means of controlling it? Normally such ports are for communications. What model inverter are you using?

What happens if the inverter has a serious problem and is the load, causing your battery bank volts to drop below 22 volts, how will you protect against this situation if you need to?

In your diagram you specify if battery volts > 26, but above you specify if battery volts > 24.

What happens if one of your cells in the battery bank becomes weak and you continue to charge it to the full 27.6 or 28.4 volts? Will other cells then become over charged as the weak cell doesn't come up?

My suggestion is to monitor each of your cells, watching that each cell is within acceptable range.

Depending on the current you are pulling with the inverter, you could used either SSR (Solid State Relays) or MOSFETS on the input side of the inverter to totally remove it from circuit. The larger the current draw from the inverter, the larger the current rating of the SSR or discrete MOSFETs.

Such a system is what I am building for my battery bank, LiFeYPO4.


Im doing almost the same thing to a sailboat. Where arduino is controlling cabin battery. Its using a voltage divider to sense voltage of cabin battery (12V), and if voltage goes too low, it disconnects load from the battery. Then when voltage goes up, it will connect it back.

Does your charge controller have a load output? Or only Solar input and battery output? Most of them have load output also.

And for your application this would be a good relay:

Hi there,

Thanks for the input. I’ve attached an updated diagram with some equipment I purposefully left out to make things simpler.

The inverter is a pure-sine wave 1500w UL certified Go Power 24v and you are right, it will automatically shut off under certain conditions, one being low input voltage of 20v. The problem is that once off it wont turn back on with me having to manually cycle it. Hence my need for an automated solution.

As for the logic: I was actually thinking of using 3 variables: low_DC_voltage, high_DC_voltage, timer

So I figure that given the solar system is configured as primary source supplying a steady AC load on the AC transfer switch, in the event that over time the load draw depletes the battery array to the point that its voltage drops to 20v or less, the arduino will:

  1. Turn off the inverter, (causing the AC transfer switch to automatically fail-over to the secondary grid power source).
  2. Wait until the following condition are met before turning the inverter back on:
    a. The DC battery voltage rises to say… 26v, AND
    b. say…30 minutes have passed
  3. The inverter now back on will cause the AC transfer switch to automatically switch back to the primary solar power source

Yes this inverter is able to be turned on or off via the serial rs232 connection. Go power sells a simple cable remote with push button that toggles the inverter on/off, so I know it’s just a matter of shorting 2 of the 3 active pins in the 9-pin port. I’m still waiting to hear back from them which 2 pins to use so that I can wire the arduino relay accordingly.

As for the 24v 26v discrepancy, my mistake. I meant 26v although this might even be higher (like 28v).

I take the batteries off line every so often to desulfinate/charge them so I think they’re ok, but I really like your suggestion about monitoring things at the cell level. I just wouldn’t know how to do that at all :frowning:

Also I have no idea what, in addition to the mega board and relays, I need to accomplish all this. I’ve seen some arduino voltage sensors on the internet but don’t know if they are purposed for this project. Plus there’s the whole thing about splitting the DC (24v) voltage down to under 5v so the arduino won’t blow up. Lastly the code, which I’d need some serious help with.

As for the question about the charge controller, yes it does have a load output, but it’s DC and limited to only a few amps and only on at certain times of the day/night (i think). The charge controller’s charging output is also DC but in a 24v DC system like mine will output as much as 1000W (assuming my solar panels can supply this which they cant as I have only two 225W panels in series).

Any thoughts?


any ideas or knowhow you can share on how to put this together? anyone?

simplesimon10: any ideas or knowhow you can share on how to put this together? anyone?

So what was the question actually? :)