P2LPC Users Manual

download P2LPC Users Manual

of 35

Transcript of P2LPC Users Manual

ISKRAEMECO

Users Manual P2LPC

P2LPC Documents: P2LPC_Technical_description.doc P2LPC Users Manual.doc P2LPC File Formats.doc

File: P2LPC User's Manual Version: 1.0.0 Datum: 16.1.2012 8:57 Author: Ale Petrii /Janez Orani Version 1.0 2000 ISKRAEMECO d.d. ISKRAEMECO d.d. Savska loka 4 4000 Kranj Slovenia

ISKRAEMECO PREFACE P2LPC HARDWARE DESIGN Single Board Computer (SBC) FRONT PANEL LED DESCRIPTION SOFTWARE DESCRIPTION Platform AutoLaunch application Remote networking setup RASServer application Restart application KillProcCE application P2LPC APPLICATION P2LPC.xml file DLCMeters.xml file SerialMeters.xml file Results files Profile files Statistic and log files

P2LPC 4 4 5 5 6 6 7 7 7 7 7 8 9 9 9 10 11 12 P2LPCUpgrade.zip 14 14 14 14 14 14 14 15 16 17 17 17 17 17 18 19 20 21 22 23 23 24 25 25 25 26 29 29 30 Page 2 of 35

- DLC network - RS485 network

UPLOAD NEW APPLICATION TO THE P2LPC Upload new zipped application and definition files to the P2LPC: Upload SW tool module to the P2LPC: P2LPCUpgrade.exe Reset application P2LPC P2LPCRESTART.TXT FILE HAS ONE LINE WITH TEXT:

PREPARE FILE P2LPCRESTART.TXT AND ZIPPED FILE IN P2LPCUPGRADE.ZIP. P2LPCRESTARTSTART REMOTE DISPLAY APPLICATION ON THE P2LPC START REMOTE DISPLAY APPLICATION ON THE P2LPC CONNECT CONCENTRATOR USING ETHERNET SETTING GPRS ON P2LPC 1. Modem COM4.ras file 2. Startup.dat file 3. P2LPC.xml file 4. Restart P2LPC SETTING TIME ZONE, DATE AND TIME ON P2LPC USING NTP SERVICE ON P2LPC AS NTP CLIENT DLC NETWORK SERIAL NETWORK CONSERETH DATA CONCENTRATOR SCHEDULING AND MONITORING Schedule Monitoring DEMAND READING P2LPC Demand Reading method Demand reading delay P2LPC_TRANSACTION P2LPC_SNMP AGENT FUNCTIONALITY SNMP MIB P2LPC WEB SERVICE

ISKRAEMECO Web service Standards used P2LPC Web Service implementation list APPENDIX: APPENDIX: P2LPC EVENTS CODES AND STRINGS TRANSACTIONS SAMPLES

P2LPC 30 30 30 32 34

Page 3 of 35

ISKRAEMECO

P2LPC

PrefaceThis manual is incomplete and preliminary users manual for P2LPC. This manual is brief description of controlling P2LPC operating. Screenshots are taken from desktop PC emulator, not from actual Windows CE application. Windows CE documentation should be read for better understanding of P2LPC.

P2LPC Hardware designP2LPC consists of the following modules and components: Power supply Single board computer Main board Integrated DLC modem Modem module for communication with data collecting center Serial RS232 communication port P2LPC case P2LPC block diagram

Power supply (provides many voltages needed by each block)

SBC Ethernet adapter Single board computer 32-bit based and with integrated peripheral DLC Modem powered by Microsoft Windows CE operating system Modem module (GSM, GPRS)

VGA monitor (optional)

Keyboard/ mouse (optional)

RS Serial port

Page 4 of 35

ISKRAEMECO

P2LPC

Single Board Computer (SBC)P2LPC is based on a single board computer SBC. SBC is based on 32-bit processor architecture, capable of running Microsoft Windows CE operating system. SBC is made in the form of module and has the following components: 32-bit CPU 32MB RAM Boot Flash Flash data storage 64MB for loading operating system image and data storage Real time clock with battery or super cap back up On SBC Windows CE operating system is running. Operating system is started from CompactFlash card, which contains image of operating system. After P2LPC boots and operating system is running, P2LPC application is started automatically (under special condition described later).

Front panel LED descriptionFront panel of P2LPC has seven green light emitting diodes LED, to indicate operation and status of P2LPC application.

RUN is always on when application is started and running ALARM is on when application is not running (should be off all time) LEVEL blinks when data frames are transferred through DLC or RF modem MODEM is on when server RAS mode is selected, when data connection is made it blinks fast; if RAS mode is GPRS it blinks with approx. 0.5Hz frequency when connected to GPRS network; if RAS mode is client it is on during data connection with center, otherwise is off DLC is on when DLC modem is in use RF not used ETHERNET is on when Ethernet carrier is present

Page 5 of 35

ISKRAEMECO

P2LPC

Software descriptionWe can divide P2LPC software into two pieces: Platform i.e. operating system; where all components exist or are created for P2LPC application to run P2LPC application, actually perform data concentrator functionality Each pieces of software has its own settings and configurations files.

PlatformPlatform or operating system is Windows CE based. We use complete GUI interface and all software components offered by operating system. This complete functionality is not needed now, but may be used in the future. GUI interface is also more users friendly and offers easy setting, editing and testing of P2LPC operations. We have possibility to set some operating system settings during boot time. These settings are stored on CompactFlash card file Startup.dat. Values from file Startup.dat are stored in Windows CE Registry. CompactFlash card is in Windows CE operating system referenced as Storage Card. The description of Startup.dat (only ISKRAEMECOs extensions) is in the following table:; Added by ISKRAEMECO ---------"[HKEY_CURRENT_USER\Software\ISKRAEMECO\P2LPC_WINCE]" "Producer=str:ISKRAEMECO" "Program=P2LPC_WINCE" "Version=1.0" "[HKEY_CURRENT_USER\Software\ISKRAEMECO\AutoLaunch]" "0=str:Windows\Explorer.exe" "1=str:Storage Card\RasEntry2.exe" "2=str:Storage Card\P2LPC_WINCE.exe" "[HKEY_LOCAL_MACHINE\ExtModems\Iskraemeco Modem\Init]" "3=ATL0M0" "4=ATX3" "5=AT&K0&D0&C0" "[HKEY_CLASSES_ROOT\.ini]" "Default=str:docfile" "[HKEY_CLASSES_ROOT\.dat]" "Default=str:docfile" "[HKEY_CLASSES_ROOT\.ras]" "Default=str:docfile" "[HKEY_CLASSES_ROOT\.plr]" "Default=str:docfile" "[HKEY_LOCAL_MACHINE\Time Zones]" "Default=str:Romance Standard Time" "[HKEY_LOCAL_MACHINE\nls\overrides]" "STime=str:\"" "ITLZr=dword:00000001" "ITime=dword:00000001" "STFmt=str:HH:mm:ss"

Some information strings.

Here you can set which applications are started automaticly when Windows CE starts. Full path to EXE file is needed.

Here some extra modem settings are possible, depending of modem type (PSTN, GSM, GPRS).

You can associate some file extension to PocketWord application for easy editing files contents.

You can comment line contents by putting ; at the beginning of line. Note: Startup.dat file has also parameters to control SBC

Page 6 of 35

ISKRAEMECO

P2LPC

AutoLaunch application For automatic start of P2LPC application after boot, ISKRAEMECO creates special application named AutoLaunch, which is integrated into Windows CE image. AutoLaunch application starts other applications listed under Windows Registry key (HKEY_CURRENT_USER\Software\ISKRAEMECO\AutoLaunch). Applications are started automatically, if full path and application name is written as registry item. You can start up to 10 applications (0 to 9). Example : "2=str:Storage Card\P2LPC_WINCE.exe". AutoLaunch application also checks for newer version of P2LPC application (see Upload new application to the P2LPC). Remote networking setup For using remote networking in P2LPC application, network connections should be created. Network connections are created by application RasEntry2.exe (stored on CompactFlash card). If we want to use it we should put this application to AutoLaunch application settings in Registry. It creates two network connections, one for modem and one for direct serial port. Data parameters for each connection are stored in Modem COM4.ras and Serial COM2.ras. RASServer application RASServer application is used to enable and startup RAS server on P2LPC. It is called automatically when P2LPC application starts, if server mode is selected (see explanation of P2LPC.xml file). Restart application Restart application is used to restart P2LPC and is integrated into Windows CE image. Command can be executed from command prompt or by Telnet command. Syntax is following: restart [N], where N is time in seconds before restart occur, this gives time to gracefully complete some other actions. If N is omitted, delay is 30 seconds. Value for N is between 30 to 120, if N exceeds this limits N is rounded to nearest limit value. KillProcCE application KillProcCE application is used to list and kill processes on P2LPC. Command can be executed from command prompt or by Telnet command. Syntax is following: KillProcCE [program_name.exe], where program_name.exe is the name of application to terminate. If program_name.exe is omitted, program lists currently running processes. For this application Toolhelp.dll library is needed.

