ETAP-style relay coordination simulation for pandapower
Project description
Relay Coordination Package
Professional ETAP-style protection coordination simulation library for Pandapower.
Features
- Relay Modeling: IEC 60255, IEEE C37, IEC 61363 curves
- Analysis: Short circuit (IEC 60909) and Coordination analysis
- Reporting: Automatic CSV generation and TCC plotting
- Easy API: Simple integration with pandapower networks
Installation
pip install relay_coordination
Reference
1. Device Creation
add_ct(net, ...)
Adds a Current Transformer to the network.
| Parameter | Type | Default | Description |
|---|---|---|---|
net |
pandapowerNet |
Required | The network object |
bus |
int |
Required | Bus index where CT is located |
element |
int |
Required | Index of the protected element (line/trafo) |
element_type |
str |
Required | Type of element ("line", "trafo", "load") |
primary_rating |
float |
Required | CT primary current (e.g., 200) |
secondary_rating |
float |
5.0 | CT secondary current (1 or 5) |
accuracy_class |
str |
"5P20" | IEC/ANSI accuracy class |
burden_va |
float |
15.0 | Rated burden in VA |
name |
str |
None | Name of the CT |
add_relay(net, ...)
Adds a Protection Relay connected to a CT.
| Parameter | Type | Default | Description |
|---|---|---|---|
net |
pandapowerNet |
Required | The network object |
ct |
CT |
Required | Associated CT object |
cb |
CircuitBreaker |
Required | Associated Circuit Breaker object |
manufacturer |
str |
"Generic" | Relay manufacturer |
model |
str |
"Overcurrent" | Relay model |
| Phase Protection | |||
phase_pickup |
float |
None | Pickup setting (A) |
phase_curve |
str |
"IEC_NI" | Curve type (IEC_NI, IEEE_MI, etc.) |
phase_tms |
float |
None | Time Multiplier Setting |
phase_inst_pickup |
float |
None | Instantaneous pickup (A) |
phase_inst_delay |
float |
0.0 | Instantaneous time delay (s) |
| Ground Protection | |||
ground_pickup |
float |
None | Ground pickup setting (A) |
ground_curve |
str |
"IEC_NI" | Curve type |
ground_tms |
float |
None | Time Multiplier Setting |
ground_inst_pickup |
float |
None | Ground instantaneous pickup (A) |
add_cb(net, ...)
Adds a Circuit Breaker.
| Parameter | Type | Default | Description |
|---|---|---|---|
net |
pandapowerNet |
Required | The network object |
bus |
int |
Required | Bus index |
rated_voltage_kv |
float |
Required | Rated voltage (kV) |
continuous_current_a |
float |
Required | Rated continuous current (A) |
interrupting_rating_ka_sym |
float |
Required | Symmetrical interrupting rating (kA) |
operating_time_cycles |
float |
5.0 | Opening time in cycles (at 60Hz) |
cb_type |
str |
"VCB" | Type (VCB, ACB, OCB) |
2. Analysis Functions
run_coordination_analysis(net, ...)
Tests coordination between protective devices.
| Parameter | Type | Default | Description |
|---|---|---|---|
net |
pandapowerNet |
Required | The network object |
test_currents |
List[float] |
None | List of fault currents to test (A) |
fault_type |
str |
"phase" | "phase" or "ground" |
export_csv |
bool |
True | Save results to CSV |
output_dir |
str |
"data" | Output directory for CSV |
run_sc_analysis(net, ...)
Performs IEC 60909 short circuit calculation.
| Parameter | Type | Default | Description |
|---|---|---|---|
net |
pandapowerNet |
Required | The network object |
export_csv |
bool |
True | Save results to CSV |
check_breakers |
bool |
True | Check if fault duty exceeds breaker rating |
output_dir |
str |
"data" | Output directory |
3. Plotting
plot_tcc_curves(relays, ...)
Generates Time-Current Characteristic curves.
| Parameter | Type | Default | Description |
|---|---|---|---|
relays |
List[Relay] |
Required | List of relay objects to plot |
current_min |
float |
10 | Minimum current on X-axis |
current_max |
float |
10000 | Maximum current on X-axis |
fault_type |
str |
"phase" | "phase" or "ground" |
title |
str |
"TCC..." | Plot title |
filename |
str |
None | Output file (e.g. "tcc.png") |
figsize |
tuple |
(10, 6) | Figure size (width, height) |
Supported Curves
IEC 60255:
IEC_NI(Normal Inverse)IEC_VI(Very Inverse)IEC_EI(Extremely Inverse)IEC_LTI(Long Time Inverse)
IEEE C37.112:
IEEE_MI(Moderately Inverse)IEEE_VI(Very Inverse)IEEE_EI(Extremely Inverse)
IEC 61363 (Marine):
IEC_61363_S(Short Time Delay)IEC_61363_L(Long Time Delay)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file relay_coordination-1.0.2.tar.gz.
File metadata
- Download URL: relay_coordination-1.0.2.tar.gz
- Upload date:
- Size: 15.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d9d1d1918fd7cab8fb754ccfc430ef67895747a71b4eb16403779aa9056294e
|
|
| MD5 |
f5aff3feb0f238614453c39d197b0fa1
|
|
| BLAKE2b-256 |
b20db5ec0b876ee1ebf265d4f0e6774a842092074d4cfcd12cb4a512fd9803da
|
Provenance
The following attestation bundles were made for relay_coordination-1.0.2.tar.gz:
Publisher:
publish.yml on studikumbang/relay_coordination
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
relay_coordination-1.0.2.tar.gz -
Subject digest:
1d9d1d1918fd7cab8fb754ccfc430ef67895747a71b4eb16403779aa9056294e - Sigstore transparency entry: 956133835
- Sigstore integration time:
-
Permalink:
studikumbang/relay_coordination@ecc46c4ae00b359166f4f6b9a3bb4a4533cf4505 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/studikumbang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ecc46c4ae00b359166f4f6b9a3bb4a4533cf4505 -
Trigger Event:
push
-
Statement type:
File details
Details for the file relay_coordination-1.0.2-py3-none-any.whl.
File metadata
- Download URL: relay_coordination-1.0.2-py3-none-any.whl
- Upload date:
- Size: 19.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34f1f571f6b2e928126884a71e87a343518c37bf70b6b3f97d251117a0944182
|
|
| MD5 |
d54d47c261571062563e575f3142497c
|
|
| BLAKE2b-256 |
4321bae7cf6a9a4bcf4d2daaf509e72763299ffa86bf80c4a7fc84ecf2211a28
|
Provenance
The following attestation bundles were made for relay_coordination-1.0.2-py3-none-any.whl:
Publisher:
publish.yml on studikumbang/relay_coordination
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
relay_coordination-1.0.2-py3-none-any.whl -
Subject digest:
34f1f571f6b2e928126884a71e87a343518c37bf70b6b3f97d251117a0944182 - Sigstore transparency entry: 956133836
- Sigstore integration time:
-
Permalink:
studikumbang/relay_coordination@ecc46c4ae00b359166f4f6b9a3bb4a4533cf4505 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/studikumbang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ecc46c4ae00b359166f4f6b9a3bb4a4533cf4505 -
Trigger Event:
push
-
Statement type: