<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Ok - handelt sich also um die Datenbank Tabelle. Da ich mich mit SQL nicht so gut auskenne, habe Ich nur den falschen Wert gepatched, um mir die Datenbank nicht zu zerschiessen. </div><div>Hat funktioniert - Problem gelöst.</div><div><br></div><div>Vielen Dank </div><div>Manfred </div><div><br></div><br>Am 06.05.2022 um 10:40 schrieb Stefan Bauer <spam@stefan-bauer.net>:<br><div dir="ltr"><blockquote type="cite"><br></blockquote></div><blockquote type="cite"><div dir="ltr"><meta http-equiv="content-type" content="text/html; charset=utf-8">Die Tabelle heißt „aggregate“<div>Delete * from aggregate </div><div><br></div><div>Stefan<br><br><div dir="ltr">Von meinem iPhone gesendet</div><div dir="ltr"><br><blockquote type="cite">Am 06.05.2022 um 09:22 schrieb MH <mh.er@arcor.de>:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><meta http-equiv="content-type" content="text/html; charset=utf-8">Ok - jetzt bräuchte ich nur noch den Tipp welche Tabelle gemeint ist.<div><br></div><div>Gruß </div><div>Manfred <br><br><div dir="ltr"><blockquote type="cite">Am 05.05.2022 um 23:32 schrieb Stefan Bauer <spam@stefan-bauer.net>:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><meta http-equiv="content-type" content="text/html; charset=utf-8">Es wird bestimmt die aggregate Funktion genutzt und in der Tabelle ist der zu hohe Wert drin. Am Besten alles in der Tabelle löschen, die wird dann automatisch aus den dann aktuellen Werten aus data neu generiert. Damit ist der Peak bestimmt weg<div><br></div><div>Stefan<br><br><div dir="ltr">Von meinem iPhone gesendet</div><div dir="ltr"><br><blockquote type="cite">Am 05.05.2022 um 22:49 schrieb mh <mh.er@arcor.de>:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr">
  

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  
  
    Hallo zusammen,<br>
    <br>
    ich habe meine ersten Schritte mit volkszaehler gemacht und
    erfolgreich einen IR - Lesekopf an einem Stromzähler in Betrieb
    genommen.<br>
    <br>
    Aufgrund eines Kontaktproblems kam es für ca. 4 Minuten zu einer
    Unterbrechung der Datenaufnahme.<br>
    <br>
    Im Frontend hat sich das dann als hoher Spike (23.3kW) im Kanal für
    die Leistung bemerkbar gemacht.<br>
    Ich habe den fehlerhaften Wert in der Datenbank gepatched, um eine
    vernünftige Skalierung im Frontend zu erhalten.<br>
    <br>
    In der Stundenskalierung der Zeitachse erhalte ich aus das
    gewünschte Ergebnis (Anlage: volkszaehler.org-web
    frontend-zoom_in.jpg), in der Tagesskalierung bleibt der hohe Peak
    bestehen und macht die Skalierung kaputt. Das gleiche passiert, wenn
    ich in der Stundenskalierung herauszoome (Anlage:
    volkszaehler.org-web frontend-zoom_out.jpg).<br>
    <br>
    Ich vermute, dass eine Umrechung der Daten auf das gröbere
    Zeitraster der Datenpunkte (13sec) des Zoom-out erfolgt und dabei
    der Peak künstlich erzeugt wird. Allerdings ist mir unklar welches
    der naheliegenden Interpolations- oder Mittelungsverfahren zu so
    einer starker Erhöhung führen kann (Ist: 450W, Frontend: Ansteigend
    von 400W auf 23.3 kW). <br>
    Generell weichen die Daten in der Zoum-out Darstellung mitunter bis
    zu 20% von der Werten der Datenbank ab, selbst wenn der wirkliche
    Wert ins Darstellungszeitraster passt.<br>
    <br>
    Hat jemand eine Idee? Kann mir jemand helfen?<br>
    <br>
    Folgende Daten mit Firefox und RESTclient PlugIn von der Middleware
    abgerufen (csv format) - stimmen mit den Datenbankwerten überein:<br>
    <br>
    .....<br>
    <br>
    2022-05-05 10:18:02;497;1<br>
    2022-05-05 10:18:03;494;1<br>
    2022-05-05 10:18:05;496;1<br>
    2022-05-05 10:18:06;490;1<br>
    2022-05-05 10:18:08;489;1<br>
    2022-05-05 10:18:09;493;1<br>
    2022-05-05 10:18:11;494;1<br>
    2022-05-05 10:18:12;491;1<br>
    2022-05-05 10:18:14;487;1<br>
    2022-05-05 10:18:15;489;1<br>
    2022-05-05 10:18:17;489;1<br>
    2022-05-05 10:18:18;490;1<br>
    2022-05-05 10:18:19;491;1<br>
    2022-05-05 10:18:21;490;1<br>
    2022-05-05 10:18:22;491;1<br>
    2022-05-05 10:18:24;493;1<br>
    2022-05-05 10:18:25;490;1<br>
    2022-05-05 10:18:27;488;1<br>
    2022-05-05 10:18:28;491;1<br>
    2022-05-05 10:18:30;490;1<br>
    2022-05-05 10:18:31;487;1<br>
    2022-05-05 10:18:33;503;1<br>
    2022-05-05 10:18:34;487;1<br>
    2022-05-05 10:18:36;487;1<br>
    2022-05-05 10:18:37;493;1<br>
    2022-05-05 10:18:38;496;1<br>
    2022-05-05 10:18:40;491;1<br>
    2022-05-05 10:18:41;491;1<br>
    2022-05-05 10:18:43;497;1<br>
    2022-05-05 10:18:44;495;1<br>
    2022-05-05 10:18:46;499;1<br>
    2022-05-05 10:18:47;490;1<br>
    2022-05-05 10:18:49;494;1<br>
    2022-05-05 10:18:50;491;1<br>
    2022-05-05 10:18:52;494;1<br>
    2022-05-05 10:18:53;491;1<br>
    2022-05-05 10:18:55;494;1<br>
    2022-05-05 10:18:56;503;1<br>
    2022-05-05 10:18:57;494;1<br>
    2022-05-05 10:18:59;493;1<br>
    2022-05-05 10:19:00;491;1<br>
    2022-05-05 10:19:02;496;1<br>
    2022-05-05 10:19:03;490;1<br>
    2022-05-05 10:19:05;495;1<br>
    2022-05-05 10:19:06;494;1<br>
    2022-05-05 10:19:08;490;1<br>
    2022-05-05 10:19:09;495;1<br>
    2022-05-05 10:19:11;490;1<br>
    2022-05-05 10:19:12;493;1  <---------------<br>
    2022-05-05 10:23:20;450;1 Datenlücke. Zeitstempel und Wert in der
    Datenbank gepatched, um Sprung zu vermeiden.<br>
    2022-05-05 10:27:07;410;1 <----------------<br>
    2022-05-05 10:27:15;370;1<br>
    2022-05-05 10:27:16;329;1<br>
    2022-05-05 10:27:17;322;1<br>
    2022-05-05 10:27:28;330;1<br>
    2022-05-05 10:27:29;322;1<br>
    2022-05-05 10:27:30;321;1<br>
    2022-05-05 10:27:31;324;1<br>
    2022-05-05 10:27:32;324;1<br>
    2022-05-05 10:27:33;323;1<br>
    2022-05-05 10:27:35;333;1<br>
    2022-05-05 10:27:36;322;1<br>
    2022-05-05 10:27:37;320;1<br>
    2022-05-05 10:27:38;323;1<br>
    2022-05-05 10:27:39;322;1<br>
    2022-05-05 10:27:40;322;1<br>
    2022-05-05 10:27:41;321;1<br>
    2022-05-05 10:27:42;321;1<br>
    2022-05-05 10:27:43;322;1<br>
    2022-05-05 10:27:45;323;1<br>
    2022-05-05 10:27:46;322;1<br>
    2022-05-05 10:27:47;321;1<br>
    2022-05-05 10:27:50;342;1<br>
    2022-05-05 10:27:51;321;1<br>
    2022-05-05 10:27:52;320;1<br>
    2022-05-05 10:27:53;325;1<br>
    2022-05-05 10:27:55;320;1<br>
    2022-05-05 10:27:56;322;1<br>
    2022-05-05 10:27:57;324;1<br>
    2022-05-05 10:27:58;319;1<br>
    2022-05-05 10:27:59;323;1<br>
    2022-05-05 10:28:00;323;1<br>
    .....<br>
    <br>
    Verwendete Version: Image 2022-04-20-volkszaehler.img für Raspi 4B,
    vzlogger Version 0.8.1<br>
    <br>
    vzlogger.conf:<br>
    <br>
    {<br>
        // General settings<br>
        "verbosity": 5,         // log verbosity (0=log_alert,
    1=log_error, 3=log_warning, 5=log_info, 10=log_debug, 15=log_finest)<br>
        "log": "/var/log/vzlogger/vzlogger.log", // log file, optional<br>
        "retry": 30,            // http retry delay in seconds<br>
    <br>
        // Build-in HTTP server<br>
        "local": {<br>
            "enabled": false,   // enable local HTTPd for serving live
    readings<br>
            "port": 8080,       // TCP port for local HTTPd<br>
            "index": true,      // provide index listing of available
    channels if no UUID was requested<br>
            "timeout": 30,      // timeout for long polling comet
    requests in seconds (0 disables comet)<br>
            "buffer": -1        // HTTPd buffer configuration for
    serving readings, default -1<br>
                                //   >0: number of seconds of
    readings to serve<br>
                                //   <0: number of tuples to server
    per channel (e.g. -3 will serve 3 tuples)<br>
        },<br>
    <br>
        // realtime notification settings<br>
    //    "push": [<br>
    //        {<br>
    //            "url": <a class="moz-txt-link-rfc2396E" href="http://127.0.0.1:5582">"http://127.0.0.1:5582"</a>  // notification
    destination, e.g. frontend push-server<br>
    //        }<br>
    //    ],<br>
    <br>
    <br>
    <br>
        // Meter configuration<br>
        "meters": [<br>
            {<br>
                // S0 meter - gas<br>
    <br>
                "enabled": false,               // disabled meters will
    be ignored (default)<br>
                "allowskip": false,                  // errors when
    opening meter may be ignored if enabled<br>
                "aggtime": -1,                 // aggregate meter
    readings and send middleware update after <aggtime> seconds<br>
                "aggfixedinterval": true,       // round timestamps to
    nearest <aggtime> before sending to middleware<br>
                "protocol": "s0",               // meter protocol, see
    'vzlogger -h' for full list<br>
    //            "device": "/dev/ttyAMA0",       // meter device<br>
                "gpio": 18,                 // verwende raspi gpio18
    (pin 12)<br>
                "gpio_dir": -1,<br>
                "configureGPIO": true,<br>
                "resolution": 1,<br>
                "send_zero": false,<br>
                "debounce_delay": 30,<br>
                "nonblocking_delay": 10000,<br>
    <br>
    <br>
                "channel": {<br>
                    "identifier": "Impulse",    // s0 meter knows
    "Impulse" and "Power"<br>
                    "uuid": "712d3800-c8a4-11ec-ad5c-eb32d8bd8683",<br>
                    "api": "volkszaehler",      // middleware api,
    default volkszaehler<br>
                    "middleware": <a class="moz-txt-link-rfc2396E" href="http://localhost/middleware.php">"http://localhost/middleware.php"</a>,<br>
                    "aggmode": "SUM"            // aggregation mode:
    aggregate meter readings during <aggtime> interval<br>
                                                //   "SUM": add readings
    (use for s0 impulses)<br>
                                                //   "MAX": maximum
    value (use for meters sending absolute readings)<br>
                                                //   "AVG": average
    value (use for meters sending current usage)<br>
                }<br>
            },<br>
            {<br>
                // Example SML meter<br>
    <br>
                "enabled": true,               // disabled meters will
    be ignored (default)<br>
                "allowskip": false,                  // errors when
    opening meter may be ignored if enabled<br>
                "protocol": "sml",              // meter protocol, see
    'vzlogger -h' for full list<br>
                "interval": -1,<br>
                "pullseq": "",<br>
                "parity": "8N1",<br>
                "baudrate": 9600,<br>
                "use_local_time": false,<br>
                "device": "/dev/ttyAMA0",       // meter device<br>
    <br>
                "aggtime": 1,                  // aggregate meter
    readings and send middleware update after <aggtime> seconds<br>
                "aggfixedinterval": true,       // round timestamps to
    nearest <aggtime> before sending to middleware<br>
    <br>
    <br>
    <br>
                "channels": [{<br>
                    "api": "volkszaehler",      // middleware api,
    default volkszaehler<br>
                    "uuid": "f46df0d0-cbbd-11ec-a796-170eaa4275d9",<br>
                    "middleware": <a class="moz-txt-link-rfc2396E" href="http://localhost/middleware.php">"http://localhost/middleware.php"</a>,<br>
                    "identifier": "1-0:16.7.0",    // OBIS identifier
    Wirkleistung in W<br>
    //                "duplicates": 10,            // duplicate
    handling, default 0 (send duplicate values)<br>
                                                //   >0: send
    duplicate values only each <duplicates> seconds<br>
                                                // Activate only for
    abs. counter values (Zaehlerstaende) and not for impulses<br>
                    "aggmode": "AVG"            // aggregation mode:
    aggregate meter readings during <aggtime> interval<br>
                                                //   "SUM": add readings
    (use for s0 impulses)<br>
                                                //   "MAX": maximum
    value (use for meters sending absolute readings)<br>
                                                //   "AVG": average
    value (use for meters sending current usage)<br>
    <br>
                }, {<br>
                    "api": "volkszaehler",      // middleware api,
    default volkszaehler<br>
                    "uuid": "82eee1e0-cbbe-11ec-aa77-99a6a520661b",<br>
                    "middleware": <a class="moz-txt-link-rfc2396E" href="http://localhost/middleware.php">"http://localhost/middleware.php"</a>,<br>
                    "identifier": "1-0:1.8.0",   // OBIS identifier
    Wirkenergie in Wh<br>
                    "aggmode": "MAX"            // aggregation mode:
    aggregate meter readings during <aggtime> interval<br>
                                                //   "SUM": add readings
    (use for s0 impulses)<br>
                                                //   "MAX": maximum
    value (use for meters sending absolute readings)<br>
                                                //   "AVG": average
    value (use for meters sending current usage)<br>
    <br>
                }]<br>
            }<br>
        ]<br>
    }<br>
    <br>
    Gruss Manfred<br>
  

<img id="DF2D131F-1547-496E-9B00-858E8009406C" alt="volkszaehler.org-web frontend-zoom_in.jpg" src="cid:DF2D131F-1547-496E-9B00-858E8009406C"><img id="C9DC4253-3DAC-4D42-BAAD-545523B161D4" alt="volkszaehler.org-web frontend-zoom_out.jpg" src="cid:C9DC4253-3DAC-4D42-BAAD-545523B161D4"></div></blockquote></div></div></blockquote></div></div></blockquote></div></div></blockquote></body></html>