MDNP3
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. |
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.