You are on page 1of 11

DAQ Electronics, Inc 262B Old New Brunswick Road, Piscataway, NJ 08854-3756

DNP3 Server Configuration


CallistoView version 5.0A

This is a description of the unique DNP configuration dialogs and files in DAQ’s CallistoView configuration program.
It assumes the latest software, version 5.0 or higher.

In the text below, the symbol ! represents a Windows edit control, a " symbol represents a check box and a #
symbol represents a radio button.

COMMUNICATIONS Tab

14 June 2000 1 DNP3 Server Configuration


Physical group

My address ! is the DNP3 address of the DAQ device where the DNP Server resides.

Master address ! is the DNP3 address of the Master station that polls this DAQ server.

Transmit when ! is used to indicate when the transmitter may send messages.

• Requested means that the transmitter should begin as soon as the standard communication receive-to-
transmit delay has expired (see “after receiving transmit when …” configuration in the Serial Ports tab.)
This is the normal mode of operation when unsolicited messages are not being used. Use this option when
dialup is also in use.
• DCD is absent means wait until DCD (data carrier detect) has not been active for the timeout value in the
edit box to the right. This option is useful when unsolicited messages are configured. It assumes that DCD
indicates when any other device is using the transmission media such as in some radio systems.
• No data is received means wait until no characters have been received for the timeout value in the edit box
to the right. This option is useful when unsolicited message are configured. It assumes the only way to
know that no other device is using the media is when characters are not being received such as on a multi-
dropped RS-485 line.

Data link group

Wait at least ! x10ms between frames sets the minimum time gap between two adjacent link layer frames. This
feature allows the user to separate transmissions so that the receiving device has time to process the first
transmission before the second is initiated. There are many cases in DNP where two frames are transmitted back-
to-back. Not all devices can accept these unless they are separated in time.

Link layer response timeout ! x10 mS indicates how long the server’s link layer will wait for a response to a link
layer request. This value is only necessary when data link confirms are checked in the application layer. It means
how much time is allowed from when the last byte of a link layer frame leaves the server until the last byte of a link
layer response is received from the master device. This time includes propagation delays, master station
processing delays, and the time to receive 10 bytes at the configured baud rate.

Link layer retries ! indicates the number of times the link layer will retry sending a frame to the master if it does not
receive confirmation back. This value only has meaning when data link confirms are checked in the application
layer.

Application group, section 1

" Use data link confirms for user data messages should be checked when the data link layer in the master should
confirm receipt of each data link frame containing application layer response data transmitted from the DAQ server.

Transmit fragment size ! specifies the maximum number of bytes that DAQ will pack into a single DNP fragment
before sending it to the master station. A typical size is 2048. The minimum size is 249 and the maximum size is
4096. This value should not be larger than what the master can handle (see the master’s DNP profile document).
Experience has shown that if the system is operating in a very noisy environment, such as with some radio
systems, that this value is best set to the minimum, 249.

Link <==> application layer timeout ! x10 mS indicates how much time is permitted from when the application
layer requests the link layer to send a message until when the link layer responds back saying that it accomplished,
or failed to accomplish the request. The DNP server is structured in layers like the DNP protocol, and when the
application layer wants to send a response back to the master station, it submits this request to the link layer. The
link layer then attempts to send that message to the master station. The link layer then notifies the application layer
whether or not it succeeded. This parameter indicates how much time is allowed to receive the notification back
after submitting the request. This time depends upon whether or not link layer confirms are requested.

If link layer confirms are not checked, the time should include at least 60 mS processing time, plus RTS-CTS
timing, plus the time to transmit a single frame at the configured baud rate, plus some spare time.

14 June 2000 2 DNP3 Server Configuration


If link layer confirms are turned on, the time includes at least 60 mS processing time plus the number of link layer
retries configured times the sum of server’s RTS-CTS timing, single frame transit time, master processing time,
master’s RTS-CTS timing and the transit time for an acknowledgement frame back from the master.

