76_SMAInverter.pm - Abfrage von SMA Wechselrichter

Begonnen von sct14675, 28 Juli 2016, 11:01:16

Vorheriges Thema - Nächstes Thema

DS_Starter

#660
ZitatDie Inverter Datetime kommt doch mit jeder ETOTAL Abfrage mit.
Ja, aber nur solange nicht der Sleep-Zeitraum erreicht ist bzw. supressSleep gesetzt ist.

Zitatda muss man doch nur den tageswechsel rausdröseln
Ja, genau  ;)

Die Tücke steckt wie so oft im Detail, ich denke nochmal drüber nach ...
Btw... der BlockingCall ist kein Problem, dafür gibt es Methoden.
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

Teamdrachen

Mal eine kurze Rückmeldung.

Mein Sunny Tripower 5.0 wird jetzt vom Modul erkannt und es kommen Daten rein.

Fettes THX an der Stelle.

Wzut

Zitat von: DS_Starter am 18 August 2019, 21:28:08
Exakt 00:00:00 ist mir etwas unsympatisch.
du must aber kein at benutzen oder einen Timer wenn das Modul eh in Intervallen arbeitet. Ich musste bei zwei meiner Module auch so etwas machen und
vergleiche den aktuellen Tag mit dem des nächsten Durchlaufs :

my (undef,undef,undef,undef,undef,undef, $now_day) = localtime(time());  # jetzt
my (undef,undef,undef,undef,undef,undef,$next_day) = localtime(time()+AttrNum($name,"interval",60)); # nächster Durchlauf

ist nun $now_day != $next_day wird es Zeit bestimmte Dinge abzuschliessen oder Werte zu retten , usw.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

DS_Starter

#663
@Teamdrachen, prima  :)

@Wzut, habe mir gestern Abend noch eine Lösung erarbeitet. Ist etwas komplexer wegen dem BlockingCall und der Steuerung der Betriebszeiten usw. Unter anderem kann das Modul auch extern/manuell getriggert werden, dann zieht das AttrVal nicht. Aber ich konnte es lösen, hoffe ich.  :)
Werde es heute Abend in das Modul implementieren und euch zum Test zur Verfügung stellen.

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

DS_Starter

#664
Hallo zusammen,

in meinem contrib liegt die erweiterte Version 2.12.0.
Sobald die Operation-Time zu Ende ist -> Reading opertime_stop, wird der Tageswert von ETOTAL als yesterday-Wert in ein verborgenes Reading kopiert. Bei mir wäre das heute 21:04:05.
Man kann das Reading sehen mit "list -r <device>".


....
setstate MySTP_5000 manual - 0.291 kW
setstate MySTP_5000 2019-08-19 18:36:13 .etotal_yesterday 29336.829
setstate MySTP_5000 2019-08-19 18:54:13 avg_power_lastminutes_05 297
.....


Sobald es dieses Reading gibt und der Wert kleiner dem aktuellen ETOTAL ist, wird nach  dem nächsten Operation Beginn der Wert ETODAY berechnet (bei supressSleep immer) wenn der WR es nicht liefert.

Im LOG käme dann mit verbose 3:

Zitat
...
2019.08.19 18:38:26.955 3: MySTP_5000 - Send request 0002005400012600FF222600 to 192.168.2.40 on port 9522
2019.08.19 18:38:26.964 3: MySTP_5000 - ETODAY wasn't delivered from inverter, try to calculate it ...
2019.08.19 18:38:26.965 3: MySTP_5000 - ETODAY calculated successfully !
2019.08.19 18:38:26.966 3: MySTP_5000 - Send request 00028053001E2500FF1E2500 to 192.168.2.40 on port 9522
...

Sind entsprechende Voraussetzungen nicht erfüllt, kommt eine Warnung im Log dass ETODAY nicht berechnet werden konnte und auf 0 gesetzt wird.

