Download our free DNP3 tutorial.
An introduction to DNP3 from your own perspective.
1-800-693-0351
Have a specific question? Ask our team of expert engineers and get a specific answer!
Sign up for the next DPS Factory Training!
Whether you're new to our equipment or you've used it for years, DPS factory training is the best way to get more from your monitoring.
Reserve Your Seat TodayDNP3 uses 27 basic function codes to exchange information between Masters (think Control Center) and Remotes (think pump yard). Some of those function codes enable a Master to request and receive status information from a Remote. Other function codes enable a Master to determine or adjust the configuration of a Remote.
Several function codes are defined for a DNP3 Master to control the Remote itself or equipment co-located with the Remote. One function code is provided to enable the Remote to respond autonomously with an Unsolicited Message to particular events that occur in its installation space.
For example, function codes can enable a:
As you can see, most of the messages are issued by the DNP3 manager to the DNP3 remote. However, because the Unsolicited Message is capable of being initiated by a Remote, it is typically used to report alarms. This notifies the DNP3 Master as soon as an alarm condition occurs, instead of waiting for the next request.
Be sure you understand the key limitation of all unsolicited ("asynchronous") alerts: there's no "keep alive" function. For polled ("synchronous") protocols, the manager polls the agent. This guarantees that a disabled agent will be promptly identified at the next polling cycle.
Contrast this with what happens in an unsolicited-message protocol: a disabled agent remains silent. This silence is identical to an active agent reporting that "I have no problems right now." That's why, whenever possible, you should look for a DNP3 master that has some ability to routinely query agents for their status. This mitigates one of the major threats from using DNP3.