Quick Links
News -- About the openPDC -- Commercial Extensions -- Registration -- Community Involvement -- Code Blog -- Nightly Builds -- Attributions

The openPDC is a complete set of applications for processing streaming time-series data in real-time. Measured data is gathered with GPS-time from multiple input sources, time-sorted and provided to user defined actions, then dispersed to custom output destinations for archival.

collage.jpg

News

June 30, 2010 The Grid Protection Alliance has deployed the June 2010 release of the openPDC as a stable build today. Industry feedback and operational experience has informed numerous improvements and additions in this latest version to futher improve usability and add desired features all while maintaining high reliability. One of these great new features is a user can add a PMU or concentrator into the system directly using only the openPDC manager. It will query the device’s configuration using connection information fed to the openPDC and the resulting configuration will be added directly into the New Device Wizard for addition into the system. Additionally the solidified security stance sees other improvements with the release of an authentication API in the Framework along with support for encrypted settings when using the Configuration Editor. Compatibility has been expanded with options for native 64-bit installers for the PMU Connection Tester and the openPDC. Further an overhauled database structure includes support for a new statistics feature which will track important metrics expected to be needed by grant awardees. A Database Upgrade Utility will allow the user to migrate the data from the existing database into the new schema. Overall there are more than 300 improvements made in various portions of the code and the primary submitters to the project at Grid Protection Alliance look forward to your comments. See the full feature list preview for more information.

May 4, 2010 The source code and current build for the NASPI PMU Registry has been added to the openPDC open source community. The purpose of the PMU Registry is to provide a structure for mapping synchrophasor data from multiple substations and multiple utilities so that this data can be used as an integrated set of information with all parties knowing where and how the phasor measurements are taken. As a name server, one of the most important services of the PMU registry is provide attribute information about phasor measurements as based on a unique measurement key.

May 1, 2010 The June 2010 production release of the openPDC is close approaching and we've been working hard to add some important features to the openPDC as well as to make it the most stable and feature rich version of the system ever. Some of these features include multi-mode down-sampling, improved support for IPv6, more fault tolerant PMU handling, ability to use cached device configurations for pure UDP streams without the need for the device to periodically send a configuration frame, preemptive publishing that allows the PDC to send data frames ahead of schedule so long as all the expected data has arrived, several common power system calculations including loss-of-field and frequency excursion detection, a new discarded flag that will archive if a measurement actually made it into the real-time stream, streaming playback utility that can be used to replay events from the local historian archive and extract large datasets, as well as several major productivity enhancements to the openPDC Manager including automatic retrieval of device configuration without the need to upload a configuration file and many popup connection string builders to simply system configuration. See the full feature list preview for more information on this highly anticipated release.

April 1, 2010 The Grid Protection Alliance (GPA) has assumed responsibility for the maintenance and development of the openPDC. GPA is building on the six years of work on the openPDC by the Tennessee Valley Authority. TVA will continue to be a major user of the openPDC as they operate the major PDC for the U.S. Eastern Interconnection. GPA is a not-for-profit corporation whose mission is to support the electric utility industry. GPA has entered into a contract with NERC to improve the openPDC to enable it to be implemented as a multi-node system that will enable the reliable and cost effective collection of phasor data in the US.

March 3, 2010 As the openPDC is being widely adopted, many vendors are now in the process of providing commerical plug-in's and connectivity to the openPDC that work directly with their products. You can now monitor the openPDC Commercial Extensions page to watch for vendor supported commerical products that directly integrate with the openPDC.

February 23, 2010 AREVA T&D has announced commercial support of the openPDC, here is the official statement:

“AREVA is pleased to provide support services to companies who would like to implement the openPDC. These services include:
  • Deployment of the openPDC,
  • Configuration of the openPDC to communicate with existing PMUs and PDCs
  • Annual maintenance support for resolution of critical openPDC software issues
  • Periodic implementation of openPDC software patches and upgrade releases
  • Training
  • openPDC customization & related consulting services
Please contact Jay Giri for further information at jay.giri@areva-td.com

January 28, 2010 We are excited to introduce the openPDC Management System! As you know, the primary components of openPDC Management System have been under development for some time. In the latest code release you will find a very useful application called the “openPDC Manager” that is used to manage multiple openPDC instances from one simple to use web application. It provides tremendous improvements that simplify configuration and operation of the openPDC, including a device configuration wizard that will take a configuration collected directly from a device and use this information to automatically configure the system. Click here for more information.

Other recent developments include the addition of the openPDC Data Quality and Monitoring System that allows users to monitor any number of system signals for quality. The data quality system currently includes a range tester, a data flat-line tester and a timestamp quality tester. The quality monitoring system also includes a series of web services that allow consumers to take monitored signal quality and integrate the results into existing operational alarming systems. Click here for more information.

October 7, 2009 The Tennessee Valley Authority (TVA) is pleased to publicly provide the source code for its data concentration software known in the industry as the Super Phasor Data Concentrator (SPDC) -- see press release. It is our hope that this code will be used to support the development of the smart grid and facilitate the Department of Energy (DOE) plans to accelerate the use of synchrophasors in the U.S. as part of the federal economic stimulus programs. We believe that this software will be an enabling technology for both vendors and the electric power system industry as a whole.

About the openPDC

The open source phasor data concentrator (openPDC) is a system that is used to manage, process and respond to dynamic changes in fast moving streaming phasor data. More specifically, the openPDC can process any kind of data that can be described as “time-stamped measured values”. These measured values are simply numeric quantities that have been acquired at a source device and are typically called points, signals, events, time-series values or measurements. Examples of measurements include temperature, voltage, vibration, location, luminosity and, of course, phasors. When a value gets measured, an exact timestamp is taken, typically using a GPS-clock for accuracy – the value, along with its timestamp, is then streamed to the openPDC where it can be “time-aligned” with other incoming measurements so that an action can then be taken on a complete slice of data that was all measured at the exact same moment in time.