Master application layer response timeout ! x100 mS is used to specify the maximum time allowed for the master
to return an application layer confirmation when requested. The server requests the master to send an application
layer confirmation back when the server transmits event data, and sometimes in other situations. This time
includes the timeout specified above for link <==> application layer multiplied by the number of link layer frames in
a fragment, plus an additional amount of time for the master to process the received fragment and the transit time
of the application layer confirm message.

Buffer up to ! events specifies the number of events that the event queue will hold. If the sum of all class 1, class
2 and class 3 events exceeds this number before the master can retrieve them, the event buffer will overflow
causing loss of subsequent events. Memory usage increases as this number increases. Typically, this number
should hold the maximum number of events expected between master station polls for events including a time
allowance for short, extraneous pauses while the master is busy doing non-polling activities.

When buffer is full: # Don’t overwrite event buffer # Overwrite oldest event in buffer provides a choice of what to
do when a new event is created and the event buffer is full.

" Include counters, and/or " frozen counters, in requests for all static data indicates whether values from the
running (non-frozen) counters or from the frozen counters should be included in the response to a poll for all (static
class 0) data.

Application group, section 2

Send unsolicited events when

If none of the 4 check boxes are checked, unsolicited messages will never be transmitted, otherwise, here is how to
interpret the options.

• " class 1 events are waiting. When any class 1 events (see Analog & Status and Counter Tabs) occur,
the transmission of an unsolicited response message will be triggered.
• " class 2 events are waiting. When any class 2 events (see Analog & Status and Counter Tabs) occur,
the transmission of an unsolicited response message will be triggered.
• "class 3 events are waiting. When any class 3 events (see Analog & Status and Counter Tabs) occur, the
transmission of an unsolicited response message will be triggered.
• "many events are waiting. When the event queue becomes nearly full with events, the transmission of an
unsolicited response message will be triggered. This box should be checked if all three of the previous are
not checked (and unsolicited behavior is desired.) If it is not checked and any of the other three are also
left unchecked, there is a possibility that the event queue will fill up causing loss of events.

Retry unsolicited messages every ! x100 mS and retry up to ! times specifies the time between retries to send
an unsolicited response message if no confirmation is received from the master for the previously transmitted,
unsolicited message. It also specifies the number of times the DAQ server will attempt to send an unsolicited
message before it gives up. The time value should be longer than the master application layer timeout. The
number of attempts to send and unsolicited message is set in the up to ! times edit box; however, a value of 255
will retry indefinitely.

If the connection facility (connect check box is checked) is installed, the time should also be longer than number of
connect retries times the time between connect retries.

" Connect to send unsolicited and retry every ! x10 mS and retry up to ! times is used when a connection
facility is installed. A typical connection facility is a dialup task. Checking the left side check box means a
connection must be established before the DAQ server will send an unsolicited message. This check box applies
to only the case when one or more of the unsolicited event check boxes are configured. The DNP server will not try
to make a connection if no events are checked to initiate unsolicited transmissions (although this does not preclude
using a connection scheme where the master always initiates the connection.)

14 June 2000 3 DNP3 Server Configuration


If unsolicited transmissions are desired and connection is checked, and when there is an event to be sent, the
server will attempt a connection periodically until a connection is achieved. The time value specifies the number of
10 millisecond periods between retries and the number of attempts to connect is set in the up to ! times box; a
value of 255 will retry indefinitely.

Application group, section 3

Reset communications if no messages received from master ! x100 mS specifies the maximum time the server
will wait to hear from its master station. If the server does not receive any messages for this amount of time, it will
reset its communication port and restart the timer. This parameter is normally set to 10 or 20 minutes. For
connection oriented systems sending unsolicited messages, this parameter should still be set, but does not reset
the port.

Controls group

Destination response timeout ! x10 mS specifies how long the server will wait for a response from the software
process within the DAQ hardware that the DNP server sends a control (or setpoint) request to. The server forwards
control commands received from the master to other software modules in the RTU; these software modules may be
located on other nodes. This parameter specifies the maximum time to forward the control command and receive a
response back from the destination software module.

