Friday, May 25, 2012

Serial Communication:- Applications


In computing, a serial port is a serial communication physical interface through which information transfers in or out one bit at a time (in contrast to a parallel port). Throughout most of the history of personal computers, data transfer through serial ports connected the computer to devices such as terminals and various peripherals.
While such interfaces as Ethernet, FireWire, and USB all send data as a serial stream, the term "serial port" usually identifies hardware more or less compliant to the RS-232 standard, intended to interface with a modem or with a similar communication device.
Modern computers without serial ports may require serial-to-USB converters to allow compatibility with RS 232 serial devices. Serial ports are still used in applications such as industrial automation systems, scientific instruments, shop till systems and some industrial and consumer products.
There are lot of application which enables you to test,transfer data from one system to another .
1) The most common application used in windows is Hyper terminal

2) In linux Cutecom is most common application available in all Linux versions

3) Hercules is another application run in windows platform which can be used as serial terminal as well as tcp/ip clients and server.
4) Dock light is very good serial terminal which has several additional features useful for developers.
5) Realterm is a terminal program specially designed for capturing, controlling and debugging binary and other difficult data streams. It is far better for debugging comms than Hyperterminal.

6)Terminal is a simple serial port (COM) terminal emulation program. It can be used for communication with different devices such as modems, routers, embedded uC systems, GSM phones,... It is very useful debugging tool for serial communication applications.

Saturday, May 12, 2012

IEC 62056-21 “Flag”


 Introduction 

IEC 62056-21 is the third edition of the well-known IEC 1107 standard, also known as the “Flag protocol”. Although it was intended for local data exchange using hand held units (HHU), it is also widely used for remote data exchange with PSTN and GSM modems.It specifies three local physical interfaces: optical, current loop and V.24 / V.28, as well as a data transmission protocol. The protocol permits reading and programming of devices, basically by reading and sending information represented by ASCII characters to / from given memory locations.
Like 1107 ,the following communication modes are available: 
• Mode A supports bi-directional data exchange at 300 baud without baud rate switching. This protocol mode permits data readout and programming with optional password protection; 
• Mode B supports bi-directional data exchange with baud rate switching. This protocol mode permits data readout and programming with optional password protection;
• Mode C supports bi-directional data exchange with baud rate switching and permits data readout, programming with enhanced security and manufacturer-specific modes; 
• Mode D supports unidirectional data exchange at a fixed baud rate of 2400 baud and permits data readout only; 
• Mode E supports advanced protocols, like DLMS/COSEM. 

The mode can be negotiated by the HHU and the meter. A meter can support more than one mode: today, support of Mode C and Mode E with DLMS/COSEM is common practice. 

Status of standardization  
The current standard has been established by IEC 62056-21 WG 14:. IEC 62056-21 Ed. 1.0:2002,  Electricity metering – Data exchange for meter reading, tariff and load control – Part 21: Direct local data exchange (third edition of IEC 61107) The standard is open and widely used. However, the memory mapping is not standardized, therefore data exchange requires manufacturer specific information. Meters of different types or from different manufacturers are not readily inter-operable: each meter type needs a specific driver. Annex C of the standard specifies formatted codes, but these are not widely used. 
Support organization 
The mandatory three-letter manufacturer identifiers are allocated by the FLAG Association, in co-operation with the DLMS User Association. The same identifiers are also used for DLMS/COSEM. Some three hundred manufacturers have obtained their manufacturer ID. 


Data model 
Not available in modes A to D, data are located and manufacturer specific memory addresses.  In Mode E, the COSEM data model and protocol stacks are used. 
Communication media supported 
The current loop is a local bus supporting up to eight meters. PSTN and GSM are supported with appropriate modems. 
Summary 
This protocol was the first standard protocol for meter data exchange and is globally used. 
Today, its main use is for local data exchange. 





Thursday, May 10, 2012

IEC1107 Sample Output From the Meter-IEC1107 File Format

The Optical Port Reader IEC1107 is a device enabling communication between any type of electricity meter equipped with a port according to the IEC1107 standard and a reading device equipped with RS232 or USB 2.0 port.The data read from meter will in the form of a  file similar to following. But the standard does not specified more about the format and length of data and most of those are manufacture specific.
But it defines that data should be :
V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  ) in this format. where V specifies the type of data in that line.




==> /?!<0D><0A>
<== /LTA4 NP-1111-C      
==> <06>040<0D><0A>
<==  -- STX -- 
<== H(Larsen & Toubro Limited)
<== H(NP-1111-C        )
<== H(02-05-99  Tue 12:51:01  )
<== H(5 1.00 1.00 1 0  )
<== H(verAD01.02 )
<== H(V2000  )
<== H( 02-05-99  Tue 12:51:01  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V( NP-1111-C        +01471.8  +00032.3  +00011.4   )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 12  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 11  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 10  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 09  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 08  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 07  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 06  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 05  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 04  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 03  )
<== V(00 +00.00 08 00 +00.00 08 00 +00.00 08 00 +00.00 02  )
<== V(00 +00.00 08 38 +00.00 09 32 +00.00 01 34 +00.00 01  )
<== V(00 +00.00 08 00 +00.00 08 31 +00.00 09   )
<== !
<==  -- ETX -- 
<==  -- BCC -- 

