DNP3
DNP3
3.1.1.1 Description
DNP3 has a graded architecture. Instead of the OSI model, however, a simplified 3-layer model suggested by
the IEC is used. This model was named Enhanced Performance Architecture (EPA) by the IEC. However,
DNP3 adds a 4th layer, a pseudo transport layer, with which messages can be segmented. The graphics were
taken from the DNP3-Spec-V1-Introduction-20071215.pdf standard.
[dw_epadia, 1, en_US]
The pseudo transport layer segments application messages in multiple data transmission packages.
The pseudo transport layer implements an individual byte function code for every package. The byte function
code displays what the data transmission package is:
[dw_trfnct, 1, --_--]
3.1.2.2 Acknowledgments
If the SIPROTEC devices communicate through Ethernet, they must not work with confirmations from the
physical layer (CONFIRMED_USER_DATE). If necessary, the confirmations must be used by the application
layer. For confirmations of the application layer, there is no difference between IP networks (IP = Internet
protocol) and serial channels.
3.1.2.3 Message Transmission
As soon as the data-link layer has established a TCP connection (TCP = Transmission Control Protocol), the
physical layer of DNP3 can transmit packages as needed. The type of query (requested or not requested) does
not depend on the type of connection.
The SIPROTEC 5 devices support dual DNP3 Ethernet masters on the same Ethernet module.
A typical case for each DNP3 master is as follows:
The DNP3 interface of the SIPROTEC 5 device supports the following functions:
Function Description
Binary inputs with status Remote Terminal Unit (RTU)
Object 01 and variation 02 describe the state of a digital input channel or internal
software information.
They are also used during the general interrogation by an RTU to synchronize the
database. The general interrogations are conducted after the run or cyclically
during the runtime.
Binary inputs with Object 02 and variation 02 describe the changes of a digital input channel or of
changed time internal software information with the associated change time. The binary inputs
are used for spontaneous process events.
Binary outputs with status Object 10 and variation 02 describe the current status of a binary output channel.
The control relay output block controls the binary output channels. See also
object 12.
Control relay output block Object 12 and variation 01 are used for commands for the process or for the
setting-up of internal functions.
32-bit binary meter with Object 20 and variation 01 are used for the display of metered values for active
marking and reactive power.
32-bit binary change Object 22 and variation 01 are used for the display of changed meter data for
meter without time active and reactive power.
32 bit analog inputs Object 30 and variation 01 describe signed 32-bit values for the digitalized analog
(measured values) signals or their calculated values.
16 bit analog inputs Object 30 and variation 02 describe signed 16-bit values for the digitalized analog
(measured values) signals or their calculated values. They are used for the general interrogation
during start-up. A measured value snapshot is also possible.
32-bit analog change Object 32 and variation 01 are used for the display of a changed analog value.
values without time
16-bit analog change Object 32 and variation 02 are used for the display of a changed analog value.
values without time
Time and date Object 50, variation 01
Write function The time and date object are used for time synchronization.
Time and date Read the system time of the device.
Read function Date and time are displayed in milliseconds.
Here midnight on January 1, 1970 is 00:00 hours, 00:00 minutes, 00:00 seconds
and 00:00 milliseconds.
Function Description
Data class Object 60, variation 01, 02, 03, 04
These objects indicate different classes of information elements:
• Class 0 contains all information objects that are not distinguished in terms of
class 1 to 3
• Classes 1 to 3 contain groups of events from information elements
• The data from class 1 has the highest priority, followed by class 2, class 3,
and the static data
• Class 1 always means class 0 + 1, class 2 means class 0 + 2
File transfer Object 70, variation 01, 02, 03, 04, 05, 06, 07
Transfer of a fault record possible
Internal displays Object 80, variation 01
Writing the value 00 on index 7 leads to reset of the bit Restart in the flag byte
for all data objects.
Writing to Index 4 resets the Need Time Bit.
NOTE
These variations are set. You cannot change the variations in DIGSI.
The file transfer can be used to transfer a fault record (Object 70). The Rcd Made message is used to query the
availability of the fault record. When the message is mapped and there is a new fault in the device the
message is transferred. Cyclical reading of the directory is also possible. If there are files in the directory then
there are also fault records. Specifically, the transfer takes place as follows:
The following steps are required to read the directory:
• Reading of the directory with File Transport Object (obj 70 var 7)
• Waiting for the response
• If the read operation was successful, the master station increases the block number and reads the next
block.
• If the status indicator Last is set in the response, the master station closes the file with File Operation
Status Object (obj 70 var 4).
Every fault record is identified by an existing file. The following information is transferred for this:
• File Name Offset
• File Name Size
• File Type
• File Size
• Time Of Creation
• Permissions
• Request ID
• File Name
The master station can now select the required fault. The transfer takes place in the same manner as with
reading the directory.
3.1 Protocol Characteristics
The mapping of the commands occurs like the mapping of messages. Here, object group 12 is preset.
• Scaling factor
Scaling Factor
The measured value is multiplied in the SIPROTEC 5 device by the scaling factor. The measured values are then
changed into integer measured values (for DNP3) in the floating-point procedure.
Through multiplication with a multiple of 10, decimal places can also be transferred into integer measured
values.
• The floating-point number (measured value Float ) is available in the corresponding value type (primary or
secondary value).
• The floating-point number (measured value Float) is available as a percent value.
The integer measured value (measured value Integer) for the transmission through DNP3 is calculated according
to the following formula:
[fomwintr-230310-01.tif, 2, en_US]
Percent Values
For percent values, Siemens recommends a scaling factor of 100. This results in an interpretation of the
integer measured value (measured value Integer) through DNP3 with a measured value from ± 32 767. This
corresponds with a percentage value of ± 327.67%.
Secondary Values
If, for example, the values from the transducer inputs are specified in mA, then the transmission of a meas-
ured value as a secondary value makes sense.
The number of significant decimal points depends on the system and transducer data.
Primary Values
The position of the decimal point and the respective unit are determined for primary values based on the para-
meterized rated variables of the primary system.
3.2 Settings and Properties
Figure 3-6 DNP3 Serial Connection Settings – When the Setting Enable unsolicited trans. Is off
Time sync. Time interval (in ms) until the internal display Time 0 = The internal display is never set.
required required is set. This time interval is included in every Default setting = 60 000 ms
response message. The time interval signals to the
master to start a new time synchronization with the
device.
Time betw. sel. A command must be selected and executed in this Default setting = 10 000 ms
& switch. time (in ms).
Enable unsoli- With this parameter, you determine whether unsoli- Off = The unsolicited transmission is not
cited trans. cited transmission is configured. configured and can never be switched on
from a connected master (default setting).
On = The unsolicited transmission is
configured and must be made possible
after the 1st unsolicited response from the
master.
Min. time Minimum time of the telegram repetition following a Setting range = 0 ms to 100 ms
telegr. repet. collision Default setting = 50 ms
Parameter Name Description Settings
Max. time Maximum time of the telegram repetition following a Setting range = 0 ms to 50 ms
telegr. repet. collision Default setting = 50 ms
Max. telegr. Maximum number of the telegram repetitions Setting range = 1 to 200
retries following a collision Default setting = 5
[sc_DNP3SerialConectionSettings_On, 1, en_US]
Figure 3-7 DNP3 Serial Connection Settings – When the Setting Enable unsolicited trans. Is on
The following parameters only make sense if the parameter Enable unsolicited trans. is set to on:
Parameter Name Description Settings
Unsolicited This parameter regulates a condition of the non- Default setting = 10
events class requested transmission for every class of changed
1/2/3 events (class 1, class 2, and class 3).
If the number of events per class equals or exceeds
this value, then an unsolicited response is sent.
Unsolicited This parameter regulates a condition of the non- Default setting = 15 000 ms
time class requested transmission for every class of changed
1/2/3 events (class 1, class 2, and class 3).
If the time (in ms) after an event equals or exceeds
this value, an unsolicited response is transmitted. The
unsolicited message is also sent if only 1 event
occurred.
Unsolicited If no unsolicited response was sent within the time Default setting = 5
retry set under the Unsolicited confirm. time-out
parameter, then this parameter regulates how many
times a different unsolicited response is sent.
Unsolic. Time (in ms) for waiting for the receiver to confirm Default setting = 6000 ms
confirm. time- the non-requested response. If a query to read is
out received in the meantime, the read query is answered
first, and then the unsolicited response is not trans-
mitted.
[sc_DNP3EthernetSettings, 1, en_US]
Time sync. Time interval (in ms) until the internal display Time 0 = The internal display is never set.
required required is set. This time interval is included in every Default setting = 60 000 ms
response message. The time interval signals to the
master to start a new time synchronization with the
device.
Time betw. sel. A command must be selected and executed in this Default setting = 10 000 ms
& switch. time (in ms).
Enable unsoli- With this parameter, you specify whether unsolicited Off = The unsolicited transmission is not
cited trans. transmission is configured. configured and can never be switched on
from a connected master (default setting).
On = The unsolicited transmission is
configured and must be made possible
after the 1st unsolicited response from the
master.
Master address Address of the DNP3 master Setting range = 1 to 61 439
Default setting = 10
Master IP IP address of the DNP3 master Setting range = 0.0.0.0 to
address IPv4 address 0.0.0.0 means that the slave can listen to 255.255.255.255
and contact every IP address. Default setting = 0.0.0.0
Port Port number in the range of 1 to 61 439 Default setting = 20 000
[sc_DNP3EthernetSettings_On, 1, en_US]
Figure 3-10 DNP3 Ethernet Settings - When the Setting Enable unsolicited trans. Is on
NOTE
The following parameters only make sense if the parameter Enable unsolicited trans. is set to on:
Parameter Name Description Settings
Unsolicited This parameter regulates a condition of the non- Default setting = 10
events class requested transmission for every class of changed
1/2/3 events (class 1, class 2, and class 3).
If the number of events per class equals or exceeds
this value, then an unsolicited response is sent.
Unsolicited This parameter regulates a condition of the non- Default setting = 15 000 ms
time class requested transmission for every class of changed
1/2/3 events (class 1, class 2, and class 3).
If the time (in ms) after an event equals or exceeds
this value, an unsolicited response is transmitted. The
unsolicited message is also sent if only 1 event
occurred.
Unsolicited If no unsolicited response was sent within the Unso- Default setting = 5
retry licited confirm. time-out parameter, then
this parameter regulates how many times a different
unsolicited response should be sent.
Parameter Name Description Settings
Unsolic. Time (in ms) for waiting for the receiver to confirm Default setting = 6000 ms
confirm. time- the non-requested response. If a query to read is
out received in the meantime, the read query is answered
first, and then the unsolicited response is not trans-
mitted.
The other required IP settings are taken from the module setting.
[sc_ethset, 1, en_US]