neues Modul: VZLOGGER

Begonnen von optimizer, 05 September 2015, 23:53:59

Vorheriges Thema - Nächstes Thema

optimizer

Hallo Jörg,

Zitat von: pejonp am 18 Oktober 2015, 16:42:03
ich wollte meinen Hauszähler Siemens TD3511 auch erst über den VZLOGGER anbinden, bin aber damit nicht zu rande gekommen.

unter http://wiki.volkszaehler.org/hardware/channels/meters/power/edl-ehz/siemens_td3511  findest du noch weiter Infos zu deinem Zähler. Vom TD3511 gibt es mehrere Versionen und damit unterschiedliche vzlogger.conf. Hast du in der Mailing-Liste nichts passendes gefunden?
Gruß
Karlheinz

optimizer

Hallo Tobi, hallo osid-timo,

prüft bitte mal, welche vzlogger-Version ihr einsetzt (vzlogger -V). Auch mit dem aktuellen Image, solltet ihr die aktuellste Version aus git ziehen, also mind. 0.4.6. Darin sind buffer-overflow Probleme, die erst nach einigen Tagen auftauchen, behoben.
Wenn die config passt, sollte man verbosity auf 0 setzen (zvlogger neu starten), sonst wird die Log-Datei zu groß.

Ich kann mir nicht vorstellen, dass trotz anderem Port (z.B. 8081) in vzlogger.conf, der httpd nicht startet.
Gib mal die vzlogger.conf als Parameter mit (z.B. vzlogger -c /home/pi/vzloggers0.conf )


onkel-tobi

#17
Hi,

bei.Mir geht es ja inzwischen.
Ist aber definitiv so. Man muss aber dazu sagen, dass ich nicht das vz image verwende, sondern das raspbian und dazu dann vzlogger in Version 0.4.6.
Aber das kriegen wir bei osid auch schon noch hin.
Hast Du noch einen Tipp bezügl. Darstellung des Zählerstandes in kWh?
Bezüglich der Delta Berechnung, wie gehe ich denn da vor, wenn ich das Delta zw. aktuellem und letztem Messwert haben will, um z.B. herauszubekommen ob der Trockner noch läuft.
Wenn ich das statistics Modul verwende, kriege ich ja nur die letzte Std. angezeigt, wenn ich das richtig verstanden habe.

Danke & Gruß,
Tobi


Gesendet von iPhone mit Tapatalk

pejonp

Zitat von: optimizer am 20 Oktober 2015, 23:28:07
...
unter http://wiki.volkszaehler.org/hardware/channels/meters/power/edl-ehz/siemens_td3511  findest du noch weiter Infos zu deinem Zähler...
Hallo Karlheinz,

von dieser Seite habe ich mir das Grundgesrüst geholt und mein eigens Perlscript zum auslesen des TD 3511 gebaut. Es läuft ohne Probleme. Mit VZLogger usw. habe ich mich mal etwas beschäftigt, fand es aber für meine Anwendung und Einbinung in FHEM zu überdimensioniert. Und es sind noch zu viele Schnittstellen und Abhänigkeiten zu berücksichtigen. Da ich alle meine Geräte, Sensoren, Wechselrichter und Batterie usw. in FHEM habe und diese Anbindung läuft, ist es für mich so ok.

Ich wollte nur meine Lösung vorstellen falls jemand etwas ganz einfaches sucht. Das Script kann ja auch für andere Zähler angepaßt werden, die die Schnittstelle von Udo (USB-Volkszähler) nutzen.

Jörg.
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

osid-timo