Although the system was specifically developed to manage real-time streaming synchrophasors and generate time-sorted concentrated data streams using standard protocols, its completely modular based design makes the system a general purpose distributed stream processing engine. This adaptive system design also makes it simple to integrate the openPDC with other systems that you may want to use to help manage and archive streaming event data (e.g., Microsoft's StreamInsight CEP Platform, OSIsoft's PI Historian, etc.) The openPDC will have a broad range of uses outside of synchrophasors where real-time streaming measured data needs to be processed and archived, for example: consumer energy usage (smart-grid), seismic metering, high-speed location tracking, fast changing temperature monitoring, surveillance applications, network traffic processing, etc.

Below is an image that shows the openPDC modular system design used to manage streaming measurements. User defined input adapters are used to collect streaming data and assign incoming measurements an ID. Measurements are then sorted by time and passed along to custom action adapters that process the data. Finally, all measurements are sent to output adapters that are used to queue up data for archival. The high level data flow is: map, sort, queue where map is the step of assigning an ID to a measurement, sort is the step of sorting the measurements by time so that an action can be taken, and queue is the step of queuing up measurements so they can sent to different outputs. The system loads user defined “assemblies” to perform all of these steps – that is, users can develop their own input, action and output adapters to provide extensible processing of any streaming measured data. The project includes a variety of adapters to make the system operate as a “phasor data concentrator” as well as to archive time-series measurements into files that can be processed in bulk by Hadoop. The map-reduce code needed to allow Hadoop to mass process the time-series archive files is also included.

openPDC Data Flow.jpg

Click here for a technical diagram that more accurately describes the adapter relationships and data flows.

Background

TVA began development of a Phasor Data Concentrator (PDC) in 2004, in order to advance the efforts of the Eastern Interconnection Phasor Project (EIPP). With the help of this system the EIPP continued to grow, is now under NERC oversight and has been expanded as the North American Synchrophasor Initiative (NASPI). TVA has made this PDC available to the public as an open source project called the openPDC.

Phasor measurements complement traditional electric utility control systems and measure electrical information on the grid in order to determine its health. The electric system information is sampled at very high speeds with individual measured values getting transmitted at 30 times per second. Each measurement carries a precise time stamp taken from GPS satellites so that the electric grid can be analyzed at a specific (synchronized) time (see also: What is a phasor?). Advancing the use of these "synchrophasors" is considered to be among the most important next steps to the improvement of power systems.

TVA was among the early pioneers in the use of synchrophasors having installed its first phasor measurement units (PMUs) in 1993. TVA currently collects information from over 120 PMUs throughout the eastern half of North America. Data continually streams to the TVA SPDC from locations ranging from Miami, Florida to Manitoba, Canada.

PMU Map
Click for larger image

The current implementation of this project at TVA handles:
  • Space utilization rate of 1.5 GB/hr (36 GB a day)
  • Measurement archival rate of 150 million/hr (3.6 billion a day)
  • 120 online PMUs
  • 1850 defined measurements

As of October 2009 the total synchrophasor storage totals more than 20TB.

Registration

In an effort to track usage and maintain accurate records of the openPDC, our license agreement requests that users register with TVA by visiting the following website: https://naspi.tva.com/Registration/. Only very basic information will be collected, and your name and personal information will be used for statistical purposes only. Also, if you choose to be notified we will let you know about any important updates to the openPDC.

Community Involvement

We provided the openPDC to the public with the goal that users would take the code and extend it. In the spirit of this cooperative effort, here are some items we are hoping the openPDC community can help with:
  • Building n-unit tests around critical system components
  • Additional needed protocol parsers (e.g., IEC 61850)
  • Standard historian output adpaters (e.g., OSI-PI, Instep, etc.)
  • Common useful action adapters (e.g., typical power calculations)
  • Improvements in security, optimizations and efficiency
  • Continued development of operational documentation

Click here for more information on becoming an openPDC developer.

Attributions

Primary Contributors

J. Ritchie Carroll Brian B. Fox
Pinal C. Patel Josh L. Patterson
F. Russell Robertson Mehulbhi Thakkar
Paul B. Trachian Stephen C. Wills
Darrell Zuercher Jian Ryan Zuo
Andy Hill Galen Riley

Other Contributors

Shyni John Jeffery Kinzer
Steven A. Lowe John H. Shugart
Tim M. Shults

Special Thanks

Rob St. Andre Craig Goodwin
Matthew Hauer Erich Heine
Alan Karlak Himanshu Khurana
Barbara Motteler Tim Yardley

Acknowledgements

Authors Project (Adaptation) License
Alex Kwok, Uwe Keim FTP code based on similar C# project (TVA.Net.Ftp.*) Code Project Open License
Leslie Sanford Multimedia.Timer class adaptation (TVA.PrecisionTimer) MIT License
James Brock DateTimePrecise adaptation (TVA.PrecisionTimer.UtcNow) Code Project Open License
Jeff Atwood Exception handling adaptation (TVA.ErrorManagement.ErrorLogger) Code Project Open License

Last edited Jul 2 at 8:11 PM by ritchiecarroll, version 98

 

Want to leave feedback?
Please use Discussions or Reviews instead.

Updating...
© 2006-2010 Microsoft | Get Help | Privacy Statement | Terms of Use | Code of Conduct | Advertise With Us | Version 2010.7.20.17027