IEC62056-21:2002 Serial communication protocol

Supported device types and versions
Communication line configuration
Communication line protocol parameters
Communication station configuration
Station protocol parameters
I/O tag configuration
I/O tag address
Literature
Changes and modifications
Document revisions

Supported device types and versions


The protocol implements serial communication with devices according to international standard IEC62056-21, protocol mode C, or protocol mode D (passive readout).

Communication line configuration


  • Communication line categories: Serial, SerialOverUDP Device Redundant, RFC2217 ClientMOXA IP Serial Library, TCP/IP-TCPMODEM.
  • To set the transmission parameters, use the even parity, 7 data bits, and 1 stop bit in all line categories!
  • A transfer rate according to the setting of a specific device or modem (in protocol mode D the transfer rate is 2400 baud according to the standard).
  • The implicit parameters comply with the MODEM line (tab "Modem - parameters"), the specific parameters can be configured by station protocol parameters for modem initialization.

Communication line protocol parameters


Configuration dialog box, tab Protocol parameters - select the protocol "IEC62056-21:2002 Serial".

Table 1

ParameterMeaningUnitDefault value
Area Code
The common call prefix for phone modem connection (only lines of MODEM category).

Software 7E1
The YES value activates SW emulation of transfer parameters of 7 data bits, even parity when the transfer parameters of 8 data bits, none parity, are set (i.e. emulation 7E1 when 8N1 is set).YES/NONO

Communication station configuration



  • Communication protocol "IEC62056-21:2002 Serial".
  • The station address (device) is optional. If the parameter is empty, the device must answer. If there are more devices on one line (e.g. RS485 bus), the device address must be set. The device address consists of a maximum of 32 characters that are formed from figures (0 - 9), capital letters (A - Z), small letters (a - z), or spaces ( ). The zeroes in front of a valid figure are ignored (i.e. address 10203 = 010203 = 000010203).

Station protocol parameters


Configuration dialog box - tab Protocol parameters.
These parameters influence some optional protocol parameters. The following station protocol parameters can be set:

Table 2

ParameterMeaningUnitDefault value

Modem Telephone Number

The phone number for connection via modem with this station (only lines of MODEM category).


Dial Timeout
The maximum waiting time on connection via modem (only lines of MODEM category).sec60
Dial Retry Count
The maximum number of attempts to connect via modem (only lines of MODEM category).1..201
Dial Retry Timeout
Delay before attempting to dial after an unsuccessful connection attempt (only lines of MODEM category).sec30
Wait First Timeout
The time delay between sending the request and reading the answer.
Note: a device sends a 3-character manufacturer's identification in the identification message. The standard defines that if the 3-rd character is a lowercase letter, (e.g. in identifications ELm or UNi), the minimum reaction time for such a device is 20 ms instead of 200 ms. If the 3-rd character is an upper case letter, this does not preclude supporting a 20 ms reaction time.
ms200
Wait Timeout
The time delay between reading the answer till it is completed. See the note for the Wait First Timeout parameter.ms200
Max Wait Retry
A retry count of reading response until its completion.1 .. 10020
Retry Timeout
The delay between the request retries if the error communication occurs.ms1000 ms
Retry Count
A retry count of request in case of a communication error.1 .. 203
Disconnect Timeout
Timeout for waiting for an answer to modem hangup operation (only lines of MODEM category).sec15

Passive Mode

Activation of a passive mode, which corresponds to IEC62056-21, protocol mode D (no requests are sent, data arrives spontaneously)YES/NONO

Baudrate Changeover (Z)
Value of 'Z' parameter - Baud rate identification (for baud rate changeover) of Acknowledgement/option select message request of protocol's C mode.

AUTO option finds out automatically the value 'Z' from the acknowledging answer and uses it.

