Overview
The Protection Coordination TCC calculator generates Time-Current Characteristic curves for up to 8 protection devices on a single log-log chart. It verifies that adjacent protective devices are properly coordinated — i.e. the downstream device operates faster than the upstream device by a specified time margin.
The calculator provides:
- TCC curve generation — log-log SVG chart with all device curves
- Tolerance bands — ±15% for circuit breakers, ±10% for relays
- Coordination check — automatic verification of time grading between adjacent pairs
- Multiple device types — circuit breakers (IEC/ANSI/IEEE/LSI), fuses, cables, transformers, motors, relays
- Multiple standards — IEC 60255, ANSI, IEEE C37.112 curve families
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| System Voltage | Select | 415 V | Nominal system voltage |
| I Min / I Max | Number | 10 / 100,000 A | Current axis range; I Max is also the maximum fault current up to which coordination is checked |
| t Min / t Max | Number | 0.01 / 1,000 s | Time axis range |
| Coordination Margin | Number | 0.3 s | Required time gap between adjacent devices |
| Devices | JSON | [] | Array of up to 8 protection devices |
Device Types
Circuit Breaker
Supports IEC 60255 (SI, VI, EI, LTI, DT), ANSI (MI, VI, EI, STI, LTI, DT), IEEE C37.112 (U1–U5, DT), and LSI (Long-time/Short-time/Instantaneous) trip units. Tolerance bands at ±15%.
Fuse
Supports gG, gM, aM, and aR fuse types with pre-arcing and total clearing curves. gG and gM use a generic curve that passes inside the IEC 60269-1 gates (rated currents 16–1250 A); aM and aR use an uncited generic shape.
Cable
Adiabatic damage curve: t = (k×S)²/I². Supports Cu and Al conductors with PVC, XLPE, EPR, and MI insulation. Accounts for parallel cables.
Transformer
Through-fault damage curve: t = 1250/M² (per ANSI/IEEE C57.109). Magnetising inrush envelope (8-point standard curve).
Motor
Starting current curve (decaying from LRC to FLA). Thermal damage curve: t = 30/M².
Relay
Same curve families as breakers but with CT ratio conversion from secondary to primary amps. Tolerance bands at ±10%.
Output Results
- TCC Chart — SVG log-log plot with all device curves, tolerance bands, and legend
- Coordination Status — PASS/FAIL for each adjacent device pair
- Minimum Margin — smallest upstream − downstream operating time between adjacent devices, and the current where it occurs
- Device Summary — table of all devices with ratings and settings
Formulas
IEC/ANSI/IEEE Inverse-Time Curve
t = TMS × (A / (M^p - 1) + B)
Where M = I / I_pickup, TMS = Time Multiplier Setting.
IEC 60255 Curves
| Curve | A | B | p |
|---|---|---|---|
| SI (Standard Inverse) | 0.14 | 0 | 0.02 |
| VI (Very Inverse) | 13.5 | 0 | 1.0 |
| EI (Extremely Inverse) | 80 | 0 | 2.0 |
| LTI (Long Time Inverse) | 120 | 0 | 1.0 |
| DT (Definite Time) | 0 | 1 | 0 |
ANSI Curves
| Curve | A | B | p |
|---|---|---|---|
| MI (Moderately Inverse) | 0.0515 | 0.114 | 0.02 |
| VI (Very Inverse) | 19.61 | 0.491 | 2.0 |
| EI (Extremely Inverse) | 28.2 | 0.1217 | 2.0 |
| STI (Short Time Inverse) | 0.00342 | 0.00262 | 0.02 |
| LTI (Long Time Inverse) | 5.6143 | 2.18592 | 1.0 |
| DT (Definite Time) | 0 | 1 | 0 |
IEEE U-curves (U1–U5)
These are the U.S. relay curves as numbered in SEL relays (SEL-351 / SEL-751 instruction manuals): t = TD × (B + A ÷ (Mp − 1)). U1, U3 and U4 are the IEEE C37.112-2018 Table 1 moderately, very and extremely inverse shapes (the MI/VI/EI rows of the ANSI table above) with the time dial rescaled by about 1/5, so a U-curve TD of 5 is close to a C37.112 TD of 1. U2 (inverse) and U5 (short-time inverse) have no C37.112 counterpart.
| Curve | A | B | p |
|---|---|---|---|
| U1 (Moderately Inverse) | 0.0104 | 0.0226 | 0.02 |
| U2 (Inverse) | 5.95 | 0.180 | 2.0 |
| U3 (Very Inverse) | 3.88 | 0.0963 | 2.0 |
| U4 (Extremely Inverse) | 5.64 | 0.02434 | 2.0 |
| U5 (Short Time Inverse) | 0.00342 | 0.00262 | 0.02 |
| DT (Definite Time) | 0 | 1 | 0 |
Instantaneous Element
Above the instantaneous pickup the operating time is the instantaneous time; below it the inverse-time curve applies. The bands are piecewise by current, as a trip-unit or relay TCC is drawn: the inverse equation is never extrapolated past the instantaneous pickup to a time faster than the instantaneous time.
LSI Circuit Breaker
Electronic trip unit bands per IEC 60947-2 cl. 8.3.3 (overload, short-time-delay and instantaneous releases; UL 489 / IEEE Std 1015 for LSI trip units). Each band governs only its own current range:
Long-time: t = TD × (6/M)² (1.05 Ir ≤ I < Ir × ST_pickup) Short-time: t = ST_delay (Ir × ST_pickup ≤ I < Inst_pickup) Instantaneous: t = Inst_delay (I ≥ Inst_pickup)
Cable Adiabatic Equation
t = (k × S)² / I²
Where k = conductor constant (Cu/PVC=115, Cu/XLPE=143, Al/PVC=76, Al/XLPE=94), S = CSA in mm².
Fuse Characteristic (gG / gM)
A generic gG pre-arcing curve built from the IEC 60269-1:2006 limits for the rated current In (gM: the characteristic current Ich, which takes the gG gates). Four points are placed mid-window (geometric mean) of each limit, so the curve passes inside every gate:
| Point | Current | Pre-arcing time | Source |
|---|---|---|---|
| 1 | √(Inf·If) = √(1.25×1.6) In = 1.414 In | conventional time: 1 h (≤ 63 A), 2 h (≤ 160 A), 3 h (≤ 400 A), 4 h | Table 2 |
| 2 | √(Imin(10 s)·Imax(5 s)) | √(10×5) = 7.07 s | Table 3 gates |
| 3 | √(Imin(0.1 s)·Imax(0.1 s)) | 0.1 s | Table 3 gates |
| 4 | √((I²t)0.01 / 0.01), (I²t)0.01 = √(I²tmin·I²tmax) | 0.01 s | Table 7 pre-arcing I²t |
Between points (log-log straight line): t_pre = t1 × (t2/t1)^( ln(I/I1) / ln(I2/I1) ) Above point 4 (constant pre-arcing I²t): t_pre = (I²t)0.01 / I² Below point 1: no operation (the curve starts at 1.414 In) Total clearing: t_total = t_pre + min(0.01 s, (I²t)0.01 / I²)
The total-clearing arcing allowance (half a 50 Hz cycle, reduced where the fuse is current-limiting so that the operating I²t is 2× the pre-arcing I²t) is a generic assumption, not an IEC 60269 value. Worked example, 100 A gG (gates 290 / 580 / 820 / 1450 A, I²t 27–86 kA²s): points (141.4 A, 7200 s), (410.1 A, 7.07 s), (1090.4 A, 0.1 s), (2195.2 A, 0.01 s); pre-arcing 67.4 s at 290 A (gate ≥ 10 s), 1.56 s at 580 A (≤ 5 s), 0.346 s at 820 A (≥ 0.1 s), 0.039 s at 1450 A (≤ 0.1 s); total clearing at 3 kA = 2 × 48 187 / 3000² = 0.0107 s.
aM / aR
Uncited generic shape (not checked against a standard; aR characteristics are manufacturer-specific):
t = 10^(3.0 − 5.6 × log10(M)) × 0.8 (pre-arc) / 1.2 (total) below 4 In,
t = k × In² / I² above (aM k = 15 / 25, aR k = 3 / 5), starting at 1.3 In.
Transformer Damage
t = 1250 / M² where M = I / FLA
Transformer FLA
I_FLA = kVA × 1000 / (√3 × V)
Motor Starting Curve
I(t) = FLA + (LRC - FLA) × (1 - t/t_start)^0.5
Where FLA = full-load amps, LRC = locked rotor current, tstart = starting time.
Motor Thermal Damage
t = 30 / M² where M = I / FLA
Motor FLA
I_FLA = kW × 1000 / (√3 × V × η × cos φ)
Relay CT Conversion
I_primary = I_pickup(sec) × CT_pri / CT_sec
Note: Relay uses the same IEC/ANSI/IEEE curve formula as breakers.
Worked Examples
The 13 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_protection; worked examples for every calculation).
| # | Case | Devices | If (A) | t at If (s) | Min margin (s) | Result |
|---|---|---|---|---|---|---|
| 1 | IEC SI at M = 2: overload-region grading | CB 100A → R 150A | 200 | 3.0087 / 7.2787 | 4.270 (≥ 0.3) | PASS |
| 2 | IEC SI relay over an SI breaker | CB 100A → R 400A | 4,000 | 0.1828 / 0.8912 | 0.708 (≥ 0.3) | PASS |
| 3 | Two definite-time stages, 0.4 s apart | CB 100A → CB 400A | 10,000 | 0.2 / 0.6 | 0.400 (≥ 0.3) | PASS |
| 4 | IEC EI feeder under a VI incomer fails at high current | R feeder EI → R incomer VI | 8,000 | 0.015 / 0.1421 | 0.127 (≥ 0.3) | FAIL |
| 5 | IEEE C37.112 VI feeder under an MI main | R feeder VI → R main MI | 6,000 | 0.5401 / 2.7328 | 2.193 (≥ 0.3) | PASS |
| 6 | IEC EI relay over a 100 A gG fuse fails at 3 kA | F 100A gG → R 400A EI | 3,000 | 0.0107 / 0.2896 | 0.279 (≥ 0.3) | FAIL |
| 7 | IEEE U4 relay over a 0.1 s definite-time breaker fails | CB 200A DT → R 600A U4 | 6,000 | 0.1 / 0.1626 | 0.063 (≥ 0.3) | FAIL |
| 8 | Three-level chain: SI breaker, LSI ACB, SI relay | CB 100A SI → ACB 400A LSI → R 1200A SI | 7,000 | 0.02 / 0.4 / 1.9498 | 0.380 (≥ 0.3) | PASS |
| 9 | IEEE U3 feeder under a U1 main | R feeder U3 → R main U1 | 6,000 | 0.212 / 1.3776 | 1.166 (≥ 0.3) | PASS |
| 10 | IEEE U2 relay over a 100 A gG fuse | F 100A gG → R 400A U2 | 3,000 | 0.0107 / 0.5754 | 0.565 (≥ 0.3) | PASS |
| 11 | IEEE U3 relay over a 0.1 s definite-time breaker | CB 200A DT → R 600A U3 | 6,000 | 0.1 / 0.542 | 0.442 (≥ 0.3) | PASS |
| 12 | LSI short-time band governs above Isd | CB 100A EI → ACB 400A LSI | 8,000 | 0.02 / 0.4 | 0.380 (≥ 0.3) | PASS |
| 13 | Instantaneous band is not undercut by the EI curve | R feeder EI → R incomer SI | 16,000 | 0.05 / 0.3401 | 0.290 (≥ 0.3) | FAIL |
Example 1 — IEC SI at M = 2: overload-region grading
At a 200 A overload the 100 A SI breaker sits at M = 2 (t = 3.009 s, the classic 0.3 TMS check value) and the 150 A SI relay at M = 1.33; the margin is smallest at the 200 A maximum current itself.
Given: CB 100A: breaker, pickup 100 A, IEC SI, TMS 0.3, no instantaneous; R 150A: relay on a 200/5 CT, pickup 3.75 A secondary, IEC SI, TMS 0.3, no instantaneous. Maximum prospective fault current If = 200 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 100A (100 A) → R 150A (150 A) |
|---|---|
| CB 100A | M = 200 ÷ 100 = 2.000; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.3 × (0.14 ÷ (2.0000.02 − 1)) = 0.3 × (0.14 ÷ 0.013959) = 3.009 s; t(If) = 3.0087 s |
| R 150A | Is = 3.75 × 200/5 = 150 A; M = 200 ÷ 150 = 1.333; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.3 × (0.14 ÷ (1.3330.02 − 1)) = 0.3 × (0.14 ÷ 0.0057702) = 7.279 s; t(If) = 7.2787 s |
| Margin CB 100A → R 150A | tR 150A − tCB 100A over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 4.270 s at 200 A; at If: 7.2787 − 3.0087 = 4.270 s → 4.270 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 4.270 s against 0.3 s required; governing: selectivity: CB 100A → R 150A |
| Reference | Hand calculation, IEC 60255-151 t = TMS × A ÷ (M^p − 1) (SI 0.14/0.02, VI 13.5/1, EI 80/2), M = I ÷ Is; CB M = 200/100 = 2 → 0.3 × 0.14 ÷ (2^0.02 − 1) = 0.3 × 0.14 ÷ 0.013959 = 3.009 s; relay pickup 3.75 × 200/5 = 150 A, M = 1.333 → 0.3 × 0.14 ÷ 0.0057702 = 7.279 s; margin at 200 A = 7.279 − 3.009 = 4.270 s (it only grows towards the 157.5 A relay curve start); margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: CB 100A t(200 A) = 3.009 s; R 150A t(200 A) = 7.279 s; CB 100A → R 150A: smallest margin at test current 200.0 A = 7.279 − 3.009 = 4.270 s ≥ 0.3 s (validation case c0039-iec-si-overload-region-m2) |
Example 2 — IEC SI relay over an SI breaker
A 400 A SI relay (TMS 0.3) grades over a 100 A SI breaker (TMS 0.1) up to 4 kA; the smallest margin is at the 4 kA fault.
Given: R 400A: relay on a 400/5 CT, pickup 5 A secondary, IEC SI, TMS 0.3, no instantaneous; CB 100A: breaker, pickup 100 A, IEC SI, TMS 0.1, no instantaneous. Maximum prospective fault current If = 4,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 100A (100 A) → R 400A (400 A) |
|---|---|
| CB 100A | M = 4,000 ÷ 100 = 40.00; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.1 × (0.14 ÷ (40.000.02 − 1)) = 0.1 × (0.14 ÷ 0.076567) = 0.1828 s; t(If) = 0.1828 s |
| R 400A | Is = 5 × 400/5 = 400 A; M = 4,000 ÷ 400 = 10.00; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.3 × (0.14 ÷ (10.000.02 − 1)) = 0.3 × (0.14 ÷ 0.047129) = 0.8912 s; t(If) = 0.8912 s |
| Margin CB 100A → R 400A | tR 400A − tCB 100A over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.708 s at 4,000 A; at If: 0.8912 − 0.1828 = 0.708 s → 0.708 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 0.708 s against 0.3 s required; governing: selectivity: CB 100A → R 400A |
| Reference | Hand calculation, IEC 60255-151 t = TMS × A ÷ (M^p − 1) (SI 0.14/0.02, VI 13.5/1, EI 80/2), M = I ÷ Is; relay M = 4000 ÷ 400 = 10 → 0.3 × 0.14 ÷ 0.047129 = 0.891 s; breaker M = 40 → 0.1 × 0.14 ÷ 0.076568 = 0.183 s; margin at 4 kA = 0.891 − 0.183 = 0.708 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: R 400A t(4000 A) = 0.8912 s; CB 100A t(4000 A) = 0.1828 s; CB 100A → R 400A: smallest margin at test current 4000.0 A = 0.8912 − 0.1828 = 0.708 s ≥ 0.3 s (validation case c0039-iec-si-relay-over-breaker) |
Example 3 — Two definite-time stages, 0.4 s apart
Definite-time elements grade by their set times alone: 0.6 − 0.2 = 0.4 s at every common current.
Given: CB 100A: breaker, pickup 100 A, IEC DT, TMS 0.2, no instantaneous; CB 400A: breaker, pickup 400 A, IEC DT, TMS 0.6, no instantaneous. Maximum prospective fault current If = 10,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 100A (100 A) → CB 400A (400 A) |
|---|---|
| CB 100A | M = 10,000 ÷ 100 = 100.0; definite time: t = TMS = 0.2 s; t(If) = 0.2 s |
| CB 400A | M = 10,000 ÷ 400 = 25.00; definite time: t = TMS = 0.6 s; t(If) = 0.6 s |
| Margin CB 100A → CB 400A | tCB 400A − tCB 100A over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.400 s at 420 A; at If: 0.6 − 0.2 = 0.400 s → 0.400 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 0.400 s against 0.3 s required; governing: selectivity: CB 100A → CB 400A |
| Reference | Hand calculation, definite time t = TMS × 1 → 0.2 s and 0.6 s; margin 0.6 − 0.2 = 0.4 s ≥ 0.3 s at every common current: CB 100A t(10000 A) = 0.2 s; CB 400A t(10000 A) = 0.6 s; CB 100A → CB 400A: smallest margin at test current 420.0 A = 0.6 − 0.2 = 0.400 s ≥ 0.3 s (validation case c0039-two-definite-time-breakers) |
Example 4 — IEC EI feeder under a VI incomer fails at high current
An extremely-inverse feeder relay is very fast at 8 kA (0.015 s) but the very-inverse incomer only drops to 0.142 s, so the margin falls to 0.127 s at the fault current.
Given: R feeder EI: relay on a 200/5 CT, pickup 5 A secondary, IEC EI, TMS 0.3, no instantaneous; R incomer VI: relay on a 400/5 CT, pickup 5 A secondary, IEC VI, TMS 0.2, no instantaneous. Maximum prospective fault current If = 8,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: R feeder EI (200 A) → R incomer VI (400 A) |
|---|---|
| R feeder EI | Is = 5 × 200/5 = 200 A; M = 8,000 ÷ 200 = 40.00; IEC EI (extremely inverse, A = 80, p = 2): t = TMS × (A ÷ (Mp − 1)) = 0.3 × (80 ÷ (40.002 − 1)) = 0.3 × (80 ÷ 1599.0) = 0.01501 s; t(If) = 0.015 s |
| R incomer VI | Is = 5 × 400/5 = 400 A; M = 8,000 ÷ 400 = 20.00; IEC VI (very inverse, A = 13.5, p = 1): t = TMS × (A ÷ (Mp − 1)) = 0.2 × (13.5 ÷ (20.001 − 1)) = 0.2 × (13.5 ÷ 19.000) = 0.1421 s; t(If) = 0.1421 s |
| Margin R feeder EI → R incomer VI | tR incomer VI − tR feeder EI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.127 s at 8,000 A; at If: 0.1421 − 0.015 = 0.127 s; 49 test current(s) below 0.3 s, worst near 8,000 A → 0.127 vs limit 0.300 s FAIL |
| Result | 0/1 checks pass → FAIL; minimum margin 0.127 s against 0.3 s required; governing: selectivity: R feeder EI → R incomer VI. R feeder EI → R incomer VI: margin below 0.3 s at 49 test current(s), worst near 8000 A. |
| Reference | Hand calculation, IEC 60255-151 t = TMS × A ÷ (M^p − 1) (SI 0.14/0.02, VI 13.5/1, EI 80/2), M = I ÷ Is; feeder EI M = 8000 ÷ 200 = 40 → 0.3 × 80 ÷ (40² − 1) = 0.0150 s; incomer VI M = 20 → 0.2 × 13.5 ÷ 19 = 0.1421 s; margin at 8 kA = 0.1421 − 0.0150 = 0.127 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: R feeder EI t(8000 A) = 0.01501 s; R incomer VI t(8000 A) = 0.1421 s; R feeder EI → R incomer VI: smallest margin at test current 8000.0 A = 0.1421 − 0.01501 = 0.127 s < 0.3 s (validation case c0039-iec-ei-under-vi-fails) |
Example 5 — IEEE C37.112 VI feeder under an MI main
ANSI/IEEE C37.112 curves (with the B adder): a very-inverse feeder relay grades under a moderately-inverse main relay at 6 kA.
Given: R feeder VI: relay on a 300/5 CT, pickup 5 A secondary, ANSI VI, TD 1, no instantaneous; R main MI: relay on a 800/5 CT, pickup 5 A secondary, ANSI MI, TD 2, no instantaneous. Maximum prospective fault current If = 6,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: R feeder VI (300 A) → R main MI (800 A) |
|---|---|
| R feeder VI | Is = 5 × 300/5 = 300 A; M = 6,000 ÷ 300 = 20.00; ANSI VI (very inverse, A = 19.61, B = 0.491, p = 2): t = TD × (A ÷ (Mp − 1) + B) = 1 × (19.61 ÷ (20.002 − 1) + 0.491) = 1 × (19.61 ÷ 399.00 + 0.491) = 0.5401 s; t(If) = 0.5401 s |
| R main MI | Is = 5 × 800/5 = 800 A; M = 6,000 ÷ 800 = 7.500; ANSI MI (moderately inverse, A = 0.0515, B = 0.114, p = 0.02): t = TD × (A ÷ (Mp − 1) + B) = 2 × (0.0515 ÷ (7.5000.02 − 1) + 0.114) = 2 × (0.0515 ÷ 0.041121 + 0.114) = 2.733 s; t(If) = 2.7328 s |
| Margin R feeder VI → R main MI | tR main MI − tR feeder VI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 2.193 s at 6,000 A; at If: 2.7328 − 0.5401 = 2.193 s → 2.193 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 2.193 s against 0.3 s required; governing: selectivity: R feeder VI → R main MI |
| Reference | Hand calculation, IEEE C37.112 t = TD × (A ÷ (M^p − 1) + B), MI A 0.0515 B 0.1140 p 0.02, VI A 19.61 B 0.491 p 2; feeder M = 6000 ÷ 300 = 20 → 1 × (19.61 ÷ 399 + 0.491) = 0.5401 s; main M = 7.5 → 2 × (0.0515 ÷ 0.041121 + 0.114) = 2.733 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: R feeder VI t(6000 A) = 0.5401 s; R main MI t(6000 A) = 2.733 s; R feeder VI → R main MI: smallest margin at test current 6000.0 A = 2.733 − 0.5401 = 2.193 s ≥ 0.3 s (validation case c0039-ansi-vi-under-mi) |
Example 6 — IEC EI relay over a 100 A gG fuse fails at 3 kA
An extremely-inverse relay is the natural partner of a fuse, but at TMS 0.2 it falls to 0.290 s at a 3 kA fault: the margin over the fuse's 11 ms total clearing is 0.279 s, short of the default 0.3 s. Checking the fault current itself (not only test currents below it) is what catches this.
Given: F 100A gG: 100 A gG fuse; R 400A EI: relay on a 400/5 CT, pickup 5 A secondary, IEC EI, TMS 0.2, no instantaneous. Maximum prospective fault current If = 3,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: F 100A gG (100 A) → R 400A EI (400 A) |
|---|---|
| F 100A gG | M = 3,000 ÷ 100 = 30.00 ≥ 4 → total clearing t = k × In² ÷ I² (I²t region, component generic gG constant) = 8 × 100² ÷ 3,000² = 0.00889 s; t(If) = 0.0107 s |
| R 400A EI | Is = 5 × 400/5 = 400 A; M = 3,000 ÷ 400 = 7.500; IEC EI (extremely inverse, A = 80, p = 2): t = TMS × (A ÷ (Mp − 1)) = 0.2 × (80 ÷ (7.5002 − 1)) = 0.2 × (80 ÷ 55.250) = 0.2896 s; t(If) = 0.2896 s |
| Margin F 100A gG → R 400A EI | tR 400A EI − tF 100A gG over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.279 s at 3,000 A; at If: 0.2896 − 0.0107 = 0.279 s; 3 test current(s) below 0.3 s, worst near 3,000 A → 0.279 vs limit 0.300 s FAIL |
| Result | 0/1 checks pass → FAIL; minimum margin 0.279 s against 0.3 s required; governing: selectivity: F 100A gG → R 400A EI. Fuse curves are generic (gG/gM: a curve inside the IEC 60269-1 Table 2/3/7 limits; aM/aR: an uncited shape), not a manufacturer's characteristic: confirm with the fuse maker's time-current and I²t data. F 100A gG → R 400A EI: margin below 0.3 s at 3 test current(s), worst near 3000 A. |
| Reference | Hand calculation, gG 100 A total clearing (IEC 60269-1:2006 generic curve): 3 kA is above the 0.01 s point √(48 187 ÷ 0.01) = 2195 A, where pre-arcing I²t is constant at √(27 000 × 86 000) = 48 187 A²s (Table 7 geometric mean) and the arcing allowance equals it: t = 2 × 48 187 ÷ 3000² = 0.01071 s; relay IEC EI M = 3000 ÷ 400 = 7.5 → 0.2 × 80 ÷ (7.5² − 1) = 0.2896 s; margin at 3 kA = 0.2896 − 0.0107 = 0.279 s < 0.3 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: F 100A gG t(3000 A) = 0.01071 s; R 400A EI t(3000 A) = 0.2896 s; F 100A gG → R 400A EI: smallest margin at test current 3000.0 A = 0.2896 − 0.01071 = 0.279 s < 0.3 s (validation case c0039-ei-relay-over-gg-fuse) |
Example 7 — IEEE U4 relay over a 0.1 s definite-time breaker fails
An extremely-inverse U4 relay keeps falling with current while the definite-time stage stays at 0.1 s, so the margin collapses to about 0.06 s at 6 kA.
Given: CB 200A DT: breaker, pickup 200 A, IEC DT, TMS 0.1, no instantaneous; R 600A U4: relay on a 600/5 CT, pickup 5 A secondary, IEEE U4, TD 2, no instantaneous. Maximum prospective fault current If = 6,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 200A DT (200 A) → R 600A U4 (600 A) |
|---|---|
| CB 200A DT | M = 6,000 ÷ 200 = 30.00; definite time: t = TMS = 0.1 s; t(If) = 0.1 s |
| R 600A U4 | Is = 5 × 600/5 = 600 A; M = 6,000 ÷ 600 = 10.00; IEEE U4 (SEL extremely inverse, A = 5.64, B = 0.02434, p = 2): t = TD × (A ÷ (Mp − 1) + B) = 2 × (5.64 ÷ (10.002 − 1) + 0.02434) = 2 × (5.64 ÷ 99.000 + 0.02434) = 0.1626 s; t(If) = 0.1626 s |
| Margin CB 200A DT → R 600A U4 | tR 600A U4 − tCB 200A DT over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.063 s at 6,000 A; at If: 0.1626 − 0.1 = 0.063 s; 29 test current(s) below 0.3 s, worst near 6,000 A → 0.063 vs limit 0.300 s FAIL |
| Result | 0/1 checks pass → FAIL; minimum margin 0.063 s against 0.3 s required; governing: selectivity: CB 200A DT → R 600A U4. CB 200A DT → R 600A U4: margin below 0.3 s at 29 test current(s), worst near 6000 A. |
| Reference | Hand calculation, U4 (SEL U.S. extremely inverse) t = TD × (5.64 ÷ (M² − 1) + 0.02434); M = 6000 ÷ 600 = 10 → 2 × (5.64 ÷ 99 + 0.02434) = 0.1626 s; definite time 0.1 × 1 = 0.1 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: CB 200A DT t(6000 A) = 0.1 s; R 600A U4 t(6000 A) = 0.1626 s; CB 200A DT → R 600A U4: smallest margin at test current 6000.0 A = 0.1626 − 0.1 = 0.063 s < 0.3 s (validation case c0039-ieee-u4-over-definite-time-fails) |
Example 8 — Three-level chain: SI breaker, LSI ACB, SI relay
A 100 A breaker with a 1 kA instantaneous, a 400 A LSI ACB (long-time 4 s at 6 × Ir, short-time 6 × Ir at 0.4 s) and a 1200 A SI relay: the ACB's short-time band sets a 0.38 s margin over the instantaneous trip.
Given: CB 100A SI: breaker, pickup 100 A, IEC SI, TMS 0.1, instantaneous 1,000 A (0.02 s); ACB 400A LSI: LSI breaker, Ir = 400 A, long-time band 4 s at 6 × Ir, short-time 6 × Ir at 0.4 s, no instantaneous; R 1200A SI: relay on a 1,200/5 CT, pickup 5 A secondary, IEC SI, TMS 0.5, no instantaneous. Maximum prospective fault current If = 7,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 100A SI (100 A) → ACB 400A LSI (400 A) → R 1200A SI (1,200 A) |
|---|---|
| CB 100A SI | M = 7,000 ÷ 100 = 70.00; I ≥ instantaneous pickup 1,000 A → instantaneous band, t = 0.02 s (the inverse-time curve apply only below 1,000 A); t(If) = 0.02 s |
| ACB 400A LSI | M = 7,000 ÷ 400 = 17.50; short-time pickup 6 × 400 = 2,400 A ≤ I → short-time band, t = tsd = 0.4 s (long-time applies only below 2,400 A); t(If) = 0.4 s |
| R 1200A SI | Is = 5 × 1,200/5 = 1,200 A; M = 7,000 ÷ 1,200 = 5.833; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.5 × (0.14 ÷ (5.8330.02 − 1)) = 0.5 × (0.14 ÷ 0.035901) = 1.950 s; t(If) = 1.9498 s |
| Margin CB 100A SI → ACB 400A LSI | tACB 400A LSI − tCB 100A SI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.380 s at 2,400 A; at If: 0.4 − 0.02 = 0.380 s → 0.380 vs limit 0.300 s PASS |
| Margin ACB 400A LSI → R 1200A SI | tR 1200A SI − tACB 400A LSI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.979 s at 2,194 A; at If: 1.9498 − 0.4 = 1.550 s → 0.979 vs limit 0.300 s PASS |
| Result | 2/2 checks pass → PASS; minimum margin 0.380 s against 0.3 s required; governing: selectivity: CB 100A SI → ACB 400A LSI |
| Reference | Hand calculation, CB IEC SI, instantaneous band from 1000 A → 0.02 s at 7 kA; LSI long-time t = TD × (6/M)² below the short-time pickup 6 × 400 = 2400 A, short-time band 0.4 s from 2400 A (no instantaneous); relay SI M = 7000 ÷ 1200 = 5.833 → 0.5 × 0.14 ÷ 0.035901 = 1.950 s; pair 1 margin 0.4 − 0.02 = 0.38 s at every current ≥ 2400 A; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: CB 100A SI t(7000 A) = 0.02 s; ACB 400A LSI t(7000 A) = 0.4 s; R 1200A SI t(7000 A) = 1.95 s; CB 100A SI → ACB 400A LSI: smallest margin at test current 2400.0 A = 0.4 − 0.02 = 0.380 s ≥ 0.3 s; ACB 400A LSI → R 1200A SI: smallest margin at test current 2201.1 A = 5.734 − 4.755 = 0.979 s ≥ 0.3 s (validation case c0039-three-device-lsi-chain) |
Example 9 — IEEE U3 feeder under a U1 main
SEL U.S. curves: a very-inverse U3 feeder relay grades under a moderately-inverse U1 main relay at 6 kA. U1's small A (0.0104) and B adder (0.0226) need a time dial near 5 to match a C37.112 MI curve at TD 1.
Given: R feeder U3: relay on a 300/5 CT, pickup 5 A secondary, IEEE U3, TD 2, no instantaneous; R main U1: relay on a 800/5 CT, pickup 5 A secondary, IEEE U1, TD 5, no instantaneous. Maximum prospective fault current If = 6,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: R feeder U3 (300 A) → R main U1 (800 A) |
|---|---|
| R feeder U3 | Is = 5 × 300/5 = 300 A; M = 6,000 ÷ 300 = 20.00; IEEE U3 (SEL very inverse, A = 3.88, B = 0.0963, p = 2): t = TD × (A ÷ (Mp − 1) + B) = 2 × (3.88 ÷ (20.002 − 1) + 0.0963) = 2 × (3.88 ÷ 399.00 + 0.0963) = 0.2120 s; t(If) = 0.212 s |
| R main U1 | Is = 5 × 800/5 = 800 A; M = 6,000 ÷ 800 = 7.500; IEEE U1 (SEL moderately inverse, A = 0.0104, B = 0.0226, p = 0.02): t = TD × (A ÷ (Mp − 1) + B) = 5 × (0.0104 ÷ (7.5000.02 − 1) + 0.0226) = 5 × (0.0104 ÷ 0.041121 + 0.0226) = 1.378 s; t(If) = 1.3776 s |
| Margin R feeder U3 → R main U1 | tR main U1 − tR feeder U3 over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 1.166 s at 6,000 A; at If: 1.3776 − 0.212 = 1.166 s → 1.166 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 1.166 s against 0.3 s required; governing: selectivity: R feeder U3 → R main U1 |
| Reference | Hand calculation, SEL-351 U.S. curves t = TD × (B + A ÷ (M^p − 1)): U1 A 0.0104 B 0.0226 p 0.02, U3 A 3.88 B 0.0963 p 2; feeder M = 6000 ÷ 300 = 20 → 2 × (3.88 ÷ 399 + 0.0963) = 2 × 0.10602 = 0.2120 s; main M = 7.5 → 5 × (0.0104 ÷ 0.041121 + 0.0226) = 5 × 0.27551 = 1.378 s; margin at 6 kA = 1.166 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: R feeder U3 t(6000 A) = 0.212 s; R main U1 t(6000 A) = 1.378 s; R feeder U3 → R main U1: smallest margin at test current 6000.0 A = 1.378 − 0.212 = 1.166 s ≥ 0.3 s (validation case c0039-ieee-u1-main-over-u3-feeder) |
Example 10 — IEEE U2 relay over a 100 A gG fuse
The U2 (inverse) curve has a large 0.180 B adder, so at TD 2 the relay still takes 0.575 s at 3 kA and grades comfortably over the fuse.
Given: F 100A gG: 100 A gG fuse; R 400A U2: relay on a 400/5 CT, pickup 5 A secondary, IEEE U2, TD 2, no instantaneous. Maximum prospective fault current If = 3,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: F 100A gG (100 A) → R 400A U2 (400 A) |
|---|---|
| F 100A gG | M = 3,000 ÷ 100 = 30.00 ≥ 4 → total clearing t = k × In² ÷ I² (I²t region, component generic gG constant) = 8 × 100² ÷ 3,000² = 0.00889 s; t(If) = 0.0107 s |
| R 400A U2 | Is = 5 × 400/5 = 400 A; M = 3,000 ÷ 400 = 7.500; IEEE U2 (SEL inverse, A = 5.95, B = 0.18, p = 2): t = TD × (A ÷ (Mp − 1) + B) = 2 × (5.95 ÷ (7.5002 − 1) + 0.18) = 2 × (5.95 ÷ 55.250 + 0.18) = 0.5754 s; t(If) = 0.5754 s |
| Margin F 100A gG → R 400A U2 | tR 400A U2 − tF 100A gG over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.565 s at 3,000 A; at If: 0.5754 − 0.0107 = 0.565 s → 0.565 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 0.565 s against 0.3 s required; governing: selectivity: F 100A gG → R 400A U2. Fuse curves are generic (gG/gM: a curve inside the IEC 60269-1 Table 2/3/7 limits; aM/aR: an uncited shape), not a manufacturer's characteristic: confirm with the fuse maker's time-current and I²t data. |
| Reference | Hand calculation, SEL-351 U2 t = TD × (0.180 + 5.95 ÷ (M² − 1)); M = 3000 ÷ 400 = 7.5 → 2 × (5.95 ÷ 55.25 + 0.180) = 2 × 0.28769 = 0.5754 s; gG 100 A total clearing (IEC 60269-1:2006 generic curve): 3 kA is above the 0.01 s point √(48 187 ÷ 0.01) = 2195 A, where pre-arcing I²t is constant at √(27 000 × 86 000) = 48 187 A²s (Table 7 geometric mean) and the arcing allowance equals it: t = 2 × 48 187 ÷ 3000² = 0.01071 s; margin at 3 kA = 0.5754 − 0.0107 = 0.565 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: F 100A gG t(3000 A) = 0.01071 s; R 400A U2 t(3000 A) = 0.5754 s; F 100A gG → R 400A U2: smallest margin at test current 3000.0 A = 0.5754 − 0.01071 = 0.565 s ≥ 0.3 s (validation case c0039-ieee-u2-relay-over-gg-fuse) |
Example 11 — IEEE U3 relay over a 0.1 s definite-time breaker
The very-inverse U3 curve flattens towards its 0.0963 × TD adder, so at TD 4 it keeps 0.44 s over a 0.1 s definite-time stage at 6 kA (compare the U4 case, which fails).
Given: CB 200A DT: breaker, pickup 200 A, IEC DT, TMS 0.1, no instantaneous; R 600A U3: relay on a 600/5 CT, pickup 5 A secondary, IEEE U3, TD 4, no instantaneous. Maximum prospective fault current If = 6,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 200A DT (200 A) → R 600A U3 (600 A) |
|---|---|
| CB 200A DT | M = 6,000 ÷ 200 = 30.00; definite time: t = TMS = 0.1 s; t(If) = 0.1 s |
| R 600A U3 | Is = 5 × 600/5 = 600 A; M = 6,000 ÷ 600 = 10.00; IEEE U3 (SEL very inverse, A = 3.88, B = 0.0963, p = 2): t = TD × (A ÷ (Mp − 1) + B) = 4 × (3.88 ÷ (10.002 − 1) + 0.0963) = 4 × (3.88 ÷ 99.000 + 0.0963) = 0.5420 s; t(If) = 0.542 s |
| Margin CB 200A DT → R 600A U3 | tR 600A U3 − tCB 200A DT over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.442 s at 6,000 A; at If: 0.542 − 0.1 = 0.442 s → 0.442 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 0.442 s against 0.3 s required; governing: selectivity: CB 200A DT → R 600A U3 |
| Reference | Hand calculation, SEL-351 U3 t = TD × (0.0963 + 3.88 ÷ (M² − 1)); M = 6000 ÷ 600 = 10 → 4 × (3.88 ÷ 99 + 0.0963) = 4 × 0.13549 = 0.5420 s; definite time 0.1 × 1 = 0.1 s; margin at 6 kA = 0.442 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: CB 200A DT t(6000 A) = 0.1 s; R 600A U3 t(6000 A) = 0.542 s; CB 200A DT → R 600A U3: smallest margin at test current 6000.0 A = 0.542 − 0.1 = 0.442 s ≥ 0.3 s (validation case c0039-ieee-u3-over-definite-time) |
Example 12 — LSI short-time band governs above Isd
A low long-time band (2 s at 6 × Ir) extrapolates to 0.18 s at 20 × Ir, but above the 2400 A short-time pickup the ACB follows its 0.4 s short-time band, so it grades 0.38 s over the downstream breaker's instantaneous trip.
Given: CB 100A EI: breaker, pickup 100 A, IEC EI, TMS 0.1, instantaneous 1,000 A (0.02 s); ACB 400A LSI: LSI breaker, Ir = 400 A, long-time band 2 s at 6 × Ir, short-time 6 × Ir at 0.4 s, no instantaneous. Maximum prospective fault current If = 8,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: CB 100A EI (100 A) → ACB 400A LSI (400 A) |
|---|---|
| CB 100A EI | M = 8,000 ÷ 100 = 80.00; I ≥ instantaneous pickup 1,000 A → instantaneous band, t = 0.02 s (the inverse-time curve apply only below 1,000 A); t(If) = 0.02 s |
| ACB 400A LSI | M = 8,000 ÷ 400 = 20.00; short-time pickup 6 × 400 = 2,400 A ≤ I → short-time band, t = tsd = 0.4 s (long-time applies only below 2,400 A); t(If) = 0.4 s |
| Margin CB 100A EI → ACB 400A LSI | tACB 400A LSI − tCB 100A EI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.380 s at 2,400 A; at If: 0.4 − 0.02 = 0.380 s → 0.380 vs limit 0.300 s PASS |
| Result | 1/1 checks pass → PASS; minimum margin 0.380 s against 0.3 s required; governing: selectivity: CB 100A EI → ACB 400A LSI |
| Reference | Hand calculation, CB IEC EI with instantaneous from 1000 A → 0.02 s at 8 kA (the EI equation, 0.1 × 80 ÷ (80² − 1) = 0.00125 s, applies only below 1000 A); ACB M = 8000 ÷ 400 = 20 ≥ short-time pickup 6 → short-time band t = 0.4 s (long-time 2 × (6/20)² = 0.18 s applies only below 2400 A); margin 0.4 − 0.02 = 0.38 s at every current ≥ 2400 A; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: CB 100A EI t(8000 A) = 0.02 s; ACB 400A LSI t(8000 A) = 0.4 s; CB 100A EI → ACB 400A LSI: smallest margin at test current 2400.0 A = 0.4 − 0.02 = 0.380 s ≥ 0.3 s (validation case c0039-lsi-short-time-band-governs) |
Example 13 — Instantaneous band is not undercut by the EI curve
Above its 4 kA high-set pickup the feeder relay operates in 0.05 s; its EI curve would extrapolate to 1.25 ms at 16 kA but does not apply there. Against the 0.340 s SI incomer the margin is 0.290 s, short of 0.3 s.
Given: R feeder EI: relay on a 200/5 CT, pickup 5 A secondary, IEC EI, TMS 0.1, instantaneous 4,000 A (0.05 s); R incomer SI: relay on a 800/5 CT, pickup 5 A secondary, IEC SI, TMS 0.15, no instantaneous. Maximum prospective fault current If = 16,000 A, required grading margin 0.3 s, system 415 V.
| Grading order | Sorted by pickup, lowest = most downstream: R feeder EI (200 A) → R incomer SI (800 A) |
|---|---|
| R feeder EI | Is = 5 × 200/5 = 200 A; M = 16,000 ÷ 200 = 80.00; I ≥ instantaneous pickup 4,000 A → instantaneous band, t = 0.05 s (the inverse-time curve apply only below 4,000 A); t(If) = 0.05 s |
| R incomer SI | Is = 5 × 800/5 = 800 A; M = 16,000 ÷ 800 = 20.00; IEC SI (standard inverse, A = 0.14, p = 0.02): t = TMS × (A ÷ (Mp − 1)) = 0.15 × (0.14 ÷ (20.000.02 − 1)) = 0.15 × (0.14 ÷ 0.061746) = 0.3401 s; t(If) = 0.3401 s |
| Margin R feeder EI → R incomer SI | tR incomer SI − tR feeder EI over the common current range (test currents ×1.02 apart from the later curve start, plus If and each band breakpoint): smallest 0.290 s at 16,000 A; at If: 0.3401 − 0.05 = 0.290 s; 5 test current(s) below 0.3 s, worst near 16,000 A → 0.290 vs limit 0.300 s FAIL |
| Result | 0/1 checks pass → FAIL; minimum margin 0.290 s against 0.3 s required; governing: selectivity: R feeder EI → R incomer SI. R feeder EI → R incomer SI: margin below 0.3 s at 5 test current(s), worst near 16000 A. |
| Reference | Hand calculation, IEC 60255-151 t = TMS × A ÷ (M^p − 1) (SI 0.14/0.02, VI 13.5/1, EI 80/2), M = I ÷ Is; feeder pickup 5 × 200/5 = 200 A, I = 16 kA ≥ 4000 A → instantaneous band t = 0.05 s (EI 0.1 × 80 ÷ (80² − 1) = 0.00125 s applies only below 4000 A); incomer M = 16000 ÷ 800 = 20 → 0.15 × 0.14 ÷ (20^0.02 − 1) = 0.021 ÷ 0.061746 = 0.3401 s; margin at 16 kA = 0.3401 − 0.05 = 0.290 s < 0.3 s; margin minimised over the whole common current range, from the later curve start (1.05 × pickup; gG fuse √(1.25 × 1.6) × In) up to and including the maximum fault current, either side of every band breakpoint: R feeder EI t(16000 A) = 0.05 s; R incomer SI t(16000 A) = 0.3401 s; R feeder EI → R incomer SI: smallest margin at test current 16000.0 A = 0.3401 − 0.05 = 0.290 s < 0.3 s (validation case c0039-instantaneous-band-not-undercut) |
Standards & References
- IEC 60255-151 — Measuring relays and protection equipment – Functional requirements for over/under current protection
- IEC 60269-1 — Low-voltage fuses – General requirements (Tables 2, 3 and 7: gG conventional currents, gates and pre-arcing I²t)
- IEC 60947-2 — Low-voltage switchgear and controlgear – Circuit breakers
- IEEE C37.112 — Standard Inverse-Time Characteristic Equations for Overcurrent Relays
- ANSI/IEEE C57.109 — Transformer through-fault current duration guide
- AS/NZS 3000 — Wiring Rules
- AS/NZS 3008.1 — Electrical installations – Selection of cables
Tips & Limitations
- Maximum 8 devices per study
- Coordination check only applies to protection devices (breakers, fuses, relays) — cables, transformers, and motors are treated as protected equipment
- Devices are auto-sorted by pickup current (lowest = most downstream) for coordination grading
- Fuse curves are generic approximations (gG/gM inside the IEC 60269-1 gates, 16–1250 A ratings only) — always verify against manufacturer data
- Tolerance bands assume ±15% for CBs and ±10% for relays — check manufacturer data for specific tolerances
- For LSI breakers, the long-time curve uses a simplified I²t characteristic
- Coordination is checked with exact nominal operating times (fuses: total clearing) at log-spaced test currents (×1.02 apart) from the later curve start up to the current-axis maximum (the maximum fault current), plus that maximum itself and each instantaneous / short-time / fuse breakpoint and the current just below it
Architecture
The component follows the standard calc component architecture:
calculations.py— Pure Python TCC math (constants, curve generators, coordination check)component.py— Schema, calculator class, SVG generator, registrationequations.py— Report equation buildersidebar_form.html— Vue device editor with dynamic device cards
Curve math was ported from protection/tcc-visualiser-complete (2).html (lines 189–232).
Code Paths
calcs/components/c0039_protection_coordination/ ├── __init__.py ├── apps.py ├── calculations.py # Core TCC math ├── component.py # Schema, calculator, SVG, registration ├── equations.py # PDF report builder ├── excel_generator.py # Excel report builder └── templates/.../sidebar_form.html # Vue device editor
Testing
pytest calcs/test_c0039_protection_coordination.py -v
Key test scenarios:
- Curve coefficient counts (IEC=5, ANSI=6, IEEE=6)
- IEC SI at M=2, TMS=0.3 ≈ 3.01s
- Cable Cu/PVC 25mm² at 1kA = 8.27s
- Fuse prearc always faster than total; gG pre-arcing curve inside every IEC 60269-1 Table 2/3/7 limit for all 20 ratings
- Tolerance band scaling (±15%, ±10%)
- Coordination PASS/FAIL with known device pairs
- Auto-sort by pickup ascending
- SVG output validation