Open Source Phasor Data Concentrator
The openPDC administered by the Grid Protection Alliance (GPA) is a complete Phasor Data Concentrator software system designed to process streaming time-series data in real-time. Measured data gathered with GPS-time from many hundreds of input sources is time-sorted and provided to user defined actions as well as to custom outputs for archival.
A phasor data concentrator is designed to receive streaming synchrophasor data from phasor measurement units (PMUs) installed on power transmission lines and align this data by GPS time-tag (i.e., it "concentrates" the data based on time). The output of a PDC is a time-synchronized dataset that is forwarded on one or more software applications. For more information on the functional requirements of a PDC see: Phasor Data Concentrator Requirements
The openPDC is much more than just a data concentrator, it is a flexible platform for processing high-speed time-series data that can adapt with changing technology to provide a future-proof phasor data architecture. The openPDC can be used to distribute data (both real-time and historical) to consuming applications and can be installed anywhere within the synchrophasor infrastructure, even on fanless computers that run in a substation environment.
Although the primary purpose of the openPDC is concentration and management of real-time streaming synchrophasors, by having its functionality based on GPA's Time-Series Library the openPDC inherits a modular design that allows it to be classified as a generic event stream processor:
The openPDC implements a number of standard phasor protocols which can be used to receive data from devices. The supported protocols include IEEE C37.118, IEC 61850-90-5, IEEE 1344, BPA PDCstream, F-NET, SEL Fast Message, and Macrodyne among others.
Using the Time-Series Library, the openPDC can be configured to archive to any historian system, however, the system also includes an available built-in historian, the openHistorian, for data archival. The local historian comes with a visualization and extraction tool, a high-speed local API and web services, all of which can be used to extract and monitor the data being archived in real-time. The files produced by the historian can also be analyzed using Hadoop.
With version 2.1 or later, the openPDC can be deployed in POSIX environments as well as on Windows.
Other features include:
- Lossless phasor data transformation and replication with the ability to create a configurable number of output streams
- Extensive performance statistic history such as average latency, data quality and time code errors
- Generic configuration database with support for Microsoft SQL Server and Oracle as well as free alternatives such as MySQL and SQLite
- Distributed multi-node architecture supported for high availability and throughput
- Provided output adapters for multiple historians including the openHistorian, OSI-PI Historian and Hadoop.
- Automated data availability reporting
Documentation and Support
- Documentation for openPDC can be found here.
- See: Getting Started with the openPDC.
- Get in contact with our development team on our new discussion board.
- Check out our old discussion board to see if your question has already been answered.
- Check out the wiki.
- For Windows:
- Make sure your system meets all the requirements below.
- Choose a download below.
- Unzip if necessary.
- Run openPDCSetup.msi.
- Follow the wizard.
- For POSIX OS:
- .NET 4.6 or higher.
- 64-bit Windows 7 or newer or POSIX OS, e.g. Linux or Mac.
- Database management system such as:
- SQL Server (Express version is fine)
- SQLite* (included, no extra install required)
* Not recommended for large deployments.
- Download the latest stable release here.
- Older releases are also available here.
- Download the nightly build here.
If you would like to contribute please:
- Read our styleguide.
- Fork the repository.
- Code like a boss.
- Create a pull request.
openPDC is licensed under the MIT license.