DNP3 OPC Server Configuration Guide
Distributed Network Protocol is an open standard-based protocol maintained by
the DNP Users Group (http://www.dnp.org/). The following documentation will only
make sense if you have read the documentation published by the DNP Users group.
Channel Configuration

| Data Link Confirm
Mode |
| Never |
Never request for Data Link confirmation. Disable link layer
retry. |
| Always |
Always request Data
Link confirmation. The port.Timeout is
used as the link layer timeout, the port.retry is used as the link
layer retry. |
| On multi-frames only |
Request Data
Link confirmation on multi-frames only. |
Data Link confirm mode should be
turned on when using unreliable media. Turning on the Data Link
confirm mode will slow down data transfer rate.
|
| Ethernet Time
Synchronization |
Data Link Confirmation mode is set to
Never. Use Record Current Time (Function Code 24) instead of Delay
Measurement (Function Code 23)
to synchronize time on the Slave. Do not enable this option if your
TCP/IP RTU does not support Function Code 24 |
| Parallel Access |
When attaching multiple devices to a port,
each device can access the port anytime without waiting for another
device to finish. For use only when the underlying media have robust collision
avoidance handling. |
| Log Link Layer |
Log Link Layer messages to log file. Logging
will slow down data transfer rate. |
| Master Protocol |
IOServer acts as Master station. |
| Slave Protocol |
IOServer acts as Slave station. |
| Master Station |
The address of the Master station. |
| Keep Alive Time |
Send Request Link Status, whenever the
line is idle for more than this amount of time, a value
of zero turn off this feature. |
| Offline Quality |
The OPC Quality flag of offline objects
(online bit cleared or restart/communication lost bits not
cleared).
| C0 |
Quality Good |
| D8 |
Quality Good, Local Override |
| 08 |
Quality Bad, Not connected |
|
| Connect Ping Type |
Master device Application Layer Initial poll
message.
| None |
Class 1,2 or 3 as configured and Class 0 polls. |
| Delay Measurement |
Use Delay Measurement. This ensure that the slave
clock is synchronised before the event data are polled. |
| Class 0 |
Class 0 poll only. |
|
| Force all devices online
at start up |
Put all devices attached to this port online at startup. For
multi-dropped devices when each device takes more than 30 seconds to
start up.
|
| Application Confirm
Mode |
| Never |
Never request for application confirmation. |
| Always |
Always request application confirmation. |
| Sometimes |
Request
application confirmation on multi-fragments or when sending event data. |
|
| Application Timeout |
Maximum time to wait for an application
confirmation or fragment. The application timeout must be greater than (Port Timeout *
(Port Retries + 1)). |
| Application Retries |
Number of retries before abandoning
transaction and putting the device offline. The Port Watch Time must be greater than (Application
Timeout * (Application Retries + 1)) |
| Application Fragment
Size |
Maximum size of each application fragment
(200 to 16000). |
| Log App Layer |
Log Application Layer messages to log file.
Logging will slow down data transfer rate. |
Device Configuration

| Slave Station Address |
Station Address of Slave. A device with
an address of 65535 is used to send broadcast commands
such as Freeze or Operate to all devices on a channel. |
| Object File |
The value of DNP objects are written to
this file at device shutdown. The next time the device is started up,
it will use this information to restore the time stamp of DNP objects.
Leave this field blank if restoration of timestamp is not necessary,
otherwise specify a different filename for
each device. Writing a 0 value to .Backup will cause the current
values of DNP3 object to be written to this file. Writing a 1 value to
.Backup will restore the values from this file. |
| Use GMT Time |
If Enable, all timestamp
read and written to the slave are assumed to be based on GMT time.
Otherwise local time is used. Use of GMT time is recommended, it is
the responsibility of each OPC client in different time zones to
convert the GMT time to local time for display. |
| Timestamp Offset |
Add this number of minutes to timestamps |
| Poll Type |
Class 0 are static data, these are the
current value of the data in the RTU. Class 1, 2 and 3 are event data,
these are data changes (possibly with time stamp) of the data in the
RTU. Each event object in the RTU can be assigned to class 1, 2 or 3.
Belonging to a class does not imply any sort of priority. Most RTU
will statically assign a default class to each event object. More
advance RTU allows the user to assign the class of each event object.
Level 3 RTU allows the Master to assign the class of each event object
dynamically. Event data are used to update the DNP3 Master database.
Event data are normally polled at a much faster rate than static data.
Class 0 poll are issued at a very slow rate to keep DNP3 Master
database is up to date. The RTU will respond with all its static data
points to a class 0 poll, which could be quite substantial for large
RTU. The RTU will respond only with data changes to class 1, 2 or 3
polls. |
| Poll Interval |
Interval between poll for
that poll type. A poll interval of 7 seconds with a sync time of 0
seconds means that the master will poll the device at following times
(starting from midnight): 0,7,14,...,63,70.
The Device Polling schedule can be paused by writing a value of 2
to the Device.Enable tag. Other possible values are:
| Write Value |
Action |
| 0 |
Stop that device immediately and put that device offline. IOServer will
continue to restart that device at every watchtime, but will be unsuccessful. |
| 1 |
Allow the device to start successfully at the next
watchtime. |
| 2 |
Suspend polling of the device. The device will
remain online. |
Device.Enable will return a value of 0 if the device is offline.
|
| Sync Time |
Start of poll time within
poll interval. A poll interval of 7 seconds with a sync time of 2
seconds means that the master will poll the device at the following
times (starting from midnight): 2,9,16,...,65,72. |
| Enable Unsolicited |
Enable the reception of unsolicited
messages for that class |
| Items |
Maximum number of items requested per class
poll (supported only by level 2 slaves). Use 0 for no
limit. This is used to limit the amount of data that a level 2
slave may return per poll. Use -1 to stop DNP Master
from issuing event poll whenever the class internal indication flag
from the RTU is set for this class. Use -1 to stop DNP Slave from
setting the class internal indication flags. |
| Objects |
List of objects/data points to be assigned to this class
(supported only by level 3 slaves). Assigning a data point to
class 0 stops that slave from producing event object for that data
point. Examples of objects:
| 1 |
All variations and indexes for object 1 |
| 1.1 |
Variations 1 for object 1 |
| 1.1.1-20 |
Indexes 1 to 20 for variation 1 for object 1 |
You can suppress the sending of object 10 in static
responses by setting the Objects column in Class 1, 2 or 3
to 10.1 10.2
Setting the Objects column in Class 0 to 10 will stop the DNP3
Slave from generating Binary output events (object 11)
Setting the Objects column in Class 0 to 40 will stop the DNP3
Slave from generating Analog Output events (object 42)
|
| Log SOE |
Log SOE (Sequence of Events) to log file.
11:45:10.005 999 SOE Master.2.3.0,81,2002 01 23 11:45:10.001
| 11:45:10.005 |
Time this event is received. |
| 999 |
Elapsed time since last event in log file. |
| SOE |
DNP3 Log tag |
| Master.2.3.0 |
DNP3 event object 2, variation 3 and
index 0 from device Master |
| 81 |
Status value (hex) |
| 2002 01 23 11:45:10.001 |
Time as received in the event data |
11:23:54.003 999 SOE Master.32.4.0,01,122,2002 01 23 11:23:54.002
| Master.32.4.0 |
DNP3 event object 32, variation 4 and
index 0 from device Master |
| 01 |
Status value (hex) |
| 122 |
Value (decimal) |
| 2002 01 23 11:23:54.002 |
Time as received in the event data |
|
| Use Level 3 commands |
Enable Level 3 commands, this option should
only be enable if the RTU support the following level 3 command:
Start/Stop Qualifiers in Poll and Freeze commands
Pattern Control Block and Pattern Mask objects
Assign class
Enable/Disable Unsolicited Message |
| Enable Freeze |
Writing to analog inputs will cause FREEZE
command to be issued, otherwise WRITE command will be issued. |
| Read after Operate |
Perform a read of the output object after
operating the output. |
| Device Startup Mode |
Initial value of the .Enable tag of the device.
| Enable |
1 – The device is started and polled as scheduled. |
| Standby |
2 – The device is started, but the polling schedule is suspended. |
| Disable |
0 – The device is not started or polled |
|
| Enable Unsolicited Messages |
Enable the transmission of
unsolicited messages for Slave. |
| Execute Pulse on/off commands |
Pulse on/off, Close and Trip commands from
the DNP master are executed with the correct on/off time. If disabled,
the command from the DNP master is encoded as a 32 bit value that can
be passed on to other DNP masters. |
| Time Offset |
Time offset between clocks on Slave station and Master station. |
| Event Lifetime |
Event data older than Event
lifetime are discarded by the slave. Each write to an object,
will cause an event to be generated. All
events will be accumulated indefinitely at the DNP3 slave until
they are transmitted and confirmed by the DNP3 Master. e.g. A value of 0.5 will discard
all events older than 30 minutes. The number of events currently
stored in each class is indicated by Events(Total, Class 1, Class
2, Class 3). |
| Event Update Time |
Unsolicited data buffer
time, a
value of zero means that events are sent immediately. A non zero value
allows the slave to pack more events into a single frame for
transmission to the master. |
| Control Output
Close Address Offset |
A close command (Pulse
On/Close:65) to control output x will cause the control output x +
offset to be operated. If the offset is -1, then a close command will
cause 10.2.x.Close to be pulsed and a trip command will cause
10.2.x.Trip to be pulsed. |
| Binary Input Change with
Relative Time |
When sending more than N Binary Input Change
with Time (2.2) objects, convert them to Time and Data (51.1) and
Binary Input Change with Relative Time (2.3) objects. |
Variable Types

The OPC Browse Server Address Space will show all the
available data of each Slave station based on information
received from the Slave station. To find out what type of data is
available, connect to IOServer, using the built in OPC Server
explorer, add a group then add item to see the available data
types.
1.2.1 is the 8 bit byte value of the status (online, state and
etc.,) of Object 1, variation 2, index 1.
1.2.1.State is the Digital value of the state of object 1, variation 2, index 1.
1.1.1 is the Digital value of the state of object 1, variation 1, index 1.
IOServer DNP3 Device Profile
| Vendor Name: |
IOServer Pty Limited |
| Device Name: |
IOServer DNP3 Device |
Highest DNP3 Level Supported:
| For Requests |
3 |
| For Responses |
3 |
|
Device Function:
Can be configured as a Master or a Slave at DNP3 Channel Tab,
Protocol Mode. |
Maximum Data Link Frame Size (octets)
| Transmitted |
292 |
| Received |
292 |
|
Maximum Application Fragment Size
(octets)
| Transmitted |
Configurable between 200 and 16000 |
| Received |
2048 |
|
|
Setting the Application Layer Fragment Size to
less than 249 will stop the device from sending Multi-fragments.
|
Maximum Data Link
Retries
Configurable at Port->Retries, range 0 to 5 |
Maximum Application
Layer Retries
Configurable at DNP3 Channel->Application Layer Retries, range 0 to 15 |
Data
Link Layer Confirmation: Configurable as
| Never |
Never request for Data
Link confirmation. |
| Always |
Always request Data Link
confirmation |
| On multi-frames only |
Request Data Link
confirmation on multi-frames only |
|
Application
Layer Confirmation: Configurable as
| Never |
Never request for
application confirmation |
| Always |
Always request
application confirmation |
| Sometimes |
Request application
confirmation on multi-fragments or when sending event data. |
Defaults to Never for Master and Sometimes
for Slave station
|
Timeouts
while waiting for:
| Data Link
Confirm |
Configurable
as Port->Timeout between 10 and 360000 milliseconds. |
| Complete
Application Fragment |
Configurable
as DNP3 Channel->Application Layer Timeout between 10 and 360000
milliseconds. |
| Application
Confirm |
| Complete
Application Response |
|
Send/Executes
Control Operations
| Write Binary Outputs |
Use .Write suffix in object name |
| Select / Operate |
Use .SO suffix in object name |
| Direct Operate |
Use .DO suffix in object name (Direct operate is
chosen if no qualifier is selected) |
| Direct Operate - No ACK |
Use .DO suffix in object name when writing to the
broadcast device. |
| Freeze |
Writing a zero value to counters or analog inputs
will cause the Freeze and Clear command to be issued.
Writing a non-zero value will cause the Freeze command to
be issued. The no ack version is used when writing to the
broadcast device. |
| Time Synchronization |
The master can initiate time synchronization with any
slave by writing any value to the write only object "50.1.WriteOnly"
of that slave. A read request to "50.1" will return a 32 bit
value from the slave of the number of milliseconds since midnight. |
Writing to the first output object x by OPC/DDE clients
will cause second output block y to be written to the RTU:
|
Binary Output |
Analog Output |
| Without Status |
With Status |
| 32 Bit |
16 Bit |
Short Real |
Long Real |
| 10.1, 12.1 or 12.2 or
12.3 |
10.2, 12.1 or 12.2 or
12.3 |
40.1, 41.1 |
40.2, 41.2 |
40.3, 41.3 |
40.4, 41.4 |
After
the response to a write to an output is received, a read
is issued to read back the new value of the output.
After the write, the result code of the operation is
available in 12.1 for binary outputs and 41.x for analog outputs. The meaning of the result code are:
| 0 |
Request accepted, initiated, or queued. |
| 1 |
Request not accepted as the operate message
was received after the arm timer timed out. The
arm timer was started when the select operation
for the same point was received. |
| 2 |
No previous matching select message (i.e. an
operate message was sent to activate a control
point that was not previously armed with the
select message). |
| 3 |
Request not accepted as there were formatting
errors in the control request (either select,
operate, or direct operate). |
| 4 |
Control operation not supported for this
point. |
| 5 |
Request not accepted, as the control queue is
full or the point is already active. |
| 6 |
Request not accepted because of control
hardware problems |
| 7 |
Request not accepted because Local/Remote switch is in Local position |
| 10 |
Request not accepted because it was prevented or inhibited by a local automation process.
i.e. .LocalForce of that point is set. |
Maximum number of CROB (Control Relay Output Object 12.1) objects issued in a single message is limited
by the Input Queue Length parameter for that port.
Maximum number of
analog output (41.x) objects issued in a single
message is limited by the Input Queue Length parameter for that port.
Pattern Control Block
and Pattern Mask (12.2 and 12.3) are only issued if the Use Level 3
command option is enabled and the Input Queue Length parameter for that port is
greater than one.
CROB (12.1) and analog output (41.x) are permitted together in a single message.
Binary Outputs
Binary Output with status (10.2) are declared as
unsigned long, the 32 bit value is
interpreted as follows:
Bits 0..7 (8 bits) is the Control Code.
| Control Code |
Action |
| 1 |
Pulse On - The point is turned on for on time, then turned
off for off time. |
| 2 |
Pulse Off - The point is turned off for
off time, then turned on for on time. |
| 3 |
Latch On |
| 4 |
Latch Off |
| 65 |
Pulse On/Close |
| 129 |
Pulse On/Trip |
| +16 |
Queue |
| +32 |
Clear |
Bits 8..15 (8 bits) is Count - 1. i.e. Use a value of zero to
specify a count of 1.
Bits 16..22 (7 bits) is the pulse on time.
Bits 23-29 (7 bits) is the pulse off time.
Bit 30-31 (2 bits) is the pulse time factor.
For pulse on/pulse off code with count of 1 and not
queued, Bits 16..29(14 bits) is the pulse time
| |
Step Size |
7 Bit Pulse |
14 Bit Pulse |
| 0 |
1 ms |
Up to 127 ms |
Up to 16.384 seconds |
| 1 |
100 ms |
Up to 12.70 seconds |
Up to 1638.4 seconds |
| 2 |
10 seconds |
Up to 1,270 seconds |
Up to 163,840 seconds |
| 3 |
1000 seconds |
Up to 127,000 seconds |
Up to 4,294,000 seconds |
Writing a 0 or 1 to "10.1.x,bool" object will cause
control code 4 or 3 to be written to the output block object
respectively.
Writing a 2 to 10.2.10 will pulse 10.2.10 off
with Direct Operate.
Writing a 3 to 10.2.10.SO will pulse 10.2.10 on
with Select and Operate.
Writing a 1 to 10.1.10.SO,bool will latch on 10.2.10
with Select and Operate.
Writing a 0 to 10.1.10,bool will latch off
10.2.10 with Direct Operate.
Writing 845416705 (hex 0032640901) to
10.2.10.SO will pulse 10.2.10 on 10 times with 100ms on and 100ms
off time with Select and Operate.
Writing 0 to Device.10.1.2.SO.3000,bool will issue control code 2
(Pulse Off) with an
off time of 3000 ms with Select and Operate
Writing 1 to Device.10.1.2.DO.3000,bool will issue control code 1
(Pulse On) with an
on time of 3000 ms with Direct Operate.
Writing 0 to Device.10.1.2.SO.3000.1,bool will issue control code 129 (Trip/Pulse On) with an on time of 3000 ms
Writing 1 to Device.10.1.2.SO.3000.1,bool will issue control code 65 (Close/Pulse On) with an on time of 3000 ms
The .SO and .DO works similarly for analog
outputs.
|
|
Master
Devices will accept both time-tagged and non-time-tagged for all event
data. The Time of Occurrence in received event data will be
used as the item timestamp for the static data. If none is available then the
time when the data is acquired is used. Each item reported by our OPC
Server to any OPC client contains the value, timestamp and quality of the
item. This is a standard feature of OPC.
Every single SOE received from the slave RTU will be reported to the
interested OPC client via the static data. It is up to the OPC client to
accept (not ignore) and use the VTQ (value,
timestamp and quality) information correctly. IOServer will never issue
multiple changes for a particular object in each advise to the OPC client.
You can inserting a delay between each advise by setting the
Preference.SOE Interval parameter. Try to use as small value as you can
(less than 50ms).
e.g. If the slave reports 2.3.0 (Binary Input Change
with relative time), then the OPC client can see the new value and
timestamp in
1.1.0
or
1.2.0.State
|
Slave
Devices
Objects.variations in the slave are only created when they are
first read or
written to by OPC/DDE clients.
Default class assignment
| Class 0 |
All static data |
| Class 1 |
All Binary Input/Output Events(1 10) |
| Class 2 |
All Analog Input/Output Events(30 31 40) |
| Class 3 |
All Counters Events(20 21) |
|
Writing to first static object x by OPC/DDE clients
will cause second event object y to be reported. e.g. Writing to
static object 1.1.0 will create a 2.1.0 event object. Writing to
static object 1.2.0.State will create a 2.2.0 event object.
| |
Binary Input |
Counter |
Frozen Counter |
| 32 Bit |
16 Bit |
32 Bit Delta |
16 Bit Delta |
32 Bit |
16 Bit |
32 Bit Delta |
16 Bit Delta
|
| With Time |
1.2, 2.2 |
20.1, 22.5 |
20.2, 22.6 |
20.3, 22.7 |
20.4, 22.8 |
21.1, 23.5
21.5, 23.5 |
21.2, 23.6
21.6, 23.6 |
21.3, 23.7
21.7, 23.7 |
21.4, 23.8
21.8, 23.8 |
| Without Time |
1.1, 2.1 |
20.5, 22.1 |
20.6, 22.2 |
20.7, 22.3 |
20.8, 22.4 |
21.9, 23.1 |
21.10, 23.2 |
21.11, 23.3 |
21.12, 23.4 |
| |
Analog Input |
Frozen Analog Input |
| 32 Bit |
16 Bit |
Short Real |
Long Real |
32 Bit |
16 Bit |
Short Real |
Long Real |
| With Time |
30.01,32.3 |
30.02,32.4 |
30.5,32.7 |
30.6,32.8 |
31.1,33.3
31.3,33.3 |
31.2,33.4
31.4,33.4 |
31.7,33.7 |
31.8,33.8 |
| Without Time |
30.1,32.1
30.3,32.1 |
30.2,32.2
30.4,32.2 |
30.05,32.5 |
30.06,32.6 |
31.5, 33.1 |
31.6, 33.2 |
31.07,33.5 |
31.08,33.6 |
| |
Binary Output |
Analog Output |
| 32 Bit |
16 Bit |
Short Real |
Long Real |
| With Time |
10.2, 11.2 |
40.1, 42.3 |
40.2, 42.4 |
40.3, 42.7 |
40.4, 42.8 |
| Without Time |
10.1, 11.1 |
|
|
|
|
Only one variation should be used for each object type
The object 12.1 can not be accessed directly,
you can only see the effect on 10.1. For example if the DNP3
Master send a pulse on with count of 10, on time 10, off time
10 to 10.1, then object 10.1 will pulse on and off ten times
at 10ms interval. Close and trip are supported when the Control
Output Close Address Offset is non zero.
|
| The device Event Update Time is used to delay the
transmission of unsolicited event data messages to allow the slave
to pack more data into a frame for transmission. Static data are
sent in unsolicited messages when the OPC/DDE clients add new
objects. |
| Enable/Disable unsolicited Function
are supported. |
| Time tagged binary input events always use Relative time
when polled by event polls. |
| Sends static data in unsolicited
Responses when device
restarts. |
| Counter Roll Over at 16/32
bits for 16/32 bits counter respectively. |
| Writing User specified
timestamp to DNP3 Slave |
|
DNP3
Over LAN/WAN
| Link Layer confirmation is
explicitly disabled. |
| Configurable Keep Alive
Timer for use in unsolicited mode. |
| The Record Current Time
method of Time Synchronization is used. |
| DNP3 Master can act as
server (listen) or as client (connect). |
| DNP3 Slave can act as
server or as client. |
| TCP/IP or UDP/IP Port
Number |
20000 decimal |
|
File Transfer
Writing to the ".File" Object initiate file transfer operations, The write
command is a string of the form:
Operation,RTUFile,PCFile,UserName,Password. Use ".FIO" instead of
".File" for RTU that support the legacy implementation of 70.1 object.
| Operation |
| Read |
Copy RTUFile to PCFile |
| Write |
Copy PCFile To RTUFile |
| Delete |
Delete RTUFile |
|
| RTU File |
Full Name of file in RTU |
| PC File |
Full Name of file in PC |
| UserName |
Optional User Name |
| Password |
Optional Password |
Master Station Mode of operation.
| Master Station Unsolicited
Mode |
Slave Station Unsolicited
Mode |
Class 0 Poll Interval |
Class 1,2,3 Poll Interval |
Mode of Operation (The lower numbered
ones are the most efficient) |
| 1 |
1 |
0 |
0 |
1. Quiescent Operation - Never poll any Slave, and
all communication is unsolicited report-by-exception. |
| 1 |
1 |
0 |
Non Zero |
2. Unsolicited Report-by-Exception Operation. Most
communication is unsolicited, but also polls for event data. |
| 1 |
1 |
Non zero |
0 |
3. Unsolicited Report-by-Exception Operation. Most
communication is unsolicited, but poll for static data to keep its database
up to
date. |
| 1 |
1 |
Non zero |
Non zero |
4. Unsolicited and Polled Report-by-Exception
Operation. Most communication is unsolicited, but also
polls for event data and static data. |
| 0 |
x |
Non zero |
Non Zero |
5. Polled Report-by-Exception Operation. Polls for
event data and static data. |
| x |
0 |
| 0 |
x |
0 |
Non Zero |
6. Poll for event data only. |
| x |
0 |
| 0 |
x |
Non zero |
0 |
7. Poll for static data only.
Event data is never requested. |
| x |
0 |
| 0 |
x |
0 |
0 |
8. Poll Static Data Operation - Polls for the specific
static data it requires. Not recommended because it is
very inefficient when the number of points is high and
changes are infrequent. Event data are never requested. Polling rate will be controlled by the OPC Group
or DDE update time. |
| x |
0 |
Poll for event data - Poll for class 1, class 2 and class 3
data.
Poll for static data - Poll for class 0 data.
Writing to Class objects from Master Station
| Write Value |
Function Code issued by Master |
| 0 |
1 - Read |
| 3 |
20 - Enable Unsolicited Messages |
| 4 |
21 - Disable Unsolicited Messages |
e.g Writing a 0 to 60.4 will cause a Class 3 read to be issued to the RTU
writing a 0 to 60.0 will cause a read function code to be issued for Class 1, 2,
3 and 0 data
writing a 4 to 60.0 will cause a disable unsolicited message function code to be
issued for Class 1, 2 and 3
Static and Events objects
OPC clients are allowed access to static (1, 20, 30) or output objects (10, 40)
OPC clients are not allowed access to events (2, 22, 32) or output block objects (12, 41).
Events received will be reflected in their static objects, eg. received events objects 2.1, 2.2 or 51.1/2.3 will be reported in static objects 1.1 or 1.2.
e.g if we allowed OPC client to access 2.1, but the RTU send 2.2 or 51.1/2.3 then the OPC client will never see any
2.1 events.
OPC clients writing to 10.1 or 10.2 output objects will cause the appropriate object 12.1, 12.2 or 12.3 object to be issued to the DNP Slave. If we allowed OPC client access to 12, then the OPC client will have to use separate tags to read (10) and write (12) to the same point.
Performance
IOServer running on a Pentium 4, 2.8 GHz PC under Windows 2000 Advanced
Server reading
from a DNP3 Slave device over TCP/IP. Test configuration
file
| Binary Input Event with Time (2.3) |
180,000 events per second |
| 32 Bit Counter Change Event with Time (22.5) |
130,000 events per second |
| 32 Bit Analog Input Change Event with Time (32.3) |
130,000 events per second |
DNP3 Implementation Table
DNP User Group
Demo Configuration of DNP3 Master accessing a DNP3 Slave over
TCP/IP
Exchanging Data with DNP3 Master and Slave
DNP3 FAQ
Last updated: 11 August 2010