Page 7 of 35

ISKRAEMECO

P2LPC

P2LPC ApplicationUser can control behavior of P2LPC application interactively. All commands are stored under Command menu. Here is description of Command menu items: Force Fork process on DLC network Force Global Deinstal process on DLC network

Forece Find/Install process on DLC network Force Deinstall process on DLC network Scrool between views Force to make RAS connection to send data to collecting center

Force to execute data readout from substationsmeters Reload some parameters from P2LPC.ini file, like periods

P2LPC application uses files for parameterizations and for storing meters readings, logging and statistic. P2LPC uses XML format to store or read informations into or from files. P2LPC files are detailed explained in P2LPC File Formats document. P2LPC application reads and writes files on CompactFlash card (P2LPCFiles folder in Windows CE environment). P2LPCFiles. directory is connected when logon using the file transfer protocol. This is persistent medium, which holds data during power off. Files on P2LPC are divided into following groups: Configuration files in this group are : P2LPC.xml - input setup file for P2LPC application, DLCMeters.xml - file consists list of found DLC meters by P2LPC, SerialMeters.xml - file is the file of founded serial meters on RS485 network by P2LPC, Results files stores results of meters readings (file name format is Sub_XXXXXXXX_YYYYMM.plr, where XXXXXXXX is meter device id number, YYYY is current year and MM is current month), P2LPC itself has also result file where it stores results of write transactions to meters (file name format is P2LPC_XXXXXXXX_YYYYMM.plr, where XXXXXXXX is P2LPC device id number, YYYY is current year and MM is current month), Profile files similar to results files, only load profile results are stored (file name format is Sub_XXXXXXXX_YYYYMM.plp, where XXXXXXXX is meter device id number, YYYY is current year and MM is current month), Events files similar to profile files, only events (similar to profile) are stored (file name format is Sub_XXXXXXXX_YYYYMM.ple, where XXXXXXXX is meter device id number, YYYY is current year and MM is current month), Command files in this group are : P2LPCTariff.xml tariff settings file. P2LPC application distributes tariff settings from this file to DLC meters, P2LPCDemandReading.xml - P2LPC performs reading of meters specified in this file. This file is send from center to P2LPC to perform on demand reading, Statistic and log files this files are in text format and stores DLC statistic and application log. File names start with P2LPCStat*.txt or P2LPCLog*.txt. Results, profile and events files could be compressed, if P2LPC is configured for using compression. When compression is used letter z is added to file extension (*.plrz, *.plpz, *.plez). Page 8 of 35

ISKRAEMECO P2LPC.xml file

P2LPC

P2LPC application behavior is controlled by P2LPC.xml file. P2LPC.xml file is detailed explained in P2LPC File Formats document. The P2LPC.xml file is processed when the currently active schedule is finished.

DLCMeters.xml file

- DLC network

DLCMeters.xml file is the list file of found DLC meters on DLC network. File is dynamically created or updated when new DLC meter is found on DLC network and it is also output file. It stores DLC address, number of credits and phase for each DLC meter fount by P2LPC on DLC network and meters device id number. DLC meters are listed from first found to last found (not by value of DLC address). DLCMeters.xml file is detailed explained in P2LPC File Formats document.

SerialMeters.xml file

- RS485 network

SerialMeters.xml file is the list file contains information on the used HDLC addresses and as input file is transferred to folder P2LPCFiles. SerialMeters.xml file is detailed explained in P2LPC File Formats document After file is accepted by application, it is dynamically completed or updated with founded serial meters on RS485 network meters and renamed to SerialMeters.old . File is dynamically updated when new serial meter is found on DLC network and it is also output file. P2LPC application schedule Id=90 is default schedule for RS485 meters. .

Page 9 of 35

ISKRAEMECO Results files

P2LPC

Once the meter is read by the concentrator, the concentrator generates three different types of result files per each meter (result file, load profile file and event file). The form is as follows: Sub_meterID_YYYYMM.pl?(?) Extension plr plrz ple plez plp plpz File Explanation file containing results zipped file containing results file containing events zipped file containing events file containing profile readout zipped file containing profile readout

P2LPC generate one (plr/plp/ple) file per meter per month. For example, if the concentrator reads results from meter 12345678 just after midnight on the 1.1.2004, a file named Sub_12345678_200401.plr(z) will be generated. All the results read from this meter until 23:59:59 on the 31st of January 2004 will be appended into this file. The concentrators settings in P2LPC.xml: UseZipFiles="1 ; result files is zipped UseZipFiles="0" ; result files is not zipped Results files are the results of reading meters on DLC network. Each meter has own readout file. Readout files names are in following format: Sub_12345678_200401.plr Prefix Sub_ Device ID (8 places)

Extension P2LPC Results Year and month of results

New readout file is created for a new month. When RAS operation mode is server or GPRS, only files, which are requested, are transferred to center. Files remain on P2LPC storage. When transfer to collecting center occurs (in the case client mode of RAS operation), all readout files are transferred to data collecting center. After that all files, which are not from current month, are deleted (after successful transfer). Typical contents of readout file are following:

Page 10 of 35

ISKRAEMECO Profile files

P2LPC

Profile files are the results of reading profile of meters on DLC network. Each meter has own profile file. Profile files names are in following format: Sub_12345678_200401.plp Prefix Sub_ Device ID (8 places) Extension P2LPC Profile Year and month of results

New profile file is created for a new month. When RAS operation mode is server or GPRS, only files, which are requested, are transferred to center. Files remain on P2LPC storage. When transfer to collecting center occurs (in the case client mode of RAS operation), all profile files are transferred to data collecting center. After that all files, which are not from current month, are deleted (after successful transfer). Typical contents of profile file are following:

Page 11 of 35

ISKRAEMECO Statistic and log files Statistic and log files help to monitor P2LPC application working.

P2LPC

Log file has P2LPCLog.txt name. It logs various information, warnings and errors occurring while P2LPC application is working. It is simple text file, limited to 512kB. When size limit is reached, file is truncated by 128kB. Excerpt from P2LPCLog.txt: LogTraceLevel="3" .6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 . . . 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 6.3.2003 . . . 13:16:27.000 13:16:27.000 13:16:28.000 13:16:28.000 13:21:05.000 13:21:05.000 13:26:06.000 13:31:00.000 13:31:03.000 13:31:09.000 13:31:26.000 13:31:29.000 13:31:29.000 13:31:50.000 13:31:50.000 13:31:53.000 13:32:03.000

----extendedInformation Information Information Information Information Information Information Information Information Information Information Information Information Information Information Information Information DocThread : Thread started OK Substations count = 0 Schedule ID = 1 Schedule thread (0008C948) Schedules Add index = 0 TAPI Line[0] = Hayes Compatible on COM1: TAPI Line[1] = Iskraemeco Modem TAPI Line[5] = Serial Cable on COM1: Start Communication with 21 [0x015] DoExecuteConnect OK DoExecuteAARQ OK Stop Communication with 21 [0x015] DoExecuteDisconnect OK Start Communication with 96 [0x060] DoExecuteConnect FAILED Start Communication with 22 [0x016] DoExecuteConnect OK DoExecuteAARQ OK

13:33:39.000 13:33:42.000 13:33:42.000 13:33:45.000 13:33:55.000 13:34:11.000 13:34:28.000 13:34:28.000 13:34:56.000 13:34:56.000 13:35:29.000 13:35:29.000 13:35:30.000

Information Information Information Information Information Information Information Information Information Information Information Information Information