Manual Reading of IEC1107 meter

The optical read-out head is used for data communication between a PC or hand-held terminal to energy meters, electricity meters and similar metering equipment with optical data port according to IEC 1107/EN 61107(according to the IEC1107 standard and a reading device equipped with RS232 or USB 2.0 port.). Applications range from simple data readings e.g. for billing purposes and comprehensive programming of meters.
An application("IEC1107 testing software Test1107pack.exe") from http://www.meter-test-equipment.com/index.php?page=download&lng=en  can be used for reading data from meter supporting  IEC1107  protocol.
Meter with optical port
Connect the cable's optical 'port end to the meter and RS232 DB9 cable to the PC. Through a any serial port emulator or Hyper terminal in windows,  enter the command according to IEC1107 protocol to read the meter data, most probably which may contains the historical data. But unfortunately the data or meter file read from different meters were different for different manufactures and make. 
/?!<0D><0A> could be the first command for initiate the data read.
Then  meter will respond with identification response and it may like ,
/LTA4L0506272    
After that we have to give a command to read meter file an that may be like
<06>040<0D><0A>
After  that we will receive  a series of characters which collectively forms the the historical reading of the mater. 
HHU(Hand held unit) for reading meter data

Some meters like LnT 's ERP300 comes with rs485 port that support IEC1107 protocol ,in that case command needs a device address to read the meter. Which supports  multidroping  and all.  

Monday, May 7, 2012

IEC1107

IEC1107 PROTOCOL DATA EXCHANGE FOR METER READING TARIFF AND LOAD CONTROL



 Introduction

This international Standard describes a method for direct local data exchange, where the Tariff device is read and programmed using a handheld unit directly connected to the meter.In 2002 the IEC1107 standard was renamed as IEC62056-21:2002( International Electrotechnical Commission document 62056-21:2002). Many manufacturers, continue to refer to IEC1107 rather than the newer and less-memorable document number.

This Standard describes the software protocols and hardware for exchanging data with utility tariff meters. The hardware of a two-way optical interface is described; its mechanical and optical parameters.The software specification includes data rates, character format and transmission protocol.The IEC standard has been adopted by meter manufacturers throughout Europe and in some other territories.Ferranti and Landis And Gyre were early proponents of an interface standard that became similar to IEC1107.
IEC document is copyright and cannot be reproduced .

Scope and Object
This international standard presents hardware and protocol specifications for local Systems, while specifications for a remote system falls within the scope of another document. This standard deals with direct local system. In which the hand-held unit (HHU) is connected to one tariff device only at a time. Connection can be permanent or disconnectable through an electrical or optical coupling. The protocol took as its basis the basic reference model  for communication between open systems (OSI).  
Electrical Interface
a) Type of signal: 20ma current loop (ISO 7498 potential separation)
b) Power Supply: On the tariff device side the interface is passive(ISO 7498). The HHU supplies the necessary power.
c) Connection: Via terminals or suitable connectors

Character Transmission
Asynchronous serial bit (Start - Stop) transmission according to ISO1177,half- duplex.
Transmission   speed: 
Initial baud rate – 300
 Standard baud rates – 300, 600, 1 200,2 400, 4 800, 9 600
Special baud rate - as desired.
NOTE - The maximum speed may be limited by the reading head.
Signal  quality 
According to ISO 7480 (1984) - Category  PI  for the transmitter-Category PA for the transmitter
Character format
Character format  to ISO 1177(1 start bit. 7 data bits. 1 parity bit. 1 stop bit).
Character code
Character  code to ISO 646 International  reference version. For local use, National replacement code can be used.
Character security
With parity bit :Even parity  according  to ISO 1177.

Data transmission protocol

The data transmission protocol consists of four alternative modes of operation (modes A, B, C, D)(mode E  also there). All modes offer the provision of automatic data readout. In addition, Mode C allows for programming of the tariff device. The data exchange is a subset of the basic mode control procedures, ISO 1745. Communication in modes A,' Band C is bi-directional and is initiated by the transmission of a request message to the tariff device. Communication in mode D is uni-directional. With signals flowing from the tariff device only. This transmission is initiated by operating a push button or other sensor on the tariff device. The mode being used by the tariff device is indicated by the baud rate identification character in the identification message from the tariff device

• Mode A supports bi-directional data exchange at 300 baud without baud rate switching. This protocol mode permits data readout and programming with optional password protection;
• Mode B supports bi-directional data exchange with baud rate switching. This protocol mode permits data readout and programming with optional password protection;
• Mode C supports bi-directional data exchange with baud rate switching and permits data readout, programming with enhanced security and manufacturer-specific modes;
• Mode D supports unidirectional data exchange at a fixed baud rate of 2400 baud and permits data readout only;
• Mode E supports advanced protocols, like DLMS/COSEM.
The mode can be negotiated by the HHU and the meter. A meter can support more than one
mode: today, support of Mode C and Mode E with DLMS/COSEM is common practice.

Followers