MDNP3

Concept Link IconSee also

Communication control the DNP3 client driver.

WebVue support - Yes.

Mode Mnemonic Syntax
0 NETWORK_START 1
1 NETWORK_STOP 1
2 DEVICE_START 2
3 DEVICE_STOP 2
4 SYNC 3
5 RESET or COLD_RESTART 3
6 REFRESH_ATT 3
7 CLASS 4
8 READ_GROUP 5, 6, 7
9 FREEZE 8
10 SELECT 9
11 OPERATE 9
12 DIRECT_OPERATE 10
13 SELECT_CROB 11
14 OPERATE_CROB 11
15 DIRECT_OPERATE_CROB 11
16 DIRECT_OPERATE_NO_ACK_CROB 11

DNP3 file transfer services are supported using the verb FILETRANSFER.

Common arguments

Argument

Meaning

Network_Name

The name of a DNP3 network. Type STR.

Device_Name

The name of a DNP3 device. Type STR.

GroupNum A DNP3 group number. Any numeric type.
VariationNum A variation number within the group which determines the encoding format for the data and the presence (or not) of the flags and event time. Any numeric type.
ResultVar

The name of a register variable in which information resulting from the instruction will be placed. Type STR.

Possible values are:

0 - The command is being sent to the DNP3 network.
1 - The command was sent successfully.
2 - The command was not sent successfully.

Syntax 1

MDNP3(Mode, Network_Name);

Execution

Mode

Mnemonic

Action

0 NETWORK_START Start the network.
1 NETWORK_STOP Stop the network.

Syntax 2

MDNP3(Mode, Network_Name, Device_Name);

Execution

Mode

Mnemonic

Action

2 DEVICE_START Start the device.
3 DEVICE_STOP Stop the device.

Syntax 3

MDNP3(Mode, Network_Name, Device_Name[, ResultVar]);

Execution

Mode

Mnemonic

Action

4 SYNC Synchronize the device clock.
5* RESET
Instruct the device to perform a cold restart (function code 13).
5* COLD_RESTART Instruct the device to perform a cold restart (function code 13).
6 REFRESH_ATT Refresh information related to the device attributes and timestamp of the device. Reads object groups 0 and 50.

* Mode 5 has two alternative mnemonics. The actions are identical.

Syntax 4

MDNP3(Mode, Network_Name, Device_Name, ClassNum [, ResultVar]);

Argument

Meaning

ClassNum The number of a DNP3 class. Range 0 to 3.

Execution

Mode

Mnemonic

Action

7 CLASS Refresh the variables by requesting the data points associated with one of the DNP3 classes.

Syntax 5

MDNP3(Mode, Network_Name, Device_Name, GroupNum, VariationNum, "START_STOP", Start, Stop[, ResultVar]);

Argument

Meaning

Start The number of the first data point to be read. Any numeric type.
Stop The number of the last data point to be read. Any numeric type.

Execution

Mode

Mnemonic

Action

8 READ_GROUP Refresh the variables by requesting a range of data points from a group and using a specific variation to format the data.

Syntax 6

MDNP3(Mode, Network_Name, Device_Name, GroupNum, VariationNum, "QUANTITY", Quantity[, ResultVar]);

Argument

Meaning

Quantity The number of data points to be read. Any numeric type.

Execution

Mode

Mnemonic

Action

8 READ_GROUP Refresh the variables by requesting a number of data points from a group and using a specific variation to format the data.

Syntax 7

MDNP3(Mode, Network_Name, Device_Name, GroupNum, VariationNum, "ALL"[, ResultVar]);

Execution

Mode

Mnemonic

Action

8 READ_GROUP Refresh the variables by requesting all the data points from a group and using a specific variation to format the data.

Syntax 8

MDNP3(Mode, AckMode, ClearMode, Network_Name, Device_Name[, ResultVar]);

Argument

Meaning

AckMode A flag requesting acknowledgement or not. Either "NO_ACK" (0), or "ACK" (1).
ClearMode A flag requesting that the counters be cleared, or not. Either "DO_NOT_CLEAR" (0), or "CLEAR" (1).

Execution

Mode

Mnemonic

Action

9 FREEZE Freeze the device counters with optional acknowledge and clear.

Syntax 9

MDNP3(Mode, Variable, Value[, ResultVar]);

Argument

Meaning

Variable The name of a variable linked to a data point of a DNP3 device. The variable can be either a register linked to an AO (analog output) or a bit linked to a BO (binary output). Type STR.
Value The value to which the variable is to be sent.

Execution

Mode

Mnemonic

Action

10 SELECT Send a select message to the DNP3 device. A select should be followed by an operate.
11 OPERATE Send an operate message to the DNP3 device. An operate must be preceded by a select.

Syntax 10

MDNP3(Mode, Variable, Value[, NoAck, [ResultVar]]);

Argument

Meaning

Variable The name of a variable linked to a data point of a DNP3 device. The variable can be either a register linked to an AO (analog output) or a bit linked to a BO (binary output). Type STR.
NoAck An optional flag set to 1 (no acknowledge is required) or 0 (acknowledge is required). The default is 0.
Value The value to which the variable is to be sent.

Execution

Mode

Mnemonic

Action

12 DIRECT_OPERATE Send a direct operate message to the DNP3 device.

The messages sent to the DNP3 device using modes 10, 11 and 12 incorporate a structured datablock called an AOB (Analog Output Block) when used for a register variable, or a CROB (Control Relay Output Block) when used with a bit variable. Some of the parameters used in the AOB and CROB are supplied by the variable's advanced properties.

Syntax 11

MDNP3(Mode, Variable, OpType, Queue, Clear, TripClose, Count, OnTime, OffTime[, ResultVar]);

Argument

Meaning

Variable The name of a variable linked to a data point of a DNP3 device. The variable can be either a register linked to an AO (analog output) or a bit linked to a BO (binary output). Type STR.
OpType See below.
Queue See below.
Clear See below.
TripClose See below.
Count The number of times that the operation is to be executed.
OnTime The CROB on time in milliseconds. Any numeric type.
OffTime The CROB off time in milliseconds. Any numeric type.

Coding of the OpType argument

Mnemonic Value
"NULL" 0
"PULSE_ON" 1
"PULSE_OFF" 2
"LATCH_ON" 3
"LATCH_OFF" 4

Coding of the Queue argument

Mnemonic Value
"DO_NOT_QUEUE" 0
"QUEUE" 1

Coding of the Clear argument

Mnemonic Value
"DO_NOT_CLEAR" 0
"CLEAR" 1

Coding of the TripClose

Mnemonic Value
"NULL" 0
"TRIP" 1
"CLOSE" 2

Execution

Mode

Mnemonic

Action

13 SELECT_CROB Send a select message to the DNP3 device. The CROB properties are supplied as arguments rather than by the variable's advanced properties. A select should be followed by an operate.
14 OPERATE_CROB Send an operate message to the DNP3 device. The CROB properties are supplied as arguments rather than by the variable's advanced properties. An operate must be preceded by a select.
15 DIRECT_OPERATE_CROB Send a direct operate message to the DNP3 device. The CROB properties are supplied as arguments rather than by the variable's advanced properties.
16 DIRECT_OPERATE_NO_ACK_CROB Send a direct operate with no acknowledge message to the DNP3 device. The CROB properties are supplied as arguments rather than by the variable's advanced properties.

If the property Different address was enabled in the variable's configuration this is still taken into account.