[vz-users] gelöst-Frage wegen zuviel Daten vom vzlogger

Michael Wulz michael.wulz at gmail.com
Tue Sep 2 12:33:12 CEST 2014


Hallo,

hab's gelöst.

in einem Thread von Reinhard hab ich gefunden, dass mehrere das Problem
schon hatten.

Ich habe nun folgenden Lösungsvorschlag, der mir soweit passt.
Sicherlich nicht schön aber es funktioniert:

in der Datei src/protocols/MeterD0.cpp:

  case OBIS_CODE:
                                print(log_debug, "DEBUG OBIS_CODE byte
%c hex= %X ",name().c_str(), byte, byte);
                                if ((byte != '\n') && (byte != '\r') &&
(byte != 0x02) && (byte != 0x1F) && (byte != '*'))// STX und US ausklammern
                                {
                                        if (byte == '(') {
                                                obis_code[byte_iterator]
= '\0';
                                                byte_iterator = 0;
                                                context = VALUE;
                                        }
                                        else obis_code[byte_iterator++]
= byte;
                                }
                                break;

Hab ich hinten das "&& (byte != '*')" hinzugefügt.
Somit wird das "*" entfernt und die OBIS ID's sind dann halt
1.8.120
1.8.119
1.8.118
usw...

Mich interessiert aber nur die 1.8.1 - so bekomme ich auch nur die 1.8.1
und 1 tuple wird in die DB geschrieben.

Vielleicht hilfts ja mal jemanden ;-)

lg
Michael




-------- Original-Nachricht --------
Betreff: Frage wegen zuviel Daten vom vzlogger
Datum: Tue, 02 Sep 2014 11:46:59 +0200
Von: Michael Wulz <michael.wulz at gmail.com>
An: volkszaehler.org - users <volkszaehler-users at lists.volkszaehler.org>

Hallo,

habe den Parser nun zum laufen gebracht. Der Landis&Gyr Zähler wird
jetzt korrekt geparst.

Ich hatte vorhin bei Identifier:
"identifier" : "1-0:1.8.1"
stehen,
jetzt auf:
"identifier" : "1-0:1.8.1*255"
geändert bringt auch nix. Er nimmt anscheinend alle Werte mit 1.8.1.
beginnend mit. (also auch die Korrelierten vom Zähler)

Er soll aber nur den Wert: 1.8.1 (in der Liste mit 4346.80 kWh)
nehmen.

gruss
Michael

Der vzlogger gibt nur zuviel Daten in die DB:

