protocol. See
Before using this driver in the PROMOTIC application it is highly recommended to watch "
Supported data types
The
DNP3 protocol divides data types into groups (so-called
Group), which are specified by their number.
In each group, data can be transmitted in different formats (so-called
Variation), which are also designated by their number.
A query for a variable with
Variation=0 means that the other side (so-called
outstation) will send a response in whatever format it deems appropriate.
-
Group 1 = Single-bit Binary Input:
(Type:
Static, read only)
- Variation 1 = g1.v1: Packet format
- Variation 2 = g1.v2: With Flag
-
Group 2 = Single-bit Binary Input Event:
(Type:
Event, read only)
- Variation 1 = g2.v1: Without time
- Variation 2 = g2.v2: With absolute time
- Variation 3 = g2.v3: With relative time
-
Group 3 = Double-bit Binary Input:
(Type:
Static, read only)
- Variation 1 = g3.v1: Packet format
- Variation 2 = g3.v2: With Flag
-
Group 4 = Double-bit Binary Input Event:
(Type:
Event, read only)
- Variation 1 = g4.v1: Without time
- Variation 2 = g4.v2: With absolute time
- Variation 3 = g4.v3: With relative time
-
Group 10 = Binary Output:
(Type:
Static, for read and write)
- Variation 1 = g10.v1: Packed format (for read and write)
- Variation 2 = g10.v2: Output status with Flag (read only)
-
Group 11 = Binary Output Event:
(Type:
Event, read only)
- Variation 1 = g11.v1: Status without time
- Variation 2 = g11.v2: Status with time
-
Group 12 = Binary Output Command:
(Type:
Cmnd, for write only)
- Variation 1 = g12.v1: Control relay output block (CROB)
- Variation 2 = g12.v2: Pattern control block (PCB)
- Variation 3 = g12.v3: Pattern mask
-
Group 13 = Binary Output Command Event:
(Type:
Event, read only)
- Variation 1 = g13.v1: Command status without time
- Variation 2 = g13.v2: Command status with time
-
Group 20 = Counter:
(Type:
Static, read only)
- Variation 1 = g20.v1: 32-bit with Flag
- Variation 2 = g20.v2: 16-bit with Flag
- Variation 3 = g20.v3: 32-bit with Flag, delta
- Variation 4 = g20.v4: 16-bit with Flag, delta
- Variation 5 = g20.v5: 32-bit without Flag
- Variation 6 = g20.v6: 16-bit without Flag
- Variation 7 = g20.v7: 32-bit without Flag, delta
- Variation 8 = g20.v8: 16-bit without Flag, delta
-
Group 21 = Frozen Counter:
(Type:
Static, read only)
- Variation 1 = g21.v1: 32-bit with Flag
- Variation 2 = g21.v2: 16-bit with Flag
- Variation 3 = g21.v3: 32-bit with Flag, delta
- Variation 4 = g21.v4: 16-bit with Flag, delta
- Variation 5 = g21.v5: 32-bit with Flag and time
- Variation 6 = g21.v6: 16-bit with Flag and time
- Variation 7 = g21.v7: 32-bit with Flag and time, delta
- Variation 8 = g21.v8: 16-bit with Flag and time, delta
- Variation 9 = g21.v9: 32-bit without Flag
- Variation 10 = g21.v10: 16-bit without Flag
- Variation 11 = g21.v11: 32-bit without Flag, delta
- Variation 12 = g21.v12: 16-bit without Flag, delta
-
Group 22 = Counter Event:
(Type:
Event, read only)
- Variation 1 = g22.v1: 32-bit with Flag
- Variation 2 = g22.v2: 16-bit with Flag
- Variation 3 = g22.v3: 32-bit with Flag, delta
- Variation 4 = g22.v4: 16-bit with Flag, delta
- Variation 5 = g22.v5: 32-bit with Flag and time
- Variation 6 = g22.v6: 16-bit with Flag and time
- Variation 7 = g22.v7: 32-bit with Flag and time, delta
- Variation 8 = g22.v8: 16-bit with Flag and time, delta
-
Group 23 = Frozen Counter Event:
(Type:
Event, read only)
- Variation 1 = g23.v1: 32-bit with Flag
- Variation 2 = g23.v2: 16-bit with Flag
- Variation 3 = g23.v3: 32-bit with Flag, delta
- Variation 4 = g23.v4: 16-bit with Flag, delta
- Variation 5 = g23.v5: 32-bit with Flag and time
- Variation 6 = g23.v6: 16-bit with Flag and time
- Variation 7 = g23.v7: 32-bit with Flag and time, delta
- Variation 8 = g23.v8: 16-bit with Flag and time, delta
-
Group 30 = Analog Input:
(Type:
Static, read only)
- Variation 1 = g30.v1: 32-bit with Flag
- Variation 2 = g30.v2: 16-bit with Flag
- Variation 3 = g30.v3: 32-bit without Flag
- Variation 4 = g30.v4: 16-bit without Flag
- Variation 5 = g30.v5: Single-precision, floating-point with Flag
- Variation 6 = g30.v6: Double-precision, floating-point with Flag
-
Group 31 = Frozen Analog Input:
(Type:
Static, read only)
- Variation 1 = g31.v1: 32-bit with Flag
- Variation 2 = g31.v2: 16-bit with Flag
- Variation 3 = g31.v3: 32-bit with time-of-freeze
- Variation 4 = g31.v4): 16-bit with time-of-freeze
- Variation 5 = g31.v5: 32-bit without Flag
- Variation 6 = g31.v6: 16-bit without Flag
- Variation 7 = g31.v7: Single-precision, floating-point with Flag
- Variation 8 = g31.v8: Double-precision, floating-point with Flag
-
Group 32 = Analog Input Event:
(Type:
Event, read only)
- Variation 1 = g32.v1: 32-bit without time
- Variation 2 = g32.v2: 16-bit without time
- Variation 3 = g32.v3: 32-bit with time
- Variation 4 = g32.v4: 16-bit with time
-
Variation 5 = g32.v5:
Single-precision, floating-point without time
- Variation 6 = g32.v6: Double-precision, floating-point without time
- Variation 7 = g32.v7: Single-precision, floating-point with time
- Variation 8 = g32.v8: Double-precision, floating-point with time
-
Group 33 = Frozen Analog Input Event:
(Type:
Event, read only)
- Variation 1 = g33.v1: 32-bit without time
- Variation 2 = g33.v2: 16-bit without time
- Variation 3 = g33.v3: 32-bit with time
- Variation 4 = g33.v4: 16-bit with time
- Variation 5 = g33.v5: Single-precision, floating-point without time
- Variation 6 = g33.v6: Double-precision, floating-point without time
- Variation 7 = g33.v7: Single-precision, floating-point with time
- Variation 8 = g33.v8: Double-precision, floating-point with time
-
Group 34 = Analog Input Reporting Deadband:
(Type:
Static, for read and write)
- Variation 1 = g34.v1: 16-bit
- Variation 2 = g34.v2: 32-bit
- Variation 3 = g34.v3: Single-precision, floating-point
-
Group 40 = Analog Output Status:
(Type:
Static, read only)
- Variation 1 = g40.v1: 32-bit with Flag
- Variation 2 = g40.v2: 16-bit with Flag
- Variation 3 = g40.v3: Single-precision, floating-point with Flag
- Variation 4 = g40.v4: Double-precision, floating-point with Flag
-
Group 41 = Analog Output:
(Type:
Cmnd, for write only)
- Variation 1 = g41.v1: 32-bit
- Variation 2 = g41.v2: 16-bit
- Variation 3 = g41.v3: Single-precision, floating-point
- Variation 4 = g41.v4: Double-precision, floating-point
-
Group 42 = Analog Output Event:
(Type:
Event, read only)
- Variation 1 = g42.v1: 32-bit without time
- Variation 2 = g42.v2: 16-bit without time
- Variation 3 = g42.v3: 32-bit with time
- Variation 4 = g42.v4: 16-bit with time
- Variation 5 = g42.v5: Single-precision, floating-point without time
- Variation 6 = g42.v6: Double-precision, floating-point without time
- Variation 7 = g42.v7: Single-precision, floating-point with time
- Variation 8 = g42.v8: Double-precision, floating-point with time
-
Group 43 = Analog Output Command Event: (Type:
Event, read only)
- Variation 1 = g43.v1: 32-bit without time
- Variation 2 = g43.v2: 16-bit without time
- Variation 3 = g43.v3: 32-bit with time
- Variation 4 = g43.v4: 16-bit with time
- Variation 5 = g43.v5: Single-precision, floating-point without time
- Variation 6 = g43.v6: Double-precision, floating-point without time
- Variation 7 = g43.v7: Single-precision, floating-point with time
- Variation 8 = g43.v8: Double-precision, floating-point with time
-
Group 50 = Time and Date: (Type:
Info, for read and write)
- Variation 1 = g50.v1: Absolute time
- Variation 2 = g50.v2: Absolute time and interval
- Variation 3 = g50.v3: Absolute time and last recorded time
- Variation 4 = g50.v4: Indexed absolute time and long interval
-
Group 51 = Time and Date Common Time-of-Occurence: (Type:
Info, read only)
- Variation 1 = g51.v1: Absolute time, synchronized
- Variation 2 = g51.v2: Absolute time, unsynchronized
-
Group 52 = Time Delay: (Type:
Info, read only)
- Variation 1 = g52.v1: Coarse
- Variation 2 = g52.v2: Fine
-
Group 60 = Class objects:
(Type:
Info, read only)
-
Variation 1 = g60.v1:
Class 0 data (
Static)
- Variation 2 = g60.v2: Class 1 data (Event)
- Variation 3 = g60.v3: Class 2 data (Event)
- Variation 4 = g60.v4: Class 3 data (Event)
-
Group 80 = Internal Indications:
(Type:
Static, for read and write)
- Variation 1 = g80.v1: Packed format
The values in the Internal Indications variable
The bits in this value (of the
Long type) indicate certain states and error conditions within the outstation.
This value can be read:
- by means of the
PmaCommMsg object in messages (the value is always in the
IntInd variable):
or
Bit 0: BROADCAST
A broadcast message was received.
Bit 1: CLASS_1_EVENTS
The outstation has unreported Class1 events.
Bit 2: CLASS_2_EVENTS
The outstation has unreported Class2 events.
Bit 3: CLASS_3_EVENTS
The outstation has unreported Class3 events.
Bit 5: LOCAL_CONTROL
One or more of the outstation's points are in local control mode.
Bit 6: DEVICE_TROUBLE
An abnormal, device-specific condition exists in the outstation.
Bit 7: DEVICE_RESTART
The outstation restarted.
Bit 8: NO_FUNC_CODE_SUPPORT
The outstation does not support this function code.
Bit 9: OBJECT_UNKNOWN
The outstation does not support requested operation for objects in the request.
Bit 10: PARAMETER_ERROR
A parameter error was detected.
Bit 11: EVENT_BUFFER_OVERFLOW
An event buffer overflow condition exists in the outstation, and at least one unconfirmed event was lost.
Bit 12: ALREADY_EXECUTING
The operation requested is already executing.
Bit 13: CONFIG_CORRUPT
The outstation detected corrupt configuration.