Stop Communication with 25 [0x019] DoExecuteDisconnect OK Start Communication with 23 [0x017] DoExecuteConnect OK DoExecuteAARQ OK Stop Communication with 23 [0x017] DoExecuteDisconnect OK Start Communication with 97 [0x061] DoExecuteConnect FAILED Start Communication with 98 [0x062] DoExecuteConnect FAILED Find DLC slaves START (3 phases) Finding DLC slaves COMPLETE (All phases)

LogTraceLevel="0" . 3.10. 12:47:18 - Info 23.10. 12:47:22 - Info 23.10. 12:47:58 - Info 23.10. 12:47:58 - Info 23.10. 12:48:02 - Info 23.10. 12:48:38 - Info 23.10. 12:48:40 - Info 23.10. 12:48:44 - Info 23.10. 12:49:19 - Info 23.10. 12:49:19 - Info 23.10. 12:49:22 - Info 23.10. 12:50:19 - Info .

----short SchedID=1 retry=6 - DevID[198]="11901692" Fork DLC 869 [0x365] OK Finish SchedID=1 - DevID[198]="11901692" SchedID=1 retry=6 - DevID[199]="11901697" Fork DLC 874 [0x36A] OK Finish SchedID=1 - DevID[199]="11901697" SchedID=1 retry=6 - DevID[200]="35400072" Fork DLC 395 [0x18B] OK Finish SchedID=1 - DevID[200]="35400072" SchedID=1 retry=6 - DevID[201]="11901671" Fork DLC 848 [0x350] OK Finish SchedID=1 - DevID[201]="11901671"

OK OK OK OK

Page 12 of 35

ISKRAEMECO P2LPC Statistic files are used for monitoring communications conditions on DLC network. User can see success rate of communication between P2LPC and particular meter and availability of particular meter to P2LPC. Every action performed by P2LPC and meters is recorded in statistic file. After readout or DLC networking session results are updated and appended to statistic file. Statistic file has P2LPCStat.txt name. For every new day P2LPCStat.txt file is renamed to P2LPCStat_YYYY_MM_DD.txt format name. When transfer to collecting center occurs, all statistics files are transferred to data collecting center. After that all statistics files are deleted (except P2LPCStat.txt). P2LPCStat.txt file is renamed to P2LPCStat_YYYY_MM_DD_HH_MM_SS.txt format name, if P2LPC application is closed. P2LPCStat.txt has the following format:P2LPC Statistic (ID00000000 - P2LPC00000) : 27.03.2003 23:49:01.000 P2LPC Startup Time : 27.03.2003 11:21:06 Statistic type : DLC Find Schedules count : 1 -----------------------------------------Schedule ID : Schedule Time : Count -----------------------------------------* 001 : 27.03.2003 23:52:00 : 48 -----------------------------------------DLC Master Address : 1100 [0x44C] DLC Slaves count : 17 ------------------------------------------------------------------------------------------------------DLC Address : Install/Lost Time : Fork Time : Credits : RST Phase : Succes Rate : Availabil ------------------------------------------------------------------------------------------------------420 [0x1A4] : 7.03.2003 20:32:17 : 7.03.2003 22:48:17 : 3 : 4 : 96% 251/261 : 80% 36/45 662 [0x296] : 7.03.2003 23:46:53 : 7.03.2003 23:46:53 : 0 : 4 : 99% 329/330 : 97% 47/48 653 [0x28D] : 7.03.2003 20:01:36 : 7.03.2003 22:48:24 : 0 : 4 : 96% 272/281 : 87% 41/47 422 [0x1A6] : 7.03.2003 20:01:20 : 7.03.2003 22:48:26 : 0 R : 4 : 97% 287/293 : 87% 41/47 667 [0x29B] : 7.03.2003 20:16:14 : 7.03.2003 22:48:28 : 0 : 4 : 95% 250/262 : 84% 38/45 655 [0x28F] : 7.03.2003 20:32:56 : 7.03.2003 22:48:30 : 0 : 4 : 92% 195/210 : 71% 30/42 664 [0x298] : 7.03.2003 20:55:38 : 7.03.2003 22:48:32 : 0 : 4 : 96% 219/227 : 82% 32/39 661 [0x295] : 7.03.2003 20:55:54 : 7.03.2003 22:48:41 : 1 R : 4 : 89% 159/178 : 91% 32/35 421 [0x1A5] : 7.03.2003 20:32:08 : 7.03.2003 22:48:43 : 0 R : 4 : 97% 252/258 : 85% 36/42 666 [0x29A] : 7.03.2003 20:16:38 : 7.03.2003 22:48:45 : 0 : 4 : 96% 239/247 : 85% 35/41 658 [0x292] : 7.03.2003 23:34:55 : ------ Lost ------- : : : 88% 150/169 : 77% 27/35 423 [0x1A7] : 7.03.2003 21:15:08 : 7.03.2003 22:49:02 : 1 : 4 : 81% 114/140 : 69% 25/36 665 [0x299] : 7.03.2003 23:36:04 : ------ Lost ------- : : : 81% 91/111 : 51% 15/29 660 [0x294] : 7.03.2003 20:54:40 : 7.03.2003 22:50:03 : 0 : 4 : 94% 218/230 : 80% 34/42 659 [0x293] : 7.03.2003 20:55:14 : 7.03.2003 22:50:05 : 0 : 4 : 93% 194/208 : 82% 32/39 663 [0x297] : 7.03.2003 22:51:04 : ------ Lost ------- : : : 87% 108/123 : 67% 19/28 657 [0x291] : 7.03.2003 23:46:37 : 7.03.2003 23:46:37 : 0 : 4 : 97% 205/210 : 88% 30/34 ------------------------------------------------------------------------------------------------------P2LPC Statistic End

Statistic file has following information: Date and time of DLC data Date and time of P2LPC application start List of running schedules DLC address of P2LPC-master address Count of DLC slaves-meters List of DLC slaves with decimal and hex address, install/lost time, fork time, credits, RST phase, success rate and availability Repeater status of slaves meters List of DLC slaves consists of all meters found on DLC network by P2LPC. If the meter does not respond on DLC fork request, the meter is marked as lost. Credit is the number of repetitions on DLC medium. Possible values for credits are 0, 1, 3, 5 or 7. Lower number means better conditions for communication with meter. Credit can change if conditions are changed, after DLC fork request. Success rate is ratio between readout requests and readout responses in readout session (each readout session for now is consists of 7 request-response pairs). Availability is ratio between number of readout sessions started on particular meter and successful responses to session start. Readout session with particular meter is started only, if particular meter responses to DLC networking fork requests. If meter does not respond to fork request, it is not included to readout session. Number of readout sessions for particular meter is equal or lower than total schedule count.

Page 13 of 35

ISKRAEMECO

P2LPC

Upload new application to the P2LPCUpload new zipped application and definition files to the P2LPC: P2LPCUpgrade.zip

From P2LPC version 1.10 Build 20070101 is possible to send new application and or definition files in compressed (zip) file. This is procedure to upload new compressed version of P2LPC from center to the P2LPC concentrator. 1. On desktop computer prepare new application and/or other new P2LPC definitions file and compress (zip) all files into P2LPCUpgrade.zip; rename file to P2LPCUpgrade.tmp; 2. Make RAS connection with the P2LPC, 3. When RAS connection is made start FTP session with the P2LPC and upload P2LPCUpgrade.tmp to P2LPC, after successful upload rename P2LPCUpgrade.tmp into P2LPCUpgrade.zip. 4. Close FTP session, 5. P2LPC will restart automatically. Note: If P2LPC version 1.10 Build 20070101 is older then Upload SW tool module to the P2LPC: P2LPCUpgrade.exe

This module have to be uploaded only once. This is procedure to upload upgrade SW module to the P2LPC concentrator. SW module P2LPCUpgrade.exe is SW tool to upgrade of P2LPC application and/or other setting file automatic. This module copy and unzipped file P2LPCUpgrade.zip in root directory. This tool copy all existing file to new files *.old and restart application of P2LPC. 1. On desktop computer prepare new application and/or other new P2LPC definitions file and compress (zip) all files into P2LPCUpgrade.zip; rename file to P2LPCUpgrade.tmp; 2. Make RAS connection with the P2LPC, 3. Start FTP session with the P2LPC and upload SW tool P2LPCUpgrade.exe to P2LPC and upload P2LPCUpgrade.tmp to P2LPC, after successful upload rename P2LPCUpgrade.tmp into P2LPCUpgrade.zip., 4. Close FTP session, 5. Start Telnet session, 6. Copy (move) file P2LPCUpgrade.exe from FTP root directory (\Storage card\P2LPCFiles) into \Storage card directory 7. Execute command P2LPCUpgrade.exe from command prompt to force upgrade tool executed, 8. Close Telnet session, 9. P2LPC will restart automatically.

