DNP3 Data Objects — Binary, Analog, Counter, and Control Points
Key Takeaway
Complete reference for DNP3 data object types — binary inputs, analog inputs, counters, binary outputs, analog outputs, with object groups and variations.
Quick Answer
DNP3 organizes data into typed objects — binary inputs, analog inputs, counters, binary outputs, and analog outputs. Each object group has variations for static values and events, and each instance can be assigned to an event class for prioritized reporting.
Object Group Reference
| Group | Type | Description |
|---|---|---|
| 1/2 | Binary Input | Static (1) and event (2). Digital status: pump running, valve open. |
| 30/32 | Analog Input | Static (30) and event (32). Process values: pressure, temperature, flow. |
| 20/22 | Counter | Static (20) and event (22). Accumulated values: flow totals, energy. |
| 10/12 | Binary Output | Status (10) and event (12). Control outputs: start/stop, open/close. |
| 40/42 | Analog Output | Status (40) and event (42). Setpoints: PID SP, valve position. |
Variations
Each object group has variations defining the data format. For example, Analog Input Group 30 has variations for 32-bit integer (Var 1), 16-bit integer (Var 2), 32-bit float (Var 5), and 64-bit float (Var 6). The master and outstation negotiate which variation to use.
Static vs Event Objects
- Static — Current value returned during integrity polls (Class 0). Always represents the latest value.
- Event — Queued change records with timestamps. Generated when a value changes beyond the configured deadband or when a state change occurs.
Deadband Configuration
Analog input event deadband defines the minimum change required to generate an event. Setting appropriate deadband prevents excessive event generation on noisy signals while ensuring significant changes are reported.
Frequently Asked Questions
DNP3 organizes data into numbered groups by type: Group 1/2 for binary inputs, Group 30/32 for analog inputs, Group 20/22 for counters, Group 10/12 for binary outputs, and Group 40/42 for analog outputs.
Static objects return the current value during integrity polls. Event objects are queued change records with timestamps, generated when values change beyond the configured deadband.