[Sep 02 09:28:41][d0]   Read package with 28 tuples (vendor=LGZ,
baudrate=5, identification=\2ZMD3102400.B14)
[Sep 02 09:28:41][mtr0] Got 28 new readings from meter:
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*255/ObisItentifier:255-255:1.8.1*255 value=4346.80
ts=1409650099.033
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*20/ObisItentifier:255-255:1.8.1*20 value=4155.20
ts=1409650099.739
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*19/ObisItentifier:255-255:1.8.1*19 value=3945.30
ts=1409650100.435
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*18/ObisItentifier:255-255:1.8.1*18 value=3750.00
ts=1409650101.131
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*17/ObisItentifier:255-255:1.8.1*17 value=3524.50
ts=1409650101.828
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*16/ObisItentifier:255-255:1.8.1*16 value=3278.30
ts=1409650102.523
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*15/ObisItentifier:255-255:1.8.1*15 value=3011.00
ts=1409650103.219
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*14/ObisItentifier:255-255:1.8.1*14 value=2764.30
ts=1409650103.915
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*13/ObisItentifier:255-255:1.8.1*13 value=2485.10
ts=1409650104.611
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*12/ObisItentifier:255-255:1.8.1*12 value=2201.90
ts=1409650105.305
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*11/ObisItentifier:255-255:1.8.1*11 value=1974.80
ts=1409650106.000
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*10/ObisItentifier:255-255:1.8.1*10 value=1729.00
ts=1409650106.701
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*9/ObisItentifier:255-255:1.8.1*9 value=1482.50
ts=1409650107.397
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:1.8.1*2/ObisItentifier:255-255:1.8.1*2 value=1259.80
ts=1409650108.094
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*255/ObisItentifier:255-255:2.8.1*255 value=0.00
ts=1409650108.814
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*20/ObisItentifier:255-255:2.8.1*20 value=0.00
ts=1409650109.520
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*19/ObisItentifier:255-255:2.8.1*19 value=0.00
ts=1409650110.214
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*18/ObisItentifier:255-255:2.8.1*18 value=0.00
ts=1409650110.909
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*17/ObisItentifier:255-255:2.8.1*17 value=0.00
ts=1409650111.609
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*16/ObisItentifier:255-255:2.8.1*16 value=0.00
ts=1409650112.303
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*15/ObisItentifier:255-255:2.8.1*15 value=0.00
ts=1409650112.998
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*14/ObisItentifier:255-255:2.8.1*14 value=0.00
ts=1409650113.693
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*13/ObisItentifier:255-255:2.8.1*13 value=0.00
ts=1409650114.388
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*12/ObisItentifier:255-255:2.8.1*12 value=0.00
ts=1409650115.083
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*11/ObisItentifier:255-255:2.8.1*11 value=0.00
ts=1409650115.778
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*10/ObisItentifier:255-255:2.8.1*10 value=0.00
ts=1409650116.473
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*9/ObisItentifier:255-255:2.8.1*9 value=0.00
ts=1409650117.170
[Sep 02 09:28:41][mtr0] Reading:
id=255-255:2.8.1*2/ObisItentifier:255-255:2.8.1*2 value=0.00
ts=1409650117.864
[Sep 02 09:28:41][chn0] Adding reading to queue (value=4346.80
ts=1409650099.033)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=4155.20
ts=1409650099.739)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=3945.30
ts=1409650100.435)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=3750.00
ts=1409650101.131)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=3524.50
ts=1409650101.828)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=3278.30
ts=1409650102.523)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=3011.00
ts=1409650103.219)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=2764.30
ts=1409650103.915)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=2485.10
ts=1409650104.611)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=2201.90
ts=1409650105.305)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=1974.80
ts=1409650106.000)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=1729.00
ts=1409650106.701)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=1482.50
ts=1409650107.397)
[Sep 02 09:28:41][chn0] Adding reading to queue (value=1259.80
ts=1409650108.094)
[Sep 02 09:28:41][chn0] ==> number of tuples: 14
[Sep 02 09:28:41][chn0] compare: 1409650008495 1409650099033
1409650099032.864014
[Sep 02 09:28:41][chn0] compare: 1409650099033 1409650099739
1409650099739.187012
[Sep 02 09:28:41][chn0] compare: 1409650099739 1409650100435
1409650100435.458984
[Sep 02 09:28:41][chn0] compare: 1409650100435 1409650101131
1409650101130.619141
[Sep 02 09:28:41][chn0] compare: 1409650101131 1409650101828
1409650101828.177002
[Sep 02 09:28:41][chn0] compare: 1409650101828 1409650102523
1409650102523.147217
[Sep 02 09:28:41][chn0] compare: 1409650102523 1409650103219
1409650103219.467041
[Sep 02 09:28:41][chn0] compare: 1409650103219 1409650103915
1409650103914.643066
[Sep 02 09:28:41][chn0] compare: 1409650103915 1409650104611
1409650104610.857910
[Sep 02 09:28:41][chn0] compare: 1409650104611 1409650105305
1409650105304.704834
[Sep 02 09:28:41][chn0] compare: 1409650105305 1409650106000
1409650105999.740967
[Sep 02 09:28:41][chn0] compare: 1409650106000 1409650106701
1409650106701.054932
[Sep 02 09:28:41][chn0] compare: 1409650106701 1409650107397
1409650107397.380127
[Sep 02 09:28:41][chn0] compare: 1409650107397 1409650108094
1409650108093.697998
[Sep 02 09:28:41][chn0] Buffer dump (size=14 keep=32):
{4346.8000,4155.2000,3945.3000,3750.0000,3524.5000,3278.3000,3011.0000,2764.3000,2485.1000,2201.9000,1974.8000,1729.0000,1482.5000,1259.8000,}
[Sep 02 09:28:41][mtr0] Next reading in 60 seconds
[Sep 02 09:28:41][chn0] JSON request body: [ [ 1409650099032.864014,
4346.800000 ], [ 1409650099739.187012, 4155.200000 ], [
1409650100435.458984, 3945.300000 ], [ 1409650101130.619141, 3750.000000
], [ 1409650101828.177002, 3524.500000 ], [ 1409650102523.147217,
3278.300000 ], [ 1409650103219.467041, 3011.000000 ], [
1409650103914.643066, 2764.300000 ], [ 1409650104610.857910, 2485.100000
], [ 1409650105304.704834, 2201.900000 ], [ 1409650105999.740967,
1974.800000 ], [ 1409650106701.054932, 1729.000000 ], [
1409650107397.380127, 1482.500000 ], [ 1409650108093.697998, 1259.800000 ] ]
[Sep 02 09:28:41][chn0] CURL: Connection #0 seems to be dead!
[Sep 02 09:28:41][chn0] CURL: Closing connection #0
[Sep 02 09:28:41][chn0] CURL: About to connect() to 127.0.0.1 port 80 (#0)
[Sep 02 09:28:41][chn0] CURL:   Trying 127.0.0.1...
[Sep 02 09:28:41][chn0] CURL: connected
[Sep 02 09:28:41][chn0] CURL: Connected to 127.0.0.1 (127.0.0.1) port 80
(#0)
[Sep 02 09:28:41][chn0] CURL: Sent 548 bytes..
[Sep 02 09:28:41][chn0] CURL: Sent '[ [ 1409650099032.864014,
4346.800000 ], [ 1409650099739.187012, 4155.200000 ], [
1409650100435.458984, 3945.300000 ], [ 1409650101130.619141, 3750.000000
], [ 1409650101828.177002, 3524.500000 ], [ 1409650102523.147217,
3278.300000 ], [ 1409650103219.467041, 3011.000000 ], [
1409650103914.643066, 2764.300000 ], [ 1409650104610.857910, 2485.100000
], [ 1409650105304.704834, 2201.900000 ], [ 1409650105999.740967,
1974.800000 ], [ 1409650106701.054932, 1729.000000 ], [
1409650107397.380127, 1482.500000 ], [ 1409650108093.697998, 1259.800000
] ]' bytes
[Sep 02 09:28:41][chn0] CURL: upload completely sent off: 548 out of 548
bytes
[Sep 02 09:28:41][chn0] CURL: additional stuff not fine transfer.c:1037: 0 0
[Sep 02 09:28:42][chn0] CURL: HTTP 1.1 or later with persistent
connection, pipelining supported
[Sep 02 09:28:42][chn0] CURL: Received 27 bytes
[Sep 02 09:28:42][chn0] CURL: Received '{"version":"0.3","rows":14}' bytes
[Sep 02 09:28:42][chn0] CURL: Connection #0 to host 127.0.0.1 left intact
[Sep 02 09:28:42][chn0] CURL Request succeeded with code: 200


