0% found this document useful (0 votes)
105 views5 pages

DNP

This document provides a quick reference to the DNP3 protocol layers and objects. It summarizes: 1) The application layer contains DNP3 objects which are organized in a header-body structure and can include function codes, internal indications, and qualifiers. 2) The transport function controls message sequencing and delivery confirmation. 3) The data link layer handles addressing, error checking, and flow control through the use of headers, CRC blocks, and control bits.

Uploaded by

Edgar R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
105 views5 pages

DNP

This document provides a quick reference to the DNP3 protocol layers and objects. It summarizes: 1) The application layer contains DNP3 objects which are organized in a header-body structure and can include function codes, internal indications, and qualifiers. 2) The transport function controls message sequencing and delivery confirmation. 3) The data link layer handles addressing, error checking, and flow control through the use of headers, CRC blocks, and control bits.

Uploaded by

Edgar R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

DNP3 QUICK REFERENCE

Application Layer
← Start of fragment
First Last
Application
Object DNP3 Objects … Object DNP3 Objects
Header
Header Header

Application Function Internal Indications


Control Code LSB MSB

Application
Control octet
←bit
7 6 5 4 3 2 1 0 Internal Indications only included in
number
responses from outstation.
CON
UNS
FIN
FIR

SEQ

Function Codes Internal Indications


Requests (Hex) LSB
0 Confirm 10 Initialize application IIN1.0 All stations
1 Read 11 Start application IIN1.1 Class 1 events
2 Write 12 Stop application IIN1.2 Class 2 events
3 Select 13 Save configuration
IIN1.3 Class 3 events
4 Operate 14 Enable unsolicited
IIN1.4 Need time
5 Dir operate 15 Disable unsolicited
IIN1.5 Local control
6 Dir operate – No resp 16 Assign class
IIN1.6 Device trouble
7 Freeze 17 Delay measurement
IIN1.7 Device restart
8 Freeze – No resp 18 Record current time
9 Freeze clear 19 Open file MSB
A Freeze clear – No resp 1A Close file IIN2.0 Function code not supported
B Freeze at time 1B Delete file IIN2.1 Object unknown
C Freeze at time – No resp 1C Get file information IIN2.2 Parameter error
D Cold restart 1D Authenticate file IIN2.3 Event buffer overflow
E Warm restart 1E Abort file IIN2.4 Already executing
F Initialize data IIN2.5 Configuration corrupt
IIN2.6 Reserved 1
IIN2.7 Reserved 2
Responses (Hex)
81 Response
82 Unsolicited response

DNP3 Quick Reference – DRAFT Copy Page 1


11-November-2002
Application Layer
← Start of fragment
First Last
Application
Object DNP3 Objects … Object DNP3 Objects
Header
Header Header

Object Type Field


Qualifier Field Range Field
Group Variation

See Data Object Library


7 6 5 4 3 2 1 0 ←bit number

Qualifier octet
0 Object Prefix Code Range Specifier Code

Range Field Contains


0 1-octet start – stop indexes.
1 2-octet start – stop indexes.
Object Prefix 2 4-octet start – stop indexes.
0 Objs packed without a prefix. 3 1-octet start – stop virtual addresses.
1 Objs prefixed with 1-octet index. 4 2-octet start – stop virtual addresses.
2 Objs prefixed with 2-octet index. 5 4-octet start – stop virtual addresses.
3 Objs prefixed with 4-octet index. 6 No range field used. Implies all objects.
4 Objs prefixed with 1-octet object size. 7 1-octet count of objects.
5 Objs prefixed with 2-octet object size. 8 2-octet count of objects.
6 Objs prefixed with 4-octet object size. 9 4-octet count of objects.
7 Reserved. A Reserved.
B 1-octet count of objects (variable format).
C Reserved.
D Reserved.
E Reserved.
F Reserved.

Transport Function
Transport 7 6 5 4 3 2 1 0 ←bit number
Header octet FIN FIR SEQUENCE

DNP3 Quick Reference – DRAFT Copy Page 2


11-November-2002
Data Link Layer
Header
Start Destination Source CRC Block
Len Ctrl
0x05 0x64 LSB MSB LSB MSB LSB MSB

0 to 65519
5 to 255
0 to 65535

7 6 5 4 3 2 1 0 ←bit number
Control
octet FCB FCV ← Primary to secondary
DIR PRM Function Code
0 DFC ← Secondary to primary

FCB: Frame Count Bit


1 = From Master Alternates 1 and 0
0 = From Outstation
1 = Primary to Secondary FCV: Frame Count Valid
0 = Secondary to Primary 1 = examine FCB bit
0 = ignore FCB bit

