Internal Data Points of the DNP3 Driver

An internal data point is needed for every peripheral device. The name for the internal data point type of a DNP3 outstation is _Dnp3Station. The data points of this type are managed by the DNP3 device panel. This panel can be used to create or remove these data points or to set or indicate the content.

The data point type _Dnp3Station has the following structure.

_Dnp3Station

Data point element Type

Direction

(seen from driver)

Description
Configuration string Input

Configuration string for the outstation. The original value can be either

IP:<IP address>:<port number>:<link address>

for TCP/IP connections or

SI:<COM port>:<link address>

for serial connections.

Examples:

“IP:192.168.1.1:3333:10” or

“SI:COM1:10”

Command.Active bool Input Activates/deactivates the DNP3 device. If the value is FALSE, the driver does not establish a connection to this device and ignores all requests for this device.
Command.AssignClass dyn_string Input

Allows to assign an address to a class.

<group>.<index>-<class mask>

Following options are available for the class mask parameter:

  • 1 => Class 1

  • 2 => Class 2

  • 4 => Class 3

Example

"1.10-4" indicates: Add the Binary Input Index 10 address to the class 3.

Command.GQ uint Input

Bit mask for execution of a general query to the corresponding device.

Bit 0 -> class 0

Bit 1 -> class 1

Bit 2 -> class 2

Bit 3 -> class 3

The value "5" means for instance that for class 2 and class 0 data a general query is executed.

Command.GroupGQ dyn_string Input

With this data point element a query to a specific group can be carried out. With the variation it can be specified in which format the data should be received.

Syntax:

group:variation

Example:

To query all counter with flags (variation 1) in 32 bit modem, the entry 20:1 has to be written to the data point element.

For the group and variation numbers see Compatibility of the DNP3 Driver (Interoperability).

Command.DelayMeasurement bool Input Executes a delay measurement for the corresponding device. The measured value is returned on the State.TimeDelay DPE.
Command.ColdRestart bool Input Executes a cold restart of the corresponding outstation.
Command.SyncTime bool Input Executes a time synchronization of the DNP3 device.
Command.ClearIIN unsigned Input

Executes a clear of internal indication bits in the device. The value written on the DPE is a bit mask with the following meaning:

Bit 0 -> reset “Restart” bit

Bit 1 -> reset “Need Time” bit

Command.UnsolicitedResponse unsigned Input

Bit mask to enable/disable unsolicited response.

Bit 0 -> class 1

Bit 1 -> class 2

Bit 2 -> class 3

A value "5" means for instance, that class 3 and class 1 are enabled and class 2 is disabled.

Command.ReadIIN bool Output

Reads out the bits of the internal indication and writes them to the data point element State.IIN, if TRUE.

The bits are updated in WinCC OA, if the value has changed (old/new comparison).

Config.Flags bit32

Contains various Boolean settings. It is used to configure some settings in connection with secure authentication. In the future, it can also be used for other Boolean settings.

Bit0 -> secure authentication activated(1)/deactivated(0)

Bit1 -> aggressive mode activated(1)/deactivated(0)

Bit2 -> SHA1 allowed (1)/not allowed (0)

Config.Security.Users dyn_string This data point element contains the list of user configurations for the device. The user number, user name, role and the pre-installed key are stored in each character string, separated by a semicolon. The key length can be either 16 or 32 bytes. In hex mode, this is 32 or 64 characters.

Z.B. "1;alug;operator;11223344556677889900112233445566

Config.Security.ActUser int Contains the user number of the active user to be used by the driver for the device.
State.ConnState bool Output Indication of connection status to the DNP3 device (not connected (0), connected(1)).
State.IIN bit32 Output Display of internal indication status word received from the DNP3 device.
State.TimeDelay unsigned Output Returns the measured time delay in milliseconds.
State.StationTime time Output Shows the read-out time from the outstation (see also readStationTime config entry).