The Great Battery Connection Question

Batteries as originally installed:

The idea there was to keep the wires between the batteries short, and use thicker wire for the connections that carry more current.

When I posted the picture online, someone pointed out that I should connect the load diagonally across the battery bank. Which it turns out was suggested in the battery handbook, and in various texts online. The optimal solution to equalize battery current in a battery bank is to have a pair of thick copper busbars, and lead equal lengths of cable from each battery terminal to those. But the diagonal connection is given as an alternative.

So of course I had to run a simulation, and measure voltages in situ, to see if that really was better. It is, somewhat, but it's not the best solution.

I disconnected all the inter-battery connections and strung them out in series, driving the motor at 20A from one battery, then measured the voltage across each segment, getting values of the order of 5mV. That correlated fairly well with calculated values for each length of wire.

LinkNameLengthGaugeResistance
CalculatedMeasured
1-2 +veR11129"2AWG0.117mΩ0.143mΩ
2-3 +veR121315"4AWG0.311mΩ0.348mΩ
3-4 +veR131413.5"4AWG0.280mΩ0.312mΩ
1-2 -veR212215.5"2AWG0.201mΩ0.205mΩ
2-3 -veR22238"4AWG0.166mΩ0.164mΩ
3-4 -veR23246"4AWG0.124mΩ0.128mΩ

The battery manual quotes the internal resistance as <150mΩ. I drove the motor at different RPM and measured the voltage at the battery terminals, using the current shown on the motor controller display. That gave me a resistance of about 200mΩ, which I used for the simulation runs. That's something like 500 times greater than the cable resistance, so I'm wondering if the cables make any practical difference at all. When I measured voltage drops across the actual cables with the motor running, I got inconsistent results; I believe that the battery management units in the different batteries (linked by CANBUS, not fitted in the photo above) were balancing the battery charge states.

I ran simulations using ngspice, a simulator based on the original Berkeley SPICE3.

Since I have different lengths of cable between the batteries, in two different gauges, the cable resistances are all different. I simulated a load connected across all possible combinations of battery terminals, and found a solution that was better (less variation in battery current) than either my original install, or the suggested diagonal connection.

SPICE models of battery bank as installed

As initially installed, batteriesA20.cir, load at one end (nodes 11-21)

BatteryCurrent
15.209
25.184
35.160
45.149

As suggested, batteriesA20z.cir, load connected across a diagonal (nodes 14-21)

BatteryCurrent
15.176
25.164
35.171
45.190

Optimal as calculated with cables as installed, batteriesA20z5.cir, load across middle (nodes 12-24)

BatteryCurrent
15.173
25.181
35.174
45.176

4 Oct 2021

I had some 2AWG cable left, so I decided to replace the longer 4AWG interconnects. SPICE comes up with a slightly better balance of current between the batteries:
BatteryCurrent
15.178
25.174
35.173
45.178
batteriesA20y8.cir, load across diagonal (nodes 11-24)

All this effort balancing battery currents may be entirely moot; experimentally the discharge currents are all over the place. One or two batteries discharge substantially with no current taken from the others, then the others discharge. I had noticed uneven voltages across the interconnect cables when installed on Alastor, and pulled them all out to test them at home. I connected all four in parallel in a star configuration, using equal lengths of 8AWG cable as a current shunt. I then used the batteries to power a couple of 120V space heaters (at 50V, but they're basically resistive). The heaters took 8A from the battery bank. I then measured the volts drop across each shunt to get individual currents, and monitored the state of charge by tapping the buttons and looking at the LEDs (the batteries flash red/yellow/green patterns to indicate 0,10,30,50,75,100% charge).

I contacted the battery manufacturer; this behaviour may be normal and doesn't really matter. There was another issue with one battery - it will not charge with the mains charger when connected in isolation. They're going to exchange it. This may solve another problem related to the remote power switch (on order, not yet arrived). Apparently only newer versions will work with the switch, but only one in the bank has to be new. Another weird issue is that if the batteries are turned off, turning any one of them on will turn on the rest. But if one of them is turned off, unless they are all turned off manually within 15 seconds or so, not only will the others not turn off, but the first one will turn itself on again.


SPICE simulations of a bank of 8 batteries

Out of curiosity, I ran a simulation of a bank of eight batteries, connected by equal lengths of identical cable. As expected, drawing power from one end of the string gives a progressive voltage drop down the string, but a diagonally-connected bank still draws more current from batteries at the ends than from the middle. The best solution was to connect the load diagonally across the middle of the string.

8batteries-s.cir, load at one end (nodes 11-21)
BatteryCurrent
112.61
212.44
312.29
412.17
512.07
612.00
711.95
811.93

8batteriesz-s.cir, load across diagonal (nodes 18-21)
BatteryCurrent
112.27
212.19
312.15
412.12
512.12
612.15
712.19
812.27

8batteriesz2-s.cir load across half diagonal (nodes 13-26)
BatteryCurrent
112.15
212.18
312.22
412.20
512.20
612.22
712.18
812.15