Reset application P2LPC From P2LPC version 1.10 Build 20070101 upload zipped file to the P2LPC: Prepare file P2LPCrestart.txt and zipped file in P2LPCUpgrade.zip. P2LPCrestart.txt file has one line with text: P2LPCrestart P2LPCUpgrade.zip

Page 14 of 35

ISKRAEMECO

P2LPC

Start remote display application on the P2LPCThis is procedure to start remote display application (CERDISP.exe) on P2LPC. This feature allows you to get P2LPC screen picture on remote desktop computer. This feature gives you possibility to control P2LPC application from desktop computer with mouse and keyboard. On desktop computer, CERHOST.exe application should run (peer application of CERDISP.exe). 1. On desktop computer from connection to P2LPC will be established, start program CERHOST.exe. 2. Make RAS connection with the P2LPC, 3. When RAS connection is made, start Telnet session and check if application CERDISP.exe exists on P2LPC (\Windows or \Storage Card directory). If not exists put CERDISP.exe from desktop computer to P2LPC (use FTP session to upload application), 4. In Telnet session, execute command start cerdisp remote_ip_addr from command prompt. This command will start remote display application, 5. Optionally you can close Telnet session, 6. If CERDISP.exe on P2LPC is started and connection with CERHOST.exe application is made, you will see P2LPC desktop in CERHOST window on desktop computer. Now you are able to control P2LPC application from desktop. Note: Due to slow communication rate (modem) screen update can take few seconds.

Page 15 of 35

ISKRAEMECO

P2LPC

Connect concentrator using EthernetIf concentrator is connecting directly to computer a crossover cable is used. Next thing is the type of existing network (fixed IP or DHCP). If DHCP is used default setting should suffice. The default settings are such, that the concentrator is waiting for a server to assign it an address. If there is no DHCP then a concentrator chooses an address from a predefined range. To use fixed IP addressing startup.dat file has to be modified. Connect via Telnet (username, password). After that perform the following set of commands to copy the file as startup.da to the ftp default directory: - cd storage card - copy startup.dat P2LPCFiles/startup.da Download this startup.da from the ftp directory and modify the following key so it looks like this (Notepad can be used, IP address 10.24.2.1):

"[HKEY_LOCAL_MACHINE\Comm\ENDS4ISA1\Parms\Tcpip]" ;"AutoMask=str:255.255.0.0" ;"AutoSubnet=str:192.168.253.1" "IpAddress=str:10.24.2.1" "DefaultGateway=str:10.24.2.9" "Subnetmask=str:255.255.255.0" "EnableDHCP=dword:0" Be careful to comment the first two lines. Save the modified file and upload it back to the concentrator again. It is need to move the file one level higher, delete the original file, rename the modified file and restart the concentrator. This can be achieved using the following sequence of commands (after logging via Telnet): - cd storage card/p2lpcfiles - move startup.da .. - del startup.dat - rename startup.da startup.dat - start restart

Page 16 of 35

ISKRAEMECO

P2LPC

Setting GPRS on P2LPCFor passage from GSM to GPRS communication is needed to decide suitable contract with mobile operator. Offer to VPN of connection to APN is important to this. Radius server is necessary for simplification of administration. It must be configured so, that is unchangeable connection between SIM card and IP address without binding on username and password. Mobile operator ensures safety needs so, that allows only traffic from VPN on GPRS terminals of belonging APN. At such configuration, also switch is possible on GSM back. When Modem LED on the front panel of the concentrator is pulsing with slow symmetrical pulses, the GPRS login was performed successfully. The LED on the GSM terminal should be blinking wit quick double blinks. To set GPRS mode on P2LPC following files should be modified: 1. Modem COM4.ras file Bold and red items should be set to appropriate value used for GPRS mobile operator: Name=Modem Connection UseCountryAndAreaCodes=N SpecificIpAddr=N SpecificNameServers=N DeviceType=modem DeviceName=Iskraemeco Modem IpHeaderCompression=Y SwCompression=Y RequireEncryptedPw=N RequireMsEncryptedPw=N UserName= Password= BaudRate=19200 CountryCode=386 AreaCode=4 Phone=*99***1# 2. Startup.dat file Modification of Startup.dat file is needed to configure correct GPRS context on GSM/GPRS modem using ATcommands. To set GPRS mobile operator context find following registry key "HKEY_LOCAL_MACHINE\ExtModems\Iskraemeco Modem\Init". Modify following registry settings in Startup.dat file for GPRS mobile operator: .. "[HKEY_LOCAL_MACHINE\ExtModems\Iskraemeco Modem\Init]" "3=str:ATL0M0X3" "4=str:AT+CGDCONT=1,ip,maingatelan.telia.se" .. To support longer modem configuration strings look for following registry key in Startup.dat "HKEY_LOCAL_MACHINE\Drivers\Unimodem\Settings". If this registry key does not exists, add following lines to Startup.dat .. "[HKEY_LOCAL_MACHINE\Drivers\Unimodem\Settings]" "MaxCmd=dword:50" .. 3. P2LPC.xml file Set GPRS mode. This is done by modifying attribute Mode from value server to GPRS in element RAS .. .. 4. Restart P2LPC New settings will be in affect after restart of P2LPC. Page 17 of 35

ISKRAEMECO

P2LPC

Setting time zone, date and time on P2LPCTime zone setting should be done by changing registry settings. User can change or add additional registry settings trough modifying Startup.dat file on P2LPC. Default time zone already exists in Startup.dat under HKEY_LOCAL_MACHINE\Time Zones registry key. This value should be change to appropriate value. "[HKEY_LOCAL_MACHINE\Time Zones]" "Default=str: Romance Standard Time" To set P2LPC to use time zone UTC+1 and without DST, use following registry setting in Startup.dat "[HKEY_LOCAL_MACHINE\Time Zones]" "Default=str:W. Central Africa Standard Time" Notes: Startup.dat file should be in \Storage card directory. How to modify Startup.dat file is explained later Changes in Startup.dat file will be used after restart of P2LPC. How to modify Startup.dat by remote connection Startup.dat file should be placed in \Storage Card, but this directory is not seen by FTP client (FTP root is located in \Storage Card\P2LPCFiles), following procedure should be done: Make telnet session to P2LPC, copy and rename Startup.dat file to FTP root directory >copy \Storage Card\Startup.dat \Storage Card\P2LPCFiles\Startup.tmp Make ftp session to P2LPC and get Startup.tmp file Modify Startup.tmp Put modified Startup.tmp file back to P2LPC by ftp put command Rename Startup.tmp file to Startup.dat on P2LPC by ftp rename command If P2LPC_WINCE application is running it automatically copy Startup.dat file into \Storage Card directory, if not use telnet to copy file Close open ftp and telnet sessions

Page 18 of 35

ISKRAEMECO

P2LPC

Using NTP service on P2LPC as NTP clientThis document describes how to use NTP service on P2LPC. NTP service is running on P2LPC, only few settings should be done to set appropriate parameters. These parameters are registry values, used to control NTP service. To set this registry values Startup.dat file should be modified by adding following: "[HKEY_LOCAL_MACHINE\Services\Timesvc]" "Server=str:goodtime.ijs.si" "Refresh=dword:493E0" "RecoveryRefresh=dword:493E0" "Clientonly=dword:1" Notes: Registry value Server is URL to NTP server used for time synchronization NTP server name should be used (not IP address), Refresh and RecoveryRefresh values are hexadecimal in milliseconds, smallest time is 5 minutes (300000ms = 0x493E0), Startup.dat file should be in \Storage card directory. Changes in Startup.dat file will be used after restart of P2LPC. User can check if NTP service is running by services list command from Telnet or command prompt. >services list HTP0: 0x00030100 TEL0: 0x0003f5a0 FTP0: 0x0003fbe0 NTP0: 0x00031460 > HTTPD.DLL TELNETD.Dll FTPD.Dll timesvc.dll Running Running Running Running

