<p dir="ltr">Hallo,</p>
<p dir="ltr">probiers mal mit aggregation statt interval. aggtime steht in deiner Config ja schon drin, einfach noch für jeden channel aggmode passend definieren (MAX für Zählerstände, AVG für Leistungen). Wenn ich richtig Bescheid weiß, ist interval nur für Zähler gedacht, die gepollt werden müssen.</p>
<p dir="ltr">Grüße<br>
Frank</p>
<div class="gmail_quote">Am 24.05.2016 23:12 schrieb  <<a href="mailto:china2013@abwesend.de">china2013@abwesend.de</a>>:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ich habe eine stark verzögerte Darstellung im Frontend.<br>
<br>
Ich vermute, dass [b]ttyUSB0[/b] einen riesigen Puffer hat und dieser voll läuft.<br>
Der normale vzlogger holt die Daten nicht schnell genug ab, der Puffer läuft voll und verursacht ein riesengroßes time lag.<br>
<br>
<br>
Begründung:<br>
Wenn das System normal läuft und bereits verzögert ist, dann mache ich das:<br>
/usr/local/bin/vzlogger -c /home/pi/mgr2109/vzloggertest.conf (diese Testconfig habe ich unten angehängt)<br>
und *sofort* kommen einige 100 kByte auf einmal an Readings an.<br>
<br>
Beispiel:<br>
[May 24 18:27:22]       Opened logfile /home/pi/mgr2109/vzloggertest.log<br>
[May 24 18:27:22][push] No pushDataServer defined.<br>
[May 24 18:27:22][]     ===> Start meters<br>
[May 24 18:27:22][mtr0] Meter connection established<br>
[May 24 18:27:22][mtr0] Meter thread started<br>
[May 24 18:27:22][mtr0] Meter is opened. Starting channels.<br>
[May 24 18:27:22][]     Startup done.<br>
[May 24 18:27:22][mtr0] Number of readers: 32<br>
[May 24 18:27:22][mtr0] Config.daemon: 0<br>
[May 24 18:27:22][mtr0] Config.local: 0<br>
[May 24 18:27:22][mtr0] Got 4 new readings from meter:<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.0*255/ObisItentifier:1-0:1.8.0*255 value=28935164.80 ts=1464107242236<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.1*255/ObisItentifier:1-0:1.8.1*255 value=28935164.80 ts=1464107242236<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.2*255/ObisItentifier:1-0:1.8.2*255 value=0.00 ts=1464107242236<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:15.7.0*255/ObisItentifier:1-0:15.7.0*255 value=195.50 ts=1464107242236<br>
[May 24 18:27:22][mtr0] Got 4 new readings from meter:<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.0*255/ObisItentifier:1-0:1.8.0*255 value=28935164.90 ts=1464107242238<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.1*255/ObisItentifier:1-0:1.8.1*255 value=28935164.90 ts=1464107242238<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.2*255/ObisItentifier:1-0:1.8.2*255 value=0.00 ts=1464107242238<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:15.7.0*255/ObisItentifier:1-0:15.7.0*255 value=195.50 ts=1464107242238<br>
[May 24 18:27:22][mtr0] Got 4 new readings from meter:<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.0*255/ObisItentifier:1-0:1.8.0*255 value=28935165.00 ts=1464107242240<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.1*255/ObisItentifier:1-0:1.8.1*255 value=28935165.00 ts=1464107242240<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.2*255/ObisItentifier:1-0:1.8.2*255 value=0.00 ts=1464107242240<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:15.7.0*255/ObisItentifier:1-0:15.7.0*255 value=196.50 ts=1464107242240<br>
[May 24 18:27:22][mtr0] Got 4 new readings from meter:<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.0*255/ObisItentifier:1-0:1.8.0*255 value=28935165.10 ts=1464107242242<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.1*255/ObisItentifier:1-0:1.8.1*255 value=28935165.10 ts=1464107242242<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:1.8.2*255/ObisItentifier:1-0:1.8.2*255 value=0.00 ts=1464107242242<br>
[May 24 18:27:22][mtr0] Reading: id=1-0:15.7.0*255/ObisItentifier:1-0:15.7.0*255 value=195.50 ts=1464107242242<br>
[May 24 18:27:22][mtr0] Got 4 new readings from meter:<br>
...<br>
u.s.w alles mit der gleichen Uhrzeit "[May 24 18:27:22]"<br>
Danach breche ich mit CTRL+C ab und hoffe, dass der im Hintergrund laufende vzlogger nicht gestört wurde.<br>
Und sofort kommen im "frontend" wieder aktuelle Werte bis das System wieder genug Verzögerung angesammelt hat.<br>
Wie Du sehen kannst, sind die Timestamps (ts=...) am Ende der Zeile korrekt : alle 2 Sekunden.<br>
<br>
Die Verzögerung habe ich unabhängig voneinander auf ttyUSB0 und ttyUSB1.<br>
<br>
Im Anhang noch ein Screenshot mit drei solchen Sprüngen : ttyUSB1 ttyUSB0 ttyUSB1<br>
Die gelbe PV Kurve stimmt erst nach Run von "vzloggertest.conf" mit dem gelben DesktopGadget "Saftwerk" überein. (zumindest eine Weile)<br>
<br>
<br>
Ich vermute folgende Ursache:<br>
Der Zähler EMH EHZ-HW8E2A5L0EQ2P sendet immer alle 2 Sekunden sein Protokoll.<br>
Der vzlogger nimmt sich aus dem FIFO Puffer der ttyUSB0 Schnittstelle immer nur ein Protokoll mit dem eingestellten "interval": 30<br>
Also müssten müssten eigentlich die 14 Protokolle dazwischen verworfen werden.<br>
<br>
<br>
Ähnliches Thema siehe auch 21.5.2015 :<br>
[vz-users] Stromdaten werden mit 4 Stündiger Verspätung angezeigt<br>
<a href="https://www.mail-archive.com/volkszaehler-users%40demo.volkszaehler.org/msg02769.html" rel="noreferrer" target="_blank">https://www.mail-archive.com/volkszaehler-users%40demo.volkszaehler.org/msg02769.html</a><br>
P.s. Dieses ist mein erstes Posting in einer Mailingliste (verdammt komplexes Userinterface) :-(<br>
<br>
<br>
Viele Grüße<br>
Saftwerk<br>
<br>
-----------------------------------------------------------<br>
Verwendete Hardware :<br>
1x PI-3<br>
2x Udo's gelbe USB Magnet Leseköpfe<br>
2x EMH EHZ-HW8E2A5L0EQ2P<br>
<br>
Verwendete Software:<br>
vzlogger 0.5.1<br>
    based on git version: heads/master-0-g7e79f4c700-dirty<br>
    last commit date: Fri, 5 Feb 2016 18:03:28 +0100<br>
<br>
----------------------------------------------------------------------------<br>
Hier meine "vzloggertest.conf" :<br>
----------------------------------------------------------------------------<br>
/**<br>
   * vzlogger configuration<br>
   *<br>
   * use proper encoded JSON with javascript comments<br>
   *<br>
   * take a look at the wiki for detailed information:<br>
   * <a href="http://wiki.volkszaehler.org/software/controller/vzlogger#configuration" rel="noreferrer" target="_blank">http://wiki.volkszaehler.org/software/controller/vzlogger#configuration</a><br>
   *<br>
   * nach dem Upload mit diesem Befehl testen:<br>
   * /usr/local/bin/vzlogger -c /home/pi/mgr2109/vzloggertest.conf<br>
   */<br>
<br>
{<br>
"retry" : 30,                   /* how long to sleep between failed requests, in seconds */<br>
"daemon": false,                /* run periodically */<br>
"verbosity" : 15,               /* between 0 and 15 */<br>
"log" : "/home/pi/mgr2109/vzloggertest.log",/* path to logfile, optional */<br>
<br>
"local" : {<br>
          "enabled" : false,      /* should we start the local HTTPd for serving live readings? */<br>
          "port" : 8080,            /* the TCP port for the local HTTPd */<br>
          "index" : true,         /* should we provide a index listing of available channels? */<br>
          "timeout" : 30,         /* timeout for long polling comet requests, 0 disables comet, in seconds */<br>
          "buffer" : 600          /* how long to buffer readings for the local interface, in seconds */<br>
},<br>
<br>
"meters" : [{<br>
          "enabled" : true,       /* disabled meters will be ignored */<br>
          "protocol" : "sml",     /* use 'vzlogger -h' for list of available protocols */<br>
          "device" : "/dev/ttyUSB1",<br>
          }<br>
]}<br>
----------------------------------------------------------------------------<br>
<br>
Hier die vzlogger.conf :<br>
----------------------------------------------------------------------------<br>
/**<br>
   * vzlogger configuration<br>
   *<br>
   * Use properly encoded JSON with javascript comments<br>
   *<br>
   * Take a look at the wiki for detailed information:<br>
   * <a href="http://wiki.volkszaehler.org/software/controller/vzlogger#configuration" rel="noreferrer" target="_blank">http://wiki.volkszaehler.org/software/controller/vzlogger#configuration</a><br>
   *<br>
   * For an online configuration editor refer to:<br>
   * <a href="http://volkszaehler.github.io/vzlogger/" rel="noreferrer" target="_blank">http://volkszaehler.github.io/vzlogger/</a><br>
   *<br>
   * nach dem Upload mit diesem Befehlen aktivieren:<br>
   * pi@pi3:~ $ sudo killall vzlogger<br>
   * pi@pi3:~ $ sudo cp /home/pi/mgr2109/vzlogger.conf /etc/vzlogger.conf<br>
   * pi@pi3:~ $ sudo reboot now<br>
   */<br>
{  // General settings<br>
    "retry": 30,                 /* how long to sleep between failed requests, in seconds */<br>
    "daemon": true,              /* run periodically */<br>
    "verbosity": 5,               /* between 0 and 15 */<br>
    "log": "/tmp/vzlogger.log",  /* path to logfile, optional */<br>
    // Build-in HTTP server<br>
    "local": {<br>
        "enabled": false,      /* should we start the local HTTPd for serving live readings? */<br>
        "port": 8080,          /* the TCP port for the local HTTPd */<br>
        "index": true,         /* should we provide a index listing of available channels? */<br>
        "timeout": 30,         /* timeout for long polling comet requests, 0 disables comet, in seconds */<br>
        "buffer": -1           /* how long to buffer readings for the local interface, in seconds */<br>
    },<br>
    // realtime notification settings<br>
    "push": [{<br>
        "url": "<a href="http://127.0.0.1:5582" rel="noreferrer" target="_blank">http://127.0.0.1:5582</a>"  // notification destination, e.g. frontend push-server<br>
    }],<br>
    // Meter configuration<br>
    "meters" : [{<br>
        "enabled": true,<br>
        "protocol": "sml",<br>
        "device": "/dev/ttyUSB0",<br>
        "interval": 30,<br>
        "aggtime": 10,<br>
        "baudrate": 9600,<br>
        "parity": "8n1",<br>
        "channels" : [{<br>
            "uuid" : "ddb38c40-2143-11e6-ba07-892ea74f2d95",<br>
            "identifier" : "1-0:2.8.0*255",         /* Haus ET (2.8.0 Wirkarbeit Lieferung -A) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        },{<br>
            "uuid" : "eaafc420-2143-11e6-9469-231e8a5088bb",<br>
            "identifier" : "1-0:1.8.1*255",         /* Haus NT (1.8.1 Wirkarbeit Bezug +A Tarif 1) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        },{<br>
            "uuid" : "f0fec8a0-2143-11e6-aaa5-a7682962a09e",<br>
            "identifier" : "1-0:1.8.2*255",         /* Haus HT (1.8.2 Wirkarbeit Bezug +A Tarif 2) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        },{<br>
            "uuid" : "00f15380-2144-11e6-95a3-3720f3308148",<br>
            "identifier" : "1-0:15.7.0*255",         /* Haus Watt (15.7.0 Wirkleistung) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        }]<br>
    },{<br>
        "enabled": true,<br>
        "protocol": "sml",<br>
        "device": "/dev/ttyUSB1",<br>
        "interval": 30,<br>
        "aggtime": 10,<br>
        "baudrate": 9600,<br>
        "parity": "8n1",<br>
        "channels" : [{<br>
            "uuid" : "c15295c0-21c6-11e6-81d0-0b9c8f192e61",<br>
            "identifier" : "1-0:1.8.1*255",         /* PV (1.8.0 Wirkarbeit) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        },{<br>
            "uuid" : "96367040-21c6-11e6-8f72-710cef347aef",<br>
            "identifier" : "1-0:15.7.0*255",         /* PV Watt (15.7.0 Wirkleistung) */<br>
            "api" : "volkszaehler",<br>
            "middleware" : "<a href="http://127.0.0.1/middleware.php" rel="noreferrer" target="_blank">http://127.0.0.1/middleware.php</a>"<br>
        }]<br>
    }]<br>
}<br>
----------------------------------------------------------------------------<br>
<br>
<br>
</blockquote></div>