DC

BESS 20-ft Container — DC Cable Current Distribution & Voltage Drop Analysis

Parametric model of the parallel DC feeder network. Current distribution is solved from branch resistance (conductance current-divider), not assumed equal. Edit any cable length or parameter and every result updates live.

Series / parallel arrangement

Switch design here, or fine-tune racks / strings-per-rack / packs on the Input tab. The whole network re-solves instantly.

Engineering dashboard

calculated user input datasheet assumption limit

Engineering checks

Automatic warnings compare calculated results against the engineering limits you set on the Input tab.

Current distribution by HV Box

Current imbalance

Cable route & current loading

Branch line weight and colour scale with branch current. Hover a branch for full detail.

Input data

Everything below is editable. Fields marked assumption or carrying a required-input note must be confirmed against the UL3932 2/0 AWG datasheet and the installation conditions before the results are used for design.

Data source: built-in defaults. Put an inputs.xlsx next to this page (or Import one) to drive it from Excel.
Series / parallel arrangement ›
D1 = 12 racks × 1 string × 8 packs. D2 = 6 racks × 2 strings × 4 packs (dual-string HV box). A preset sets the rack count, strings/rack, packs/string, string cabling and feeder schedule — then edit any field below.
= number of feeders; one feeder per HV box
1 = single-string HV box, 2 = dual-string
sets string voltage & cabling hops
104 for a 104S1P pack
V/cell — ~3.2 for LFP (informational)
racks × strings/rack, all in parallel
The feeder from the combine cabinet runs to each rack's HV box and is shared by every string in that rack, so it carries their combined current. The strings inside a rack are in parallel; the racks are in parallel at the DC bus. Changing k here re-solves the whole two-level network.
Operating point ›
V — nominal pack-string / bus voltage
kW — total DC power drawn through the combine cabinet. Itotal = P / Vbus
Conductor resistance model ›
UL3932 · 2/0 AWG · DC1500V · cable duct
Ω/km — REQUIRED. Enter the UL3932 2/0 AWG value from the cable datasheet. Placeholder shown is an assumption only.
°C — temperature at which the Ω/km value is quoted (commonly 20 °C)
°C — resistance is corrected to this temperature. R(T)=Rref·[1+α(T−Tref)]
1/°C — copper ≈ 0.00393
divides conductor resistance (1 = single cable per pole)
×2 counts positive + negative feeder of equal length as the current loop. Set 1 if the schedule length already is the loop.
Connector & string internals (per string) ›
All values below are for one string (one series stack of packs). The tool applies them to every string and parallels the strings inside each rack.
Ω per connector — enter the measured/datasheet value (0 = ignore)
Ω — DC resistance of one series pack-string. In reality this dominates and equalises current sharing. 0 isolates the cable-only effect (worst case for imbalance). For k strings in a rack the parallel value is this ÷ k.
mm, comma-separated — one string's series loop HV Box→P1→…→Pn→HV Box. For 4 packs: 5 values (e.g. 1600,500,500,500,800); for 8 packs: 9 values. Replace pack-to-pack values with your real schedule — defaults use 500 mm spacing.
Engineering limits ›
A — required. Rated current for UL3932 2/0 AWG at the installed method & ambient, after derating. Verify on datasheet.
% of DC bus voltage
% (Max−Min)/Average
mm — flags any feeder longer than the routing allows

Combine Cabinet → HV Box feeder lengths

One feeder per rack. Set the rack count under Series / parallel arrangement above; edit each feeder length here.

HV BoxFeeder length (mm)R feeder (mΩ)R rack (mΩ)ShareFeeder I (A)

Cable calculation — complete DC network solution

Each branch is a series resistance from the common DC bus node to the common return. Current divides by conductance: Ii = Itotal · Gi / ΣG, with Gi = 1/Rbranch,i. This is the exact network result for equal-EMF parallel sources — never a proportional-to-length approximation.

R / metre (per pole, @T)
Feeder loop R / metre
String cabling R (per string)
Connector R / string
Parallel-network R
Total DC current
R(section)
ρ·L / A
Rack R
Rfeeder + Rstring/k
Rack I
Itot·Gi/ΣG
String I
Irack / k
Feeder V-drop
Irack·Rfeeder
Cable loss
Irack²Rf + k·Istr²Rstr
Average current
Max current
Min current
Imbalance
Total cable loss
Max feeder V-drop
HV BoxLength
(mm)
R feeder
(mΩ)
R branch
(mΩ)
Feeder I
(A)
Share
(%)
Feeder V-drop
(V / %)
Cable loss
(W)
Deviation
(%)
The feeder carries the combined current of every string in its rack (×k), so with a dual-string HV box it sees roughly twice a single string — this is the binding figure for feeder ampacity and voltage drop. The per-string current (shown in parentheses when k>1) is what flows in the string cable and the pack. Node-to-node voltage drop (bus → string) is equal for every string by construction; the feeder-cable portion shown here varies with routing.

