Overview
Calculates voltage drop for three-phase cable runs per AS/NZS 3008.1.1:2017. Handles both direct current loads and motor loads (AC3 duty). Supports parallel cable circuits.
The cable's a.c. resistance Rc and reactance Xc are read from the licensed AS/NZS 3008.1.1:2017 tables for exactly the cable selected — construction, formation, arrangement, insulation and conductor temperature. A combination the standard does not tabulate (for example aluminium below 16 mm² in a multicore cable, or 630 mm² multicore) is reported as an error naming the input to change; no substitute value is used.
Input Parameters
Cable Parameters
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
metal |
Enum: Cu / Al | Cu | — | Conductor material |
conductor |
Enum | 50 mm² | 1 – 630 mm² | Conductor cross-sectional area (the sizes tabulated depend on the cable selected) |
cable_type |
Enum: Fixed / Flexible / MIMS | Fixed | — | Cable construction type |
cable_formation |
Enum: Singlecore / Multicore | Multicore | — | Cable formation |
cable_insulation |
Enum: XLPE / PVC / Elastomer | XLPE | — | Insulation type |
multicore_arrangement |
Enum: Circular / Shaped | Circular | — | Multicore arrangement (hidden if Singlecore) |
singlecore_arrangement |
Enum: Trefoil / Flat | Trefoil | — | Singlecore arrangement (hidden if Multicore) |
cu_temp |
Enum: 45 / 60 / 75 / 80 / 90 / 110 °C | 90 | — | Copper conductor temperature for Rc (hidden if Al). Use the insulation's rated temperature (PVC 75, XLPE 90, elastomer 110 °C) for a fully loaded cable; 80 °C is tabulated for single-core cables only |
al_temp |
Enum: 45 / 60 / 75 / 80 / 90 °C | 90 | — | Aluminium conductor temperature for Rc (hidden if Cu) |
mims_temp |
Enum: 45 / 60 / 75 / 90 / 100 / 105 °C | 75 | — | MIMS conductor temperature (Table 38; MIMS only) |
mims_voltage |
Enum: 0.6kV / 1kV | 0.6kV | — | MIMS voltage grade for Xc (Table 32; MIMS only) |
standard_edition |
Text | 2017 | 2017 only | AS/NZS 3008.1.1 edition; any other value is rejected |
Circuit Parameters
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
length |
Number | 100 | min 0.1 | Cable run length |
lengthunit |
Enum: Meter / Kilometer / Feet / Mile / Yard | Meter | — | Length unit |
voltage |
Number | 415 V | 100 – 1000 V | Phase-to-phase supply voltage |
parallel_circuits |
Integer | 1 | 1 – 10 | Number of parallel cable circuits |
Load Parameters
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
loadtype |
Enum: Load / Motor | Load | — | Type of load |
current |
Number | 17.694 A | min 0.1 | Load current (hidden if Motor) |
power |
Number | 10 | min 0.01 | Motor power (hidden if Load) |
powertype |
Enum: kW / watt / HP | kW | — | Power unit (hidden if Load) |
powerfactor |
Number | 0.85 | 0.01 – 1.0 | Motor power factor (hidden if Load) |
efficiency |
Number | 92.5% | 1 – 100% | Motor efficiency (hidden if Load) |
Calculation Settings
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
voltagedropmax |
Number | 5% | 0.1 – 20% | Maximum allowable voltage drop percentage |
Output Results
| Output | Unit | Description |
|---|---|---|
rc |
Ω/km | Cable resistance per km (from lookup) |
xc |
Ω/km | Cable reactance per km (from lookup) |
rc_table |
text | Source table reference (e.g., "Table 35") |
xc_table |
text | Source table reference (e.g., "Table 30") |
rc_column / xc_column |
text | Source table columns (e.g., "Column 5") |
conductor_temperature |
°C | Conductor temperature of the Rc column used |
impedance |
Ω/km | Cable impedance \(Z_c = \sqrt{R_c^2 + X_c^2}\) |
current |
A | Total load current |
current_per_cable |
A | Current per parallel cable \((I_{total} / N)\) |
voltagedrop |
V | Voltage drop in volts |
voltagedroppercent |
% | Voltage drop as percentage of supply |
is_compliant |
Boolean | Whether \(V_{d\%} \leq V_{d,max\%}\) |
status |
text | "PASS" or "FAIL" |
length_meters |
m | Cable length converted to meters |
Formulas
Cable Impedance
Where \(R_c\) and \(X_c\) are looked up from the AS/NZS 3008.1.1:2017 tables based on conductor material, size, construction, formation, arrangement, insulation and temperature.
Voltage Drop
Where \(I\) is current per cable (A), \(L\) is length in meters, and \(Z_c\) is in Ω/km. Division by 1000 converts the length–impedance product from m·Ω/km to Ω.
\(|Z_c|\) is used without the load power factor, which is conservative compared with \(R_c\cos\phi + X_c\sin\phi\) (AS/NZS 3008.1.1 Clause 4.4 allows either).
Voltage Drop Percentage
Motor Current (when loadtype = Motor)
Where \(P\) is motor power in kW, \(\eta\) is efficiency (decimal), \(V\) is supply voltage, and \(\cos\phi\) is power factor.
Parallel Circuits
Length Conversion Factors
| From | To Meters |
|---|---|
| 1 Kilometer | 1000 m |
| 1 Foot | 0.3048 m |
| 1 Mile | 1609.34 m |
| 1 Yard | 0.9144 m |
Compliance Check
Lookup Tables
The values come from the licensed AS/NZS 3008.1.1:2017 data installed on the server; they are not reproduced here. The table used for each selection:
| Cable | Rc (by conductor temperature) | Xc |
|---|---|---|
| Fixed single-core (trefoil / flat) | Table 34 | Table 30 (by arrangement and insulation) |
| Fixed multicore, circular conductors | Table 35 | Table 30 |
| Fixed multicore, shaped conductors | Table 36 | Table 30 |
| Flexible cables | Table 37 | Table 31 |
| MIMS | Table 38 (by mims_temp) | Table 32 (by mims_voltage) |
The calculation report names the table and column used. For example, a 50 mm² Cu multicore circular conductor is 0.471 Ω/km at 75 °C but 0.494 Ω/km at 90 °C (Table 35), so the temperature selection matters by about 5 %.
Worked Examples
The 8 examples below are the validation cases for this calculation. Each one was produced by the calculation engine from the inputs shown, every figure was checked against the independent reference quoted at the end of the example, and the same cases are run against every engine build (see validation scorecard, tool fe_calc_voltage_drop; worked examples for every calculation).
| # | Case | Cable | I per cable | Zc (Ω/km) | Vd | Total vs limit | Lmax | Result |
|---|---|---|---|---|---|---|---|---|
| 1 | 50 mm² Cu XLPE, 17.7 A over 100 m | 50 mm² Cu XLPE, 100 m | 17.69 A | 0.4997 | 1.531 V (0.369 %) | 0.369 / 5 % | 1,355 m | PASS |
| 2 | 50 mm² Cu XLPE, 80 A over 100 m | 50 mm² Cu XLPE, 100 m | 80.00 A | 0.4997 | 6.924 V (1.668 %) | 1.668 / 5 % | 299 m | PASS |
| 3 | 95 mm² Al XLPE, 120 A over 150 m | 95 mm² Al XLPE, 150 m | 120.00 A | 0.4173 | 13.012 V (3.135 %) | 3.135 / 5 % | 239 m | PASS |
| 4 | 16 mm² Cu PVC at 75 °C, 50 A, 400 V | 16 mm² Cu PVC, 60 m | 50.00 A | 1.4026 | 7.288 V (1.822 %) | 1.822 / 5 % | 164 m | PASS |
| 5 | 4 mm² Cu PVC sub-circuit against a 3 % limit | 4 mm² Cu PVC, 45 m | 20.00 A | 5.6109 | 8.747 V (2.187 %) | 2.187 / 3 % | 61 m | PASS |
| 6 | 90 kW motor on 2 × 25 mm² with 1.5 % upstream | 25 mm² Cu XLPE ×2, 200 m | 78.78 A | 0.9305 | 25.393 V (6.348 %) | 7.848 / 5 % | 110 m | FAIL |
| 7 | 600 A on 3 × 120 mm² at 60 °C, 2 % upstream | 120 mm² Cu XLPE ×3, 250 m | 200.00 A | 0.1927 | 16.686 V (4.021 %) | 6.021 / 5 % | 186 m | FAIL |
| 8 | 250 kW motor on 2 × 240 mm² Al | 240 mm² Al XLPE ×2, 180 m | 206.93 A | 0.1768 | 11.408 V (2.749 %) | 2.749 / 5 % | 327 m | PASS |
Example 1 — 50 mm² Cu XLPE, 17.7 A over 100 m
A lightly loaded copper feeder at the default 90 °C conductor temperature: the drop and the route length that would use the whole 5 % allowance.
Given: 50 mm² Cu XLPE multicore circular cable, route 100 m, 415 V three-phase, load current 17.694 A; conductor at the XLPE rated 90 °C (default); voltage-drop limit 5 % from the point of supply (tool default).
| Load current | I = 17.694 A (given) |
|---|---|
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 5 (Cu multicore circular, 90 °C): Rc = 0.494 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0751 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.494² + 0.0751²) = 0.49968 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 17.694 × 0.1000 km × 0.49968 = 1.5314 V; Vd% = 1.5314 / 415 × 100 = 0.369 % |
| Voltage drop check | 0.369 % ≤ 5 %? → 0.369 vs limit 5.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 5.00/100 × 415 / (√3 × 17.694 × 0.0004997 Ω/m) → 1,355 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 0.369 %; governing: voltage drop |
| Reference | Hand calculation with AS/NZS 3008.1.1:2017 Table 35 (Cu multicore circular, 90 °C) Rc = 0.494 Ω/km and Table 30 column 10 (XLPE) Xc = 0.0751 Ω/km: Zc = √(0.494² + 0.0751²) = 0.49968 Ω/km; Vd = √3 × 17.694 × 0.100 × 0.49968 = 1.5314 V = 0.369 % of 415 V; L(5 %) = 0.05 × 415 × 1000 ÷ (√3 × 17.694 × 0.49968) = 1355.0 m (validation case c0005-50mm2-cu-100m-17a7) |
Example 2 — 50 mm² Cu XLPE, 80 A over 100 m
The help page's standard cable run: a moderately loaded 50 mm² circuit well inside the 5 % limit.
Given: 50 mm² Cu XLPE multicore circular cable, route 100 m, 415 V three-phase, load current 80 A; conductor at the XLPE rated 90 °C (default); voltage-drop limit 5 % from the point of supply (tool default).
| Load current | I = 80 A (given) |
|---|---|
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 5 (Cu multicore circular, 90 °C): Rc = 0.494 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0751 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.494² + 0.0751²) = 0.49968 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 80.000 × 0.1000 km × 0.49968 = 6.9237 V; Vd% = 6.9237 / 415 × 100 = 1.668 % |
| Voltage drop check | 1.668 % ≤ 5 %? → 1.668 vs limit 5.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 5.00/100 × 415 / (√3 × 80.000 × 0.0004997 Ω/m) → 299 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 1.668 %; governing: voltage drop |
| Reference | Hand calculation, AS/NZS 3008.1.1:2017 Table 35 Rc(90 °C) = 0.494, Table 30 Xc = 0.0751 Ω/km: Zc = 0.49968 Ω/km; Vd = √3 × 80 × 0.100 × 0.49968 = 6.9237 V = 1.668 %; L(5 %) = 20 750 ÷ (√3 × 80 × 0.49968) = 299.7 m (validation case c0005-50mm2-cu-80a-100m) |
Example 3 — 95 mm² Al XLPE, 120 A over 150 m
An aluminium feeder: Rc from the aluminium column of Table 35 at 90 °C.
Given: 95 mm² Al XLPE multicore circular cable, route 150 m, 415 V three-phase, load current 120 A; conductor at the XLPE rated 90 °C (default); voltage-drop limit 5 % from the point of supply (tool default).
| Load current | I = 120 A (given) |
|---|---|
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 10 (Al multicore circular, 90 °C): Rc = 0.411 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0725 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.411² + 0.0725²) = 0.41735 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 120.000 × 0.1500 km × 0.41735 = 13.0115 V; Vd% = 13.0115 / 415 × 100 = 3.135 % |
| Voltage drop check | 3.135 % ≤ 5 %? → 3.135 vs limit 5.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 5.00/100 × 415 / (√3 × 120.000 × 0.0004173 Ω/m) → 239 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 3.135 %; governing: voltage drop |
| Reference | Hand calculation, AS/NZS 3008.1.1:2017 Table 35 Al multicore circular 90 °C Rc = 0.411, Table 30 column 10 Xc = 0.0725 Ω/km: Zc = √(0.411² + 0.0725²) = 0.41735 Ω/km; Vd = √3 × 120 × 0.150 × 0.41735 = 13.0115 V = 3.135 %; L(5 %) = 20 750 ÷ (√3 × 120 × 0.41735) = 239.2 m (validation case c0005-95mm2-al-150m-120a) |
Example 4 — 16 mm² Cu PVC at 75 °C, 50 A, 400 V
PVC insulation: Xc from the PVC column of Table 30 and Rc at PVC's rated 75 °C by default.
Given: 16 mm² Cu PVC multicore circular cable, route 60 m, 400 V three-phase, load current 50 A; conductor at the PVC rated 75 °C (default); voltage-drop limit 5 % from the point of supply (tool default).
| Load current | I = 50 A (given) |
|---|---|
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 4 (Cu multicore circular, 75 °C): Rc = 1.4 Ω/km; Table 30 Column 9 (PVC multicore circular): Xc = 0.0861 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(1.4² + 0.0861²) = 1.40265 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 50.000 × 0.0600 km × 1.40265 = 7.2884 V; Vd% = 7.2884 / 400 × 100 = 1.822 % |
| Voltage drop check | 1.822 % ≤ 5 %? → 1.822 vs limit 5.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 5.00/100 × 400 / (√3 × 50.000 × 0.0014026 Ω/m) → 164 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 1.822 %; governing: voltage drop |
| Reference | Hand calculation, AS/NZS 3008.1.1:2017 Table 35 Cu 75 °C Rc = 1.40, Table 30 column 9 (PVC) Xc = 0.0861 Ω/km: Zc = √(1.40² + 0.0861²) = 1.40265 Ω/km; Vd = √3 × 50 × 0.060 × 1.40265 = 7.2884 V = 1.822 % of 400 V; L(5 %) = 0.05 × 400 × 1000 ÷ (√3 × 50 × 1.40265) = 164.7 m (validation case c0005-16mm2-pvc-75c-50a-60m) |
Example 5 — 4 mm² Cu PVC sub-circuit against a 3 % limit
A user-set 3 % allowance (a final sub-circuit budget) on a small PVC cable.
Given: 4 mm² Cu PVC multicore circular cable, route 45 m, 400 V three-phase, load current 20 A; conductor at the PVC rated 75 °C (default); voltage-drop limit 3 % from the point of supply.
| Load current | I = 20 A (given) |
|---|---|
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 4 (Cu multicore circular, 75 °C): Rc = 5.61 Ω/km; Table 30 Column 9 (PVC multicore circular): Xc = 0.102 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(5.61² + 0.102²) = 5.61093 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 20.000 × 0.0450 km × 5.61093 = 8.7466 V; Vd% = 8.7466 / 400 × 100 = 2.187 % |
| Voltage drop check | 2.187 % ≤ 3 %? → 2.187 vs limit 3.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 3.00/100 × 400 / (√3 × 20.000 × 0.0056109 Ω/m) → 61 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 2.187 %; governing: voltage drop |
| Reference | Hand calculation, AS/NZS 3008.1.1:2017 Table 35 Cu 75 °C Rc = 5.61, Table 30 column 9 Xc = 0.102 Ω/km: Zc = 5.61093 Ω/km; Vd = √3 × 20 × 0.045 × 5.61093 = 8.7466 V = 2.187 % ≤ 3 %; L(3 %) = 0.03 × 400 × 1000 ÷ (√3 × 20 × 5.61093) = 61.7 m (validation case c0005-4mm2-pvc-20a-45m-3pct-limit) |
Example 6 — 90 kW motor on 2 × 25 mm² with 1.5 % upstream
Motor current from kW, two cables in parallel and an upstream drop: the total exceeds 5 %.
Given: 25 mm² Cu XLPE multicore circular cable × 2 in parallel, route 200 m, 400 V three-phase, 90 kW motor, η = 0.97, cos φ = 0.85; conductor at the XLPE rated 90 °C (default); voltage-drop limit 5 % from the point of supply (tool default), 1.5 % already used upstream.
| Motor current | I = P × 1000 / (η × √3 × V × cos φ) = 90 × 1000 / (0.97 × √3 × 400 × 0.85) = 157.555 A |
|---|---|
| Current per cable | Icable = I / n = 157.555 / 2 = 78.777 A |
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 5 (Cu multicore circular, 90 °C): Rc = 0.927 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0808 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.927² + 0.0808²) = 0.93051 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 78.777 × 0.2000 km × 0.93051 = 25.3931 V; Vd% = 25.3931 / 400 × 100 = 6.348 % |
| Point of supply | Total = upstream + this circuit = 1.5 + 6.348 = 7.848 % |
| Voltage drop check | 7.848 % ≤ 5 %? → 7.848 vs limit 5.000 % FAIL |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 3.50/100 × 400 / (√3 × 78.777 × 0.0009305 Ω/m) → 110 m (rounded down) |
| Result | 0/1 checks pass → FAIL; Vd total 7.848 %; governing: voltage drop. This circuit uses 6.35% but only 3.5% is available (5% limit − 1.5% upstream). Shorten the route below 110 m, use a larger conductor or add a parallel cable. |
| Reference | Hand calculation: I = 90 000 ÷ 0.97 ÷ (√3 × 400 × 0.85) = 157.555 A, 78.777 A per cable; AS/NZS 3008.1.1:2017 Table 35 Cu 90 °C Rc = 0.927, Table 30 Xc = 0.0808 → Zc = 0.93051 Ω/km; Vd = √3 × 78.777 × 0.200 × 0.93051 = 25.393 V = 6.348 %; total 1.5 + 6.348 = 7.848 % > 5 %; L(3.5 %) = 0.035 × 400 000 ÷ (√3 × 78.777 × 0.93051) = 110.3 m (validation case c0005-25mm2-motor-90kw-2-parallel-upstream) |
Example 7 — 600 A on 3 × 120 mm² at 60 °C, 2 % upstream
A user-chosen 60 °C conductor temperature (lightly loaded cables) on a paralleled feeder that still fails once the upstream drop is counted.
Given: 120 mm² Cu XLPE multicore circular cable × 3 in parallel, route 250 m, 415 V three-phase, load current 600 A; 60 °C conductor temperature; voltage-drop limit 5 % from the point of supply (tool default), 2 % already used upstream.
| Load current | I = 600 A (given) |
|---|---|
| Current per cable | Icable = I / n = 600.000 / 3 = 200.000 A |
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 3 (Cu multicore circular, 60 °C): Rc = 0.179 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0713 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.179² + 0.0713²) = 0.19268 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 200.000 × 0.2500 km × 0.19268 = 16.6864 V; Vd% = 16.6864 / 415 × 100 = 4.021 % |
| Point of supply | Total = upstream + this circuit = 2 + 4.021 = 6.021 % |
| Voltage drop check | 6.021 % ≤ 5 %? → 6.021 vs limit 5.000 % FAIL |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 3.00/100 × 415 / (√3 × 200.000 × 0.0001927 Ω/m) → 186 m (rounded down) |
| Result | 0/1 checks pass → FAIL; Vd total 6.021 %; governing: voltage drop. This circuit uses 4.02% but only 3% is available (5% limit − 2% upstream). Shorten the route below 186 m, use a larger conductor or add a parallel cable. |
| Reference | Hand calculation, AS/NZS 3008.1.1:2017 Table 35 Cu 60 °C Rc = 0.179, Table 30 column 10 Xc = 0.0713 Ω/km: Zc = 0.19268 Ω/km; 600 ÷ 3 = 200 A per cable; Vd = √3 × 200 × 0.250 × 0.19268 = 16.686 V = 4.021 %; total 6.021 % > 5 %; L(3 %) = 0.03 × 415 000 ÷ (√3 × 200 × 0.19268) = 186.6 m (validation case c0005-120mm2-60c-3-parallel-600a-upstream) |
Example 8 — 250 kW motor on 2 × 240 mm² Al
A large motor on paralleled aluminium cables with the motor's own power factor and efficiency.
Given: 240 mm² Al XLPE multicore circular cable × 2 in parallel, route 180 m, 415 V three-phase, 250 kW motor, η = 0.955, cos φ = 0.88; conductor at the XLPE rated 90 °C (default); voltage-drop limit 5 % from the point of supply (tool default).
| Motor current | I = P × 1000 / (η × √3 × V × cos φ) = 250 × 1000 / (0.955 × √3 × 415 × 0.88) = 413.852 A |
|---|---|
| Current per cable | Icable = I / n = 413.852 / 2 = 206.926 A |
| Cable data | AS/NZS 3008.1.1:2017 Table 35 Column 10 (Al multicore circular, 90 °C): Rc = 0.162 Ω/km; Table 30 Column 10 (XLPE multicore circular): Xc = 0.0709 Ω/km |
| Impedance | Zc = √(Rc² + Xc²) = √(0.162² + 0.0709²) = 0.17684 Ω/km |
| Voltage drop | Vd = √3 × Icable × L × Zc = √3 × 206.926 × 0.1800 km × 0.17684 = 11.4082 V; Vd% = 11.4082 / 415 × 100 = 2.749 % |
| Voltage drop check | 2.749 % ≤ 5 %? → 2.749 vs limit 5.000 % PASS |
| Maximum route | Lmax = (limit − upstream)/100 × V / (√3 × Icable × Zc) = 5.00/100 × 415 / (√3 × 206.926 × 0.0001768 Ω/m) → 327 m (rounded down) |
| Result | 1/1 checks pass → PASS; Vd total 2.749 %; governing: voltage drop |
| Reference | Hand calculation: I = 250 000 ÷ 0.955 ÷ (√3 × 415 × 0.88) = 413.852 A, 206.926 A per cable; AS/NZS 3008.1.1:2017 Table 35 Al 90 °C Rc = 0.162, Table 30 Xc = 0.0709 → Zc = 0.17684 Ω/km; Vd = √3 × 206.926 × 0.180 × 0.17684 = 11.408 V = 2.749 %; L(5 %) = 20 750 ÷ (√3 × 206.926 × 0.17684) = 327.4 m (validation case c0005-240mm2-al-motor-250kw-2-parallel) |
Standards & References
- AS/NZS 3008.1.1:2017 — Electrical installations — Selection of cables — Cables for alternating voltages up to and including 0.6/1 kV
- Tables 30–32 — Reactance at 50 Hz
- Tables 34–38 — a.c. resistance at 50 Hz by conductor temperature
- Standard voltage drop limit: typically 5% (configurable per local regulations)
Tips & Limitations
Tips
- The 5% default limit is common but check local regulations — some authorities allow up to 7% for motor circuits.
- Parallel circuits halve the current per cable, significantly reducing voltage drop.
- Aluminium has approximately 1.6× the resistance of copper at the same cross-sectional area.
- For very long runs, consider increasing cable size rather than adding parallel circuits.
- Temperature affects resistance: higher temperature = higher resistance = higher voltage drop.
Limitations
- Steady-state only — motor starting current (5–8× FLC) is NOT considered. This calculator is for running-load voltage drop.
- Combinations the standard does not tabulate are rejected with a message naming the input to change (conductor size, temperature or formation).
- Balanced three-phase system assumed — unequal phase loading is not modelled.
- Cable resistance values are for specific temperatures only. For intermediate temperatures, linear interpolation is not performed — select the nearest standard temperature.
Developer Guide
Architecture
File layout:
components/c0005_cable_voltage_drop/component.py— Component registration, parameter schemacomponents/c0005_cable_voltage_drop/calculations.py— Calculation functions; Rc/Xc via the shared strict gatewaycalcs.core.as3008.AS3008Gateway(licensed table data in the database)components/c0005_cable_voltage_drop/equations.py— MathJax equation rendering for calculation reportcomponents/c0005_cable_voltage_drop/excel_generator.py— Excel export generation
The calculator class is CableVoltageDropCalculator.
Motor current logic is shared with c0004
(power_motor).
Lookups reuse the selector builders of calcs.core.as3008
(_rc_selector, _xc_selector) so c0005 picks the same table columns as the
cable-sizing calculators (c0006, c0030, c0031, c0032). Results are stored unrounded; the report and
Excel export format them.
Code Paths
Key functions in calculations.py:
| Function | Purpose |
|---|---|
lookup_rc_xc(data, gateway=None) |
Rc/Xc from AS/NZS 3008.1.1:2017; returns rc, xc, table/column names, conductor temperature
and lookup references; raises AS3008CombinationUnavailable for a table gap |
calculate_impedance(rc, xc) |
Cable impedance from resistance and reactance |
calculate_motor_current(power, voltage, power_factor, efficiency, power_type) |
Motor current calculation (shared with c0004) |
calculate_voltage_drop(current, length_meters, impedance_per_km) |
Main voltage drop calculation (3-phase) |
calculate_voltage_drop_percent(voltage_drop, voltage) |
Voltage drop as percentage of supply |
convert_length_to_meters(length, length_unit) |
Length unit conversion |
calculate_cable_voltage_drop(data, gateway=None) |
Main entry point; orchestrates full calculation from input dict |
Testing
Running tests:
pytest calcs/components/c0005_cable_voltage_drop/ -v
pytest calcs/test_c0005* -v
How to extend:
- New cable constructions come from the AS/NZS 3008 data sheets; extend the schema enums in
component.pyand the selectors incalcs/core/as3008.py. - Unit tests inject a gateway (
calculate_cable_voltage_drop(data, gateway)); live-table checks skip where the licensed data is not installed. - The worked examples above are the
fe_calc_voltage_dropvalidation cases (mcp_public/validation/cases/fe_calc_voltage_drop/c0005-*.json); regenerate withpython manage.py generate_help_examples --tool fe_calc_voltage_drop.