Repository navigation
Expand file tree
/
Copy path__init__.py
More file actions
56 lines (48 loc) · 1.54 KB
/
Copy path__init__.py
File metadata and controls
56 lines (48 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
"""
DNP3 Driver - A Python implementation for DNP3 protocol communication over IP.
This driver implements the DNP3 (Distributed Network Protocol 3) protocol
for SCADA communications, supporting master station functionality to communicate
with DNP3 outstations over TCP/IP.
Protocol Structure:
- Data Link Layer: Frame format with CRC-16 error checking
- Transport Layer: Message segmentation and reassembly
- Application Layer: Function codes and data object handling
Supported Features:
- Binary Inputs (Group 1, 2)
- Binary Outputs (Group 10, 12)
- Analog Inputs (Group 30, 32)
- Analog Outputs (Group 40, 41)
- Counters (Group 20, 22)
- Class data polling (Class 0, 1, 2, 3)
- Select-Before-Operate (SBO) control
- Direct Operate control
- Time synchronization
- Unsolicited responses
Public API (import from dnp3py):
DNP3Master, DNP3Config, DNP3Error, DNP3CommunicationError,
DNP3TimeoutError, DNP3ProtocolError, DNP3CRCError, __version__
References:
- IEEE Std 1815 (DNP3 Standard)
- DNP3 Technical Bulletin TB2004-001
"""
from dnp3py.core.config import DNP3Config
from dnp3py.core.exceptions import (
DNP3CommunicationError,
DNP3CRCError,
DNP3Error,
DNP3ProtocolError,
DNP3TimeoutError,
)
from dnp3py.core.master import DNP3Master
__version__ = "1.0.1"
__author__ = "DNP3 Driver Development"
__all__ = [
"DNP3CommunicationError",
"DNP3Config",
"DNP3CRCError",
"DNP3Error",
"DNP3Master",
"DNP3ProtocolError",
"DNP3TimeoutError",
"__version__",
]