Wenn ihr das heute testen wollt, schaut mal nach dem Operation Ende in das list wie oben angegeben und setzt euch dann das Attribut "suppressSleep=1", damit der Abfragezyklus weitergeht.
Bei Dersch sollten sich dann die LOG-Einträge mit verbose 3 zeigen wenn ich alles richtig gemacht habe.
Das ETODAY-Reading wird erstellt sobald das aktuelle ETOTAL größer als das gespeicherte .etotal_yesterday ist.

Good luck !  :D

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

Dersch

Danke für deine Mühe!

Heute war ich zu spät dran aber habe es schon geladen und morgen kann ich schauen.

Grüße
Dirk

DS_Starter

#666
Ja, bin gespannt.

Mit list -r müsstest du aber schon das Reading .etotal_yesterday sehen.

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

Dersch

ja sehe ich

setstate SMATRIPOWER 2019-08-19 23:27:36 .etotal_yesterday 210.821

Muss suppressSleep nun immer 1 sein?

DS_Starter

Sehr schön.

Nein, das war nur zum Test weil es dunkel ist.  ;)

Gn,
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

Dersch

Er schreibt nun halt beide Readings mit etotal voll:

etoday 211.035179  2019-08-20 07:58:04
etotal 211.246         2019-08-20 07:58:04

Aber er hat ja noch keinen richtigen Differenz Wert aus dem er kalkulieren könnte:

setstate SMATRIPOWER 2019-08-19 23:59:18 .etotal_yesterday 210.821

Sollte für heute Abend eigentlich passen.

Grüße
Dirk

DS_Starter

Nein, da habe ich einen Fehler drin. Wie sieht denn das Reading im list -r jetzt aus ?
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

Dersch

Zitat von: DS_Starter am 20 August 2019, 08:09:03
Nein, da habe ich einen Fehler drin. Wie sieht denn das Reading im list -r jetzt aus ?

Hat sich nix geändet rsetstate SMATRIPOWER 2019-08-19 23:59:18 .etotal_yesterday 210.821

Oder hast du ne neue Version im Contrib?

DS_Starter

Nein, kann erst heute Nachmittag/Abend checken was da schief läuft.
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

DS_Starter

Kannst du mal bitte verbose 5 einschalten und poste ?
Insbesondere ist die Zeile mit

Data SPOT_ETOTAL= ....

interessant die nach dem Hinweis mit der erfolgreichen Kalkulation des Readings kommt.
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

Dersch

Zitat von: DS_Starter am 20 August 2019, 13:17:39
Kannst du mal bitte verbose 5 einschalten und poste ?
Insbesondere ist die Zeile mit

Data SPOT_ETOTAL= ....

interessant die nach dem Hinweis mit der erfolgreichen Kalkulation des Readings kommt.

Den Teil?

019.08.20 13:44:34 5: SMATRIPOWER - Data identifier 9729
2019.08.20 13:44:34 3: SMATRIPOWER - ETODAY wasn't delivered from inverter, try to calculate it ...
2019.08.20 13:44:34 3: SMATRIPOWER - ETODAY calculated successfully !
2019.08.20 13:44:34 5: SMATRIPOWER - Data SPOT_ETOTAL=218887 and SPOT_ETODAY=218676.179
2019.08.20 13:44:34 3: SMATRIPOWER - Send request 00028053001E2500FF1E2500 to 192.168.10.70 on port 9522
2019.08.20 13:44:34 5: SMATRIPOWER - send: 534D4100000402A00000000100260010606509A07A0158BD10B30000E90023BB5907000000000000048000028053001E2500FF1E250000000000
2019.08.20 13:44:34 5: SMATRIPOWER - Received: https://forum.fhem.de/Themes/fhem-curve-green/images/bbc/code.gif534d4100000402a000000001005e0010606517a0e90023bb590700a07a0158bd10b30000000000000480010280530000000001000000011e254020dd5b5db6020000b6020000b6020000b602000001000000021e254020dd5b5dbb020000bb020000bb020000bb0200000100000000000000
2019.08.20 13:44:34 5: SMATRIPOWER - Data identifier 9502