pmudatacorrector
A GPS spoofing attack detection and correction of synchrophasor measurements
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.6%) to scientific vocabulary
Repository
A GPS spoofing attack detection and correction of synchrophasor measurements
Basic Info
- Host: GitHub
- Owner: dilanspsenaratne
- License: gpl-3.0
- Language: Opal
- Default Branch: main
- Size: 13.9 MB
Statistics
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
PMUDataCorrector: A GPS spoofing attack detection and correction of synchrophasor measurements
Table of Contents
About The Project
The PMUDataCorrector is an IEC 61131 software package for SEL Real-Time Automation Controller (RTAC). The PMUDataCorrector library provides real-time Global Position System (GPS) spoofing attacks detection and correction of wide-area synchrophasor data. The library consists of two parts. The first part is a python script to perform data pre-processing of power network information. The python script generates several .csv files that are required in the RTAC data correction library. The second part is a compiled RTAC library of a GPS spoofing attack detection and correction algorithm. The RTAC library captures the incoming phasor measurement units (PMU) measurements and provides GPS spoof corrected measurement, estimated angle biases, and a Boolean variable to indicate the presence of an attack.
Getting Started
Please refer the "Data Correction Library User Manual" pdf document in this repository for information on how to get started with the RTAC library, including necessary input data and expected output data.
Prerequisites
For the Data Preprocessing python script the user will need Python 3 installed and the python packages: numpy and pandas.
For the library the user will need ACSELERATOR RTAC® SEL-5033 Software with firmware version R145 or higher. The following SEL RTAC libraries are also required. - DescriptiveData V3.5.1.0 - DynamicVectors V3.5.3.0 - FileIO V3.5.6.2 - MathComplex V 3.5.1.0 - MathMatrix V3.5.2.0 - Queue V3.5.3.0 - Quicksort V3.5.1.0 - SEL IEC Types V3.5.0.0 - SysMem V3.5.12.0
Installation
Install the compiled library
The user will need to follow the following steps to install the provided compiled library to SEL RTAC - Insert -> under the user logic select "IEC 61131-3" -> Library - Click on "Manage Libraries" - Click on "Install New..." and browse to "PMUDataCorrector.compiled-library" - Close "Manage Logic Engine Libraries" window - Select "OSU PMUDataCorrector 1.0.0.11"
Start a project with library source code
- Method 1 (Using .exp file)
Click on "Import" and browse to "RTACPMUDataCorrectorLibrary.exp"
- Method 2 (Using XML files)
Create a new project with Project type "XML" and browse to the "RTAC XML files" folder
Testbed Implementation
The Opal RTDS (Real-Time Digital Simulator) Implementation and SEL Synchrowave Operations Implementation folders contain the projects required to implement the PMUDataCorrector in a testbed environment.
Opal RTDS Implementation
The majority of the files in this folder are automatically generated by RT-Lab, Opal-RT's RTDS configuration software. The simulator runs Matlab Simulink files.
The files created for this project are contained in: Opal RTDS/StateEstimator21PMUs/models/System_20220515
Description of Files
- System_20220515.slx: Matlab simulink model simulated by RTDS
- RTS96pinssimple_v2.xls: RT-Lab ePHASORSIM configuration of inputs and outputs
- simulation_vars.m: Matlab Simulink variable file for modifying the simulation
- RTS96pssestable.raw: PSSE v32 network description
- dynamics.dyr: PSSE v32 dynamics data for power system simulation
SEL Synchrowave Operations
These files are the configuration files for the project visualization in SEL Synchrowave Operations.
Description of Files
- RTS96onelineindicators.svg: SVG oneline diagram with GPS spoofing attack indicators
- sel-c37reader-config.zip: C37.118 configuration to receive data from RTAC
- sel-signalmonitor-config.zip: Configuration for enabling GPS spoofing alarm states
- dashboardnoattack.jpg: Synchrowave dashboard example during normal operation
- dashboardattackno_correction.jpg: Synchrowave dashboard during attack with no PMUDataCorrector
- dashboardattackwith_correction.jpg Synchrowave dashboard during attack with PMUDataCorrector
Authors
- Dilan Senaratne (senaratg@oregonstate.edu - Oregon State University, US)
- Travis Hagan (hagantr@oregonstate.edu - Oregon State University, US)
- Shashini De Silva (desilvas@oregonstate.edu - Oregon State University, US)
- Eduardo Cotilla-Sanchez (ecs@oregonstate.edu - Oregon State University, US)
- Jinsub Kim (kimjinsu@oregonstate.edu - Oregon State University, US)
License
Distributed under the GNU General Public License v3.0. See LICENSE for more information.
Acknowledgments
De Silva S, Kim J, Cotilla-Sanchez E, Hagan T. On pmu data integrity under gps spoofing attacks: A sparse error correction framework. IEEE Transactions on Power Systems. 2021 Mar 26;36(6):5317-32.
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Senaratne
given-names: Dilan
- family-names: Hagan
given-names: Travis
- family-names: De Silva
given-names: Shashini
- family-names: Cotilla-Sanchez
given-names: Eduardo
- family-names: Kim
given-names: Jinsub
title: "PMUDataCorrector"
version: 1.0.0.11
date-released: 2022-07-27
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2