Open PMU LabVIEW Project

Publish Date: Nov 30, 2018 | 4 Ratings | 2.00 out of 5 | Print


The PMU project for LabVIEW is the same code that is shipped pre-installed on the NI Grid Automation System. It can be used "as-is" to bring PMU compliant functionality to a CompactRIO system, but the real value comes from modifying and expanding the code to meet custom requirements that a specific utility may have.

Table of Contents

  1. Software Development Components
  2. Hardware Components
  3. Code Architecture
  4. Display
  5. Web Interface
  6. Using the Open PMU Project
  7. Communication with PDCs
  8. Download the Open PMU Project for LabVIEW 
  9. Additional Resources

1. Software Development Components

Developing a custom PMU application based on the Open PMU Project for LabVIEW requires the following software components.

Development Computer

  • LabVIEW 2015
  • LabVIEW 2015 Real-Time Module
  • LabVIEW 2015 FPGA Module
  • NI CompactRIO 15.0
  • LabVIEW 2015 Electrical Power Toolkit Professional Edition
  • GEMstudio Pro*

*GEMstudio Pro is used to develop the LCD display firmware. If you do not need to develop the LCD display firmware, GEMstudio Pro is not required.


CompactRIO Controller

Ensure that the following software components are installed to the CompactRIO controller through NI MAX.

  • HTTP Client with SSL Support 15.0.0
  • LabVIEW Real-Time 15.0.0
    • Language Support for Japanese 15.0.0
    • Language Support for Simplified Chinese 15.0.0
  • NI Application Web Server 15.0.0
  • NI System Configuration 15.0.0
  • NI System Configuration Remote Support 15.0.0
  • NI Web-based Configuration and Monitoring 15.0.0
    • Hardware Configuration Web Support 15.0.0
    • Network Configuration Web Support 15.0.0
    • Software Management Web Support 15.0.0
    • Time Configuration Web Support 15.0.0
  • NI Wireless Certificate Management Web Service 2.0
  • NI-RIO 15.0
    • CompactRIO Support 15.0
  • NI-VISA 15.0.0
    • NI-VISA Server 15.0.0
  • NI-Watchdog 15.0.0
  • Remote Panel Server for LabVIEW RT 15.0.0
  • Run-Time Engine for Web Services 15.0.0
  • SMTP Client with SSL Support 15.0.0
  • SSL Support for LabVIEW RT 15.0.0
  • System State Publisher 3.4.0
  • WebDAV Client with SSL Support 15.0.0
  • WebDAV Server 15.0.0


Back to Top

2. Hardware Components

The Open PMU Project was designed for the same hardware that the NI Grid Automation System contains.

  • cRIO-9068 chassis
  • NI 9242 voltage measurement module (quantity 2)
  • NI 9238 current shunt measurement module (quantity 2)
  • NI 9467 GPS module
  • NI 9437 HVDC binary input module

The Open PMU Project also provides example code for using the NI 9225 and NI 9227 to measure voltage and current data as well as recommendations for customizing the module set to address custom I/O requirements.


Back to Top

3. Code Architecture

The architecture uses a hub-and-spoke style messaging system to communicate with multiple, asynchronous processing engines.  This architecture is designed to aid in code modularity making it easier to reuse and expand the functionality.  The LabVIEW code manages all of the power related calculations, time synchronization, general system management, web services, and protocol communication.

Open PMU LabVIEW Code

Figure 1. The LabVIEW code for the PMU Project is designed for modularity, reuse, and expansion.


Back to Top

4. Display

The project for the Amulet touch screen display is included as well.  An API for LabVIEW is used to make calls to the microprocessor on the display and pass data.  A license for GEMstudio is required to edit the display project.  This license can be purchased from Amulet Technologies or is included with the Amulet Technologies 4.3 in. Getting Started Kit from NI.  There is two-way communication between the display and the CompactRIO controller to pass data and commands.  The shipping code for the Grid Automation System is very simple but can be augmented to fully take advantage of the more advanced graphic capabilities of the Amulet display.

Figure 2. GEMstudio is the development environment for the touchscreen display used in the Grid Automation System.  The GEMstudio project is included along with the LabVIEW code.


Back to Top

5. Web Interface

The LabVIEW code running on the CompactRIO controller runs a web service to provide data to a thin client hosted on the controller.  Any number of common, popular web tools and languages can be used to develop thin clients compatible with the web services hosted by LabVIEW.  The code and materials for the shipping thin client interface is also included with the project.

Figure 3. The thin client web interface design is included with the project.


Back to Top

6. Using the Open PMU Project

The code is provided as is to be used as a starting point for the development of unique, customized intelligent electronic devices used on a utility grid.  It is free for modification and installation with the dozens of CompactRIO controllers and over 100 unique sensor and signal I/O modules.

The source code guide is provided with the project and highlights the code architecture, best practices for running and building the application, and for customizing the source code.

Components like the open PMU project for LabVIEW add to the NI technology platform and place more capability into the hands of the utility grid domain experts helping them to solve new and unique problems in less time than the traditional approach.  These tools are also ideal for energy research as they combine the flexibility of computer based simulation hardware with the ruggedness and sensor compatibility of field deployable hardware.


Back to Top

7. Communication with PDCs

The Open PMU Project can send data, configuration, and header frames to PDCs, and receive and respond to the command frames that are predefined in IEEE Std C37.118.2-2011. The NI PMU personality software supports up to 10 independent stream channels that can communicate with 10 different PDCs simultaneously. To verify functionality of a customized PMU, there is various open source PDC application software available.

  • PMU Connection Tester is an open source application commonly used to verify that a data stream from a PMU is being successfully received.
  • Frame APIs for PDC is a LabVIEW toolkit which provides a set of APIs to build a PDC application in LabVIEW. A PDC example is included that can be used to directly communicate with a PMU.


Back to Top

8. Download the Open PMU Project for LabVIEW 

Download the Open PMU Project for LabVIEW


Back to Top

9. Additional Resources


Back to Top

Bookmark & Share


Rate this document

Answered Your Question?
Yes No