Hallo,
ja ich habe über .git installiert,  soeben nochmal mittels sudo ./install.sh die Installation nochmals durchgeführt
Es ist Version 0.4.6 installiert
Aber kein Erfolg ob ich den vzlogger -l oder vzlogger -c /etc/vzlogger.conf starte, httpd bleibt tot, der vzlogger läuft und liefert folgende Einträge:
[Oct 21 20:25:52]       Opened logfile /home/pi/vzlogger.log
[Oct 21 20:25:52][push] No pushDataServer defined.
[Oct 21 20:25:52][]     ===> Start meters
[Oct 21 20:25:52][mtr0] Meter connection established
[Oct 21 20:25:52][mtr0] Meter thread started
[Oct 21 20:25:52][mtr0] Meter is opened. Starting channels.
[Oct 21 20:25:52][chn0] Logging thread not started
[Oct 21 20:25:52][chn1] Logging thread not started
[Oct 21 20:25:52][chn2] Logging thread not started
[Oct 21 20:25:52][]     Startup done.
[Oct 21 20:25:52][mtr0] Number of readers: 32
[Oct 21 20:25:52][mtr0] Config.daemon: 0
[Oct 21 20:25:52][mtr0] Config.local: 1
[Oct 21 20:25:52][sml]  sending pullsequenz send (len:5 is:5).
[Oct 21 20:25:53][mtr0] Got 15 new readings from meter:
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.0*255/ObisItentifier:1-1:1.8.0*255 value=3325416.76 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-2:2.8.0*255/ObisItentifier:1-2:2.8.0*255 value=3702227.23 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.1*255/ObisItentifier:1-1:1.8.1*255 value=3319660.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.2*255/ObisItentifier:1-1:1.8.2*255 value=1120.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.3*255/ObisItentifier:1-1:1.8.3*255 value=1130.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.4*255/ObisItentifier:1-1:1.8.4*255 value=1130.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.5*255/ObisItentifier:1-1:1.8.5*255 value=1130.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-1:1.8.6*255/ObisItentifier:1-1:1.8.6*255 value=1240.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-2:2.8.7*255/ObisItentifier:1-2:2.8.7*255 value=3701100.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-2:2.8.8*255/ObisItentifier:1-2:2.8.8*255 value=1120.00 ts=60441688000
[Oct 21 20:25:53][mtr0] Reading: id=1-0:1.7.0*255/ObisItentifier:1-0:1.7.0*255 value=508.08 ts=1445451953973
[Oct 21 20:25:53][mtr0] Reading: id=1-0:21.7.0*255/ObisItentifier:1-0:21.7.0*255 value=314.04 ts=1445451953973
[Oct 21 20:25:53][mtr0] Reading: id=1-0:41.7.0*255/ObisItentifier:1-0:41.7.0*255 value=11.65 ts=1445451953973
[Oct 21 20:25:53][mtr0] Reading: id=1-0:61.7.0*255/ObisItentifier:1-0:61.7.0*255 value=182.39 ts=1445451953973
[Oct 21 20:25:53][mtr0] Reading: id=1-0:96.5.5*255/ObisItentifier:1-0:96.5.5*255 value=167840.00 ts=1445451953973
[Oct 21 20:25:53][chn0] Adding reading to queue (value=508.08 ts=1445451953973)
[Oct 21 20:25:53][chn1] Adding reading to queue (value=3325416.76 ts=60441688000)
[Oct 21 20:25:53][chn2] Adding reading to queue (value=3702227.23 ts=60441688000)
[Oct 21 20:25:53][chn0] Buffer dump (size=1): {508.0800,}
[Oct 21 20:25:53][chn1] Buffer dump (size=1): {3325416.7595,}
[Oct 21 20:25:53][chn2] Buffer dump (size=1): {3702227.2313,}
[Oct 21 20:25:53][mtr0] Next reading in 60 seconds
[Oct 21 20:26:53][sml]  sending pullsequenz send (len:5 is:5).
[Oct 21 20:26:53][mtr0] Got 15 new readings from meter:
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.0*255/ObisItentifier:1-1:1.8.0*255 value=3325417.04 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-2:2.8.0*255/ObisItentifier:1-2:2.8.0*255 value=3702227.23 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.1*255/ObisItentifier:1-1:1.8.1*255 value=3319660.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.2*255/ObisItentifier:1-1:1.8.2*255 value=1120.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.3*255/ObisItentifier:1-1:1.8.3*255 value=1130.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.4*255/ObisItentifier:1-1:1.8.4*255 value=1130.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.5*255/ObisItentifier:1-1:1.8.5*255 value=1130.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-1:1.8.6*255/ObisItentifier:1-1:1.8.6*255 value=1240.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-2:2.8.7*255/ObisItentifier:1-2:2.8.7*255 value=3701100.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-2:2.8.8*255/ObisItentifier:1-2:2.8.8*255 value=1120.00 ts=60441690000
[Oct 21 20:26:53][mtr0] Reading: id=1-0:1.7.0*255/ObisItentifier:1-0:1.7.0*255 value=507.72 ts=1445452013987
[Oct 21 20:26:53][mtr0] Reading: id=1-0:21.7.0*255/ObisItentifier:1-0:21.7.0*255 value=313.66 ts=1445452013987
[Oct 21 20:26:53][mtr0] Reading: id=1-0:41.7.0*255/ObisItentifier:1-0:41.7.0*255 value=11.62 ts=1445452013987
[Oct 21 20:26:53][mtr0] Reading: id=1-0:61.7.0*255/ObisItentifier:1-0:61.7.0*255 value=182.44 ts=1445452013987
[Oct 21 20:26:53][mtr0] Reading: id=1-0:96.5.5*255/ObisItentifier:1-0:96.5.5*255 value=167840.00 ts=1445452013987
[Oct 21 20:26:53][chn0] Adding reading to queue (value=507.72 ts=1445452013987)
[Oct 21 20:26:53][chn1] Adding reading to queue (value=3325417.04 ts=60441690000)
[Oct 21 20:26:53][chn2] Adding reading to queue (value=3702227.23 ts=60441690000)
[Oct 21 20:26:53][chn0] Buffer dump (size=1): {507.7200,}
[Oct 21 20:26:53][chn1] Buffer dump (size=1): {3325417.0416,}
[Oct 21 20:26:53][chn2] Buffer dump (size=1): {3702227.2313,}
[Oct 21 20:26:53][mtr0] Next reading in 60 seconds
[Oct 21 20:27:53][sml]  sending pullsequenz send (len:5 is:5).



