[OBIS V2] - Jetzt auch mit SML-Unterstützung

Begonnen von Icinger, 08 April 2016, 19:54:44

Vorheriges Thema - Nächstes Thema

osid-timo

Hallo,
nachdem Ihr dem Modul auch SML beigebracht habt, bin ich auch wieder mit meinem Easymeter Q3C dabei, danke dafür.

den aktuellen Wert bekomme ich auf Anhieb, aber den Gesamtenbezug oder die Einspeisewerte kommen nicht an, der Log bringt:
2016.04.17 09:56:19 5: OBIS (EasymeterQ3C) - Msg-Parse: !
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: /ESY
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 129-129:199.130.3*255(ESY)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.0*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-2:2.8.0*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.1*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.2*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.3*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.4*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.5*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-1:1.8.6*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-2:2.8.7*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-2:2.8.8*255(3e+97)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-0:1.7.0*255(54.77*W)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-0:21.7.0*255(150.9*W)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-0:41.7.0*255(7.89*W)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-0:61.7.0*255(-104.02*W)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: 1-0:96.5.5*255(16784)
2016.04.17 09:56:21 5: OBIS (EasymeterQ3C) - Msg-Parse: !


meine aktuelle Definition:
define EasymeterQ3C OBIS /dev/ttyUSB0@9600,8,N,1 SML
attr EasymeterQ3C channels {"1.7"=>"Aktuelle_Leistung","21"=>"energy_L1","41"=>"energy_L2","61"=>"energy_L3","31"=>"power_L1","51"=>"power_L2","71"=>"power_L3","1"=>"energy_current","1.8"=>"energy_total","2.8"=>"feed_total"}
#attr EasymeterQ3C event-min-interval *:30
attr EasymeterQ3C unitReadings on


mit dem VZlogger kommen folgende Wert:
Strombezug 4444161.3 Wh
StromLieferung 4031988.7 Wh

woran kann ich noch drehen, dass ich auch diese Werte wieder als Readings bekomme?

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

willybauss

Zitat von: Omega-5 am 17 April 2016, 11:00:15
Oder signed / unsigned ?  -695W

Gruß Friedrich
genau das hatte ich gemeint  :)
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

tenya

Zitat von: Icinger am 16 April 2016, 21:31:06
Vielleicht will er seinen privaten Atommeiler loggen? **scnr**

THEORETISCH dürfte das nicht falsch berechnet werden, ich rechne mir den Wret und den Scaler genau nach den offiziellen Richtlinien aus.
TATSÄCHLICH wird er scheinbar schon falsch berechnet.

Daher auch die Bitte nach einem kompletten Frame 8)

So anbei zwei Frames einmal mit Bezug wo ja alles ok ist und eines mit Lieferung (rund 9000w) im fhem reading stand ca. 58000

und nein kein 64kwP Anlage ;-) aka Atommeiler - nur 15kwP


dbox2user

Hallo!
Ich hoffe Ihr könnt mir helfen!!!
Schon seit Tagen versuche ich meinen Stromzähler "Pafal 20EC3g" vom Bayernwerk (EON) mit dem OBIS-Modul per Fhem auszulesen.
Zum auslesen benutze ich den original IR-Kopf von Udo (vom Volkszählerprojekt)
Bei mir läuft nur Fhem ohne die Volkszählersoftware mit dem USB-IR-Kopf auf einem Raspberry.

Angelegt habe ich das ganze als:

define MyObis OBIS /dev/ttyUSB0@300,7,E,1 VSM102
Das state wird mit "opened" angezeigt.
Ich bekomme nur leider keine Readings.

Klicke ich jedoch bei  "TYPE" auf "OBIS" um die Internals sehe ich beim "Buffer" meine Zählerwerte durchlaufen. (nach mehrmaligen aktualisieren)
z.B.  "BUFFER     1.8.1*00(000103.06)"  --> Das ist mein Bezugszähler im Tarif 1

