Use the link on the left to access our cable sizing application. Manage and size all your cables, from low voltage to 33 kV.
This calculation provides a simple look at how to calculate various cable parameters. The inputs are assumed to be the cable sustained current capacity (at maximum operating temperature), the maximum operating temperature, ambient temperature, system voltage, cable current, length, cable resistance and reactance.
The calculations are based on a directly buried 70 mm2, Leoni SOLARpower Alu-ATA cable, and using data from the manufacturer's catalogue.
Uo = 400; % V. System voltage 400 (3-phase, line to line).
Iz = 222; % A. Sustained current capacity.
Tc = 90; % °C. Maximum operating temperature of the cable.
R20 = 0.443e-3; % ohm/m. Resistance of the cable at 20 °C.
X = 0.099e-3; % ohm/m. Reactance of the cable (trefoil formation).
Ib = 180; % A. Cable design current.
L = 56; % m. Cable length.
Ta = 20; % °C. Ambient temperature where the cable is installed.
In this instance we read the current capacity from the manufacturer's tables. This may also be calculated using standards, or thermal methods, which are beyond the scope of this example.
The resistance of the cable depends on the operating temperature. And, the operating temperature of the cable changes depending on the magnitude of current flowing within the cable. The temperature adjusted value of resistance is used in all calculations. To calculate the conductor operating temperature we use:
t = (Ib/Iz)^2 * (Tc - Ta) + Ta
The cable resistance at 20 °C is adjusted for operating temperature. The amount of adjustment is dependent on the temperature coefficient of resistance (a20), with typical values being 3.93e-3 for copper conductors and 4.03e-3 for aluminium conductors. The adjusted resistance is given by:
R = R20 * [1+a20*(t-20)]
a20 = 4.03e-3; % Temperature coefficent aluminium cable.
t = ((Ib/Iz)^2)*(Tc - Ta)+Ta;
R = R20*[1+a20*(t-20)];
disp(['Conductor operating temperature = ', num2str(t, '%0.1f' ), ' °C']);
disp(['Temperature adjusted resistance = ', num2str(R, '%0.3e' ), ' ohm/m']);
Conductor operating temperature = 66.0 °C
Temperature adjusted resistance = 5.252e-04 ohm/m
For voltage drop we use the formulae give in CENELEC technical report CLC/TR 50480. This give the voltage drop, in percent as:
dU = 100* b * (R*cos(phi) + X*sin(phi)) * Ib / Uo
The factor 'b' is taken as 2 for d.c. systems and 1 for three phase systems. For our example, we will also assume a power factor (pf) of 0.8, giving cos(phi)=0.8 and sin(phi)=0.6. Also, our resistance and reactance is per unit length. Therefore we need to multiple by the length of the cable.
b = 1; % Three phase system.
dU = 100*b*(R*0.8+X*0.6)*Ib*L/Uo;
disp(['Voltage drop = ', num2str(dU,'%0.2f'), ' %']);
Voltage drop = 1.21 %
Calculation of the power loss within the cable is given by:
P = Ib^2 * R * n (i.e. the current squared, times the resistance)
Again with our resistance and reactance being per unit length, we need to multiple by the cable length to get the final power loss. Factor 'n' relates to the type of circuit/number of conductors. For a three phase balanced circuit, we have three conductors ( n = 3)
n = 3;
P = Ib^2*R*n*L;
disp(['Power loss = ', num2str(P,'%0.0f'), ' W']);
Power loss = 2859 W
Cable life expectancy can be estimated using the Arrhenius Equation. This is statistical estimation and care needs to be taken in interpreting the results. The estimated life, k in hours is given by:
k = Ae^(E/Rt)
In this equation, A is a factors, E the activation energy, and R the Boltzmann constant. For more details see on this equations, see Estimating Cable Life. Alternatively the Arrhenius Equation can be presented more practically as a logarithmic straight line (with slope and intercept coefficients of m and b):
ln(k) = m*t + b
For our cable, with XLPE insulation m and b are found to be -0.0693 and 18.5678 respectively. Taking the inverse ln of k, yields the life in hours.
m = -0.0693; % Arrhenius slope factor (XLPE)
b = 18.5678; % Arrhenius intercept factor (XLPE)
k = exp(1)^(m*t+b); ky = k/(24*365);
disp(['Expeted Life = ', num2str(k,'%0.0f'), ' hours (', num2str(ky,'%0.0f'), ' years)']);
Expeted Life = 1193838 hours (136 years)
Published with MATLAB® R2018b