Skip to content

rte-france/digital-fault-recording-database

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Electrical Signals Databases

Citation:

@online{DatabaseRTE, author = {PresvĂ´ts, Corentin and Prevost, Thibault},
title = {Database of Voltage and Current Samples Values from the French Electricity Transmission Grid, Réseau de Transport d'Electricité (RTE), France}, url = {[https://github.com/rte-france/digital-fault-recording-database/](https://github.com/rte-france/digital-fault-recording-database/)}, year = {2024}, }

Alternative download links

As we are presently encountering quota issues with the biggest file download, you can go to : https://dfrdb.rte-france.com/ to download the files.

Voltages and Current Database, DATA_S

This database comprises 12053 measured voltage and current waveform signals (phase-ground) on high voltage lines of the French electricity transmission grid during various faults.

Signal Characteristics

All signals are stored in a list DATA_S of shape (12053, 6, 21000)

  • 12053 number of observed faults

  • 6 signals per observed fault (v1, v2, v3, i1, i2, i3)

  • 21000 samples per signal (3.28125s)

  • Nominal frequency of the network 50 Hz

  • Nominal voltage 90 kV

These signals are only a subset of all faults recorded, selected on waveform shape.

Sample Characteristics

The sampling frequency is 6400 Hz

The number of bits to encode a sample is 16 bits

Quantization levels range from -32767 to 32767

The quantization step size for voltage signals is 18.310 V

The quantization step size for current signals is 4.314 A

Examples of Observed Voltage and Current Signals

Signal 1

image image

Signal 2

image image

Signal 3

image image

Transient Signals, DATA_u and DATA_i

The lists DATA_u and DATA_i are vectors of voltage and current signals derived from DATA_S.

DATA_u and DATA_i contain 30000 signals of size 128 samples, corresponding to one period of the nominal frequency of the network at 50 Hz.

To obtain DATA_u and DATA_i, each voltage signal is temporelly segmented into 128 samples. A transient selection criterion is applied to each segment. The signal is kept if:

  • the standard deviation of the signal is greater than 100 times the quantization step (to remove windows where the signal amplitude changes little)
  • if the mean absolute value of the signal is greater than 2000 V

If the voltage signal are retained, the current signal are also retained. DATA_u[k] and DATA_i[k] are therefore derived from the observation of the same conductor.

Examples of Recovered Transient Voltage Signals

Image1 Image2 Image3 Image4 Image5
Image6 Image6 Image8 Image9 Image10
Image10 Image10 Image10 Image10 Image10
Image10 Image10 Image10 Image10 Image10
Image10 Image10 Image10 Image10 Image10

Download DATA_u, DATA_i, and DATA_S

Download the npz files DATA_S, DATA_u and DATA_i.

Space required to download the databases :

DATA_S.npz : 2 GB

DATA_u.npz : 10 MB

DATA_i.npz : 5 MB

then with python run

import numpy as np
import matplotlib.pyplot as plt

DATA_S_load = np.load('DATA_S.npz')['DATA_S'] # Load DATA_S from the npz file 
DATA_u_load = np.load('DATA_u.npz')['DATA_u'] # Load DATA_u from the npz file
DATA_i_load = np.load('DATA_i.npz')['DATA_i'] # Load DATA_i from the npz file


## test 
print("DATA_S_load",np.shape(DATA_S_load))
print("DATA_u_load",np.shape(DATA_u_load))
print("DATA_i_load",np.shape(DATA_i_load))

t=np.linspace(0,(21000-1)/6400,21000)
for k in range(10):
    fig=plt.figure(figsize=(15,5),dpi=100)
    for i in range(3):
        plt.plot(t,DATA_S_load[k][i]*18.310,lw=2,label='v{}'.format(i+1))
        plt.xlabel('t (s)')
        plt.ylabel('Voltage (V)')
        plt.grid( which='major', color='#666666', linestyle='-')
        plt.legend()
        plt.minorticks_on()
        
    fig=plt.figure(figsize=(15,5),dpi=100)
    for i in range(3):            
        plt.plot(t,DATA_S_load[k][i+3]*4.314,lw=2,label='i{}'.format(i+1))
        plt.xlabel('t (s)')
        plt.ylabel('Courrent (A)')
        plt.grid( which='major', color='#666666', linestyle='-')
        plt.legend()
        plt.minorticks_on()   

Prerequisites

  • numpy

  • matplotlib.pyplot

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published