Das vzlogger-Configfile ist identisch mit meinem Volkszaehler-Image
Hat jemand eine Idee was ich noch tun kann/muss?

Gruß Oswald
FHEM Pi3: 1* CUL, 30* Homematic, 10* EnOcean
FHEM Pi3: IR-Lesekopf, BT->SMA
FHEM Pi3: ZHK, 1-wire, 1* VBus   Resol DeltaSol BS

onkel-tobi

Hi Oswald,

schau mal ob Du libmicrohttpd-dev installiert hast.

Gruß,
Tobi


Gesendet von iPhone mit Tapatalk

optimizer

Halo Oswald,

setz mal "daemon": false  u. kill/starte vzlogger neu.
Wenn das auch nicht klappt, poste nochmal deine vzlogger.conf falls sie sich seit 30.9. verändert hat.

Gruß
Karlheinz


osid-timo

Hallo,
libmicrohttpd-dev war nicht installiert, habe ich jetzt nachgeholt
demon steht auf false
der Erfolg hat sich immer noch nicht eingestellt.

{
// vzlogger.conf with minimal settings without middleware 4FHEM 20151005
"retry" : 30, /* how long to sleep between failed requests, in seconds */
"daemon": false , /* run periodically */
"verbosity" : 15, /* between 0 and 15 */
//"log" : "/var/log/vzlogger.log",/* path to logfile, optional */
"log" : "/home/pi/vzlogger.log", /* path to logfile, optional */
"local" : {
    "enabled" : true, /* should we start the local HTTPd for serving live readings? */
    "port" : 8080, /* 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" : 30 /* default=600 how long to buffer readings for the local interface, in seconds */
    "buffer" : -3 /* negative values: how many readings for the local interface */
},
"meters" : [
    {
    "enabled" : true , // true, Beginn EasyMeter Q3C Zähler
    "protocol" : "sml",
    "baudrate" : 9600,
    "device" : "/dev/ttyUSB0",
    "parity" : "8N1",
    "pullseq" : "2f3f210d0a", // HEX Darstellung der Pullsequenz
    "interval" : 60, // Wartezeit bis zum nächsten Pull
"channels": [{
    "api" : "NULL" , // ohne middleware
    "uuid" : "170", // virtuelle UUID / Channel für FHEM
            "identifier" : "1-0:1.7.0", /*Aktuelle Leistung */
},
{
    "api" : "NULL" , // ohne middleware
    "uuid" : "180", // virtuelle UUID / Channel für FHEM
            "identifier" : "1-1:1.8.0", // /* Wirkarbeit Bezug +A T0*/
        },
{
    "api" : "NULL" , // ohne middleware
    "uuid" : "280", // virtuelle UUID / Channel für FHEM
            "identifier" : "1-2:2.8.0", // /* Wirkarbeit Bezug -A T0*/
        }]
    }]
}


Gruß Oswald
FHEM Pi3: 1* CUL, 30* Homematic, 10* EnOcean
FHEM Pi3: IR-Lesekopf, BT->SMA
FHEM Pi3: ZHK, 1-wire, 1* VBus   Resol DeltaSol BS

osid-timo

Hallo,
nachdem ich heute alle Pakete aktualisiert und alle Abhängigkeiten erneuert habe klappt auch der Zugriff über Port 8080

war eine schwere Geburt, aber danke für die Hilfe

Gruß Oswald
FHEM Pi3: 1* CUL, 30* Homematic, 10* EnOcean
FHEM Pi3: IR-Lesekopf, BT->SMA
FHEM Pi3: ZHK, 1-wire, 1* VBus   Resol DeltaSol BS

onkel-tobi

Hat denn noch jemand einen Tipp für mich bezüglich Einheiten und delta Berechnung?
So wie es aussieht berechnet das statistics Modul ja nur delta für eine stunde usw, aber nicht für kürzere Intervalle.

Gruß,
Tobi


Gesendet von iPhone mit Tapatalk

optimizer

Hallo Tobi,

welches Intervall möchtest du?
Falls dein Zähler die Momentanleistung nicht ausgibt, könnte ich ein weiteres reading als Durchschnittsleistung zur letzten Messung anbieten.

