What is DNP3?
Developed in 1993 by GE-Harris Canada, DNP3 (Distributed Network Protocol) is a robust communications protocol that was developed for SCADA (Supervisory Control and Data Acquisition) applications and is designed to transmit data over either serial or IP communications. It was originally created as a reliable communication method for electrical utilities, but it is also useful in other SCADA applications, such as water or wastewater, the oil and gas industry, and the transportation field. It is favored by these industries for its ability to dependably transmit data from remote sites to reduce costly site visits, proactively address maintenance issues, increase operational efficiency, and perform regulatory reporting.
Like other open protocol standards, DNP3 is designed to provide seamless interoperability between devices from many manufacturers including computers or workstations, RTUs (Remote Terminal Units), PLCs (Programable Logic Controllers), HMIs (Human Machine Interfaces), or smart devices commonly found in utility, industrial, or manufacturing settings. Utilizing the same protocol throughout a facility supports efficient, uninterrupted communication between all devices. In addition, avoiding proprietary protocols allows utilities to have better access to technical support plus broader equipment choices from qualified providers.
How Does DNP3 Work?
Like several other industrial communication protocols, DNP3 is arranged in a Master/Slave relationship where slave devices are designated as “outstations.” Typically, a master device is computer found in a utility’s control center, while an outstation is a remote device (i.e., a meter, RTU, PLC, IED, or computer) located at a substation or other distant location. In this hierarchy, master devices issue commands to outstation devices, such as to start or stop a motor, change a voltage level, transmit logged energy data, or close a circuit breaker. DNP3 also allows outstations to initiate communications with master devices under certain circumstances.
DNP3 is object-oriented and utilizes a library of over 65,000 common, pre-defined objects as the basis of communication. The Master and Outstation devices both use the same object library to reliably exchange information. Objects can be read only, write only, or both.
The outstation’s job is to collect data and reply to the Master; replies fall within one of five categories:
- Binary Input values indicate the state of a device (such as ON or OFF).
- Analog Input values represent quantities that are measured by the outstation such as voltage, current, temperature, humidity, or other variables.
- The Counter Input incrementally count values, such as kWh or the number of times a pump has cycled. The function is like an odometer in that it reaches a maximum value before rolling back to zero.
- Control Outputs represent physical on/off or trip/close points.
- Analog Outputs define physical analog quantities that can be used for setpoints.
Key Benefits of DNP3 Protocol
- Open Protocol: DNP3 is a vendor-independent, open protocol which allows for simultaneous use of many different devices from a wide range of vendors within a single system. Users can easily scale and expand solutions based on unique requirements. Each device’s profile document outlines its compliance to the standard, ensuring interoperability.
- Time Stamped Data: Critical data is event-logged, or event-based, and can be stored locally for later recall or to fill in gaps caused by disrupted communication. All collected data is time stamped to provide historical context and can be used to generate accurate reports, for predictive maintenance, to perform root-case analysis, or stored for regulatory bodies (such as the EPA).
- Unsolicited Reporting: Unlike protocols where slave devices must be queried for information, DNP3 allows outstations to initiate communication to masters. For example, in instances of equipment malfunction, an outstation can send important information to the master so that the situation can be dealt with immediately, resulting in increase efficiency.
- Data Classification: DNP3 allows different types of data to be separated into “classes” which designate which kinds of information are most critical. For instance, a common state change would be deemed less critical than alarm data indicating an on-site emergency. The priority assignment for each class is determined by the user and the notification rate can be customized to reduce the impact on network bandwidth.
High Priority Events
Alarms or other events that require immediate attention
Set points or status changes; Events that are part of normal operations
Calculated, average, or accumulated values
DNP3 allows for easy access to both historical and real-time information, such as voltage, environmental conditions, battery levels, and other critical utility or facility data. This helps operators identify and correct issues before they cause unexpected failures or equipment malfunctions. Problems can often be identified from a single (often remote) workstation without costly site visits or in-person interventions.