-------------------------------------------------------------------------------------------------------------------------
CHANGED
   DEF        /dev/ttyUSB0@300,7,E,1 VSM102
   DeviceName /dev/ttyUSB0@300,7,E,1
   FD         10
   MeterType  VSM102
   NAME       MyObis
   NR         28
   PARTIAL
   STATE      opened
   TYPE       OBIS
   Readings:
     2016-04-17 20:26:10   Version         PAF5EC3g00006
     2016-04-18 21:20:19   state           opened
   Helper:
     BUFFER     1.8.1*00(000103.06)

     Channels
     EoM        0
     SPEED      0
     TRIGGERTIME 1461007219.60298
     DEVICES:
       /?!


       10
       000


Attributes:
   event-on-change-reading .*
   interval   10
   room       zähler

-------------------------------------------------------------------------------------------------------------------------

Ändere ich nun den MeterType von "VSM102" zu "SML" und schalte wieder auf die Internals um, hab ich manchmal Glück und ALLE auszulesenden Werte stehen da, werden aber nicht mehr erneut ausgelesen. -> Erst als VSM102 wird wieder ausgelesen. Readings erscheinen trotzdem keine. :-[

----------------------------------------------------------------------------------------------------------------
Internals:
   CHANGED
   DEF        /dev/ttyUSB0@300,7,E,1 SML
   DeviceName /dev/ttyUSB0@300,7,E,1
   FD         10
   MeterType  SML
   NAME       MyObis
   NR         28
   PARTIAL
   STATE      opened
   TYPE       OBIS
   Readings:
     2016-04-17 20:26:10   Version         PAF5EC3g00006
     2016-04-18 20:57:34   state           opened
   Helper:
     BUFFER     0.0.0(72045525)x0.0.1(PAF)

F.F(00)

0.2.0(1.29)

1.8.1*00(000102.22)

1.8.2*00(000097.07)

2.8.0*00(000200.51)

C.2.1(000000000000)(                                                )

0.2.2(:::::G11)!

A
     EoM        -1
     SPEED      0
     TRIGGERTIME 1461005853.97947
     Channels:
       1.8.1      energy_L1
     DEVICES:

       10

Attributes:
   channels   {"1.8.1"=>"energy_L1"}
   event-on-change-reading .*
   interval   10
   room       zähler
---------------------------------------------------------------------------------------------------------------------------------




1.8.1*00(000102.22)

1.8.2*00(000097.07)

2.8.0*00(000200.51)

Das sind die Werte, die ich brauche....
1.8.1 ist Bezug Tarif 1
1.8.2 ist Bezug Tarif 2
2.8.0 ist Geliefert (eingespeißt durch PV-Anlage)


Die Einstellungen mit 300Baut ,7,E,1 sollten laut diesem Link stimmen. Hier wird beschrieben wie man diesen Zähler z.B. mit Volkszähler ausliest:

http://wiki.volkszaehler.org/hardware/channels/meters/power/edl-ehz/pafal-20ec3gr#beispiel_fuer_eine_vzloggerconf

Leider sind meine Perlkenntnisse zu gering, als dass ich die richtigen Anpassungen im Modul durchführen könnte.

Wäre gaaaanz toll, wenn mir jemand helfen könnte. ::)

Chris
Fhem 5.8 auf Raspberry Pi2; 1 Wire OWSERVER mit DS9490R und OWX DS2480;AVR-NET-IO mit 1Wire;  LOGO8; Kostalpiko; Selbstbau CUL; Arduino mit cFirmata; Denon AVR; Samsung TV; Fritzbox;

Icinger

#19
Hallo Chris,

Das ist auch eines der Smartmeter, die eine extra Aufforderung brauchen, um die Daten zu senden.

Setze den Metertyp mal bitte auf "VSM102". Sollte damit eigentlich auf anhieb klappen.
Dabei wird aber automatisch ein Abfrageinterval von 10 Minuten gesetzt, das kannst du ja aber auch runtersetzen.

lg, Stefan

PS: Habe gerade eben eine neue Version commited, bei der
1) keine Attribute mehr gesetzt werden
2) das sign/unsigned-Problem behiben sein sollte.
Wie immer ab morgen per Update oder heute schon direkt aus dem SVN holen.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

