DNP3 Library Documentation¶
- Company:
CODESYS
- Title:
DNP3
- Version:
1.0.0.0
- Categories:
Communication Protocols
- Namespace:
DNP3
- Author:
CODESYS Development GmbH
- Placeholder:
DNP3
Description [1]¶
DNP3 library is the library to work with DNP3 on application level.
Introduction¶
The CODESYS DNP3 library is intended to support the application development using the DNP3 protocol according to IEEE Std 1815-2012.
It provides function blocks for:
Outstation Outstation
Outstation configuration OutstationConfiguration
Outstation data model OutstationDataModel
Outstation data points Point and specific AnalogInput, BinaryInput etc.
Outstation data point groups GroupAnalogInputs, GroupBinaryInputs etc.
Outstation data model and data points¶
The following outstation data point types are supported:
Analog Input AnalogInput
Analog Output AnalogOutput
Binary Counter BinaryCounter
Binary Input BinaryInput
Binary Output BinaryOutput
Double Bit Input DoubleBitInput
An application can setup an OutstationDataModel describing a number of data points of the supported types.
Outstation data point - inputs / outputs versa configuration¶
Outstation data points do work with two types of input variables:
configuration (for example BinaryInput.description)
input / output (for example BinaryInput.pValue or AnalogInput.lowLimit)
Data point configuration is fixed (sampled) at Outstation startup (xEnable FALSE –> TRUE) - so changes to data point configuration after Outstation startup are ignored.
Data point inputs / outputs are intended to expose application data to the DNP3 protocol - so they are processed after Outstation startup accordingly.
Outstation data point inputs / outputs of type AnyNumber¶
Some data point inputs / outputs are implemented as VAR_INPUT / VAR_IN_OUT (data) using AnyNumber, to support easy use of certain data types - for example AnalogInput. AnyNumber requires to use support functions for compare, arithmetic etc. - see documentation of AnyNumber.
Outstation data flow¶
Outstation data points of same type are grouped in a data point group. Data point groups needed for a specific Outstation do specify the OutstationDataModel which is connected to Outstation input dataModel. A specific OutstationConfiguration (actually either OutstationConfigurationIP or OutstationConfigurationCOM) is also connected to Outstation input configuration. If the Outstation is enabled, the dataModel and the configuration is checked for consistency.

Example¶
The CODESYS DNP3 package includes an example how to work with Outstation in ST and CFC. The example gets installed at your local hard drive during package installation - default is C:\\Users\\your-username\\CODESYS DNP3\\x.x.x.x\\Projects.
Outlook¶
Future versions of CODESYS DNP3 will provide function blocks for:
Outstation data point event generation
Master