Gruß
Karlheinz

onkel-tobi

Hi Karlheinz,

vielen Dank für deine Antwort.
Ich bekomme die momentane Leistung angezeigt, würde aber im Prinzip gerne die Differenz zum vorherigen Wert haben.
Hintergrund ist, dass ich so ziemlich genau bestimmen könnte, wann die Waschmaschine fertig ist, bzw der Trockner in den Knittermodus wechselt.

Gruß,
Tobi


Gesendet von iPhone mit Tapatalk

osid-timo

Hallo Tobi.
ich mache mir das mit userReadings, mit dem delay bestimme ich die Auflösung in meinem Beispiel 1h

define Strombezug VZLOGGER 192.168.178.37 8080 180
attr Strombezug VZLOGGER_unit Wh
attr Strombezug connectTimeout 7
attr Strombezug delay 3600
attr Strombezug room Volkszaehler
attr Strombezug userReadings BezugLeistungdT difference { ReadingsVal("Strombezug","energy",0)*1}


Gruß Oswald
FHEM Pi3: 1* CUL, 30* Homematic, 10* EnOcean
FHEM Pi3: IR-Lesekopf, BT->SMA
FHEM Pi3: ZHK, 1-wire, 1* VBus   Resol DeltaSol BS

optimizer

Hallo Tobi,

das neue reading energy_avg ist jetzt aktiv. Ich fürchte jedoch, dass der Wert sehr ungenau ist, da die genaue Änderungszeit und damit Zeitdifferenz für die Umrechnung von Leistung auf Arbeit nicht bekannt ist. Das hängt natürlich auch von deinem Leseintervall ab.
Für die stündliche/tägliche/monatliche Auswertung verwende ich auch das statistics Modul.

Wie willst du feststellen wann die Waschmaschine fertig ist? Dazu braucht man meiner Meinung nach, sehr genaue Impuls- oder Leistundswerte. Auf deine Auswertelogik bin ich mal gespannt  8) .

Darüber hinaus gibt es einige Änderungen. Siehe dazu meinen ersten Beitrag.
- VZLOGGER_modus muss nun ausgewählt werden.
- VZLOGGER_offset für Leistungswerte u. Impuls.
...

Gruß
Karlheinz

onkel-tobi

Hi Karlheinz,

erst einmal vielen Dank für Deine Unterstützung.
Kannst Du mir verraten, wie genau der avg Wert berechnet wird?
Mein Plan war eigtl. folgender (vielleicht habe ich das nicht gut genug beschrieben):
Es kommt ein aktueller Verbrauchswert, der z.B. bei 381 Watt liegt. (s. auch log)
Bei der nächsten Messung liegt der Wert bei knapp 2200 Watt. Die Differenz wäre für mich dann erst mal das Indiz, dass der Trockner angemacht wurde, verringert der Wert sich dann um 1500 Watt hat der Trockner in den Knittermodus gewechselt.
Klar die 100 % sind das nicht, aber ich denke ich komme so ziemlich nah dran.

Aktuell werden mir aber in den avg Werten Größen angezeigt, die ich mir nicht erklären kann (s. fett markiert):
2015-10-31_10:23:49 Verbrauch_aktuell energy_current: 391.6
2015-10-31_10:23:49 Verbrauch_aktuell energy_avg: -816.35
2015-10-31_10:23:49 Verbrauch_aktuell statEnergy: Hour: 98.9 Day: 143.4 Month: 202.0 Year: 202.0 (since: 2015-10-22 )
2015-10-31_10:25:49 Verbrauch_aktuell 2192.1 kWh ( 2015-10-31 10:25:42 )
2015-10-31_10:25:49 Verbrauch_aktuell energy: 2192.1
2015-10-31_10:25:49 Verbrauch_aktuell energy_current: 2192.1
2015-10-31_10:25:49 Verbrauch_aktuell energy_avg: [b]54438.26[/b]
2015-10-31_10:25:49 Verbrauch_aktuell statEnergy: Hour: 1899.4 Day: 1943.9 Month: 2002.5 Year: 2002.5 (since: 2015-10-22 )
2015-10-31_10:29:49 Verbrauch_aktuell energy: 2193.2
2015-10-31_10:29:49 Verbrauch_aktuell energy_current: 2193.2
2015-10-31_10:29:49 Verbrauch_aktuell energy_avg: 2227.51


Außerdem habe ich aktuell noch das Problem, dass mir der Zählerstand nicht korrekt angezeigt wird. Er soll natürlich in kWh angegeben werden (wird er auch), aber ich müsste da den Wert dann eigtl. durch 1000 teilen. Wie mache ich das am besten? Direkt in VZlogger?

Gruß & ein schönes Wochenende,
Tobias