300 Baud
600 Baud
1200 Baud
2400 Baud
4800 Baud
9600 Baud
19200 Baud
38400 Baud
57600 Baud
115200 Baud
AUTO
2400 Baud
Data Readout
The parameter enables the reading of the current values ("data readout").YES/NOYES
Manuf. Spec. Table Readout Nr.1 (Y)
The parameter enables reading of the "manufacturer-specific table" values, 1-st block.
Choice '-' means the values are not read, choice '6' to '9' means the selected "manufacturer-specific table" will be read.
-
6
7
8
9
-
Manuf. Spec. Table Readout Nr.2 (Y)The parameter enables reading of the "manufacturer-specific table" values, 2-nd block.
Choice '-' means the values are not read, choice '6' to '9' means the selected "manufacturer-specific table" will be read.
-
6
7
8
9
-
Manuf. Spec. Table Readout Nr.3 (Y)The parameter enables reading of the "manufacturer-specific table" values, 3-rd block.
Choice '-' means the values are not read, choice '6' to '9' means the selected "manufacturer-specific table" will be read.
-
6
7
8
9
-
Load Profile
The parameter enables the reading of the historical data from the profile.YES/NOYES
Profile
Profile name - OBIS code of load profile used during the reading of historical data from profile.
P.01
Profile Time Mask
Date and time masks used to read historical data from the profile. Meaning of the "z" flag - see the description of the Session Recognition Flag parameter.
The letter " z" is used to set the time and is replaced by a value of 0, 1, or 2 according to the Session Recognition Flag parameter.

zyymmddhhmi
Profile History Depth
Time depth of historical profile readings.hour24
Time Round
Time rounding of data from a profile.min15
Profile Read Step
The time range of data that is queried from the profile in one request. It is entered as a multiple of the "Time Round" parameter.
Note: the value 0 means reading all historical data at once.
x Time Round2

Profile Read Level

Access level used to read historical data from profile.0-95

Profile Read Mode

Method of reading from the profile:

  • VDEW read command (R5) : READ command will be used (the R5 default level can be changed by the Profile Read Level parameter).
  • VDEW block read command (R6) : BLOCK READ command will be used (the default level should be changed to R6 by Profile Read Level parameter).
  • P1 + VDEW read command (R5) : first, a Level 1 password will be set (see the Password - level 1 parameter), and then the READ command will be used 
  • P1 + VDEW block read command (R6): first, a Level 1 password will be set (see the Password - level 1 parameter), and then the BLOCK READ command will be used 

BLOCK READ divides the data into several blocks with the size of Profile Read Block Length rows. Block reading makes sense on lines with higher error rates.

-VDEW read command (R5)

Profile Read Block Length

Block size (number of rows) if BLOCK READ from the profile is used - if Profile Read Mode is VDEW block read command (R6) or P1 + VDEW block read command (R6)row4

Profile Read Formatted Execution

This parameter enables specifying a special sequence that may be required by some electrometers. So far the only known sequence is F101()
(The whole sequence sent to electrometers is <SOH>E2<STX>F101()<ETX><SOH> ).
-

No Answer for Load Profile

If the meter does not respond when reading data from the profile, the next time interval is read (YES) or the reading is interrupted and the reading of the profile for the problematic time interval is repeated during the next data reading from the station (NO).
Note: this behavior had to be implemented for the AMT B23 FR4TDI4 power meter.

YES/NONO
Password - level 1
The password necessary for changing the configuration of the device (level 1) used to set the date and time.
"00000000"
Session Recognition Flag
A flag that indicates the type of date/time used by the device. Electrometers LZQJ manufactured by EMH Elektrizitätszähler indicates the type of date/time by this flag (0=Normal Time, 1=Summer Time, 2=UTC Time).
This flag is used by Time Mask and Date Mask parameters to set the time and by Profile Time Mask parameter to read historical data from the profile.
Note: Both Normal Time and Summer Time values will cause the flag to be set depending on the time currently set or read.
Normal Time
Summer Time
UTC Time
Normal time
Time Register
Register used to set the time.
The parameter is important only if synchronization is enabled on the "Time parameters" tab in the configuration of the station.

