Giter Site home page Giter Site logo

oedisi-transient's Introduction

oedisi-transient

Transient data simulated in ATP-EMTP

Contents

The data is simulated through IEEE 123 bus system with 14 PVs in ATP-EMTP software. The ATP model is converted from an open-source model IEEE123_PV.xml via CIMHub. The data format is in CSV or COMTRADE(.cfg and .dat) file.
The data file label is named after the following rules:

  • Loading Condition: 0.4/1.0 ➡️ l1/l2
  • PV Capacity: 0.4/0.6/0.8/1.0 ➡️ c1/c2/c3/c4
  • Fault Location: ADJ1/197/450/82 ➡️ b1/b2/b3/b4
  • Fault Type: Three-phase/Single-phase/Line-to-line phase fault ➡️ f1/f2/f3

*The fault location defined in ATP model corresponds to the bus No. in XML file, which can be found in IEEE123_PV.atpmap. In addition, ADJ1 is a fault location outside the feeder, approximately 250 feet away.

For COMTRADE files only

Python Comtrade is a module for Python 3 designed to read Common Format for Transient Data Exchange (COMTRADE) files. Detailed information can be found here. These consists of oscillography data recorded during power system outages, control systems tests, validation and tests of field equipment, protective relaying logs, etc. The COMTRADE format is defined by IEEE Standards.

Installation

pip install comtrade

Plot

The example below shows how to open CFG and DAT files to plot (using pyplot) analog channel oscillography. The file_name can be modified according to the file desired.

import matplotlib.pyplot as plt
from comtrade import Comtrade

file_name = "ieee123_pv_l1c1b1f1"
rec = Comtrade()
rec.load(f"{file_name}.cfg", f"{file_name}.dat")
print("Trigger time = {}s".format(rec.trigger_time))

for i in range(rec.channels_count):
    plt.plot(rec.time, rec.analog[i])
    plt.legend([rec.analog_channel_ids[i]])
    plt.show()

Results

There are 58 measured variables under each corresponding scenario in one data file.

  • The variables which begin with SBUS or FAULT are system branch currents or node voltages, shown as below:
Variable Name Description Variable Name Description
SBUS A V-node Feederhead bus voltage in phase A SBUS C 25 C I-branch Feederhead current in phase C
SBUS B V-node Feederhead bus voltage in phase B FAULTA I-branch Fault current in phase A
SBUS C V-node Feederhead bus voltage in phase C FAULTB I-branch Fault current in phase B
SBUS A 25 A I-branch Feederhead current in phase A FAULTC I-branch Fault current in phase C
SBUS B 25 B I-branch Feederhead current in phase B FALTBC 112 C I-branch Fault current in phase C of line to line fault
  • The variables which begin with TACS section delimiter are inverter outputs, following the rules:
    • PV### specifies the inverter number, from 1..999
    • suffix V specifies the inverter's calculated RMS voltage (positive sequence in the case of three-phase); helpful to visualize the operation of undervoltage trip or ridethrough.
    • suffix I specifies the inverter's RMS current injection (positive sequence in the case of three-phase); sufficient to visualize the status of this inverter. If the RMS current drops to zero, it means either a voltage or frequency trip function activated.
    • suffix W specifies the inverter's estimated frequency (rad/s); helpful to diagnose grid synchronization issues.
    • suffixes A, B, C specify the inverter's instantaneous phase voltages; needed to impute PMU data for this inverter.
    • suffixes X, Y, Z specify the inverter's instantaneous injected currents; needed to impute PMU data for this inverter.

The fault is applied at 0.3s and never cleared. The time window is from 0.0s to 0.6s. Results of SBUS A/B/C 25 A/B/C I-branch in "ieee123_pv_l1c1b1f1" are shown below as examples. The units in Y-axis are Ampere (A).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.