How to modify Startup.dat by remote connection Startup.dat file should be placed in \Storage Card, but this directory is not seen by FTP client (FTP root is located in \Storage Card\P2LPCFiles), following procedure should be done: Make telnet session to P2LPC, copy and rename Startup.dat file to FTP root directory >copy \Storage Card\Startup.dat \Storage Card\P2LPCFiles\Startup.tmp Make ftp session to P2LPC and get Startup.tmp file Modify Startup.tmp Put modified Startup.tmp file back to P2LPC by ftp put command Rename Startup.tmp file to Startup.dat on P2LPC by ftp rename command If P2LPC_WINCE application is running it automatically copy Startup.dat file into \Storage Card directory, if not use telnet to copy file Close open ftp and telnet sessions

Page 19 of 35

ISKRAEMECO

P2LPC

DLC networkP2LPC is data concentrator for automatic data collection from MT/ME351 and MT/ME371 family system meters. Communication with the MT/E371 system meter is established by means of the integrated DLC modem with DLMS/COSEM communication protocol. Software application in P2LPC is responsible for reading, finding and managing communications with system meters over DLC network, storing data and transferring data to data collection centre on demand Change some of defaults parameters in P2LPC.xml file in specific DLC network conditions can have result in better reading performance.

. . . . . .

; is used to quick split DLC network if it is mixed through crosstalk settable from 1 up to 20.

Page 20 of 35

ISKRAEMECO

P2LPC

Serial networkP2LPC is data concentrator for automatic data collection from MT/ME372 RS485 family system meters. Communication with the MT/E372 RS485 meter is established by means of the integrated serial interface with DLMS/COSEM communication protocol. Software application in P2LPC is responsible for reading, finding and managing communications with system meters over RS485 network, storing data and transferring data to data collection centre on demand. Activation Serial interface: P2LPC application schedule Id=90 is default schedule for RS485 meters. Schedule Id=90 is created automatically, if SerialMeters.xml file exists. User can set baud rate and timeout for serial interface in P2LPC.xml file. Serial interface is activated by setting parameters in P2LPC.xml file and transferred SerialMeters.xml file to folder P2LPCFiles. P2LPC.xml parameter setting " ; define baud rate 9600 and timeout 1second. SerialMeters.xml file is the file of founded serial meters on RS485 network. This file contains information on the used HDLC addresses and as input file is transferred to folder P2LPCFiles . Initial file is as follow:

After file is accepted by application, it is dynamically completed or updated with meters renamed to SerialMeters.old and is as follow: . . Deactivation Serial interface: Delete or comments lines in P2LPC.xml file: " and Delete SerialMeters.xml file.

Note: P2LPC application can run only Serial meter schedule or Consereth-IP. Deactivation and activationhave to be performed to switch serial functionality.

Page 21 of 35

ISKRAEMECO

P2LPC

CONSERETHMeters can be included in IP networks by means of the P2LPC communicator to which IEC 1107 meters are connected at the RS485 interface. A number of meters are limited with the RS485 standard. The P2LPC concentrator implements the CONSERETH-IP protocol enabling transparent serial data transfer to IP network. All unchanged IEC1107 messages of the meter are transferred to the IP over GPRS/Eth network. The meters are accessible from the centre at IP address by means of the CONSERETH-IP protocol enabling tunneling of IEC 1107 messages to the TCP transport. CONSERETH-IP Protocol Layers CONSERETH-IP protocol is intended for data transfer of serial interfaces to IP transport. The so-called data tunneling is performed. Serial interface data are transparently transferred to TCP transport layer by means of CONSERETH application layer which implements the CONSERETH-IP Protocol. CONSERETH-IP Protocol can be activated if files consereth.exe and consereth.xml is present in folder Storage Card. Activation CONSERETH-IP interface: CONSERETH interface is activated by setting parameters in startup.dat file. "[HKEY_CURRENT_USER\Software\ISKRAEMECO\AutoLaunch]" "6=str:Storage Card\CONSERETH.exe" File consereth.xml contains setup information for CONSERETH serial interface and TCP/IP interface. Initial file is as follow: Deactivation CONSERETH-IP: Delete or comments lines in startup.dat file: "6=str:Storage Card\CONSERETH.exe" New Activation and Deactivation CONSERETH-IP: Parameter for consereth In startup.dat file is not set. Activation is follow definition in file AutoLaunch.ini present in folder Storage Card. "\Storage Card\ CONSERETH.exe "

Note: P2LPC application can run only Serial meter schedule or Consereth-IP. Deactivation and activationhave to be performed to switch serial functionality.

Page 22 of 35

ISKRAEMECO

P2LPC

Data concentrator scheduling and monitoringThis item describes how processes of scheduling and monitoring are implemented in the P2LPC data concentrator.

ScheduleSchedule is basic readout entity, which actually performs meter data collection. Schedule is implemented as an operating system thread. The data concentrator can have up to 16 schedules running as independent threads. Schedules are created and started when the application is started and executed after start condition is reached (schedule time). Schedules are identified by Id number. Schedules with Id=1 is a default schedule for PLC meters and schedule with Id=90 is a default schedule for using serial data communication. The schedule with Id=1 is created automatically (if not already exists) when first meters are found on the PLC network. For adding and/or removing schedules, configuration file (P2LPC.xml) is used. Data which are collected by a schedule are defined by a configuration file (P2LPC.xml) as Transaction elements. Transaction element has attribute Schedule which defines schedule Id in which transaction is executed. If value for schedule Id=0, then transaction is executed in every defined schedule. Schedules share single communication resource a PLC modem among them. Due to the fact that schedules have no priority, any schedule waiting for a resource can get this single resource (as soon as this resource is released from the active schedule). Picture below illustrates behavior of three running schedules, schedule 1 is in execution. In between, schedule 2 becomes ready for the execution but does not have free resources. Later on schedule 3 also becomes ready for the execution. When schedule 1 finishes execution, it releases resource thus making it available for other schedules. Internal operating system functionality assigns free resource to the one of pending schedules. In our case schedule 3 obtains resource before schedule 2, even schedule 2 was ready for execution before schedule 3. Beside regular schedules, PLC networking (finding and installing new meters) also use shared resource PLC modem. PLC networking process is also an operating system thread. Schedules and PLC networking have no priority, so operating system gives shared resource to the one of pending schedules or to the PLC networking. Demand reading request is the only operation that can interrupt currently running schedule or the PLC networking thread. If a demand reading occurs during communication to the particular meter, this communication transaction is finished. The active schedule is interrupted and the current execution point is saved. Other pending schedules are also disabled. After that point, a demand reading is performed. When demand reading is finished, interrupted active schedule continues while other schedules are enabled.

1 2 3

Schedule 1, release resource, schedule 3 start to execute

Schedule 3, release resource, schedule 2 start to execute

Schedule 3, ready to execute, waiting for free resource Schedule 2, ready to execute, waiting for free resource Schedule 1, execute, and free resource

Page 23 of 35

ISKRAEMECO

P2LPC

MonitoringMonitoring and logging are supported in the P2LPC data concentrator. Running operations are logged into the P2LPCLog.txt file. The file is limited up to 512kB. If this limit is exceeded, 128kB cut-off is performed. To improve overall system performances, writings to the log file are buffered (FIFO principle). After every 25 buffered items, the amount of the buffer is written into the log file. The amount of logged data can be controlled by a setting of LogTraceLevel attribute of the P2LPC.xml file; value can be from 0 to 3. Beside the log file, PLC network statistic is written after each PLC networking operation and after each schedule is finished. PLC statistic is written into the P2LPCStatBrief.txt file. If the LogTraceLevel attribute is set to 3, then each PLC statistic is written into the P2LPCStat.txt file. By inspecting P2LPCStat.txt file, a user can monitor PLC communication quality. Third method to log and monitor P2LPC concentrator, are events. Concentrator events are stored into P2LPC_xxxxxxxx_yyyymm.ple file. Each month a new file is created. For details about concentrator events see P2LPC File Formats document.

Page 24 of 35

ISKRAEMECO

P2LPC