0.9.1
Time Mask
Mask used to set the time.
The letter "z" is used for time conversion according to the Session Recognition Flag parameter.
The parameter is important only if synchronization is enabled on the "Time parameters" tab in the configuration of the station.
Note: Some meters are disturbed by summer/winter time ("z") flag and require mask hhmiss

zhhmiss
Date Register
Register used to set the date.
The parameter is important only if synchronization is enabled on the "Time parameters" tab in the configuration of the station.

0.9.2
Date Mask
Mask used to set the date.
The letter "z" is used for dátumu conversion according to the Session Recognition Flag parameter.
The parameter is important only if synchronization is enabled on the "Time parameters" tab in the configuration of the station.
Note: Some meters are disturbed by the summer/winter time ("z") flag and require mask ddmmyy or require a year-month-day order (zyymmdd or yymmdd)

zddmmyy

Time Date Mode

Special settings used when setting the date and time. These may be required by some electricity meters.

  • Normal: no special settings
  • (00000000): this string is added after the written date/time.
    Example: if Date Mask is zddmmyy,  the date 31 Dec 2019 is written as (0311219)(00000000)
Normal
(00000000)
Normal

AT Command 1

A special initial string of modem 1 (only for MODEM lines).
AT&FE0V1Q0B0X3L0M0
AT Command 2
A special initial string of modem 2 (only for MODEM lines).

Explanation of recommended settings:

S37=5   1200bps DTE-DTE speed - limits the speed for modems. Many devices use modems with limited transfer speeds and this setting can speed-up the connection establishment process. Higher transfer speeds must be negotiated individually.

&D2   DTR drop to hangup - for matching with the parameter of modem line (line configuration, tab "Modem - parameters", check the option "Use DTR for Hangup").

S0=0   Disable auto-answer. Auto-answer will not be used.

S30=2   20 sec inactivity timeout - automatic hangup after idle timeout expired. Necessary for assuring connection termination after the communication with the last device is over.



ATS37=5&D2S0=0S7=60S30=2

Full Debug

Full tracing of communication, loaded values of I/O tags and other debug information are shown.YES/NONO

Ignore Number of Periods

The parameter is used to ignore the "Number of Periods" value that a particular electricity meter (Schrack LZQJ) sent in the data reading for the Demand Register (class_id = 5). He sent this between the OBIS code and the value itself, which led to an unsuccessful attempt by the D2000 KOM process to interpret the value as an optional timestamp and subsequently to discard the entire data line read. Example of such a data line:
1.4.0(007)(0224*kW)
Note: sending "Number of Periods" does not comply with IEC62056-21.

YES/NONO
Unicontrols Devices
It activates data processing according to software implementation of protocol from Unicontrols.YES/NONO

Unicontrols Read Index

Activates reading of profile index (map of records stored in memory) within the reading of historical data from profile (Unicontrols device only). The retrieved index is not processed further and serves only as debugging information for Unicontrols.YES/NONO

Ignore BCC Error

Ignore packet checksum. The packet will be processed even if the checksum does not match.

YES/NONO

I/O tag configuration


Possible types of I/O tag values: Ai, Ci, Di, TxtI, TiA, TiR.

I/O tag address


I/O tag address corresponds to standard IEC 62056-61:2002 Object Identification System (OBIS) in terms of "Annex A - Code presentation".
The I/O tag with an address starting with %IGNORE will be ignored.

Abbreviated format of the address is supported: C.D[.E][*F] as well as full format A.B.C.D[.E][*F]
(from 31.5.2021 also format containing colon and hyphen separators instead of a full stop, e.g. A-B:C.D.E)

