[vz-users] Optimierung der vzlogger.conf, Datenaggregation, fehlerhafte Messung und Darstellung

Heiko Baumann hbcs at gmx.de
Sat Jul 16 22:18:38 CEST 2016


Hallo zusammen,

nach einem Umstieg auf das "offizelle" Image hatte ich ja mitunter etwas 
Probleme, den vzlogger zum Laufen zu bringen bzw. richtig zu 
konfigurieren (nutzte vorher s0vz und 1wirevz als Dienst).

Mit der angehängten vzlogger.conf bekomme ich jetzt zumindest wieder 
vernünftige Werte rein.

Interessanterweise war ein Backup meiner DB vor der Umstellung nach dem 
Zippen immer zwischen 16 und 18MB groß, mit dem neuen Image (und dem 
gleichen Backupskript) sind es jetzt 46MB. Ein Filediff zeigt viele 
Einträge in den Tablellen aggregate und values (wenig überraschend, es 
hat einige Tage gedauert, bis vz wieder lief und das Backup eingerichtet 
war).
Dennoch scheint es mir so, als ob im Rahmen der Aggregation die Daten 
irgendwie "ausgemistet" gehören würden.

A propos Aggregation: ja, der Cronjob läuft
pi at BauratPi:~ $ tail /var/log/syslog
Jul 16 21:47:01 BauratPi rsyslogd-2007: action 'action 17' suspended, 
next retry is Sat Jul 16 21:48:31 2016 [try http://www.rsyslog.com/e/2007 ]
Jul 16 21:47:01 BauratPi CRON[4579]: (pi) CMD (php 
/var/www/volkszaehler.org/misc/tools/aggregate.php run -m delta -l 
minute >/dev/null)
Jul 16 21:48:01 BauratPi CRON[4621]: (pi) CMD (php 
/var/www/volkszaehler.org/misc/tools/aggregate.php run -m delta -l 
minute >/dev/null)
Jul 16 21:49:02 BauratPi rsyslogd-2007: action 'action 17' suspended, 
next retry is Sat Jul 16 21:50:32 2016 [try http://www.rsyslog.com/e/2007 ]
Jul 16 21:49:02 BauratPi CRON[4637]: (pi) CMD (php 
/var/www/volkszaehler.org/misc/tools/aggregate.php run -m delta -l 
minute >/dev/null)
Jul 16 21:50:01 BauratPi CRON[4653]: (pi) CMD (php 
/var/www/volkszaehler.org/misc/tools/aggregate.php run -m delta -l 
minute >/dev/null)

(was der Fehler mit dem rsyslogd ist, weiß ich nicht - ich hoffe 
unerheblich)

An den Diensten des vzimages hab ich nichts geändert. vzcompress läuft 
meines Wissens nicht, im syslog findet sich kein Eintrag.

Also 1. Frage: was kann ich tun, um meinen Datenbestand vernünftig 
auszudünnen?
Bislang bin ich ohne vzcompress zurecht gekommen, das gezippte Backup 
mit 16MB war gut zu handeln. Jetzt mit knapp 50MB (entpackt 200MB!) 
wirds unpraktisch...

Die 2. Frage geht in die gleiche Richtung: meine 1wire 
Temperatursensoren und s0 STromzähler brauchen nicht im Sekundentakt 
auflösen. Welches sind sinnvolle praktikable Werte, um der Datenmengen 
in Verbindung mit der Aggregation Herr zu werden und den schmalen Pi 
nicht zu überlasten? Meine vzlogger.conf sieht wie folgt aus (Auszug 1x 
s0, 1x 1wire). Hab nach einem Hinweis von Andi in der letzten Mail die 
aggtime auf 60 und den aggmode auf sum gestellt - war das wirklich alles 
oder was sollte noch angepasst werden?

[...]
    {
       // PV-Wechselrichter GPIO 17
       "enabled": true,
       "allowskip": false,
       "interval": -1,
       "aggtime": 60,
       "aggfixedinterval": false,
       "channels": [
         {
           "uuid": "7b6afe30-f2dc-11e2-a117-6b7d90ba87df",
           "identifier": "Impulse",
           "api": "volkszaehler",
           "middleware": "http://127.0.0.1/middleware.php",
           "aggmode": "sum",
           "duplicates": 0
         }
       ],
       "protocol": "s0",
       "gpio": 17,
       "resolution": 1000,
       "configureGPIO": true,
       "debounce_delay": 0
     },
    // 1wire Temperatursensoren
     {
       "enabled": true,
       "allowskip": false,
       "interval": 10,
       "aggtime": -1,
       "aggfixedinterval": false,
       "channels": [
         {
           // T4 Aussentemperatur channel 10
           "uuid": "53e45780-f2dc-11e2-bb40-e1626f6aa1bd",
           "identifier": "28-0000045c5c7e",
           "api": "volkszaehler",
           "middleware": "http://127.0.0.1/middleware.php",
           "aggmode": "none",
           "duplicates": 0
         },
[...]

.. und schließlich noch zur 3. Frage: die gemessenen Werte z.B. meiner 
PV-Anlage unterscheiden sich deutlich:

a) vz: 48,6 kWh. Graph wie folgt:


b) Wechselrichter: 71,1 kWh


Die Graphen sind "entfernt ähnlich", der grobe Verlauf stimmt, aber mehr 
auch irgendwie nicht. Zudem misst vz nur knapp 69% des erzeugten Stroms. 
Datenbankseitig hab ich an der Konfiguration des Channels nichts 
verändert, die Werte waren früher näherungsweise ok.

In der DB steht bei den entities:
uuid;type;class
7b6afe30-f2dc-11e2-a117-6b7d90ba87df;power;channel

.. und bei den properties:
entity_id;pkey;value
12;active;1
12;color;lime
12;cost;0.1599
12;fillstyle;0.1
12;public;1
12;resolution;1000
12;style;steps
12;title;PV-Wechselrichter
12;yaxis;auto


Deswegen also Frage 3: Hat jemand eine Idee, woran die fehlerhafte 
Darstellung und Messung liegen könnte?

Vielen Dank und gute Nacht :)
Heiko


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160716/47802514/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: onokgdnfflfkcjig.png
Type: image/png
Size: 76563 bytes
Desc: not available
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160716/47802514/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gmjkohogejnajbmg.png
Type: image/png
Size: 66807 bytes
Desc: not available
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160716/47802514/attachment-0003.png>
-------------- next part --------------
{
  "retry": 0,
  "daemon": true,
  "verbosity": 0,
  "log": "/tmp/vzlogger.log",
//  "push": [],
  "local": {
    "enabled": false,
    "port": 8080,
    "index": false,
    "timeout": 0,
    "buffer": 0
  },
  "meters": [
    {
      // PV-Wechselrichter GPIO 17
      "enabled": true,
      "allowskip": false,
      "interval": -1,
      "aggtime": 60,
      "aggfixedinterval": false,
      "channels": [
        {
          "uuid": "7b6afe30-f2dc-11e2-a117-6b7d90ba87df",
          "identifier": "Impulse",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "sum",
          "duplicates": 0
        }
      ],
      "protocol": "s0",
      "gpio": 17,
      "resolution": 1000,
      "configureGPIO": true,
      "debounce_delay": 0
    },
    {
      // Betriebsstunden Waermepumpe GPIO 18
      "enabled": true,
      "allowskip": false,
      "interval": -1,
      "aggtime": -1,
      "aggfixedinterval": false,
      "channels": [
        {
          "uuid": "ae9d1b00-f2f5-11e2-8a1f-0dad1c039958",
          "identifier": "Impulse",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        }
      ],
      "protocol": "s0",
      "gpio": 18,
      "resolution": 3600000,
      "configureGPIO": true,
      "debounce_delay": 0
    },
    {
      // Strom OG GPIO 27
      "enabled": true,
      "allowskip": false,
      "interval": -1,
      "aggtime": 60,
      "aggfixedinterval": false,
      "channels": [
        {
          "uuid": "89277390-f2dc-11e2-94d6-9984a2fec1dc",
          "identifier": "Impulse",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "sum",
          "duplicates": 0
        }
      ],
      "protocol": "s0",
      "gpio": 27,
      "resolution": 1000,
      "configureGPIO": true,
      "debounce_delay": 0
    },
    {
      // Strom EG GPIO 23
      "enabled": true,
      "allowskip": false,
      "interval": -1,
      "aggtime": 60,
      "aggfixedinterval": false,
      "channels": [
        {
          "uuid": "90da22c0-f2dc-11e2-a59d-e9b55d71b128",
          "identifier": "Impulse",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "sum",
          "duplicates": 0
        }
      ],
      "protocol": "s0",
      "gpio": 23,
      "resolution": 1000,
      "configureGPIO": true,
      "debounce_delay": 0
    },
    {
     // Heizungsstrom Waermepumpe GPIO 24
      "enabled": true,
      "allowskip": false,
      "interval": -1,
      "aggtime": 60,
      "aggfixedinterval": false,
      "channels": [
        {
          "uuid": "9a7ed6c0-f2dc-11e2-b13e-b9abb50897a8",
          "identifier": "Impulse",
          "api": "volkszaehler",
          "middleware": "http://localhost/middleware.php",
          "aggmode": "sum",
          "duplicates": 0
        }
      ],
      "protocol": "s0",
      "gpio": 24,
      "resolution": 1000,
      "configureGPIO": true,
      "debounce_delay": 0
    },
	
// 1wire Temperatursensoren
    {
      "enabled": true,
      "allowskip": false,
      "interval": 10, 
      "aggtime": -1,
      "aggfixedinterval": false,
      "channels": [
        {
	  // T4 Aussentemperatur channel 10
          "uuid": "53e45780-f2dc-11e2-bb40-e1626f6aa1bd",
          "identifier": "28-0000045c5c7e",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
        {
	  // T2 Sole WP Eintritt channel 7 
          "uuid": "37e34a40-f2dc-11e2-a9f5-617f327e9a54",
          "identifier": "28-0000045d7eb0",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
        {
	  // T2 Sole WP Austritt channel 8  
          "uuid": "3e744e20-f2dc-11e2-ab3d-e5709e8f1bd3",
          "identifier": "28-000004a2845a",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
        {
		  // T3 WW-Puffer channel 9
          "uuid": "46f672b0-f2dc-11e2-8c00-43a2ff77fb28",
          "identifier": "28-0000045d2497",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
        {
          // T5 FBH Vorlauf channel 11
	  "uuid": "614b6c60-f2dc-11e2-8b34-43269275292a",
          "identifier": "28-000004f1c7c6",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
        {
	  // T5 FBH Ruecklauf channel 28
          "uuid": "e5cd78a0-33fc-11e3-92ab-25b39d4959eb",
          "identifier": "28-000004f2467e",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
		{
	  // T1 Soleverteiler 1 Austritt channel 1
          "uuid": "c80251e0-f2db-11e2-8178-ef2453dba49c",
          "identifier": "28-000004c969de",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
		{
	  // T1 Soleverteiler 1 Eintritt channel 2
          "uuid": "06e27ce0-f2dc-11e2-9196-1793d6d6626c",
          "identifier": "28-000004c96a87",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
         {
	  // T1 Soleverteiler 2 Austritt channel 4 
	  "uuid": "1843ebf0-f2dc-11e2-b68a-0d188c147a46",
          "identifier": "28-000004c9583f",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
		 {
	  //  T1 Soleverteiler 2 Eintritt ch 3 
          "uuid": "112ddc60-f2dc-11e2-9294-971d5a648238",
          "identifier": "28-000004c963b9",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
		{
	  //  T1 Soleverteiler 3 Austritt channel 5
          "uuid": "1fb4b660-f2dc-11e2-9685-936d7367e7ac",
          "identifier": "28-000004c913d5",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        },
		{
	  // T1 Soleverteiler 3 Eintritt - channel 6
          "uuid": "267f2810-f2dc-11e2-8d7c-cb14f79472e0",
          "identifier": "28-0000045c6924",
          "api": "volkszaehler",
          "middleware": "http://127.0.0.1/middleware.php",
          "aggmode": "none",
          "duplicates": 0
        }
      ],
      "protocol": "w1therm"
    }
  ]
}


More information about the volkszaehler-users mailing list