hier die Config:

{
"retry" : 30,                      /* how long to sleep between failed
requests, in seconds */
"daemon": true,                    /* run periodically */
"foreground" : false,              /* run in background */
"verbosity" : 7,                   /* between 0 and 9999, je höher desto
mehr Infos */
"log" : "/var/log/vzlogger.log",   /* path to logfile, optional */

"local" : {
        "enabled" : false,      /* local HTTPd for serving live
readings, 'false' für Daten an die middleware !!! */
        "port" : 80,            /* the TCP port for the local HTTPd */
        "index" : true,         /* should we provide a index listing of
available channels if no UUID was requested? */
        "timeout" : 30,         /* timeout for long polling comet
requests, 0 disables comet, in seconds */
        "buffer" : 600          /* how long to buffer readings for the
local interface, in seconds */
          },

"meters" : [{                           /* Beispiel-Meter */
        "enabled" : true,               /* disabled meters will be
ignored (default) */
        "protocol" : "d0",              /* see 'vzlogger -h' for list of
available protocols */
        "device" : "/dev/ttyUSB0",
        "parity" : "7E1",               /* oder 8N1  */
        "baudrate" : 300,              /* oder 300  */
        "pullseq" : "2f3f210d0a",
          "interval": 60,                                   /* Wartezeit
in Sekunden bis neue Werte in die middleware übertragen werden */
           "channel": {                                   /*
Beispiel-channel */
                                 "uuid" :
"a02ea060-1e18-11e4-a178-5be9227ad291",
                                 "middleware" :
"http://127.0.0.1/middleware.php",
                                 "identifier" : "1-0:1.8.1*255" /* alias
for '1-0:1.8.1', see 'vzlogger -h' for list of available aliases */
                              }
                   }]
}


gruss
Michael




More information about the volkszaehler-users mailing list