rte-france / digital-fault-recording-database

Open Data Commons Open Database License v1.0
24 stars 8 forks source link

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)

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:

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