2. 2
Business Approach
• The objective of GPA development
projects is “installed systems in production
use by utilities”
• Solutions are open source under a
permissive license with collaboration
encouraged in multiple dimensions
• GPA pivots quickly with new technology to
provide solutions – and we are purposely
not tied to any particular approach,
method, tool or standard
3. 3
GPA’s Clients
• DOE
• EPRI
• NSF
• Dominion
• Southern Company
• Georgia Transmission
• OG&E
• National Grid
• EPB
• PeakRC
• SDG&E
• PG&E
• Entergy
• MISO
• New England ISO
• FP&L
• Duke Energy
• AESO
• TVA
4. 4
GPA Core Technology
• Grid Solutions Framework
• Time Series Library
• Gateway Exchange Protocol
(and Zero MQ)
• Web Solutions Framework
• SNAPdb Engine
5. 5
An Architecture of Component Reuse
• GPA products are light weight and leverage
the functionality provided by the GSF – which
contains the large majority of GPA’s open
source code.
• GPA quickly incorporates the latest
updates/revisions from Microsoft to take
advantage of performance and security
improvements. (Now using .NET 4.6.1 – November 2015)
• GPA libraries are tested on multiple platforms
(Windows, Linux, Mac) to assure wide high
use and reusability
6. 6
Grid Solutions Framework v2.1.167
• The Grid Solutions Framework
(GSF) is a comprehensive
collection of classes and methods
useful for any .NET project.
• GSF is the foundational code
library for all GPA products. It
includes hundreds of class libraries
that extend or expand the
functionality included in the .NET
Framework.
• GSF has around a half-million lines
of actual code and 150,000 lines of
comments spanning more than 75
assemblies - reference the online
documentation for complete class
details:
Download GSF from:
https://github.com/GridProtectionAlliance/gsf
– or –
http://www.nuget.org/
7. 7
Time-Series Library
• Core collection of classes
used to manage, process and
respond to dynamic changes
in fast moving streaming
time-series data in real-time
• Allows applications to be
architected as measurement
routing systems using “Input”,
“Action” and “Output” adapter
layer
• Any application can host the
framework which will allow a
system to become a “real-
time measurement bus”
8. 8
GEP Features
• Open and non-proprietary
• True pub/sub, measurement-based protocol
• Automated exchange of authorized metadata
• Tightly-compressed, binary serialization of time-
series values
ID, time-stamp, value, flags
• Adapters provided in .NET, C/C++ and Java for
convenient native integration in other systems
• Lossless compression is included
• Half the bandwidth (TSP) of C37.118 (GSF V2.1.166)
• Available transports include TLS, TCP, TCP with
UDP, TLS with AES key-rotated UDP, or ZeroMQ
9. 9
ZeroMQ Benefits
• Numerous language and platform integration points – all
integrated and compatible
• Small and light-weight with the performance to support
high-volume phasor data flows
• Larger variety of message patterns with a range of
loss/reliability characteristics – pub/sub; client/server;
brokered.
• Content of the message flexible and easily
accommodates phasor measurement pattern – ID,
timestamp, value, flags
• Ability to scale well is inherent in architecture -- scales
easily from intra-application communication, to inter-
application communication to wide-area communication
10. 10
Summary of CERN* Evaluated Middleware
* A. Dworak, F. Ehm, W. Sliwinski, M. Sobczak, CERN, Geneva, Switzerland, 2011
11. 11
Empirical Protocol Comparisons
0
2
4
6
8
10
12
14
16
GEP Uncompressed GEP Lossless
Compression
IEEE C37.118
Protocol Data Size Comparisons per Transport
in Bytes / Measurement
UDP TCP
0% 2% 4% 6% 8% 10% 12%
GEP Uncompressed
GEP Lossless Compression
IEEE C37.118
UDP Loss
Stateful
Compression
Packet
Compression
Using TCP, GEP requires
half the bandwidth of C37.118
From Testing at PeakRC
April 2016
12. 12
Web Solutions Framework
• Allows browser-based
interaction with GPA services
• A web server is not required
-- but can be used to provide
content in different security
zones via reverse proxy
• Includes bootstrap which
makes content responsive to
take the format of the user’s
platform (mobile, tablet)
• Uses a collection of standard
components to enable full
CRUD interaction with
relational data systems.
13. 13
SNAPdb Data Structure
• B+Tree based that supports out of sequence
insertion
• Time support to +/- 100 nanoseconds (ticks)
(with extended time precision fields available)
• Data can be of any type that can fit in 192-bits
(for example, float32, float64, complex32, complex64, int32,
int64, uint32, uint64, char and string16)
• Data stored sequentially in compressed 4K
structures
• Tested and optimized for phasor data
14. 14
Open Source Software for Electric Utilities
1. Synchrophasors
2. Disturbance and PQ Monitoring
3. Security
4. Others
5. GPA Services Summary
15. 15
1. Open Source Synchrophasor Products
• openPDC – Version 2.1.120 SP1
• SubstationSBG – Version 1.0.126
• PDQTracker – Version 0.9
• PMU Connection Tester – Version 4.5.5
• GEP Subscription Tester – Version 1.0
• Synchrophasor Stream Splitter – Version 1.0.7
• Project Alpha
• Real-Time Phasor State Estimator (NSF / RPI)
• openECA (Under Development)
16. 16
openPDC
• The electric industry’s
work-horse PDC supporting
the largest synchrophasor
data systems in North America
• Massively threaded, distributed
multi-node architecture enables
high availability and throughput
• Logs performance history
every 10 seconds – includes
latency, data completeness,
and connection errors, among
others
• Supports Windows, Linux & Apple OSX deployments
• Easily extensible with the development of input, output or action
adapters
• Remote manager simplifies administration
17. 17
SubstationSBG
• A purpose-built security gateway for synchrophasor data
• Tested and deployed on rugidized, fanless substation
computers (SEL-3355 recommended)
• Data is persisted locally in a short-term rolling archive and is
used to automatically fill any data gaps in the central historian
• Pub/Sub communication more secure and intrinsically more
reliable that IEEE 37.118
TRANSPORT
Command
Channel
Data
Channel
PMUs & IEDs
C37.118
18. 18
PDQ Tracker
• Logs information on the two major dimensions of information quality
• Data Completeness (Availability)
• Data Correctness (Accuracy)
• Stand alone product for use
within any synchrophasor
data architecture
• Outputs to support:
• Business processes for
correcting / improving data
quality
• Integration with applications
to flag incorrect data
19. 19
Synchrophasor Stream Splitter
• Generates multiple phasor data streams from a
single synchrophasor streaming source
• Supports data flows across security boundaries
where communications must be initiated from the
higher security zone
• Transparent to both sending and receiving
systems
• All common synchrophasor protocols are
supported (e.g., IEEE C37.118, IEC 61850-90-5,
F-NET, SEL Fast Message, Macrodyne and BPA
PDCstream)
• Support of incoming and outgoing TCP & UDP as
well as IPv4 & IPv6
20. 20
PMU Connection & GEP Testers
• The industry standard for verification that the
data stream from a synchrophasor
measurement device can be successfully
received and parsed
• Supports ALL phasor data protocols
including:
IEEE C37.118 (Version 1 and Version 2)
IEEE 1344, BPA PDCstream
SEL Fast Message
UT-K FNET streaming data protocol
IEC 61850-90-5
Macrodyne
21. 21
Project Alpha (source code only)
• A Visual Studio solution that jump starts development of new
products using GPA’s Time-Series Library.
• Allows developers to
easily develop and
debug their own action
adapters from within
a single solution
• Includes all the
components necessary
- data base scripts,
- configuration utilities,
- a management
application, among other components to develop a new time-
streaming data application
• Can be used to develop both proprietary and open-source solutions
22. 22
openECA – 2016 Plans
openECA is a two
year, $5M project
funded by DOE.
DOE FOA 970
DE-OE-778
23. 23
2. Open Source PQ Products
• openMIC – Meter Information Collection System – Version 0.9
• PQDIF Explorer – Version 1.1
• openXDA – eXtensible Disturbance Analytics – Version 1.5.1
• openEAS – Extended Analytic Services – Version 1.0
• EPRI open PQ Dashboard – Version 1.0.3
• openSEE – Disturbance waveform viewer – Version 2.0
• HISTrend – Historical Data Trending and Display – Version 0.9
• EPRI PQ Mark – Planned for 2016
25. 25
openMIC – Meter Information Collector
• Schedules device
interrogation and
manages the data
returned from DFRs
• Via IP
• Via Modem (RAS &
FTP)
• Logs and reports
meter problems
• Includes a mobile-
ready web app to
configure openMIC
and view DFR
interrogation
statistics
Version 0.9
26. 26
PQDIF Explorer
• Allows discovery of all information within the binary format of PQDIF
(IEEE 1159.3) --including information hidden by higher-level PQDIF
parsing tools
• Good validator for
vendors developing
PQDIF writers
• Valuable
implementation
example of GPA’s
open source PQDIF
parser
Version 1.0
27. 27
openXDA – eXtensible Disturbance Analytics
• Automatically processes and analyzes event files from disturbance
monitoring equipment such
as DFRs and PQ monitors
• Loads this file-based
data into an enterprise
grade relational database
• Enables on-the-fly analytics
such as single and double
ended fault location, voltage
sag and swell analysis,
breaker timing evaluation,
among others.
• Supports both open source and proprietary analytics
• The data layer for Open PQ Dashboard and openSEE
Version 1.51
28. 28
openEAS – Extended Analytic Services
• A sandbox to
deploy research-
grade analytics in
production
• Matlab DLLs
Implemented:
Incipient cable
fault analysis
(2015)
Capacitor
switching
transient analysis
(2016)
• Code template and
draft user’s guide
developed so that
others can develop
their own openEAS
apps
Version 1.0
29. 29
EPRI Open PQ Dashboard
• A web-based enterprise dashboard that nicely
complements traditional vendor-provided waveform
analysis tools
• Displays the results of the analytics that run automatically
in openXDA
• Provides drill-down from wide-area data displays all the
way to the waveforms that were analyzed to produce the
analytic results
Version 1.0.3
30. 30
openSEE – Waveform Viewer
• Browser-based tool to display wave-form data contained
in the openXDA database
• Recently updated to Version 2.0
Significantly improved performance
All open source graphics (FLOT)
Next / Back buttons to move though events on the line
Improved navigation / zooming / axis and legend labeling
Version 2.0 SYSTEM EVENT EXPLORER
31. 31
HISTrend – Historian Trending
• Historical data
trending and
display
• Shows
Min/Max
and average as
well as alarm
limits
Version 0.9
32. 32
EPRI PQ Mark – 2016 Plans
• Includes 2 Major Components
• A utility-side service to transfer PQDIF files to EPRI as they
become available
• CSF’s – High security, Low hassle/maintenance
• The ERPI Benchmarking data repository
• Built from openXDA & the Open PQ Dashboard
• Will include significantly expanded business intelligence
analytics (Data Cubes)
• Participating utilities can log into EPRI’s system to see results
in near-real time
Objective – To develop a proof-of-concept system that
automates the collection and analysis of PQ data to enable
nationwide benchmarking studies
34. 34
SIEGate
• A security-centric appliance designed from the ground up to reliably
exchange streaming measurement and file-based data
• Native parsers available for all phasor protocols, COMTRADE,
among others
• Importantly, SIEGate reduces the cost of data integration with others
through on-the-fly data model transformation
• Pub-Sub approach to data exchange reduces bandwidth
requirements over other data exchange practices
35. 35
ARMORE
• Distributed, secure communications platform placed near
legacy devices decreases the reach of insecure legacy
protocols
• Increases reliability and security of communications
Fault tolerant, peer-based communications (DDS)
• Enables value-add security for both legacy and modern
communications
Passive Mode - Span port
Transparent Mode - Inline inspection, optional enforcement
Encapsulated Mode - Inline inspection, encapsulated transfer with optional
encryption, optional enforcement
36. 36
openSPM
• NERC CIP: Each Responsible Entity shall implement
one or more documented process(es) that collectively
include each of the following:
• For applicable assets a process to:
- Track Patches
- Evaluate Patches
- Install Patches
• The openSPM application will track:
• The patches considered for applicability.
• The date that the assessment process began and
ended for each patch considered.
• The date that:
- An applicable patch was implemented (or)
- The remediation plan was completed.
37. 37
4. Other Open Source Products
• MiPlan – Generalized planning web app that supports
enterprise mitigation planning
• EPB SOE Tools for distribution systems
• OpenHistorian – open source time series data archival
• Broccoli Sharp – C# interface to BRO
38. 38
MiPlan
• Generalized action plan management
application
• 8 standard plan templates included
• Templates include “Mitigation Planning”
• This application is tightly integrated with
openSPM so that mitigation plan
development can be tracked for CIP
compliance
39. 39
SOE Tools
• Automated processing of SOE from 1200 Intellirupters
at EPB Chattanooga
• Includes icon-based SOE display for rapid cognition and
assessment
Funded by EPRI
40. 40
openHistorian
• High performance processing of time-series data
For both data
archival and retrieval
High frame rate
application refresh
Fast extraction of
large data blocks
• Support multiple data
types
• GPS precision time
stamps
• Ability to insert data out of sequence
• Lossless data compression
41. 41
Broccoli Sharp
• Developed as part of DOE ARMORE project
• A C# API for the Bro Client Communications
Library (Broccoli). It’s a collection of managed
.NET classes that wrap Broccoli functionality.
• Enables C# based interaction with the Bro
Intrusion Detection System
https://www.bro.org/sphinx/components/broccoli/broccoli-manual.html
42. 42
5. GPA Services Summary
• Software Development
• System and Data Integration
• Data System Design and Architecture
• Installation, Test and Production
Deployment
• Product Maintenance and Support