willybauss

Zitat von: dbox2user am 18 April 2016, 21:43:33
... Angelegt habe ich das ganze als:

define MyObis OBIS /dev/ttyUSB0@300,7,E,1 VSM102
Das state wird mit "opened" angezeigt.
Ich bekomme nur leider keine Readings.

Zitat von: Icinger am 19 April 2016, 05:42:52
...
Setze den Metertyp mal bitte auf "VSM102". Sollte damit eigentlich auf anhieb klappen.
...

Muss ich jetzt nicht unbedingt verstehen ...
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

dbox2user

Hallo Stefan,
Danke schonmal für die rasche Antwort! :)

Den Metertyp auf "VSM102" umstellen habe ich ja schon gemacht. (wie im vorherigen Post beschrieben).
Hier sehe ich in den Internals, dass meine Zähler-Werte im "Buffer" nacheinander durchlaufen. -> Das sieht man durch mehrmaliges aktualisieren des Browserfensters. Leider erscheinen die Werte nur nacheinander im "Buffer" aber sonst nirgendwo.

Erst nach dem ändern auf "SML" werden --MANCHMAL-- die zuvor per "VSM102" gelesenen Werte als seperater Block in den Internals dauerhaft angezeigt . Als "SML" wird dann aber nichts neues mehr eingelesen.

Normale Readings der Zählerstände bekomme ich NIE.
Nur diese beiden Readings:
2016-04-17 20:26:10   Version         PAF5EC3g00006
2016-04-18 21:20:19   state           opened

Würden eigentlich Werte, die das Modul nicht kennt als Reading angezeigt werden (z.B.   1.8.1*00(000102.22)  1.8.2*00(000097.07)    2.8.0*00(000200.51) )
Oder müsste man diese "unbekannten Werte" erst mit dem Atribut "channels" benannt werden, dass Readings erscheinen  (laut Beschreibung:    "channels:
Wenn man die Channel-Readings umbenennen will, oder einen Channel hat, der vom Modul nicht abgedeckt wird,
kann hiermit ein Perl-Array angegeben werden, welches zusätzlich zu den Internen Zuordnungen durchsucht wird."

Ich hoffe es ist verständlich was ich meine. :o

Gruß,
Chris
Fhem 5.8 auf Raspberry Pi2; 1 Wire OWSERVER mit DS9490R und OWX DS2480;AVR-NET-IO mit 1Wire;  LOGO8; Kostalpiko; Selbstbau CUL; Arduino mit cFirmata; Denon AVR; Samsung TV; Fritzbox;

tenya

Hallo Icinger,

danke für deinen Einsatz. Auch bei meinem Zweiwegezähler wird nun alles korrekt angezeigt und ich kann mich daran machen den Überschuss möglichst geschickt auszunutzen.  :)

Icinger

ZitatMuss ich jetzt nicht unbedingt verstehen ...
Nööööööö 8)
ZitatMuss ich jetzt nicht unbedingt verstehen ...
Sorry, hab ich in der Früh im Schlaftaumel übersehen.

Ich schau mir das spätestens am Donnerstag (da hab ich frei) an, wo da der Käfer begraben liegt.

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Icinger

@dbox2user:

^B0.0.0(715xxxxx)
0.0.1(PAF)
F.F(00)
0.2.0(1.27)
1.8.0*00(000094.17)
2.8.0*00(000266.55)
C.2.1(000000000000)(                                                )
0.2.2(:::::G11)!


Das is ja ganz was perverses, was dein Meter da sendet, das hat mit einem OBIS-Standard rein gar nix zu tun :(

kA ob ich da irgendwas machen kann.
Aber lass mich mal überlegen....

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

willybauss

erst dachte ich, es sei ein Datenfehler, aber im Netz findet man dasselbe, passt also. Evtl. kann man auf die wichtigsten Daten (1.8.0, 2.8.0) filtern und den Rest verwerfen?
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

dbox2user

Schonmal eine großes Dankeschön, dass sich hier einige um die Anliegen anderer kümmern! :)