Demand readingP2LPC Demand Reading method Demand reading is a capability of the P2LPC data concentrator application to accept demands from the Centre end execute them as soon as possible. The demand reading method is based on the principle of processing the P2LPCDemandReading.xml file. This file contains information on the ID of the requested meter and the transactions which need to be performed by the data concentrator. After the P2LPCDemandReading.xml file is accepted by the application, it is renamed into the P2LPCDemandReading.old. As soon as the application, running on the data concentrator, detects such a file, it will attempt file processing and start executing the desired transactions on the requested meter. However, the time between appearance of the P2LPCDemandReading.xml file and its detection may vary substantiality. This is due to the fact that the application checks for this file appearance every time when it concludes the active transaction on the currently active meter (the transaction defined in the P2LPC.xml file being performed on the entire meter population). Before the transaction is started on the next meter from the list, the application checks if a demand reading needs to be performed. If not, it continues with the readout schedule on the next meter from the list. If there is no currently running schedules, demand reading starts immediately. Demand reading delay Following picture below, illustration of a demand reading delay is shown when demand reading request is received in the middle of a current schedule execution. Few actions are taken before actual demand reading starts: demand reading request is accepted running active schedule is interrupted (other pending schedules are disabled) current meter transaction is finished demand reading sessions starts If the P2LPC data concentrator is not executing any schedule during receiving a demand reading request, a demand reading session starts immediately.

Normal schedule executionConnect Start session Transaction #1 Transaction #2 Transaction #N Disconnect

1

1. Demand reading request

2. finish current transaction, go to disconnect

3. finish current transaction, start demand reading

Demand reading

Connect2

Start session Transaction #1

Transaction #N

Disconnect

Time between (1) and (2) is demand reading latency and it takes about 20 seconds (good DLC network conditions, no retries). Demand reading itself for one meter and one value (i.e. register), takes about 30 seconds (good DLC network conditions, no retry). This table shows approximate times for demand reading transactions completion (reading one meter and one value): DLC network conditions No retry Success after third retry Very good 15 sec 45 sec Medium 40 sec 120 sec Very bad 90 sec 220 sec Page 25 of 35

ISKRAEMECO

P2LPC

P2LPC_TransactionP2LPC transactions determine which COSEM objects will be read or write from meter. Transactions are set in P2LPC.xml file and can be added and/or removed. COSEM object access type is set for each transaction. Access type is defined by Type attribute of Transaction element. Possible values are get for read COSEM object and set for write to COSEM object. Each COSEM object is described by class id; instance id and attribute id (see DLMS UA document for details about COSEM objects). This COSEM object properties are defined by Transaction element attributes ClassId, InstanceId and AttributeId. These four attributes of Transaction element are mandatory, following attributes are optional. Attribute ScheduleId determine in which schedule transaction executes. If ScheduleId has value 0, transaction is executed in all existing schedules. Attributes DaysAgo and HoursAgo determine for how many days and hours ago data is requested from meter. These attributes apply only to COSEM profile objects. Attribute ExactTime determine exact time of data requested from meter. These attributes apply only to COSEM profile objects. For set type of access to COSEM object, value for write shall be provided. Additional element Parameter with attributes Type and Value. Attribute Type determine COSEM object value type (like short, long, unsigned , see DLMS UA document for details about COSEM objects value type). Attribute Value is value to be writing to COSEM object. By this way numeric types can be set. For setting strings or complex values, attribute HexValue is used instead of Value. In that case attribute Type is set to value 99 and value of attribute HexValue is hexadecimal coded string of bytes separated by space. Note: certain knowledge of meter COSEM objects data types and structures are needed to prepare write transactions. P2LPC does not validate parameter type and value!

Sample: Type="get" ClassId="7" Type="get" ClassId="7" Type="get" ClassId="7" Type="get" ClassId="7"

AttributeId="2" AttributeId="2" AttributeId="2" AttributeId="2"

InstanceId="1.0.99.2.0.255" InstanceId="1.0.99.1.0.255" InstanceId="1.0.98.1.0.255" InstanceId="1.0.98.2.0.255"

ScheduleId="1"/> ScheduleId="1"/> ScheduleId="1"/> ScheduleId="1"/>

Page 26 of 35

ISKRAEMECO

P2LPC

P2LPC meters firmware upgradeP2LPC concentrator supports upgrade of meters firmware. Upgrade procedure is performed by web service calls. Following steps should be taken to upgrade meters firmware: 1. Send new firmware binary file to concentrator. Use web service calls UploadFileChunk or use FTP service to upload file to concentrator. 2. When file is uploaded, start upgrade procedure by web service call UpgradeMeters, with full name of the firmware binary file (from step 1 - located on concentrator) as call parameter. 3. Concentrator starts to upgrade the meters by activating upgrade start action for each meter. Activate information is send only to the meters which will be upgraded, depending on meter type (i.e. if upgrade binary file is for three-phase meters, only three-phase meters will be activated for upgrade). 4. After activate upgrade start is sent to all involved meters, firmware binary blocks are sent to the meters. Firmware is dividing in blocks. These blocks are sent by broadcast command. 5. After all blocks of upgrade binary file are transferred, upgrade check is performed on each upgraded meter. Upgrade check is made by reading Image_Free_Block_Address object from particular meter. Until this object value points to lower address than firmware image end address, concentrator resends firmware upgrade block pointed by value of Image_Free_Block_Address object. By this mechanism concentrator fills-up missing blocks inside meter firmware image. 6. When Image_Free_Block_Address object points to address bigger than firmware image end address, activate upgrade stop command is sent to meter. After that, meter is upgraded and it restarts itself. 7. Events during upgrade process are written into concentrator events file and present success of upgrade.

Page 27 of 35

ISKRAEMECO

P2LPC

P2LPC IDIS meters firmware upgradeP2LPC concentrator supports upgrade meters firmware using COSEM class Image transfer. (class id: 18, instance id: 0.0.44.0.0 ). Upgrade procedure is performed by web service calls. Fllowing steps should be taken to upgrade meters firmware: First upload firmware binary file to concentrator. Use web service calls UploadFileChunk or use FTP service to upload firmware file to concentrator. Write path and name of firmware binary file. (ex. \storage card\ME381_M1.bin) Define additional data: Image Identifier, Image Signature, Image Size. ( Not necessary for ISKRAEMECO meters ) Select meters to be upgraded from Meter List. Send request Upgrade IDIS Meters. Upgrade procedure execute next steps: 1. Read firmware image block size. 2. Divide firmware image to blocks of image block size. 3. Set Image transfer enable (attr. 5) and initiate image transfer (method 1) for each meter need to be upgraded. 4. Broadcast image blocks. 5. After all broadcasted blocks each meter is checked for missing block and filled them up there are two strategy: Broadcast all missing blocks and Send first missing block for each meter. 6. Verify firmware image execute method 3. If verify is success 7. activate firmware image execute method 4.

Be sure that parameter UseIDIS is set to"1" - (P2LPC.xml file). It means that COSEM Image Transfer ( class id = 18 ) is used for image upgrade.

Set UseMissingBlockStatusStrategy to appropriate value.

UseMissingBlockStatusStrategy="1" Missing blocks statuses are get by reading attribut 3 of COSEM Image Transfer, which consist transferred stauses of all image blocks. Missing blocks statuses are read from each meter and saved. After that only missing blocks will be broadcasted. If block is missed only at one single meter it will be broadcasted. After this procedure another missing block procedure is run for each meter individualy. This procedure from each meter reads first missing block and send it. It is executed until missing block exist or retry counter reaches number of all image blocks.

UseMissingBlockStatusStrategy="0"

Missing block are filled individualy meter by meter.

Page 28 of 35

ISKRAEMECO

P2LPC

P2LPC_SNMP agent functionalityConcentrators P2LPC are equipped with SNMP agent functionality, based on standardized SNMP network management protocol. This SW package enables the concentrator to be manageable by the SNMP-based management systems. This SW module support AMR specific MIB variable and traps, defined in AMR MIB definition document iskraemeco_amr_v2_12.mib. P2LPC device status, communications link status and status of meters controlled by the P2LPC device are published via MIB variables. SNMP version which is supported is SNMPv2. Concentrator P2LPC AMR SNMP agent transforms information into SNMP formatted output and sends it to the management center. Concentrator P2LPC generates SNMP traps and immediately sends them to AMR control center and answer to SNMP queries. P2LPC AMR SNMP functionality and its components are detailed explained in separate documents which are part P2LPC SNMP module documentation.

Activation AMR SNMP Agent: AMR SNMP Agent is activated by setting parameters in startup.dat file. "[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\SNMP\Parameters\ExtensionAg ents]" "3=str:Software\\Iskraemeco\\AMRAgent\\CurrentVersion" "[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\SNMP\Parameters\TrapConfigu ration\public]" "1=str:10.2.5.242" "[HKEY_LOCAL_MACHINE\Software\Iskraemeco\AMRAGENT\CurrentVersion]" "Pathname=str:\\Storage Card\\amragent.dll"

