DNP3_NG – Part 2
In the previous blog entry, we looked at what is the DNP3_NG driver. Now let us take a closer look at what is new.
With the DNP3_NG driver, it is now possible to automatically create variables in the zenon Editor. One option is to import the XML Device profile that specifies the capabilities of the outstation. The driver allows you to create variables for the items specified in the points list of the device profile. Alternatively, you can carry out an online browse of the outstation. In this case, the driver in the editor will connect to the outstation, perform an integrity poll, and enable you to select which points returned in the integrity poll should be created as variables.
Where the DNP332 driver only supported configuration of a polling interval for the integrity poll and all three event classes together, the DNP3_NG driver allows you to specify both an interval for common event class polls as well as polling intervals for each individual event class.
The DNP3_NG driver now also provides configuration options for unsolicited responses for each event class. When unsolicited responses are supported, you could turn off cyclic polling for event classes and e.g. only perform event polls on demand, triggered from the runtime.
Using the driver object “class scan” you can explicitly trigger an integrity poll or an event poll for the event class specified. Also, you can trigger a read for points that are not included in the integrity poll or any event class. Such a read is also executed after each integrity poll. Device Attributes, for example, are not included in an integrity poll and need to be read explicitly. Using a variable from the type “class scan” it is also possible to trigger a “cold restart” of the outstation.
Variables now also allow individual configuration of the variation. When the Outstation does not return the DNP object in an event class poll in the desired variation, e.g. the object contains no timestamp, you can change the variation at the variable, and set the option “permanently read variable”. After every integrity poll, or after an explicit trigger, the driver will request the DNP objects in the specific variation.
While it was necessary for the DNP332 driver to select the “SBO” flag at the variable, to specify that a Select Before Operate should be executed via Command Input instead of a Direct Operate, with the DNP3_NG driver, this flag needs to stay disabled. Instead, at every variable of the type Binary Output and each Analog Output, a property “Command Mode” defines if a Direct Operate or a Select Before Operate (Automatic SBO) is executed.
When using Command Input it is now also possible to use a Boolean variable instead of an unsigned short integer, and use the Qualifier Of Command to specify whether a Latch On / Off, Pulse On / Off or a Trip / Close will be used.
The DNP3_NG driver also supports Secure Authentication. Currently, Secure Authentication v2 is supported using pre-shared keys.
To get a detailed overview of which functionality is supported by the DNP3_NG driver, the DNP3 XML device profile is installed with an installation of the zenon Editor in the directory: “%CD_PROGRAMDATA7100%communicationprofiles\Dnp3\Driver”. The driver manual (login required) also provides a source for further detailed information.