Zitat von: Icinger am 19 April 2016, 21:12:56
@dbox2user:

^B0.0.0(715xxxxx)
0.0.1(PAF)
F.F(00)
0.2.0(1.27)
1.8.0*00(000094.17)
2.8.0*00(000266.55)
C.2.1(000000000000)(                                                )
0.2.2(:::::G11)!


Das is ja ganz was perverses, was dein Meter da sendet, das hat mit einem OBIS-Standard rein gar nix zu tun :(

kA ob ich da irgendwas machen kann.
Aber lass mich mal überlegen....

lg, Stefan

Na toll, da hat mir das EVU ja nen "tollen" Zähler in Zeiten von Smartmeter & Co eingebaut.  :-[

Wie gesagt, wichtig wären eigentlich 3 Werte:

1.8.1*00(000102.22) ist Bezug Tarif 1 =102,22kWh
1.8.2*00(000097.07) ist Bezug Tarif 2 =97,07kWh
2.8.0*00(000200.51) ist Geliefert (eingespeißt durch PV-Anlage) =200,51kWh

Wenn man nur darauf filtern könnte und diese dann als Readings hätte wäre ich happy!

Kann man evtl. etwas wichtiges aus dem Perl Script von hier verwenden...?
http://wiki.volkszaehler.org/hardware/channels/meters/power/edl-ehz/pafal-20ec3gr#beispiel_fuer_eine_vzloggerconf

Gruß,
Chris
Fhem 5.8 auf Raspberry Pi2; 1 Wire OWSERVER mit DS9490R und OWX DS2480;AVR-NET-IO mit 1Wire;  LOGO8; Kostalpiko; Selbstbau CUL; Arduino mit cFirmata; Denon AVR; Samsung TV; Fritzbox;

Icinger

Guten Morgen,

Für sowas hab ich mir eh eine Option freigelassen.
Das OBIS ist so aufgebaut, dass es auch als zweistufiges Modul funktioniert.

Ich kann also ein extra-Modul machen, welches auf der Schnittstelle lauscht, dann seine Daten in einen richtigen OBIS-Frame umwandelt und diese dann an das OBIS dispatched.
Direkt im OBIS will ich das nicht unbedingt implementieren, weil ich da dann lauter Sonderregelungen bräuchte (es passen ja nichtmal "Beginn des Datensatzes" und "Ende des Datensatzes".

Werd mich mal dranmachen und schaun, ob das wirklich so funktioniert, wie ich mir das ursprünglich vorgestellt habe.

Also bitte noch ein bisschen Geduld, das werden wir schon hinbekommen :D

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

tenya

Guten Morgen,

ich habe mich im Eifer des Gefechts wohl zu früh gefreut  :-\
Anbei nochmal ein Frame mit passendem Ausschnitt aus FHEM
@Icinger - bringt es dir noch etwas wenn ich aus dem Log was ausschneide?

Zum Zeitpunkt der Frameaufzeichnung waren ca. 3500W Einspeisung - ich kann auch keinen Zusammenhang zwischen den verschiedenen Einspeiseleistungen und den Werten im Reading herstellen. Bei höherer Einspeisung sind diese manchmal niedrieger im Reading.

Oder liefert mein Zähler einfach nur Mist?

dbox2user

Guten Morgen,

Zitat von: Icinger am 21 April 2016, 06:39:10


Werd mich mal dranmachen und schaun, ob das wirklich so funktioniert, wie ich mir das ursprünglich vorgestellt habe.

Also bitte noch ein bisschen Geduld, das werden wir schon hinbekommen :D

lg, Stefan

OK. Dann halt´ ich mal die Füße still, lasse Dich tüfteln und hoffe dass Du erfolgreich bist.  ;)

Gruß,
Chris
Fhem 5.8 auf Raspberry Pi2; 1 Wire OWSERVER mit DS9490R und OWX DS2480;AVR-NET-IO mit 1Wire;  LOGO8; Kostalpiko; Selbstbau CUL; Arduino mit cFirmata; Denon AVR; Samsung TV; Fritzbox;