<< Click to Display Table of Contents >> Navigation: Multi-Protocol MasterOPC Server > DLMS PROTOCOL PLUG-IN > DLMS PROTOCOL DESCRIPTION > DLMS PROTOCOL DESCRIPTION |
DLMS protocol is an open object-based protocol for network exchange with various metering devices - electricity, heat, water, gas meters. The protocol supports RS-485 (232) and TCP/IP networks as well as optical port. The protocol offers multi-level authentication and encryption mechanisms, supports transfer of archives and group polling of variables. The protocol also provides the possibility to obtain a complete list of objects of this device.
The objects are the main variables of the protocol. DLMS object presents various options of the data structures intended for transferring the device parameters (current values, archives, meter readings, connection parameters). Each type of object has its own data structure, however, some object attributes can have a dynamic data type preset by the device manufacturer.
The following DLMS objects are currently supported by the polling driver:
Objects |
Number |
Description |
Data |
1 |
Data object. Intended for storing the non-denominated values of different types. |
Register |
3 |
Data register. Has a logic name, value, scale and measurement units. Intended for storing the denominated values of different types. This is a main object that stores the most of the current device parameters (voltage, current, power, energy). |
Extended Register |
4 |
Extended register. Similar to the data register, but has some additional attributes - status and record time. Intended for storing the denominated values of various types, recorded in a certain point of time (for example, maximum and minimum power). |
Demand Register |
5 |
Averaging register. This class is intended for recording the average variable value by sliding window method for a certain period of time. This class can be used for calculation and storage of peak power values as well as average voltage (current) values within measurement interval |
Profile Generic |
7 |
All-purpose profile. This interface class is dedicated for storing and access to data groups - so called «captured objects». The captured objects are attributes or object attribute elements. The captured object are collected periodically (load profile) or when a certain condition occurs (event logs). All-purpose profile is the main method to obtain the archived values of the device. Currently only load profiles are supported - event logs are not supported. |
Clock |
8 |
Time. The object intended for time storage as well as for automatic switch to day-light saving time. In the driver, the Clock object is added as a static non-deletable service variable configured to display the current counter time. |
For the purpose of identification each object has a special identifier - OBIS code. OBIS code is a 6-digit identifier with a point used as a separator - A.B.C.D.E.F. Each identifier byte can define the property of the polled object.
OBIS byte |
Description |
A |
Type of record (0 - abstract objects, 1 - electricity, 4,5,6 - heat meter, 7 - gas meter, 8,9 - water meter). |
B |
Channel number |
C |
Parameter type. Depends on the А parameter. For example, for А=1, С=21 - active power in phase 1. |
D |
Data process method. Depends on the А parameter. For example, at А=1, D=7 - instantaneous value, D = 8 - integral (accumulated value) from the beginning of operation. |
E |
Tariff or harmonic index (for А=1) |
F |
Archiver index. For current - 255. |
Example of OBIS code - 1.0.31.7.0.255, electricity parameter, current in phase L1, current value, zero harmonic (sum of harmonics). Using the OBIS coding you can define the purpose of the main objects of the device, to simplify this task the driver has a built-in import utility. To generate names and comments of the variable a set of XML and CSV files with a certain structure is included with the import utility. If necessary, the files can be edited by user.
Several C and D group identifiers are introduced in OBIS to define the specific objects (not provided for by the base standard):
•Code C=94 defines the data as specific object for a certain country. The country code is defined by D parameter and in most cases coincides with the telephone code of the country (for example, Russia - code 7). The other OBIS bytes define the parameter itself.
•Codes C=128-199, 244 - codes for the objects defined by the device manufacturer. The other OBIS bytes define the parameter itself.
Driver import utility can define these objects base on specific CSV file that can be generated by the user.