Determine the appropriate cable size (cross-sectional area) based on current carrying capacity requirements and voltage drop considerations.
A1 – In conduit in wall or ceiling
A2 – In conduit on surface of wall or ceiling
A3 – In conduit clipped direct to surface
A4 – In conduit buried in thermal insulation
B1 – Single core, in conduit, in wall or ceiling
B2 – Single core, in conduit, on surface
C – Twin core, in conduit, on surface
D1 – Single core, bunched, in conduit, in wall or ceiling
D2 – Single core, bunched, in conduit, on surface
E – Twin core, bunched, on surface
F1 – Single core, bunched, in conduit, buried in thermal insulation
F2 – Twin core, bunched, in conduit, buried in thermal insulation
G1 – Single core, free air, bunched
G2 – Twin core, free air, bunched
H1 – Single core, free air, single
H2 – Twin core, free air, single
J – In conduit, on surface, bunched
K – In conduit, buried in thermal insulation, bunched
L – In conduit, buried in thermal insulation, single
Minimum Cable Size Required: — mm²
Notes:
Actual cable size should be selected from standard available sizes (e.g., 1.5, 2.5, 4, 6, 10, 16, 25, 35, 50 mm²).
This calculator provides an estimate. Always consult local electrical codes, manufacturer data, and a qualified electrician for final decisions.
Voltage drop is a critical factor and may necessitate a larger cable size.
Conductor resistivity varies with temperature. The default is for copper at 20°C.
Understanding Cable Size Calculations
Selecting the correct cable size is crucial for electrical safety, system efficiency, and longevity. An undersized cable can overheat, leading to fire hazards and power loss, while an oversized cable is an unnecessary expense.
This calculator helps estimate the minimum required cable cross-sectional area in square millimeters (mm²) based on two primary factors:
Current Carrying Capacity (Amperage Rating): The cable must be able to safely carry the expected electrical current without exceeding its temperature limits.
Voltage Drop: Over long distances, the resistance of the cable causes a drop in voltage from the source to the load. Excessive voltage drop can impair the performance of electrical equipment.
Factors Influencing Cable Size:
Current Rating: The maximum continuous current the circuit will draw.
Installation Method: How the cable is installed significantly affects its ability to dissipate heat. Methods like being buried in insulation or enclosed in conduit reduce the effective current carrying capacity. The factors used in this calculator are based on common electrical installation codes (e.g., BS 7671 in the UK, or similar international standards).
Ambient Temperature: Higher ambient temperatures reduce a cable's ability to dissipate heat, thus lowering its safe current carrying capacity. A correction factor is applied.
Cable Length: Longer cables have higher resistance, contributing more to voltage drop.
System Voltage: Affects the voltage drop calculation (Voltage Drop = Current x Resistance).
Conductor Material and Resistivity: Copper and aluminum have different electrical resistivities. Resistivity also increases with temperature.
How the Calculator Works:
The calculation involves several steps:
Derating for Ambient Temperature: The cable's rated current capacity (from tables, not directly input here but implied by standard sizes) is adjusted based on the ambient temperature and the selected installation method. The calculator uses the provided current rating and a factor from the installation method. A temperature correction factor is applied:
Adjusted Current Rating = Base Current Rating * Installation Method Factor * Temperature Correction Factor
(Note: This calculator simplifies by directly using the provided current rating and then adjusting it. A more complex calculation would involve looking up a cable's base rating for a standard condition and then derating.)
Voltage Drop Calculation: The voltage drop (VD) is calculated using the formula:
VD = (2 * L * I * ρ) / A
Where:
L = Cable Length (meters)
I = Current (Amps)
ρ (rho) = Resistivity of conductor material (Ohm-mm²/m)
A = Conductor Cross-Sectional Area (mm²)
(Note: The factor '2' accounts for current flowing in both directions in a typical twin-core or ring-final circuit. For single-phase, it's 2*L, for three-phase it's sqrt(3)*L. This calculator assumes single-phase.)
Minimum Size Determination: The calculator first determines the minimum cross-sectional area (CSA) required to handle the current rating after applying derating factors. Then, it calculates the voltage drop for this minimum CSA. If the calculated voltage drop exceeds a typical acceptable threshold (often 3-5% for lighting and 5-8% for power circuits, depending on regulations), the CSA is increased iteratively until the voltage drop is acceptable. This calculator simplifies by first finding a CSA based on current, then checking voltage drop, and suggesting a size based on the higher requirement.
The final result suggests a minimum mm² size. It's important to select the next standard available size to ensure safety margins and compliance with regulations.
Disclaimer:
Electrical work can be dangerous. This calculator is a tool for estimation only. Always adhere to local electrical codes, standards (like IEC, NEC, BS 7671), and consult with a qualified electrician before undertaking any electrical installations or modifications.
function calculateCableSize() {
var currentRating = parseFloat(document.getElementById("currentRating").value);
var installationMethodFactor = parseFloat(document.getElementById("installationMethod").value);
var ambientTemperature = parseFloat(document.getElementById("ambientTemperature").value);
var correctionFactorTempInput = parseFloat(document.getElementById("correctionFactorTemp").value);
var length = parseFloat(document.getElementById("length").value);
var voltage = parseFloat(document.getElementById("voltage").value);
var resistivity = parseFloat(document.getElementById("resistivity").value);
var assumedConductorArea = parseFloat(document.getElementById("conductorArea").value);
var resultElement = document.getElementById("requiredSize");
var notesElement = document.getElementById("result"); // Targeting the whole result div for potential notes
// Clear previous results
resultElement.textContent = "–";
// — Input Validation —
if (isNaN(currentRating) || currentRating <= 0 ||
isNaN(installationMethodFactor) || installationMethodFactor <= 0 ||
isNaN(ambientTemperature) || ambientTemperature < -20 || // Reasonable lower bound
isNaN(length) || length < 0 ||
isNaN(voltage) || voltage <= 0 ||
isNaN(resistivity) || resistivity <= 0 ||
isNaN(assumedConductorArea) || assumedConductorArea 0) {
temperatureCorrectionFactor = correctionFactorTempInput;
} else {
// Simple approximation for common temps (e.g., 30C is often reference)
// This is a simplification. Real tables are needed for accuracy.
if (ambientTemperature <= 30) {
temperatureCorrectionFactor = 1.0;
} else {
// Very rough estimate: decrease capacity by ~1% for every 2 degrees above 30C
// This is NOT precise and should be replaced with actual table lookup
temperatureCorrectionFactor = 1.0 – ((ambientTemperature – 30) / 2) * 0.01;
if (temperatureCorrectionFactor < 0.1) temperatureCorrectionFactor = 0.1; // Cap at a minimum
}
console.log("Using estimated temp correction factor: " + temperatureCorrectionFactor);
}
// — Calculate Required Current Capacity —
// Adjusted current capacity the cable must handle
var requiredCapacity = currentRating / (installationMethodFactor * temperatureCorrectionFactor);
// — Standard Cable Sizes (mm²) —
var standardSizes = [1.0, 1.5, 2.5, 4.0, 6.0, 10.0, 16.0, 25.0, 35.0, 50.0, 70.0, 95.0, 120.0, 150.0, 185.0, 240.0, 300.0, 400.0];
var requiredSizeByCurrent = assumedConductorArea; // Start with assumed
// Find the smallest standard size that meets the required capacity
for (var i = 0; i < standardSizes.length; i++) {
// This is a placeholder for actual current carrying capacity tables (CCC).
// A real calculation would use CCC tables for each standard size under the given installation method and temperature.
// For this calculator, we'll assume that if the assumedConductorArea is large enough, it's a starting point.
// A better approach is to look up CCC for each standard size.
// For demonstration, we'll just proceed to voltage drop check.
// A simplified logic: If currentRating CCC(assumedConductorArea), we'd need a larger size.
// Here, we'll assume 'assumedConductorArea' is a *starting point* and ensure it's large enough for the requiredCapacity.
// A pragmatic approach without CCC tables:
// Assume that standard sizes correlate reasonably with current capacity.
// If the input 'assumedConductorArea' is too small for the 'currentRating', we need a larger size.
// Let's iterate through standard sizes and pick the first one whose *area* is >= 'assumedConductorArea'
// AND ensures the 'currentRating' is handled. A more robust way involves CCC tables.
// Simplified logic: find the smallest standard size >= assumedConductorArea
if (standardSizes[i] >= assumedConductorArea) {
requiredSizeByCurrent = standardSizes[i];
break; // Found a potential size based on initial assumption
}
if (i === standardSizes.length – 1) { // If loop finishes, use the largest size
requiredSizeByCurrent = standardSizes[i];
}
}
// — Voltage Drop Calculation —
// Calculate voltage drop for the determined size
var voltageDrop = (2 * length * currentRating * resistivity) / requiredSizeByCurrent; // VD = (2 * L * I * R) where R = rho * L / A – simplified rho * L / A is resistance per length
var permissibleVoltageDrop = voltage * 0.05; // Assuming 5% as a common threshold (can be adjusted)
var VD_percentage = (voltageDrop / voltage) * 100;
var finalRequiredSize = requiredSizeByCurrent;
// — Adjust size if Voltage Drop is too high —
if (voltageDrop > permissibleVoltageDrop) {
console.log("Initial size " + requiredSizeByCurrent + "mm² results in voltage drop " + VD_percentage.toFixed(2) + "%, which exceeds the 5% limit. Increasing size.");
for (var i = 0; i finalRequiredSize) { // Check next larger size
voltageDrop = (2 * length * currentRating * resistivity) / standardSizes[i];
VD_percentage = (voltageDrop / voltage) * 100;
if (voltageDrop permissibleVoltageDrop) {
// If even the largest size doesn't meet VD criteria
finalRequiredSize = standardSizes[i]; // Use the largest standard size
console.log("Warning: Even the largest standard size may not meet voltage drop criteria.");
break;
}
}
}
// Ensure the final size is at least sufficient for the raw current rating, considering derating.
// This check ensures the 'requiredCapacity' derived from currentRating, installation method, and temp is met.
// Since we don't have direct CCC tables, we infer. A common rule of thumb is that larger area = more current capacity.
// We need to ensure the 'finalRequiredSize' is sufficient for 'requiredCapacity'.
// Without CCC tables, this part is an approximation. We'll use the 'assumedConductorArea' as a minimum baseline *if* it was derived correctly.
// A proper approach requires CCC tables lookup.
// For simplicity, let's ensure the final size is at least the 'requiredSizeByCurrent' determined earlier.
if (finalRequiredSize < requiredSizeByCurrent) {
finalRequiredSize = requiredSizeByCurrent;
console.log("Adjusted final size to meet current capacity requirement: " + finalRequiredSize + "mm²");
}
resultElement.textContent = finalRequiredSize.toFixed(2); // Display with 2 decimal places for clarity
}