Cable length vs branch current

Shorter feeder → lower resistance → higher current share. The relationship is inverse-resistance, not linear.

Cable resistance vs length

Branch resistance rises linearly with feeder length (plus the fixed rack / connector / pack terms).

Feeder voltage drop by branch

Cable power loss by branch

Current balancing analysis

HV BoxLength (mm)Resistance (mΩ)Current (A)Share (%) V-drop (V)Loss (W)Deviation (%)

Scenario comparison

Scenario A is the current design (locked to your input lengths). Edit B and C to test alternative routing. All other parameters are shared from the Input tab.

HV BoxA · Existing (mm)B · Optimised (mm)C · User-defined (mm)

Results & difference from baseline (A)

Current distribution — all scenarios

Imbalance-reduction study

Imbalance is driven by the spread in branch resistance. Mathematically it is minimised by bringing every branch resistance toward the highest branch — achieved by padding shorter feeders. This is an analysis scenario only; it does not alter the engineering design, and physical routing/EMI/length limits always govern.

mm
mm — padding is capped here
% — padding stops once reached
Method: raise each branch R toward Rmax by adding feeder length, within [min,max].

20-ft container — isometric layout

Combine cabinet plus each rack's HV box (holding its strings in parallel), cable duct and pos/neg feeders. Rack height/colour shows feeder-current loading. Reflects the arrangement set on the dashboard.

Cable route diagram

Combine Cabinet branching to every HV Box, with actual feeder length and a current arrow per branch — arrow weight and colour scale with branch current. Hover for cable length, resistance, current, voltage drop and loss.

Sensitivity analysis

Sweep one parameter and watch the key metrics move. Uniformly scaling every length (or changing cable size) preserves the resistance ratios, so imbalance holds while loss and voltage drop scale — scaling an individual length is what changes the distribution.

comma-separated multipliers of the current value
FactorVaried valueI total (A)Max I (A)Min I (A) Imbalance (%)Total loss (W)Max V-drop (V)

Model & assumptions

  • Topology (configurable). Two-level parallel network: N rack feeders in parallel at the combine-cabinet DC± nodes, and within each rack k strings in parallel sharing that rack's feeder. Each string is a series stack of packs (e.g. 104S1P packs, 4 or 8 in series). Switch between the two designs on the dashboard — Design 1 (12 racks × 1 string, single-string HV box) and Design 2 (6 racks × 2 strings, dual-string HV box) — or set racks, strings/rack and packs/string directly on the Input tab. With k = 1 this reduces exactly to the flat 12-branch current-divider.
  • Feeder carries combined string current. Because both strings in a dual-string rack share one feeder, that feeder carries k× a single string's current. Feeder ampacity and voltage drop are checked against the combined (feeder) current; the string cable and pack see the per-string current. The string-to-string current imbalance is driven by the feeder-length spread across racks; strings within a rack split evenly when identical.
  • Equal-EMF assumption. All strings are taken at the same open-circuit voltage (balanced SOC). Under this assumption the exact network solution is the conductance current-divider Ii=Itot·Gi/ΣG. Unequal SOC would add circulating currents not modelled here.
  • Steady-state, resistive. DC only; inductance, skin/proximity effect and transient sharing are not modelled.
  • Feeder loop. Positive and negative feeders of equal length ⇒ loop resistance = factor × ρL/A (default factor 2).
  • Equal branch V-drop. Node-to-node drop is identical across branches by construction; the reported per-branch drop is the feeder-cable portion, which varies.
  • Pack internal resistance dominates reality. With a realistic string resistance the cable-driven imbalance shrinks markedly. Default 0 shows the cable-only worst case the brief asks to expose.

Value-type legend

calculatedDerived by the model from your inputs.
user inputEntered directly by you.
datasheetTo be taken from the UL3932 2/0 AWG cable datasheet.
assumptionPlaceholder / generic value — confirm before design use.
limitEngineering acceptance limit you define.
Required inputs not to be invented: DC resistance of UL3932 2/0 AWG (Ω/km), conductor temperature, connector resistance, pack resistance, ampacity, allowable voltage drop, allowable current imbalance. Each has an editable field above and is flagged accordingly.

Disclaimer

Results are engineering calculations based on user-entered electrical parameters and cable resistance. Final design shall be verified against the applicable cable datasheet, installation method, temperature derating, protection settings and applicable standards.