SNMP MIB Provides a detailed insight into the operational status of concentrator and attached meters Complete MIB definition is available in document iskraemeco_amr_v2_12.mib.

Page 29 of 35

ISKRAEMECO

P2LPC

P2LPC Web ServiceP2LPC Web Service offers a different approach for handling P2LPC files. P2LPC data concentrator collects data from attached meters, stores data and serves collected data to processing AMM center. Web service implemented on P2LPC data concentrator, enables access to data stored on P2LPC data concentrator using standard, widely accepted and simple technology (XML, SOAP). P2LPC data concentrator serves requests from data AMM center (Sep2W). Web service provides more flexible and optimized access to data stored on P2LPC. In contrast to FTP transfer, where all files are transferred, web service extracts only requested data. This reduces traffic and cost, resulting better performance and more optimized system. Activation Web Service in P2LPC: Web service is activated by setting parameters in startup.dat file. "[HKEY_CURRENT_USER\Software\ISKRAEMECO\AutoLaunch]" "2=str:Storage Card\InstallWebService.exe" Tool: P2LPCWebServiceClient Web service client is SW tool to communicate with P2LPC WebService. Client is run with start P2LPCWebServiceClient.exe. Url: http://IP_P2LPC/webservice.wsdl Web service A web service is a collection of protocols and standards used for exchanging data between applications. Software applications written in various programming languages and running on various platforms can use web services to exchange data over computer networks like the Internet. This interoperability is due to the use of open standards. OASIS and the W3C are the steering committees responsible for the architecture and standardization of web services. To improve interoperability between web service implementations, the WS-I organization has been developing a series of profiles to further define the standards involved. Standards used Web Services Protocol Stack: To reiterate, web services consist of a collection of standards and protocols. This collection is known as the web services protocol stack. XML: All data to be exchanged is formatted with XML tags. This encoding can be performed by SOAP or XML-RPC. Common protocols: XML data can be transported between applications using common protocols such as HTTP, FTP, and SMTP. WSDL: The public interface to the web service is described by Web Services Description Language, or WSDL. This is an XML-based service description on how to communicate using the web service. UDDI: The web service information is published using this protocol. It enables applications to look up web services information in order to determine whether to use them.

P2LPC Web Service implementation list P2LPC Web Service and its components are detailed explained in Specification P2LPC WebService.doc document. P2LPC Web Service is a component of P2LPC data concentrator offering a different approach for handling files P2LPC data concentrator uses and generates. Its functionality is visible to user as a set of following methods: GetGroups GetMetersList GetMetersListByGroup Page 30 of 35

ISKRAEMECO GetMeterResults GetMeterProfile GetMeterStatus GetMeterTariffSettings SetMeterTariffSettings GetMeterEvents GetMeterPowerFailures GetMeterOnDemandResults GetConcentratorResults GetConcentratorStatus GetConcentratorEvents GetConcentratorSystemTime SetConcentratorSystemTime GetVersion GetMeterLoadControl SetMeterLoadControl GetMeterServiceControl SetMeterServiceControl GetMeterDisconnectControl SetMeterDisconnectControl SetTransportKey SetEncryptionKey SetMeterEncryptionKey SetMeterPurchase GetMeterPurchaseTransactions GetConcentratorConfigId SetCodeRed GetMeterCodeRedStatus GetMeterCodeRedPowerLimit SetMeterCodeRedPowerLimit TimeSync UpgradeMeters GetDirectories GetFiles GetFileSize DownloadFileChunk UploadFileChunk DeleteFile ExecuteAction CosemGetRequest CosemGetRequestEx CosemSetRequest CosemActionRequest GetExcludeMeterList SetExcludeMeterList GetMeterDisplayList SetMeterDisplayList GetMeterPowerLimit SetMeterPowerLimit GetMeterProfileConfig SetMeterProfileConfig GetMeterLoadProfilePeriod SetMeterLoadProfilePeriod GetMeterBillingReadTime SetMeterBillingReadTime GetMeterScheduledReadTimes SetMeterScheduledReadTime

P2LPC

Page 31 of 35

ISKRAEMECO

P2LPC

Appendix:

P2LPC events codes and strings

Current list of concentrator events codes and strings:// Event groups #define EVENT_GROUP_SYSTEM #define EVENT_GROUP_DLC #define EVENT_GROUP_COMMUNICATION #define EVENT_GROUP_SUBSTATION 1 2 3 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

// Event types #define EVENT_TYPE_SYS_STARTUP #define EVENT_TYPE_SYS_EXIT #define EVENT_TYPE_SYS_RESTART #define EVENT_TYPE_SYS_DEVICE_ID #define EVENT_TYPE_SYS_PARAMS_OK #define EVENT_TYPE_SYS_CONFIG_OK #define EVENT_TYPE_SYS_PARAMS_ERROR #define EVENT_TYPE_SYS_CONFIG_ERROR #define EVENT_TYPE_SYS_READING_ERROR #define EVENT_TYPE_SYS_READING_SESSION_ERROR #define EVENT_TYPE_SYS_READING_TRANS_ERROR #define EVENT_TYPE_SYS_DEMAND_READING_ERROR #define EVENT_TYPE_SYS_DEMAND_READING_SESSION_ERROR #define EVENT_TYPE_SYS_DEMAND_READING_TRANS_ERROR #define EVENT_TYPE_SYS_DEMAND_READING_XML_OK #define EVENT_TYPE_SYS_DEMAND_READING_XML_ERROR #define EVENT_TYPE_SYS_TARIFF_XML_OK #define EVENT_TYPE_SYS_TARIFF_XML_ERROR #define EVENT_TYPE_SYS_DLC_METERS_XML_ERROR #define EVENT_TYPE_SYS_THREAD_START_ERROR #define EVENT_TYPE_SYS_HDLC_ERROR #define EVENT_TYPE_SYS_MEMORY_ERROR #define EVENT_TYPE_SYS_SERIAL_METERS_XML_ERROR #define EVENT_TYPE_SYS_SAVE_THREAD_ERROR #define #define #define #define #define #define #define #define #define #define #define #define EVENT_TYPE_SYS_TIME_SYNC EVENT_TYPE_SYS_CODE_RED EVENT_TYPE_SYS_UPGRADE_START EVENT_TYPE_SYS_UPGRADE_START_SECTION EVENT_TYPE_SYS_UPGRADE_FILE_ERROR EVENT_TYPE_SYS_UPGRADE_START_MISSING EVENT_TYPE_SYS_UPGRADE_FINISH EVENT_TYPE_SYS_UPGRADE_FINISH_SECTION EVENT_TYPE_SYS_KEYS_FILE_OK EVENT_TYPE_SYS_KEYS_FILE_ERROR EVENT_TYPE_SYS_RESULTS_FILE_ERROR EVENT_TYPE_SYS_UPGRADE_START_ACTIVATE 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 1 2 3 4 5 6

#define EVENT_TYPE_DLC_INSTALL #define EVENT_TYPE_DLC_DEINSTALL #define EVENT_TYPE_DLC_GLOBAL_DEINSTALL #define EVENT_TYPE_DLC_DOUBLE_ADDRESS #define EVENT_TYPE_DLC_ADD_SUBSTATION #define EVENT_TYPE_DLC_NETWORK_ERROR #define EVENT_TYPE_DLC_NEW_ADDRESS addressing) #define EVENT_TYPE_DLC_SLAVE_LOST #define EVENT_TYPE_DLC_SLAVE_DELETE #define EVENT_TYPE_DLC_SLAVE_EXISTS addressing) #define #define #define #define #define #define #define #define #define #define EVENT_TYPE_COM_OPEN_PORT_ERROR EVENT_TYPE_COM_PHY_LAYER_ERROR EVENT_TYPE_COM_GSM_MODEM_ERROR EVENT_TYPE_COM_RAS_SERVER_ERROR EVENT_TYPE_COM_PPP_CONNECT EVENT_TYPE_COM_PPP_DISCONNECT

// DLC general error // DLC new address assigned to slave (dynamic DLC // DLC slave not responds to fork // DLC slave delete due to not responding to master // DLC slave address already exists (old DLC