Select aperture time ! x10 mS specifies how much time can transpire between the receipt of a select command
from the master and its matching execute command. If an execute command is not received within this time
period, the RTU will automatically cancel the pending selection.

14 June 2000 4 DNP3 Server Configuration


GENERAL Tab

Local/remote indication group

Use status point for local/remote " indicates whether or not the server will monitor for local and remote modes. In
the local mode controls are not accepted from the master station and are presumably activated manually. In the
remote mode, controls may be executed from the remotely located master station. If this box is checked, then the
remaining items in this group apply.

Point number ! specifies which global point will be monitored by the server to know which mode, local or remote,
the server should operate in. This global point number may or may not have the same number as the point number
used by master. This point number should be selected after all of the status points in the RTU clients have been
configured. The global point number is obtainable by creating a global point report in CallistoView’s main menu File
item.

Point on indicates # Remote # Local are radio buttons to specify whether a close state of the point should indicate
the remote or local mode.

14 June 2000 5 DNP3 Server Configuration


Sending archive data group

DAQ’s Archiver,or Archive Server, collects data at specific time intervals (like every 15 minutes) when certain
conditions occur (like loss of communications with the master). This data can then be transferred to the
master using a custom, non-standard, feature in DNP.
Please note, at the time this document was published, this is unique to DAQ. It is not currently defined by
the official DNP documentation, and it only operates with specific master stations – it is not interoperable with
the majority of master stations. This section is included here for the benefit of DAQ customers that have a
compatible master station and are using the Archiving feature.

Archive files to access group

Send " archived status points as # class 1 # class 2 # class 3


Send " archived analog points as # class 1 # class 2 # class 3
Send " archived accumulator points as # class 1 # class 2 # class 3

If the check box is checked, the corresponding data type (status, analog or accumulator) values from the Archiver
process will be sent to the master. They will be sent as either class 1, 2 or 3 event data depending upon which
radio button is set.

Access archive files stored on node number ! tells the DNP server on which node the Archiver is located. The
Archiver can be installed on any node in the system where it has access to a global database.

14 June 2000 6 DNP3 Server Configuration


ANALOG & STATUS Tab

Analogs group

Default static variation ! specifies which DNP object variation of analog input object (30) will be returned when the
master polls for class 0, static data. If 0 is entered here, the default value hard-coded in firmware will be used.

Default event variation ! specifies which DNP object variation of analog change event object (32) will be returned
when the master polls for events (class 1, 2 or 3). If 0 is entered here, the default value hard-coded in firmware will
be used.

Default class ! specifies in which class, 1, 2 or 3, the analog change events will be reported. Selecting “No
events” in the box means that analog change events will not be generated.

14 June 2000 7 DNP3 Server Configuration


Generate events when sub-group

" On-line condition changes, when checked, will generate an analog change event if the on-line (validity) state of
any point changes state, regardless of the value.

" Database is first updated, when checked, will generate an analog change event for each point, after a reset,
when the database receives its first value from the source of the analog.

Value changes by ! % of full scale. (This is the deadband value expressed as a percent of full scale.) For each
point, if the value in the database differs by more than this amount from the last acknowledged value reported to
the master, an event will be generated.

Status Group

Default static variation ! specifies which DNP object variation of binary input object (1) will be returned when the
master polls for class 0, static data. If 0 is entered here, the default value hard-coded in firmware will be used.

Default event variation ! specifies which DNP object variation of binary input change event object (2) will be
returned when the master polls for events (class 1, 2 or 3). If 0 is entered here, the default value hard-coded in
firmware will be used.

Default class ! specifies in which class, 1, 2 or 3, the binary input events will be reported. Selecting “No events” in
the box means that binary input events will not be generated.

Generate events when sub-group

" On-line condition changes, when checked, will generate a binary input event if the on-line (validity) state of any
point changes state, regardless of the point’s state.

" Database is first updated, when checked, will generate a binary input event for each point, after a reset, when
the database receives its first value from the source of the binary input.

" Point changes state, when checked, will generate a binary input event for any point whose state changes one or
more times since the last acknowledged state.

