Neu: 77_SMAEM - Modul für SMA Energie Meter. Alternative zum Sunny Home Manager.

Begonnen von Volker Kettenbach, 30 März 2016, 12:42:05

Vorheriges Thema - Nächstes Thema

Stromausfall_2016

Hi!
Danke, genau das war die Frage.
Jetzt eine etwas komplexere Frage: Hat sich jemand mal damit beschäftigt die dynamische 70% Begrenzung am Speisepunkt OHNE den SHM zu realisieren?
Nach aussage SMA geht das nur wenn man eine Batteriestation hat. Die Solarinverter wollen immer einen SHM zwischen sich nun dem SMA-EM haben.

Volker Kettenbach

Zitat von: Stromausfall_2016 am 13 August 2016, 09:26:04
Hi!
Danke, genau das war die Frage.
Jetzt eine etwas komplexere Frage: Hat sich jemand mal damit beschäftigt die dynamische 70% Begrenzung am Speisepunkt OHNE den SHM zu realisieren?
Nach aussage SMA geht das nur wenn man eine Batteriestation hat. Die Solarinverter wollen immer einen SHM zwischen sich nun dem SMA-EM haben.

Soweit ich weiss, wird das im Inverter direkt eingestellt und benötigt nicht zwingend den SHM. Über letzteren lässt es sich wohl remote steuern.

Volker Kettenbach

Zur Info:

Hier: https://forum.fhem.de/index.php/topic,57287.0.html
wurde ein Thread zur Kombination von SMAInverter und SMAEM und der Berechnung eigener Energiebilanzen begonnen.

Stromausfall_2016

Hi!
Habe meinen SMA EM jetzt am laufen! In FHEM oder auch mit dem Test Script bekomme ich keine Daten angezeigt.
Startet man das Test Script gibt es keine Ausgabe, auch keine Fehlermeldungen....

Mit Wireshark sehe ich die Daten, IP und Port stimmen mit den Angeben im Script über ein.
Die Datenpakete sind 600 Byts lang.
Das Pearl Modul ist installiert.

Hast du eine Idee oder wie kann ich den Fehler weiter einkreisen?

Gruß!

DS_Starter

Guten Morgen,
Du hast sicher Volker direkt angesprochen, dennoch ein kleiner Tipp von mir.
Das Problem kann auftreten wenn keine Multicastpakete an deine Installation durchgelassen werden. Ich hatte das gleiche Bild mit Versuchen einer VM auf Docker. Deine Infrastruktur hast du jetzt nicht beschrieben aber vllt. ein Anhaltspunkt.
Weiterhin könnte der Multicast Socket bereits von einer anderen Anwendung geöffnet sein. Aber dann würde es wahrscheinlich Fehlermeldungen geben.
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Stromausfall_2016

HI!

Danke für deine Antwort. Ich sehe die Pakete aber mit Wireshark.
Starte ich das Script lauscht auch jemand auf Port 9522 (netstat......).
Es gibt aber keine Ausgabe auf dem Terminal. Da das Test Script selbst erst mal ziemlich  einfach ist nehmen ich an dass ich ein Problem mit der IO::Socket::Multicast habe.
Wie komme ich da jetzt aber weiter......

Gruß!

Stromausfall

Stromausfall_2016

Hi!

Bin einen Schritt weiter! Die Firewall steht mir im Weg. Schalte ich das Ding aus geht alles..... >:(

Stromausfall_2016

OK!
Habe meinen Fehler gefunden. Hatte eine statische IP in der dhcpcd.conf eingetragen, diese hat verhindert dass die Multicast Adr eingetragen wurde. Jetzt setzte ich die IP über die interface und siehe da, es geht.
Das ganze ist auf meinem raspian passiert. Beim meinem normalen Rechner hatte die Firewall einen Strich durch die Sache gemacht.

ENDE! Problem gelöst.  8) 8) 8) 8)

DS_Starter

Hallo Volker, @all,

nachdem ich 76_SMAInverter auf non-blocking umgestellt habe, bin ich über 77_SMAEM gegangen und habe auch dieses Modul eingehend überarbeitet und ebenfalls auf eine non-blocking Arbeitsweise umgestellt.
Die Belastung von FHEM hat sich dadurch bei mir von ca 1000 ms auf ca. 30 ms ! (bei verbose=3) reduziert.

Weiterhin habe ich noch folgende Änderungen/Features eingebaut:

* Attr disable -> Modul disablen
* Attr timeout -> timeout für den Hintergrundprozess einstellbar (default 60s)
* der Schreib/Lesezugriff auf .../FHEM/FhemUtils/uniqueID wird überwacht und bei evtl. Fehlern im Log bzw. state ausgegeben
* erweiterte und verbesserte Loggings bei verbose 4/5