EVENT_TYPE_SUB_TARIFF_WRITE_OK EVENT_TYPE_SUB_TARIFF_WRITE_ERROR EVENT_TYPE_SUB_TARIFF_ACTIVATE_OK EVENT_TYPE_SUB_TARIFF_ACTIVATE_ERROR

#define EVENT_TYPE_SUB_SET_ENCRYPTION_KEY_OK #define EVENT_TYPE_SUB_SET_ENCRYPTION_KEY_ERROR

Page 32 of 35

ISKRAEMECO// Event group strings #define EVENT_GROUP_STRING_NONE #define EVENT_GROUP_STRING_SYSTEM #define EVENT_GROUP_STRING_DLC #define EVENT_GROUP_STRING_COMMUNICATION #define EVENT_GROUP_STRING_SUBSTATION // Event type strings #define EVENT_TYPE_STRING_UNKNOWN #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define #define EVENT_TYPE_SYS_STRING_STARTUP EVENT_TYPE_SYS_STRING_EXIT EVENT_TYPE_SYS_STRING_RESTART EVENT_TYPE_SYS_STRING_DEVICE_ID EVENT_TYPE_SYS_STRING_PARAMS_OK EVENT_TYPE_SYS_STRING_CONFIG_OK EVENT_TYPE_SYS_STRING_PARAMS_ERROR EVENT_TYPE_SYS_STRING_CONFIG_ERROR EVENT_TYPE_SYS_STRING_READING_ERROR EVENT_TYPE_SYS_STRING_READING_SESSION_ERROR EVENT_TYPE_SYS_STRING_READING_TRANS_ERROR EVENT_TYPE_SYS_STRING_DEMAND_READING_ERROR EVENT_TYPE_SYS_STRING_DEMAND_READING_SESSION_ERROR EVENT_TYPE_SYS_STRING_DEMAND_READING_TRANS_ERROR EVENT_TYPE_SYS_STRING_DEMAND_READING_XML_OK EVENT_TYPE_SYS_STRING_DEMAND_READING_XML_ERROR EVENT_TYPE_SYS_STRING_TARIFF_XML_OK EVENT_TYPE_SYS_STRING_TARIFF_XML_ERROR EVENT_TYPE_SYS_STRING_DLC_METERS_XML_ERROR EVENT_TYPE_SYS_STRING_THREAD_START_ERROR EVENT_TYPE_SYS_STRING_HDLC_ERROR EVENT_TYPE_SYS_STRING_MEMORY_ERROR EVENT_TYPE_SYS_STRING_SERIAL_METERS_XML_ERROR EVENT_TYPE_SYS_STRING_SAVE_THREAD_ERROR EVENT_TYPE_SYS_STRING_TIME_SYNC EVENT_TYPE_SYS_STRING_CODE_RED EVENT_TYPE_SYS_STRING_UPGRADE_START EVENT_TYPE_SYS_STRING_UPGRADE_START_SECTION EVENT_TYPE_SYS_STRING_UPGRADE_FILE_ERROR EVENT_TYPE_SYS_STRING_UPGRADE_START_ACTIVATE EVENT_TYPE_SYS_STRING_UPGRADE_START_MISSING EVENT_TYPE_SYS_STRING_UPGRADE_FINISH EVENT_TYPE_SYS_STRING_UPGRADE_FINISH_SECTION EVENT_TYPE_SYS_STRING_KEYS_FILE_OK EVENT_TYPE_SYS_STRING_KEYS_FILE_ERROR EVENT_TYPE_SYS_STRING_RESULTS_FILE_ERROR EVENT_TYPE_DLC_STRING_INSTALL EVENT_TYPE_DLC_STRING_DEINSTALL EVENT_TYPE_DLC_STRING_GLOBAL_DEINSTALL EVENT_TYPE_DLC_STRING_DOUBLE_ADDRESS EVENT_TYPE_DLC_STRING_ADD_SUBSTATION EVENT_TYPE_DLC_STRING_NETWORK_ERROR EVENT_TYPE_DLC_STRING_NEW_ADDRESS EVENT_TYPE_DLC_STRING_SLAVE_LOST EVENT_TYPE_DLC_STRING_SLAVE_DELETE EVENT_TYPE_DLC_STRING_SLAVE_EXISTS EVENT_TYPE_COM_STRING_OPEN_PORT_ERROR EVENT_TYPE_COM_STRING_PHY_LAYER_ERROR EVENT_TYPE_COM_STRING_GSM_MODEM_ERROR EVENT_TYPE_COM_STRING_RAS_SERVER_ERROR EVENT_TYPE_COM_STRING_PPP_CONNECT EVENT_TYPE_COM_STRING_PPP_DISCONNECT EVENT_TYPE_SUB_STRING_TARIFF_WRITE_OK EVENT_TYPE_SUB_STRING_TARIFF_WRITE_ERROR EVENT_TYPE_SUB_STRING_TARIFF_ACTIVATE_OK EVENT_TYPE_SUB_STRING_TARIFF_ACTIVATE_ERROR (_T("NON.")) (_T("SYS.")) (_T("DLC.")) (_T("COM.")) (_T("SUB."))

P2LPC

(_T("Unknown")) (_T("Startup")) (_T("Exit")) (_T("Restart")) (_T("DeviceId")) (_T("ParamsOK")) (_T("ConfigOK")) (_T("ParamsError")) (_T("ConfigError")) (_T("ReadingError")) (_T("ReadingSessionError")) (_T("ReadingTransError")) (_T("DemandReadingError")) (_T("DemandReadingSessionError")) (_T("DemandReadingTransError")) (_T("DemandReadingXMLOK")) (_T("DemandReadingXMLError")) (_T("TariffXMLOK")) (_T("TariffXMLError")) (_T("DLCMetersXMLError")) (_T("ThreadStartError")) (_T("HDLCError")) (_T("MemoryError")) (_T("SerialMetersXMLError")) (_T("SaveThreadError")) (_T("TimeSync")) (_T("CodeRed")) (_T("UpgradeStart")) (_T("UpgradeStartSection")) (_T("UpgradeFileError")) (_T("UpgradeStartActivate")) (_T("UpgradeStartMissing")) (_T("UpgradeFinish")) (_T("UpgradeFinishSection")) (_T("P2LPCKeysOK")) (_T("P2LPCKeysError")) (_T("ResultsFileError")) (_T("Install")) (_T("Deinstall")) (_T("GlobalDeinstall")) (_T("DoubleAddress")) (_T("AddSubstation")) (_T("NetworkError")) (_T("NewAddress")) (_T("SlaveLost")) (_T("SlaveDelete")) (_T("SlaveExists")) (_T("OpenPortError")) (_T("PhyLayerError")) (_T("GSMModemError")) (_T("RASServerError")) (_T("PPPConnect")) (_T("PPPDisconnect")) (_T("TariffWriteOK")) (_T("TariffWriteError")) (_T("TariffActivateOK")) (_T("TariffActivateError")) (_T("SetEncryptionKeyOK")) (_T("SetEncryptionKeyError"))

#define EVENT_TYPE_SUB_STRING_SET_ENCRYPTION_KEY_OK #define EVENT_TYPE_SUB_STRING_SET_ENCRYPTION_KEY_ERROR

Page 33 of 35

ISKRAEMECO

P2LPC

Appendix:

transactions samplesread meter register value, T0 read meter register value, T1 read meter register value, T2 read meter register value, T3 read meter register value, T4

Current values Maximum Demand Power Outage Load profile Billing profile Load profile period

read maximum demand value, T0, current billing period read maximum demand value, T1, current billing period read maximum demand value, T2, current billing period

Read short power failure counter value

read Load Profile 1 values (1.8.0 register profile) read Load Profile 2 values (midnight values registers profile

read Billing Profile 1 read Billing Profile 2

change Load Profile 1 profiling perod .

to 3600 seconds (1 hour) change Load Profile 2 profiling perod .

to 86400 seconds (1 day)

Page 34 of 35

ISKRAEMECO Impulse input registers

P2LPC read meter register value, impulse input 1 read meter register value, impulse input 2

Tariff Events Exclusion of default reading transactions

read name of active tariff program read name of passive tariff program read current active tariff read tariff control register change tariff control register to

1 (external tariff inputs). 0 - internal tariff program

read logbook (event log) read long power failures log read Fatal Fault register

these are transactions performed without any user definitions if LP2 is used they should be excluded

Page 35 of 35