DFC: Data Flow Control


1 = receive buffer full
0 = receive buffer available

Primary to secondary Secondary to primary


(PRM = 1) (PRM = 0)

Primary Secondary
FCV
Function Function Code Name Function Function Code Name
Bit
Code Code

0 RESET_LINK_STATES 0 0 ACK

1 – – 1 NACK

2 TEST_LINK_STATES 1 2 –

3 CONFIRMED_USER_DATA 1 3 –

4 UNCONFIRMED_USER_DATA 0 4 –

5 – – 5 –

6 – – 6 –

7 – – 7 –

8 – – 8 –

9 REQUEST_LINK_STATUS 0 9 –

A – – A –

B – – B LINK_STATUS

C – – C –

D – – D –

E – – E –

F – – F NOT_SUPPORTED

DNP3 Quick Reference – DRAFT Copy Page 3


11-November-2002
Valid Data Link Layer Control Codes

Outstation Master
to to Function Code Name Type Comment
Master Outstation
00 80 ACK
01 81 NACK Link reset required
0B 8B LINK_STATUS
0F 8F NOT_SUPPORTED
Sec-to-Pri
10 90 ACK Receive buffers full
11 91 NACK Receive buffers full
1B 9B LINK_STATUS Receive buffers full
1F 9F NOT_SUPPORTED Receive buffers full
40 C0 RESET_LINK_STATES FCB = 0 (secondary ignores FCB)
44 C4 UNCONFIRMED_USER_DATA FCB = 0 (secondary ignores FCB)
49 C9 REQUEST_LINK_STATUS FCB = 0 (secondary ignores FCB)
52 D2 TEST_LINK_STATES FCB = 0
53 D3 CONFIRMED_USER_DATA FCB = 0
Pri-to-Sec
60 E0 RESET_LINK_STATES FCB = 1 (secondary ignores FCB)
64 E4 UNCONFIRMED_USER_DATA FCB = 1 (secondary ignores FCB)
69 E9 REQUEST_LINK_STATUS FCB = 1 (secondary ignores FCB)
72 F2 TEST_LINK_STATES FCB = 1
73 F3 CONFIRMED_USER_DATA FCB = 1

Most commonly used are shown in bold face.

DNP3 Quick Reference – DRAFT Copy Page 4


11-November-2002
DNP3 Exchange Samples
Reset Link Example

−−► 05 64 05 C0 01 00 00 04 E9 21 Reset link states

◄−− 05 64 05 00 00 04 01 00 19 A6 Ack

Integrity Poll Example


05 64 14 F3 01 00 00 04 0A 3B
−−► Request class 1, 2, 3 and 0 data
C0 C3 01 3C 02 06 3C 03 06 3C 04 06 3C 01 06 9A 12

◄−− 05 64 05 00 00 04 01 00 19 A6 Link layer confirm

◄−− 05 64 05 40 00 04 01 00 A3 96 Reset link states

−−► 05 64 05 80 01 00 00 04 53 11 Ack
05 64 53 73 00 04 01 00 03 FC
C1 E3 81 96 00 02 01 28 01 00 00 00 01 02 01 28 05 24 Response. IIN = device restart, need
01 00 01 00 01 02 01 28 01 00 02 00 01 02 01 28 B4 77 time, class 1 & 2 events. 4 binary input
◄−−
01 00 03 00 01 20 02 28 01 00 00 00 01 00 00 20 A5 25 events, 2 analog input events, 4 binary
02 28 01 00 01 00 01 00 00 01 01 01 00 00 03 00 2F AC inputs and 2 analog inputs.
00 1E 02 01 00 00 01 00 01 00 00 01 00 00 16 ED
−−► 05 64 05 80 01 00 00 04 53 11 Link layer confirm

05 64 08 C4 01 00 00 04 A4 CF
−−► Application layer confirm
C1 C3 00 20 3F

Reset Restart IIN Bit


05 64 0E C4 01 00 00 04 7D A4
−−► Request write IIN1.7 = 0
C0 C4 02 50 01 00 07 07 00 64 11
05 64 0A 44 00 04 01 00 59 5E
◄−− Null response
C2 C4 81 10 00 93 AD

Set Time and Date


05 64 12 C4 01 00 00 04 0E 0B
−−► Request write time and date
C0 C5 02 32 01 07 01 F8 B8 6C AA F0 00 98 98
05 64 0A 44 00 04 01 00 59 5E
◄−− Null response
C3 C5 81 00 00 55 93

Key: −−► Master station transmissions (Address 1024 decimal).


◄−− Outstation transmissions (Address 1).

DNP3 Quick Reference – DRAFT Copy Page 5


11-November-2002

You might also like