14 June 2000 8 DNP3 Server Configuration


COUNTERS Tab

Counters group

Counter default static variation ! specifies which DNP object variation of counter input object (20) will be returned
when the master polls for class 0, static data, if the respective checkbox on the communications tab is checked, or
whenever the master asks for count data without specifying an object variation. If 0 is entered here, the default
value hard-coded in firmware will be used.

Frozen default static variation ! specifies which DNP object variation of frozen counter input object (21) will be
returned when the master polls for class 0, static data, if the respective checkbox on the communications tab is
checked, or whenever the master asks for frozen count data without specifying an object variation. If 0 is entered
here, the default value hard-coded in firmware will be used.

Counter default event variation ! specifies which DNP object variation of counter event object (22) will be returned
when the master polls for events (class 1, 2 or 3). This edit box is permanently grayed out because DAQ does not
support counter events; only frozen counter events are supported.

14 June 2000 9 DNP3 Server Configuration


Frozen default event variation ! specifies which DNP object variation of counter event object (23) will be returned
when the master polls for events (class 1, 2 or 3). If 0 is entered here, the default value hard-coded in firmware will
be used.

Frozen counter events group

This group contains general information and three sub-groups. Freezing occurs in by three methods, when a
freeze command message is received from the master, a status point opens or closes (optional) or at regular time
intervals (optional). The three methods correlate to the three sub-groups.

At the time of a freeze, it is possible to generate a frozen counter event.

# Freeze total accumulation # Freeze delta accumulation tells the software what type freezing to perform.
Choosing freeze total copies the contents of the running count to the frozen register when a freeze occurs.
Selecting delta accumulation transfers the difference between what the running count is when the freeze occurs
and what the running count was at the last freeze. These radio buttons specify what values will be transferred to
the master station as a frozen count.

Generate events when counter changes by ! specifies the minimum count difference transferred from the last
freeze to cause an event. If the total radio button is selected and the total accumulation placed into the frozen
register at the time of the freeze is at least this value more than the count in the frozen register at the previous
freeze, then an event will be generated. If the delta radio button is selected and the new value in the frozen register
is at least this value, then an event will be generated. Setting this value to zero will cause an event creation at
every freeze.

Default event class ! specifies in which class, 1, 2 or 3, the frozen counter events will be reported. Selecting “No
events” in the box means that events will not be generated.

Message based freezing sub-group

" Generate events when master requests freeze specifies whether an event will be generated when the master
sends a freeze command and the difference criteria specified in the general section is satisfied.

Status triggered freezing sub-group

" Freeze counters when status point: ! tells the software to perform a freeze if the status point in the edit box
changes to an open or closed state, the next paragraph tells which. Events will only be generated if the difference
criteria specified in the general section is satisfied. The point selection is chosen be clicking the Browse button and
picking one of the available status points in the RTU.

# Changes to off # Changes to on specifies which state transition will initiate the freeze process.

Time-base freezing sub-group

" Freeze at regular intervals of ! tells the software to initiate freezing at periodic times if the checkbox is checked.
Selectable times are multiples of 5 minutes and the number of 5-minute periods in a freeze interval must be evenly
divisible into 288. The values in the dropdown box meet these criteria.

Synchronize freeze intervals at ! seconds after midnight tells the software to assure the freeze interval is aligned
at this time. For example, suppose you wanted to perform a freeze at 2 ½ minutes past midnight and every 5
minutes thereafter. This box would contain 150 (150 seconds = 2 ½ minutes) and the interval, per the previous
paragraph, would be set to 5 min.

" Enable automatic freezing when status input is: # off # on specifies whether the automatic freezing should be
associated with the state of a status point. For example, you might only want to perform the automatic freezing
when communications were lost with the master station. By checking the checkbox, you tell the software to
perform a freeze at the end of the interval if the chosen status point’s state is as specified by the radio buttons at
that time.

14 June 2000 10 DNP3 Server Configuration


The point number is selected with the Browse button in this sub-group and the point name is displayed in the edit
box.

14 June 2000 11 DNP3 Server Configuration

You might also like