Ich habe es bei mir nun schon einige Zeit erfolgreich laufen.
Würde mich freuen wenn du bzw. andere SMA-User die neue Version auch testen würden und  das neue Modul dann im FHEM-Repo das bisherige SMAEM ersetzt. Die Doku muß ich dann aber noch aktualisieren.

Grüße
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Herjemine

Hallo Heiko,

unter Windows scheint es nicht zu laufen
er hat Probleme mit dem uniqueID
Can't open ./FHEM/FhemUtils/uniqueID: No such file or directory


2016.12.01 20:44:39 4: SMAEM SMA_EMneu - ###############################################################
2016.12.01 20:44:39 4: SMAEM SMA_EMneu - ######### Begin of new SMA Energymeter get data cycle #########
2016.12.01 20:44:39 4: SMAEM SMA_EMneu - ###############################################################
2016.12.01 20:44:39 4: SMAEM SMA_EMneu - last update time set to: 01.12.2016 / 20:44:39
2016.12.01 20:44:40 4: SMAEM SMA_EMneu - Blocking process with PID: -7900 started
2016.12.01 20:44:40 4: SMAEM SMA_EMneu -> Start BlockingCall smaemread_DoParse
2016.12.01 20:44:40 1: SMAEM SMA_EMneu - ERROR while reading saved energy values from ./FHEM/FhemUtils/uniqueID:
2016.12.01 20:44:40 1: SMAEM SMA_EMneu - Can't open ./FHEM/FhemUtils/uniqueID: No such file or directory
2016.12.01 20:44:40 4: SMAEM SMA_EMneu -> BlockingCall smaemread_DoParse finished
2016.12.01 20:44:40 4: SMAEM SMA_EMneu -> Start BlockingCall smaemread_ParseDone
2016.12.01 20:44:40 4: SMAEM SMA_EMneu - last update time set to: 01.12.2016 / 20:44:40
2016.12.01 20:44:40 4: SMAEM SMA_EMneu -> BlockingCall smaemread_ParseDone finished
2016.12.01 20:44:40 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:41 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:42 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:46 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:46 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:46 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:46 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:47 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:48 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:49 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:50 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
2016.12.01 20:44:51 5: SMAEM SMA_EMneu: - received 600 bytes but interval 60s isn't expired.
usw.


Gruß
Hermann

DS_Starter

Hallo Hermann,

die uniqueID hatte ich bereits in der ursprünglichen Version verwendet. Das ist nicht neu. Allerdings wird es jetzt gecheckt ob das Lesen/Schreiben definitiv funktioniert. Das ist für die Speicherung der Zählerdaten bei Stromausfall wichtig.

Schau mal ob diese Datei bei dir an diesem Ort vorhanden ist ?
Die Datei uniquID ist im FHEM standardmäßig vorhanden. siehe

http://fhem.de/commandref.html#Utils

Grüße
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Herjemine

Hallo Heiko,

hatte schon geschaut, die Datei ist nicht da.
hatte bisher die alte Version, ohne BlockingCall verwendet.

Hol mir die uniqueID mal von einem anderen Server

hmm jetzt gehts, warum wird die nicht angelegt, wenn Sie nicht vorhanden ist?

thx
Hermann

DS_Starter

Hallo Hermann,

Zitatwarum wird die nicht angelegt, wenn Sie nicht vorhanden ist?

Das ist eine gute Frage. Diese Datei ist kein File was speziell für dieses Modul da ist, sondern ist/sollte standardmäßig vorhanden sein.
Das File enthält z.B. auch die FHEM-ID welche ausgeschrieben wird wenn du "fheminfo" im Kommandofeld absetzt.

Jetzt habe ich auf meinem Testsystem mein uniqueID-File umbenannt und FHEM restartet. Dann wird ein neues File automatisch angelegt. Das wird aber vom FHEM-Core (fhem.pl) und nicht vom Modul erledigt.

Eigenartig dass es bei dir nicht da war bzw. die Datei bei FHEM-Restart nicht angelegt wurde. Das ist mir momentan nicht einleuchtend.

Grüße
Heiko

ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Herjemine

Hallo Heiko,

ja seltsam, fheminfo verwend ich nie :)

hab jetzt mal im laufenden Betrieb die uniqueID umbenannt in .off

jetzt hat er eine neue angelegt  :o

warum merkst Du die Zählerdaten, bei mir sind die im EM noch nie zurück gesetzt worden ..

Gruß
Hermann

DS_Starter

Zitatwarum merkst Du die Zählerdaten, bei mir sind die im EM noch nie zurück gesetzt worden .

Bei mir schon ... und zwar nach einem Stromausfall bzw. als der Energielieferant zu Wartungszwecken abgeschaltet hat.
Außerdem benutze ich den gespeicherten Stand wenn FHEM evtl. (längere) Zeit nicht an / der Zähler nicht zugänglich war.
Dann kann die Differenz seit der letzten Messung berechnet werden (Readings mit *_Diff).


 
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter