<< Click to Display Table of Contents >>

Filename

DNPMaster.dll

Manufacturer

Protocol DNP 3.0

Device

 

Protocol

DNP 3.0

Version

4.0.45

Last Update

03/29/2022

Platform

Win32

Dependency

IOKit v2.00 or later

Superblock Reading

No

Level

31201

 

Introduction

This Driver implements protocol DNP 3.0 in Master mode, according to level two and some level three functionality.

DNP (Distributed Network Protocol) is an open and non-proprietary communication protocol, based on IEC (International Eletrotechnical Commission) specifications, adapted for usage on highly secure applications, with moderated speed and amount of data. It is extremely flexible and can be used in any hardware platform.

The model specified by ISO OSI (International Standards Organization - Open System Interconnection) establishes seven layers for a network protocol. IEC, on the other hand, specifies a simplified model, which consists only on physical, data link, and application layers. Such model is called EPA (Enhanced Performance Architecture). The next figure shows an EPA structure and its communication system.

EPA architecture

EPA architecture

A User Layer can be defined as a location where users manipulate data, after all communication. In Elipse Software products, it is represented by a user application. The User Layer uses this Driver's Application Layer to send and receive full messages to or from a station.

An Application Layer is responsible for specifying in details the requests from the User Layer, and back to it when the message comes from the Data Link Layer. In other words, it assembles messages from User Layer, called fragments, into a multiple-fragment message with full information to be processed and sent to a station using the Data Link Layer.

A Data Link Layer is used to pass messages between primary, or origin, and secondary, or destination, stations. It also packs data, checks transmission errors, and sends them to a TCP/IP network.

DNP protocol can be configured to switch messages via polling (constant communication) or via integrity or changes (more efficient). Sending changes, also known as RBE (Report by Exception), can occur spontaneously, or unsolicited, or non-spontaneously by an explicit request from a Master for these changes. It is recommended to use the following configurations:

Enable Class 0 (zero) during startup and at regular intervals: This way all Tags have a value when starting an application

Use unsolicited messages or event scanning at regular intervals: Data updates, as changes occur, can be sent in an unsolicited way by a Slave or using Classes 1 (one), 2 (two), and 3 (three) event requests automatically by this Driver

Configure Tags using event objects instead of static objects: Tags configured as static objects generate communication by polling (constant exchange of messages), which generates unnecessary traffic. Tags configured as events do not perform communication and are updated automatically as integrity or change messages arrive, as exposed previously

Was this page useful?