in which:

  • A - Value group A (number in range 0..15). The number defines media (energy type) to which the metering is related. Nonmedia related information is handled as abstract data.
    • 0 - Abstract objects
    • 1 - Electricity related objects
    • 4 - Heat cost allocator related objects
    • 5 - Cooling related objects
    • 6 - Heat related objects
    • 7 - Gas related objects
    • 8 - Cold water related objects
    • 9 - Hot water related objects
    • All other - reserved
  • B - Value group B (number in range 0..255). The number defines the channel number (for devices with multiple inputs, data concentrators etc).
    • 0 - No channel specified
    • 1…64 - Channel 1-64
    • 65…127 - Utility specific codes
    • 128…199 - Manufacturer specific codes
    • 200…255 - Reserved
  • C - Value group C (number in range 0..255 or characters 'C', 'F', 'L' or 'P'). The number defines the abstract or physical data items related to the information source concerned, for example, current, voltage, power, volume, temperature and for range 0…89 it depends on value group A:
    • 0…89 -Context-specific identifiers (depending on Value group A). For electricity-related objects (A = 1):
      • 0 - General purpose objects
      • 1 - Sum(Li) Active power+ (QI+QIV)
      • 2 - Sum(Li) Active power- (QII+QIII)
      • 3 - Sum(Li) Reactive power+ (QI+QII)
      • 4 - Sum(Li) Reactive power– (QIII+QIV)
      • 5 - Sum(Li) Reactive power QI
      • 6 - Sum(Li) Reactive power QII
      • 7 - Sum(Li) Reactive power QIII
      • 8 - Sum(Li) Reactive power QIV
      • 9 - Sum(Li) Apparent power+ (QI+QIV)
      • 10 - Sum(Li) Apparent power– (QII+QIII)
      • 11 - Current : any phase
      • 12 - Voltage : any phase
      • 13 - Sum(Li) Power factor-
      • 14 - Supply frequency
      • 15 - Sum(Li) Active power (abs(QI+QIV)+abs(QII+QIII))
      • 16 - Sum(Li) Active power (abs(QI+QIV)-abs(QII+QIII))
      • 17 - Sum(Li) Active power QI
      • 18 - Sum(Li) Active power QII
      • 19 - Sum(Li) Active power QIII
      • 20 - Sum(Li) Active power QIV
      • 21 - L1 Active power+
      • 22 - L1 Active power–
      • 23 - L1 Reactive power+
      • 24-30 L1 etc.. (see 4-10)
      • 31 - L1 Current
      • 32 - L1 Voltage
      • 33 - L1 Power factor
      • 34 - L1 Supply frequency
      • 35-40 L1 Active power... etc. (see 15-20)
      • 41 - L2 Active power+
      • 42 - L2 Active power–
      • 43 - L2 Reactive power+
      • 44-60 - L2 etc. (see 24-40)
      • 61 - L3 Active power+
      • 62 - L3 Active power–
      • 63 - L3 Reactive power+
      • 64-80 - L3 etc. (see 24-40)
      • 81 - Angles
      • 82 - Unitless quantity (pulses or pieces)
      • 83 - Transformer and line loss quantities
      • 84 - Sum(Li) power factor–
      • 85 - L1 Power factor–
      • 86 - L2 Power factor–
      • 87 - L3 Power factor–
      • 88 - Sum(Li) Ampere-squared hours (QI+QII+QIII+QIV)
      • 89 - Sum(Li) Volt-squared hours (QI+QII+QIII+QIV)
      • 91 - L0 current (neutral)
      • 92 - L0 voltage (neutral)
      • 93 - Consortia specific identifiers
      • 94 - Country specific identifiers
      • 96 - Electricity-related service entries
      • 97 - Electricity-related error messages
      • 98 - Electricity list
      • 99 - Electricity data profile
      • 100…127 - Reserved
      • 128...199, 240 - Manufacturer specific codes
      • All other - Reserved
    • 93 - Consortia specific identifiers
    • 94 - Country specific identifiers
    • 96 - General service entries (can be entered as character 'C')
    • 97 - General error messages (can be entered as character 'F')
    • 98 - General list objects (can be entered as character 'L')
    • 99 - Abstract data profiles (can be entered as character 'P')
    • 127 - Inactive objects
    • 128…199, 240 - Manufacturer specific codes
    • 200…255 - Reserved
  • D - Value group D (number in range 0..255). The number defines types of data depending on Value group A and C, after processing by various specific algorithms. For A=1 and C<>0,93…94,95…99:
    • 0 - Billing period average (since the last reset)
    • 1 - Cumulative minimum 1
    • 2 - Cumulative maximum 1
    • 3 - Minimum 1
    • 4 - Current average 1
    • 5 - Last average 1
    • 6 - Maximum 1
    • 7 - Instantaneous value
    • 8 - Time integral 1
    • 9 - Time integral 2
    • 10 - Time integral 3
    • 11 - Cumulative minimum 2
    • 12 - Cumulative maximum 2
    • 13 - Minimum 2
    • 14 - Current average 2
    • 15 - Last average 2
    • 16 - Maximum 2
    • 17 - Time integral 7
    • 18 - Time integral 8
    • 19 - Time integral 9
    • 20 - Time integral 10
    • 21 - Cumulative minimum 3
    • 22 - Cumulative maximum 3
    • 23 - Minimum 3
    • 24 - Current average 3
    • 25 - Last average 3
    • 26 - Maximum 3
    • 27 - Current average 5
    • 28 - Current average 6
    • 29 - Time integral 5
    • 30 - Time integral 6
    • 31 - Under limit threshold
    • 32 - Under limit occurrence counter
    • 33 - Under limit duration
    • 34 - Under limit magnitude
    • 35 - Over limit threshold
    • 36 - Over limit occurrence counter
    • 37 - Over limit duration
    • 38 - Over limit magnitude
    • 39 - Missing threshold
    • 40 - Missing occurrence counter
    • 41 - Missing duration
    • 42 - Missing magnitude
    • 55 - Test average
    • 58 - Time integral 4
    • 128...254 - Manufacturer specific codes
    • All other - Reserved
  • E - Value group E (number in range 0..255). The number defines further processing or classification of quantities identified by value groups A, C, D. Various standard-defined classifications depending on Value groups:
    • Identification of tariff rates - Electricity related objects (A = 1)
    • Identification of harmonics - Electricity related objects (A = 1), measurement of harmonics of voltage (C = 12, 32, 52, 72, 92), current (C = 11, 31, 51, 71, 91) or active power (C = 15, 35, 55, 75), D = 7 or D = 24
    • Identification of phase angles - Electricity related objects (A = 1); angle measurement (C = 81; D = 7)
    • Identification of transformer and line loss quantities - Electricity related objects (A = 1); transformer and line loss quantities (C = 83)
    • Identification of UNIPEDE voltage dips - Electricity related objects (A = 1), Voltage dips measurement (C = 12, 32, 52, 72, D = 32)
  • F - Value group F (number in range 0..255). The number defines the storage of data, identified by value groups A…E, according to different billing periods. Where this is not relevant, this value group can be used for further classification. If it is not used, it is set to 255.

Example of addresses:

0.0.0            Meter address
0.0.1            Identity number
0.9.1            Time
0.9.2            Date
1.2.1            Cumulative P+ Tariff 1
1.2.2            Cumulative P+ Tariff 2
1.6.1            Maximum P+ Tariff 1
1.8.1            Energy P+ Tariff 1
3.6.1            Maximum Q+ Tariff 1
3.6.1*01       01.Pre-value Maximum Q+ Tariff 1

Literature


  • International Standard IEC 62056-21, Direct Data Local Exchange, First edition 2002-05.
  • International Standard IEC 62056-61, Object Identification System (OBIS), Second edition 2006-11.
  • Energie-Info, OBIS-Kennzahlen-System, Stand: 03. November 2006, www.vdew.net.

Changes and modifications


-

Document revisions


  • Ver. 1.0 - April 24th, 2009 - document creation.
  • Ver. 1.1 - July 27th, 2022 - support for Mode D (parameter Passive Mode)


Write a comment...